Add custom hostname flag to uci when using t2 rename

This is the other half of the puzzle for https://github.com/tessel/openwrt-tessel/pull/59 and completes https://github.com/tessel/openwrt-tessel/issues/19.
Also would close #252 and make https://github.com/tessel/t2-start/pull/117 not necessary.

@wyze so glad you're working on this.
Just so I'm sure I understand your proposed solution - you're basically creating a new flag that notes whether the name has been rewritten and then checking for that flag during the update process?
Have you confirmed that the flag is not overwritten during an update? I think it probably would not be overwritten since other uci configs are not overwritten but I just wanted to check.
What do you think we should do about the t2 rename --reset command? Should we remove this new flag or set it to zero? I personally don't see a need to do that because I think the only case a user might expect a new name is if they ran t2 update -n to completely erase all configs.
I might suggest that we name the new flag custom_hostname_set because it sounds more like a flag to me.
We may want to consider just writing to a flag whenever a new hostname is made. Like I said, the only case where we want to change the hostname is on t2 update -n which would delete that flag anyway (so a new name would be set).

Smoke Test

Rename
❯ t2 rename Tester
INFO Looking for your Tessel...
INFO Connected to Tessel-02A30510B2C5.
INFO Changed name of device Tessel-02A30510B2C5 to Tester

Make sure flag is set
❯ t2 root
INFO Looking for your Tessel...
INFO Connected to Tester.
INFO Starting SSH Session on Tessel. Type 'exit' at the prompt to end.

BusyBox v1.23.2 (2016-05-10 21:55:24 EDT) built-in shell (ash)

Tessel 2  /  Built on OpenWrt
root@Tester:~# cat /etc/config/system

config system
	option timezone 'UTC'
	option hostname 'Tester'
	option custom_hostname '1'

Update
❯ t2 update --openwrt-path openwrt-ramips-mt7620-tessel-squashfs-sysupgrade-node-4.4.3.bin
INFO Looking for your Tessel...
INFO Connected to Tester.
INFO Updating OpenWRT (1/2)
INFO Transferring image of size 19.14 MB. This will take 2-4 minutes...
INFO Transfer complete.
INFO Starting OpenWRT update.
INFO Please do not remove power from Tessel.
INFO This process will take at least two minutes...
INFO Configuration is saved during update.
WARN No firmware binary loaded... skipping firmware update
INFO Finished updating Tessel with local builds.

List
❯ t2 list
INFO Searching for nearby Tessels...
	USB	Tester

t2 update -n
❯ t2 update --openwrt-path openwrt-ramips-mt7620-tessel-squashfs-sysupgrade-node-4.4.3.bin -n
INFO Looking for your Tessel...
INFO Connected to Tester.
INFO Updating OpenWRT (1/2)
INFO Transferring image of size 19.14 MB. This will take 2-4 minutes...
INFO Transfer complete.
INFO Starting OpenWRT update.
INFO Please do not remove power from Tessel.
INFO This process will take at least two minutes...
INFO Configuration is not saved during update.
WARN No firmware binary loaded... skipping firmware update
INFO Finished updating Tessel with local builds.

List
❯ t2 list
INFO Searching for nearby Tessels...
	USB	Tessel-02A30510B2C5

Just so I'm sure I understand your proposed solution - you're basically creating a new flag that notes whether the name has been rewritten and then checking for that flag during the update process?

The CLI will set the flag, and then the uci defaults file, 50-tessel-hostname performs the check during the update on whether or not to change the hostname.

Have you confirmed that the flag is not overwritten during an update? I think it probably would not be overwritten since other uci configs are not overwritten but I just wanted to check.

See the smoke test above. 😄

What do you think we should do about the t2 rename --reset command? Should we remove this new flag or set it to zero? I personally don't see a need to do that because I think the only case a user might expect a new name is if they ran t2 update -n to completely erase all configs.

The t2 rename --reset command still uses the underlying setName function which sets this flag, so even on reset the flag would still be set. My smoke test above confirms that passing -n to t2 update does reset the hostname.

I might suggest that we name the new flag custom_hostname_set because it sounds more like a flag to me.

Works for me, I'll get that changed tomorrow.

We may want to consider just writing to a flag whenever a new hostname is made. Like I said, the only case where we want to change the hostname is on t2 update -n which would delete that flag anyway (so a new name would be set).

I think it might already do this, because t2 rename <newname> and t2 rename --reset use the same setName function which sets the flag. I am not aware of any other way that a new hostname is made. Unless you mean by when the 50-tessel-hostname file gets executed, and it updates the hostname, set the flag there too?

See the smoke test above. 😄

:+1:

Unless you mean by when the 50-tessel-hostname file gets executed, and it updates the hostname, set the flag there too?

Yes, this is exactly what I mean. This would solve the one sort of corner case where someone updates their Tessel, never changes the default name but becomes accustomed to it (or writes some code to access THEIR_TESSEL.local or whatever) and then is surprised to find the name updated and code broken after an update. This would just be an OpenWRT patch and not a CLI patch.

Okay. I will add that to the uci-default file in the PR over there: https://github.com/tessel/openwrt-tessel/pull/59

@johnnyman727, Is this good to go? I merged https://github.com/tessel/openwrt-tessel/pull/59 since more smoke tests were successful.

@wyze we don't need this anymore, right? OpenWRT will set its own custom_hostname field as soon as it's updated without a -n flag.

Ah, you might be right. Let me double check.

Yes, this is no longer needed.


Add docs

Summary
This one fell through the cracks 🤦♂ . Adding docs.
For https://github.com/elastic/ecs-logging-go-zerolog/issues/2.

Thanks, Michel. Do you know happen to know who has merge permissions on this repo?

👀 it looks like @axw might...


Update Access API docs with more context around interaction & remove outdated information

Introduction
After teaching myself to interact with the Access API, I found the docs a bit lacking with regards to onboarding. My discovery process was basically the following:

Tried onboarding to Alchemy only to remember they're no longer partnered with Flow - mention of Alchemy should be removed to avoid confusion
Figure out how to interact with a gRPC API - settled on gRPCurl as my cli client
Figure out how to get the API definition so I could interact with the API using my client - I ended up importing access.proto from flow/protobuf/flow/access/access.proto

This then allowed me to interact with the API, but clearer docs would've saved me time and confusion. After seeing we have an OpenAccess REST API, I download Swagger Viewer VS Code extension. Once I did, I was able to preview and interact with the API in a simple UI, making requests significantly easier (see screenshot below).

Suggestion
Based on my onboarding experience, I'd recommend a couple things:

Update the docs to remove outdated material
Include mention of REST API
Add context for:

Interacting with a gRPC API, maybe linking to a learning resource on how to do so and a suggested open-source client like gRPCurl
Examples of a few commands using the suggested client(s)
Interacting with REST API, either via cli and/or documenting how one would leverage Swagger for ease of use

One last request that, if possible, would probably be its own issue - adding reflection to the gRPS API. This would allow them to simply list the API methods so that devs don't have to load the .proto themselves.
P.S. Bonus issue - the link in protobuf/README.md is broken

good advice!
why is it still ignored in 2024


How about a click.required_option alias?

In my projects I use an alias required_option defined with code:
required_option = functools.partial(click.option, required=True)

This very simple issue propose to include this neat alias to the core. This way we know instantly the required and non-required options, for example:
@click.command()
@click.required_option('--username')
@click.option('--retries', default=1)
def main(username, retries):
    ...

I don't see a need for this to be in Click itself.


FOR REVIEW: Removed Review status.

