Update circe-core, circe-generic, ... to 0.14.2

Updates

io.circe:circe-core
io.circe:circe-generic
io.circe:circe-parser
io.circe:circe-testing

from 0.14.1 to 0.14.2.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "io.circe" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequest = { frequency = "@monthly" },
  dependency = { groupId = "io.circe" }
}]

labels: library-update, early-semver-minor, semver-spec-patch, commit-count:1

Codecov Report

Merging #324 (18c69b6) into master (9d4c9f3) will decrease coverage by 0.07%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #324      +/-   ##
==========================================
- Coverage   95.31%   95.23%   -0.08%
==========================================
  Files           6        5       -1
  Lines          64       63       -1
==========================================
- Hits           61       60       -1
  Misses          3        3

Impacted Files
Coverage Δ

...3+/main/scala/io.circe.config/compat/package.scala

Continue to review full report at Codecov.

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

Superseded by #338.


Add Dell OpenManage StorageServices smux OID

Add another OID used by OpenManage as smuxpeer.

Hello @razorsedge could you take a look at this PR please?

@razorsedge Still nothing?

@vide Thank you for your submission. As per the DEVELOP.md file, could you please resubmit from the develop branch?  Otherwise it looks good.


Support for hydra needs to be added

I have a script where I use hydra, which wraps around the main function, trying to create a spawn-context multiprocessing queue.
It works in the native python environment, but it fails after compiling with Nuitka
Nuitka version
$ python -m nuitka --version
2.0.6
Commercial: None
Python: 3.10.13 (main, Sep 11 2023, 13:21:10) [GCC 11.2.0]
Flavor: Anaconda Python
Executable: /home/[...]/miniconda3/envs/nuitka-env/bin/python
OS: Linux
Arch: x86_64
Distribution: Ubuntu (based on Debian) 22.04.2
Version C compiler: /usr/bin/gcc (gcc 11).

How did you install Nuitka and Python
Create conda env with conda create -n nuitka-env python=3.10 libpython-static, then pip install -U nuitka
The specific PyPI names and versions
hydra-core==1.1.2
A Short Example
import multiprocessing as mp
import hydra

@hydra.main()
def main(config):
    context = mp.get_context("spawn")
    q = context.Queue()

if __name__ == '__main__':
    main()

Expected output when run without nuitka
(no action, warnings are due to not supplying options to hydra in order to keep the example concise):
$ python process_queue_test.py
[...]/process_queue_test.py:16: UserWarning:
config_path is not specified in @hydra.main().
See https://hydra.cc/docs/next/upgrades/1.0_to_1.1/changes_to_hydra_main_config_path for more information.
  @hydra.main()

Output with Nuitka
(build succeeds, but execution throws BrokenPipeError)
$ python -m nuitka --run process_queue_test.py
Nuitka-Options: Used command line options: --run process_queue_test.py
Nuitka-Options:WARNING: You did not specify to follow or include anything but main program. Check options and make sure that is intended.
Nuitka: Starting Python compilation with Nuitka '2.1' on Python '3.10' commercial grade 'not installed'.
Nuitka: Completed Python level compilation and optimization.
Nuitka: Generating source code for C backend compiler.
Nuitka: Running data composer tool for optimal constant value handling.
Nuitka: Running C compilation via Scons.
Nuitka-Scons: Backend C compiler: gcc (gcc 11).
Nuitka-Scons: Backend linking program with 10 files (no progress information available for this stage).
Nuitka-Scons:WARNING: You are not using ccache, re-compilation of identical code will be slower than necessary. Use your OS package manager to install it.
Nuitka: Keeping build directory 'process_queue_test.build'.
Nuitka: Successfully created 'process_queue_test.bin'.
Nuitka: Launching 'process_queue_test.bin'.
/home/guillaume/tests/20230307-nuitka-multiprocess/process_queue_test.py:16: UserWarning:
config_path is not specified in @hydra.main().
See https://hydra.cc/docs/next/upgrades/1.0_to_1.1/changes_to_hydra_main_config_path for more information.
  @hydra.main()
Error executing job with overrides: []
An error occurred during Hydra's exception formatting:
AssertionError()
Traceback (most recent call last):
  File "/home/guillaume/miniconda3/envs/nuitka-env/lib/python3.10/site-packages/hydra/_internal/utils.py", line 252, in run_and_report
    assert mdl is not None
