bcbio_prepare_samples.py deletes the original input files

I am using the script bcbio_prepare_samples.py even when the original input files don't need to be merged, in order to do bulk renaming and have a "cleaner" sample CSV file and work directory. However, in some cases, I noticed that the script removes the original FASTQ files, while in others it does not.
For example, when using the following CSV file, the original files are NOT removed:
samplename,description,batch
/home/amizeranschi/bcbio-stuff/automated-VC-test/fastq-files/sample1-R1-L001.fastq.gz,sample1,testingVC
/home/amizeranschi/bcbio-stuff/automated-VC-test/fastq-files/sample1-R1-L002.fastq.gz,sample1,testingVC
/home/amizeranschi/bcbio-stuff/automated-VC-test/fastq-files/sample1-R2-L001.fastq.gz,sample1,testingVC
/home/amizeranschi/bcbio-stuff/automated-VC-test/fastq-files/sample1-R2-L002.fastq.gz,sample1,testingVC
/home/amizeranschi/bcbio-stuff/automated-VC-test/fastq-files/sample2-R1-L001.fastq.gz,sample2,testingVC
/home/amizeranschi/bcbio-stuff/automated-VC-test/fastq-files/sample2-R1-L002.fastq.gz,sample2,testingVC
/home/amizeranschi/bcbio-stuff/automated-VC-test/fastq-files/sample2-R2-L001.fastq.gz,sample2,testingVC
/home/amizeranschi/bcbio-stuff/automated-VC-test/fastq-files/sample2-R2-L002.fastq.gz,sample2,testingVC

Meanwhile, when using the following CSV file, the original FASTQ files get deleted, although the script seems to work fine otherwise (i.e. the outputs are created identically as for the previous CSV file).
samplename,description,batch
/home/amizeranschi/bcbio-stuff/automated-VC-test/fastq-files/sample1-R1.fastq.gz,sample1,testingVC
/home/amizeranschi/bcbio-stuff/automated-VC-test/fastq-files/sample1-R2.fastq.gz,sample1,testingVC
/home/amizeranschi/bcbio-stuff/automated-VC-test/fastq-files/sample2-R1.fastq.gz,sample2,testingVC
/home/amizeranschi/bcbio-stuff/automated-VC-test/fastq-files/sample2-R2.fastq.gz,sample2,testingVC

My initial guess was that the script deletes the original files to avoid file name clashes, but the output file names are different from the original ones, for my test scenario (e.g. the original file sample1-R1.fastq.gz gets renamed to sample1_R1.fastq.gz)
How can I prevent the original FASTQ files from getting removed, when using the second CSV file?
I am running the script as such:
bcbio_prepare_samples.py --out ${bcbio_exp_name}-merged --csv ${bcbio_exp_name}.csv

Thanks much for the report and sorry for the confusion. It looks like Lorena adjusted this recently to move the file rather than symlink:
https://github.com/bcbio/bcbio-nextgen/commit/1d54360d8acb1b3c69d6a0e95827e1b08aff355f#diff-b00e89f4a9678f65963b50a7ded468b4R135
@lpantano -- what do you think about restoring the previous symlink approach rather than renaming single files for fastq merges? Or is the new approach part of a bigger plan?

Yes, it would be great for me if the original FASTQ files could be kept in place.

Hey,
I just pushed the fix to this. It will work as before, and to move files the parameter --remove-source can be used.
sorry about this.

Great, thank you very much!
One question: what is a good way of getting the latest versions of the modified files on my system, without manually checking out from GitHub?
I don't have a full local copy of Bcbio-nextgen installed at the moment. I'm testing the Bcbio_vm + CWL workflow, which I've installed following these instructions.
I ran bcbio_nextgen.py upgrade -u development as I normally did when testing bcbio-nextgen, but this resulted in several conda packages getting downgraded, including numpy:
bcbio_nextgen.py upgrade -u development
Upgrading bcbio
Solving environment: ...working... done

# All requested packages already installed.

Solving environment: done

## Package Plan ##

  environment location: /home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda

  added / updated specs:
    - libgcc-ng

The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    readline-7.0               |       haf1bffa_1         381 KB  conda-forge
    cryptography-2.3.1         |   py27hdffb7b8_0         964 KB  conda-forge
    cryptography-vectors-2.3.1 |        py27_1000        30.5 MB  conda-forge
    libgcc-ng-7.2.0            |       hdf63c60_3         6.1 MB  conda-forge
    numpy-base-1.15.0          |   py27h3dfced4_0         4.1 MB
    scipy-1.1.0                |   py27hc49cb51_0        18.0 MB
    tk-8.6.9                   |       ha92aebf_0         3.1 MB  conda-forge
    numpy-1.15.0               |   py27h1b885b7_0          36 KB
    ------------------------------------------------------------
                                           Total:        63.1 MB

The following NEW packages will be INSTALLED:

    cryptography-vectors: 2.3.1-py27_1000       conda-forge

The following packages will be UPDATED:

    cryptography:         2.3.1-py27hc365091_0              --> 2.3.1-py27hdffb7b8_0  conda-forge
    tk:                   8.6.8-hbc83047_0                  --> 8.6.9-ha92aebf_0      conda-forge

The following packages will be DOWNGRADED:

    libgcc-ng:            8.2.0-hdf63c60_1                  --> 7.2.0-hdf63c60_3      conda-forge
    numpy:                1.15.4-py27h1d66e8a_0             --> 1.15.0-py27h1b885b7_0
    numpy-base:           1.15.4-py27h81de0dd_0             --> 1.15.0-py27h3dfced4_0
    readline:             7.0-h7b6447c_5                    --> 7.0-haf1bffa_1        conda-forge
    scipy:                1.1.0-py27hfa4b5c9_1              --> 1.1.0-py27hc49cb51_0

