Project option: REPLACE_IGNITION_INCLUDE_PATH

🎉 New feature
Helps with https://github.com/ignitionrobotics/sdformat/issues/181
Summary
Currently all cmake projects that use IgnConfigureProject are required to use include paths that start with ignition/${IGN_DESIGNATION} (i.e. ignition/math, ignition/transport). We would like to use ign-cmake2 with libsdformat, but its cmake project name and include paths don't follow this pattern. This pull request adds an option to IgnConfigureProject to allow more flexibility:

INCLUDE_DIR: option to specify the project include paths, as an alternative to ignition/${IGN_DESIGNATION}

Test it
Look at the examples/no_ignition_prefix folder and build with cmake .. -DBUILDSYSTEM_TESTING=ON && make -j
Checklist

[X] Signed all commits for DCO
[X] Added tests
[X] Added example and/or tutorial
[X] Updated documentation (as needed)
[ ] Updated migration guide (as needed)
[X] codecheck passed (See contributing)
[X] All tests passed (See test coverage)
[ ] While waiting for a review on your PR, please help review another open pull request to support the maintainers

Note to maintainers: Remember to use Squash-Merge

I'm trying to migrate sdformat to ign-cmake, I found that there are a few more things which are not compatible

headers are still installed to ignition/ prefix, it also enforces the ${IGN_DESIGNATION}${PROJECT_VERSION_MAJOR} pattern, while sdformat uses a slightly different pattern sdformat-${SDF_VERSION} (there is a hypen). https://github.com/scpeters/ign-cmake/blob/787cebd91c0ba16562ea6d545b86d5a87d90775c/cmake/IgnPackaging.cmake#L106.
The master header is named ${IGN_DESIGNATION}.hh, where IGN_DESIGNATION is derived from the project name, which in sdformat's case is sdformat, but the master header of sdformat is sdf.hh. https://github.com/scpeters/ign-cmake/blob/787cebd91c0ba16562ea6d545b86d5a87d90775c/cmake/IgnUtils.cmake#L724.

I haven't gotten around to migrating tests and docs yet, I will report more issues as I find them.

I'm trying to migrate sdformat to ign-cmake, I found that there are a few more things which are not compatible

headers are still installed to ignition/ prefix, it also enforces the ${IGN_DESIGNATION}${PROJECT_VERSION_MAJOR} pattern, while sdformat uses a slightly different pattern sdformat-${SDF_VERSION} (there is a hypen). https://github.com/scpeters/ign-cmake/blob/787cebd91c0ba16562ea6d545b86d5a87d90775c/cmake/IgnPackaging.cmake#L106.
The master header is named ${IGN_DESIGNATION}.hh, where IGN_DESIGNATION is derived from the project name, which in sdformat's case is sdformat, but the master header of sdformat is sdf.hh. https://github.com/scpeters/ign-cmake/blob/787cebd91c0ba16562ea6d545b86d5a87d90775c/cmake/IgnUtils.cmake#L724.
Headers are installed to ${IGN_INCLUDE_INSTALL_DIR_FULL}/${PROJECT_INCLUDE_DIR}, and the master header is installed one directory up. But sdformat expects the master header to be in the same directory as the other headers.
The config header must be named config.hh, but sdf's config header is named sdf_config.h.

I haven't gotten around to migrating tests and docs yet, I will report more issues as I find them.

I'd like to see if reviewers are ok with this PR as is in its partially useful state or if they want to try to address all of this at. once
cc @adlarkin

Thanks @scpeters and @koonpeng for the things you've discovered so far! Regarding how to proceed with addressing the issues mentioned above, I think we can take the following approach:

One PR that gives users options to specify the include directories that are searched for and installed
One PR that provides flexibility in specifying the cmake prefix project name
One PR that addresses the master header issues (name of the master header and where it's installed)
One PR that allows configuration of the name of the config header

Having separate, smaller PRs that focus on solving one issue in particular will make the review process easier, and also give us a better way to track changes being made. If there are no objections to the approach I've suggested, then this PR will need to be broken into 2 PRs because right now, this PR solves part of point 1 (searched include directories) and point 2 above. If help is needed in creating more PRs that solve the remaining issues found by @koonpeng, let me know, and I can help open a few.

2\. One PR that provides flexibility in specifying the cmake prefix project name

I've split that feature out from this PR into https://github.com/ignitionrobotics/ign-cmake/pull/191
I can rebase this branch after that is merged, if that is not too presumptuous

I can rebase this branch after that is merged, if that is not too presumptuous

I'm okay with you waiting for #191 and then rebasing. Would you mind updating the PR of this title since you put the NO_IGNITION_PREFIX portion in #191?

I can rebase this branch after that is merged, if that is not too presumptuous

I'm okay with you waiting for #191 and then rebasing. Would you mind updating the PR of this title since you put the NO_IGNITION_PREFIX portion in #191?

done

I can rebase this branch after that is merged, if that is not too presumptuous

I'm okay with you waiting for #191 and then rebasing. Would you mind updating the PR of this title since you put the NO_IGNITION_PREFIX portion in #191?

done

just rebased

Thanks @scpeters and @koonpeng for the things you've discovered so far! Regarding how to proceed with addressing the issues mentioned above, I think we can take the following approach:
1. One PR that gives users options to specify the include directories that are searched for and installed

2. One PR that provides flexibility in specifying the cmake prefix project name

3. One PR that addresses the master header issues (name of the master header and where it's installed)

4. One PR that allows configuration of the name of the config header

Having separate, smaller PRs that focus on solving one issue in particular will make the review process easier, and also give us a better way to track changes being made. If there are no objections to the approach I've suggested, then this PR will need to be broken into 2 PRs because right now, this PR solves part of point 1 (searched include directories) and point 2 above. If help is needed in creating more PRs that solve the remaining issues found by @koonpeng, let me know, and I can help open a few.

I've added a checklist in https://github.com/ignitionrobotics/sdformat/issues/181#issuecomment-962116041 with an additional entry for the prefix to the macros in Export.hh

diff --git a/cmake/ign_auto_headers.hh.in b/cmake/ign_auto_headers.hh.in
index 42fc964..a078c63 100644
--- a/cmake/ign_auto_headers.hh.in
+++ b/cmake/ign_auto_headers.hh.in
@@ -19,5 +19,5 @@
 // This file is automatically generated by CMake. Changes should instead be
 // made to cmake/ign_auto_headers.hh.in in ignition-cmake

-#include <ignition/<EMAIL_ADDRESS>+#include <<EMAIL_ADDRESS> ${ign_headers}

Fixes config.hh still referencing ignition/ prefix.

Sorry to jump in a bit late.

* `INCLUDE_DIR`: option to specify the project include paths, as an alternative to `ignition/${IGN_DESIGNATION}`

INCLUDE_DIR in CMake drives my mind immediately to INCLUDE_DIRECTORIES even if we have it under the context of ign_configure_project. Maybe we can be a bit more verbose to help code reading with something like: CUSTOM_INCLUDE_DIR_PATH or REPLACE_IGNITION_INCLUDE_PATH or  other more explicit name about what we are doing with the parameter.

@scpeters would you mind addressing the comments from @j-rivero and @koonpeng above? For the config.hh fix, it would be nice to update the example to show that this file can be found without the ignition prefix.

Fixes config.hh still referencing ignition/ prefix.

nice catch! fixed in https://github.com/ignitionrobotics/ign-cmake/pull/190/commits/7c12783f43fc414a2d90a6ea193f8769b553b677

Sorry to jump in a bit late.

* `INCLUDE_DIR`: option to specify the project include paths, as an alternative to `ignition/${IGN_DESIGNATION}`

INCLUDE_DIR in CMake drives my mind immediately to INCLUDE_DIRECTORIES even if we have it under the context of ign_configure_project. Maybe we can be a bit more verbose to help code reading with something like: CUSTOM_INCLUDE_DIR_PATH or REPLACE_IGNITION_INCLUDE_PATH or other more explicit name about what we are doing with the parameter.

I'll go with REPLACE_IGNITION_INCLUDE_PATH as the ign_configure_project parameter, but I think I'll keep PROJECT_INCLUDE_DIR as the internal variable name

Sorry to jump in a bit late.

* `INCLUDE_DIR`: option to specify the project include paths, as an alternative to `ignition/${IGN_DESIGNATION}`

INCLUDE_DIR in CMake drives my mind immediately to INCLUDE_DIRECTORIES even if we have it under the context of ign_configure_project. Maybe we can be a bit more verbose to help code reading with something like: CUSTOM_INCLUDE_DIR_PATH or REPLACE_IGNITION_INCLUDE_PATH or other more explicit name about what we are doing with the parameter.

I'll go with REPLACE_IGNITION_INCLUDE_PATH as the ign_configure_project parameter, but I think I'll keep PROJECT_INCLUDE_DIR as the internal variable name

changed in https://github.com/ignitionrobotics/ign-cmake/pull/190/commits/6c2ffe57a0573400532dd45c9da01bdec0f96b2a. It's easy to change the name now, so please speak up now if you have a better idea; it won't hurt my feelings

changed in 6c2ffe5. It's easy to change the name now, so please speak up now if you have a better idea; it won't hurt my feelings

The change looks good to me, thanks! Since the internal variable was there before I think is fine to leave as it is.

@scpeters would you mind addressing the comments from @j-rivero and @koonpeng above? For the config.hh fix, it would be nice to update the example to show that this file can be found without the ignition prefix.

https://github.com/ignitionrobotics/ign-cmake/pull/190/commits/6787937391ec245733ea0fc35f13e8f3e3c09af7: I've added the ign_install_all_headers to the example and include the generated headers in AlmostEmpty.cc to confirm their location

This pull request has been mentioned on Gazebo Community. There might be relevant details there:
https://community.gazebosim.org/t/new-ignition-releases-2022-01-10/1228/1


Incorrect behaviour after device rotation

Thanks for the great library! I've been using it a lot. But lately found a bug with rotation
Describe the bug

Rotate your device to landscape orientation
Close the modal sheet
Rotate the device to portrait

Minimal reproduce-able code
I used the code entirely from the examples
Expected behavior
The bottom sheet should be closed after rotation
Target version

Environment: iOS
Version: 16, 17

https://github.com/lucaszischka/BottomSheet/assets/63232549/80af5a30-28a1-45d9-bdc8-c6331fa7409a

Same thing occurs for myself as well. Were there any solutions to this?


refactor: Remove generic options parameter from OperationBase

Add a builtOptions getter that inherits options from the parent class.
NODE-2815
Description
In order to make tracing options sensible I went with this idea of inheriting the super class's builtOptions which are frozen. I'll put this small start in review to get some feedback going on how we like this methodology and I can start expanding this to other operations.
Some of the bsonOptions work is duplicated in here to get the code to work, but I will pull that in from master when its there.
Look out for a parallel PR to this that works on removing executeLegacyOperation.

Superseded by #2659


Can't compile typescript - "Cannot find name 'Exclude"

I get the following error message when I run tsc:
node_modules/graphql-yoga/dist/src/types.d.ts(12,42): error TS2304: Cannot find name 'Exclude'.
I'm using version 1.13.1 of the library. Downgrading to 1.6.1 fixes the issue.

@artemzakharov can you provide a minimal example to reproduce the problem?

https://github.com/artemzakharov/bugtest.git
It's just a boilerplate project created with graphql create, using the typescript-advanced template.

I just want to confirm that I too have the same issue, just came across it when attempting to deploy.

Same error for me with the latest "graphql-yoga" version
$ tsc && typedoc --out docs --target es6 --theme minimal --mode file src

Using TypeScript 2.7.2 from /usr/src/app/node_modules/typedoc/node_modules/typescript/lib
Error: /usr/src/app/node_modules/graphql-yoga/dist/src/types.d.ts(11)
 Cannot find name 'Exclude'.

@hyrecar To confirm upgrading typescript fixed this issue for me also.

+1 for confirmation of both issue and upgrade as solution

Thanks!


Support for Maldives Payment Gateway

I'll close this since it has been more than a year without activity


Default playlist/queue loop

Would love the option to enable a default playlist the bot would play on shuffle if nothing is added as an actual queue.
Also was unable to get the bot to rejoin the channel after all users disconnected.
Edit: Was because i used: /playlist shuffle:True playlist_title:TITTLE if i didn't include playlist_title:TITTLE, and used buttons instead it worked.
A command to just get the bot in the channel you're in would be nice. It'd then play the default playlist till something else get's picked.
Also an option to delete the previous message if it's from the bot before it posts a new one. (or the 5th if 5 are from the bot)
To keep channel more clean.

I can look into an option for a default play. The previous message stuff should be fixed in the rewrite im doing. Test it out in the new branch I made.


ansible: docker prune

What this PR does / why we need it:
When running ceph some nodes can become in a warning state as storage is low. I have seen that docker can have a lot of unused images, up to 20GB. So a easy step is to clear docker and this ansible will clear it up.
Also added ansible config file so that host key is not checked.
Which issue this PR fixes (use the format fixes #<issue number>(, fixes #<issue_number>, ...) to automatically close the issue when PR gets merged): fixes #
Public facing documentation PR (if applicable)

Special notes for reviewer:
Checklist:

[x] Proper commit message prefix on all commits
[ ] Updated the public facing documentation
Is this changeset backwards compatible for existing clusters? Applying:

[x] is completely transparent, will not impact the workload in any way.
[ ] requires running a migration script.
[ ] requires draining and/or replacing nodes.
[ ] will break the cluster.
I.e. full cluster migration is required.

Are we sure about this? Kubernetes is supposed to do garbage collection by itself and seems not to like external tools doing that for it.

 You should avoid using external garbage collection tools, as these can break the kubelet behavior and remove containers that should exist.

Any clue why the Kubernetes garbage collection was insufficient?

Are we sure about this? Kubernetes is supposed to do garbage collection by itself and seems not to like external tools doing that for it.

 You should avoid using external garbage collection tools, as these can break the kubelet behavior and remove containers that should exist.

Any clue why the Kubernetes garbage collection was insufficient?

Maybe we misconfigure it then, because this is definitely not working in the clusters I've looked at.

Yes the garbage collection does not seem to work for us. If this should happen automatically, should I close this PR then?

Found that the garbage collection tries to keep the disk usage to 80% and a ceph cluster is in warning state at 75%. This can be the issue?
We could change the settings imageGCHighThresholdPercent and imageGCLowThresholdPercent in the kubelet configuration file if we want to tweek this.

We could change the settings imageGCHighThresholdPercent and imageGCLowThresholdPercent in the kubelet configuration file if we want to tweek this.

@robinAwallace Let's do that first. Seems like Kubespray already allows adding custom parameters to kubelet.

@robinAwallace Let's do that first. Seems like Kubespray already allows adding custom parameters to kubelet.

However we might still want this ansible script to easily remove all cache for go-live testing purposes

@Xartos I agree, just wanted to make sure we come up with the best solution for the initial problem, unused docker images using too much space.

@cristiklein Totally agree, I just didn't want to loose these nice playbooks as a means of manually cleaning cache for other scenarios.

@Xartos @cristiklein Setting the kubelet variables worked to clear the unused images
kubelet_config_extra_args:
  imageGCHighThresholdPercent: 55
  imageGCLowThresholdPercent: 50

Feb 14 09:46:49 wallace-worker-0 kubelet[49556]: I0214 09:46:49.104337   49556 image_gc_manager.go:304] "Disk usage on image filesystem is over the high threshold, trying to free bytes down to the low threshold" usage=63 highThreshold=55 amountToFree=5987420160 lowThreshold=50
Feb 14 09:46:49 wallace-worker-0 kubelet[49556]: I0214 09:46:49.110789   49556 image_gc_manager.go:375] "Removing image to free bytes" imageID="sha256:d6596ac2203957d64d4c57cc78858b0d8676cbe5983b261613617c0f0c818e8d" size=24118636540

Something like this should be okay to set, specially for rook environments.
kubelet_config_extra_args:
  imageGCHighThresholdPercent: 75
  imageGCLowThresholdPercent: 70

@robinAwallace Awesome, please set up a new PR for that (or sneak it in with this one)

@Xartos  Updated with kubelet configuration and setting the host_key_checking=True in the ansible config.

@viktor-f added a doc describing how to add kubelet arguments to existing environments.


Fix temp directory, failure on os.tmpdir() warnings in newer nodes

This PR fixes two bugs:

A bug where if ./temp doesn't exist, the plugin doesn't create it, but tells mocha to write there.
A bug where if newer versions of node are used, mocha outputs the warning (but not error) text (node:10530) DeprecationWarning: os.tmpDir() is deprecated. Use os.tmpdir() instead. to stderr, causing our plugin code to think there's an error (even though status is 0).

/cc @jherr

One nit, otherwise LGTM.


Proposition for function registration

Hi everyone,
I've been using Swinject for 2 years now (very great project). Gradually, I have adopted a functional programming style and I need to register/resolve functions thanks to Swinject.
As there can be many functions having the same signature, the only way to discriminate them is using a name (from my understanding).
I have implemented a helper to avoid explicitly using names. It is called a NamedService. It is a protocol that provides a default name for you. All you have to do is declare the conformance to this protocol like that:
enum MyFunctionNamedService: NamedService {
    typealias Service = (String, Int) -> Int
}

enum MyOtherFunctionNamedService: NamedService {
    typealias Service = (String, Int) -> Int
}

And then you can register/resolve this namedService:
container.register(namedService: MyFunctionNamedService.self, factory: { ... })
container.register(namedService: MyOtherFunctionNamedService.self, factory: { ... })

...
let myFunction = resolver.resolve(namedService: MyFunctionNamedService.self)!
let myOtherFunction = resolver.resolve(namedService: MyOtherFunctionNamedService.self)!

Would this be interesting to upstream this feature to the Swinject repo ? @jakubvano @yoichitgy
Thanks.

Nice idea, but the first issue we need to resolve, is which one of the contributors is going to continue to maintain the project.

Thanks for the response
I did not realize the project was not maintained anymore :-(

Hi, @twittemb I would be very interested in using your idea in my forked version of Swinject.
Create a PR on my version and it will be merged: https://github.com/davidthorn/Swinject

Hi @davidthorn
ok no pb. Will do ASAP.

@davidthorn just opened a PR in your repo 👍


Ticker column has additional characters....

Pulling weekly and daily data. Have a "Ticker" column in both pulls. The daily is fine. But the weekly ticker column says this in every ticker. yfinance.Ticker object  or yfinance.Ticker object
Would like column to say AAPL or TSLA. Here is part of code.
    data = yf.download(ticker, group_by="Ticker", period="5Y", interval="1wk",prepost = True)
    data['ticker'] = yf.Ticker(ticker)

Was fine a few weeks ago. Any ideas? thanks.

What exactly is problem? What are you expecting to happen?


Raspberry Pi 4: Your video card driver does not support any of the supported OpenGL versions.

Godot version: 3.2.2-stable

OS/device including version: Manjaro ARM Linux (Linux 5.4.51-2-MANJARO-ARM (aarch64)) + Raspberry Pi 4 4 GB

Issue description: video card driver error appears when running Godot project on Raspberry Pi 4 (Godot engine was compiled on Raspberry Pi 4)

Steps to reproduce:
In general I tried to compile Godot for my Raspberry Pi 4 (4 GB) so that I could run Godot projects on it. I do that because there is no official Godot version for my setup at the moment. The full procedure description you can find here.

Open terminal and run: "sudo pacman -S scons pkgconf gcc libxcursor libxinerama libxi libxrandr mesa glu alsa-lib pulseaudio
freetype2 yasm"

Download official Godot version from here: 3.2.2-stable

Extract files to: "/home/superadmin/Godot/godot-3.2.2-stable/"

Open terminal and run: "cd /home/superadmin/Godot/godot-3.2.2-stable/"

Then run: "scons -j8 platform=x11 bits=64"

Wait until compilation process is finished

Copy compiled version: sudo cp /bin/godot.x11.tools.64 /home/superadmin/Godot/compiled/godot.x11.tools.64

Run godot.x11.tools.64

Open a simple Godot project and press on "Play" button.

Actual results:
"Your video card driver does not support any of the supported OpenGL versions. Please update your drivers or if you have a very old or integrated GPU upgrade it." error appears
Minimal reproduction project:

There is a different process for compiling to raspberry Pi. The default x11 templates are for desktop x11.
This Reddit comment suggests you should compile the executable with particular flags for the raspberry Pi.
Keep in mind, Godot doesn't officially support raspberry Pi, so don't expect great performance or usability.

Godot version: 3.2.2-stable
OS/device including version: Manjaro ARM Linux (Linux 5.4.51-2-MANJARO-ARM (aarch64)) + Raspberry Pi 4 4 GB
Issue description: video card driver error appears when running Godot project on Raspberry Pi 4 (Godot engine was compiled on Raspberry Pi 4)
Steps to reproduce:
In general I tried to compile Godot for my Raspberry Pi 4 (4 GB) so that I could run Godot projects on it. I do that because there is no official Godot version for my setup at the moment. The full procedure description you can find here.
1. Open terminal and run: "sudo pacman -S scons pkgconf gcc libxcursor libxinerama libxi libxrandr mesa glu alsa-lib pulseaudio
   freetype2 yasm"

2. Download official Godot version from here: [3.2.2-stable](https://github.com/godotengine/godot/releases/tag/3.2.2-stable)

3. Extract files to: "/home/superadmin/Godot/godot-3.2.2-stable/"

4. Open terminal and run: "cd /home/superadmin/Godot/godot-3.2.2-stable/"

5. Then run: "scons -j8 platform=x11 bits=64"

6. Wait until compilation process is finished

7. Copy compiled version: sudo cp /bin/godot.x11.tools.64 /home/superadmin/Godot/compiled/godot.x11.tools.64

8. Run godot.x11.tools.64

9. Open a simple Godot project and press on "Play" button.

Actual results:
"Your video card driver does not support any of the supported OpenGL versions. Please update your drivers or if you have a very old or integrated GPU upgrade it." error appears
Minimal reproduction project:

Have you enabled dtoverlay=vc4-fkms-v3d in config.txt?

dtoverlay=vc4-fkms-v3d

It was there by default, see my config below:
`# See /boot/overlays/README for all available options
gpu_mem=64
initramfs initramfs-linux.img followkernel
kernel=kernel8.img
arm_64bit=1
enable_gic=1
disable_overscan=1
#enable sound
dtparam=audio=on
hdmi_drive=2
#enable vc4
dtoverlay=vc4-fkms-v3d
max_framebuffers=2
Overclocking your Pi 4 to even higher clock speed (2GHz)!
over_voltage=6
arm_freq=2000`

There is a different process for compiling to raspberry Pi. The default x11 templates are for desktop x11.
This Reddit comment suggests you should compile the executable with particular flags for the raspberry Pi.
Keep in mind, Godot doesn't officially support raspberry Pi, so don't expect great performance or usability.

Thank you for trying to help me. I will try to recompile it as following:
scons platform=x11 target=release_debug tools=yes use_llvm=yes CCFLAGS="-mcpu=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -mlittle-endian -munaligned-access" -j 4

There is a different process for compiling to raspberry Pi. The default x11 templates are for desktop x11.
This Reddit comment suggests you should compile the executable with particular flags for the raspberry Pi.
Keep in mind, Godot doesn't officially support raspberry Pi, so don't expect great performance or usability.

What I did step by step:

Removed all previously compiled files.
Run following command: sudo pacman -S clang
Extract Godot engine source files to: /home/superadmin/Godot/godot-3.2.2-stable/
cd /home/superadmin/Godot/godot-3.2.2-stable/
sudo scons platform=x11 bits=64 target=release_debug tools=yes use_llvm=yes CCFLAGS="-mcpu=cortex-a72 -mfpu=neon-vfpv4 -mfloat-abi=hard -mlittle-endian -munaligned-access" -j 4

Final output:
[Initial build] Compiling ==> thirdparty/freetype/src/winfonts/winfnt.c [Initial build] Compiling ==> thirdparty/freetype/src/sfnt/sfnt.c [Initial build] Linking Static Library ==> modules/freetype/libfreetype_builtin.x11.opt.tools.64.llvm.a [Initial build] Ranlib Library         ==> modules/freetype/libfreetype_builtin.x11.opt.tools.64.llvm.a [Initial build] Building compilation database compile_commands.json [Initial build] progress_finish(["progress_finish"], []) [Initial build] Linking Static Library ==> core/libcore.x11.opt.tools.64.llvm.a Ranlib Library         ==> core/libcore.x11.opt.tools.64.llvm.a [Initial build] Linking Program        ==> bin/godot.x11.opt.tools.64.llvm
Now the problem is that I have no idea where is the execution file... I mean I checked bin directory and there was nothin like "bin/godot.x11.opt.tools.64.llvm" there... What should I do next?

I expect the compiled file to have no extension, not .llvm.

I expect the compiled file to have no extension, not .llvm.

I guess it because I used use_llvm=yes ...
I found some interesting procedure here.  Will try to re-run it as following:
"scons -j 4 platform=x11 module_webm_enabled=no tools=yes use_llvm=yes CCFLAGS="-mcpu=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -mlittle-endian -munaligned-access""

I expect the compiled file to have no extension, not .llvm.

I guess it because I used use_llvm=yes ...
I found some interesting procedure here. Will try to re-run it as following:
"scons -j 4 platform=x11 module_webm_enabled=no tools=yes use_llvm=yes CCFLAGS="-mcpu=cortex-a72 -mfpu=neon-vfpv4 -mfloat-abi=hard -mlittle-endian -munaligned-access"

That one did not work as well, this is what I got at the end:
[ 73%] Compiling ==> thirdparty/freetype/src/type42/type42.c
[ 73%] Compiling ==> thirdparty/freetype/src/winfonts/winfnt.c
[ 74%] Compiling ==> thirdparty/freetype/src/sfnt/sfnt.c
[ 93%] Building compilation database compile_commands.json
[ 93%] Linking Static Library ==> modules/freetype/libfreetype_builtin.x11.tools.64.llvm.a
[ 93%] Ranlib Library         ==> modules/freetype/libfreetype_builtin.x11.tools.64.llvm.a
[ 95%] progress_finish(["progress_finish"], [])
[ 97%] Linking Static Library ==> core/libcore.x11.tools.64.llvm.a
Ranlib Library         ==> core/libcore.x11.tools.64.llvm.a
[ 97%] Linking Program        ==> bin/godot.x11.tools.64.llvm
[ 97%] scons: done building targets.

So I got some help from @psstoyanov and finnaly manage to compile it on my system (Raspberry Pi 4 4GB + Linux Manjaro), for more details see here
Step by step:

Open terminal and run: sudo pacman -S scons pkgconf gcc libxcursor libxinerama libxi libxrandr mesa glu alsa-lib pulseaudio freetype2 yasm
Run: git clone --branch 3.2 https://github.com/godotengine/godot
NOTE: it is important to clone 3.2 branch, otherwise the procedure will fail
Run: cd godot
Run: scons platform=x11 target=release_debug tools=yes use_llvm=false CCFLAGS="-march=armv8-a+crc+crypto -mcpu=cortex-a72" -j6

and as a result I got this output:
scons: Reading SConscript files ...
Enabling ALSA
Enabling PulseAudio
Checking for C header file mntent.h... (cached) yes
scons: done reading SConscript files.
scons: Building targets ...
[  5%] Linking Static Library ==> main/libmain.x11.opt.tools.64.a
[  5%] Ranlib Library         ==> main/libmain.x11.opt.tools.64.a
[100%] progress_finish(["progress_finish"], [])
[100%] Linking Program        ==> bin/godot.x11.opt.tools.64
[100%] scons: done building targets.

Run: sudo bin/godot.x11.opt.tools.64

as a result I got following output:
Godot Engine v3.2.3.rc.custom_build.c5abc57f8 - https://godotengine.org
X Error of failed request:  GLXBadFBConfig
Major opcode of failed request:  152 (GLX)
Minor opcode of failed request:  34 ()
Serial number of failed request:  28
Current serial number in output stream:  25
X Error of failed request:  GLXBadFBConfig
Major opcode of failed request:  152 (GLX)
Minor opcode of failed request:  34 ()
Serial number of failed request:  28
Current serial number in output stream:  25
ERROR: initialize: Condition "ctxErrorOccurred || !p->glx_context" is true. Returned: ERR_UNCONFIGURED
At: platform/x11/context_gl_x11.cpp:190.
OpenGL ES 2.0 Renderer: V3D 4.2
OpenGL ES 2.0 Batching: ON
Godot GUI client is opened as well

For the test purposes I imported following pong project. It is a 2D game and it seems running well. However, I can still see a few errors in the console when I am trying to run the Godot engine, see logs above (step 4)

It is good enough for now so I'll close this issue.

So I got some help from @psstoyanov and finnaly manage to compile it on my system (Raspberry Pi 4 4GB + Linux Manjaro), for more details see here
Step by step:
1. Open terminal and run: `sudo pacman -S scons pkgconf gcc libxcursor libxinerama libxi libxrandr mesa glu alsa-lib pulseaudio freetype2 yasm`

2. Run: `git clone --branch 3.2 https://github.com/godotengine/godot`
   **NOTE**: it is important to clone 3.2 branch, otherwise the procedure will fail

3. Run: `cd godot`

4. Run: `scons platform=x11 target=release_debug tools=yes use_llvm=false CCFLAGS="-march=armv8-a+crc+crypto -mcpu=cortex-a72" -j6`

and as a result I got this output:
scons: Reading SConscript files ...
Enabling ALSA
Enabling PulseAudio
Checking for C header file mntent.h... (cached) yes
scons: done reading SConscript files.
scons: Building targets ...
[ 5%] Linking Static Library ==> main/libmain.x11.opt.tools.64.a
[ 5%] Ranlib Library ==> main/libmain.x11.opt.tools.64.a
[100%] progress_finish(["progress_finish"], [])
[100%] Linking Program ==> bin/godot.x11.opt.tools.64
[100%] scons: done building targets.
1. Run: `sudo bin/godot.x11.opt.tools.64`

as a result I got following output:
Godot Engine v3.2.3.rc.custom_build.c5abc57f8 - https://godotengine.org
X Error of failed request: GLXBadFBConfig
Major opcode of failed request: 152 (GLX)
Minor opcode of failed request: 34 ()
Serial number of failed request: 28
Current serial number in output stream: 25
X Error of failed request: GLXBadFBConfig
Major opcode of failed request: 152 (GLX)
Minor opcode of failed request: 34 ()
Serial number of failed request: 28
Current serial number in output stream: 25
ERROR: initialize: Condition "ctxErrorOccurred || !p->glx_context" is true. Returned: ERR_UNCONFIGURED
At: platform/x11/context_gl_x11.cpp:190.
OpenGL ES 2.0 Renderer: V3D 4.2
OpenGL ES 2.0 Batching: ON
Godot GUI client is opened as well
1. For the test purposes I imported following [pong](https://github.com/godotengine/godot-demo-projects/tree/master/2d/pong) project. It is a 2D game and it seems running well. However, I can still see a few errors in the console when I am trying to run the Godot engine, see logs above (step 4)

It is good enough for now so I'll close this issue.

Actually I still have a problem. When I tried to develop 2D game of my own I got an error on my first attempt to play it:

So I get right back to where I started. i mean, I wanted to compile the Godot engine in order to solve that error in the first place...

@ikostan Did you configure the project to use the GLES2 renderer instead of GLES3? You can do it in the top-right corner of th eeditor window (which appears to be cut off on your screenshot), or in the Project Settings (Rendering > Quality > Driver > Driver Name).

@ikostan Did you configure the project to use the GLES2 renderer instead of GLES3? You can do it in the top-right corner of th eeditor window (which appears to be cut off on your screenshot), or in the Project Settings (Rendering > Quality > Driver > Driver Name).

Thanks @Calinou , now it works fine.


Dealing with C Dependencies on Linux

It looks like my latest library MistKit uses Fluent which requires sqlite c libraries. This is causing a build failure.
Is there a way to specify these dependencies? i.e. apt install libsqlite3-dev

Hi Leo, there is a way, by setting up docker images with the dependency installed which we then add to our allow-list. The "Images on Linux" part of this blog post has more detail: https://blog.swiftpackageindex.com/posts/the-swift-package-index-metadata-file-first-steps/
Let me know if that helps!

Awesome! Thank you.
I pushed a docker image for libsqlite3-dev to the docker hub, using this tutorial:
https://docs.docker.com/docker-hub/
I added the .spi.yml file to my repo at this branch as well:
https://github.com/brightdigit/MistKit/tree/feature/linux-sqlite-dep
Does it need to be on main and a new release to test it out?

I've just prepared the config change on our end, which we'll roll out shortly. One thing you'd have to change regarding the image that I forgot to mention: We require image tags (i.e. version suffixes).
So instead of using an untagged image image: leogdion/mistkit-swift you should tag it for the Swift version(s) you're supporting:
docker build -t leogdion/mistkit-swift:5.3 .
docker push leogdion/mistkit-swift:5.3

and update .spi.yml to
    swift_version: '5.3'
    image: leogdion/mistkit-swift:5.3

This will also allow you to change the FROM swift:5.4 when the time comes and push that as leogdion/mistkit-swift:5.4 with a matching section for swift_version: '5.4'.

Thanks for heads up!
I updated spi file as well as the image to ‘brightdigit/mistkit-sql’. There are different tags for Swift versions as well as Ubuntu.
Please let me know if you need anything else.
https://github.com/brightdigit/MistKit/tree/feature/linux-sqlite-dep

New image still not being picked up. Everything seems to be in order, need to follow up to see what's going on.
https://swiftpackageindex.com/builds/4678AC13-B82A-4BC1-966C-A338C3CB3635

It's working exactly as it should locally:
(lldb) po image
▿ Optional<String>
  - some : "brightdigit/mistkit-sql:5.3-focal"

(lldb) po cmd.self
▿ ShellOutCommand
  - string : "/usr/local/bin/docker run --rm -v \"$PWD\":/host -w /host brightdigit/mistkit-sql:5.3-focal swift build --enable-test-discovery"

Running build ...
/usr/local/bin/docker run --rm -v "$PWD":/host -w /host brightdigit/mistkit-sql:5.3-focal swift build --enable-test-discovery

Need to see if there's been a deployment issue.

I've added some internal logging, re-deployed, and re-triggered the build. Should update soon, let's see if that changes things.

🥳  Looks like it worked. I think this issue can be closed unless you think otherwise.

Ah great! No idea what happened exactly previously but I guess "rebooting" always helps =)


Users not instructed to SSH into the node before executing commands in "Upgrading Linux nodes" page

Missing important step new people
SSH into the node

/language en

Hi @porrascarlos802018, could you please explain the issue in detail.
/triage needs-information

Page mentioned in the issue (based on the title): https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes
/language en

/retitle Users not instructed to SSH into the node before executing commands in "Upgrading Linux nodes" page

/sig cluster-lifecycle

I'm not sure this is valid, though there isn't much detail to the issue to explain what the concern is.
The commands on that page need to be run on the node being upgraded, but I think how the administrator connects to that node is out of scope. It may be SSH, it may be by accessing the cloud providers console. It may be by rolling up a crash cart and plugging in a monitor and keyboard. That all depends on the individuals environment.

/remove-triage needs-information

/kind support
It seems to be like a support request.

/remove-kind-support

/remove-kind support

/remove-kind support
/priority awaiting-more-evidence
/kind feature
/sig cluster-lifecycle

My opinion: if you don't know how to get a shell on a node, it may not be a good idea to try upgrading it. Best learn the basics first.

We could list “shell access to the node“ as a prerequisite. I don't think we can or should assume SSH; I'm barely happy that we assume superuser access comes via sudo.

for new contributors.
page to update:
https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/
change:

You need to have a Kubernetes cluster, and the kubectl command-line tool must be configured to communicate with your cluster

to:

You need to have a Kubernetes cluster, shell access to all its nodes, and the kubectl command-line tool must be configured to communicate with your cluster

/help
/triage accepted

/priority backlog

This one looks like a candidate for a "good first issue" label.
I think that the  https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/upgrading-windows-nodes/ page should also have the shell access note, regardless of the method used (ssh, rdp, etc).
@sftim @neolit123

I don't think this is a good first issue. A good first issue would have a description that helped totally new contributors find out how to help, and the description for this issue at the time of writing is:

Missing important step new people
SSH into the node

/assign

Got it. Going through the details, I see another problem here. The pre-req of having shell access to the nodes seems mostly relevant (a corner case) for the node upgrade task, for other cluster maintenance tasks, API access to node management seems enough.
The problem is that the upgrading-linux-nodes, upgrading-windows-nodes and many other pages use the same prerequisites include task-tutorial-prereqs.md document (includes/task-tutorial-prereqs.md). So, adding the "get shell access to the nodes" phrase will alter all these documents where this step is not needed.
I think that, for this particular task, we should not use the include prerequisite doc and rewrite the paragraph locally on the upgrading-linux|windows-nodes pages, as a compromise between convenience and accuracy. What do you think?

I think that, for this particular task, we should not use the include prerequisite doc and rewrite the paragraph locally on the upgrading-linux|windows-nodes pages, as a compromise between convenience and accuracy. What do you think?

That'll work fine.

Given the need to modify two documents and the potential for content drift across releases, etc, I decided to add a new prereqs include file with the modified paragraph instead of rewriting the whole prerequisites section on both documents. Let me know what you think. Thanks


Add code of conduct

Maybe use this as an example.
https://github.com/javascriptair/CODE_OF_CONDUCT

http://www.greaterthancode.com/code-of-conduct/


Some Issues with this Implementation

Here are some of the problems I've experienced with this implementation:

faulty Redis lock implementation. Unexpected shutdown may cause it hang forever on next restart.
Unexpected shutdown when a repeating is acquired. The trigger will neve fire again on the next restart.
Trigger JobDataMap do not persist at all. According to Quartz docs they trigger dta map is supposed to be merged with job data map when trigger value will override the job values.

Hi @gary-harpaz .
We recently merged a new locking mechanism, using jedis-locks. Nevertheless, have you configured  the 'releaseTriggersInterval' and 'instanceIdFilePath' to release triggers of non-alive schedulers or previous startups?
As for the JobdataMap, the JobDataMap is persisted in an identical manner to other job stores on storeJob- see the RAMJobStore for an example. If you think of a better way of implementing this or you think there are issue with the storeJob method, would you be willing to work on a solution contribute it to the community?
Finally, submitting an issue titled "Full of bugs!" and "Stay away!" violates the policy of being nice and respectful to each other which this community highly values, and I ask you to refrain from this attitude in the future.

I did set the 'releaseTriggersInterval' and 'instanceIdFilePath' parameters.
I'm not talking about jobdatamap I'm talking about triggerdatamap. Two different things.
As for my attitude I think that it is justified under this circumstances.
This repository does not belong to some kid learning a new framework. This is an official RedisLabs repository with 37 stars.
Last commit was two years ago, buggy, using depreached  Jedis functions.
Made me loose an entire work day before returned back  to JDBC store.
Come on!
Expected better from Redis Labs.

If you have set up the triggers release mechanisms but still experienced locking issues, please describe in details the steps you took to reproduce these issues.

TriggerDataMaps are not quartz entities- a trigger has a JobDataMap which you can get or set, and they are stored in an identical manner as other JobDataMaps. Again, .If you think of a better way of implementing the job store, you are welcome to share your ideas and submit a pull request.

While in here, you are expected to be nice and respectful to anyone, regardless if it is a kid or a reputable company.
This repository belongs to the community, and you are welcome to use it free of charge and in compliance with its licensing. If you think it is buggy or outdated, by all means do submit a pull request instead of whining about losing a working day.

Thank you for schooling me and teaching me proper netiquette.
Calling your code buggy is not disrespectful, it's just the truth. And my intentions were to spare other innocent coders from wasting their precious time on it.
So you see, in my own way I too am helping the community.
Here's a different thought, instead of taking offense when someone points out the obvious how bout you just fix your code?
Beseder Matan? :)

@gary-harpaz, submitting an issue with a title: "Full of bugs. Stay away from this code" and without any constructive info is rude, disrespectful. and unacceptable.
An issue should be submitted with an informative title that clearly describes the issue, a clear description of the issue, steps to reproduce and a suggested resolution, if you have any.
Any other use is an abuse of our ticketing system, and it is unacceptable.
If you want to "spare other innocent coders from wasting their precious time on it." write a post or something. This is GitHub here, not Facebook.
As you clearly expressed your abusive intentions regarding this issue, I'll go ahead and close it now.


Improve toolbar tooltips

Make the tooltips more helpful, don't simply repeat what is visible on the buttons themselves.

@hoechenberger okay for me to fix the merge conflicts, mark as ready, and merge here?

Yes


Instructions in README lead to error.

I did follow the instructions until tota build.
I get the the Following output:
$ tota build
Deleting public directory
Generating static files...             0.2s
Creating archive pages
Template not found: /home/r3drock/blog/templates/archive.mustache

Hi @r3drock, thanks for bringing this bug to my attention. I'm working towards a 1.0.0 release, so I apologise for any inconsistencies.
I've updated the starting template, so please remove your directory contents and run tota init again.
That should fix it, but feel free to reopen this issue if you have further problems.

Also, please note that as of version 0.6.1 the use of .env files are deprecated to prioritise running in an automated/CI context.


Feature

i have change the toast message

Changing the text message without any checks will not work.

Let me do the check and update it


Headless Vulkan fixed and updates

initialise m_backBuffer with an offscreen frame buffer w/ custom attachments in headless mode so we can bind it and read from it
added support for screenshots and movie capture in headless mode
fixes asserts in debug mode when trying to blit textures or dispatch compute pipelines. Both operations for which it inexplicably tries to bind the backbuffer when there's really no need to.
To minimise hacks and integrate it better with the bgfx workflow it required adding a new createBackBuffer method to RendererContextI. Note that this is only implemented in renderer_vk.cpp. All other backends contain a stub

The android-x86 build started failing, but I don't think it can have anything to do with this PR. Plus we are not using android at all and all other targets are fine. Here's the error, it looks like the ASTC encoder is trying to use a x64 symbol in the x86 build. Maybe the NDK the job pulls has been updated or something like that....
../../../../bimg/3rdparty/astc-encoder/source/astcenc_vecmathlib_sse_4.h:1281:26: error: use of undeclared identifier '_mm_popcnt_u64'; did you mean '_mm_popcnt_u32'?

I've cherry picked the commit in the original repo that disables the failing arm targets.


Crashes on "Launch App" for an app without a main/launcher activity

Really amazing tool, truly awesome work!
I'm working with a widget-only app which doesn't have a defined main activity, Inspeckage should probably either check the manifest for a valid activity to start or try/catch the intent in case it crashes. It currently detects my configure widget activity which (I'm guessing) crashes because it expects to be launched from a widget intent and requires additional data.

Hi @dkisselev, I need a sample for testing. the widget is public? you can tell me the name?

Hey @ac-pm, unfortunately our app is currently private so I can't share that source, and I didn't get a chance to put together a simpler demo app, but it looks like DVDAndroid has worked out the problem in #3


Update mysql.go renamed groups to hstgrp due to zabbix change

Zabbix has changed the name of table groups to hstgrp due to key reservations in mysql 8
https://www.zabbix.com/forum/zabbix-help/374145-is-table-groups-on-mysql-missing-after-update-3-2-11-to-4-0-4

also need to add in documentation:
GRANT SELECT ON zabbix.hstgrp TO influxdb_zabbix@localhost;


tests: kernel: interrupt: make test work with any available NVIC IRQ

This commit re-works the test for the ARM architecture,
so that it can work with any available NVIC IRQ, not
bound to use the last 2 NVIC lines. It makes use of
the dynamic IRQ feature.
Signed-off-by: Ioannis Glaropoulos<EMAIL_ADDRESS>Fixes #18654

@galak can you check if this fixes #18654 ??

Can you update tests/kernel/interrupt/testcase.yaml and remove all the platform_excludes
diff --git a/tests/kernel/interrupt/testcase.yaml b/tests/kernel/interrupt/testcase.yaml
index c061cef483..e1733cd79e 100644
--- a/tests/kernel/interrupt/testcase.yaml
+++ b/tests/kernel/interrupt/testcase.yaml
@@ -1,9 +1,6 @@
 tests:
   arch.interrupt:
     arch_exclude: nios2 riscv32 arc qemu_x86 qemu_x86_coverage qemu_x86_64
-    platform_exclude: hexiwear_kw40z frdm_kw41z frdm_kl25z nucleo_f103rb
-        nucleo_f091rc olimexino_stm32 usb_kw24d512 stm32_min_dev_blue
-        stm32_min_dev_black v2m_beetle
     tags: interrupt

Done

@galak please, revisit this, so it can be added for v2.0.0

Looks good. Only change I'd ask is to move the static u32_t irq_line_{0,1} into the .c file.

Sure, I will do this.

Tested on the following ARM platforms:

atsamr21_xpro
sam_e70_xplained
nrf9160_pca10090
nrf52840_pca10056
nrf51_pca10028
mimxrt1015_evk
frdm_k64f
lpcxpress054114_m4
nrf52_pca10040

Verified, also, that it builds for the platforms that are, now, not excluded.


Generic implementation of Range.

At this moment the Range class isn't generic and stores int Index and int Length values, but probably it would be better to have a generic struct and move it to the System.Collections.Sequences library.
The main idea is that Range<T> could be used not only by buffers, but also in third party code to store a range of values (as inclusive T From and exclusive T To values), to manipulate collections and such related things.
Why the To field instead of Length? Because the To field can store floating point values without losing precision, and length can not be determined for some types like string. But length calculation can be made using extension methods for numeric types. Since we have the aggressively inlined and specialized Length(this Range<Int>) method, that change will not hurt performance.

@YohDeadfall,
Thanks for your contribution.
To ensure that the project team has proper rights to use your work, please complete the Contribution License Agreement at https://cla2.dotnetfoundation.org.
It will cover your contributions to all .NET Foundation-managed open source projects.
Thanks,
.NET Foundation Pull Request Bot

@YohDeadfall, thanks for signing the contribution license agreement. We will now validate the agreement and then the pull request.
Thanks, .NET Foundation Pull Request Bot

This complicates the type significantly.  For example, the Slice method signature is currently Slice(Range range), but now it would be Slice(Range range). Similarly on the caller side, it would complicate the callsite.
@jaredpar, I originally added the Range type to play with the idea we talked about where C# slice syntax would take a range type. Do you have any opinions on whether Range or Range is closer to what C# could (would like to) use?

@benaadams, I keep forgetting the ticks. Updated now.

@KrzysztofCwalina, not everywhere. You forgot about the second Slice(Range range).

I can confirm that reading that in email was confusing... range range

@KrzysztofCwalina, could you provide a link to the discussion with @jaredpar? Is it?

Should the fields of the Range<T> struct be readonly or should they be replaced by readonly properties? Do we need implementation of the ISerializable and IXmlSerializable interfaces?

@YohDeadfall is was more of a hallway discussion.

I can close this pull request and file an issue in the corefx repository to invite more people to discuss, but before that it would be good to know what is the slice syntax.

One thing - in order to be used as a range type, at some point you'll need to compare the extents of the range with other values - so shouldn't T be constrained to IComparable<T> ?

I am not sure the logic here is correct:
    public static bool IsEmpty(this Range<<#= type.Name #>> range)
    {
        return range.From == range.To;
    }

If I declare a range that, say, should only regard the 5th element:
    var myRange = new Range(5, 5);

Then that range is not empty per se, but perhaps exact.
Perhaps you could consider logic as follows?
    public static bool IsEmpty(this Range<<#= type.Name #>> range)
    {
        return range.From == range.To
            && range.From.Equals(default(T)); // Or EqualityComparer.Default, etc
    }

In the past I have needed such a class myself and chose to support this semantic directly by having a ctor (or alternatively a factory) as follows:
    class Range
    {
        ...
        public Range(T exact) : this(exact, exact)
        { }
    }

I posted (and deleted) some feedback based on my wrong assumption that the upper bound was inclusive.
I am curious why this design was chosen.
I understand for loops & their ilk are [n, m) boundaries but I wonder whether users would expect ranges to behave the same. In other words, my own (perhaps unique) expectation is:
//              Expected                         Actual (current design)
Range(0, 0); // ~equivalent to Empty             ~equivalent to Empty
Range(5, 5); // ~equivalent to Slice(5, 1)       ~equivalent to Empty (also)
Range(5, 6); // ~equivalent to Slice(5, 2)       ~equivalent to Slice(5, 1)

@mj1856 Thanks. Don't know why I thought that the string class isn't IComparable<T>. Will fix it.
@grant-d They are already adapted for slices because exclusive ending ranges have length which equals to to - from (end - start) and slices get length as the second parameter. Also fully inclusive ranges cannot be empty, but exclusive ending ranges can therefore I chose them.
public readonly ref struct Span<T>
{
    public Span<T> Slice(int start, int length) { throw null; }
}
public readonly struct ReadOnlyBytes
{
    [MethodImpl(MethodImplOptions.AggressiveInlining)]
    public ReadWriteBytes Slice(Range<int> range)
    {
        return Slice(range.From, range.Length());
    }

    [MethodImpl(MethodImplOptions.AggressiveInlining)]
    public ReadWriteBytes Slice(int index, int length)
    {

Range
Length
Slice
Description

Range(0, 0)
0
Slice(0, 0)
Take no values.

Range(1, 1)
0
Slice(1, 0)
Take no values.

Range(1, 2)
1
Slice(1, 1)
Take the first value starting 1, i.e. starting 1 until 2.

Range(1, 5)
1
Slice(1, 4)
Take four values starting 1, i.e. starting 1 until 5.

An inclusive end makes sense because it allows to include the max value of T. So yes, ranges should be with exclusive ending and with inclusive ones as you suggested, but I don't think that everyone needs inclusive ranges. Adding a field to specify the type of the ending will increase the size of Range<T> and decrease performance. That's bad. Maybe developers should specify that in their API's by naming? For example:
void DoSomething(Range<int> inclusiveRange, Range<int> exclusiveRange) { }

From our side we can provide additional extension methods:
public static bool Contains<T>(this Range<T> range, T value); // exclusive by default *
public static bool ContainsInclusive<T>(this Range<T> range, T value); // inclusive by request
// or
public static bool Contains<T>(this Range<T> range, T value, bool inclusive = false);

public static double Length(this Range<double> range); // exclusive by default *
public static double LengthInclusive(this Range<double> range); // inclusive by request
// or
public static bool Contains<T>(this Range<T> range, bool inclusive = false);

// * in current implementation

From that point we have the two types of ranges with zero cost. With aggressive inlining the compiler will eliminate inclusive checks.

The C# slice syntax was discussed in #1306.

@mj1856 I remember why T isn't constrained to IComparable<T>. It's because Nullable<T> has no interfaces. Should the constraint be added anyway? Do we need to support nullable?

Just to chime in on the subject of the exclusive upper bound, that's really important if they are to be used generically, such as Range<DateTime>.  Consider two meetings back-to-back.  The first goes from 1:00 to 2:00.  The second from 2:00 to 3:00.  Which meeting is going on exactly at 2:00?  Most people would generally say the second one, because the first meeting has ended.  In other words, [1:00, 2:00) [2:00, 3:00) is the only rational way to think about ranges of time.
IMHO this should apply uniformly to all types.

WRT Nullable<T>,  I assume you mean for open-ended ranges like new Range<int?>(null, 10) or new Range<int?>(10, null) - but IMHO I don't think you need the T itself to be nullable to achieve that goal.  Couldn't you just do that on the constructor? As in:
class Range<T>
    where T: struct, IComparable<T>
{
    public Range(T? from, T? to) { ... }
}

Design overview
Type constraints
There are no constraints at all for two reasons:

To support reference types and value types.
To support Nullable<T> since it has no interfaces.

var range1 = new Range<long>(0, 100);
var range2 = new Range<long?>(null, 100);
var range3 = new Range<string>("a", "z");

Methods
I've implemented IsEmpty, IsNormalized, etc. as extension methods because:

This way allows to write specialized methods even for non-BCL types and optimize performance.

public readonly struct TinyTime
{
    private readonly byte _ticks;
    // properties, operators and so on
}
public static class RangeExtensions
{
    // everything with MethodImplOptions.AggressiveInlining
    public static bool IsEmpty(this Range<TinyTime> range) => range.From == range.To;
    public static bool IsNormalized(this Range<TinyTime> range) => range.From <= range.To;
    // ...
}

It's possible to provide a custom comparer to the methods. For example it's useful for strings.

var range = new Range<string>("A", "a");
var empty1 = range.IsEmpty(StringComparer.InvariantCulture); // false
var empty2 = range.IsEmpty(StringComparer.InvariantCultureIgnoreCase); // true

@mj1856 The Range<T> type could store the endings as T? but that will increase the size of Range<T>.
// Marshal.SizeOf(new Range<int>()) == 16
struct Range<T> where T: struct, IComparable<T>
{
    public T? From;
    public T? To;
}

// Marshal.SizeOf(new Range<int>()) == 8
struct Range<T> where T: IComparable<T>
{
    public T From;
    public T To;
}

The language design at this time does not intend to support a generic Range type. Rather we are focusing on concrete types and operator extensibility to support additional ranges.
Do not think we should take this change as it's going the opposite direction as the language / compiler.

@jaredpar  Okay, then I'll close this pull request. But could you post your response to https://github.com/dotnet/roslyn/issues/23205 because not only I think about generics?


Add 'quiet' Parameter to Improve Benchmark Output Handling

This pull request introduces a 'quiet' parameter to the benchmark.run() function, addressing the issue of excessive output generated during quick benchmark runs.
Related Issue: https://github.com/NeuroBench/neurobench/issues/142#issue-1957995144

Using redirect_stdout ensures that all output is consistently redirected (in our case suppressed), including output generated by any external libraries or functions called within the benchmark. It is a more elegant and effective means of controlling the benchmark's output behavior based on the quiet parameter.

Looks nice Benedetto.
This is slightly related thought - what do you think about a "verbose" option which outputs/logs the benchmark results at every evaluation batch? Thus we can get faster feedback per-batch without needing to wait for the whole workload to finish.

Absolutely, it's a fantastic idea to include a "verbose" option.
Do you prefer a logging mechanism for a more structured approach, or do you prefer to use the print function for rapid feedback?

This could be in-line with #32. For now we only have print statements and I think this would be most simple, but in the future we can have a clean logger.


External clients need a quicker test cycle

In monorepo mode, you can get a quick look at what you just built using, e.g.
npm install
kui shell

or, when you don't need the nuclear option
npm run compile
kui shell

It seems in external custom client mode the build options all build and package for distribution, which is kind of heavyweight (particularly the electron case).   When you webpack you can run docker, true, but it would be nice to have something even more streamlined.

Using the latest IBM/kui commits (but with mods of our own and an external custom client) I was able to make some progress on this issue on my own.

In<EMAIL_ADDRESS>I removed the lines following assembleHTMLPieces from the build function to shorten the sequence and remove the packaging steps (incidentally also achieves the effect of NO_CLEAN).
I ran that build with cd myClient && npx kui-build-electron
Then cd kui-electron-tmp && npx kui shell

The resulting shell is not quite right (it appears to have a deficient theme).   However, it is basically functional.
Obviously, hacking in the bowels of node_modules is not a sustainable strategy.   But, perhaps this suggests a quick fix if you can

Regularize the truncated electron build as a distinct build.
Figure out why it isn't picking up the theme.

I said "you" but I would be willing to do some of this work if I can get some guidance on it.  I might do it anyway if you can't get to it (even to provide guidance) but I can't guarantee the results will be helpful to you.

I was able to get the effect of my earlier experiment without the need to go into node_modules and hack electron/build.sh.   Instead I have a script that does
NO_CLEAN=true NO_INSTALLER=true npx kui-build-electron . mac

The 'mac' platform is arbitrary but it turns out you need to do the build for "real" platform in the case of a cold start (no pre-existing kui-electron-tmp because the platform builds add some stuff there that is needed.   Once you've done that, though
cd kui-electron-tmp && npx kui shell

works just as well as before (not perfectly due to css glitches).
That's especially important since the actual mac build (the app) doesn't work.
I am going to close this issue as "adequately circumvented for now" but I'll open an different issue concerning electron builds in general, particularly css issues.  I believe that problem is not limited to external clients nor to my specific case.


Cuts the screen incorrectly

The browser displays some pages incorrectly. Cuts items that should be displayed by default. For example, a screenshot of Bromite that does it well.

The problem disappears after turning off the "Full screen mode" option in android.


Bump MSI embedded Python to 3.10.3 or 3.9.11 to fix CVE-2022-0778

We have supported Python 3.10 for a while (https://github.com/Azure/azure-cli/issues/19857), but the MSI still bundles Python 3.8.9.
Python 3.8.13 fixed CVE-2022-0778 but only in source code, not binary installers:
https://www.python.org/downloads/release/python-3813/

CVE-2022-0778: OpenSSL upgraded from 1.1.1l to 1.1.1n in macOS and Windows installers (BPO-47024)

Python 3.8 isn't receiving regular bug fixes anymore, and binary installers are no longer provided for it. Python 3.8.10 was the last full bugfix release of Python 3.8 with binary installers.

Therefore, we need to bump MSI embedded Python to 3.10.3 or 3.9.11 which has libssl 1.1.1n:

Perhaps this can even be done together with

https://github.com/Azure/azure-cli/issues/18766

See

https://www.python.org/downloads/release/python-3911/
https://docs.python.org/release/3.10.3/whatsnew/changelog.html#build
https://bugs.python.org/issue47024

Bump MSI embedded Python


loader: Configurable fallback search paths

This makes it easier for non-FHS distributions to behave well when the loader is used by a SUID process or in an otherwise unusual environment.

Thanks for changes.


fix: el-input status icon show unexpect(#17165)

This is related to the issue #17165 .
Please make sure these boxes are checked before submitting your PR, thank you!

[x] Make sure you follow Element's contributing guide (中文 | English | Español | Français).
[x] Make sure you are merging your commits to dev branch.
[x] Add some descriptions and refer relative issues for you PR.

Input 会尝试获取 Form 的验证状态。拿你 demo 的例子来说，不要把  dialog 放在 form 里。


Release 3.1.0

Important notes:
This release is built to support Shopware v6.4 and above, it is NOT backwards compatible with versions < 6.4
Features
#183 Implement giftcards
#191 Prefill shopper details and addresses
#192 Add addressDetails to Amazon Pay
#190 Outsource notification processing to webhook module
#195 Add refund processing to order detail page
#199 Show/Hide 'Save credit card' option
#200 Split the configuration panel into components
#198 Show notifications in order details page
#202 Show safe error messages to shopper
Fixes
#189 Paypal button is not working in Firefox on IOS mobile

Merging release as the only commits @peterojo could not review are related to Codeowners


cli init updated for unified client

Depends on: https://github.com/tinacms/tinacms/issues/2628
update the CLI init code to generate a .tina/client.{js,ts} that is used in defineConfig.
This  https://github.com/tinacms/tinacms/issues/2628 will need to be finished first

Not going to do this until it comes out of experimental


Sec level domains readme

Updating the readme after #92.

Added secondLevelDomains to the examples
Changed most examples to use gmail if applicable (its a better example for a full domain as hotmail has multiple valid tlds)
Added Shopify link in the list of users
Removed a stray debugger (my bad)

We still need to run grunt to update the minified copy

@derrickko

thanks!


Trying to do NFT Wallet Swap. Getting "Acknowledge activation to proceed."

Trying to do NFT Wallet Swap. Getting "Acknowledge activation to proceed."
Any help here?

Hey this has since been resolved. Download the new package under v1.1.8. Thanks for reaching out.


1.12.2

how to get forge 1.12.2 working on it without any issue (i got no gpu)

login <your email>
Enter your password
download 1.12.2
forge 1.12.2
versions -refresh
You should see your forge 1.12.2 version, copy the name
launch <name> -lwjgl

For 1.12.2 I recommend putting the HMC-Specifics in your mod folder. (https://github.com/3arthqu4ke/HMC-Specifics)


Updated rust-openssl dependency to 0.10.x

Hello!
Just a quick PR to include updated dependencies.
Includes:

Added a rustfmt.toml to enforce standard styling
Rustfmt pass
Dependencies version requirements formats to be more in-line with standards
Upgraded rust-openssl to 0.10.x to prevent errors on install and not being able to use OpenSSL 1.1.1

Tests are passing

I don't agree to include rustfmt


💰 Add Cost and Usage reports for all accounts

User Story
As a Service Owner
I want to be able to visualise the cost of my service
So that we have an overview of our costs of each aws services that make up my service
Value / Purpose

Visualise and understand our costs in one place
Allow users outside of our AWS accounts access to costs and usage

Useful Contacts
Rich B
Proposal
Enable CUR in all accounts and ship to central account
Use QuickSight to visualise this data, currently we have the data account only in the Amazon managed dashboard
Alternatively use Consolidated billing for AWS Organizations and get access to a billing account for ALL Org accounts and present via Athena
Additional Information
Cost and usage report
Definition of Done

[ ] Enable CUR export in root account to S3 bucket
[ ] Share S3 bucket to AP QuckSight

Bucket replication is needed from root account to quicksight account.


dynamic type parameters

Partially fixes #276
Problem
Quill doesn't support quotations with dynamic type parameters. Example:
def test[T] = quote(query[T])
println(test[TestEntity].ast) // prints 'query[T]'

Note that the query has T as the entity name instead of TestEntity.
Solution
This PR allows dynamic type parameters that are resolved at runtime. It's important to note that quotations of this type will be dynamic.
def test[T: ClassTag] = quote(query[T])
println(test[TestEntity].ast) // prints 'query[TestEntity]'

Note that it'll require a ClassTag in order to be able to resolve the entity name at runtime.
Notes

I've had to change the schema configuration DSL to use an explicit schema call because of the ClassTag implicit.
This is a partial fix of #276, this scenario is still unsupported:

def test[T: ClassTag] = {
  db.run(query[T])
}
test[TestEntity]

Because the db.run doesn't have information about how to decode T. I'll be working on https://github.com/getquill/quill/issues/148, that will support this scenario with a decoder:
def test[T: Decoder] = {
  db.run(query[T])
}
test[TestEntity]

Checklist

[x] Unit test all changes
[x] Update README.md if applicable
[x] Add [WIP] to the pull request title if it's work in progress
[x] Squash commits that aren't meaningful changes
[x] Run sbt scalariformFormat test:scalariformFormat to make sure that the source files are formatted

@getquill/maintainers

[Current coverage][cc-pull] is 96.39%

Merging [#351][cc-pull] into [master][cc-base-branch] will decrease coverage by -0.23%

@@             master       #351   diff @@
==========================================
  Files           113        113
  Lines          2119       2135    +16
  Methods        2079       2107    +28
  Messages          0          0
  Branches         36         26    -10
==========================================
+ Hits           2048       2058    +10
- Misses           71         77     +6
  Partials          0          0

2 files (not in diff) in ...ala/io/getquill/util were modified. more
2 files (not in diff) in .../io/getquill/sources were modified. more
3 files (not in diff) in ...ll/sources/cassandra were modified. more

Misses +2
Hits -4

2 files in ...in/scala/io/getquill were modified. more

Misses +1
Hits -1

File ...qlMirrorSource.scala (not in diff) was modified. more

Powered by Codecov. Last updated by [d19bb32...2f02f04][cc-compare]
[cc-base-branch]: https://codecov.io/gh/getquill/quill/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/getquill/quill/compare/d19bb3213c22b993fa47adc90e319ec9881be641...2f02f04763c95fbc649a2f25e0fa26f07f0f0bd5
[cc-pull]: https://codecov.io/gh/getquill/quill/pull/351?src=pr

👍
I think the API is fine, but maybe we should revisit Entity/SimpleEntity/ConfiguredEntity in Ast.scala in order to simplify the AST in the near future. WDYT?

I think the API is fine, but maybe we should revisit Entity/SimpleEntity/ConfiguredEntity in Ast.scala in order to simplify the AST in the near future. WDYT?

Yeah, I'm also not satisfied by it. I've opened a ticket to refactor it: https://github.com/getquill/quill/issues/355


Build Fails -  Single module only - No module named 'pybind11_tests'

If someone can assist would be great, it is just this one module I need to build the RPM for my distro.
_____________________________________________________________________________________________________ ERROR collecting test session ________________________________________________________________________________________________________
/usr/lib64/python3.8/importlib/init.py:127: in import_module
return _bootstrap._gcd_import(name[level:], package, level)
:1014: in _gcd_import
???
:991: in _find_and_load
???
:975: in _find_and_load_unlocked
???
:671: in _load_unlocked
???
/usr/lib/python3.8/site-packages/_pytest/assertion/rewrite.py:170: in exec_module
exec(co, module.dict)
_deps/pybind11-src-src/tests/conftest.py:19: in
import pybind11_tests  # noqa: F401
E   ModuleNotFoundError: No module named 'pybind11_tests'
$ sudo dnf repoquery --whatprovides 'python3dist(pybind11_tests)'

$ sudo dnf repoquery --whatprovides 'python3dist(pybind11)'
python-pybind11-0:2.6.2-2.fc35.x86_64
python3-pybind11-0:2.6.2-1.fc34.x86_64
$ pip show pybind11
Name: pybind11
Version: 2.6.2
Summary: Seamless operability between C++11 and Python
Home-page: https://github.com/pybind/pybind11
Author: Wenzel Jakob
Author-email<EMAIL_ADDRESS>License: BSD
Location: /usr/lib64/python3.8/site-packages
Requires:
Required-by:
and rpm -  python-pybind11-2.6.2-2.fc35.x86_64 is already installed.

Same errors in 1.0.2 - anyone able to help?
/usr/lib64/python3.8/importlib/init.py:127: in import_module
return _bootstrap._gcd_import(name[level:], package, level)
:1014: in _gcd_import
???
:991: in _find_and_load
???
:975: in _find_and_load_unlocked
???
:671: in _load_unlocked
???
/usr/lib/python3.8/site-packages/_pytest/assertion/rewrite.py:170: in exec_module
exec(co, module.dict)
_deps/pybind11-src-src/tests/conftest.py:19: in
import pybind11_tests  # noqa: F401
E   ModuleNotFoundError: No module named 'pybind11_tests'

Issue remains...

Which cmake3 version do you have?


$vm is no longer accessible in console

Version
6.0.0-beta.2
Browser and OS info
Edge Version 87.0.664.41 (Official build) (64-bit)
mac OS v10.15.1
Steps to reproduce

Click a component in the devtool
type $vm in console

What is expected?
Allowing access to $vm and its properties in console
What is actually happening?
Uncaught ReferenceError: $vm is not defined

I wonder if this feature is removed in the beta version of the devtool?

This will be implemented back soon

Implemented in v6.0.0-beta.3

Implemented in v6.0.0-beta.3


FeatureCluster.addFeature - Avoid doing twice the work

Avoid doing the same thing twice when len === this.minClusterSize_

Thanks for your contribution!


Render Comments component if there are comments settings

Closes https://github.com/frontity/disqus-comments/issues/1

:tada: This PR is included in version 0.16.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


ng-webworker dependencies not working

Use Plugin : ng-webworker
I am trying to run ng-Web-Worker in one the file.Actually because large functionality this worker needs some dependencies of other factory/Service but i found that this worker is not functioning properly because of these dependencies. I have tried to import scripts also still i am facing the issue. i have pasted below the piece of code. Could you please help me out from this issue.
Code :
// worker.js
function syncServerRecords () {
console.log(" sync Server Records start");
importScripts("checkService.js");
checkService.testFunction().then(function (result) {
console.log("function success");
});
};
  var myWorker = Webworker.create(syncServerRecords);
  myWorker.run().then(function(result) {
           console.log("===Done After run===");
  }, null, function(progress) {
            // promise has a notification
           // console.log("Progress ==> "+progress);
  });

// checkService.js
(function () {
'use strict';
angular.module('sample').factory('checkService', [checkService]);
function checkService() {
var serArr = {};
serArr.testFunction= function () {
console.log("===checkService===");
return;
};
return serArr;
}
})();

Thanks in Advance!

Hi nitinyeole, have you find the way to slove injected service issue? I also meet the same problem with anguar injected dependcy, I can using the $filter function I wrote. It said $filter not define.


CSS improvements for mobile

Improves site layout on smaller screens and hides the (currently broken) webcam button on touch devices.

Thanks Nathan!


Add an job by output lfn view

We have a similar view that requires the workflow name.  We should add one that only requires the output lfn.

@ticoann do you think such view would be feasible?

This would be very simple to add. But not sure of the use case now.

Closing this, we will create the new issue if necessary


Chef - Continue instead of breaking on build error

Problem

While building for Chef CD, if there is a single broken platform, then it could prevent buildable platforms from being built.

Change overview

Use continue instead of break to get as many viable builds as possible.

Testing
Very small change, testing not needed.

Testing is needed, at a minimum compile with and without the change locally to validate functionality. Eventually introduce an error in the build logic to see if things work as expected.


Use progress bar and abort-button for gpx-import

Like in dropping caches.

Again browsing old issues:
A progress bar is already implemented, not sure if aborting is possible at the moment?!


Create a Statistics component

One need to make this component using HTML and Tailwind CSS. I would suggest to use Tailwind Playgrounds to make things faster and quicker.
Here is a reference to the component.

After building the component please raise a PR with a screenshot of the component and add the component in path of the file.
If you need to use any icon please use it from Hero Icons
Good luck.

Looks go also will review the PR. @rahulkarda


Deleting log file (linux)

I create file and sets it in logrus
tmp, _ := os.OpenFile(filepath.Join(dir, "Log_"+time.Now().Format("15.04.05")), os.O_CREATE|os.O_WRONLY, os.ModeAppend)
logrus.SetOutput(tmp)

In Windows, the file cannot be deleted, but in Linux, you can, maybe to create file somehow especially?

As you can see in gif, file is constantly being recorded, but the file was deleted

The program would need to be running as a service via https://godoc.org/golang.org/x/sys/windows/svc,  use windows tools to tell it to reload, and have a Handler that handles a reload request.
That reload request would open a new file, use SetOutput to tell logrus to start logging to the new file, then close the old file.
I don't really write windows programs, so can't offer any more guidance there.

On Linux you would do the same thing, just a different way, but setting up a signal handler that listens for a signal (like SIGHUP), opens a new file, uses SetOutput to start logging to the new file, then close the old file.

On the contrary, I do not want the Linux file to be deleted, now it is possible

@LazarenkoA Sorry, maybe I don't understand what you want to do then?

I want the file to not be deleted while it is recording

What is deleting the file?

The problem is this.
When my application write logs (using logrus), the user can delete the entire directory where the logs are written. (Linux in otlitsiya from Windows gives it to do)
After the file is deleted (the file that is installed via logrus.SetOutput) a new file is not created and in fact nothing is logged.

I don’t think we can do anything to solve your problem, this how most of
file systems work under Unix like operating system.
A already opened file descriptor can still written without notice even if
the file has been removed.
Le ven. 20 sept. 2019 à 10:24, Артем<EMAIL_ADDRESS>a écrit :

The problem is this.
When my application write logs (using logrus), the user can delete the
entire directory where the logs are written. (Linux in otlitsiya from
Windows gives it to do)
After the file is deleted (the file that is installed via
logrus.SetOutput) a new file is not created and in fact nothing is logged.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/sirupsen/logrus/issues/1023?email_source=notifications&email_token=ABJ5XRCSXKT552SEPMSFESLQKSCENA5CNFSM4IW22UU2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7F7E4Y#issuecomment-533459571,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABJ5XRGJ5YML2DKGHRXA3PLQKSCENANCNFSM4IW22UUQ
.

OK, thanks

Yeah, if the user has permissions to delete the file/dir it would work, but the logging will still continue to the open file descriptor. That is how files under most UNIX operating systems work.
You could do something crazy using fsnotify to get notified if the file or directory is deleted though, then do something in response to that. Something like: re-create the directdory/file and tell logrus to use the newly (re)created file; exit the program with an error; just stop logging; etc.


Migrate test-unit syntax -> rspec syntax

Updates the following usage of test-unit syntax.
38 | assert_equal
22 | assert_not_nil
16 | assert_redirected_to
14 | assert_nil
13 | assert_template
11 | assert_response
 2 | assert_not_equal
 2 | assert_requested

Looks like one of the jobs timed out on Travis. I'll see if I can rebuild.

I rebuilt that failed job. Looks like CI is green now :+1: :+1:


custom function failing

            <fx-function signature="filterProjects($lookup as xs:string, $nodes as element()*) as element()*" type="text/xpath">
                $nodes
            </fx-function>

This multi-param function is failing when being called.
It still work if there's just one argument but as soon as i add the $lookup param it throws an error in evaluateXPathToString.
It's btw independent of which function type to use xpath or javascript - same outcome.

What's the function callsite here? The eval to string is actually happening there

What's the function callsite here? The eval to string is actually happening there. We should make a test when we fix the bug.

The signature is filterProjects($lookup as xs:string, $nodes as element()*) as element()*
This is parsed with a regex to these parts:
[
    "filterProjects($lookup as xs:string, $nodes as element()",
    "filterProjects($lookup as xs",
    "string, $nodes as element",
    "",
    null
]``` which is very wrong.

Regex at `registerFunction.js#19` is wrong. I'll pick this up tomorrow!


Load wpf libraries outise visual studio

Hi,
I use PTVS. and I want to document the code with sphinx.
The problem is that sphinx try's to load the modules I wrote but it fails
to load the modules in which there is an import for the .net libraries (probably because
there is no appropriate path or something like that)
The problem also occurs when I try to load such a module in Visual Studio IronPython Interactive window
Is there a solution to this problem?
Thanks,
Ilan Hindy

I found the way to activate the python outside the visual studio (using add reference etc..)
but in order to activate sphinx I need 2 things:

set the default directory to Iron python directory and I did that
set IronPython the default python program that meens that when I print python the iron python
will be activated . The problem is that the name of the iron python program is ipy and not python
I tried to use windows set command but it didn't work

Glad you figured out the references.
I'm afraid I can't help with the Sphinx problem, but I see you've already posted on the sphinx-users mailing list, so I'm sure somebody will be able to help you there.
(Feel free to reopen if you think you need more help from our side.)


Add Smithery CLI Installation Instructions

This PR adds installation instructions to automatically install YouTube MCP for Claude Desktop using Smithery CLI. This makes it easier for users to install the MCP. Also, it adds a badge to show the number of installations from Smithery.

I think I'll politely decline this one. Thanks!


Number validation not working in Italian and Arabic

To replicate:

Clone & install repository, run via npm start, open localhost to browse

Go to validation via the menu; select US or GB validation
Enter number (used 4.33) in validation form; submit: See validation pass
Switch to Italian or Arabic; repeat process: Validation fails.
Enter number and validate in US/GB; switch to IT/AR; click submit: Number's value reported as NaN.

I'm sorry, but I can not re-create this problem. The online version built with AoT and the local version using dev-server work properly.
But I have a doubt: are you always insert 4.33? Because in this case is correct: US/GS use the point, IT uses the comma, and for Arabic you have to insert the number in Arabic, for example: ٣٫١٤

Another thing: clean everytime the field before/after changing language: this is only an example.


Objects made with multiple grouped elements break when moved on grid

Drawing objects that are constructed of multiple elements that have been grouped together to act as a single object will break apart when moved on the grid.
This includes most of the shapes distributed in the Shapes Library.
Steps to reproduce
place multi-element object from library on grid
select and drag object
Expected Result: Object maintains shape and snaps to grid as an object
Actual Result: Individual elements of the constructed object snap to grid independent of assigned grouping
Note: Issue does not happen when grid is off, or if the individual elements the object was constructed from were grid aligned during original construction.

Closing this issue as it is being addressed in this issue:
https://github.com/excalidraw/excalidraw/issues/7082
and is being worked on in this pull request:
https://github.com/excalidraw/excalidraw/pull/7107


Allow observing system to application links

@rmarow Any chance we could get this done this week? I know it's last minute, but I'm realizing we will also need this capability/flexibility in the connections

@hazelshapiro I think we can get this done!


M3-5809: Cloud Manager changes for Cypress move to Jenkins

Description
What does this PR do?
Adds a couple package scripts that will simplify the Jenkins work required to run our E2E tests, and cleans up the old workflow file that will no longer be used.

Creates a new cy:e2e:wait package script, which waits for localhost:3000 to respond before running tests, but otherwise behaves similarly to cy:e2e
Creates a new cy:ci package script, which runs yarn up and waits for localhost:3000 to respond before running tests, and kills both processes once the tests complete
Deletes e2e_pr.yml workflow

How to test
What are the steps to reproduce the issue or verify the changes?
Run yarn or yarn up to update dependencies (kill yarn up afterwards), and then run:
yarn cy:ci

Confirm that:

The tests run as expected, without the need to manually run yarn up
When the tests are finished, Cypress and webpack-dev-server both quit (check that localhost:3000 cannot be visited in your browser to confirm that webpack-dev-server is not still running in the background)

@jdamore-linode ahh we implemented something similar to this wait-on back in the day, but more by hand.. the remnants of it are still in the codebase! can you remove this as part of this PR? https://github.com/linode/manager/blob/develop/scripts/wait-for-it.sh

bumping


Move Trigonometric bloqs to common location

new folder arithmetic/trigonometric
Move ArcTan from mean_estimation/

@tanujkhattar do you remember the reference for the TComplexity of arctan? https://github.com/quantumlib/Qualtran/blob/e1bf3940ad5cc9368f4c5c9948f3305c822544d6/qualtran/bloqs/mean_estimation/arctan.py#L60-L62

@anurudhp Thanks for looking into this. The TComplexity of arctan is a gross under estimation and I'm the culprit for it :)
It comes from https://arxiv.org/pdf/2208.07544 which states the complexity to compute arctan; in bigO notation, should be $\mathcal{O}(n\log{n})$ and I dropped the $\log{n}$ term when implementing the "approximate" TComplexity here.
However, the argument for big-O complexity in the linked references essentially follows from reducing arctan to a bunch of constant multiplications (eg: as done in https://stackoverflow.com/a/23097989) and then using the complexity to multiply two numbers as $\mathcal{O}(n\log{n})$ from https://projecteuclid.org/journals/annals-of-mathematics/volume-193/issue-2/Integer-multiplication-in-time-Onmathrmlog-n/10.4007/annals.2<IP_ADDRESS>.short; which is an important theoretical result but requires very large numbers for the nlogn scaling to kick in. The best quantum implementations of multiplication circuits is probably https://arxiv.org/abs/2403.18006 which scales as $n^{1.3}$
Tl;Dr - We should probably update the approximate T-count to $\mathcal{O}(n^2)$, which is also the scaling we use for PlusEqualProduct and arctan reduces to a constant number of PlusEqualProduct.

Tl;Dr - We should probably update the approximate T-count to O(n^2) which is also the scaling we use for PlusEqualProduct and arctan reduces to a constant number of PlusEqualProduct.

Would it still be a constant number of PlusEqualProduct? Would it not depend on the target bitsize?


Fix lint errors and updated requirements.

New version of flake8 needs the imports below the path addition to also
have a comment to ignore them for the linter.
@lesv PTAL. This should make Travis happy.

LGTM


"isomorphic" is now "universal"

See the blog post that sparked the movement.
See also Universal React Boilerplate, and Learn JavaScript Universal App Development with Node, ES6, & React.

thanks @ericelliott will add Universal references into read me and such.

@ericelliott done. https://github.com/paypal/react-engine/pull/77

:+1:


Jorani/ICS Feed

Hi,
Good day. First of all I'm not really expert in server and network, nor PHP. Recently I just done setting up Jorani for my company and all run smoothly but just with 1 thing. When I trying to use ICS to connect it to my google calendar, its not working. I tried to open the link ICS given in Jorani and it end up Server Error 500.
My question is, do I need to do any configuration to enable the ICS ? Or allow some port from my firewall ( currently is port 80 for Jorani) ?

I think you probably wanted to post this in jorani's tracker?

Yes, please file this in their tracker. I have no idea about Jorani.

Sorry I mistaken the thread..


Request for istioctl subcommand to get Envoy version in use on pod

Describe the feature request
Get the envoy version used by the Istio proxy.
Currently, the latest version of Istio Docs instruct the user to do:
$ kubectl exec -it PODNAME -c istio-proxy -n NAMESPACE pilot-agent request GET server_info

However, that returns the commit from envoy/proxy.
We want to get the version of the Envoy proxy running, that is a commit on envoyproxy/envoy or istio/envoy.
Use Case
Given an issue in envoyproxy/envoy and a PR that fixes it, we want a straightforward way of checking if the PR's commits are inside the Istio proxy that is running.
Describe alternatives you've considered
Currently, to do that, we have to go to istio/proxy, open the WORKSPACE file and get the ENVOY_SHA used, as well as Envoy's repo.
There is an old issue: https://github.com/istio/istio/issues/6572
and PR: https://github.com/istio/istio/pull/11524
which are supposed to add this information to labels on the Docker images.
However, it seems that this isn't the case:
$ docker inspect -f '{{json .Config.Labels }}' istio/proxyv2:1.1.6
null

$ docker inspect -f '{{json .Config.Labels }}' istio/proxyv2:1.3.1
{"envoy-vcs-ref":"","istio-api-vcs-ref":""}

$ docker inspect -f '{{json .Config.Labels }}' istio/proxyv2:1.4.5
null

[X] Docs
[X] User Experience
[X] Developer Infrastructure
This is mainly @dimara's work, I'm just opening the issue.
/cc @dimara @elevran

How about istioctl proxy-config  bootstrap <pod> | jq .bootstrap.node.hiddenEnvoyDeprecatedBuildVersion as a work-around?
The output would be
"524cfb2be117f343fd25c609bdd622eca7c2b4f5/1.13.1-dev/Clean/RELEASE/BoringSSL"

jq is a common command line tool for parsing JSON, see https://stedolan.github.io/jq/

@yanniszark does this resolve your issue?

@esnible thanks for your answer.
I will try that out asap.
In any case, I believe we should document this in the docs, because this is a valid use case.
I would propose amending the current section to reflect that.
What do you think?

We have a command istioctl proxy-config bootstrap <pod> which outputs the JSON configuration for Envoy.  The other troubleshooting commands, proxy-config listeners, routes, clusters, secrets have option for short output or full JSON output.
I did not create an easy-to-use summary output for bootstrap because I did not know which Envoy bootstrap values were meaningful for troubleshooting configuration problems.
Do you have any insight on which Envoy global settings would make use in a troubleshooting summary command?

@esnible in our case, the question we want to answer is:
We know Envoy has a bug, documented in issue X.
We know issue X is fixed by PR Y.
Are the commits of PR Y inside the Envoy I'm running?
To check this, we have to know the commit version of the Envoy running inside the Istio proxy Pod.
This is why I think it should be documented explicitly.

@istio/wg-networking-maintainers-data-plane Would it be useful to provide a troubleshooting command to show the Envoy version running in a pod?  Should it be implemented by getting a config_dump and looking at the bootstrap info, similar to my work-around above?

@istio/wg-networking-maintainers-data-plane Would it be useful to provide a troubleshooting command to show the Envoy version running in a pod? Should it be implemented by getting a config_dump and looking at the bootstrap info, similar to my work-around above?

When envoy shows
            "userAgentBuildVersion": {
                "version": {
                    "majorNumber": 1,
                    "minorNumber": 14,
                    "patch": 1
                },
                "metadata": {
                        "build.type": "RELEASE",
                        "revision.sha": "12cfbda324320f99e0e39d7c393109fcd824591f",
                        "revision.status": "Clean",
                        "ssl.version": "BoringSSL"
                    }
            },

the SHA is istio/proxy sha not istio/envoy SHA which is what is requested here.
However, we are now based on Envoy releases not random SHAs, so using userAgentBuildVersion.version is actually probably pretty close

@esnible @howardjohn Just to make sure I understand this correctly; the fix would to have something like
istioctl proxy-config bootstrap --version output Istio Version + envoy's userAgentBuildVersion?

@yanniszark when we build the istio/proxy image, the istio.io/proxy/WORKSPACE file contains the Envoy-WASM SHA.   Is that SHA sufficient for you or do you need the SHA of base Envoy?  We do have the Envoy version, in my case 1.16, which should be enough to let users know which Envoy version to look up in https://www.envoyproxy.io/docs .
@howardjohn As a first step, printing the Envoy version (1.16) is a good start for the CLI.  How can we get the Envoy SHA into the metadata?  Envoy itself doesn't know it.  kubectl exec -it deployment/httpbin -c istio-proxy -- /usr/local/bin/envoy --version reports the same istio/proxy SHA as we see in the metadata.  Do we need someone from @istio/wg-test-and-release-maintainers to change the build to incorporate that SHA into the image?
Would it make sense for the output of istioctl pc bootstrap <pod> to say something like
Istio Proxy Version: 1.8-alpha.165c5ccd74e319eff194cd13fddfeefa2c027d09 (SHA 74d763048fa1d983999e4d875b4146e53ea3ca17)
Envoy Version: 1.16.0-dev/Clean/RELEASE/BoringSSL

@abhide I am using a daily build of the 1.8 data plane.  When I run istioctl pc bootstrap, I see
                    "ISTIO_PROXY_SHA": "istio-proxy:74d763048fa1d983999e4d875b4146e53ea3ca17",
                    "ISTIO_VERSION": "1.8-alpha.165c5ccd74e319eff194cd13fddfeefa2c027d09",

and
            "userAgentBuildVersion": {
                "version": {
                    "majorNumber": 1,
                    "minorNumber": 16
                },
                "metadata": {
                        "build.label": "dev",
                        "build.type": "RELEASE",
                        "revision.sha": "74d763048fa1d983999e4d875b4146e53ea3ca17",
                        "revision.status": "Clean",
                        "ssl.version": "BoringSSL"
                    }
            },

Soon envoy-wasm will be upstreamed so I think we don't need to worry about
that distinction? I think the SHA (vs version) is mostly on useful on the
master branch.
On Thu, Sep 24, 2020, 7:33 AM Ed Snible<EMAIL_ADDRESS>wrote:

@yanniszark https://github.com/yanniszark when we build the istio/proxy
image, the istio.io/proxy/WORKSPACE file contains the Envoy-WASM SHA. Is
that SHA sufficient for you or do you need the SHA of base Envoy? We do
have the Envoy version, in my case 1.16, which should be enough to let
users know which Envoy version to look up in
https://www.envoyproxy.io/docs .
@howardjohn https://github.com/howardjohn As a first step, printing the
Envoy version (1.16) is a good start for the CLI. How can we get the Envoy
SHA into the metadata? Envoy itself doesn't know it. kubectl exec -it
deployment/httpbin -c istio-proxy -- /usr/local/bin/envoy --version
reports the same istio/proxy SHA as we see in the metadata. Do we need
someone from @istio/wg-test-and-release-maintainers
https://github.com/orgs/istio/teams/wg-test-and-release-maintainers to
change the build to incorporate that SHA into the image?
Would it make sense for the output of istioctl pc bootstrap  to say
something like
Istio Proxy Version: 1.8-alpha.165c5ccd74e319eff194cd13fddfeefa2c027d09 (SHA 74d763048fa1d983999e4d875b4146e53ea3ca17)
Envoy Version: 1.16.0-dev/Clean/RELEASE/BoringSSL
@abhide https://github.com/abhide I am using a daily build of the 1.8
data plane. When I run istioctl pc bootstrap, I see
                "ISTIO_PROXY_SHA": "istio-proxy:74d763048fa1d983999e4d875b4146e53ea3ca17",
                "ISTIO_VERSION": "1.8-alpha.165c5ccd74e319eff194cd13fddfeefa2c027d09",

and
        "userAgentBuildVersion": {
            "version": {
                "majorNumber": 1,
                "minorNumber": 16
            },
            "metadata": {
                    "build.label": "dev",
                    "build.type": "RELEASE",
                    "revision.sha": "74d763048fa1d983999e4d875b4146e53ea3ca17",
                    "revision.status": "Clean",
                    "ssl.version": "BoringSSL"
                }
        },

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/issues/21517#issuecomment-698383706, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAEYGXKFDZIFVBAYHND5YOTSHNKCHANCNFSM4K4IEU3Q
.

Thanks @esnible I will make the changes to istioctl pc bootstrap command output and submit a PR.

@abhide Are you working on this?  If not, let's unassign you.

I'm interested in taking this one

This feature is added by https://github.com/istio/istio/pull/33359
Users can now access quick version info as follows:
$ istioctl proxy-config bootstrap -o short <POD>
Istio Version:       1.10.0
Istio Proxy Version: 436f365a8007cd8a13a9f1321e7cce94bcc8883e
Envoy Version:       1.18.3/Clean/RELEASE/BoringSSL

Closing this


Bug/draggable fix

Fixes #47 by exempting .form-control from desktop dragging
Also adds a .not-draggable utility class to allow other elements to be exempted as-needed

:+1: nice


Identity scaffolder should generate login partial if it doesn't already exist

Repro steps:

Create an ASP.NET Core Web App
Right-click -> Add Scaffolded Item ...
Leave layout blank, create new data context, click Add

Expected result:

App builds and runs

Actual result

The default app layout is modified to add the login partial, which was not generated as part of running the identity scaffolder

Workaround:

Select the login partial checkbox when running the scaffolder

You shouldn't have to specify that you want to override the login partial. It should always be generated if it doesn't exist next to the specified layout.

Dup of #724


Add alert when popup is blocked

Summary

While it's unlikely, the popup may get blocked on some browsers due to strict popup blockers. This PR adds an alert to inform the user to disable their popup blocker when the popup gets blocked.

How did you test your changes?

Manually and unit tests

How to test:

Comment out this line
Attempt to sign a transaction using the test app

https://github.com/coinbase/coinbase-wallet-sdk/assets/16995513/7b6584a3-8bef-4226-a43f-367124e960ea

thanks a lot @arjun-dureja for exploring these options 🙏 🙏 🙏
let's figure out how we can offer more refined experience.