Also added a reference to Obsolete I missed in that change (which I'll do separately if this is rejected.)
Based on discussions you may not want this as is. If so, just close, no big deal.

Right... I think we mostly need to use Review earlier (and I put myself foremost on that list). I actually thought "Review" had more encumbering process than it does, but not really. I'd like to add a block diagram and a few words to try to clarify a useful flow.


Update Song.py

Added more attributes: track_type, podcast, movie, has_video

@AllanMarcus it looks like this has a merge conflict - is this a dup of one of your other PRs?

it might. Sorry for the delay, I was away from a computer for a while. I will look at it tonight.

Some lines are probably duplicated. I'm new to git and I don't know how to resolve it. Sorry, I should have been more careful.

I'm going to close this PR. If you'd like to create a new one with the updates that weren't part of the other PRs let me know! Cheers!


Introduces a from_vec constructor for MatrixMN.

Addresses #378.
The implementation of from_vec simply wraps a call to from_iterator_generic. Because the standard library's implementation of into_iter is specialized for the .into_iter().collect<Vec<_>>() case, this is equivalent to re-using the original Vec as storage.

Note: this addition definitely needs to be accompanied by an update to the Matrix Construction section of the guide but the PR, as it stands, doesn't include that.

Thanks @jswrenn! I did not know about this specialization, it's great.
A couple of details though: the method you added should be named from_vec_generic because it takes its dimension arguments explicitly with types R and C.
This is allow you to add other methods called from_vec that will take the right number of usize arguments for the required dimensions not known at runtime (for example one usize for DVector::from_vec, two usize for DMatrix::from_vec and no dimension arguments at all for statically-sized matrices). For example you may take a look at the from_element implementation (which also has a corresponding from_element_generic method). Something similar should be added for from_vec (inside on the same macro as from_element:
#[inline]
pub fn from_vec($($args: usize,)* vec: Vec<N>) -> Self {
    Self::from_vec_generic($($gargs, )* vec)
}

I have created an issue for adding from_vec to the list of construction methods on the user guide: https://github.com/rustsim/nalgebra.org/issues/19 (do not feel obligated to fix it if you don't have the time).

Thanks for adding doc-tests too!


TypeError: float() argument must be a string or a number, not 'Timestamp'

Please make sure that this is a Bug or a Feature Request and provide all applicable information asked by the template.
If your issue is an implementation question, please ask your question on StackOverflow or on the TensorTrade Discord #help-desk channel instead of opening a GitHub issue.
System information

Have I written custom code (as opposed to using example directory):
OS Platform and Distribution (e.g. Mac Sierra, Windows 10, Linux Ubuntu 16.04):
Ubuntu 18.04.5 LTS
TensorTrade version:
Currently selected TF version: 2.x
TensorFlow version:
Python version:
3.7.10

You can obtain the TensorFlow version with:
python -c "import tensorflow as tf; print(tf.GIT_VERSION, tf.VERSION)"
Describe the current behavior
After initializing all Datastreams, portfolios, and render feeds, and inputting it inside a DQN agent to train,
it receives an error of Timestamp is not float, although we I used the below format to input my data streams as indicated in notebook examples,
for i, count in enumerate(data):
  pair = count.replace("/USD","")
  with NameSpace("bitfinex"):
    if i==0:
      bitfinex_streams = [
          Stream.source(list(data.get(count)[c]), dtype="float").rename(f"{pair}:{c}") for c in data.get(count).columns
      ]
    else:
      bitfinex_streams += [
          Stream.source(list(data.get(count)[c]), dtype="float").rename(f"{pair}:{c}") for c in data.get(count).columns
      ]

feed = DataFeed(bitfinex_streams)

Describe the expected behavior
It should be able to train as the notebook setup_environment_tutorial.ipynb displays a similar format,

Code to reproduce the issue
Provide a reproducible test case that is the bare minimum necessary to generate the problem.
cdd = CryptoDataDownload()
data = {}

data["BTC/USD"] = cdd.fetch("Bitfinex", "USD", "BTC", "1h")
data["ETH/USD"] = cdd.fetch("Bitfinex", "USD", "ETH", "1h")
data["LTC/USD"] = cdd.fetch("Bitfinex", "USD", "LTC", "1h")

data

for i, count in enumerate(data):
  pair = count.replace("/USD","")
  with NameSpace("bitfinex"):
    if i==0:
      bitfinex_streams = [
          Stream.source(list(data.get(count)[c]), dtype="float").rename(f"{pair}:{c}") for c in data.get(count).columns
      ]
    else:
      bitfinex_streams += [
          Stream.source(list(data.get(count)[c]), dtype="float").rename(f"{pair}:{c}") for c in data.get(count).columns
      ]

feed = DataFeed(bitfinex_streams)

bitfinex_options = ExchangeOptions(commission=0.0075, min_trade_price=10.0)
bitfinex = Exchange("bitfinex", service=execute_order,  options=bitfinex_options)(
    Stream.source(list(data.get("BTC/USD")["close"]), dtype="float").rename("USD-BTC"),
    Stream.source(list(data.get("ETH/USD")["close"]), dtype="float").rename("USD-ETH"),
    Stream.source(list(data.get("LTC/USD")["close"]), dtype="float").rename("USD-LTC")
)

portfolio = Portfolio(USD, [
    Wallet(bitfinex, 100000 * USD),
    Wallet(bitfinex, 0 * BTC),
    Wallet(bitfinex, 0 * ETH),
    Wallet(bitfinex, 0 * LTC)
])

env = default.create(
    portfolio=portfolio,
    action_scheme='managed-risk',  # ['managed-risk', 'simple', BSH ]
    reward_scheme='risk-adjusted', # [ 'risk-adjusted', 'simple' ]
    feed=feed,
    renderer_feed=renderer_feed,
    renderer=default.renderers.PlotlyTradingChart(),
    window_size=5
)

agent = DQNAgent(env)

agent.train(n_steps=200, n_episodes=5, save_path="agents/", render_interval=None)

Other info / logs
Include any logs or source code that would be helpful to diagnose the problem. If including tracebacks, please include the full traceback. Large logs and files should be attached.

@Youbadawy i am having the same error, did you resolve it?

@daecepi yes, use unix timestamp instead, it should work!

Please start from the latest examples. This is fixed there. I may merge the fix to data/cdd.py later.


Feature request: Add userId to addfile

When inserting a new document on an user initiated upload, userId is set per default within the generated document.
In our case we do not allow an optionaluserId per SimpleSchema:
  userId: {
    type: String,
    // optional: true
  }

We use addFile to add fixtures, technically there is no userId, but it would be great if we could just pass userId to addFile to stay consistent with user initiated uploads.
Thanks a lot!

Hello @menelike
As #299 is satisfied, could it be done in onAfterUpload with proceedAfterUpload flag?

@dr-dimitru
I thought of something simple like https://github.com/VeliovGroup/Meteor-Files/pull/305, but not sure if userId should be part of _dataToSchema.

Done in v1.7.6


[Mutator] Xanth - Realism

Not entirely sure about this but the author's name is either Xanth or Xanth_UT - going by the readme and the email address therein.

URL: https://unrealarchive.org/mutators/unreal-tournament/X/xanth-realism_02e98b18.html
Hash: 02e98b187e9aab356c5630f74eafc91ac02c9469
Current name: Xanth - Realism

Updated


servlet: historical flight API

Queries flight APIs for info about past flights,
using the following services:

https://opensky-network.org
https://adsbdb.com
https://airport-data.com

Note:

In OpenSky, Flights are updated by a batch process at night,
i.e., only flights from the previous day or earlier are available using this endpoint.

OpenSky requires a username, password pair, you can easily get
with a free account.
Learn more in the README.

Combined with the time tool:

uhm it looks like the change in schema now requires at least one properties (I was using oneOf, no properties element). I am moving one element to properties so that the schema validates, but that is not strictly necessary


Running the program opens  Visual Studio Code in wsl2 on windows 10 with Ubuntu.

I tried running the program on wsl2 on windows 10 with ubuntu.

The program opens an instance of Visual studio code instead. And does not detect that the extension is installed.
On windows 10 with wsl2 enabled we can either install the vscode extensions either locally (windows 10) or remotely (ubuntu wsl2).
I tried running the command that checks for the entensions. "code --list-entensions".
On Windows Powershell it runs successfully and shows the extension that are installed locally.
On Ubuntu WSL2 it opens the instance of vscode and shows that the option is invaid.

$ code --list-extensions
Ignoring option list-extensions: not supported for code.

Yes, this doesn't work on VSCode remote servers (which WSL also is, I suppose).
The extension should be installed at ~/.vscode-server/extensions/golang.go-X.X.X. This could be something that govalidate checks in vscode-server environments.


Fix Webpack config for Win development

Hey, there!
Dev server starts smoothly on MacOS. But one of my colleagues had issues on Windows 10.
Projects doesn't compile on his machine with complain on bibi.scss file:

ERROR in ./__src/bibi/resources/styles/bibi.scss
ModuleParseError: Module parse failed: Unexpected character ' '(1:0)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file.

I think that this issue related to forward slash in rules patterns. I've changed Webpack config a bit and now compilation ends without errors. npm run build command also without errors.

@ybelenko Thank you so much!


napari does not install numpy correctly on MacOs M1 (with possible workaround/fix) leading to a crash

Hello,
I've recently been working with M1 MacOs chips and had trouble with the installation. I found a work around and thought it might be useful to you.
🐛 Bug
When installing and running napari the intended (?) way, napari crashes.
To Reproduce
Steps to reproduce the behavior:
$ conda create -n test2
$ conda activate test2
$ conda install napari
$ napari

After running napari, it crashes and

I get the following error:
Traceback (most recent call last):
  File "/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/numpy/core/__init__.py", line 23, in <module>
    from . import multiarray
  File "/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/numpy/core/multiarray.py", line 10, in <module>
    from . import overrides
  File "/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/numpy/core/overrides.py", line 6, in <module>
    from numpy.core._multiarray_umath import (
ImportError: dlopen(/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/numpy/core/_multiarray_umath.cpython-310-darwin.so, 0x0002): Library not loaded: @rpath/libcblas.3.dylib
  Referenced from: /Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/numpy/core/_multiarray_umath.cpython-310-darwin.so
  Reason: tried: '/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/numpy/core/../../../../libcblas.3.dylib' (no such file), '/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/numpy/core/../../../../libcblas.3.dylib' (no such file), '/Users/leo.guignard/miniforge3/envs/test2/bin/../lib/libcblas.3.dylib' (no such file), '/Users/leo.guignard/miniforge3/envs/test2/bin/../lib/libcblas.3.dylib' (no such file), '/usr/local/lib/libcblas.3.dylib' (no such file), '/usr/lib/libcblas.3.dylib' (no such file)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/dask/array/__init__.py", line 2, in <module>
    from dask.array import backends, fft, lib, linalg, ma, overlap, random
  File "/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/dask/array/backends.py", line 1, in <module>
    import numpy as np
  File "/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/numpy/__init__.py", line 140, in <module>
    from . import core
  File "/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/numpy/core/__init__.py", line 49, in <module>
    raise ImportError(msg)
ImportError:

IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!

Importing the numpy C-extensions failed. This error can happen for
many reasons, often due to issues with your setup or how NumPy was
installed.

We have compiled some common reasons and troubleshooting tips at:

    https://numpy.org/devdocs/user/troubleshooting-importerror.html

Please note and check the following:

  * The Python version is: Python3.10 from "/Users/leo.guignard/miniforge3/envs/test2/bin/python3.10"
  * The NumPy version is: "1.23.1"

and make sure that they are the versions you expect.
Please carefully study the documentation linked above for further help.

Original error was: dlopen(/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/numpy/core/_multiarray_umath.cpython-310-darwin.so, 0x0002): Library not loaded: @rpath/libcblas.3.dylib
  Referenced from: /Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/numpy/core/_multiarray_umath.cpython-310-darwin.so
  Reason: tried: '/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/numpy/core/../../../../libcblas.3.dylib' (no such file), '/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/numpy/core/../../../../libcblas.3.dylib' (no such file), '/Users/leo.guignard/miniforge3/envs/test2/bin/../lib/libcblas.3.dylib' (no such file), '/Users/leo.guignard/miniforge3/envs/test2/bin/../lib/libcblas.3.dylib' (no such file), '/usr/local/lib/libcblas.3.dylib' (no such file), '/usr/lib/libcblas.3.dylib' (no such file)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/Users/leo.guignard/miniforge3/envs/test2/bin/napari", line 6, in <module>
    from napari.__main__ import main
  File "/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/napari/__main__.py", line 15, in <module>
    import napari.plugins._npe2 as _npe2
  File "/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/napari/plugins/__init__.py", line 7, in <module>
    from ..settings import get_settings
  File "/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/napari/settings/__init__.py", line 4, in <module>
    from ..utils.translations import trans
  File "/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/napari/utils/__init__.py", line 1, in <module>
    from ._dask_utils import resize_dask_cache
  File "/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/napari/utils/_dask_utils.py", line 8, in <module>
    import dask.array as da
  File "/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/dask/array/__init__.py", line 271, in <module>
    raise ImportError(str(e) + "\n\n" + msg) from e
ImportError:

IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!

Importing the numpy C-extensions failed. This error can happen for
many reasons, often due to issues with your setup or how NumPy was
installed.

We have compiled some common reasons and troubleshooting tips at:

    https://numpy.org/devdocs/user/troubleshooting-importerror.html

Please note and check the following:

  * The Python version is: Python3.10 from "/Users/leo.guignard/miniforge3/envs/test2/bin/python3.10"
  * The NumPy version is: "1.23.1"

and make sure that they are the versions you expect.
Please carefully study the documentation linked above for further help.

Original error was: dlopen(/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/numpy/core/_multiarray_umath.cpython-310-darwin.so, 0x0002): Library not loaded: @rpath/libcblas.3.dylib
  Referenced from: /Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/numpy/core/_multiarray_umath.cpython-310-darwin.so
  Reason: tried: '/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/numpy/core/../../../../libcblas.3.dylib' (no such file), '/Users/leo.guignard/miniforge3/envs/test2/lib/python3.10/site-packages/numpy/core/../../../../libcblas.3.dylib' (no such file), '/Users/leo.guignard/miniforge3/envs/test2/bin/../lib/libcblas.3.dylib' (no such file), '/Users/leo.guignard/miniforge3/envs/test2/bin/../lib/libcblas.3.dylib' (no such file), '/usr/local/lib/libcblas.3.dylib' (no such file), '/usr/lib/libcblas.3.dylib' (no such file)

Dask array requirements are not installed.

Please either conda or pip install as follows:

  conda install dask                 # either conda install
  python -m pip install "dask[array]" --upgrade  # or python -m pip install

Now, if I install napari the following way:
$ conda create -n test
$ conda activate test
$ conda install numpy napari

It starts as intended.
(Note that I have tried what was suggested on the error message and that it did not work).
Expected behavior
Not crash
Environment
Here is the difference between the two installations:
$ diff <(conda list -n test2) <(conda list -n test)
1c1
< # packages in environment at /Users/leo.guignard/miniforge3/envs/test2:
---
> # packages in environment at /Users/leo.guignard/miniforge3/envs/test:
12a13,14
> blas                      2.115                  openblas    conda-forge
> blas-devel                3.9.0           15_osxarm64_openblas    conda-forge
109a112
> liblapacke                3.9.0           15_osxarm64_openblas    conda-forge
113c116
< libopenblas               0.3.20               hea475bc_0
---
> libopenblas               0.3.20          openmp_h130de29_1    conda-forge
148c151,152
< numpy                     1.23.1          py310h0a343b5_0    conda-forge
---
> numpy                     1.23.1          py310h220015d_0
> numpy-base                1.23.1          py310h742c864_0
149a154
> openblas                  0.3.20          openmp_h7efc2c9_1    conda-forge

Please checek version of napari. Based on your second issue it looks like you meets a bug in conda and got napari in version 0.4.14 instead of 0.4.16. See #4891

It might be worth noticing that I am using miniforge and not miniconda

If your configuration is different than described in https://github.com/napari/napari/issues/4891 then add this information to this issue to simplify the life of a person who will try to fix it.

Ok your suggestion seems to have solve the issue indeed, sorry for missing the other issue and thanks a lot for the quick answer!

going to close this issue as it seems resolved


Custom colours?

How can the colours of the glyphs and background be customised?
I've tried changing the backgroundColor value on line 56 of config.js - https://github.com/Rezmason/matrix/blob/a4a0406826c599b44cb77dfe6d05593e0bff017e/js/config.js#L56 - to 9, 9, 9 for a white background, but this changes the font colour to white so I can't see anything!
What else needs to be changed for the glyph colour?

Sorry for the late reply!
Check out the paletteEntries field on the "palimpsest" version:
https://github.com/Rezmason/matrix/blob/a4a0406826c599b44cb77dfe6d05593e0bff017e/js/config.js#L200
See how the "lowest" color is brighter than the "highest" color?
You can imagine that the values in paletteEntries are like values in a Photoshop gradient— they have a color, and a number between zero and one that represents where they fall along the spectrum.

So, for instance, if you want a white background with amber glyphs that turn aquamarine, you could try:
tetsujin1979: {
	bloomStrength: 0,
	paletteEntries: [
		{ hsl: [0, 1, 1], at: 0.0 },      // red saturated white
		{ hsl: [0.15, 1, 0.4], at: 0.8 }, // amber saturated slightly dark
		{ hsl: [0.5, 1, 0.4], at: 1.0 },  // cyan saturated slightly dark
	],
},

Result:

I know the options are a bit confusing, hopefully soon I'll have the time to improve things one way or another. Thanks for taking an interest in the project!


Add "filterer" argument to outbox so one can decide if they want to put a selected event in the Outbox or not

Introduce Callable which will decide which events should be limited by outbox.
To consider some filtering patterns (by Category, or event type).

Implemented in https://github.com/Enforcer/python-event-sourcery/pull/33


IZPACK-1333: FinishPanel must use the uninstaller path from installData

IZPACK-1333: FinishPanel must use the uninstaller path from installData

What happens if there is no path set in install.xml, for example:
<uninstaller write="true />

?

Sorry, the current defaults for path and name are set in the Info class, didn't see this in time:
com.izforge.izpack.api.data.Info#uninstallerName
com.izforge.izpack.api.data.Info#uninstallerPath
So the implementation seems to be fine.

Thanks for contributing.


simplify the language

I just tried to simply the text a bit. I am not a native english speaker though, so please excuse any mistakes in the edits 🙏

@kdabir thank you! I will merge it once I am done will all major changes


Proposal: Intent component (to support voice assistants)

This is a proposal to add a new voice component to handle integration with voice assistants.
Goal of the component is to allow other components/platforms to seamlessly integrate with voice assistants. Make it just as easy as it is today to add HTTP API endpoints.
The voice component will have platforms for Google Home, Alexa, Snips. Means that in the future other voice providers can be easily added and benefit of existing apps.
Existing config that now sits under Alexa/APi.ai/Snips can be moved to a new voice_scripts component which allows to script intents via YAML.
Voice 101
Each platform works similar. You register commands with the platform in a form like this:

Name: ShoppingListAdd
Sentence: Add <shopping_item> to my shopping list
Slot shopping_item: type text

Then when said, the voice platform will provide us with data like this:
{
  "name": "ShoppingListAdd",
  "input": "Add beer to my shopping list",
  "slots": {
    "shopping_item": {
      "type": "text",
      "value": "beer"
    }
  }
}

Example intent handler
from homeassistant.components.voice import Intent

@asyncio.coroutine
def async_setup(hass, config):
    shopping_data = get_shopping_data(hass)
    hass.voice.register_intent(ShoppingListIntentHandler(shopping_data))
    return True

class ShoppingListIntentHandler(IntentHandler):
    intent = ['ShoppingListAdd', 'ShoppingListRemove', 'ShoppingListContent']
    # TODO how to link voluptuous schemas to expected slot values of intents

    # Optional
    platform = ['snips', 'google_home']

    def __init__(self, shopping_data):
        self.shopping_data = shopping_data

    @asyncio.coroutine
    def handle_intent(self, intent):
        if intent.intent == 'ShoppingListContent':
            response = IntentResponse()
            response.add_voice('The top 5 items on your shopping list are  {}'.format(
                self.shopping_data.top5()))
            return response

        else intent.intent == 'ShoppingListAdd':
            item = intent.slots['item_to_shop'].value
            yield from self.shopping_data.add_item(item)
            response = IntentResponse()
            response.add_voice('Added {} to your shopping list'.format(item))
            return response
        # etc…

Discussion

How should our abstracted slot info look? name, value. Anything else?

This seems like the next logical step.
The one change I would suggest is to not limit to voice since some assistants can parse text input to.
Sent from my LGE Nexus 5X using FastHub

@Landrash I guess you're right, any platform that can produce intents will fit this. Voice, text, thoughts?
I guess that we can rename the component intent

Intent seems like a generic enough name. Unsure if there's anything except voice and text so far that's used. Potentially in the future it could be assistants that use video but that's a future problem.

I wonder now if we should even have platforms for this component. I think that instead we should just allow hass.intent.fire_intent and we can keep the existing Alexa, Google Home and Snips components.

I'm following this. Not sure about how this all will be put together. My use cases:

Telegram Bot: I receive intents from telegram, so Telegram still needs to be able to call "conversation", which in turn would fire an intent.
Conversation via Browser: I receive commands from the Home Assistant interface, when clicking on the microphone.
Continuous Listening: I have a service continuously listening for a trigger word. When a sentence is entered after a trigger word, it is sent to Home Assistant conversation component.

I'd also like to know how this will affect API.AI component and Telegram Webhooks. API.AI currently implements intents already, so it'd be possibly good to normalize API.AI components definition to use this. Telegram Webhooks currently supports commands too.
I stop work on https://github.com/home-assistant/home-assistant/pull/8094 until all this is clarified.

I suggest renaming the title "to support voice assistants", to "to support voice, text and other interactions".
Intent systems are a programmatic paradigm for handling service interactions, not restricted to natural language input (ie Android platform uses intents for inter-application messaging too).
I find incomplete that the component accepts processed intents and returns plain sentence hints (ie "add_voice") only. Take, for example, the common case where some information is missing: "change tv channel" requires the intent system to request more info ("which channel?"). This calls for a context-aware natural language processor that can rebuild an intent, filling in the missing information, and send it again. For that, it will require more than a voice/text response, so the result of calling intents can be understood by client code.
I'd suggest you to have a look at, for example, API.AI and Android intent systems. I find several things missing here (context awareness, language concerns, timezone concerns, validation of parameters by the intent before calling, report missing parameters, error handling...). Some of this will be needed sooner or later.
Finally, as @Landrash mentioned, let's remove all references to 'voice' in this API (voice_scripts, homeassistant.components.voice, hass.voice, response.add_voice...).
In any case, this idea of unifying intents definition for all systems that use them sounds nice to me.

How should our abstracted slot info look? name, value. Anything else?

I'd say type will be necessary. Often intents will include custom types.
An example is when user says "turn on the kitchen light". The intent needs to include "kitchen light" as one of the valid "light" entities. Also, "wake me up in 8 hours" generates an intent that includes a datetime parameters.
Many intent generators will need a way of inspecting the available intents, their parameters, types, and in case of enumerated types, the full list of possible values and alternative labels for all those values.

Have a look at the actual PR here which is addressing a lot of your comments already https://github.com/home-assistant/home-assistant/pull/8434
We start with just a simple response now, in the future we can start adding prompts/clarifications etc.


fix: filter width + input bug

Sets the filter popup to the correct width (320px, confirmed by @cooper-joe)
Fixes a bug where the filter popup would change width when the user starts to type in the filter input field (attached video)

Depends on https://github.com/dhis2/analytics/pull/316
Bug:

Correct width:

As pointed out by @jenniferarnesen , this affects the wrapping of long names. They wrap, but are too narrow.

Previously, DV dimensions panel (DP) and Dashboards DP used to be the same width, which is why this was still working. But since Dashboards DP will now deviate style wise from DV and they're both separated (since the introduction of React Beautiful DnD), can we safely change the width for the DP in Analytics directly? (and fix the wrapping issue at the same time) Rather than passing in a style prop?

I would say yes. The one in analytics seems to be a custom one for the dashboards now.

@martinkrulltott @jenniferarnesen Or even move it to dashboards-app?

As the issue was in DimensionItem (thanks for pointing this out @jenniferarnesen ), moving DimensionsPanel wouldn't fix this anyway. Instead I updated DimensionItem (https://github.com/dhis2/analytics/pull/316/commits/ee4eef89b5586c1365f5482d5a411dd594dd36ed) to work in both use cases. Using a hardcoded max-width was a poor implementation anyway (whoopsi), so this solution is better in both regards.


Use native AAs for Scope.anchorCounts

Time to get rid of all uses of root/aav.d

Auto-merge toggled on


Include This https://web2.eu5.org/

i want to include my project and working with you please
Here is the link
https://web2.eu5.org/

Raise a PR in the API repo if you're using our API for your website and want it to be mentioned like others over here.


[AI Agent idea]

Description
Image Upload
Additional Information
I suggest if there is option to upload image to prompt it will be the next step.

@donqu1xotechina assign this issue  i will try it


High-level consumer rebalance algorithm having issues

Hey all, I saw a number of issues with the rebalancing algorithm in the high-level consumer. Namely, when several new consumers joined the cluster at the same time, the algorithm had trouble deciding how many partitions each consumer should be responsible for. This resulted in issues wherein partitions would become unassigned, and, more importantly, issues where somehow the consumer would not resolve it's conflicts within Zookeeper but read messages from its partitions in Kafka anyway, so multiple consumers would end up reading messages from the same partition(s). This was not good.
Additionally, I ran into https://github.com/SOHU-Co/kafka-node/issues/90, wherein multiple consumers repeatedly try to claim the same partition – I think this is simply due to the fact that the number of retries is not high enough, and all the consumers retry at the same time, creating contention. Using the retry library, I was able to increase the number of retries without more nesting, and I was able to randomize the timeout to hopefully reduce contention.
I also ran into https://github.com/SOHU-Co/kafka-node/issues/112, which arises due to the fact that in the rebalance code, the consumer will unassign itself from its partition successfully, but fail to claim a new partition. It will then retry the rebalance code, and try again to unassign itself from its partitions, even though it has already been assigned. I solved this by retrying each part of the rebalance code separately.
Anyway, due to these four issues (unassigned partitions, double-assigned partitions, NODE_EXISTS, and NO_NODE), I rewrote the rebalance code for my purposes and it seems to work quite well. I do not have the time to make it a full pull request, but I am attaching the code here in hopes that it will be useful to you. Perhaps at some point in the future I can make a more formal PR.
Two brief notes: (a) I used promises instead of bluebird for async flow for consistency with the rest of my codebase, (b) in my logic, each consumer only claims one partition from each topic. I simply run the same number of consumers as I have partitions – though this definitely would not be ideal for everyone. Perhaps the logic here can be extended for those who need more partitions than consumers.
var B = require('bluebird'), retry = require('retry');

function retryAndPromise(func) {
	return new B(function(resolve, reject) {
		var operation = retry.operation({
			retries: 10,
			minTimeout: 10,
			maxTimeout: 200,
			randomize: true
		});

		operation.attempt(function() {
			func().then(resolve, function(err) {
				if (!operation.retry(err)) { reject(err); }
			});
		});
	});
}

	function rebalance() {
		if (!self.rebalancing) {
			self.emit('rebalancing');
			self.rebalancing = true;

			var oldTopicPayloads = JSON.parse(JSON.stringify(self.topicPayloads));
			self.topicPayloads = [];

			log.info("HighLevelConsumer " + self.id + " is attempting to rebalance");
			retryAndPromise(function(cb) {
				return new B(function(resolve, reject) {
					log.info("HighLevelConsumer " + self.id + " stopping data read during rebalance");
					self.stop(function() { resolve(); });
				});
			}).then(function() {
				return retryAndPromise(function() {
					log.info("HighLevelConsumer " + self.id + " releasing current partitions during rebalance");
					return B.map(oldTopicPayloads, function(tp) {
						return new B(function(resolve, reject) {
							if (tp.partition !== undefined) {
								console.log(self.options.groupId, tp.topic, tp.partition);
								self.client.zk.deletePartitionOwnership(self.options.groupId, tp.topic, tp.partition, function(err) {
									if (err) { reject(err); }
									else { resolve(); }
								});
							}
							else { resolve(); }
						});
					});
				});
			}).then(function() {
				return retryAndPromise(function() {
					log.info("HighLevelConsumer " + self.id + " determining the partitions to own during rebalance");

					var newTopicPayloads = [];
					return B.map(_.uniq(_.pluck(self.originalTopics, 'topic')), function(topic) {
						return new B(function(resolve, reject) {
							self.client.zk.client.getChildren('/consumers/' + self.options.groupId + '/owners/' + topic, function(err, takenKeys) {
								if (err) { return reject(err); }

								self.client.zk.client.getData('/brokers/topics/' + topic, function(err, data) {
									if (err) { return reject(err); }
									var allKeys = Object.keys(JSON.parse(String(data)).partitions);

									var availableKeys = _.difference(allKeys, takenKeys);
									if (!availableKeys.length) { return resolve(); }
									newTopicPayloads.push({
										topic: topic,
										partition: availableKeys[0],
										offset: 0,
										maxBytes: self.options.fetchMaxBytes,
										metadata: 'm'
									});
									resolve();
								});
							});
						});
					}).then(function() {
						log.info("HighLevelConsumer " + self.id + " attempting to claim partitions " + _.pluck(newTopicPayloads, 'partition'));

						return B.map(newTopicPayloads, function(tp) {
							return new B(function(resolve, reject) {
								if (tp.partition !== undefined) {
									// In the case that two processes try to claim the same partition, one will error out.
									self.client.zk.addPartitionOwnership(self.id, self.options.groupId, tp.topic, tp.partition, function(err) {
										if (err) { reject(err); }
										else { console.log('Owned partition', self.id, self.options.groupId, tp.topic, tp.partition); resolve(); }
									});
								}
								else { resolve(); }
							});
						});
					}).then(function() {
						log.info("HighLevelConsumer " + self.id + " rebalance attempt was successful");
						self.topicPayloads = newTopicPayloads;
					});
				});

			}).then(function() {
				self.rebalancing = false;
				self.ready = true;
				return self.emit('ready');
			}, function(err) {
				self.rebalancing = false;
				return self.emit('error', new errors.FailedToRebalanceConsumerError(err.toString()));
			});
		}
	}

@jezzalaycock Can you share the code to me? thx.


Values configured in resource definition rules do not take effect

Describe the bug

Values of array type variables configured in resource definition rules do not take effect
Steps to reproduce

Create a resource definition with the following configuration.

Remove Ports and Envs in resource definition schema.

Create a resource using that resource type.

Check the deployment result.

Result

The configuration of Ports and Envs do not take effect.

Expected behavior

Deploy resources using the values configured in the rules.
Environment

Walrus version: v0.4.1-rc2

Additional context
Add any other context about the problem here.

Duplicate with https://github.com/seal-io/walrus/issues/2006


Added Kafka binder consumer lag metrics

Hi,
I have created a simple metric indicating what is a current lag in a consumption of the Kafka messages for binding consumer. With this metric users can easily see if given microservice is too slow in consuming messages and should be scaled horizontally for example. I plan to use this metric in order to enable auto-scaling in Kubernetes for Spring Cloud Stream based microservices.
What do you think?

Thanks @hekonsek,
This is a great contribution!

@mbogoevici I'm glad you like it. :)
This PR is a kind of proof of concept and I have not tested in a regular application yet. Wanted to check if you guys think this is something worth contributing. Tomorrow I will try to test it against live Kafka broker and in a standalone fat jar to be sure that everything works as I imagined. I will let you know when I'm done - I will also add documentation.

Marius, I have polished the code and tested it in a standalone Spring Cloud Stream application.
For standalone test I'm producing 100 messages every minute and slowing down consumer sink to consume one message per second. I'm invoking /metrics HTTP endpoint and I can see how input backlog is changing accordingly to those events. So now I can monitor my endpoints and tell Kubernetes to scale up/down my application if needed to deal with a significant backlog faster. :)
Can you take a look at the code and tell me if it is OK according to you? If you give me green light I will add documentation.

Hi guys. Any chance to get review of what I've done so far? Sorry for being impatient... ;)

Hi Henryk,
We've been a little backed up (me in particular due to a holiday in the US). I'll get to a first round of review in the next couple of days. Thanks for the contribution (and the patience :))!

Hi Marius,
Many thanks for review. I will check out if we can add group information to the TopicInformation class and push appropriate commit if it is possible. Thanks again!

Hi Marius,
Indeed TopicInformation can and should carry group id of the consumer. I planned to handle anonymous consumers differently, but TopicInformation#consumerGroup solves everything. Silly me - I should figure it out in the first place :) .
I have updated the PR including this change and all the others you suggested. Also after this change metric is stored under spring.cloud.stream.binder.kafka.someTopic.someGroup.lag key.
I will add some extra unit test coverage while waiting for an another review.
Cheers!

@hekonsek Thanks for the updates. LGTM in general, I need to play a bit with it more before merging. Would it be possible to include a documentation section on the metric? Also, a quick question about the future of this feature. With this PR, we publish the aggregate lag of all partitions assigned to a specific consumer. Would you think it useful to provide additional lag information for each partition - this would allow to use this to identify partition skew as well? In that case, should we perhaps rename the property to 'aggregateLag' ? I was also thinking of suggesting a small change in the structure of the metric spring.cloud.stream.binder.kafka.someGroup.someTopic.lag (this would IMO allow to add partitions in the future ala spring.cloud.stream.binder.kafka.someGroup.someTopic-0.lag, spring.cloud.stream.binder.kafka.someGroup.someTopic-1.lag etc. WDYT ?

Hi Marius,
Sure, take your time. I will give it extra end-to-end manual test as well. I will also commit documentation.
When it comes to the per-partition metrics. While my top priority would be to understand which topic has to be processed faster - that's why I'd like to receive summarized metrics in the first place. But I think that adding per-partition metrics in the future might be useful as well. So +1 for changing the naming convention to be partition-friendly.

One question Marius - what would be the best place to add documentation for this metric? Something like section "14.5 Kafka metrics", after "14.4 Dead-Letter Topic Processing" [1]?
[1] http://docs.spring.io/spring-cloud-stream/docs/Chelsea.SR2/reference/htmlsingle/index.html#kafka-dlq-processing

@hekonsek Sure, that would be great, thank you!

Hi Marius. I've just added documentation for the metric. Let me know if there is anything else I can do to help with this PR.

Rebased, squashed and merged as https://github.com/spring-cloud/spring-cloud-stream-binder-kafka/commit/9ad04882c8c36e812432a1c3c2a5148a7821dc6e with minor polishing.

Many thanks for all your help, Marius!


Support for new language: mojo

Mojo is a relatively new (and, imo, very exciting) language that offers a repl experience through the terminal. I would really love to be able to use this in vim-jukit
https://www.modular.com/mojo

Ps. I just realized that this works pretty much out of the box if one has mojo installed and sets
:let g:jukit_shell_cmd='mojo'
However, there is a slight quirk (from mojo's side really) that for a block of code to be run two sequential newline characters need to be sent to the repl. So, if a cell does not have a blank line at the end then the execution hangs until a blank line is sent to the repl.


Logging WebNN delegate capability info

@huningxin, PTAL, thanks!
For partition info, as which is controlled in TFLite main module, we couldn't get the info from WebNN delegate.


Create allegheny.txt

Add listing for Allegheny College in Meadville, Pennsylvania.
https://allegheny.edu/
Computer Science Department: https://allegheny.edu/academics/programs/computer-science/

@krishatcher Thank you for your patience while waiting for a review and processing your request. Pull request merged. Please start applying for JetBrains educational subscription at https://www.jetbrains.com/shop/eform/students in an hour, to allow the changes to propagate through JetBrains systems.


⚠ Bofrost.be has degraded performance

In 4b769de, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1205 ms

Resolved: Bofrost.be performance has improved in a9dd533.


Document all PSRs

It could be useful to have basic knowledges about already validated PSR.
AFAIK, Symfony follows all validated PSRS and the PSR 11 (that will be accepted or is accepted?)
http://www.php-fig.org/psr/
ping @scaule if you want to contribute ? :)

Yes, I'm working on PSR-3 and 4 atm ;)

Thank you @scaule, happy to have new contributions soon ^^


Is it ok to add a dependency?

First, thanks for the great tool. It really helped me a lot.
I'm now building an app which will soon go public in Korea. And in Korea, the Naver Map(ios,android) is the most popular among map applications. So I'm trying to add linking logic to this library. But this Naver Map wants to specify appname of the caller app ( applicationId in android, bundle identifier in ios ). I think it's possible to pass that information via react-native-device-info.
Is it ok to add dependency to this? or could you suggest me the other way to provide that infos to Naver Map?

or is it ok to add showLocation options specific to naver map?

Hi! I think adding a dependency with native code is not really a great idea just to support one app, so I'd rather add a separate key to the showLocation options

thanks for the response. I've done it and sent pr here(https://github.com/flexible-agency/react-native-map-link/pull/151#issue-489686755)


[BUG] VirtualRef not setting justOne

Information

Version: 6.34.3
Packages: mongoose

The schema not reflects the justOne argument setted on VirtualRef when using VirtualRefs, so I can't show more than one reference like a list
Example
Not works:
  @VirtualRef({
    type: Student,
    foreignField: "uuid",
    localField: "studentUuids",
  })
  students?: VirtualRefs<Student>;

Works:
  @VirtualRef({
    type: Student,
    foreignField: "uuid",
    localField: "studentUuids",
  })
  students?: VirtualRef<Student>[];

Acceptance criteria

[ ] justOne needs to be reflected at schema when use VirtualRefs

Hello @LFSousa
The justOne option seems to be mapped:
https://github.com/TypedProject/tsed/blob/production/packages/mongoose/src/decorators/virtualRef.ts
but I think the problem is here:
https://github.com/TypedProject/tsed/blob/production/packages/mongoose/src/utils/createSchema.ts#L116
I don’t know why is written as it ^^. Can you just edit the js in node_module and remove this line. Tell me if it works ;) then I’ll create a PR.
see you
Romain

It works perfectly! Just remove the line.

Ok great I’ll fix that ASAP

:tada: This issue has been resolved in version 6.35.0 :tada:
The release is available on:

v6.35.0
GitHub release

Your semantic-release bot :package::rocket:


Explain 48k vs 128k for --ay in --help

#37
Added explanation in --help that AY is disabled by default for 48k instead of being in "mono" mode.

Thanks!


Mono files play back an octave up

Thanks for your work on the sequencer - it's proving super useful for a current project.
In my testing, mono .wav files are playing back an octave up (or twice as fast).

Hmm, I've never tested this against mono audio to be honest. I will try to look into it, but can't promise a date. My other projects are quite busy right now.

There is a chance that this might be caused by https://github.com/Nidre/Unity-Audio-Sequencer/issues/2 because if you have only changed the line 629, bpm and some other calculations are still based on signatureLo variable.
I will still make some tests with some mono files tho, I am just writing this so until I have time to take a look, it may help you to move forward.
In short terms could you please try changing the line 629 back to its original state and let me know if that solves the problem.
Thank you for your time.

I've tried it with the original code, but the behavior is the same - mono files play an octave up. Hopefully I can fiddle around with the code myself for a solution, but in the meantime the workaround is to use stereo samples.
I'd ideally also like to change the behavior where samples get truncated to the length of the time signature - ie. with signatureLo set to 16, a sample will only sound for the duration of a sixteenth whether the step after it is active or not. I'd like the sample to ring out unless it gets cut off by a retrigger.
But yeah, finding time... :^)