AssertionError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "[...]/process_queue_test.py", line 34, in <module>
    main()
  File "/home/guillaume/miniconda3/envs/nuitka-env/lib/python3.10/site-packages/hydra/main.py", line 48, in decorated_main
    _run_hydra(
  File "/home/guillaume/miniconda3/envs/nuitka-env/lib/python3.10/site-packages/hydra/_internal/utils.py", line 377, in _run_hydra
    run_and_report(
  File "/home/guillaume/miniconda3/envs/nuitka-env/lib/python3.10/site-packages/hydra/_internal/utils.py", line 294, in run_and_report
    raise ex
  File "/home/guillaume/miniconda3/envs/nuitka-env/lib/python3.10/site-packages/hydra/_internal/utils.py", line 211, in run_and_report
    return func()
  File "/home/guillaume/miniconda3/envs/nuitka-env/lib/python3.10/site-packages/hydra/_internal/utils.py", line 378, in <lambda>
    lambda: hydra.run(
  File "/home/guillaume/miniconda3/envs/nuitka-env/lib/python3.10/site-packages/hydra/_internal/hydra.py", line 111, in run
    _ = ret.return_value
  File "/home/guillaume/miniconda3/envs/nuitka-env/lib/python3.10/site-packages/hydra/core/utils.py", line 233, in return_value
    raise self._return_value
  File "/home/guillaume/miniconda3/envs/nuitka-env/lib/python3.10/site-packages/hydra/core/utils.py", line 160, in run_job
    ret.return_value = task_function(task_cfg)
  File "/home/guillaume/tests/20230307-nuitka-multiprocess/process_queue_test.py", line 19, in main
    q = context.Queue()
  File "/home/guillaume/miniconda3/envs/nuitka-env/lib/python3.10/multiprocessing/context.py", line 103, in Queue
    return Queue(maxsize, ctx=self.get_context())
  File "/home/guillaume/miniconda3/envs/nuitka-env/lib/python3.10/multiprocessing/queues.py", line 43, in __init__
    self._rlock = ctx.Lock()
  File "/home/guillaume/miniconda3/envs/nuitka-env/lib/python3.10/multiprocessing/context.py", line 68, in Lock
    return Lock(ctx=self.get_context())
  File "/home/guillaume/miniconda3/envs/nuitka-env/lib/python3.10/multiprocessing/synchronize.py", line 162, in __init__
    SemLock.__init__(self, SEMAPHORE, 1, 1, ctx=ctx)
  File "/home/guillaume/miniconda3/envs/nuitka-env/lib/python3.10/multiprocessing/synchronize.py", line 80, in __init__
    register(self._semlock.name, "semaphore")
  File "/home/guillaume/miniconda3/envs/nuitka-env/lib/python3.10/multiprocessing/resource_tracker.py", line 155, in register
    self._send('REGISTER', name, rtype)
  File "/home/guillaume/miniconda3/envs/nuitka-env/lib/python3.10/multiprocessing/resource_tracker.py", line 168, in _send
    nbytes = os.write(self._fd, msg)
BrokenPipeError: [Errno 32] Broken pipe

Additionally, here are 2 sample codes that compile and run without errors:
Using "fork" instead of "spawn"
(Unfortunately, due to other parts of my code base, I have to use "spawn" in my app)
import multiprocessing as mp
import hydra

@hydra.main()
def main(config):
    context = mp.get_context("fork")
    q = context.Queue()

if __name__ == '__main__':
    main()

Without Hydra
(my app heavily relies on Hydra for configuration)
import multiprocessing as mp

def main():
    context = mp.get_context("spawn")
    q = context.Queue()

if __name__ == '__main__':
    main()

With the hydra I happened to have installed (hydra-core==1.0.7), I got this:
Traceback (most recent call last):
  File "/home/hayen/repos/Py2C/Mini.dist/hydra/_internal/utils.py", line 198, in run_and_report
  File "/home/hayen/repos/Py2C/Mini.dist/hydra/_internal/utils.py", line 320, in <lambda>
  File "/home/hayen/repos/Py2C/Mini.dist/hydra/_internal/hydra.py", line 73, in create_main_hydra2
  File "/home/hayen/repos/Py2C/Mini.dist/hydra/_internal/config_loader_impl.py", line 79, in __init__
  File "/home/hayen/repos/Py2C/Mini.dist/hydra/_internal/config_repository.py", line 22, in __init__
  File "/home/hayen/repos/Py2C/Mini.dist/hydra/_internal/sources_registry.py", line 29, in resolve
ValueError: No config source registered for schema pkg, supported types : []

Alright, it seems like I was a bit too aggressive in trying to simplify the provided example, and hydra is now crashing on some versions due to not being provided with a config path. Here is an updated example that should run more smoothly, but requires creating the configs dir:
import multiprocessing as mp
import hydra

@hydra.main(config_path="configs/")
def main(config):
    context = mp.get_context("spawn")
    q = context.Queue()
    print(config)

if __name__ == '__main__':
    main()

Tested with hydra-core==1.0.7
$ mkdir configs
$ python process_queue_test.py +a=0 +b=8
{'a': 0, 'b': 8}
$ python -m nuitka --run process_queue_test.py +a=0 +b=8
[...]
BrokenPipeError: [Errno 32] Broken pipe
[...]
AssertionError

So, your original example works for me now, adding a few implicit dependencies for hydra plugins and data files needed from "conf" directory. The crash from multiprocessing went away too, so I figure that is it.

This is part of the 2.1.1 hotfix release I made

Sorry, the issue still seems to be the same for me, after getting 2.1.1 via pip install nuitka==2.1.1

Could you clarify what you mean by "adding a few implicit dependencies for hydra plugins"?

I added that to Nuitka, but seems I lied about adding it to the hotfix.
- module-name: 'hydra' # checksum: 380a0a91
  data-files:
    dirs:
      - 'conf'

- module-name: 'hydra.core.plugins' # checksum: f4d9feae
  implicit-imports:
    - depends:
        - 'hydra._internal.core_plugins.*'
        - 'hydra_plugins.*'

It's on the 2.1.2 branch that I have not yet made stable.

Part of the 2.1.3 hotfix release I just made.

I am still seeing the same issue on both 2.1.2, and 2.1.3 from pip

I am still seeing the same issue on both 2.1.2, and 2.1.3 from pip

both examples shown here work for me, what error do you get?

Is there any chance you are testing with a development version containing the fix, but it has not reached the pip releases?

I just checked, the history, and it's actually already in 2.1.2 indeed, commit 83d94f4e725aa907ea81c8c6f26ceda23049327d and I don't know how much not using --standalone makes a difference there. I feel it should not, but maybe it does, I think multiprocessing is explicitly tested in that configuration though.

Nuitka-Options:WARNING: You did not specify to follow or include anything but main program. Check options and make sure that is intended.

That's probably causing the multiprocessing plugin to not do its work. You would have to follow/include at least that at least or else, it cannot work I think.

Good to hear the fix is released already. --standalone does do the trick here, the following command succeeds:
python -m nuitka --standalone --run original.py +a=0 +b=8
However, I cannot use --standalone in my project due to some other packages causing issues (as I recall, mainly librosa and fairseq).
Trying to follow/include multiprocessing, I tried both --include-package=multiprocessing and --enable-plugins=multiprocessing with no success.

After enabling tensorflow JIT, we can look into Numba JIT, maybe that will work too soon enough, I guess 2.3 days.


version 5.0.5

@aaustin
Changes in version 5.0.5:

Fixing #98  Extracting data embedded via HTTP API
Fixing #97  Purchase events not tracking on iOS with X.Forms

updated nuget


Changed all amount properties that were defined as integers to numbers

All amount properties that were defined as integers in IOBWS-Claims3.0.yaml have been changed to number.
#166

Just a quick question,  I know the reason for these numbers to be integers
is because to my knowledge the banks don't support non integer numbers in
those fields,  Some banks even return errors if you send 10,00 and only
allow 10.
How would the banks handle for example if we would send in 10,5 in amount?
But the percentage for interest needs to support decimal numbers.  As
Interest is not often whole numbers.
On Fri, May 12, 2023 at 3:37 PM Daníel Sveinsson @.***>
wrote:

All amount properties that were defined as integers in
IOBWS-Claims3.0.yaml
https://github.com/stadlar/IST-FUT-FMTH/blob/master/Deliverables/IOBWS-Claims3.0.yaml
have been changed to number.
#166 https://github.com/stadlar/IST-FUT-FMTH/issues/166
You can view, comment on, or merge this pull request online at:
https://github.com/stadlar/IST-FUT-FMTH/pull/182
Commit Summary

9709c8b
https://github.com/stadlar/IST-FUT-FMTH/pull/182/commits/9709c8bbc2d7125c2b387724d49d8d4963defa0f
Changed all amount properties that were defined as integers to numbers

File Changes
(1 file https://github.com/stadlar/IST-FUT-FMTH/pull/182/files)

M Deliverables/IOBWS-Claims3.0.yaml
https://github.com/stadlar/IST-FUT-FMTH/pull/182/files#diff-6dbecb3a8e6118ca50a006558cef53c4d1a0b04fab9a5e055abaf23644a22b9d
(34)

Patch Links:

https://github.com/stadlar/IST-FUT-FMTH/pull/182.patch
https://github.com/stadlar/IST-FUT-FMTH/pull/182.diff

—
Reply to this email directly, view it on GitHub
https://github.com/stadlar/IST-FUT-FMTH/pull/182, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAC4UIWV3UO2DLV5XBBW6EDXFZKKHANCNFSM6AAAAAAX7WDQN4
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

--
Regards,
Asgeir Halldorsson


Module loading failure

Describe the bug
Mkdocstrings python handler fails when trying to load a a module.
To Reproduce
Steps to reproduce the behavior:

Go to 'Cad Sketcher Repository'
Download repository
cd ~/repos
git clone https://github.com/hlorus/CAD_Sketcher.git
Start python interpreter
Add the repository path to sys.path
import sys
sys.path.append(r"~/repos")
Load the module
import griffe
loader = griffe.loader.GriffeLoader()
loader.load_module("CAD_Sketcher")

Expected behavior
load_module should return an object of type griffe.dataclasses.Module and not raise an exception.
System (please complete the following information):

griffe version: 0.21.0
Python version: 3.9
OS: Windows

mkdocs_error.txt

Hello, thanks for the report! Could you try again with version 0.22.0 of Griffe? It should log an error with the location of the problematic annotation. You can then paste your code here so I can see if it should be supported or not.

Sure thing, it spits out the following:

loader.load_module("CAD_Sketcher")
Failed to parse annotation from 'Call' node at CAD_Sketcher/class_defines.py:39
Failed to parse annotation from 'Call' node at CAD_Sketcher/class_defines.py:45
Failed to parse annotation from 'Call' node at CAD_Sketcher/class_defines.py:3393
Failed to parse annotation from 'Call' node at CAD_Sketcher/operators.py:272
Failed to parse annotation from 'Call' node at CAD_Sketcher/operators.py:273
Failed to parse annotation from 'Call' node at CAD_Sketcher/operators.py:371
Failed to parse annotation from 'Call' node at CAD_Sketcher/operators.py:692
Failed to parse annotation from 'Call' node at CAD_Sketcher/operators.py:693
Failed to parse annotation from 'Call' node at CAD_Sketcher/operators.py:3230
Failed to parse annotation from 'Call' node at CAD_Sketcher/operators.py:3358
Failed to parse annotation from 'Call' node at CAD_Sketcher/operators.py:3395
Failed to parse annotation from 'Call' node at CAD_Sketcher/operators.py:3415
Failed to parse annotation from 'Call' node at CAD_Sketcher/operators.py:3517
<Module(PosixPath('/home/yoga/Dropbox/blend/addons/CAD_Sketcher/init.py'))>

Is using callables valid in annotations :thinking: ?

It is apparently. Blender actually kind of missuses annotations to define properties. Here's the official docs.

Interesting, thanks. I guess Blender would not work with from __future__ import annotations then :thinking:

There was quite some discussion around this however i thought they found some way of supporting it, see:
https://devtalk.blender.org/t/recommended-type-annotations-in-ops/16575

So i tried again building the docs with griffe 0.22 and it seems to properly report the error without aborting. I assume that's the expected behavior so the issue can be closed probably. Thanks alot for your efforts!

Thank you for coming back and closing with an explanation, that's appreciated :+1:


feat(depinject): add support for core

Description

Adds the necessary machinery to configure core module with dependency injection. It needs #4039.
ref: #3560
Commit Message / Changelog Entry
type: commit message

see the guidelines for commit messages. (view raw markdown for examples)

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

[x] Targeted PR against correct branch (see CONTRIBUTING.md).
[x] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[ ] Code follows the module structure standards and Go style guide.
[ ] Wrote unit and integration tests.
[ ] Updated relevant documentation (docs/) or specification (x/<module>/spec/).
[ ] Added relevant godoc comments.
[ ] Provide a commit message to be used for the changelog entry in the PR description for review.
[x] Re-reviewed Files changed in the Github PR explorer.
[ ] Review Codecov Report in the comment section below once CI passes.

Codecov Report

Merging #4040 (5c1943e) into carlos/add-buf-gen-pulsar (d41e1fa) will decrease coverage by 0.11%.
The diff coverage is 18.18%.

Additional details and impacted files

@@                      Coverage Diff                      @@
##           carlos/add-buf-gen-pulsar    #4040      +/-   ##
=============================================================
- Coverage                      79.49%   79.39%   -0.11%
=============================================================
  Files                            189      189
  Lines                          13285    13307      +22
=============================================================
+ Hits                           10561    10565       +4
- Misses                          2296     2314      +18
  Partials                         428      428

Files Changed
Coverage Δ

modules/core/module.go
32.67% <18.18%> (-4.04%)
:arrow_down:

Closing for now, but will keep the branch, so that I can pick it up again later on.


Remove Service monkey patch

Following up from https://github.com/rackspace-cookbooks/varnish/pull/83
I was asking about safer solutions for the desired functionality on the varnish logging services:

Sleep 5 before attempting
Retry 5 times
And was made aware of the following common functionality of Chef resources:
https://docs.chef.io/resource_common.html#properties
Specifically the following:
retries
retry_delay
These can be added to any Chef resource to make multiple attempts on failure and add a delay between restarts if retrying. Thus the logging library (libraries/varnish_log.rb) can update the service declaration at the bottom of the configure_varnish_log method to allow the same functionality without the need of a monkey patch

service new_resource.log_format do
  supports restart: true, reload: true
  action %w(enable start)
  retries 5
  retry_delay 5
end

if an initial delay is required before the first run a ruby block can run a sleep
ruby_block do
  block do
    sleep(5)
  end
  action :run
end

I can make a PR if desired

@yoshiwaan -- that would be great, if you don't mind.

@martinb3 https://github.com/rackspace-cookbooks/varnish/pull/86
I've run a test on a AWS instance via kitchen and it seemed fine, although I've not run it through the full kitchen list

@yoshiwaan please see my comments on #86. The workaround seems to be failing on some of the test suites.

Fixed in #86.

Thanks very much @martinb3


android: notification does not show while app is in foreground

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Console Logs
If applicable, provide console logs showing the errors being reported.
Plugin Version
Run cordova plugin list to find out what version of cordova-plugin-firebase you are running with
Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

I'm getting the same issue.

same here

Same problem here. Any workaround?

This is the default behavior. You can implement custom toast for android.
https://github.com/arnesson/cordova-plugin-firebase/blob/master/docs/API.md#onnotificationopen


SERVER-90147 Upgrade timelib.h to 2022.10 and timezone files to 2024a

Re-syncs the fork up to version 2022.10.

LGTM!

evergreen merge


eqlv2 for softmax multi-classification.

Hello, thank you for your work, and I would like to ask how you can apply eqlv2 to softmax multi-classification.

please refer to this: https://arxiv.org/abs/2210.05566


Release fix

Seems to not throw error when I launch publishPlugin

Sorry, I don't get it! Why you should be able to have a successful publish plugin task?
Secondly, how this change platformVersion = 2023.3.3 can fix it?
I can publish it manually the same as before but I'm waiting for a reply from the gradle owners, seems there is a bug on publishPlugin task not able to find the token

I can publish it manually the same as before but I'm waiting for a reply from the gradle owners, seems there is a bug on publishPlugin task not able to find the token

Nevermind! It takes ages they reply. I uploaded it manually; hopefully for the next release, they replied so I can use the auto upload feature.

Ah I assumed that the auto release issue is caused by this! https://youtrack.jetbrains.com/issue/IDEA-310827 Which seems to be fixed in the newer version

Nice catch! I'm gonna update all the dependencies in the actions for the next release. For now I keep this open for the reference.

Nope! still exists... 💢
https://github.com/Drjacky/Avocado/actions/runs/9149286279/job/25152759730

Still exists! https://github.com/Drjacky/Avocado/actions/runs/11195423607/job/31123065160

Still!!!! https://github.com/Drjacky/Avocado/actions/runs/11537807175/job/32115626503


Flow crashes with Windmill dataset

Open the Windmill dataset
Create a flow renderer
Enable the renderer

Vapor will crash

Stas, can you specify where the Windmill data is in this bug description?

cisl-vapor/data/Source/Windmill

This is fixed with PR #1885 .

Vapor doesn't crash but nothing happens and there is no warning/error

This data set has a single variable. The software should default to integrate along a single dimension

As of 01/09/2020, VAPOR doesn't crash, but remind the user to have at least 2 variables.


adding hints before a solution

Please add some hints before a solution to a particular problem. Taking hints and thinking about the problem more before rushing to the solution is ideal for problem solvers. Sometimes the problem might be related to a topic unknown to the solver. In that case, telling him which topic to learn or focus on is also helpful.

Hints can be separated into levels such as basic, strong or deep.
Helpful topics needed to learn before attempting a problem can also be added as Prerequisite

Thanks.

@HurayraIIT Thank you so much for your great suggestion. Surely I shall keep your suggestion in mind whenever any problem and its solution is added to the repository.


Refresh Token to extend authentication lifetime beyond 24 hours

The addition of the access token and claims delivered via this feature request ... Issue #393 ... provided some much needed and appreciated functionality but I'd like to see if it can be extended a bit further.
We have a requirement in our organisation (given rosters and based on fairly consistent user feedback) to extend the life of the access token beyond the maximum 24 hour (1440 minutes) period offered up by Azure B2C to help improve the authentication experience when using Azure AD with on-prem ADFS ...

... to do that, the refresh token looks to be the catalyst for a solution.
This same functionality was available in the Azure Mobile Apps space but it was hidden away in the configuration and took a previous developer quite some time to track down but it did exist ...
Microsoft.Web sites/config - tokenRefreshExtensionHours
... the best thing about B2C is that it's all there and configurable through the Azure Portal.
EDIT
The use case I am referring to is very much directed at the corporate AD world so if the solution for the upcoming Azure AD integration doesn't go through B2C, the requirement still exists but less so on the B2C side for social media providers, at least, that's my view and not my current concern/priority.  Others may have another opinion but I think I could live with the current experience for the social media IDP's.
That means, this feature request may not be a change to the current version of auth but may just be a consideration for the future Azure AD inclusion.

Hey @brad302, thanks for the feedback! We spoke briefly just now, and we see your use case. Leaving this post up to gather more feedback, and we’ll investigate on a potential solution.

Hey @brad302, I recorded this ticket in our backlog, but unfortunately, there's no ETA for now. I'll be closing this ticket for now. Feel free to re-open this ticket if it comes up again or is a blocking issue.


problem with reactive button

i use the reactive button trick with pluto to force a new random number dependent calculation.  specifically, i have a line:
@bind go Button("Recompute")
in one cell and another cell that looks like this:
begin
	go
	ob =function1()
	output1, output2 = function2(ob);
	Print()
end

where function1 invokes rand()
i followed the readme and did
using PlutoSliderServer
path_to_notebook = download("https://raw.githubusercontent.com/fonsp/Pluto.jl/v0.17.2/sample/Interactivity.jl") # fill in your own notebook path here!

PlutoSliderServer.run_notebook(path_to_notebook)

with my own repo and pluto file and the webpage renders fine but the button is not active, i.e. doesn't cause a re-evaluation (apparently).
am i doing something wrong or is PlutoSliderServer not yet working with a bound Button object?
thanks for any guidance.

Hey! You can use a CounterButton from PlutoUI instead of Button and it will work!
The problem is that PlutoSliderServer works with caching, and the Button will give the same value every time you click.


Static arrays in HLSL need to be merged into one array

I have a real-life HLSL compute shader with two initialized static arrays, one with scalar uint components, the other with uvec3. fxc merges these into one array, shifting the uint3 components into the yzw fields of the new array. If this merging is not done for Vulkan, at least one IHV driver will reject the shader.
This merging is done by fxc to keep the total length of the immediateConstantBuffer (icb[]) below a certain threshhold, apparently 512 by default. The function instructions are transformed to deal with the relocation of all the static arrays into the single new array.
I propose that we add such a pass to spirv-opt.
If there is apprehension in adding this to legalization, I propose we create an "fxc equivalence" option to spirv-opt, glslangValidator, etc which emulates as much as possible the transformations done by fxc.
The packing algorithm looks to be a classic greedy algorithm. The arrays are sorted first by the vector length of the array component (one having precedence), then by the length of the arrays, larger having precedence. Then the arrays are packed into a one-dimensional array of vec4s such that the x column is filled first (followed by y, z and w) and the total required length of the new array is minimized.
For example, consider the following arrays:
static const uint3 arr_in[4] =
{
uint3(0x2, 0x2, 0x2), uint3(0x3, 0x3, 0x3), uint3(0x4, 0x4, 0x4), uint3(0x5, 0x5, 0x5)
}
static const uint arr_in2[4] = {
0x1, 0x1, 0x1, 0x1
}
They would be merged into the following array:
static const uint3 arr_out[16] =
{
uint3(0x1, 0x2, 0x2, 0x2), uint3(0x1, 0x3, 0x3, 0x3), uint3(0x1, 0x4, 0x4, 0x4), uint3(0x1, 0x5, 0x5, 0x5)
}
All references to arr_in[i] would become references to arr_out[i].x. All references to arr_in2[i].x would become references to arr_out[i].y.
glslangValidator currently puts such static arrays into Function scope. I haven't looked at dxc yet. It could do things differently, but even so, much of the algorithms would be similar to transform its SPIR-V  to get a similar effect.
I am claiming this issue.

Thanks for the clear explanation.
How are the arrays selected for this transform?  Is it only done conditionally, to meet the size target?
Do you think there is any performance tradeoff when accessing the uvec3's?
FYI @antiagainst , who has been seeing cases that require more massaging than we're used to,.

With just a handful of experiments, it looks that the compiler always attempts to merge arrays, no matter the size. I have only looked at 1-D arrays and 32-bit types.
I haven't done any performance tests. Would be good to get some comments from IHV folks who are a little more familiar with their own hardware performance.

Interesting. I haven't seen such a real-world case thus far, but I put @greg-lunarg's example through fxc and can confirm fxc does merge them. But my experience is that the uint3 array takes .xyz, and int array takes .z. Presumably this is better for performance than letting uint3 array taking .yzw since more aligned?
In DXC, static global variables are put into Private scope. They may be changed to Function scope b/c of PrivateToLocalPass.
@greg-lunarg: I'm curious how large your original arrays are that they cannot be put in the Private or Function storage separately. 512 (scalars?) sounds like a limit with some history that I'm not sure we are still subject to it.

The placement may also be related to the access patterns. I haven't correlated with that yet.
Yes, we are seeing 512 on a fairly capable piece of hardware with its latest driver. The limit could be related to glslang putting the array in Function scope. Maybe Private scope would work. This should be investigated.

As for where this optimization can be placed, I would suggest it goes into "-O" and possibly "-Os".  I want to keep the legalization passes as the thing need to generate legal vulkan spir-v.  For example, we want to remove the local copies of opaque object or the variable pointer that dxc generates.
I don't want to create another option.  The fxc equivalence sould be "--lelgalize-hlsl -O".

@greg-lunarg are you actively working on this?  I have a few more questions about it.

Does the private to local optimization get run in the receipt that is being used on it?  If not, does it make a difference?

Is it a problem for this IHV if you have 4 float arrays of the same size?  This could effect the heuristics.  Maybe we just want to merge vectors that are less than 128B with something to make it that size.

Do these arrays have an array stride decoration?  Does adding one make a difference in the acceptance of the shader (even if it might be bad for performance)?

I just want to collect some extra information.
Also, I'm actively working on some data reorganization stuff.  This might be able to be incorporated into that optimization.  I can see how it will fit into my implementation without too much extra code.


Django 1.9 Support

I am using django-location-field 1.6.1 with Django 1.9. All things work correctly, but there is a problem in admin page. The problem does not appear in Django 1.8.7. Based on my tests, this is a Javascript issue.
I have installed django-location-field based on "Basic usage" part of the documentation:
    city = models.ForeignKey(City)
    location = PlainLocationField(based_fields=[city], zoom=14, default='')

This is the scenario: I set the location in admin and save it. Then when I click on the object to update some fields, I see that location has changed. It has changed to the center of the city specified by city field.
In Django 1.9, a change event on city field is fired at page load (Actually a change event is fired for all fields). And django-location-field's form.js code listens to this event, and populates location based on it. But this shouldn't be done at page load, but when user changes the city field by hand.
For solving the problem, we put these lines in a $(document).ready(function(){...});. I don't know if this a proper solution.
https://github.com/caioariede/django-location-field/blob/master/location_field/static/location_field/js/form.js#L147-L175
Soon reply is appreciated.
Thanks.

Hi @mjnaderi,
Thanks for reporting this issue. I'll try to reproduce this and see how your fix performs.

@mjnaderi I'm not being able to reproduce this issue.
Any further instructions would be appreciated.

Closing this for now as we released a new version. Please reopen if it persists.


[Microsoft 365] Invalid Education SKU name

Looks like the name STANDARDWOFFPACK_IW_STUDENT at the last row of the table is invalid. Because it is a duplicate of the second table row

Office 365 A1 Plus for students
STANDARDWOFFPACK_IW_STUDENT
e82ae690-a2d5-4d76-8d30-7c6e01e6022e

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

ID: ae22e4df-3f88-8c54-c55e-a3cd4f720cbc
Version Independent ID: 3be05aac-9860-e78c-aca7-c62de044c48b
Content: Education SKU reference - Microsoft Teams
Content Source: Teams/sku-reference-edu.md
Service: msteams
GitHub Login: @SerdarSoysal
Microsoft Alias: serdars

Doing well! Thanks, @get-itips!


Multiply tint doesn't use resolution

When using assets with a resolution other than 1, the CanvasTinter doesn't seem to work properly. The sprite looked like it changed to a random frame on the original base texture.
To fix this I multiplied the values by the base texture resolution. Here is the new code:
CanvasTinter.tintWithMultiply = function (texture, color, canvas)
{
    var context = canvas.getContext( '2d' );
    var r = texture.baseTexture.resolution;
    var crop = texture.crop;

    canvas.width = crop.width;
    canvas.height = crop.height;

    context.fillStyle = '#' + ('00000' + ( color | 0).toString(16)).substr(-6);

    context.fillRect(0, 0, crop.width, crop.height);

    context.globalCompositeOperation = 'multiply';

    context.drawImage(
        texture.baseTexture.source,
        crop.x * r,
        crop.y * r,
        crop.width * r,
        crop.height * r,
        0,
        0,
        crop.width * r,
        crop.height * r
    );

    context.globalCompositeOperation = 'destination-atop';

    context.drawImage(
        texture.baseTexture.source,
        crop.x * r,
        crop.y * r,
        crop.width * r,
        crop.height * r,
        0,
        0,
        crop.width * r,
        crop.height * r
    );
};

Would you mind doing a PR instead of pasting the block in an issue? It is easier to look at the diff :)

This should be fixed in the latest dev now.


swayipc error: invalid integer, expected i32

I've been having a very sporadic issue where sway-overfocus will suddenly stop working; issuing any typical command in a shell returns:
$ sway-overfocus split-lt float-lt output-ls

swayipc error: invalid value: integer `4294967240`, expected i32 at line 1 column 9997

This problem persists for a while, then sporadically fixes itself, making it hard to test. Do you have any advice on what I could do to get more information when this happens again?
I got curious and looked through recent issues and PRs in swayipc-rs and found a possible clue: this PR fixes a possibly similar issue in i3status. Since sway-overfocus uses swayipc version 3.0.0, and as far as I can tell the aforementioned PR has not yet been included in a new tag of swayipc, I suppose asking the swayipc developers to tag a new release and push to crates.io would be a good idea; then the swayipc dependency could be updated here and hopefully this problem will be solved.

There are three places where swayipc can error in my program:

Starting a connection (unlikely).
Retrieving the tree.
Running the resulting focus command.

If you can reproduce the error, run RUST_LOG=info sway-overfocus <...> to figure out which it is.
Are you using i3? Looking at the last issue you mentioned, it might make sense to check whether your i3 version is up to date as well.
I'm a bit tied up with finishing my master's right now, but that'll be done in a week or so. I'll look into it then.

I almost forgot, sway-overfocus needs to be built in debug mode to enable logging. So you would run something like RUST_LOG=info cargo run -- <...> to get more info.

If you can reproduce the error, run RUST_LOG=info sway-overfocus <...> to figure out which it is.
I almost forgot, sway-overfocus needs to be built in debug mode to enable logging. So you would run something like RUST_LOG=info cargo run -- <...> to get more info.

Thanks! Now I hope it happens again...

Are you using i3? Looking at the last issue you mentioned, it might make sense to check whether your i3 version is up to date as well.

Version 4.14.1, so I should probably update

In any case, the issue seems to be with swayipc-rs or i3wm. You can try upgrading i3, and if the problem reappears, nudging the swayipc-rs devs to make a patch release.


Bootstrap style is not working

Summary of problem or feature request
I want to use the Bootstrap3 style of Datatables. But i does not work with this package. added the dataTables.bootstrap.min.css but css does not change anything.
With the same setting i tried datatables with table (without the package) and it worked perfectly.
is there any setting i missed to enable? can you please refer a doc?
Code snippet of problem

System details

Operating System: Windows 10
PHP Version: 7
Laravel Version: 5.1
Laravel-Datatables Version

Are you setting the correct DT dom values that matches the bs3 styles? Are the appropriate table classes declared?

I am using the Datatables as service. that is what i am asking where can i declare the table classes?

You can declare it via dom parameter or create a js file that extends that default DT options. BTW, i just remember that BS3 for DT comes with a js file and should be included before the table scripts.
Lastly, you can pass a class on the table using $dataTable->table(['class' => 'table ....']).

thank. it is working. :)


Add a simple mariadb image

We hammer in OBS development/testing on the same image for more than a year...

@hennevogel : This looks good. Will you push this image into docker hub?

@jordimassaguerpla if you let me :-)


Comments/suggestions based on previous usage

@jon-humphries since you wanted more feedback
Here are a few comments/suggestions based on my experience with the module so far.

file:README.md
yaml_files = [“organizations_admins.yaml”] -> yaml_files = [“organizations.yaml”] -> otherwise it does not fit the example

variables.tf and versions.tf
So far I use the environment variable MERAKI_API_KEY from the docs: ttps://github.com/CiscoDevNet/terraform-provider-meraki/blob/main/docs/index.md.
The reason for this is that I don't want to write the key to git. I am therefore currently commenting out the two lines with api_key.
Maybe you can use the environment variable TF_VAR_api_key, but I haven't tested this yet.
A description of how to use an environment variable would be helpful.

meraki_organization.tf
In one of the last changes “”resource “meraki_organization” “organization” “” was introduced instead of “data”, so I had to make an import of the organization.
 ```
     import {
       id = “9999999999999”
       to = module.meraki.meraki_organization.organization[“DEV”]
     }
 ```

For the import to work, I also had to comment out “management_details” and fill it in according to the output in the terraform plan.
The values of management_details should also be in the yaml config file.
I think this should be included in the instructions.

so that I could use the meraki module effectively, I would have to make a few extensions.
 ```
 locals {
   networks_devices = flatten([

     for domain in try(local.meraki.domains, []) : [
       for organization in try(domain.organizations, []) : [
         for network in try(organization.networks, []) : [
           for device in try(network.devices, []) : {
             key = format("%s", device.serial)

             data = try(device, null)
           } if try(network.devices, null) != null
         ] if try(organization.networks, null) != null
       ] if try(domain.organizations, null) != null
     ] if try(local.meraki.domains, null) != null
   ])
 }
 resource "meraki_device" "devices" {
   for_each = { for device in local.networks_devices : device.key => device }

   serial  = try(each.value.data.serial, null)
   address = try(each.value.data.address, null)   -> Inheritance from the network would be nice
   name    = try(each.value.data.name, null)
   notes   = try(each.value.data.notes, null)   -> Inheritance from the network would be nice
   tags    = try(each.value.data.tags, null)     -> Inheritance from the network would be nice
   lat     = try(each.value.data.lat, null)
   lng     = try(each.value.data.lng, null)

   depends_on = [ meraki_network_device_claim.net_device_claim ]
 }
```

locals {
 device_switch_ports = flatten([

   for domain in try(local.meraki.domains, []) : [
     for organization in try(domain.organizations, []) : [
       for network in try(organization.networks, []) : [
         for device in try(network.devices, []) : [
           for switch_port in try(device.switch_ports, []) : {
             serial = device.serial
             key = format("%s/%s", device.serial, switch_port.port_id)

             data = try(switch_port, null)
           } if try(device.switch_ports, null) != null
         ] if try(network.devices, null) != null
       ] if try(organization.networks, null) != null
     ] if try(domain.organizations, null) != null
   ] if try(local.meraki.domains, null) != null
 ])
}
resource "meraki_switch_port" "net_switch_ports" {
 for_each = { for port in local.device_switch_ports : port.key => port }

 serial                      = try(each.value.serial, null)
 port_id                     = try(each.value.data.port_id , local.defaults.meraki.networks.devices.switch_ports.port_id , null)
 access_policy_type          = try(each.value.data.access_policy_type , local.defaults.meraki.networks.devices.switch_ports.access_policy_type , null)
 allowed_vlans               = try(each.value.data.allowed_vlans, local.defaults.meraki.networks.devices.switch_ports.allowed_vlans , null)
 dai_trusted                 = try(each.value.data.dai_trusted, local.defaults.meraki.networks.devices.switch_ports.dai_trusted, null)
 enabled                     = try(each.value.data.enable, local.defaults.meraki.networks.devices.switch_ports.enabled, null)
 isolation_enabled           = try(each.value.data.isolation_enabled, local.defaults.meraki.networks.devices.switch_ports.isolation_enabled, null)
 link_negotiation            = try(each.value.data.link_negotiation, local.defaults.meraki.networks.devices.switch_ports.link_negotiation, null)
 name                        = try(each.value.data.name, local.defaults.meraki.networks.devices.switch_ports.name, null)
 poe_enabled                 = try(each.value.data.poe_enabled, local.defaults.meraki.networks.devices.switch_ports.poe_enabled, null)
 rstp_enabled                = try(each.value.data.rstp_enabled, local.defaults.meraki.networks.devices.switch_ports.rstp_enabled, null)
 sticky_mac_allow_list_limit = try(each.value.data.sticky_mac_allow_list_limit, local.defaults.meraki.networks.devices.switch_ports.sticky_mac_allow_list_limit, null)
 stp_guard                   = try(each.value.data.stp_guard, local.defaults.meraki.networks.devices.switch_ports.stp_guard, null)
 type                        = try(each.value.data.type, local.defaults.meraki.networks.devices.switch_ports.type, null)
 udld                        = try(each.value.data.udld, local.defaults.meraki.networks.devices.switch_ports.udld, null)
 vlan                        = try(each.value.data.vlan, local.defaults.meraki.networks.devices.switch_ports.vlan, null)
 voice_vlan                  = try(each.value.data.voice_vlan, local.defaults.meraki.networks.devices.switch_ports.voice_vlan, null)
 profile_enabled             = try(each.value.data.profile_enabled, local.defaults.meraki.networks.devices.switch_ports.profile_enabled, null)
 profile_iname               = try(each.value.data.profile_iname, local.defaults.meraki.networks.devices.switch_ports.profile_iname, null)
 profile_id                  = try(each.value.data.profile_id, local.defaults.meraki.networks.devices.switch_ports.profile_id, null)
 sticky_mac_allow_list       = try(each.value.data.sticky_mac_allow_list, local.defaults.meraki.networks.devices.switch_ports.sticky_mac_allow_list, null)
 tags                        = try(each.value.data.tags, local.defaults.meraki.networks.devices.switch_ports.tags, null)

 depends_on = [ meraki_network_device_claim.net_device_claim ]
}

 #diese resource habe ich noch nicht getestet
 locals {
     device_ap_wireless_radio_settings = flatten([

         for domain in try(local.meraki.domains, []) : [
         for organization in try(domain.organizations, []) : [
             for network in try(organization.networks, []) : [
             for device in try(network.devices, []) : [
                 for radio_setting in try(device.radio_settings, []) : {
                 serial = device.serial

                 data = try(radio_setting, null)
                 } if try(device.radio_settings, null) != null
             ] if try(network.devices, null) != null
             ] if try(organization.networks, null) != null
         ] if try(domain.organizations, null) != null
         ] if try(local.meraki.domains, null) != null
     ])
 }
 locals {
     rf_profile_name_to_id = {for idx,res in meraki_wireless_rf_profile.net_wireless_rf_profiles : res.name => res.id}
 }
 resource "meraki_wireless_radio_settings" "net_wireless_radio_settings" {
     for_each = { for ap in local.device_ap_wireless_radio_settings : port.key => port }

     serial                             = try(each.value.serial, null)
     five_ghz_settings_channel          = try(each.value.five_ghz_settings_channel, null)
     five_ghz_settings_channel_width    = try(each.value.five_ghz_settings_channel_width, null)
     two_four_ghz_settings_channel      = try(each.value.two_four_ghz_settings_channel , null)
     two_four_ghz_settings_target_power = try(each.value.two_four_ghz_settings_target_power, null)
     rf_profile_id                      = local.rf_profile_name_to_id["${each.value.data.rf_profile_name}"]
 }

 locals {
   networks_wireless_ssid_identity_psk = flatten([

     for domain in try(local.meraki.domains, []) : [
       for organization in try(domain.organizations, []) : [
         for network in try(organization.networks, []) : [
           for ipsk in try(network.wireless_ssid_identity_psk, []) : {
             network_id = meraki_network.network["${domain.name}/${organization.name}/${network.name}"].id

             data = try(ipsk, null)
           } if try(network.wireless_ssid_identity_psk, null) != null
         ] if try(organization.networks, null) != null
       ] if try(domain.organizations, null) != null
     ] if try(local.meraki.domains, null) != null
   ])
 }
 locals {
   gp_name_and_networkid_to_id = {for idx,res in meraki_network_group_policy.net_group_policies : "${res.name}/${res.network_id}" => res.id}
 }
 resource "meraki_wireless_ssid_identity_psk" "net_wireless_ssid_identity_psk" {
   for_each   = { for i, v in local.networks_wireless_ssid_identity_psk : i => v }
   network_id = each.value.network_id
   group_policy_id = local.gp_name_and_networkid_to_id["${each.value.data.group_policy_name}/${each.value.network_id}"]

   number          = try(each.value.data.number, null)
   expires_at      = try(each.value.data.expires_at, null)
   name            = try(each.value.data.name, null)
   passphrase      = try(each.value.data.passphrase, null)

   depends_on = [ meraki_network_group_policy.net_group_policies ]
 }

The only special feature here is that I have not used a counter but the serial of the device (device.key => device).
I thought this would make importing easier and you can create ports according to the “serial/port” scheme (eg. Q3LV-XXXX-XXXX/1), which is more meaningful when there are several thousand ports.
At the moment I am still missing a way to assign rf_profile to the accesspoints. I have already written a resouce but have not yet tested it. It would be nice to simply assign this resouce to all accesspoints of a network (networks.devices.wireless).
For meraki_wireless_ssid_identity_psk and meraki_wireless_radio_settings, you must specify an rf_profile_id and group_policy_id respectively. I don't think it makes sense to work with these ids in the yaml file, how should a user know this?
I have therefore introduced the auxiliary variables group_policy_name and rf_profile_name.

I am currently using pyyaml to create a config file because i want to avoid repetition.
Pyyaml is outside the focus of this project but the following would be very helpful.

address, notes, tags:
the address of the network should be inherited by all devices.
For this you should add the auxiliary variable “address” under networks. If no “address” has been specified in the devices, the address of the network should be adopted.
eg. try(device.address, network.address, default.address, null).
I currently also use this inheritance for the “notes” and “tags”.

wireless
I think most networks are always built according to the same principle. so I always need e.g. three ssids, ipsk, rf_profiles and group_policies.
It would be nice to have a way to set these as default values, but with the current defaults you can only set one value as default at a time

devices_claim
I currently manage the serial numbers of the devices under “devices”. I then use a python script to create the devices_claim.serials entries.
Perhaps you could modify the devices_claim so that you only have to maintain the serials once under “devices”.

path for the devices
At the moment, all devices are simply listed under “devices:”. It would be nicer to have devices.switch, devices.wireless and devices.appliances.
This would make it very easy to assign certain defaults to a specific type. I think this would also make the yaml file clearer. However, I have not yet implemented this.

Attached is a section of my current config file. I have included the defaults here, because the defaults.yaml did not work for me (due to the error with “domain”).
The !inc_file is replaced by pyyaml generators when loading the yaml file with the content of the file. A python script then copies the defaults into the networks and thus creates the yaml file. I also built something like this for !inc_switchport_profile (but it doesn't work at the moment because I use org port profiles).
The yaml file is then checked, so far I lacked a way to check the yaml file generated by letascode, but this is probably now possible “variable ‘write_merged_yaml_file’ {”, this was also a reason for not using defaults.yaml until now.
---
meraki:
  domains:
    - name: EMEA
      organizations:
        - name: TEST
          defaults:
            networks:
              devices:
                notes: __inherit_from_network__
                address: __inherit_from_network__
                tags: __inherit_from_network__
              time_zone: "Europe/Berlin"
              product_types: ["appliance", "switch", "wireless"]
              group_policies:
                - !inc_file ./config/include.d/group_policies/group_policy_ipsk_wifi_test-a.yml
                - !inc_file ./config/include.d/group_policies/group_policy_ipsk_wifi_test-b.yml
                - !inc_file ./config/include.d/group_policies/group_policy_ipsk_wifi_gast-a.yml
                - !inc_file ./config/include.d/group_policies/group_policy_ipsk_wifi_gast-b.yml
              wireless_ssids:
                - !inc_file ./config/include.d/wireless/wireless_ssid_internet_test.yml
                - !inc_file ./config/include.d/wireless/wireless_ssid_internet_gast.yml
                - !inc_file ./config/include.d/wireless/wireless_ssid_intern_test.yml
              wireless_rf_profiles:
                - !inc_file ./config/include.d/wireless/wireless_rf_profile_test_default.yml
              wireless_ssid_identity_psk:
                - !inc_file ./config/include.d/wireless/wireless_ipsk_wifi_test-a.yml
                - !inc_file ./config/include.d/wireless/wireless_ipsk_wifi_test-b.yml
                - !inc_file ./config/include.d/wireless/wireless_ipsk_wifi_gast-a.yml
                - !inc_file ./config/include.d/wireless/wireless_ipsk_wifi_gast-b.yml
              devices_claim:
                serials: __generated_from_devices_serials__

          networks:
            - name: test-net
              address: "teststr. 77, 99994 Musterstadt"
              notes: "my notes"
              tags: ["test-net","poc-location"]
              devices:
               # switch
               - name: test-net-sw-01
                 serial: Q3LV-XXXX-XXXX
               - name: test-net-sw-02
                 serial: Q3LV-XXXX-XXXX
               - name: test-net-sw-03
                 serial: Q3LV-XXXX-XXXX
               - name: test-net-sw-04
                 serial: Q3LL-XXXX-XXXX
                 #switch_ports:
                 #  - !inc_switchport_profile ["switch_ports_1x_profile.yml", "1-7@[SPP-Access] Intern", "8@[SPP-Trunk] AccessPoint", "9-10@[SPP-Trunk] Switch/Meraki-Router"]
               # wireless
               - name: test-net-ap-01
                 serial: Q3KA-XXXX-XXXX
                 #radio_setting:
                 #  - !inc_file ./config/include.d/wireless/wireless_radio_settings_default.yaml
               - name: test-net-ap-02
                 serial: Q3KA-XXXX-XXXX
               - name: test-net-ap-03
                 serial: Q3KA-XXXX-XXXX
               - name: test-net-ap-04
                 serial: Q3KA-XXXX-XXXX
               - name: test-net-ap-05
                 serial: Q3KA-XXXX-XXXX
               # appliance
               - name: test-net-mx-01
                 serial: Q3FA-XXXX-XXXX

The comments listed here are just suggestions, perhaps a few things can be implemented.
I am currently already using the organization port profiles from smartports (https://github.com/CiscoDevNet/terraform-provider-meraki/discussions/20),
unfortunately these are not yet supported by terraform.
The smpartport automation is also very interesting, because you could configure all switch ports exactly the same for all networks via terraform.

Hi Christian,
As always appreciate the feedback. They are all valid suggestions, some of which are currently on the way as we already planned these features. Our initial focus was Campus features, and now we are laying the ground work for appliance and device specific features and should be released over the next few weeks. We have also planned a device and network template feature within the data model which we will look at taking your comments onboard when we plan this functionality.
We will also discuss the other points you have raised regarding documentation and constraints with the modules for specific elements.
Will leave this issue open for a few weeks so we can track the new functionality.


Possibly add forc plugin for kicking off fuel-core

Could be nice to have as a short-hand, and for UX consistency for Sway devs.
In case we want this and it helps with the plugin implementation, here is the old start_fuel_core function that has been sitting around as dead code in forc since we disabled running the node on forc run. Edit: Removing this from forc in an upcoming PR btw.
use anyhow::{bail, Result};
use fuel_gql_client::client::FuelClient;
use std::process::Stdio;
use tokio::process::{Child, Command};
use tokio::time::{sleep, Duration};

pub async fn start_fuel_core(node_url: &str, client: &FuelClient) -> Result<Child> {
    let mut url_parts = node_url.split(':').collect::<Vec<&str>>();
    let port = url_parts.pop().unwrap_or("4000");
    let ip = url_parts.join(":");

    let mut cmd = Command::new("fuel-core");
    cmd.args([format!("--port={}", port), format!("--ip={}", ip)]);
    cmd.stderr(Stdio::piped());

    match cmd.spawn() {
        Ok(child) => {
            if client.health().await.is_ok() {
                return Ok(child);
            }

            for _ in 0..5 {
                sleep(Duration::from_millis(300)).await;
                if client.health().await.is_ok() {
                    return Ok(child);
                }
            }

            bail!("Could not start fuel-core")
        }
        Err(e) => bail!("Failed to spawn: {:?}. Error: {:?}", cmd, e),
    }
}

It might be better to take inspiration from the SDK for this as well, since that code is somewhat outdated and may not be as rigorous.

@mitchmindtree I'll add this: I use a local shell function to start and re-start fuel core. In keeping with the Fuel theme (we all know how important that is! :) ) I use these:
#=============================================
 33 # FUEL:
 32
 31 function kill4k
 30   kill -9 (lsof -t -i :4000)
 29 end
 28
 27 function ignite
 26   alacritty --command fuel-core --ip <IP_ADDRESS> --port 4000 --db-type in-memory &
 25 end
 24
 23 function reignite
 22   kill4k
 21   ignite
 20 end


从测试结果导出混淆矩阵等内容的报告

Motivation
分类模型常使用混淆矩阵，P/R/F1等对模型测试结果进行分析，现有分析脚本没有针对每个分类单独进行分析的功能。所以添加了一个脚本，利用已有功能，导出每个分类个各项指标。
Modification
从测试结果中，导出每个分类的各项指标及混淆矩阵。

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

Thank you for your contribution, please sign the CLA so we can review your PR.

I notice that your output is an excel file, which is not a general file. Users may hard to read in Linux OS or without Offices.
We recommend using the rich library instead and adding an optional argument to output a result general file. such as '.csv'.

I'm sorry to inform you that the previous master(dev) branch has been abandoned, and therefore, this pull request (PR) based on the master(dev) branch will be closed.
We have integrated the previous mmcls and mmselfsup into a new repo named mmpretrain, and you are welcome to use it.


Support code navigation for #include paths

Following this request from sourcegraph/sourcegraph: https://github.com/sourcegraph/sourcegraph/issues/21838
To re-summarize in languages like Java we can resolve hovers for imports, for example:
repo:^github\.com/elastic/elasticsearch$@985a2fb file:^server/src/main/java/org/elasticsearch/index/codec/CodecService\.java
(link)

What is desired here is the same behavior for C includes for example:
repo:^github\.com/tensorflow/tensorflow$ file:^tensorflow/core/graph/validate\.h
(link)
Here a hover on tensorflow/lite/core/c/common.h would ideally allow a user to jump to https://sourcegraph.com/github.com/tensorflow/tensorflow/-/blob/tensorflow/lite/core/c/common.h
Include

File to jump to

Added support in https://github.com/sourcegraph/scip-clang/pull/166
Example: https://sourcegraph.com/github.com/ninja-build/ninja/-/blob/src/graph.h?L23:10-23:20#tab=references
The hover text is a little weird, I will fix that later.


Error in Logistic regression method

Dear Sir,
I prepared the sample data you provided and ran logistic regression method but it showed this error.
Traceback (most recent call last):
  File "C:\LSAT-master\LSAT-master\Logistic_Regression.py", line 14, in <module>
    from sklearn.linear_model import LogisticRegression
  File "C:\Python27\ArcGIS10.8\lib\site-packages\sklearn\__init__.py", line 64, in <module>
    from .base import clone
  File "C:\Python27\ArcGIS10.8\lib\site-packages\sklearn\base.py", line 13, in <module>
    from .utils.fixes import signature
  File "C:\Python27\ArcGIS10.8\lib\site-packages\sklearn\utils\__init__.py", line 12, in <module>
    from .murmurhash import murmurhash3_32
  File "__init__.pxd", line 164, in init sklearn.utils.murmurhash
ValueError: numpy.dtype has the wrong size, try recompiling. Expected 52, got 56

Failed to execute (LOGr).
Failed at Mon Mar 21 21:31:00 2022 (Elapsed Time: 0.12 seconds)

Please check the version of Scikit-learn. Python 2.7 supports the versions of Scikit-learn 0.20 and earlier. In this study, the version of 0.20.2 was installed.


test daily make in postsubmit

test make command used in daily builds in postsubmit
use latest istio-builder for building istio

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: rkpagadala
If they are not already assigned, you can assign the PR to them by writing /assign @rkpagadala in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

prow/OWNERS
release/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@rkpagadala: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-bookInfoTests-v1alpha3.sh
c11ed4dc319fb87e8a02a3067d7d1db8271a9338
link
/test e2e-bookInfo-envoyv2-v1alpha3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@rkpagadala: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-bookInfoTests-v1alpha3.sh
c11ed4dc319fb87e8a02a3067d7d1db8271a9338
link
/test e2e-bookInfo-envoyv2-v1alpha3

prow/e2e-mixer-no_auth.sh
7e65a17fad8d34404de218120c4ce42dc67bb997
link
/test e2e-mixer-no_auth

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@rkpagadala: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-mixer-no_auth.sh
7e65a17fad8d34404de218120c4ce42dc67bb997
link
/test e2e-mixer-no_auth

prow/e2e-bookInfoTests-v1alpha3.sh
7e65a17fad8d34404de218120c4ce42dc67bb997
link
/test e2e-bookInfo-envoyv2-v1alpha3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test e2e-mixer-no_auth
/test e2e-bookInfo-envoyv2-v1alpha3

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: yutongz
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

prow/OWNERS [yutongz]
release/OWNERS [yutongz]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Battery monitoring?

Feature Request

How difficult would be to extend the battery-related API to include a callback function that will fire when battery state changes? That is, plugged/unplugged, power saving / normal, critically low warning, etc..
Why it is needed
If there are code paths based on if the device is charging or not, it is not ideal to poll for the battery status periodically, but rather get an event when it changes.

Possible implementation

Code sample

https://github.com/react-native-community/react-native-device-info/blob/master/README.md#hooks--events :thinking:

Totally did not see that! Thanks!


[Feature] Make this extension available for VSCode web

I'm often using VSCode web on GitHub and would love to have the same feature available. Currently, this extension can't be installed?

what error are you seeing? it's working for me on codespaces

@meganrogge Not working for repos open with . press still.


Validating Verbose Output in Unit Testing

Verbose messages are how we convey information to the end user. Often time the verbose messages combined with the error messages allow the end user to more easily troubleshoot their configurations.
Additionally, with the focus on localization, it might be smart to test the localization paths.
The question for the team is, should we start testing verbose output? If so, how should testing be conducted?

I agree that testing if the verbose output is actually correct would help test so that changes does not  remove much need information for the user.
But how would we go about mocking this. If using Write-Verbose we could mock that, but we could only mock it by passing a parameter filter with the actual message we are expecting, and the assert that mock.
InModuleScope {
    $mockWriteVerbose_UsingPath = {
        $Message -eq ($script:localizedData.UsingPath `
                        -f (Join-Path -Path $testParameters.SourcePath -ChildPath 'setup.exe'))
    }

    Describe 'Get-TargetResource' {
        Context 'When the system is not in desired state' {
            BeforeEach {
                $testParameters += @{
                    InstanceName = $mockDefaultInstance_InstanceName
                    SourceCredential = $null
                    SourcePath = $mockSourcePath
                }

                Mock -CommandName Write-Verbose -ParameterFilter $mockWriteVerbose_UsingPath
            }

            It 'Should return the same values as passed as parameters' {
                $result = Get-TargetResource @testParameters
                $result.InstanceName | Should Be $testParameters.InstanceName

                Assert-MockCalled -CommandName Write-Verbose -Exactly -Times 1 `
                    -ParameterFilter $mockWriteVerbose_UsingPath -Scope It
            }
        }
    }
}

But it would be simpler to have a helper function that is writing verbose messages, which then could be mocked, which could be mocked the same way as above, but then the parameter filter only need to be, for example LocalizationStringKey which just evaluates the key UsingPath. But that would not test the actual verbose message.
Also I think we need to add issue #236 before we starting to get localization in different languages. This would be able to test so that strings has a standardized serial number of some sort (but maybe that test could be a common test).
This should also apply to Write-Warning and Write-Debug.

I would actually question the value we would get from testing the output to the user here. Surely if you can test that certain cmdlets get fired off (using Assert-Mock) that should tell you that the code paths are being followed as expected - what value does testing a verbose call add on top of that? Just playing devils advocate here :)

There may also be boundary cases where ConvertTo-Json is called on a null
as part of a message:
Write-Verbose "your obj is $(ConvertTo-Json $obj)"
This would actually break your execution.  This leads to more justificaton
to log objects and messages through a helper.  Testing loggers is not
useful, but testing that the implementation does not break functionality is
important.   I think that static analysis of Write-Verbose or other log
facilities would be more helpful than unit tests.
Regards,
Scottley
On Jul 5, 2017 7:39 PM, "Brian Farnhill"<EMAIL_ADDRESS>wrote:

I would actually question the value we would get from testing the output
to the user here. Surely if you can test that certain cmdlets get fired off
(using Assert-Mock) that should tell you that the code paths are being
followed as expected - what value does testing a verbose call add on top of
that? Just playing devils advocate here :)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/PowerShell/DscResources/issues/290#issuecomment-313279554,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHhqN_am08FT8tdqAuoaCyudBVkMS8vzks5sLEjVgaJpZM4OMz1M
.

@randomnote1 Cool idea.
@scottleyg Makes a good point. Sometimes we do find bugs because we forgot to run with -Verbose. Most frequent one is that we forgot to add a localized string that we are trying to reference.
We could just add -Verbose to all the tests. It would actually be good to have the verbose output on in the automated tests for debugging purposes, but so. much. text. Maybe we could redirect the verbose output to a file that AppVeyor posts as a result rather than in the console.

I've been trying to convert all tests to call *-TargetResource etc with -Verbose because I do find it helpful - even if it is a lot of text :grin:

@PlagueHO @kwirkykat Yea there is no way we could turn that on for SharePointDsc - we already have enough text to cause issues with loading and scrolling on the page in AppVeyor, so lets try the redirection thing first ;)