This got the latest updates (the original FASTQ files aren't getting deleted anymore), but now Python prints a lot of warnings, which seem to be related to the Numpy package downgrade:
bcbio_prepare_samples.py --out ${bcbio_exp_name}-merged --csv ${bcbio_exp_name}.csv
/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/cyvcf2/__init__.py:1: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  from .cyvcf2 import (VCF, Variant, Writer, r_ as r_unphased, par_relatedness,
[2018-11-22T15:10Z] Skipping header.
[2018-11-22T15:10Z] Resource requests: sambamba, samtools; memory: 1.00; cores: 1, 1
[2018-11-22T15:10Z] Configuring 1 jobs to run, using 1 cores each with 1.00g of memory reserved for each job
[2018-11-22T15:10Z] Resource requests: sambamba, samtools; memory: 1.00; cores: 1, 1
[2018-11-22T15:10Z] Configuring 1 jobs to run, using 1 cores each with 1.00g of memory reserved for each job
[2018-11-22T15:10Z] Timing: prepare bcbio samples
/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/pandas/_libs/__init__.py:4: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  from .tslib import iNaT, NaT, Timestamp, Timedelta, OutOfBoundsDatetime
/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/pandas/__init__.py:26: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  from pandas._libs import (hashtable as _hashtable,
/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/pandas/core/dtypes/common.py:6: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  from pandas._libs import algos, lib
/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/pandas/core/util/hashing.py:7: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  from pandas._libs import hashing, tslib
/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/pandas/core/indexes/base.py:7: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  from pandas._libs import (lib, index as libindex, tslib as libts,
/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/pandas/tseries/offsets.py:21: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  import pandas._libs.tslibs.offsets as liboffsets
/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/pandas/core/ops.py:16: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  from pandas._libs import algos as libalgos, ops as libops
/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/pandas/core/indexes/interval.py:32: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  from pandas._libs.interval import (
/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/pandas/core/internals.py:14: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  from pandas._libs import internals as libinternals
/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/pandas/core/sparse/array.py:33: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  import pandas._libs.sparse as splib
/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/pandas/core/window.py:36: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  import pandas._libs.window as _window
/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/pandas/core/groupby/groupby.py:68: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  from pandas._libs import (lib, reduction,
/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/pandas/core/reshape/reshape.py:30: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  from pandas._libs import algos as _algos, reshape as _reshape
/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/pandas/io/parsers.py:45: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  import pandas._libs.parsers as parsers
/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/pandas/io/pytables.py:50: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  from pandas._libs import algos, lib, writers as libwriters
[2018-11-22T15:10Z] multiprocessing: prepare_bcbio_samples

Sorry about the numpy warnings. I'm not sure what caused it to downgrade on your install, sometimes the conda package dependencies can get pretty complex. Could you try doing:
bcbio_conda install -c conda-forge -c biconda 'numpy>=1.15.4'

to restore the previous version? It would be useful to know if that tries to change/downgrade other packages as we could figure out what change in your update linked to it. With that information we could improve the version pinning to avoid the downgrade for other updates. Thanks for the help debugging.

OK, it looks like the numpy-base is getting downgraded further:
conda install -c conda-forge -c bioconda 'numpy>=1.15.4'
Solving environment: done

## Package Plan ##

  environment location: /home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda

  added / updated specs:
    - numpy[version='>=1.15.4']

The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    numpy-1.15.4               |py27_blas_openblashb06ca3d_0         8.9 MB  conda-forge
    libopenblas-0.2.20         |       h9ac9557_7         8.8 MB
    numpy-base-1.14.3          |   py27h0ea5e3f_1         4.0 MB
    scipy-1.1.0                |py27_blas_openblashb06ca3d_202        39.4 MB  conda-forge
    openblas-0.3.3             |       ha44fe06_1        13.7 MB  conda-forge
    blas-1.1                   |         openblas           1 KB  conda-forge
    ------------------------------------------------------------
                                           Total:        74.8 MB

The following NEW packages will be INSTALLED:

    libopenblas: 0.2.20-h9ac9557_7
    openblas:    0.3.3-ha44fe06_1      conda-forge

The following packages will be UPDATED:

    blas:        1.0-mkl                           --> 1.1-openblas                         conda-forge
    numpy:       1.15.0-py27h1b885b7_0             --> 1.15.4-py27_blas_openblashb06ca3d_0  conda-forge [blas_openblas]
    scipy:       1.1.0-py27hc49cb51_0              --> 1.1.0-py27_blas_openblashb06ca3d_202 conda-forge [blas_openblas]

The following packages will be DOWNGRADED:

    numpy-base:  1.15.0-py27h3dfced4_0             --> 1.14.3-py27h0ea5e3f_1

The bcbio_prepare_samples.py doesn't run anymore, after the last upgrade:
bcbio_prepare_samples.py --out ${bcbio_exp_name}-merged --csv ${bcbio_exp_name}.csv
Traceback (most recent call last):
  File "/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/bin/bcbio_prepare_samples.py", line 14, in <module>
    from bcbio.install import _get_data_dir
  File "/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/bcbio/install.py", line 27, in <module>
    from bcbio.cwl import create
  File "/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/bcbio/cwl/create.py", line 18, in <module>
    from bcbio.cwl import defs, workflow
  File "/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/bcbio/cwl/workflow.py", line 8, in <module>
    from bcbio.pipeline import alignment
  File "/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/bcbio/pipeline/alignment.py", line 11, in <module>
    from bcbio import bam, utils
  File "/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/bcbio/bam/__init__.py", line 8, in <module>
    import numpy
  File "/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/numpy/__init__.py", line 142, in <module>
    from . import add_newdocs
  File "/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/numpy/add_newdocs.py", line 13, in <module>
    from numpy.lib import add_newdoc
  File "/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/numpy/lib/__init__.py", line 8, in <module>
    from .type_check import *
  File "/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/numpy/lib/type_check.py", line 11, in <module>
    import numpy.core.numeric as _nx
  File "/home/amizeranschi/bcbio-stuff/bcbio-vm/anaconda/lib/python2.7/site-packages/numpy/core/__init__.py", line 26, in <module>
    raise ImportError(msg)
ImportError:
Importing the multiarray numpy extension module failed.  Most
likely you are trying to import a failed build of numpy.
If you're working with a numpy git repo, try `git clean -xdf` (removes all
files not under version control).  Otherwise reinstall numpy.

Original error was: libgfortran.so.3: cannot open shared object file: No such file or directory

Sorry about the continued issues, it seems like the numpy-base downgrade was an issue. I'm not entirely sure what is happening here but you might want some combo of:
bcbio_conda install -c conda-forge -c biconda 'numpy-base>=1.15.4 numpy>=1.15.4'

to try and get back to the previous state before the upgrades. Hope this fixes it for you.

The command conda install -c conda-forge -c bioconda numpy-base>=1.15.4 numpy>=1.15.4 doesn't seem to be running on the previous install. Nothing gets printed after more than 20 minutes of running, so I assume it's stuck.
I've also just realized something that might be worth mentioning. When setting up bcbio_vm, I'm also installing gatk4 and ensembl-vep from conda. This is because I also want these packages available locally, so that I don't need to run them from within Docker. To be more precise, this is how I install Bcbio_vm:
wget https://repo.continuum.io/miniconda/Miniconda2-latest-Linux-x86_64.sh
bash Miniconda2-latest-Linux-x86_64.sh -b -p ${bcbio_path}/anaconda
${bcbio_path}/anaconda/bin/conda install --yes -c conda-forge -c bioconda bcbio-nextgen gatk4 ensembl-vep
${bcbio_path}/anaconda/bin/conda install --yes -c conda-forge -c bioconda bcbio-nextgen-vm

Perhaps the addition of the gatk4 and the ensembl-vep packages is somehow messing up the dependencies and resulting in the numpy downgrade, when upgrading bcbio_nextgen to the latest development version.
Is there any other way of upgrading the bcbio_prepare_samples.py script, without running bcbio_nextgen.py upgrade -u development?

Thanks for the additional details on your setup. The downside of conda is that it can get in some unique states depending on the packages installed. I don't think you did anything wrong, but it'll hard for us remotely to replicate exactly what is going on.
Waiting for the solver to finish on the install updating numpy-base is the way to go. It's possible you're accidentally redirecting the output on the command line, so make sure you have the > quoted in the command. You can also just separately upgrade numpy-base as a first pass:
conda install -c conda-forge -c bioconda 'numpy-base>=1.15.4'

You'll need to wait for it to finish resolving, even if it's taking an exceptionally long time. Hopefully that'll get your install working correctly.

My bad, the lack of quotes got the > character to redirect the output and I didn't realize this. The update worked fine.
Thanks a lot for your help!


ARTEMIS-2308 Support exporting metrics

Based on the conversation from #2626 I decided to pursue Micrometer integration which required a completely different approach than the one I took before. There is now no direct integration with Prometheus. The broker uses Micrometer APIs and a plugin structure was added to support specific integrations. A Prometheus plugin is available at https://github.com/jbertram/artemis-prometheus-metrics-plugin.

Great stuff. +1 on this from me. Nice abstraction from implementations.

It would be nice now to have the components repo, and an option to include it with the installation.
Great stuff...
is this ready to merge?

I just pushed the latest changes:

Fixed documentation (Mike)
Fixed XSD (Mike)
Addressed thread-safety issues (Franz)
Added static finals for metric names (Franz)

@jbertram there still work to be improved, mainly when we get the repository, but this is good as is for now. We can send more commits later.


Add FreeBSD support

I believe this is mostly adding in order as we verify everything:
1- PR support for FreeBSD (including bootstrapping)
2- Nightly builds
3- Release builds
Because GitHub actions don't have FreeBSD support, we'll need to use CirrusCI.

Note... we can't do bootstrapping as part of the PR as it currently stands as it expects X number of things to be available and will fail

Closed by #113


Forge / Sponge 1.10 biome ID > 256 error

Hello,  I am using: terraincontrol-forge-2.8.2-SNAPSHOT.jar, under: spongeforge-1.10.2-2011-5.0.0-BETA-1567.jar.
Error:  java.lang.RuntimeException: Invalid id 256 - maximum id range exceeded.
I attempted to load a previously loaded world and apparently ran out of Biome ID's.  Note:  previously this world worked fine under Cauldron 1.7.10.
Error Log:  https://gist.github.com/mcsnetworks/f9b1791ff921a10e9b8ef7ff900fea39
WorldConfig.ini:  https://gist.github.com/mcsnetworks/7d82ce38d4693d005d171a68b9546f21
Thoughts?

Yeah, the Forge version is not really useable at the moment. Zidane suggested a fix using a placeholder biome, I will have to try something like that.

Hello.  Does your latest Forge commits address this issue?

Not really. The crash should be gone, but the biome will show up as if it were the Plains biome.

Does that mean that any biome ID that gets registered past 256 will be completely broken?

The biome won't be registered, so it will show up as an unrecognized biome. Minecraft displays these as the plains biome.

@rutgerkok from a generation stand point will it still work when the register with this message?
12:22:42 AM [INFO] [TerrainControl] Asked to register Grand_CRocksBorder with id 268, but succeeded with id 0
12:22:42 AM [INFO] [TerrainControl] Asked to register NethersCave with id 202, but succeeded with id 0
12:22:42 AM [INFO] [TerrainControl] Asked to register CanyonClosed with id 266, but succeeded with id 0
12:22:42 AM [INFO] [TerrainControl] Asked to register Nethers with id 128, but succeeded with id 0


Use faster Ed25519 impl for gossip crypto

@achingbrain has identified alternative implementations of Ed25519 crypto. This issue is a tracker to ensure we timely upgrade our deps once a faster impl lands. See benchmarks in https://github.com/libp2p/js-libp2p-crypto/pull/211
I don't have data right now to show but historically gossip crypto has appeared in CPU profiles taking ~5% of total CPU time in the main thread
TODO:

[ ] Libp2p releases libp2p-crypto
[ ] Bump dependency in libp2p-noise and release https://github.com/ChainSafe/js-libp2p-noise
[ ] Bump dependency in Lodestar

@mpetrunic does libp2p-noise must use libp2p-crypto to comply with some interface or can we just import any implementation that we want?

libp2p decided to drop switch to ed-wasm, see discussion here: https://github.com/libp2p/js-libp2p-crypto/pull/215

libp2p decided to drop switch to ed-wasm, see discussion here: libp2p/js-libp2p-crypto#215

If I follow correctly the result has been to drop all PRs and stay on the pure-js impl right?

For the record I'm not against switching to a WASM ed25519 implementation in the future, it's just that in the testing I did, it didn't seem to be a bottleneck.
If @dapplion is seeing evidence to the contrary then this is certainly something we can re-evaluate if some benchmarks can be created that reflect realistic workflows so we can measure the difference in implementations.

Now we can use a faster implementation thanks to plug-gable crypto here https://github.com/ChainSafe/js-libp2p-noise/pull/133

Sample impl of native version from @ShogunPanda

If you want, I have sample implementation with sodium-native in https://github.com/web3-storage/ipfs-elastic-provider-bitswap-peer/blob/main/src/noise-crypto.js

the current js implementation is way faster than sodium-native (probably due to the cost of calling native layer)
stablelib decrypt x 268,550 ops/sec ±1.05% (90 runs sampled)
sodium-native decrypt x 45,880 ops/sec ±2.47% (88 runs sampled)
stablelib encrypt x 259,846 ops/sec ±0.70% (92 runs sampled)
sodium-native encrypt x 39,432 ops/sec ±3.09% (82 runs sampled)

see https://github.com/ChainSafe/js-libp2p-noise/pull/161

We are using a dedicated implementation for noise


[SPARK-23877][SQL]: Use filter predicates to prune partitions in metadata-only queries

What changes were proposed in this pull request?
This updates the OptimizeMetadataOnlyQuery rule to use filter expressions when listing partitions, if there are filter nodes in the logical plan. This avoids listing all partitions for large tables on the driver.
This also fixes a minor bug where the partitions returned from fsRelation cannot be serialized without hitting a stack level too deep error. This is caused by serializing a stream to executors, where the stream is a recursive structure. If the stream is too long, the serialization stack reaches the maximum level of depth. The fix is to create a LocalRelation using an Array instead of the incoming Seq.
How was this patch tested?
Existing tests for metadata-only queries.

Test build #88959 has started for PR 20988 at commit 2345896.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution/2017/
Test PASSed.

Test build #88959 has finished for PR 20988 at commit 2345896.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/88959/
Test PASSed.

@cloud-fan or @gatorsmile, could you review this?

can we add a test? We can use HiveCatalogMetrics.METRIC_PARTITIONS_FETCHED.getCount() to check if this patch can really reduce the number of partitions being fetched.

@cloud-fan, I've added the test. Thanks for letting me know about HiveCatalogMetrics, that's exactly what I needed.

Test build #89535 has started for PR 20988 at commit 6e0685e.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution/2457/
Test PASSed.

Test build #89535 has finished for PR 20988 at commit 6e0685e.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/89535/
Test FAILed.

thanks, merging to master!


put blocks when theres a reserve command waiting for message

steps:

call reserve to fetch message when a message is available
call put to add a new message to queue. this call does not return

stale issue


Use "Fully qualified container names"

⚠⚠⚠ Since we do not accept all types of pull requests and do not want to waste your time. Please be sure that you have read pull request rules:
https://github.com/louislam/uptime-kuma/blob/master/CONTRIBUTING.md#can-i-create-a-pull-request-for-uptime-kuma
Tick the checkbox if you understand [x]:

[x] I have read and understand the pull request rules.

Description
Updating files to use "fully qualified container names" where referenced.  For docker users this is a completely invisible change - no user interface differences at all.  For podman users it removes the prompt to confirm that the "short name" containers being referenced are hosted at docker hub vs elsewhere.
Type of change
Please delete any options that are not relevant.

Other

Checklist

[x] My code follows the style guidelines of this project
[n/a] I ran ESLint and other linters for modified files
[x] I have performed a self-review of my own code and tested it
[x] I have commented my code, particularly in hard-to-understand areas
(including JSDoc for methods)
[x] My changes generate no new warnings
[n/a ] My code needed automated testing. I have added them (this is optional task)

Screenshots (if any)
n/a

Thanks, but currently Uptime Kuma is officially supported on Docker only (Podman, K8s may work, but no official support). So it is fine.


order fields are not obviously clickable

It is not obvious that partially filling open orders is possible because the amount box does not look clickable

As a recommondation I'd really adjust the confusing grey colour scheme a bit. just my 2 cents

It can be tested in  http://maker-market.surge.sh
Code can be reviewed in ui-issues branch.


Relative path doesn't work on vscode

What steps did you take and what happened:
Path on the same workspace is not working snp500_price_data_2011_to_2020.csv on the same dir of the notebook

Doesn't work
price_data = pd.read_csv('snp500_price_data_2011_to_2020.csv', index_col=[0])

It works
price_data = pd.read_csv('/opt/app-root/src/snp500_price_data_2011_to_2020.csv', index_col=[0])

What did you expect to happen:
Anything else you would like to add:
[Miscellaneous information that will assist in solving the issue.]
Environment:

OpenDatahub Version: (please check the operator version)
Workbench: (all, data-science, etc)
Workbench Version: (2023.1, etc)
Specific tool: (jupyterlab, rstudio, vscode, elyra-pipelines,etc)
Notebook-Controller Version: (please check the image version in notebook-controller deployment)

Logs/Screenshots

After testing this in cluster, it seems the relative path works as expected. We should be able to close this issue.

Thanks for re-testing this and clearing that this isn't a bug.
Marking this issue as complete.


Automated cherry pick of #3381: .circleci: yunionio/onecloud-ci: bump golang version to 1.13.3

Cherry pick of #3381 on release/2.10.0.
#3381: .circleci: yunionio/onecloud-ci: bump golang version to 1.13.3

Codecov Report

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

@@               Coverage Diff                @@
##             release/2.10.0   #3384   +/-   ##
================================================
  Coverage                  ?   7.46%
================================================
  Files                     ?     414
  Lines                     ?   66220
  Branches                  ?       0
================================================
  Hits                      ?    4946
  Misses                    ?   60851
  Partials                  ?     423

Flag
Coverage Δ

#aFlag
7.46% <ø> (?)

Impacted Files
Coverage Δ

pkg/baremetal/utils/disktool/disktool.go
0% <ø> (ø)

pkg/util/ucloud/wire.go
0% <ø> (ø)

pkg/util/aws/instance.go
0% <ø> (ø)

pkg/util/ucloud/vpc.go
0% <ø> (ø)

pkg/util/ucloud/network.go
0% <ø> (ø)

pkg/compute/guestdrivers/managedvirtual.go
0% <ø> (ø)

pkg/compute/models/storageschedtags.go
3.22% <ø> (ø)

pkg/compute/models/host_recycle.go
0% <ø> (ø)

pkg/cloudcommon/db/tenantcache.go
1.31% <ø> (ø)

pkg/compute/guestdrivers/openstack.go
7.57% <ø> (ø)

... and 20 more

Continue to review full report at Codecov.

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

/lgtm

/approve


Broken matcher: checks should fail

This won't fail PR checks because the Renovate baseBranches options really merge the default branch's config with the baseBranch's (PR branch) config. As a result, the config used for the dry run has both the broken matcher (from PR branch) and the previously-working matcher (from default branch), causing no dependencies to be missed. Checks would only fail on the next PR, at which point main will no longer have the working matcher.


remove_csrf_check not working, redirects to payment success route with 419 status code.

closing due to following reasons:
Insufficient information and stale


Memoize exception_lines in ExceptionPresenter

When an exception occurs and is displayed, ExceptionPresenter is used. However, there is an obvious slow amplification doing in it. This PR fixes it.
The method failure_lines uses exception_lines 3 times, which uses exception.message. In some situation, exception.message can be slow (when inspect is called on a big object for example, such as during NoMethodError).
Without caching, this delay, which can become considerable, will be amplified by 3x.
Here is a simple example of an rspec that would be amplified
class A
  def inspect
    sleep(1)
  end
end

describe 'A' do
  it 'works' do
    A.new.no_such_method
  end
end

Instead of taking 1 second, the print of the failure message takes 3 seconds.
I did memoization (@exception_lines ||= ...), but the call result could have been saved and reused in the failure_lines method. Let me know if you prefer that i change it to just start failure_lines with exception_lines = self.exception_lines.
As a side note, I think it would be helpful if the --profile or a new flag would help debug slow failures messages (top 10 of slowest failures to display).

Do you mind checking the build failure?

Looking here https://travis-ci.org/github/rspec/rspec-core/branches, i believe the problem is on master, and not a result of my changes.

@MaxLap It's not, this branch introduces failures in aggregate failures scenarios but master is failing due to our cross repo checks which in turn are failing due to diff-lcs changes elsewhere.

Apologies, I checked again it is failing with the same error. However this cannot be merged until it is green.

Master is green if you want to rebase this

All green :)


Deploy

This deploy contains the following PRs:

@damassi: Added forever to start script (#1244 by @craigspaeth)

  Generated by :no_entry_sign: Danger


Added documentation and sync workflows

The workflow is currently failing, because it expects the source branch to be the main branch. As it is not, the action is attempting to also create a new PR on nuxt-auth in order to sync both main branches of both repos. This issue will not longer exist when we merge into main and have it push the changes over then, as the main branch of nuxt-auth will already be up to date!


Unknown which symbols do not return transcript

When I call POST /ensembl/canonical-transcript/hgnc with these 4 symbols:
["TPR", "BRAF", "SANDER", "TP53"]

it returns only 3 transcripts. It's unclear for which symbol no transcript can be found.
Would it be possible to return the submitted symbol in the result?
@jjgao

@sandertan good point.

This has been fixed.


molecule fails to reset itself when driver is changed in config

I observed that molecule gets confused when a driver is swithced inside a scenario, like moving from delegated to docker casing confusing errors that do not give a hint about what caused them.
--> Action: 'destroy'
ERROR! the playbook: None could not be found

An error occurred during the test sequence action: 'destroy'. Cleaning up.
ERROR:
--> Scenario: 'foo'
--> Action: 'cleanup'
Skipping, cleanup playbook not configured.
--> Scenario: 'foo'
--> Action: 'destroy'
ERROR! the playbook: None could not be found

Funny part is that this scenario is not supposed to have these playbooks.
Removing temp files of molecule does solve the issue, but most users do not even know where these are located.
I am not yet sure how we can decide when we are in a tainted environment and to suggest performing a reset as we do want to do it by accident. Maybe timestamping molecule.yml file would be enough? When this is changed we can throw a clearly visible warning which tells user that config was tainted since last run and that they may want to do a reset if somethign fails.

Thanks @ssbarnea, removed temporal files (in my case  ~/.cache/molecule/) as workaround and everything ok.

There is now the molecule reset command that can do this but is not run automatically.
If anyone wants to implement this it would be really nice first feature.


⚠ Fetchers has degraded performance

In 69d1b36, Fetchers ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 405 ms

Resolved: Fetchers performance has improved in c28cc30.


UHD 4k size being restricted to HD

Seems like the UHD version is sending 1920x1080 now and has been doing so for several days now. I was hoping you had some ideas or info about it.

Let me see

Fixed

Although the fixed photo size is 4K, but it seems just 1080p enlarged, not as HD as before.

There is no need to solve it, because a HD pic would have appeared in the UHD resource as same name like “xxxx_UHD.ext”


Incorporate ./shells

Is your feature request related to a problem? Please describe.
I think it is time to share efforts in building user provided dev environments. I also think this template repo leverages the flakes model of sharing to the most elaborate extend. I would be pleased if I could use something like github.com:user/nixflk#devShells.rust of a trusted user as an input to my own variety of devshells.
Describe the solution you'd like
I would like such sharing to evolve around https://github.com/numtide/devshell to provide an advanced and consistent devshell environment.
Describe alternatives you've considered
none — inmature thought.
Additional context

https://github.com/numtide/devshell

https://github.com/colemickens/nixcfg/tree/main/shells (for what I mean)

User provided dev environments would be oposed to porject provided dev environments. It would be interesting to learn about ways how user provided dev environments can hook into / overlay / complement project provided ones. This question collaterally seeks answer here: https://github.com/numtide/devshell/issues/52

a few shell.nixs for being able to hack on random source code trees

— for a quite intriguing motivation to boost collaboration on source code through the flakes model

I like to idea of providing various shells as an output. I've had a similar idea recently. I think the simplest way to go about this would be to add a custom flake output attribute. Something like shells. We will probably have to write some checks as well. Definitely not a bad idea though.

I hope @zimbatm could add to the thought-noodle-soop we are cooking here. Should we add more salt? A shells attribute is already quite spicey. But will it be allowed once / if flakes outputes will be typed?

#54 is a step in this direction.

I try to second: https://github.com/nrdxp/nixflk/pull/55


Using MatDialogClose breaks default form submit functionality

Reproduction
StackBlitz: https://stackblitz.com/edit/components-issue-bde981
Steps to reproduce:

Click on the Doesn't Work button to open the dialog
Hit enter

Expected Behavior
In the working example hitting enter submits the form and in this case, closes the dialog. I wouldn't expect that adding
the MatDialogClose directive in place of the click method would change that.
Actual Behavior
Adding MatDialogClose prevents the form from being submitted when hitting enter and not having the button focused.
Environment

Angular: 8.0.0
CDK/Material: 8.0.0
Browser(s): Chrome 76.0
Operating System (e.g. Windows, macOS, Ubuntu): Windows

More about the reason behind that you can see here #2599.

I don't understand why it would override type=submit if already defined on the element though.

I agree with you, that is something that needs to be supported, if you don't define button type then it should work like it's working, but if you define it then this value should be used instead.

Agreed that it shouldn't change the type if it's set manually. As a workaround, you can add a submit button that calls dialogRef.close()


feat: emitting events for policies violations

Closes #284.

Some resulting events upon policies violations.
NAMESPACE            LAST SEEN   TYPE      REASON                    OBJECT                                         MESSAGE
default              0s          Warning   InvalidHostname           tenant/ingress-hostnames                       Ingress disallowed-hostname/denied-networking hostnames kubernetes.io is forbidden for the current Tenant
default              0s          Warning   HostnameCollision         tenant/ingress-hostnames                       Ingress allowed-hostname-list/allowed-extensions-0 hostnames collision for sigs.k8s.io
default              0s          Warning   InvalidIngressClass       tenant/ingress-class                           Ingress ingress-class-disallowed/denied-ingress class foo is forbidden for the current Tenant
default              0s          Warning   StorageClassForbidden     tenant/storage-class                           PersistentVolumeClaim storage-class-disallowed/denied-pvc StorageClass standard is forbidden for the current Tenant

Thanks for the report @bsctl, fixed with commit 757f880.
We're now emitting two kinds of events:

InvalidIngressClass when using a forbidden class
MissingIngressClass when using any class

@prometherion LGTM.
As minor improvement, please make sure to have consistent Reason and Message across all the recorded events
Here an example of events collected
Events:
  Type     Reason             Age                From               Message
  ----     ------             ----               ----               -------
  Warning  InvalidHostname    57m (x2 over 57m)  tenant-webhook     Ingress sample-production/example hostnames example.com is forbidden for the current Tenant
  Warning  HostnameCollision  55m (x2 over 55m)  tenant-webhook     Ingress sample-production/example2 hostnames collision for webapp.clastix.io
  Warning  ContainerRegistry  49m                tenant-webhook     Pod sample-production/example is using a forbidden registry quora.io
  Warning  InvalidHostname    46m (x2 over 46m)  tenant-webhook     Ingress sample-production/example hostnames web.clastix.io is forbidden for the current Tenant
  Warning  InvalidHostname    35m (x2 over 35m)  tenant-webhook     Ingress sample-production/minimal-ingress hostnames  is forbidden for the current Tenant
  Warning  InvalidHostname    33m (x2 over 33m)  tenant-webhook     Ingress sample-production/minimal-ingress hostnames example.com is forbidden for the current Tenant
  Warning  NamespaceQuota            10s                tenant-webhook     Namespace sample-deleteme cannot be attached, quota exceeded
  Warning  NamespaceQuota            2m22s              tenant-webhook     Namespace sample-deleteme cannot be attached, quota exceeded
  Warning  NetworkPolicyDeletion     11s                tenant-webhook     NetworkPolicy sample-marketing/capsule-sample-0 cannot be deleted
  Warning  NamespaceQuota            12s                tenant-webhook     Namespace tenanta-default cannot be attached, quota exceeded
  Warning  TenantPrefix              12s                tenant-webhook     Namespace tenanta-default does not match the expected Tenant prefix
  Warning  PriorityClass             9s                 tenant-webhook     Pod sample-production/example is using Priority Class system-node-critical not allowed for the current Tenant


✨ Option to halt tests on failure

I asked on Discord about this and got some feedback; opening an issue to discuss if we should implement it.
Motivation
This is how tests currently work:
function testExample() public {
    assertTrue(x); // okay
    assertTrue(y); // fail
    assertTrue(z); // okay
}

// [FAIL] testExample()

z was evaluated even though y did not meet the requirements.
But say you're testing an interaction with complex contracts with lots of external calls and traces:
function testExample() public {
    c1.withdraw();
    assertEq(myBalance(), 100e18); // fail
    c2.deposit();
    assertEq(c2.availableFunds(), 100e18); // fail
    c2.borrow(); // revert
    assertApproxEqRel(dBalance(), 2500e18, 0.98e18); // not reached
}

// [FAIL. Reason: Collateral cannot be something something.] testExample()

This would produce many traces
Trigger multiple errors and eventually cause an unrelated revert in an external contract
Show it as the reason why the test failed, which is confusing
Not stop deployment scripts if a condition is not met
Take time to fail when testing against a forked network (until everything is executed)

Solution
If this sounds good, should it be done in Forge Std or Foundry?
Foundry
Allow halt_tests, halt_on_failure or similar, in foundry.toml.
Forge Std
Add stdConfig mapping - like a mini version of foundry.toml but for Forge Std.
Then, users could access it their setUp stdConfig["halt_tests"] = false;.
Other things I'd considered:

halts modifier, but got feedback that it's better to be a switch on the project level

This is how we would do it: https://github.com/dapphub/ds-test/pull/40
Example
function testExample() public {
    c1.withdraw();
    assertEq(balance(), 100e18); // fail => halt
    c2.deposit(); // not reached
    assertEq(c2.availableFunds(), 100e18); // not reached
    c2.borrow(); // not reached
    assertApproxEqRel(dBalance(), 2500e18, 0.98e18); // not reached
}

[FAIL. Reason: Halted!] testExample()
Logs:
  Error: a == b not satisfied [uint]
    Expected:<PHONE_NUMBER>00000000000
      Actual: 50000000

Closing, as this will be possible in v0.3. (https://github.com/foundry-rs/forge-std/pull/126)


zed: yoga merge

feat: add runner and workflow playbooks
feat: define groups and variables for runners and workflows
feat: add documentation for kayobe-automation
feat: add release note
fix: new-line-at-end-of-file
fix: D002 Trailing whitespace
feat: add amendments
feat: add description of secrets
Update doc/source/configuration/kayobe-automation.rst
feat: add suggested amendments
feat: rename kayobe-automation -> ci-cd
feat: add link to upstream Infra VMs docs
feat: provide reasons for building new image
fix: use explicit paths
feat: add comment to explain service start
feat: high level overview of CI/CD
feat: provide comment of github_runners format
feat: use default(omit) in default_runner_labels
feat: placeholder runners.yml to group_vars
feat: update runners.yml defaults
feat: add workflows section
feat: github_output_directory play variable
feat: add suggestions
feat: add undef hints for runner variables
fix: make playbook github specific
feat: provide writer.yml as stub
feat: amend step five and runner count
fix: distinguish runner hostname from runner name
fix: move workflows heading
feat: state runners are needed in multiple environments
fix: new-line-at-end-of-file
fix: D002 Trailing whitespace
feat: add additional information about the registry
fix: reworded section on github_registry
Docs: Mention broken pxe boot_interface
Remove piece about setting boot_interfaces
Add stop-openstack-services.yml playbook
Fix Wazuh manager playbook with no custom policies
Add password rotation docs page
Update secret rotation docs page
Fix secret rotation docs tox errors
Pin R9 base image tag
Secret rotation docs post-review changes
Disable os-capacity by default
Disable yamllint which fails on Jinja syntax
use ark repos for R9 opensearch builds
Pin Ubuntu Focal base image tag
add opensearch tag 2.11.1
feat: bump stackhpc.kayobe_workflows
feat: separate secrets and variables into separate tables
fix: secret and variable names in table
fix: ERROR: Malformed table

LGTM. +1


Fix Sanity Check Double Checking X Value

Quick fix for sanity check. Checks X, Y, and Z instead of accidentally checking X twice.
Side note:
Since this is a good check to have for any input, maybe the error log should have correct capitalization. There is a non-trivial chance of someone seeing this error message if they have an out-of-spec / corrupt file.

Thanks!


Prevent a device to be added/deleted more than once on Android

Cherry-picked to master from #17999.

Thanks!

Cherry-picked for 3.0.7.


Incorrect disk usage reporting with Docker images

Issue
We're seeing the disk usage for application instances being incorrectly reported when deploying using a Docker image.
Context
We have an application using a Docker image that's around 600M when uncompressed. the cf app output for this application when running indicates that there's a lot more disk space available than there actually is. This has led to applications running out of disk space within the container when the metrics indicate that there's still plenty of space available.
These incorrect numbers are also reported via the firehose metrics.
Steps to Reproduce
Push an app using a docker image, and observe the reported disk usage:
cf push docker-test --docker-image ubuntu:16.04 -k 200M --no-route --health-check-type none -c 'while true; do sleep 10; done'
cf app docker-test

ssh into the app container and view the actual disk used and available:
cf ssh docker-test
df -h

Expected result
I would expect cf app disk usage output to include the base container usage so that it accurately reflects the amount of space available.
Current result
cf app output:
name:              docker-test
requested state:   started
instances:         1/1
usage:             1G x 1 instances
routes:
last uploaded:     Tue 06 Mar 15:40:45 GMT 2018
stack:             cflinuxfs2
docker image:      ubuntu:16.04

     state     since                  cpu    memory       disk         details
#0   running   2018-03-06T15:41:58Z   0.0%   1.7M of 1G   8K of 200M

Actual disk availability within the container:
root@c54a5b98-04a3-485c-44b9-9f3c:~# df -h
Filesystem      Size  Used Avail Use% Mounted on
overlay          94M  8.0K   94M   1% /
tmpfs            15G     0   15G   0% /dev/shm
/dev/xvdb2      168G   24G  135G  16% /tmp/garden-init
tmpfs            15G     0   15G   0% /sys/fs/cgroup
udev             15G  4.0K   15G   1% /dev/tty
tmpfs            15G     0   15G   0% /proc/scsi

This shows that there is actually only 94M available within the container whereas the cf app output indicates that there's close to 200M available.

@emalm @julz do y'all have any thoughts on what's happening here?

@zrob As far as I can tell from https://github.com/cloudfoundry/executor/blob/cad64dd4aa984348819405360c0e5945cf47031d/containermetrics/stats_reporter.go#L159-L161, the Diego cell is relaying the disk metrics it gets from Garden directly into the Loggregator container-metrics message, so at first glance this seems like an issue with how Garden is calculating the disk usage for the Docker-image-based container. It does seem to be doing the correct enforcement for the DiskLimitScopeTotal disk-accounting mode, in terms of ensuring that the total disk usage of the rootfs layers and the per-instance files does not exceed the desired disk limit, but maybe it needs to add the base-layer usage back into the usage metric it reports.

also /cc @teddyking

It looks to me like the CF CLI is printing the ExclusiveBytesUsed metric rather than the TotalBytesUsed, which is why the size of the base image has not been taken into account.
Poking around the executor code I can see that that's what we're grabbing here and then reporting here.
The Exclusive metric makes sense when pushing buildpack-based app, but perhaps we want to report the Total metric for docker-based apps instead? I can see why the metric currently being reported when using a docker-based app isn't really all that useful.

Thanks, @teddyking ! I hadn't realized there were two separate disk stats available. Added https://www.pivotaltracker.com/story/show/156310667 to the Diego tracker for the cell rep to report the Total one for Docker-image-based containers.

Looks like this was handled in https://www.pivotaltracker.com/story/show/156310667, closing
@selzoc && Davis


Cannot scale or rotate objects w.r.t to local pivots or grouped pivots.

Select multiple objects in the scene.
Open EC Editor, Scale operation and choose World space for the scaling operation.
Drag one of the scale axes.

Observe that each object is scaled with respect to their invidivual pivots (with world space orientation).
The "Axes" box currently contains options "Local" and "World". If a multi-select is active, it should have the following options instead:
"Local" - operate w.r.t. local space position and orientation.
"Individual World" - operate w.r.t. local space position and world space orientation.
"Grouped World" - operate w.r.t. world space position (of the selection centroid) and world space orientation.

I do not use Blender.


shouldBe(text(xxx)) failed, despite of xxx was present

Strangely this test fails, while the text is present in System output:
 open("http://www.datev.de");
 SelenideElement menu=$("#nav1 > li:nth-child(7) > a ");
 System.out.println(menu.innerHtml());
 menu.shouldHave(text("MyDATEV"));

System.out:
 MyDATEV
Error:
Element should have text 'MyDATEV' {#nav1 > li:nth-child(7) > a } Element: ''
selenide 2.2.21, selenium 2.1.47,1
P.S. Strangely enough, the test passes, if I use open(saved_html), with html file, that was saved for the error in build/tests directory.

Got it. The class "nurscreenreader" puts the text off-screen (position: -1500,-1500), so that only the image is showing. Then, if just html is saved and tested - CSS is not shown, so that the span is on-screen.
No bug.

Wow, it's non-trivial!
Bravo, @vinogradoff !


Refactor/core

Changes

%core.nop -> %core.nat:
nop usually means sth entirely differently.
Use implicit Dst type for %core.bitcast:
.ax %core.bitcast: Π [D: *, S: *][S] -> D -> .ax %core.bitcast: Π.[S: *][D: *][S] -> D
showcasing some of the newer features of Thorin in lit/clos/malloc.thorin
adds wrap around parameter to deal with non-power of two .Idx in core::bit1 & core::bit2
See Discord discussion. Instead of casting to bit_floor or adding proof certificates, I just added the solution we already have for %core::wrap: add another (.Nat) flag that determines the overflow behavior. Rn, however, nobody is really doing anything with this flag. This is sth for future work.

Use implicit Dst type for %core.bitcast:

The source type is now implicit not the destination type, right?
(The dst type could theoretically be implicit but could not be locally inferred; the information is only available in its usage context (Hindley–Milner style inference/unification))

Use implicit Dst type for %core.bitcast:

The source type is now implicit not the destination type, right? (The dst type could theoretically be implicit but could not be locally inferred; the information is only available in its usage context (Hindley–Milner style inference/unification))

correct.


go1.5 fixed broken imports etc

Hi,
I've fixed broken imports, updated for uint->int changes you made in z80 (it's somewhat debatable how far I propagated these changes) and fixed WoS downloads which are now http. Details are in the commit comments. It's compiled with go1.5 using libsdl-1.2 under ubuntu 14.04.
I've tested loading tape and snapshot of 4 games and the spectrum4.net timing tests (passes all but last two as previously). Seems to work fine. Let me know if you have any comments...
Colm

Thank you very much!

You're welcome and thanks for keeping the speccy alive :)


⚠ Bofrost.es has degraded performance

In 87b9171, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1770 ms

Resolved: Bofrost.es performance has improved in cd9efd4 after 8 minutes.


bad channel id sent to membership/check call

Seeing these somewhere across french channels in a batched call. Can't quite find it. channel_id=80d2590ad04e36fb1d077a9b9e3a8bba76defdf8&claim_ids=CHAKRAS%2C3a...

Seems related to 2 users, will check out more.

Sub to : ef44f434ec541ddaa96143eb29465a8d8f698444
"lbry://@7*CHAKRAS#ef44f434ec541ddaa96143eb29465a8d8f698444",


When subscribe I can't use other commands ?

I use examples/pubsub_consumer.php like this:
Predis\Autoloader::register();
$redis = new Predis\Client([
    'scheme' => 'unix',
    'path' => $sysConfig['redis_sock'],
    'persistent' => true,
]);

// Initialize a new pubsub consumer.
$pubsub = $redis->pubSubLoop();
// Subscribe to your channels
$pubsub->subscribe('im_platform_log', 'control_channel');

$redis2 = new Predis\Client([
    'scheme' => 'unix',
    'path' => $sysConfig['redis_sock'],
    'persistent' => true,
]);
$expireTime = 60 * 10;
……
case 'message':
            if ($message->channel == 'control_channel') {
                if ($message->payload == 'quit_loop') {
                    echo 'Aborting pubsub loop...'.PHP_EOL;
                    $pubsub->unsubscribe();
                }
                else {
                    echo "Received an unrecognized command: {$message->payload}.".PHP_EOL;
                }
            }
            else {
                $logStr = $message->payload;
                ……
                if (!$redis2->exists($callKey)) {
                    $redis2->hmset($callKey, [
                        'success' => 0,
                        'failure' => 0,
                    ]);
                    $redis2->expireat($callKey, $reqtimeUnix + $expireTime);
                }
            }
……

As you see,  I hope subscribe data then counter for some data;
But:

This is my first use redis, I am very confusing.

If you use the same unix domain socket as a persistent resource (see persistent => true) for both clients then you are actually reusing the same underlying socket resource. In this case if $redis enters a PUBLISH/SUBSCRIBE context the same happens for $redis2 because Redis itself marks the very same connection in that particular state. Using PHP's persistent connections with Redis may introduce weird behaviours especially when using UNIX domain sockets so they should be used carefully or even avoided when not strictly necessary.

Aha! Thank you very much.
So it seems that, PHP use persistent connect must be carefully and more test.
In this case, redis is same as mysql. When connecting, the function would first try to find a (persistent) link that's already open with the same host(unix socket).
In fact, I not necessary use persistent link.


Use argparser in simulate.py to handle CLI arguments

Being able to run simulate.py on a clipboard string with a --disable or -d flag would be convenient, since I can use it for test cases (or write pythonic automation)

Implemented argparse into simulate.py. I'm going to hold off on closing the issue until i implement the --disable flag and phase out system.argv entirely

Closing this now, I'm probably going to expand this using cli.py to keep user interaction simple.


enzyme usage

Hi,
is there any simple way to use enzyme within your generator?

Hi @be-codified, for integration into the current stable release @weblogixx summed it up here https://github.com/react-webpack-generators/generator-react-webpack/issues/256#issuecomment-233230142
It's also worth mentioning that the upcoming V4 release (can be installed with npm install generator-react-webpack@beta) comes with enzyme integrated automatically.

Great, thank you.


Buddy Project Setup

[x] Build a setup command to generate interactions in relevant channels to avoid reaction triggers again
[x] Rewrite the existing handlers to use the interactions introduced above

Completed in https://github.com/Yes-Theory-Fam/yesbot-ts/pull/580/commits/c43cfabefe53ce3d518ca4d31b353cd3eaa5abf8


Make query augmentation pluggable

We've started implementing __typename, but one should be able to plug in any fields they need.
Matches this diagram: http://docs.apollostack.com/apollo-client/how-it-works.html#minimize

Fixed?

I need to ship a release with this, then we need to add to the docs

OK shipped in 0.3.11.


Scheduler continually puts card in first position no matter which button is pressed (Soon/Later)

Describe the bug
While using IR3, the scheduler will repeatedly put the card in the first position and not allow to view a new card regardless of choosing "Soon" or "Later". Additionally, this is occassionaly throwing this error:

To Reproduce

Create blank deck
Creat two new cards with card type IR3
Click on the deck and select "study"
Select "Show Answer"
Select either "Later" or "Soon" from the "When do you want to see this card again?" prompt
Same card appears as next in line. Repeat.

Expected behavior
I expect that after selecting "later", I should be presented with the next card in line in the organizer. However, instead I get a popup message that says "card moved to position 1" and it shows up again. With several cards in the deck it does the same thing.
Specs (please complete the following information):
PC
Edition	Windows 11 Home
Version	22H2
Installed on	2022-09-24
OS build	22621.2361
Experience	Windows Feature Experience Pack 1000.22674.1000.0
ANKI

Version 2.1.65 (aa9a734f)
V3 scheduler

ADD-ON

Incremental Reading Version 4.11.8

It appears to be the same problem.
I created 6 cards:

Press "Study" to start the reading queue:

Shows me card number 7 first:

Clicking "Later" saying that the card has been moved to position 50, but then shows me card 7 again:

Can you check the Scheduling configuration? Maybe you have both soon and later set at 10%?

I met this problem too. Changing the order in which new cards are inserted in the deck configuration might be helpful.

I'm thinking of removing the "Manual" priority mode. It is super confusing and extremely time consuming.


[BEAM-3279] Deprecate and remove Coder.consistentWithEquals

Hi @kennknowles !
Could you please review my changes:

Deprecate Coder.consistentWithEquals method and add javadoc
Remove overriding from coders in the java-core

I'm not sure about removal of overriding from :
org.apache.beam.sdk.coders.MapCoder#consistentWithEquals
org.apache.beam.sdk.coders.ListCoder#consistentWithEquals
because it breaks the tests below:
org.apache.beam.sdk.coders.MapCoderTest > testConsistentWithEquals FAILED
org.apache.beam.sdk.coders.ListCoderTest > testConsistentWithEquals FAILED
I can rewrite these tests if it's necessary.
Post-Commit Tests Status (on master branch)

Lang
SDK
Apex
Dataflow
Flink
Gearpump
Samza
Spark

Go

---
---
---
---
---
---

Java

Python

---

---
---
---

See .test-infra/jenkins/README for trigger phrase, status and link of all Jenkins jobs.

retest this please

retest this please

retest this please

@kennknowles this change ready to merge

@kennknowles PR ready to merge.
Thank you for your time!

@AlexKbit I opened a pull request to you for minor changes. Did you see it?

@kennknowles about tests with hardcoded expected result for consistentWithEquals?
Yep. I removed tests from ListCoderTest & MapCoderTest.

https://github.com/AlexKbit/beam/pull/1

@kennknowles should i do squash with this changes again?

I can squash them for you. Thanks!

Thanks! If you want to follow-up there is good test coverage missing here: each coder could have a test, shared in CoderProperties, that the equality on encoded bytes matches the equality on structuralValue.

Thank you! Can you create another ticket for this task(assign to me)?

https://issues.apache.org/jira/browse/BEAM-6904

Thank you! 😄

Congratulations! This change (which is good) exposed a critical bug in the core SDK. We may have to roll this back, hopefully only temporarily, while we figure out what to do.

To roll this forward, we need to do a few things:

understand which core transforms are affected when the serialized coder changes
preferred: replace all Java serialized coders in the core SDK with StructuredCoder

for runners like Dataflow (and I think Flink) that do in-place update, make them OK with the change


Kotlin: 90. Subsets II

File(s) Modified: 90-Subsets-II.kt
Language(s) Used: Kotlin.
Submission URL: _https://leetcode.com/submissions/detail/797295927/_

@Ahmad-A0 please, take a look

Thanks, @MaratKhakim!


Add support for newer nodejs versions, in the form of '5.x'.

Hello,
Following PRs #19 and #20 , here's a fix for support on newer versions, whilst still maintaining compatibility with older versions' repositories.
Thank you.

@wolfeidau if you have time could you please review this? It looks good to me aside from my concern re v4.x vs v5.x.

We're now installing LTS (https://nodejs.org/en/blog/release/v4.2.0/) by default.


feat(frontend): add header and mobile menu (WIP)

🍰 Pullrequest
Adds the header component and a bottom menu for mobile
Issues

fixes #707

Todo

[x] Use Vuetify utility classes where possible
[x] Use correct icons
[x] Complete tab control animation
[x] Use message indicator in menus
[x] Implement news indicator
[x] Implement light / dark switch
[x] DreamMall should not be part of topMenu, but scroll with the page
[x] Get colors from theme
[x] Default-Avatar mit Initialien des Users (@Hardy-Hart-am-Start ?)
[x] Hydration mismatch because of randomized SVGs
[x] Camera icon mobile
[x] Logout
[x] Implement design changes for user info
[x] Implement design changes for icon colors and backgrounds
[x] Implement design changes for icon borders
[x] Custom switch component
[x] Avoid height change of tab control
[ ] Solve other hydration text content mismatches (=> issue created)
[ ] Cleanup / update storybook (create issue)
[x] Refactor TabControl item handling

I'm done here, the only thing missing is test coverage. @Elweyn @Mogge


Allow use under miri (aka: fix UB / update Error impl to contain some of anyhow's bugfixes since Jan)

I'd like to move to using eyre over anyhow more. One downside is that eyre doesn't have the changes that make anyhow pass under miri, which means if I use eyre, much of it needs to be excluded from miri.
Also, there's at least case where the old code was UB in a way that the mutable noalias addition can exploit in theory (although in practice I suspect it would be very difficult). Fixing that requires most of the work to fix the other things, and in general
See https://github.com/dtolnay/anyhow/pull/134 for the original PR to anyhow (which I wrote, for essentially the same reason that I'd like this fixed in eyre), which talks about explicitly which patterns are bad, and gives some background.
In general the TL;DR is "doing dodgy things to &T, &mut T, Box<T>[^1] is very bad, so you need to use raw pointers". A concrete example is that stuff like ErrorImpl<()> pretty much needs to be held only behind a raw pointer. Instead of using an &ErrorImpl<()> to get at the fields, you need to eitehr use core::ptr::addr_of!/addr_of_mut!, or convert to *const ErrorImpl<E> which can be derefed. There are several other things like this, which are discussed in that PR.
[^1]: Including ManuallyDrop<Box<T>>
The ergonomics of that PR are quite bad, but it got up cleaned it up significantly by introducing https://github.com/dtolnay/anyhow/blob/master/src/ptr.rs afterwards.
These basically just give NonNull more semantic meaning, and making deref/deref_mut unsafe (even though it probably should explain when it's safe to use it (rarely) and erm, use the correct bounds for Send/Sync 😓)
I'm willing to do the work to make this happen, but... realistically it's probably going to make the code more complex and harder to maintain[^2], so I figured I'd give a heads up first.
[^2]: I wish this weren't the case, but the ergonomics of raw pointers are pretty awful across the board :(

Working on this right now :smiley:
Got it mostly passing, but will need to set up CI testing as well


[Feature Request] Copy Credentials from HTTP Response

It would be helpful to be able to send credentials directly from an HTTP response to the extension instead of having to manually copy/paste keys and tokens to profiles, especially because the profile editing screen can't be open on a different tab from the extension itself. This could be done either by right clicking the response or selecting it from a list in a popup. Often applications will use a login flow to get credentials which are returned in a JSON body that would be pretty simple to parse.

Are you receiving credentials from Cognito?
So a response like this one?
{
   "Credentials": {
      "AccessKeyId": "string",
      "Expiration": number,
      "SecretKey": "string",
      "SessionToken": "string"
   },
   "IdentityId": "string"
}

I could add an item to the context menu for responses that allows users to highlight a JSON object and click "import" to open a profile dialog.

I made a PR with this feature added. Feel free to try it out and comment in https://github.com/anvilsecure/aws-sigv4/pull/14


How to add custom fields

I have some custom form fields on tickets that I am setting via the API.  After some tinkering, I found that this works.  Consider adding it to the docs?
$ticket = new Iszelei\OsTicketSDK\Ticket;
$ticket->setName($usersName)
	->setEmail($email)
	->setSubject($subject)
	->setMessage($body)
	->setTopicId(1);
$ticket->country = $usersCountry;
$created = $osTicket->createTicket($ticket);

If you have a custom field with the variable name "country" for tickets, this will populate it.  You might consider also adding a setCustom('variable_name', 'value') method on ticket to make this more explicit and clear.

True, the "setCustom" method will be implemented in the near future. Thank you!


I can't create a new authority(AttributeError: 'NoneType' object has no attribute 'strip')

Hi all, thank you for creating such a great product.
I'm having trouble now because I can't create a certification authority. When I try to create a new authority, I got a message from lumer. It's Was not created! 'NoneType' object has no attribute 'strip' like a screenshot.

I checked my lumer.log file. This message is the relevant information maybe:
{
  "asctime": "2021-10-14T15:42:45Z+0000",
  "name": "lemur",
  "processName": "MainProcess",
  "filename": "schema.py",
  "funcName": "decorated_function",
  "levelname": "ERROR",
  "lineno": 161,
  "module": "schema",
  "threadName": "MainThread",
  "message": "'NoneType' object has no attribute 'strip'",
  "exc_info": "Traceback (most recent call last):\n  File \"/www/lemur/lemur/common/schema.py\", line 158, in decorated_function\n    resp = f(*args, **kwargs)\n  File \"/www/lemur/lemur/authorities/views.py\", line 230, in post\n    return service.create(**data)\n  File \"/www/lemur/lemur/authorities/service.py\", line 145, in create\n    cert = upload(**kwargs)\n  File \"/www/lemur/lemur/certificates/service.py\", line 440, in upload\n    cert = Certificate(**kwargs)\n  File \"<string>\", line 4, in __init__\n  File \"/www/lemur/lib/python3.8/site-packages/sqlalchemy/orm/state.py\", line 433, in _initialize_instance\n    manager.dispatch.init_failure(self, args, kwargs)\n  File \"/www/lemur/lib/python3.8/site-packages/sqlalchemy/util/langhelpers.py\", line 68, in __exit__\n    compat.raise_(\n  File \"/www/lemur/lib/python3.8/site-packages/sqlalchemy/util/compat.py\", line 182, in raise_\n    raise exception\n  File \"/www/lemur/lib/python3.8/site-packages/sqlalchemy/orm/state.py\", line 430, in _initialize_instance\n    return manager.original_init(*mixed[1:], **kwargs)\n  File \"/www/lemur/lemur/certificates/models.py\", line 199, in __init__\n    self.body = kwargs[\"body\"].strip()\nAttributeError: 'NoneType' object has no attribute 'strip'",
  "timestamp": "2021-10-14T15:42:45Z+0000",
  "hostname": "lemur"
}

And beauty exc_info is here:
Traceback (most recent call last):
  File "/www/lemur/lemur/common/schema.py", line 158, in decorated_function
    resp = f(*args, **kwargs)
  File "/www/lemur/lemur/authorities/views.py", line 230, in post
    return service.create(**data)
  File "/www/lemur/lemur/authorities/service.py", line 145, in create
    cert = upload(**kwargs)
  File "/www/lemur/lemur/certificates/service.py", line 440, in upload
    cert = Certificate(**kwargs)
  File "<string>", line 4, in __init__
  File "/www/lemur/lib/python3.8/site-packages/sqlalchemy/orm/state.py", line 433, in _initialize_instance
    manager.dispatch.init_failure(self, args, kwargs)
  File "/www/lemur/lib/python3.8/site-packages/sqlalchemy/util/langhelpers.py", line 68, in __exit__
    compat.raise_(
  File "/www/lemur/lib/python3.8/site-packages/sqlalchemy/util/compat.py", line 182, in raise_
    raise exception
  File "/www/lemur/lib/python3.8/site-packages/sqlalchemy/orm/state.py", line 430, in _initialize_instance
    return manager.original_init(*mixed[1:], **kwargs)
  File "/www/lemur/lemur/certificates/models.py", line 199, in __init__
    self.body = kwargs["body"].strip()
AttributeError: 'NoneType' object has no attribute 'strip'

My lemur.conf.py:
# This is just Python which means you can inherit and tweak settings

import os
_basedir = os.path.abspath(os.path.dirname(__file__))

THREADS_PER_PAGE = 8

# General

# These will need to be set to `True` if you are developing locally
CORS = False
debug = False

# this is the secret key used by flask session management
SECRET_KEY = '<secret>'

# You should consider storing these separately from your config
LEMUR_TOKEN_SECRET = '<token>'
LEMUR_ENCRYPTION_KEYS = '<key>'

# this is the secret used to generate oauth state tokens
OAUTH_STATE_TOKEN_SECRET = b'<token>'

# List of domain regular expressions that non-admin users can issue
LEMUR_ALLOWED_DOMAINS = []

# Mail Server

LEMUR_EMAIL = ''
LEMUR_SECURITY_TEAM_EMAIL =<EMAIL_ADDRESS>
# Certificate Defaults

LEMUR_DEFAULT_COUNTRY = 'JP'
LEMUR_DEFAULT_STATE = 'Tokyo'
LEMUR_DEFAULT_LOCATION = ''
LEMUR_DEFAULT_ORGANIZATION = 'my organization'
LEMUR_DEFAULT_ORGANIZATIONAL_UNIT = ''

# Authentication Providers
ACTIVE_PROVIDERS = []

# Metrics Providers
METRIC_PROVIDERS = []

# Logging

LOG_LEVEL = str(os.environ.get('LOG_LEVEL', 'DEBUG'))
LOG_FILE = str(os.environ.get('LOG_FILE', '/home/lemur/.lemur/lemur.log'))
LOG_UPGRADE_FILE = str(os.environ.get('LOG_FILE', '/home/lemur/.lemur/db_upgrade.log'))
LOG_JSON = True

# Database

# modify this if you are not using a local database
SQLALCHEMY_DATABASE_URI = 'postgresql://lemur:my_secret@localhost:5432/lemur'

# AWS

#LEMUR_INSTANCE_PROFILE = 'Lemur'

# Issuers

# These will be dependent on which 3rd party that Lemur is
# configured to use.

# VERISIGN_URL = ''
# VERISIGN_PEM_PATH = ''
# VERISIGN_FIRST_NAME = ''
# VERISIGN_LAST_NAME = ''
# VERSIGN_EMAIL = ''

Does anyone have a good solution for this?
(I am not good at English. If you can't understand my english, please ask me feel free.)
Thanks for reading this far!

I also have this porblem.
lemur-docker-lemur-1     | 2022-11-17 08:13:18,044 INFO sqlalchemy.engine.base.Engine {'name_1'<EMAIL_ADDRESS>lemur-docker-lemur-1     | [2022-11-17 08:13:18,044] ERROR in schema: 'NoneType' object has no attribute 'strip'
lemur-docker-lemur-1     | Traceback (most recent call last):
lemur-docker-lemur-1     |   File "/opt/lemur/lemur/common/schema.py", line 158, in decorated_function
lemur-docker-lemur-1     |     resp = f(*args, **kwargs)
lemur-docker-lemur-1     |   File "/opt/lemur/lemur/authorities/views.py", line 235, in post
lemur-docker-lemur-1     |     return service.create(**data)
lemur-docker-lemur-1     |   File "/opt/lemur/lemur/authorities/service.py", line 140, in create
lemur-docker-lemur-1     |     cert = upload(**kwargs)
lemur-docker-lemur-1     |   File "/opt/lemur/lemur/certificates/service.py", line 464, in upload
lemur-docker-lemur-1     |     cert = Certificate(**kwargs)
lemur-docker-lemur-1     |   File "<string>", line 4, in __init__
lemur-docker-lemur-1     |   File "/opt/venv/lib/python3.8/site-packages/sqlalchemy/orm/state.py", line 433, in _initialize_instance
lemur-docker-lemur-1     |     manager.dispatch.init_failure(self, args, kwargs)
lemur-docker-lemur-1     |   File "/opt/venv/lib/python3.8/site-packages/sqlalchemy/util/langhelpers.py", line 68, in __exit__
lemur-docker-lemur-1     |     compat.raise_(
lemur-docker-lemur-1     |   File "/opt/venv/lib/python3.8/site-packages/sqlalchemy/util/compat.py", line 182, in raise_
lemur-docker-lemur-1     |     raise exception
lemur-docker-lemur-1     |   File "/opt/venv/lib/python3.8/site-packages/sqlalchemy/orm/state.py", line 430, in _initialize_instance
lemur-docker-lemur-1     |     return manager.original_init(*mixed[1:], **kwargs)
lemur-docker-lemur-1     |   File "/opt/lemur/lemur/certificates/models.py", line 193, in __init__
lemur-docker-lemur-1     |     self.body = kwargs["body"].strip()
lemur-docker-lemur-1     | AttributeError: 'NoneType' object has no attribute 'strip'

Same issue here when trying to setup authority with ADCS Issuer.
Following payload will create the give the error, and else creating a new authority with Name, Owner, Description & Common Name.
POST /authorities
{
    "country": "US",
    "state": "California",
    "location": "Los Gatos",
    "organization": "Example, Inc.",
    "organizationalUnit": "",
    "defaultIssuerPlugin": null,
    "type": "root",
    "signingAlgorithm": "sha256WithECDSA",
    "sensitivity": "medium",
    "keyType": "ECCPRIME256V1",
    "plugin": {
        "slug": "adcs-issuer",
        "pluginOptions": [],
        "title": "ADCS",
        "description": "Enables the creation of certificates by ADCS (Active Directory Certificate Services)",
        "route": "plugins",
        "reqParams": null,
        "restangularized": true,
        "fromServer": true,
        "parentResource": null,
        "restangularCollection": false
    },
    "extensions": {
        "subAltNames": {
            "names": []
        },
        "custom": [],
        "basicConstraints": {
            "path_length": null,
            "ca": true
        }
    },
    "subAltType": null,
    "subAltValue": null,
    "customOid": null,
    "customIsCritical": null,
    "customEncoding": null,
    "customValue": null,
    "commonName": "IssueTest",
    "owner"<EMAIL_ADDRESS>    "email"<EMAIL_ADDRESS>    "name": "IssueTest"
}


Update to 1.4.1

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


Bump activesupport

Coverage remained the same at 99.782% when pulling 49708ba46920ba2df66f15c966f9aab6ed2317b6 on felipe--bump-activesupport into 6011730aa0b592088c809d5a11c16e54485c8d54 on master.


Plotting empty figure after loading matplotlib

My colleague found a bug:
Execute cells in this order
import holoviews as hv
import numpy as np
from matplotlib import pyplot
%load_ext holoviews.ipython

%matplotlib inline
pyplot.plot([1,2,3])

%opts Image [colorbar=True]
im = hv.Image(np.random.rand(10,10))
im * hv.operation.contours(im, levels=[0, 0.8])

This will produce:

Fixed in a0de291bf4be29ae6568b8c8ff992e7445d2bc49. Turns out closing the same figure multiple times will reopen it again somehow. Closing.


Offload entry root slice to QE

For some queries, Sort, (Finalized) Aggregate and Join are executed on QD, which increase workload on a single point. This PR alleviates this by offloading these operators to a QE. Specifically, it checks whether the root slice (the slice of the Plan before it meets the first Motion) contains these operators in should_offload_entry_to_qe_plan_walker, then it checks whether the offloading can be performed safely in safe_to_offload_entry_to_qe_rte_walker by walking the range table. This implementation specifically does not rely on RelOptInfo or anything postgres-optimizer-specific so that we can port this to Orca in the future.

@my-ship-it Maybe merge this as well? :)


Allow toggling of debug output via a single switch (env var)

We should be able to toggle ansible / terraform verbosity logs via a single debug switch in.
so turning on verbose would do TERRAFORM_LOG=1 and run ansible with -vvv

Would the preference be to set via environment variable (which would follow convention with cloud provisioning patterns) or an option to apollo-launch.sh?

I think my personal preference would be to set a single environment variable (APOLLO_LOG??), which would in turn set -vvv  on ansible and TERRAFORM_LOG=1

It's what I was thinking would match with  existing usage of of the APOLLO_ namespace, will put together a PR

Only thing we need to consider is how this plays with https://github.com/Capgemini/Apollo/issues/152


When you touch the screen for the first time, the picture will be stuck a little time

Current bug behaviour
Open the app, touch the screen, the screen will jam. There will also be a jam without setting any touch callback
Expected behaviour
No catons
Steps to reproduce
see this demo,you can find this issue
https://github.com/itwangyu/boxgame.git   the code is on branch : master
Open the app and click on the screen, the fly will get stuck. After that, you can't get stuck at any point
Back quit the app, click again, and the fly will get stuck again. I want to know what the problem is
import 'dart:math';

import 'package:flame/flame.dart';
import 'package:flame/game.dart';
import 'package:flutter/material.dart';
import 'package:flame/util.dart';
import 'package:flutter/services.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  Util flameUtil = Util();
  await flameUtil.fullScreen();
  await flameUtil.setOrientation(DeviceOrientation.portraitUp);

  ///点击方块下落游戏
  final game = BoxGame();

  // TapGestureRecognizer tapper = TapGestureRecognizer();
  // tapper.onTapDown = game.onTapDown;
  // flameUtil.addGestureRecognizer(tapper);

  runApp(game.widget);
}

class BoxGame extends Game {
  Random mRandom = Random();
  bool hasInit = false;

  //屏幕尺寸
  Size mScreenSize;

  //一个苍蝇的尺寸，也是单位宽度，以后的尺寸计算都基于这个单位。无论屏幕多宽，都能并排放置9个苍蝇
  double tileSize;

  Rect rect;
  Paint paint;

  BoxGame() {
    initialize();
  }

  void initialize() async {
    resize(await Flame.util.initialDimensions());
    rect = Rect.fromLTWH(0, 0, tileSize, tileSize);
    paint = Paint();
    paint.color = Colors.blue;

    hasInit = true;
  }

  @override
  void resize(Size size) {
    super.resize(size);
    mScreenSize = size;
    //设定的单位尺寸是宽度的九分之一，也就是将屏幕宽度分为九个区块
    tileSize = mScreenSize.width / 9;
  }

  @override
  void render(Canvas canvas) {
    if (!hasInit) {
      return;
    }
    canvas.drawRect(rect, paint);
  }

  @override
  void update(double t) {
    if (!hasInit) {
      return;
    }
    rect = rect.translate(0, tileSize * 6 * t);
  }
}

The above is a simplified version of the code that can reproduce Caton. When you run the game, there will be a box falling down. When you click anywhere on the screen for the first time, the box will get stuck for a moment and drop the frame. This button is limited to the first click on the screen. Exit the app, come in again, and then click the screen to reappear Caton again.
The flash version I used is 0.29.4, which has nothing to do with mobile phones. I tried many mobile phones and they all got stuck.
Flutter doctor output
$ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, 2.0.4, on Microsoft Windows [Version 10.0.19041.868], locale zh-CN)
[√] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
[√] Chrome - develop for the web
[√] Android Studio (version 4.1.0)
[√] Connected device (3 available)
• No issues found!
Output of: flutter doctor -v

$ flutter doctor -v
[√] Flutter (Channel stable, 2.0.4, on Microsoft Windows [Version 10.0.19041.868], locale zh-CN)
    • Flutter version 2.0.4 at E:\flutterSdk\flutter
    • Framework revision b1395592de (13 days ago), 2021-04-01 14:25:01 -0700
    • Engine revision 2dce47073a
    • Dart version 2.12.2
    • Pub download mirror https://pub.flutter-io.cn
    • Flutter download mirror https://storage.flutter-io.cn

[√] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at E:\sdk
    • Platform android-S, build-tools 30.0.2
    • ANDROID_HOME = E:\sdk
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

[√] Android Studio (version 4.1.0)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[√] Connected device (3 available)
    • Redmi Note 8 Pro (mobile) • au4hssnruwozypdq • android-arm64  • Android 9 (API 28)
    • Chrome (web)              • chrome           • web-javascript • Google Chrome 88.0.4324.150
    • Edge (web)                • edge             • web-javascript • Microsoft Edge 89.0.774.76

• No issues found!

More environment information

Log information

Enter log information in this code block

More information

https://github.com/itwangyu/boxgame.git  branch：master

Hi, please only use English when creating an issue.
There is not code in your example repository, only an empty readme file.

Hi, please only use English when creating an issue.
There is not code in your example repository, only an empty readme file.

the code is on the branch master.
my issue:
when i enter the game and tap the screen for the first time ,the animation will be struck about 0.5 second.
then , touch back and quit the game .  open game again , tap the screen ,it will be struck a little time again.

@itwangyu please, update your issue description to be all in english with the info you sent on these last comments. It makes easier for other users and team member to ready the issue as the description is the first thing we look.
About your problem, I took a quick scan on the code you shared. my first bet would be that it is just some assets taking some time to load, but it is hard to be 100% as the repository you linked has a fair amount of code.
It would be good if you could isolate this problem into a minimal reproducible code, which uses the latest version of Flame, be is 0.29.4 ou 1.0.0-rc9. Because otherwise it will be difficult for us to investigate due to this be happening on project with a lot of things going on.

@itwangyu please, update your issue description to be all in english with the info you sent on these last comments. It makes easier for other users and team members to read the issue as the description is the first thing we look.
About your problem, I took a quick scan on the code you shared. my first bet would be that it is just some assets taking some time to load, but it is hard to be 100% as the repository you linked has a fair amount of code.
It would be good if you could isolate this problem into a minimal reproducible code, which uses the latest version of Flame, be is 0.29.4 or 1.0.0-rc9. Because otherwise it will be difficult for us to investigate due to this be happening on project with a lot of things going on.

I've updated the problem description with code that I can run directly

Hi, please only use English when creating an issue.
There is not code in your example repository, only an empty readme file.

I've updated the problem description with code that I can run directly

@itwangyu in the shared example, there is no tap detector or handler bound whatsoever, so I can't see how that could be an issue with flame... normally I would imagine the issue is you need to pre-load images and assets. in your simplified example, I can see you have:
  BoxGame() {
    initialize();
  }

  void initialize() async {
    resize(await Flame.util.initialDimensions());
    rect = Rect.fromLTWH(0, 0, tileSize, tileSize);
    paint = Paint();
    paint.color = Colors.blue;

    hasInit = true;
  }

which is not the best way to initialize your game. if you use the onLoad function with proper awaits as needed, that might be a better strategy. however even with the code as is, I don't see how tapping could be related to anything. if the problem was unrelated to tapping I would bet it had to do with your hasInit control variable.

As @luanpotter pointed it out, this doesn't seems to be an issue with Flame itself. Please try the suggestions pointed by him.
I am closing this, but feel free to add more comments here if you still have doubts and if you found additional evidences that this is indeed a bug, let us know and we can re open the issue.
Thanks.


Zalcano plugin: shows overlay whenever a vanilla healthbar is shown

Describe the bug
When entering the Hunleff fight in the gauntlet the zalcano overlay appears.
The same issue occurs for the nightmare/chambers of xeric
To Reproduce
Trigger any vanilla healthbar to show

This also occurs during the olm fight in chambers

Fixed in c5a52754e06abfc0f7dc35be0e86e3ec604d5040

Fixed in c5a52754e06abfc0f7dc35be0e86e3ec604d5040


popToRoot removes root page

Ionic version:  (check one with "x")
[x] 2.x
[x] 3.x
I'm submitting a ...  (check one with "x")
[x] bug report
Current behavior:
When using popToRoot on a root page, that page gets removed from the nav stack.
Expected behavior:
Calling popToRoot on the root page should not remove the root page from the nav stack. (do nothing)
Steps to reproduce:
http://plnkr.co/edit/7rWOPzOb3rUftEN0nYx6?p=preview
I made a pull request that fixes the issue #11499

Hello! Thanks for opening an issue with us and thanks for the PR! We will look into this and review the PR.

Fixes by @AndreasGassmann!


Text align

I added 2 useful classes: text-left & text-right.
I use it a lot in my own projects, don't know if it is valuable for milligram...

Hi @hedii, I think .text-center would be good too, and maybe it would be better in _Typography.sass instead of _Utility.sass file.

@fredericodietz text-xxx is more a utility helper class, that can be applied on typo elements but also on other elements

That's actually very useful! :+1:

to be semantic, rather than using text-, why not use push-?

it describes the css property, text-x.
push-x may be confusing with float-x.
text-x is also used in other css frameworks, and easy to remember/understand.

Sorry, but Milligram should be minimalist and the simplest possible.


A provider named "ct" could not be found in the official repository.Error

I am getting this error when trying to run terraform init in a mac. Any ideas folks?
`initializing the backend...
Successfully configured the backend "s3"! Terraform will automatically
use this backend unless the backend configuration changes.
Initializing provider plugins...
Checking for available provider plugins on https://releases.hashicorp.com...
Downloading plugin for provider "null" (1.0.0)...
Downloading plugin for provider "aws" (1.52.0)...
Downloading plugin for provider "dme" (0.1.0)...
Downloading plugin for provider "template" (1.0.0)...
Provider "ct" not available for installation.
A provider named "ct" could not be found in the official repository.
This may result from mistyping the provider name, or the given provider may
be a third-party provider that cannot be installed automatically.`

Please don't delete the issue report template.

I'm going to assume you're trying to set up a cluster on AWS with Container Linux. terraform-provider-ct is a 3rd-party Terraform provider plugin you must install. https://typhoon.psdn.io/cl/aws/#terraform-setup

Yes, thank you! Thats what I am trying to do. I will work on it.
On Mon, Dec 17, 2018 at 7:15 PM Dalton Hubble<EMAIL_ADDRESS>wrote:

I'm going to assume you're trying to set up a cluster on AWS with
Container Linux. terraform-provider-ct is a 3rd-party Terraform provider
plugin you must install. https://typhoon.psdn.io/cl/aws/#terraform-setup
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/poseidon/typhoon/issues/364#issuecomment-448081895,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AfmfmG0ViwS_2e_OCMvCXqeltB7lbKZ2ks5u6F3CgaJpZM4ZXgZB
.


Enable keypress for quill-mention

Instead of pressing @ or #, I would like to press the Tab key (or other keys) in order to display the mentions list. I am currently using React Quill - has anybody had any success implementing this?

i did implemented it using as a special character an empty string "" the behaviour is that anytime you focus the editor component, it will display the suggestions list.
mounted () {
    // instantiate the Quill editor referencing the editor element on line 3
    this.editor = new Quill(this.$refs.editor, {
      theme: 'snow', // bubble
      placeholder: 'start typing...',
      modules: {
        toolbar: false,
        mention: {
          allowedChars: /^[A-Za-z1-9\sÅÄÖåäö.-_]*$/,
          mentionDenotationChars: [''],
          source: (searchTerm, renderList, mentionChar) => {
            let list = []
            // depending on the character provided it displays the correct list
            if (mentionChar === '') {
              list = this.curlyExpressions
            }

            renderList(list, searchTerm)

            if (searchTerm.length === 0) {
            } else {
              const matches = []
              for (let i = 0; i < list.length; i++) {
                if (
                  ~list[i].value.toLowerCase().indexOf(searchTerm.toLowerCase())
                ) { matches.push(list[i]) }
              }
              renderList(matches, searchTerm)
            }
          }
        }
      }
    })
    this.editor.root.textContent = this.value
    this.editor.on('text-change', () => this.update())
  },

  methods: {
    update () {
      this.$emit('editorInput', this.editor.getText(0) ? this.editor.root.textContent : '')
    }

@RonaldCrb Thanks for the reply, unfortunately this isn't what I'm looking for as I don't want the suggestions listen to be constantly querying - it would ideal that when a key press event is initiated the suggestions box is displayed.

what about using tab (\t) as the mention denotation char?


Unable to build this package

Description:
The instructions state that I can bypass building from source but I don't see how.  Trying to build this package on Windows 7 I get checkstyle errors. I have used -Dcheckstyle.skip to get around this. But then I get errors with the tests. There are no instructions to set up the tests so I skip them also (-Dmaven.test.skip=true).
Then I try the install.bat which fails so I manually perform the copy of the two files as it suggests but then I get errors from Composer when I import wso2/mongodb as per the code example.

https://files.slack.com/files-pri/T47EAEKB5-FDFRMA333/image.png

Working with the Ballerina team I used a previous release (0.6.0) as I'm using Ballerina (0.981.0). The install.bat worked fine but the run error remaind. To fix that I copied the mongodb.zip into my users .ballerina repo area and it worked! The checkstyle errors and tests still need fixing though! :)

As discussed on slack as well, https://github.com/ballerina-platform/ballerina-lang/issues/8314 is fixed therefore you shouldn't get the error could not find package wso2/mongodb:* anymore.
We will fix the checkstyle issues. On a separate note, you don't have to build the package from source in order to use it. You can download the released package from GitHub releases.


feat: Rust-style raw string literals

For example, r"\n" and r#"The word "this" is in quotes."#.
Implements #1422

Is there a particular reason (apart from copying Rust syntax) that this breaks the current Lean convention of having modifiers before strings with exclamation marks (think s! and m!). I feel like it would be rather confusing for a new user that some modifiers come with ! and others with #.

@Kha I think this is ready for review

!bench

There is a ~1% parser run time regression. That sounds acceptable, but it might be worth a try avoiding the allocation for the rawStrLitStart result by only calling it when we're looking at an r. Sounds sensible?

@Kha I modified it to avoid allocation and to use the cheap curr == 'r' check. I also simplified the raw string parser state machine by making the states more explicit, which also saves some branching. One thing I decided is that it is OK to do lookahead for the initial ##...#" for a fast check and then parse it again to actually count the #'s, since then this fast check definitely does not need to allocate anything.
I'll run the benchmarks again once the build succeeds.

!bench

!bench


paperlib: init at 3.1.6

Description of changes
Project description
An open-source academic paper management tool.
Metadata

homepage URL: https://paperlib.app/en/
source URL: https://github.com/Future-Scholars/paperlib
license: GPL-3.0 license
platforms: unix, linux, darwin

Things done

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

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

[ ] sandbox = relaxed
[X] sandbox = true

[X] Tested, as applicable:

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

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

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

[X] Fits CONTRIBUTING.md.

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

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

1 package built:

paperlib

Thank you for addressing the formatting review.
I would still like to hear what you think about my two other reviews (renaming this package to paperlib-bin and exposing binary packages for all systems via passthru). It is confusing to see them marked "resolved" with no changes or comments added.
 Even though we cannot merge pull requests or request "blocking changes" during reviews, I still hope to move pull requests and the Nixpkgs project forward by participating in discussions during pull request reviews.

@ShamrockLee, yes I will address them as soon as I can and I re-request your review. Sorry they completely flew over my head.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-already-reviewed/2617/1815

Fails to build at the moment.

```
┃        >
┃        > trying https://github.com/Future-Scholars/paperlib-bin/releases/download/release-electron-3.1.6/Paperlib_3.1.6.AppImage
┃        >   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
┃        >                                  Dload  Upload   Total   Spent    Left  Speed
┃        >   0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
┃        > curl: (22) The requested URL returned error: 404
┃        > error: cannot download Paperlib_3.1.6.AppImage from any mirror
┃        For full logs, run 'nix log /nix/store/y3yqsmfz4f6ny2d4k9ngrbnp64cwyl5w-Paperlib_3.1.6.AppImage.drv'.
┣━ Dependency Graph:
```

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

1 package failed to build:

paperlib

@JohnRTitor Changing the pname variable messed up the upstream url(where the src would be fetched from). Sorry about that. It would be fixed soon.

I would still like to hear what you think about my two other reviews (renaming this package to paperlib-bin and exposing binary packages for all systems via passthru). It is confusing to see them marked "resolved" with no changes or comments added.

That is not what we are generally doing. This is usually reflected by meta.sourceProvonance and we only have the -bin suffix if there are two packages.