@moshang I will be able to push a fix today. Stay tuned.

@moshang
Should be working properly on version 0.2.
I have tested with the Sample scene by using Force Mono in Unity.
Let me know if that fixes your problem.

Great, that fixed it - thanks a lot!


feat: Implement test Runner workflow for Windows

I have written a git action workflow code for Windows testing, but it still has errors in certain parts.
#105

Replaced with 146 #PR.


Gradle cleans local build cache at inopportune times and sometimes freezes during

Current Behavior
I've had a few users report that Gradle sometimes hangs after a build, and that the console reports that it is "busy" cleaning the local build cache:

In the example above, they waited over an hour and cleanup did not complete. Also in this example the stall happened during IDE sync, and prevented Android Studio from syncing.
Expected Behavior

local build cache cleanup should be fast, and not take several minutes (or over an hour)
cache cleanup should be skipped for IDE sync, I don't think build cache plays much of a role in that process so I think it could be skipped to speed things up.

Context (optional)
We have tried working around this by setting the removeUnusedEntriesAfterDays value to a really high number, which technically works, but is not really a solution.
Steps to Reproduce
We are unable to reproduce the freezes consistently. Since it has never happened to me directly, I unfortunately don't have any thread dumps to share.
Gradle version
8.5
Build scan URL (optional)
No response
Your Environment (optional)
macOS (M1 max), JDK 17