@BrianFarnhill - that is fair enough! I only switch it on in the case of modules where there is only a few resources.

I see these options for unit tests (integration test template is already suggesting to use -Verbose)

Add -Verbose to unit test template. Then it's up to maintainer to enforce or not.
Option 1 plus update template to also suggest adding tests like we do for error messages to test that the correct error messages is thrown. We could add tests to assert that Write-Verbose is called with the correct localized messages. Then it's up to maintainer to enforce or not.

To actually test verbose messages I'm in favor of 2.


Clean up run()

Two main things:

I removed the support for calling run() with multiple args as the command to run: run('git', 'log') instead of run(['git', 'log']). Nothing used that syntax anymore.
I renamed the input argument to input_data

It's got a much cleaner function signature now.

Coverage increased (+0.1%) to 50.292% when pulling 60366ef039d6fe8de3a749099f61696731ffa0e4 on clean-up-run into 94a2ce9556a35a1287e2b3088ee8718462d249eb on master.


Handling quotations, commas and spaces in the input string

Tested with these examples
1. alpha,beta,gamma,alpha

2. alpha, beta, gamma, alpha

3. "alpha","beta","gamma","alpha"

4. 'alpha','beta','gamma','alpha'

5. "alpha", "beta", "gamma", "alpha"

6. 'alpha', 'beta', 'gamma', 'alpha'