The cleanup should happen quickly (under a few seconds tops), so I don't think there's anything to do about sync specifically. The hanging sounds like a bug, though. I wonder if it's caused by two daemons deciding to both clean up the local cache. 🤔

In my case, the clean-up is never completely stalled, it’s just very very slow. I don’t know if it’s normal or not for a build-cache-1 of about 6.5G and 40k files. I'll try to see if there's multiple daemons running next time this happens.

Once this issue is fixed, you'll be able to use an init-script to force cache-cleanup at the time of your choosing.
There's a PR in review so we hope to this fix in Gradle 8.8.
That said, the cleanup shouldn't be horrendously slow. I wonder if there is competition between Android Studio and Gradle during the cache cleanup.


Running more tests in parallel for faster presubmit outcome

Now the tests finish < 2 hours for 2.1-deb11 which were earlier timing out in 4 hours, so atleast 2x faster.
kubectl run doesn't allow specifying CPU/Memory requirements in single line. The test cluster uses Autopilot so resources will be used only when tests are run.

/gcbrun

Checked that some integ tests are failing due to unrelated reason which is being investigated separately by @prince-cs. None of them are due to quota issues which could have been caused with this change. Merging.


Eliminate 'NodeID.init(rawValue:)'

See #288

This PR removes all uses of NodeID.init(rawValue) except the one that creates a new ID when a node is inserted and the one that implements NodeID.init(_:).
This change may have introduced marginal performance regressions in places where the code can assume the type of type-erased ID from AST invariants. Profiling will tell us if we need to handle these cases manually when we'll care about performance.


Username is lowercase

Thank you for reporting an issue or suggesting an enhancement. We appreciate your feedback - to help the team to understand your needs, please complete the below template to ensure we have the necessary details to assist you. Thanks!
Category
[ ] Bug
[ ] Enhancement
Problem Area
[ ] Page Transformation: Error during the setup/use of the Page Transformation UI solution (did you check our troubleshooting guide?)
[ ] Page Transformation: Error during the use of page transformation from PnP PowerShell
[ ] Page Transformation: Error during the use of page transformation from .Net
[X] Page Transformation: Page is not looking correct after transformation
[ ] Modernization Scanner: something went wrong...
Expected or Desired Behavior
Casing is maintained during transform
Observed Behavior

Steps to Reproduce
Transform a page with the custom header and the mapping includes ToAuthors({PublishingContact})
Discovered fault in Line 92 PublishingFunctionProcessor.cs
Logged as need more test cases to validate impact to remove the ToLower()

Nice catch @pkbullock , there was no reason for applying a ToLower() in that place. Fixed in https://github.com/SharePoint/sp-dev-modernization/commit/8ee3dce996bfedca7bc5b96b6e149db9af42503a.


Add tflite gpu version

Hi, I really like this project, so I just add a gpu-version for tflite.
I have tried it on my Google pixel 1.
CPU: > 160 ms
GPU: 100 ms
Cheers

This is the first time I pull a request. Should I make a new branch?

Thanks for you contribution ! But you need to create a new branch. 😁

Hi, why close PR ?

I created another one. I tried to create a new branch 😁


journal entries are not carried over when there are file headers

Describe the bug
A clear and concise description of what the bug is.
expect TODO items to be carried over when creating new entry (new date)
If I remove the file headers from the previous date ,
then carry over works,
The following is the contents on top of the journal file

#+STARTUP: showall showstars indent
#+PROPERTY: notify journal
#+FILETAGS: journal

i tried to debug a bit,
doom emacs pinned version had
`
  (when (and (< 1 (length (split-string file-header "\n" :omit-nulls t)))

`
current version has
      (when (and (< 1 (length (split-string file-header "\n" :omit-nulls)))
after fixing this, still having issues..
To Reproduce
Steps to reproduce the behavior:
execute org-journal-new-entry
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. iOS]
Emacs Version [e.g. 25]

Your Emacs Configuration
The part relevant to org-journal.

Do you use Doom Emacs? I use Doom Emacs and have encountered this issue after a recent Doom Emacs majour update

yes, I also did doom update recently.
I tried to debug,
org journal seems to assume a heading (with *) is the first item in a file,
and #+ fileheader seems to break that assumption
previous org version might have been grateful on error handling,
that's my guess

Are you experiencing this issues > Describe the bug

A clear and concise description of what the bug is.
expect TODO items to be carried over when creating new entry (new date)
If I remove the file headers from the previous date ,
then carry over works,
The following is the contents on top of the journal file

#+STARTUP: showall showstars indent

#+PROPERTY: notify journal

#+FILETAGS: journal

i tried to debug a bit,
doom emacs pinned version had
`
  (when (and (< 1 (length (split-string file-header "\n" :omit-nulls t)))

`
current version has
`
  (when (and (< 1 (length (split-string file-header "\n" :omit-nulls)))

`
after fixing this, still having issues..
To Reproduce
Steps to reproduce the behavior:
execute org-journal-new-entry
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. iOS]

Emacs Version [e.g. 25]

Your Emacs Configuration
The part relevant to org-journal.


Added methods head, take, tail, takeLast, prepend and append …

to mirror org.tensorflow.tools.Shape

Hey @JimClarke5, it looks like the build failed after merging your PR, can you please look at it? I won’t have access to my computer for some days: https://github.com/tensorflow/java/runs/837060226?check_suite_focus=true


Route Errors

Route [Admin/menus.index] not defined. Route [Admin/menus.index] not defined.

Found the problem in
@include('$ROUTES_AS_PREFIX$$MODEL_NAME_PLURAL_CAMEL$.fields')

$ROUTES_AS_PREFIX$ outputs / instead of .
looks like you have $ROUTES_PREFIX$ that outputs the . instead of / which is probably what you meant to use.

In new version, we have removed $ROUTES_AS_PREFIX$ dynamic param, instead of we have added $VIEW_PREFIX$.
https://github.com/InfyOmLabs/laravel-generator/blob/develop/src/Common/GeneratorConfig.php#L196