7. alpha beta gamma alpha

8.  alpha
    beta
    gamma
    alpha

9.  "alpha",
    "beta",
    "gamma",
    "alpha"

Hey, I have created a PR for this issue and its deployed on vercel.


RegionSpec fails intermittently

When it is run alone it behaves well, but as part of the whole suite it sometimes fails:
- must must keep Coordinator Updated during partition failure & restart scenario *** FAILED ***
  java.lang.AssertionError: assertion failed: timeout 6 seconds expired:
  at scala.Predef$.assert(Predef.scala:170)
  at akka.testkit.TestKitBase$class.poll$1(TestKit.scala:276)
  at akka.testkit.TestKitBase$class.awaitCond(TestKit.scala:282)
  at akka.testkit.TestKit.awaitCond(TestKit.scala:814)
  at io.amient.affinity.core.actor.RegionSpec$$anonfun$1$$anonfun$apply$mcV$sp$1.apply$mcV$sp(RegionSpec.scala:72)
  at io.amient.affinity.core.actor.RegionSpec$$anonfun$1$$anonfun$apply$mcV$sp$1.apply(RegionSpec.scala:46)
  at io.amient.affinity.core.actor.RegionSpec$$anonfun$1$$anonfun$apply$mcV$sp$1.apply(RegionSpec.scala:46)
  at org.scalatest.Transformer$$anonfun$apply$1.apply$mcV$sp(Transformer.scala:22)
  at org.scalatest.OutcomeOf$class.outcomeOf(OutcomeOf.scala:85)
  at org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104)