Please I'm not able to update to the latest version in order to use VIEW PREFIX. Are you going to add a new tag soon or update the package?

@ayndev its not merged


{{renderer date-between-today}} does not work when installed from Logseq 0.10.6 Marketplace

I installed the plugin today.
I grabbed all the tests dates from https://github.com/Cologler/logseq-date-between-typescript/blob/main/src/index.test.ts
1997-01-01 1997-1-1 1997/01/01 1997/1/1 2011/1/8 2011/12/8 2022/1/1
2022/2/10 2023/1/1 2023/1/10 2023/1/11 2023/1/13 2023/2/1 2023/2/5
2023/2/6 2023/2/7 2023/2/8 2023/2/9

I pasted the examples into a new page. Below page is for demonstration not the actual values pasted, reason backticks.

I actually pasted blocks of the form:
2024/10/1 {{renderer date-between-today}}
2024/10/1 {{renderer(date-between-today)}}
2024/10/1 {{query (renderer(date-between-today))}}
2024/10/1 {{query (renderer date-between-today)}}

Nothing is rendered.

I expected In 7 months to be rendered.

Can you try the slash command like the usage described?

Can you try the slash command like the usage described?

Thank you for your quick response. I tried the slash command first ;)
I am a Ruby on Rails backend dev. I have no experience with ts and little with js and non with clojurescript. But I worked as a lisp programmer for several years. If you have the energy to help me get up to speed I will be able to fix some of the Logseq bugs, I expect.

I am not at home now and there are no computers nearby me. I will go home  three days later.
If you want to debug yourself, you can try this:

Clone repo
Execute pnpm install on your shell to install dependencies
Execute pnpm run build to bundle the plugin
Enable dev mode in logseq
Load the cloned repo as plugin folder (you may need to uninstall the one from the marketplace)
Edit something, re-bundle, and see if it works, and then try again...

From https://discuss.logseq.com/t/what-should-i-do-if-i-can-not-tell-if-the-bug-is-in-the-plugin-or-logseq/24999
@Cologler @ChasManRors
It worked.  If I paste only 2024/10/1 {{renderer date-between-today}} alone in one line, it works.

Thank you @YU000jp  and  @Cologler
But, I tried it again with the example you provided.

When I hit return I still get nothing.

I was wondering if It had anything to do with themes so I used Logseq Default Light Theme
Does this imply there is something about my environment that is causing this issue, I am on an old Intel MacBook Pro? AFAIK I have not done any configurations outside of using Marketplace to add plugins.
Can you point me to a doc that will tell me how to start over, preferably without losing my graphs. I'll have to recall how to git push to my github remote, but I haven't done that in a year and I seem to recall there is some hidden github redirection file used in logseq that caused me an issue in the past.

@ChasManRors What is your preferred date format?

It's very considerate of you to ask what my preferred date format is. But thinking about the general problem I would think it's important to take the date format from the configuration file in Logseq.

@Cologler That is great for ppl who have it working! I still don't. :(
BEFORE insertion of call to date-between

AUTO COMPLETES proper insertion of invocation

AFTER Hitting return, hence calling your methods

@ChasManRors open the developer console on logseq (with CTRL+SHIFT+I), search date-between-today for debug output messages and see what is happening.

Thank you very much for making this nice utility and maintaining it!
0.0.6 fixed for the new format

But the documented format still has an error

Stack trace seen here: Note r is undefined in the below trace

@ChasManRors The plugin uses your preferred date format to parse the date, so you should not use 2023/2/8.

But the documented format still has an error

Your stack trace shows the error is thrown by logseq-cuvee:
https://github.com/QWxleA/logseq-cuvee/blob/86de87f01db45bd39c5e35a82b882add94508b3e/index.ts#L195-L196


_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

_ master Compile Tests _

+1 :green_heart:
mvninstall
4m 51s
master passed

+1 :green_heart:
compile
0m 48s
master passed

+1 :green_heart:
checkstyle
0m 18s
master passed

+1 :green_heart:
spotless
1m  8s
branch has no errors when running spotless:check.

+1 :green_heart:
spotbugs
0m 49s
master passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
4m 20s
the patch passed

+1 :green_heart:
compile
0m 40s
the patch passed

+1 :green_heart:
javac
0m 40s
the patch passed

+1 :green_heart:
checkstyle
0m 16s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
hadoopcheck
7m  1s
Patch does not cause any errors with Hadoop 3.3.6.

+1 :green_heart:
spotless
1m  7s
patch has no errors when running spotless:check.

+1 :green_heart:
spotbugs
1m  0s
the patch passed

_ Other Tests _

+1 :green_heart:
asflicense
0m 18s
The patch does not generate ASF License warnings.

32m 24s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5951/3/artifact/yetus-general-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/5951

Optional Tests
dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile

uname
Linux c543108ac5d6 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / c4a7606479

Default Java
Eclipse Adoptium-11.0.17+8

Max. process+thread count
76 (vs. ulimit of 30000)

modules
C: hbase-rest U: hbase-rest

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5951/3/console

versions
git=2.34.1 maven=3.8.6 spotbugs=4.7.3

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.


Add frame_invariants.pyramid_level tests

Also add missing comments to the output_frameno tests since I now understand what's going on there.
The scene change tests are once again commented out because I don't believe that part of the code is currently working correctly.

Coverage increased (+0.3%) to 80.933% when pulling 44ff9834614be50aeac7605a8437f862abf1b3f8 on YaLTeR:pyramid-level-tests into a9b6f4da9c4ba7204a361b7c89d93c795edaa0c1 on xiph:master.


crash when using uv_fs_sendfile and uv_fs_copyfile on ios device

Crashing with SIGSYS on sendfile
System: Darwin
Version: Darwin Kernel Version 20.2.0: Fri Nov 13 01:00:11 PST 2020; root:xnu-7195.62.1~4/RELEASE_ARM64_S8000
Machine: iPhone8,1

Does Darwin even have the copy_file_range() syscall?


Update CHANGEME.md 133 bottles

Tip: Next time, assign someone as a reviewer & recklessly merge the PR for the YOLO badge. If you can do it in 5 minutes, you get a bonus Quickdraw badge. 😉


CI didn't run on main branch after merging poppler 23.10

Comment:
I could be totally wrong, but I think a main branch CI build never ran after merging 23.10
https://dev.azure.com/conda-forge/feedstock-builds/_build?definitionId=799 shows nothing
https://anaconda.org/conda-forge/poppler/files shows no builds
conda-forge/gdal-feedstock#828 found no artifacts available

Sometimes, this means the token needs to be reset at https://github.com/conda-forge/admin-requests.  I don't see any CI so it's hard to know.  Maybe we can push an empty commit and see if that does the trick this time.

Let's keep an eye on https://github.com/conda-forge/poppler-feedstock/runs/17653037229 and see if that does the trick.

thanks @xylar, looks to be working as I see an artifact on anaconda.org now.

CI has been glitching far too often lately.


Integration token server supporting oauth

Updates the test token server to support oauth2.
Tracking specification changes in #1418

Current coverage is 52.81%

Merging #1465 into master will decrease coverage by -4.33% as of 786c83e

@@            master   #1465   diff @@
======================================
  Files          124     123     -1
  Stmts        12045   11441   -604
  Branches       832     733    -99
  Methods          0       0
======================================
- Hit           6883    6043   -840
+ Partial        832     733    -99
- Missed        4330    4665   +335

Review entire Coverage Diff as of 786c83e

Uncovered Suggestions

+0.28% via ...ge/driver/gcs/gcs.go#182...213
+0.25% via ...rage/driver/s3/s3.go#168...195
+0.25% via ...rage/driver/s3/s3.go#115...142
See 7 more...

Powered by Codecov. Updated on successful CI builds.

LGTM


[ko] Translate /docs/concepts/security/pod-security-standards into Korean

This is a Feature Request
What would you like to be added
Translate "/docs/concepts/security/pod-security-standards" into Korean.
Why is this needed
Not translated into Korean yet.
Comments
original entry: https://kubernetes.io/docs/concepts/security/pod-security-standards/
/language ko
/assign

@rollony 감사합니다!
/triage accepted


Feature: Pre-select item index in Select Widget

It would be really nice to be able to provide an index to the item in a list that I would like to be selected by default. Similar to how the Bucket allows a list of indices for pre-selection. I have the user select a single option, but in order for the one I want as default to be auto-selected by just hitting enter, I have to do specialized sorting to get the option to the top of the list.

Hello! You can already do this by passing index = ... to any BaseList widget to pre-place the cursor on an item:
import survey
values = tuple(map(str, range(10)))
survey.routines.select(values = options, index = 4)
survey.routines.basket(values = options, index = 4)

Both of the above pre-place the cursor on the 5th element.
Feel free to close this if it satisfies your inquiry 😊

Oh excellent, it wasn't in the docs or the code doc-comments so I didn't think it was possible.
Maybe this ticket can instead be a request to update the docs for select with the available parameters?

Glad I could help!
The docs for the select routine mention that it uses the Select widget and that all "other widget and start() arguments are valid". The widget inherits the arguments of its BaseList parent (unless otherwise specified), including index.
I understand that chasing down arguments like this is not exactly ideal, but the debt of having to change the same piece of documentation in more than one place would be unsustainable for me and could quickly lead to inconsistencies.
If this resolves your issue, feel free to close!

ok, I'm unfamiliar with this style of auto-documentation. It's good to know that I need to look through the inheritance tree to determine what all of the allowable arguments are.


[ISSUE #4072] fix plugin update bug by modifying config field setter

FIX
Problem
When updating plugin corresponding to (Menu) BasicConfig > Plugin page, config field is updated BLANK, not null. The config data is saved BLANK in database and it makes difference from initial setting. In addition, this causes JSON parsing errors when return to front-side.

@gngsn  thanks for you contributor，But CI has a error about  shenyu checkstyle, you need modify it ：

Error:  src/main/java/org/apache/shenyu/admin/model/dto/PluginDTO.java:[122,9] (whitespace) WhitespaceAfter: 'if' is not followed by whitespace.

Codecov Report

Merging #4146 (e0ed913) into master (acc81ff) will decrease coverage by 0.33%.
The diff coverage is 0.00%.

@@             Coverage Diff              @@
##             master    #4146      +/-   ##
============================================
- Coverage     70.21%   69.88%   -0.34%
+ Complexity     6998     6958      -40
============================================
  Files           953      953
  Lines         26235    26228       -7
  Branches       2349     2346       -3
============================================
- Hits          18422    18329      -93
- Misses         6387     6467      +80
- Partials       1426     1432       +6

Impacted Files
Coverage Δ

...a/org/apache/shenyu/admin/model/dto/PluginDTO.java
60.60% <0.00%> (-7.14%)
:arrow_down:

...controller/ShenyuClientHttpRegistryController.java
77.77% <0.00%> (-22.23%)
:arrow_down:

...che/shenyu/sync/data/http/HttpSyncDataService.java
70.40% <0.00%> (-19.39%)
:arrow_down:

...ava/org/apache/shenyu/admin/utils/SessionUtil.java
78.94% <0.00%> (-15.79%)
:arrow_down:

...yu/sync/data/http/refresh/AbstractDataRefresh.java
68.96% <0.00%> (-13.80%)
:arrow_down:

...ache/shenyu/plugin/grpc/cache/GrpcClientCache.java
87.50% <0.00%> (-12.50%)
:arrow_down:

...ruptor/RegisterClientServerDisruptorPublisher.java
52.94% <0.00%> (-11.77%)
:arrow_down:

...a/org/apache/shenyu/common/utils/VersionUtils.java
35.71% <0.00%> (-10.72%)
:arrow_down:

...henyu/plugin/grpc/resolver/ShenyuNameResolver.java
54.25% <0.00%> (-8.52%)
:arrow_down:

.../apache/shenyu/admin/model/dto/BatchCommonDTO.java
50.00% <0.00%> (-7.15%)
:arrow_down:

... and 42 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Test KubeOne Release 1.9 - Cluster Provisioning (External) on Equinix Metal

This is a testing ticket for the upcoming KubeOne release.
This issue has been automatically generated.
### Ubuntu
- [x] `/test pull-kubeone-e2e-equinixmetal-default-install-containerd-external-v1.31`

Tested in #3452, passing. ✅
/close


[ODS-5189] Record Ownership Phase 2 - Structure script to create new tables

@tbmeador-dlp  I create new feature branch feature-RecordOwnershipPhase2 https://github.com/Ed-Fi-Alliance-OSS/Ed-Fi-ODS/pull/401/files


Update text from ADC theory of operation for adc_chn_value_intr registers

From https://github.com/lowRISC/opentitan/blob/dc05d4ce3fc2df1a68241471459ee2459ba67bb8/hw/ip/adc_ctrl/doc/theory_of_operation.md?plain=1#L104

The current sample values are latched into adc_chn_val[0].adc_chn_value_intr and adc_chn_val[1].adc_chn_value_intr.

If a series of interrupts and matches are seen, these registers only record the value of the last debounced hit.

and

"However, the adc_chn_val[0].adc_chn_value_intr and adc_chn_val[1].adc_chn_value_intr registers record the value at the time the interrupt was first raised and thus reflect the filter state from that point"

Seem to conflict. I would the first text blurb to be "these registers only record the value of the first debounced hit"
Or am I misunderstanding how this works?

I looked at the RTL and your understanding is correct.
The text is corrected here: #21929


[Bug]: Xcode Indexing breaks when Copilot for Xcode extension is activated.

Before Reporting

[X] I have checked FAQ, and there is no solution to my issue
[X] I have searched the existing issues, and there is no existing issue for my issue

What happened?
Xcode package indexing freezes
How to reproduce the bug.
git clone of repository
Delete Derived data of previous builds
Fire up Xcode
Package indexing begins.  Freezes/hangs with a 2 in the status window.
Relevant log output
No response
macOS version
Sonoma 14.4.1
Xcode version
15.3
Copilot for Xcode version
0.33

Does deleting Copilot for Xcode.app solves the issue for you? If so, does disabling enhanced workspace from the advanced settings solves the issue? The app does access data in the derived data but it shouldn't interfere the indexing process.
Please also provide a spindump of Xcode when it freezes.

Deleting and reinstalling appears to have fixed the issue.


Create "Moderator" level User and corresponding permissions

Currently on PyPI, we have two types of users:

regular users
administrators (for which User.is_superuser is true)
(There is also a field User.is_staff but I believe it's unused).

It'd be great to add an intermediate level of user, "Moderator", which has the ability to do the following:

view all the existing /admin views (but read-only)
set upload limits
add classifiers
etc

The "Moderator" user should not be able to:

change emails (including verified or active status)
delete projects
nuke users

(cc @99)

Agreed. I think the steps to address this, roughly broken up by PRs, would be:

Add a new field/migration to the User model, as well as corresponding UI in /admin for administrators to toggle this flag for users;
Add ACLs for various /admin POST endpoints, as well as conditionals in the HTML templates to hide actions that are not enabled for moderators, and to make fields not appear editable;
Add back these actions as "request/recommendation" actions that get raised to administrators. This could piggyback on the system we use for #3896.

Yea, that seems like a great path forward.

I am going to start working on this. I have the first part complete (add new field and migration as well as adding is_moderator as settable in admin UIs) https://github.com/pypa/warehouse/pull/5249/files

@di @dstufft I am moving on to Add ACLs for various /admin POST endpoints, as well as conditionals in the HTML templates to hide actions that are not enabled for moderators, and to make fields not appear editable;
Do you have a starting list of activities you would like to allow moderators to do? For instance, should moderators be able to mark other users as having a verified email?

@crwilcox See the issue body:

view all the existing /admin views (but read-only)
set upload limits
add classifiers

Hey, we have moderators now! Closing this.


conflict with bart v4.03

I know this was not tested with bart 4.0.3 but:
https://github.com/mrirecon/bart/issues/132
I'll also be seeing if it will work with ochestra-sdk-1.7-1.
Curt

with the exception of this, ox-bart should work with the latest bart. I have not yet tested orchestra 1.7. Let me know if you run into issues!

Still have not checked the "noreturn" fix, but I updated support for Ox 1.7 (commit # a748c95)


re-run (--rerunfailed) not working with multiple suites and execution tags

Assume the following:

test_suite_a.robot (with 2 TC's with "runme" tag)
test_suite_b.robot (without TC's with "runme" tag)
test_suite_c.robot (with 1 TC with "runme" tag and 1 TC with "runme" & "donotrerun" tags)

run tests with pybot --output 1st_run.xml -i runme ... test_suite*.robot
some tests in test_suite_a.robot and test_suite_c.robot fail
re-run failed with pybot --output 2nd_run.xml -R 1st_run.xml -i runme -e donotrerun ... test_suite*.robot

The above causes rerun to fail (nothing gets executed) with
"[ ERROR ] Suite 'test_suite_a & test_suite_b & test_suite_c' contains no tests with tags 'runme', without tags 'donotrerun' and named 'test_suite_a & test_suite_b.myTestName'...
Try --help for usage information."
Earlier I had all tests in one test suite (one file) and the above was working, I started getting the errors when I split the suite into several files (because that one file got really big).
Looks like that the "-R" argument creates a new top-level suite with all matching file-names (suites a, b and c) without applying the "-i" and "-e" arguments and the execution fails.

The problem is that the top level test suite name is different on different runs. The reason it is different is that when you run multiple files like robot t1.robot t2.robot the top level suite automatically gets name from the child suites like T1 & T2. When you are running tests again, some of the files you execute have no matching tests, those suites are not executed, and as a result the top level suite has a different name.
An easy way to avoid that is giving a custom name to the top level suite like robot --name Example t1.robot t2.robot. Alternatively you can put these files into a directory and run it like robot dir.
We could also consider changing re-run failed functionality to not to check do top level suites match. I'm not sure is that a good idea, though, because you wouldn't then anymore get errors if you would try to re-run totally wrong tests.

Meanwhile I tried this with the -N argument and it works indeed.
What was the most confusing me was the fact that executing tests with identical "filters" (i.e. -i, -e and *.robot) produced errors.
Agree that re-run failed should not ignore the top-level suite match - but before matching the top-level suite name when re-running could/should apply the "filters" e.g. with the above example suites:

run tests with pybot --output 1st_run.xml -i runme ... test_suite*.robot
some tests in test_suite_a.robot and test_suite_c.robot fail
re-run failed with
3.1) pybot --output 2nd_run.xml -R 1st_run.xml -i runme -e donotrerun ... test_suite*.robot should not fail because -i runme -e donotrerun match only with suites a & c (=top level suite is test_suite_a & test_suite_c)
3.2) pybot --output 2nd_run.xml -R 1st_run.xml -e donotrerun ... test_suite*.robot should fail because -e donotrerun matches all suites (=top level suite is test_suite_a & test_suite_b & test_suite_c)

Detecting such special cases is not easy. Having tests in a directory or using --name is so easy that I doubt enhancing the logic is worth the effort. If you disagree, please look at how it could be implemented and provide a pull request if you can make it work.

No activity in a month. Closing.


Pointless Password Fields

In two areas, password are shown/confirmed while being hidden by "*". In these cases, I believe the field should be removed altogether.
Admin/Worker Panel > My Clients > Sign Up Client/Worker

Admin/Worder Panel > My Clients > Search > Profile

I think that'd be a great idea. When I wrote the issue, I just imagined the quickest fix.


Enhancement Request: Ability for More Styling (Marker Corners and Dots, Dots)

Great project!
I was wondering if more options could be added for corner square styling:

Different weights for the stroke lines for the Marker Borders
Rounded corners for the Marker Centers
Option for smaller dot size so they don't touch

Current

Requested

Thanks for the consideration!

I agree, it would be very helpful to get more options for the corner dots. An option for each border radios would be helpful as well. So that the user can decide which corner is rounded and which not:


Build pipelining

Ref sbt/zinc#744

This implements ThisBuild / usePipelining, which configures incremental subproject pipelining available from Zinc 1.4.0.
The basic idea is to start subproject compilation as soon as pickle JARs (early output) becomes available. This is in part enabled by Scala compiler's new flags -Ypickle-java and -Ypickle-write.
The other part of magic is the use of Def.promise:
earlyOutputPing := Def.promise[Boolean]

This notifies compileEarly task, which to the rest of the tasks would look like a normal task but in fact it is promise-blocked. In other words, without calling full compile task together, compileEarly will never return, forever waiting for the earlyOutputPing.

Rebasing on top of develop since it became off sync. I'll merge this once it passes the tests.

Would it be possible to move a lot of the changes in Defaults.scala into a separate file? It already takes forever to compile Defaults.scala.

Would it be possible to move a lot of the changes in Defaults.scala into a separate file? It already takes forever to format and compile Defaults.scala. It doesn't necessarily have to be in this PR, but I feel like all of the classpath and compile related settings should be moved into different files.

I actually did try to do that by creating main/src/main/scala/sbt/internal/ClasspathImpl.scala and moving the not-so-relevant implementation details in there. The net change should be negative for Defaults.scala in this PR.


Backport Unify snapshotters and separate scratch and image layers change

Refactor windows snapshotters

Both LCOW & WCOW snapshotters have many functions that are identical and some other
functions have common code. This change refactors those snapshotters to remove duplicate
code.
This refactor will also help when adding other features like storing scratch snapshots in a
different location.

Support to override scratch snapshot location

Some containers do heavy IO to the scratch, in case of LCOW/WCOW the scratch itself is a
VHD that is stored on the same disk as that of other snapshots (including the image
layers). If containerd is pulling multiple images and one or more containers are doing
heavy IO to the scratch at the same time, that causes disk contention and related
issues. This change allows the user to set a config (either in containerd.toml or in the
container configuration) that specifies another directory inside which the scratch of all
containers (or that specific container) should be stored.
Signed-off-by: Amit Barve<EMAIL_ADDRESS>(cherry picked from commit 333a72bfcd4831549d074d824164d45ef9b4d0db)
Signed-off-by: Amit Barve<EMAIL_ADDRESS>

@dcantah , @anmaxvl & @helsaawy Could you approve this backport to fork/release/1.4 also? Thanks.


Cannot run certain nunit3 parameterized tests using "Run Test" and "Debug Test" codelens links

Issue Description
Parameterized NUnit generic tests won't run using CodeLens "Run Test" "Debug Test" hotlink, but the same tests are discovered and run correctly with "dotnet test"  An "Error processing launch options at field: program" popup is shown.
Tried this in linux as well, same result.
Steps to Reproduce

Clone repo at https://github.com/mgayeski/repro
Run dotnet test, see four tests discovered and run
Open project in vscode, try to run or debug all tests from each class using "Run All Tests"

Expected Behavior
Able to run and debug all tests using CodeLens hotlinks
Actual Behavior
Only tests from the UntypedTestFixture class can be run
Logs
OmniSharp log
Starting OmniSharp server at 4/13/2020, 4:23:51 PM
    Target: c:\Users\michael.gayeski\testdemo

OmniSharp server started.
    Path: C:\Users\michael.gayeski\.vscode\extensions\ms-dotnettools.csharp-1.21.16\.omnisharp\1.34.15\OmniSharp.exe
    PID: 37084

[info]: OmniSharp.Stdio.Host
        Starting OmniSharp on Windows 6.2.9200.0 (x64)
[info]: OmniSharp.Services.DotNetCliService
        DotNetPath set to dotnet
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        Located 3 MSBuild instance(s)
            1: Visual Studio Professional 2017 15.9.28307.812 - "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\15.0\Bin"
            2: Visual Studio Professional 2019 16.4.29806.167 - "C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Current\Bin"
            3: StandAlone 16.4 - "C:\Users\michael.gayeski\.vscode\extensions\ms-dotnettools.csharp-1.21.16\.omnisharp\1.34.15\.msbuild\Current\Bin"
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        Registered MSBuild instance: Visual Studio Professional 2019 16.4.29806.167 - "C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Current\Bin"
[info]: OmniSharp.Cake.CakeProjectSystem
        Detecting Cake files in 'c:\Users\michael.gayeski\testdemo'.
[info]: OmniSharp.Cake.CakeProjectSystem
        Could not find any Cake files
[info]: OmniSharp.MSBuild.ProjectSystem
        No solution files found in 'c:\Users\michael.gayeski\testdemo'
[info]: OmniSharp.MSBuild.ProjectManager
        Queue project update for 'c:\Users\michael.gayeski\testdemo\testdemo.csproj'
[info]: OmniSharp.Script.ScriptProjectSystem
        Detecting CSX files in 'c:\Users\michael.gayeski\testdemo'.
[info]: OmniSharp.Script.ScriptProjectSystem
        Could not find any CSX files
[info]: OmniSharp.WorkspaceInitializer
        Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.CSharpFormattingWorkspaceOptionsProvider, Order: 0
[info]: OmniSharp.MSBuild.ProjectManager
        Loading project: c:\Users\michael.gayeski\testdemo\testdemo.csproj
[info]: OmniSharp.WorkspaceInitializer
        Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.RenameWorkspaceOptionsProvider, Order: 100
[info]: OmniSharp.WorkspaceInitializer
        Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.ImplementTypeWorkspaceOptionsProvider, Order: 110
[info]: OmniSharp.WorkspaceInitializer
        Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.EditorConfigWorkspaceOptionsProvider, Order: 200
[info]: OmniSharp.WorkspaceInitializer
        Configuration finished.
[info]: OmniSharp.Stdio.Host
        Omnisharp server running using Stdio at location 'c:\Users\michael.gayeski\testdemo' on host 44692.
[info]: OmniSharp.MSBuild.ProjectManager
        Successfully loaded project file 'c:\Users\michael.gayeski\testdemo\testdemo.csproj'.
[info]: OmniSharp.MSBuild.ProjectManager
        Adding project 'c:\Users\michael.gayeski\testdemo\testdemo.csproj'
[info]: OmniSharp.MSBuild.ProjectManager
        Update project: testdemo
[info]: OmniSharp.DotNetTest.VSTestManager
        read: {"MessageType":"TestSession.Connected","Payload":null}
[info]: OmniSharp.DotNetTest.VSTestManager
        read: {"MessageType":"ProtocolVersion","Payload":1}
[info]: OmniSharp.DotNetTest.DebugSessionManager
        Debug session started.
[info]: OmniSharp.DotNetTest.DebugSessionManager
        Debug session ended.
[info]: OmniSharp.DotNetTest.VSTestManager
        read: {"MessageType":"TestSession.Connected","Payload":null}
[info]: OmniSharp.DotNetTest.VSTestManager
        read: {"MessageType":"ProtocolVersion","Payload":1}
[info]: OmniSharp.DotNetTest.VSTestManager
        read: {"MessageType":"TestSession.Connected","Payload":null}
[info]: OmniSharp.DotNetTest.VSTestManager
        read: {"MessageType":"ProtocolVersion","Payload":1}
[info]: OmniSharp.DotNetTest.DebugSessionManager
        Debug session started.
[info]: OmniSharp.DotNetTest.DebugSessionManager
        Debug session ended.

C# log
Empty
Debug Log
-> (C) {"command":"initialize","arguments":{"clientID":"vscode","clientName":"Visual Studio Code","adapterID":"coreclr","pathFormat":"path","linesStartAt1":true,"columnsStartAt1":true,"supportsVariableType":true,"supportsVariablePaging":true,"supportsRunInTerminalRequest":true,"locale":"en-us","supportsProgressReporting":true},"type":"request","seq":1}
-> (C) {"command":"launch","arguments":{"logging":{"engineLogging":false},"type":"coreclr","name":".NET Test Launch","request":"launch","debuggerEventsPipeName":"\\\\.\\pipe\\Microsoft.VSCode.CSharpExt.TestDebugEvents-35876","program":null,"args":null,"cwd":"C:\\Users\\michael.gayeski\\testdemo","internalConsoleOptions":"openOnSessionStart","__sessionId":"4060b49f-bb9f-45c7-8644-732fd7d2c122"},"type":"request","seq":2}
<- (E) {"seq":3,"type":"event","event":"output","body":{"category":"telemetry","output":"VS/Diagnostics/Debugger/vsdbg/CommandFailed","data":{"VS.Diagnostics.Debugger.vsdbg.OSFamily":"Windows","VS.Diagnostics.Debugger.vsdbg.Version":"16.5.20117.1 commit:2a72eb2aadc6bc6a29b05ebcc642a2699007df45","VS.Diagnostics.Debugger.vsdbg.WindowsVersion":"10.0.18362","VS.Diagnostics.Debugger.vsdbg.Command":"Launch","VS.Diagnostics.Debugger.vsdbg.ErrorCode":1006,"VS.Diagnostics.Debugger.vsdbg.AdditionalData":"program","VS.Diagnostics.Debugger.vsdbg.AdapterId":"coreclr"}}}
<- (R) {"seq":4,"type":"response","request_seq":2,"success":false,"command":"launch","message":"Error processing launch options at field: program"}

Environment information
VSCode version: 1.44.0
C# Extension: 1.21.16
Dotnet Information
.NET Core SDK (reflecting any global.json):
 Version:   3.1.101
 Commit:    b377529961
Runtime Environment:
OS Name:     Windows
OS Version:  10.0.18362
OS Platform: Windows
RID:         win10-x64
Base Path:   C:\Program Files\dotnet\sdk\3.1.101\
Host (useful for support):
Version: 3.1.1
Commit:  a1388f194c
.NET Core SDKs installed:
2.1.505 [C:\Program Files\dotnet\sdk]
2.1.508 [C:\Program Files\dotnet\sdk]
2.1.801 [C:\Program Files\dotnet\sdk]
2.2.401 [C:\Program Files\dotnet\sdk]
3.0.100 [C:\Program Files\dotnet\sdk]
3.1.101 [C:\Program Files\dotnet\sdk]
.NET Core runtimes installed:
Microsoft.AspNetCore.All 2.1.12 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.1.15 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.2.6 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.1.12 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.1.15 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.2.6 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.0.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.1.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.12 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.15 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.2.6 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 3.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.1 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 3.0.0 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 3.1.1 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
To install additional .NET Core runtimes or SDKs:
https://aka.ms/dotnet-download

Visual Studio Code Extensions

Extension
Author
Version

azurecli
ms-vscode
0.5.0

c-cpp-project-generator
danielpinto8zz6
1.2.1

code-settings-sync
Shan
3.4.3

code-spell-checker
streetsidesoftware
1.8.0

csharp
ms-dotnettools
1.21.16

docomment
k--kato
0.1.9

dotnet-test-explorer
formulahendry
0.7.1

gitlens
eamodio
10.2.1

Go
ms-vscode
0.13.1

intellij-idea-keybindings
k--kato
0.2.38

markdown-all-in-one
yzhang
2.8.0

markdown-table-prettify
darkriszty
2.4.0

openapi-designer
philosowaffle
0.3.0

plantuml
jebbs
2.13.6

powershell
ms-vscode
2020.3.0

remote-containers
ms-vscode-remote
0.112.0

remote-wsl
ms-vscode-remote
0.44.2

terraform
mauve
1.4.0

vscode-docker
ms-azuretools
1.0.0

vscode-table-formatter
shuworks
1.2.1

I have the same issue like this - asking at this. Is there any update on this issue?

Thanks for the quick fix!


Feature request - Fetch the url from the clipboard.

This would be so much easier to use if the plugins command read the copied link from the clipboard rather than having to paste it into the document first.

Was able to get this working in main.js by making the following changes in your onload() - this.addCommand...
    navigator.clipboard
        .readText()
        .then((clipText) => (this.convertUrlToTitledLink(editor, clipText)));
//       const selectedText = (EditorExtensions.getSelectedText(editor) || "").trim();
//       this.convertUrlToTitledLink(editor, selectedText);

Now no longer need to paste the url into the document first, just copy the answer url, set your cursor position where you want the answer pasted and run the command. Works great!


Improve description of the service registry command

Another feedback:
The help text for “artifacts” could perhaps be better, to indicate that it’s the command used to manipulate data stored in the currently “selected” registry instance.

@smccarthy-ie FYI, you might want to review/update the service registry command description.

@bhardesty Sorry for the invalid ping. I will ping @smccarthy-ie from now on for service registry content.

Closing. Content for registry is stil in the works as we did not pulled any strings into i18n
Once that is done I will exclusively ping @smccarthy-ie for review (currently review will involve reviewing codebase which is not ideal). Issue to watch #904


⚠ Bofrost.fr has degraded performance

In 6d18ea2, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1963 ms

Resolved: Bofrost.fr performance has improved in 5a6f2d6 after 8 minutes.