This may have been caused by a flaky mechanism for registering gateways that do not have http interface which was already fixed so if this issue stops occurring close it.


Prevent multiple precache manifest in webpack development

R: @jeffposnick @addyosmani @gauntface
Fixes https://github.com/GoogleChrome/workbox/issues/1267
Description of what's changed/fixed.
When in Webpack development mode where, regardless of using Webpack dev server, if Webpack watches the source change and re-compiles accordingly, the bug manifests itself as:

precache-mainfest.js & workbox-sw path will be included multiple times, within importScripts from the generated service worker script.
It appears in both InjectManifest and GenerateSW

Could this be due to a flakey integration test?

Coverage increased (+0.008%) to 89.23% when pulling 3c49f1932b7468ba175abe239aa74d571ccef9df on raejin:prevent-multiple-precache-manifest-in-webpack-development into 86c7ef7a8b6fe768c7fc52ba9e18aed8dee338b1 on GoogleChrome:v3.


[cassandra] Expose timeout and consistency level configuration

What changed?
Allow to change timeout and consistency levels for Cassandra connections.
Default hardcoded values will be applied if no values are provided in configuration

Why?
There was no way to change hard-coded defaults.

How did you test it?

Potential risks

Release notes

Documentation Changes

Pull Request Test Coverage Report for Build 018dc72a-2791-45de-b829-cb8e336c953b
Details

-52 of 94 (44.68%)  changed or added relevant lines in 2 files are covered.
39 unchanged lines in 11 files lost coverage.
Overall coverage increased (+0.02%) to 62.753%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

common/persistence/nosql/nosqlplugin/cassandra/gocql/consistency.go
26
78
33.33%

Files with Coverage Reduction
New Missed Lines
%

common/membership/hashring.go
2
82.23%

common/persistence/sql/sqlplugin/mysql/db.go
2
83.33%

common/persistence/sql/sqlplugin/mysql/task.go
2
73.68%

common/task/fifo_task_scheduler.go
2
85.57%

common/task/weighted_round_robin_task_scheduler.go
2
88.06%

service/history/task/fetcher.go
2
85.05%

service/history/task/transfer_standby_task_executor.go
2
87.42%

service/matching/matcher.go
2
91.41%

common/persistence/statsComputer.go
3
94.64%

service/history/task/cross_cluster_task_processor.go
8
80.79%

Totals

Change from base Build 018dc657-a14c-4590-b1fe-e58ab1aec56c:
0.02%

Covered Lines:
92721

Relevant Lines:
147756

💛  - Coveralls


Function.apply should handle callable objects for --strong

Dart2js implementation of Function.apply doesn't handle callable object for --strong where such classes no longer implement Function:
class C { call() => 42; }
method(o) => Function.apply(o, []);
main() => method(new C());

corelib_2/apply_test/01 fails because of this.

The problem is indeed in the test. The test should be changed to test two things:

That the above test fails because o is not assignable to Function,
and if o has type C, then the tear-off gets passed and the call works.

The semantics of function invocation f(args) is currently specified to involve (1) some notion of invocation of a function object on args (this is allowed to differ from invoking an instance method named call on args), and (2) if we're invoking some non-function object then f(args) is executed as the instance method invocation f.call(args).
This ensures that dynamic invocation will apply both the (possibly primitive) function object invocation and the .call instance method invocation (such that callable objects will still work in the dynamic case).
But we have no special exceptions for statically checked calls: If a statically checked call site ends up making an attempt to invoke a callable object, it must be able to invoke the .call method rather than executing a primitive function invocation (if there is any difference, I'm just saying that it's allowed to make those two things different).
It just happens to be true that no callable object can have a subtype of any function type, so, by heap and expression soundness, invocations of a function with a function type can go ahead an use primitive function invocation.
For invocations of an instance of type Function, we may be able to establish certain invariants (like: "it could be a callable object or a function object" or (more likely, in the near future): "it is definitely a function object"), and then the semantics should correspond to that: If it can only be a function object then primitive invocation can be used and the callable object will be an error; if it can be both then both modes of invocation must be attempted.
For consistency, Function.apply should be as capable as the dynamic invocation (and, in principle, typed invocations are equally capable), so if only function objects can have type Function, Function.apply should stop requiring its first argument to be a Function.
In other words, it is a reasonable expectation that we will have the following:
class C { call(x) => x; }
main() {
  dynamic d = new C();
  print(d(42)); // Works, prints '42'.
  Function.apply(d, [42]); // Should work and print '42',
  // .. simply because the same as a dynamic function invocation _does_ work.
}

It can be construed to be a breaking change to make it Function.apply(Object d, ...), but we don't usually consider missing failures to be breakage, so we should be able to make that change.


Add support for CSS custom property

Currently, there is no way I can animate CSS custom property with anime.js.
div {
  --progress: 100%;
  transform: scale(var(--progress));
}

You can use this to set CSS custom property:
el.style.setProperty('--progress', '40%')

has anyone found a workaround for this feature?

Hi,
I was just searching for this very thing and I came across this post, I this this would be an awesome feature.
I am using Anime in my app and it works really well.

Note: it's common to define vars in the pseudoclass :root.

Vars can be defined in any element, I am using mine in SVG to set the fill colour, I have frame and I want to animate from one colour to the next. eg:
anime({
  targets: 'svg path',
  '--fill-colour': [
    { value: 'blue', duration: 1000, delay: 500 },
    { value: 'red', duration: 1000, delay: 500 }
  ],
  easing: 'easeOutElastic(1, .8)',
  loop: true
});

Hey all, I happened to need this feature too, and set up a helper function to sync values set by anime to a target element:
const getCssVarProxy = (targetElement, ...varNames) => {
  // Declare object to proxy
  let proxyTarget = { };

  // Capture initial values
  varNames.forEach(varName => proxyTarget[varName] = getComputedStyle(targetElement).getPropertyValue(varName));

  // Create proxy to update element's CSS vars
  return new Proxy(proxyTarget, {
    set: (targetObject, property, value) => {
      targetElement.style.setProperty(property, value);
      return true;
    }
  });
};

And usage is like this:
let elementProxy = getCssVarProxy(document.querySelector('.class-name'), '--elementX', '--elementY', '--elementScale');
anime({ targets: elementProxy, duration: 1000, '--elementX': 200, '--elementY': 400, '--elementScale': 1.5 });

– where --elementX, --elementY and --elementScale are declared somewhere in the page style and referenced by the element's style rules.
I put a minimal demo up here: https://codepen.io/admvx/pen/wvrMbwN

This is coming in V4 (finishing writing tests and new documentation right now).

This is coming in V4 (finishing writing tests and new documentation right now).

Yessss! I always prefer Anime over GSAP. I find it more user-friendly and light. And I seriously hope you can keep Anime.js growing by expanding its capabilities and keeping size to a minimum. :D

Personally, I found this set up to be the easiest, pre-4.0.0:
const header = headerRef.current

const variables = {
  twBgOpacity: '100%',
}

anime({
  targets: variables,
  twBgOpacity: ['100%', '0%'],
  easing: 'easeOutQuad',
  duration: 200,
  update: () => {
    header.style.setProperty('--tw-bg-opacity', variables.twBgOpacity)
  },
})

I'm using React and Tailwind CSS. Without React, header variable should be const header = document.querySelector('header') in my case.
I'm not sure if this is helpful to anyone, but I figured I'd put it here, since just in case.


Consumed latest changes from core, use QueryPhaseSearcherWrapper as parent class for Hybrid QPS

Description
Need to use QueryPhaseSearcherWrapper as this is core new public implementation of the QueryPhaseSearcher. This will be released in core 2.11, came with this PR.
Check List

[X] All tests pass
[X] Commits are signed as per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@martin-gaievski should we have a check with concurrent segment search enabled? what do you think?

@martin-gaievski should we have a check with concurrent segment search enabled? what do you think?

we definitely need to check that, do you mean check manually or add a test for this?

@martin-gaievski should we have a check with concurrent segment search enabled? what do you think?

I believe, it should be safe to assume that concurrent search is disabled.

@martin-gaievski should we have a check with concurrent segment search enabled? what do you think?

we definitely need to check that, do you mean check manually or add a test for this?

The thing is concurrent search is not GA, I think we can skip for now. But Last when I checked by enabling the concurrent search our tests failed. Now I am hoping when concurrent search will become GA they will ask all plugins to validate.


Optionally install Eqwalizer / ELP

eqwalizer is a type checker for Erlang.
ELP or Erlang Language Platform has a powerful CLI that can be used as a linter to detect (and autofix) unused macros, unused headers and other bad smells in code.
See, for example, usages in RabbitMQ and brod.
It would be great to have both eqwalizer and ELP as optional installations for the setup-beam action, as this would enable users to be able to perform validation for their code base during CI with minimal effort.
Binary executables are provided for both Linux and Mac. Installation from source is documented here.

👋 I'm not sure the action should support this. We're basically an installer for pre-compiled elements that support code development, like the compilers and runtimes. Having this here would open the door to start having rebar3_lint, rebar3_format/erlfmt, rebar3_hank, etc. since these are all lib.s (even if not pre-compiled and Erlang/Elixir -ish). Fwiw, for example, we also don't install dialyxir as a means to ease CI on Elixir projects. Maybe I'm missing something on your intent, but I feel this can be easily covered with an example Gist on how to do it.

👋 I'm not sure the action should support this 😄, but I'm listening. We're basically an installer for pre-compiled elements that support code development, like the compilers and runtimes. Having this here would, maybe, open the door to start having rebar3_lint, rebar3_format/erlfmt, rebar3_hank, etc. since these are all lib.s that support development (even if not pre-compiled and Erlang/Elixir -ish). Fwiw, for example, we also don't install dialyxir as a means to ease CI on Elixir projects. Maybe I'm missing something in your intent, but I feel this can be easily covered with an example Gist on how to do it (?)

Maybe having a separate action for those could be a good compromise?

I believe so, and the same for Eqwalizer / ELP. What you're getting from setup-beam is a thin layer around "grab this version of this tool and install it", but focused on BEAM and higher-level languages. And I'd be Ok to participate in implementation or help out if required.

Some help on this would be terrific! I have never contributed an action before but I can help with the ELP parts, what's the best way to make this happen?

By separate action I mean a separate repo. Is that what you were thinking, too? I think we could start by having a name for the action, and a repo. (@starbelly would be able to create a repo., I can't - or maybe even you, I see you in the org.s members, but don't know if you're an admin). Then I could create a small skeleton for it, and you'd fill in the blanks. 😄

erlef/setup-elp sounds like the most obvious one. A skeleton would help!

Also yes, it looks like I can create repos O_o
Not sure where the super-power comes from.

Not sure where the super-power comes from.

You're a member of the erlef org. and possibly also an admin. 😄

Once you create the repo. I can upload a minimal action to it (I created something yesterday, already); I think I just need to be an external collaborator (to go fast), or otherwise I need to pull request. And then we can discuss more details there, like the interface and where the assets are fetched from, etc.

I'm apparently a member of one of the teams. But I don't want to abuse my powers since I don't know if that's intentional. Let's wait until @starbelly gives a go-ahead.

In the meantime, Roberto, could you tell me:

what are the expected inputs? Maybe it's just the versions of the tools? And are they semver or something else?
where to obtain the tools from (and what architectures are available)?
what outputs would you expect the action to make available?

I like this idea 😄 We just need it to run through build-and-packaging to see what the general thought is. At the start, we made a decision that we didn't want to have too many projects under the umbrella of the erlef as people didn't want this to end up like the apache foundation (where projects go to die). I don't think that's the case here what so ever, but it would be remiss of me not run it by the working group first.

It could be added under https://github.com/erlef/gh-actions/tree/main/stable, which was the intent of the repo.
I am trying to prove a few things across multiple Elixir (sorry, I do not have much Erlang experience in CI) before I start moving some common setups.

It could be added under https://github.com/erlef/gh-actions/tree/main/stable, which was the intent of the repo.
Before moving some typical setups, I am trying to prove a few things across multiple Elixir (sorry, I only have a little Erlang experience in CI); all I would ask is to be as generic but tackle the 80/20 situation.
- use<EMAIL_ADDRESS>

That would be perfect. We could also publish it in a private repo (@paulo-ferraz-oliveira's ?) for the time being and eventually transfer it to the erlef once it goes through the build-and-package working group.

What are the expected inputs? Maybe it's just the versions of the tools? And are they semver or something else?

We can probably start with the ELP version only. Eqwalizer is packaged in there. The version has the format YYYY-MM-DD or YYYY-MM-DD_N if there are multiple releases per day. No semantic versioning.

Where to obtain the tools from (and what architectures are available)?

Binaries are published as release assets. Example here.
We currently provide binaries for Linux (x86_64 and aarch64) and Mac x64_64. There's also a Mac aarch64 but I think the eqwalizer artifact is still for x64_64 in there (we should fix that, but I believe there was no runner available for that platform). All artifacts are currently available for OTP 25 and OTP 26.
We probably need to depend on setup-graalvm to be able to run Eqwalizer.
All the magic happens here.
Installation instructions from binary are also available here.

What outputs would you expect the action to make available?

I would expect the elp CI to be available in the pipeline so that commands such as elp eqwalize and elp parse-elp can be used to perform, respectively, type checking and linting (similar to rebar3 dialyzer and rebar3 elvis.

@robertoaloi  I think people think this is a good idea 😄 I can go ahead and make a repo, are you still wanting to go with setup-elp? Just let me know

@starbelly setup-elp would be perfect!

@robertoaloi done. I kicked it off as private, feel free to change at your digression 😄

@starbelly Thanks!
@paulo-ferraz-oliveira is the one who will probably publish the first skeleton. Do you have access to it?

Do you have access to it?

Seems not 😢

Moved to the reference mentioned above.


Spot for "3D app launcher" doesnt accept any files (glb or gltf)

The spot in the build window and the spot under build settings, it seems it doesnt accept any glb or gltf.
Tested with different glbs and gltf.
Is there an example .glb files that works?

Unity Version 2019.4.21f1

MRTK Version v2.61

HoloLens 2

Yes it works with an empty project. In the other project, the trilib importer is installed and generates a different import file.
I have to further check with trilib.
Thanks for the response!


Refactoring

Thanks for this, but we're going to decline for the time being; if this convention becomes standard in the rust ecosystem we are happy to revisit, but for the time being the advantages do not clearly outweigh the disadvantages.


Root route component is rendered for non-matching-route path but not for missing resource

Which project does this relate to?
Router
Describe the bug
The component defined in the rootRoute is rendered when a non-matching path riggers the rendering of the notFoundComponent but it is not rendered when a child route trows a notFound() value in its loader.
Your Example Website or App
https://stackblitz.com/edit/github-yk78pg-lfpyxu?file=src%2Fmain.tsx
Steps to Reproduce the Bug or Issue

define a root route with component and notFoundComponent
navigate to a non-matching path
-> the component as well as the notFoundComponent gets rendered

Expected behavior
I would expect the behavior to be the same in both scenarios.
Screenshots or Videos
No response
Platform

Version: 1.52.5

Additional context
No response

Please attach a valid minimal reproduction showing off the issue in question.

I’ve used the quickstart-code-based as a template. Here is the adjusted version that demonstrates the issue https://stackblitz.com/edit/github-bfat87?file=src%2Fmain.tsx
Steps to reproduce:

In the browser when you are on the home page
click the "About" link
-> you see the not found page without menu
click on "back to home"
click on "Non-Existing Page" link in the menu
-> you will see the not-found page but this time with menu

Throwing a notFound error in a route's loader, outputs the following route-tree.
<root.NotFoundComponent />

Navigating to a route that DOES NOT EXISTS in the route-tree, results in this route-tree.
<root.Component>
  <root.NotFoundComponent />
</root.Component>

Note that this configuration does not have a defaultNotFoundComponent.
By default the Router has the setting of notFoundMode: 'fuzzy', where the router traverses up the tree until it finds the nearest notFoundComponent (which in this case would be the one configured on the root route).

Thanks for the further investigation and writing a test-case @SeanCassiere. I haven’t thought about the non-async case.
My expected behavior would be that the behavior is consistent across all scenarios, so either the NotFoundComponent should be always wrapped or never.


Godot 4 Beta 17: Shader doesn't compute after project reload

Godot version
4.0 Beta 17
System information
Windows 10 Pro w/ AMD Radeon R7 Graphics, using Forward+
Issue description
A shader I wrote works perfectly until I reload the editor
Steps to reproduce

Make a Mesh
Within the Mesh, create a StandardMaterial with an albedo texture
convert the StandardMaterial to a ShaderMaterial
Observe that the shader works correctly
Save and Reload the project
Observe that the shader no longer works correctly

Minimal reproduction project
Open and follow the steps. A mesh and albedo texture are provided.
project.zip

Traced this back to Beta 15. So it is most likely a regression from https://github.com/godotengine/godot/pull/71797

What happens is that converting any material to shader still sends the right uniforms to the GPU but the parameters don't get the previous values. So if you save the scene and reopen it, all will have default values and not work anymore.

Yes


Support for progress bar

It would be very nice if this lib have an extensions method for enumerable that display a dynamic progressbar.
var list = new List<int> {1,2,3,4};
foreach(var i un list.WithProgess("Caption"))
{
    // Do slow stuff
}

Hi @latop2604, thanks for the suggestion!
"Live" controls are in my roadmap, but I think I'll need some time (and suggestions from the community) while tinkering with Progress Bars for Dumpify.
For example, IEnumerable<T> and IAsyncEnumerable<T> don't have a notion of Count, therefore I wouldn't be able to know the current status. Also, we could have infinite IEnumerable<T> and IAsyncEnumerable<T>, without us knowing about it beforehand.
We could though implement it for everything ICollection<T> which does have a Count property, but ICollection<T> is not lazy, so I'm not sure that this feature is needed in that situation.
What do you think?

On my side I still use IEnumerable but throw when we don't have the size.
They are many ways to get it from an IEnumerable. They more or less listed in the linq Count extension method (see screenshot below).
We can aslo use the extension method TryGetNonEnumeratedCount. But only for net 6+
The concern I have for this feature is where the progressbar will be displayed. I'm used to LinqPad where you can have many progressbar active and you can scroll the view to see each of them. But I don't know if it's possible with spectre.

Sorry for the delay in my response.
Using a Progress Bar requires Live Display. Those are in the roadmap, I have a few ideas for Live Display as well, and your idea about Progress can be part of them.
Let's discuss this Issue when we reach that point, I'm planning to do under the hood changes that will help us integrate Live Display.