Merge stabilization -> dev

Looks like there are a couple of merge conflicts...

Okay! I've resolved the conflicts in a different PR (easier to do this locally):
https://github.com/microsoft/MixedRealityToolkit-Unity/pull/7979
Closing this one out in favor of that one.


Change locale path from "locales" to "locales/xwalk"

Both Crosswalk and Chrome they place the en-US.pak into folder
"locales" in build of Linux and windows. Potientially there is
conflicts, so it's better to set Crosswalk's locale-path as
"locales/xwalk".

@rakuco   Thanks.

Call stack of get locale path:
ResourceBundle::LoadLocaleResources
ResourceBundle::GetLocaleFilePath()
PathService::Get(ui::DIR_LOCALES, &locale_file_path);

Hardcoding the paths like that will break any non-Crosswalk (e.g content shell) builds. What you need is to subclass ui::ResourceBundle::Delegate and implement its GetPathForLocalePack() method in Crosswalk. There's no need to change anything here.
You can see an example of what I'm talking about in src/chromecast/common/cast_resource_delegate.{cc,h}.


Class variable

This is another take on #723 (an alternative to #734). As such it partially undoes #721 (parser changes).
It is still a hack, because __class__ variables are now manages as global variables named $__class__NN, not an ideal situation, but it is meant as a proof-of-concept for how a __class__ variable should behave. In particular, it seems that a __class__ variable behaves as a regular class scope variable that just happen to be initialized to the class type. For instance, it is possible to set __class__ to any value, even if it is not a type (e.g. it is possible to set it to a number), while setting the attribute __class__ is guarded against invalid values.
Alternative implementations to global variables:

use an ordinary local variable as __class__, placed in the class scope and lifted to be a closure cell; this is my favourite, but I was unable to get it work (2ac9d8ce)
use a closure from the parent scope to place __class__; it works OK but only for non-top-level classes and still pollutes the namespace, this time the local one
use a separate closure from the parent closure, which is managed by the class scope itself; since 2. works, this should be possible as well, but I was unable to get it to work (with the same error as with 1., so maybe I am overlooking something) (2d954769)
use a separate dedicated storage that is out of sight, perhaps as part of the context

@slozier @isaiah @in-code-i-trust

Closing this in favor of https://github.com/IronLanguages/ironpython3/pull/1087.


add bluemix-cli (0.3.3)

[X] Checked there aren’t open pull requests for the same cask.
[X] Checked there aren’t closed issues where that cask was already refused.
[X] When naming the cask, followed the token reference.
[X] Commit message includes cask’s name.
[X] brew cask audit --download {{cask_file}} is error-free.
[X] brew cask style --fix {{cask_file}} left no offenses.
[X] brew cask install {{cask_file}} worked successfully.
[X] brew cask uninstall {{cask_file}} worked successfully.

What are you trying to do with early_script and script? What’s the goal?
Either way, they’re being misused. You’re looking for uninstall_preflight.

@vitorgalvao trying to remove lines that MAY be added to either of 3 locations - /etc/profile, ~/.bashrc, ~/.zshrc - latter two may not even exist, hence separate sed invocations.

Oh, I see now what they’re doing. Still, *flight stanzas are the correct ones, there (and will be simpler to implement and more readable).
Also, to make sure no wrong lines are deleted, make sed use ^ and $ for start and end on line (i.e. catch the lines that have only and exactly that text.

@vitorgalvao sed fixed. will look at *flight*. thx

Thank you for the contribution. It needed some fixes, so they were made in a45606ddd9292b2ca955c4c2bbe5ab583e6433e2. Your contribution is still included (and still credited to you), with the appropriate modifications. Please feel free to ask about any of the changes.

@vitorgalvao ok… sorry i didn't get to come back to this. but:

sed of /etc/profile needs to be done as root (sudo)
either or both of ~/.bashrc or ~/.zshrc may not exist

so uninstall isn't quite working.
I'd suggest 3 separate system lines, all optional (failure ignored):

sudo … sed … /etc/profile
sed … ~/.bashrc
sed … ~/.zshrc

Otherwise, uninstall fails with sed: /etc/profile: permission denied, and doesn't fix ~/.bashrc (because sed has failed).

https://github.com/caskroom/homebrew-cask/pull/22610


feature: add cooldown command

Need to merge https://github.com/colopl/laravel-spanner/pull/53 first.


[enhancement] Copy-SqlDatabase updated to utilize Restore functions for -BackupRestore parameter

Is this a feature OR bug:
Copy-SqlDatabase (or soon to be Copy-DbaDatabase) needs to be updated to utilize the Restore-DbaDatabase when the backup and restore parameter is provided.

fasho, @Stuart-Moore implemented this 😇


⚠ ClamAV has degraded performance

In a34578b, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 208 ms

Resolved: ClamAV performance has improved in 24c45c9.


DCOS-39297: update version to match UI kit

Testing

Check this branch out (git checkout danielmschmidt/DCOS-39297)
Rebase a branch that uses the Cell component on top of it. (e.g. git rebase danielmschmidt/DCOS-39069 )
Activate the new NodesTable

Change this line in NodesTableContainer.js
-import NodesTable from "../../../components/NodesTable";
+import NodesTable from "../../../components/NodesTable-new";

If it compiles it solves the described issue.
Trade-offs

There might be other ways to solve this issue that I don't know of, but all my research hinted in this direction

Dependencies

None

@DanielMSchmidt myself and @tnguyen0 tested a couple times and we did find some issues that were probably our fault but I would make sure it's actually working.


Test release script again

Current dependencies on/for this PR:

main

PR #172   👈

This stack of pull requests is managed by Graphite.


Rustfmt loses comments in variants between the name and the discriminant

Consider this code that I don't consider to be pretty:
pub enum JmpCondition {
	Overflow = 0b0000,
	NoOverflow = 0b0001,
	Below /* or NotAboveOrEqual */ = 0b0010,
	AboveOrEqual /* or NotBelow */ = 0b0011,
	Equal /* or Zero */ = 0b0100,
	NotEqual /* or NotZero */ = 0b0101,
	BelowOrEqual /* or NotAbove */ = 0b0110,
	Above /* or NotBelowOrEqual */ = 0b0111,
	Sign = 0b1000,
	NoSign = 0b1001,
	ParityEven /* or Parity */ = 0b1010,
	ParityOdd /* or NotPar */ = 0b1011,
	Less /* or NotGreaterOrEqual */ = 0b1100,
	GreaterOrEqual /* or NotLess */ = 0b1101,
	LessOrEqual /* or NotGreater */ = 0b1110,
	Greater /* or NotLessOrEqual */ = 0b1111,
}

Invoking rustfmt on this strips the comments, and while I can agree that's not the best place to put them I'd expect rustfmt will not go to destroy them.
Versions: 1.5.1 / 1.5.2-nightly.

Thanks for the report!
Confirming I can reproduce this with rustfmt 1.5.2-nightly (34f9ca28 2023-02-16).
The issue is that rustfmt isn't expecting to find comments in that location and doesn't try to recover them when rewriting the  enum variant. I also want to highlight that this is an issue for all enum variants:
Running rustfmt on the following:
enum VanishingComments {
    Identifier /* Comment */ = 1,
    Tuple(usize) /* Coment */ = 2,
    Struct{name: String} /* Comment */ = 3,
}

produces:
enum VanishingComments {
    Identifier = 1,
    Tuple(usize) = 2,
    Struct { name: String } = 3,
}

Until this is resolved your best option might be to use #[rustfmt::skip] to prevent rustfmt from performing any rewriting.
#[rustfmt::skip]
pub enum JmpCondition {
	Overflow = 0b0000,
	NoOverflow = 0b0001,
	Below /* or NotAboveOrEqual */ = 0b0010,
	AboveOrEqual /* or NotBelow */ = 0b0011,
	Equal /* or Zero */ = 0b0100,
	NotEqual /* or NotZero */ = 0b0101,
	BelowOrEqual /* or NotAbove */ = 0b0110,
	Above /* or NotBelowOrEqual */ = 0b0111,
	Sign = 0b1000,
	NoSign = 0b1001,
	ParityEven /* or Parity */ = 0b1010,
	ParityOdd /* or NotPar */ = 0b1011,
	Less /* or NotGreaterOrEqual */ = 0b1100,
	GreaterOrEqual /* or NotLess */ = 0b1101,
	LessOrEqual /* or NotGreater */ = 0b1110,
	Greater /* or NotLessOrEqual */ = 0b1111,
}

Thanks! #[rustfmt::skip] is an overkill, I switched to comments outside of variants.

@rustbot claim


Center-of-Projection (COP) handling is wrong in UnrealEngine4 (or RenderManager) with our custom HMD

Our team have been playing with OSVR-Unreal integration for 2 days, and encountered an significant issue where the rendered stereo images do not align in our HMD, the same object in left eye and right eye are too far away to create a combined stereoscopic view.
The same issue actually appeared when we're evaluating OSVR-Unity the first time, after we adjusted the center_proj_x setting to 0.6/0.4 according to the specs of our HMD, the views align perfectly.

Now with the same settings, they do not align any more in OSVR-Unreal, so I started messing with some parameters and capture the output from both Unity3D and UE4, and found out the difference.
Firstly let's set the distortion to identity and set center_proj_x to a extremely biased value (for example 0.8/0.2).

Output from Unity3D:

Output from UE4:

It's not very obvious what's wrong, let's add some odd distortion to visualize the 'center of projection'.

Output from Unity3D: (you can see that when we put the boxes at the COP in left eye, the same boxes also appear at the COP in right eye, this is perfectly aligned to someone with a super-narrow IPD :)

Output from UE4: (when boxes is put at the COP in left eye, the same boxes is way off in right eye)

I hope this may give some lead.
P.S. Later I messed around with OSVR-Oculus-Rift plugin and a DK2, no matter what value is given to center_proj_x, the output looks great in UE4 (but unaligned in Unity3D unless center_proj_x is set to 0.5/0.5), I suppose it's because the actual physical COP of DK2 is exactly 0.5/0.5 where the output of OSVR-Unreal perfectly matches this metric. And another question arises, I see that HDK 1.3 is using a 0.471/0.529 COP setting from the sample config, so does it look correct in UE4?

There is a fix in the works for the projection code to use the overfill-adjusted projections from RenderManager. In the meantime, could you set your renderOverfillFactor to 1.0 in your renderManagerConfig and see if that improves your center of projection? It still won't be exactly right (the RM projection and the OSVR-Core projection clipping planes are still slightly different even with renderOverFillFactor of 1.0), but it should be closer.
If it's still off, let us know.

@JeroMiya Thanks for the tip, I've tried your solution but unfortunately it's still off.
OverfillFactor 1.5:

OverfillFactor 1.0:

See https://github.com/OSVR/OSVR-Docs/blob/master/Configuring/projectionAndViewMatrices.md for a description of the OSVR RenderManager transformations, with details of the meanings for center of projection, fields of view, overlap percentage and so forth in https://github.com/OSVR/OSVR-Docs/blob/master/Configuring/distortion.md and to see how to programmatically set them from a new HMD along with distortion correction, https://github.com/OSVR/distortionizer/blob/master/angles_to_config/doc/anglesToConfig.md

It is correct that the DK2 has its eyes centered on the halfs of the screen, so has 0.5 as its X COP.  The OSVR HDK has slightly offset centers of projection, as reflected in the different offsets.

@russell-taylor Thanks for the guides, I thought I've read these thoroughly and fully understanding what the COP means, I'll read these again to ensure nothing is missed, but for now I still suppose the problem is not on our side, because in UE4 center_proj_x only changed 'the center of the radial distortion', while in Unity3D it changed both 'the center of the radial distortion' and 'the center of the rendered image', and our HMD looks correct in Unity3D.
Meanwhile I've accidentally found out that when our display resolution is set to 1920x1080 as the same as DK2, the views align correctly in UE4, but in full resolution 2560x1440 views do not align and looks far apart just as I reported previously, hope this can give some lead.

Glad to hear that you had already found the docs.  As Jeremy said, there is a fix in the works for UE4 that uses the RenderManager projection matrices that should help on that platform.

It should already be merged into master.

@JeroMiya Nice to know that! Is there a pre-built binary package to download?

@JeroMiya Nice to hear that! I would like to known when will this be included in the pre-compiled binaries.

@russell-taylor @JeroMiya I've updated both OSVR-Runtime and OSVR-Unreal to the latest version, OSVR-Runtime to v0.6-1194-g0c54f5e, OSVR-Unreal to b60d5d, and still no luck.
I suppose the 'projection matrices fix' you mentioned is in commit 0f51e9, unfortunately after this commit the left and right eye looks even further away in HMD.

If things are working for you in the RenderManager example programs and Unity, then it looks like we need to take another look at the Unreal plug-in to see what is going on.  If it fails in all three, we'll need to take another look at RenderManager and/or how the configuration files match the HMD.

@russell-taylor Just confirmed again, it's PERFECT in both the RenderManager example and Unity, the issue only appears in Unreal.

We're looking into this with the HDK 2.0, which reproduces the problem.  Testing with a current build of and Unreal demo.  Failing that, we'll take a look at the following:
[4:25 PM] Jeremy Bell: here is where the projection is calculated: https://github.com/OSVR/OSVR-Unreal/blob/rel-ue-4.12/OSVRUnreal/Plugins/OSVR/Source/OSVR/Private/OSVRHMDDescription.cpp#L255 which we call from here: https://github.com/OSVR/OSVR-Unreal/blob/rel-ue-4.12/OSVRUnreal/Plugins/OSVR/Source/OSVR/Private/OSVRHMD.cpp#L650
[4:26 PM] Jeremy Bell: And this is where we get the projection clipping planes from render manager: https://github.com/OSVR/OSVR-Unreal/blob/rel-ue-4.12/OSVRUnreal/Plugins/OSVR/Source/OSVR/Private/OSVRCustomPresentD3D11.h#L164

We've gotten this fixed in the latest master of RenderManager, and it has been tested in the latest Unreal. We replaced the projection transforms used by the Unreal plug-in with ones that work in this case.

@russell-taylor have we actually tested with the above configuration from @ccll? Also the OSVR-Unreal branch that uses the new API isn't merged yet.

@russell-taylor I've sent you an email<EMAIL_ADDRESS>with our HMD config json attached, hope that can help debugging the issue.
@JeroMiya Sorry but I couldn't find your email on Github.

Here is OSVR-Unreal with the updated projection code. @ccll does this look about right to you? Seems like this has fixed it. This is your "extreme" configuration above you used to demo the issue. Also, I'm using a renderOverfillFactor of 1.5 in this screenshot.

@JeroMiya Great! It looks correct in the screenshot, I'm curious how it looks like in the VRGate HMD.

@ccll This is now merged into OSVR-Unreal:
https://github.com/OSVR/OSVR-Unreal/pull/75


sample app deploy to remote cluster issue when argocd CRDs are not exist

when deploying to argocd managed remote cluster, if there's no argocd CRDs exist, an error will popup and preventing the deployment from success.
Currently the workaround is to simply deploy an Argocd instance on the target remote cluster before the gitops deployment started.

Didn't understand why it requires ArgoCD CRD to exist on remote cluster, since Arg CD will not be deployed there. The ArgoCD CR created is aimed to customize the Argo CD behavior that's deployed in local cluster, not the remote cluster. Maybe it's because of hard-coded destination server URL. With that, there are two pieces when deploy sample app, one is the ArgoCD CR, it will be deployed in local cluster, this is onetime action to configure your Argo CD as GitOps control plane, which should not be coupled w/ sample app deployment. All others that are related to sample app deployment will be deployed to remote cluster. Can it be resolved by clearly documenting the two separate steps? @huang-cn

I think it might be an issue with argocd with remote cluster, when there's Argocd CR created, argocd will look for the CR in the remote cluster as well.

I guess it depends on the steps that are documented in our instructions. We need to clearly document that there are two steps:

To sync argocd CR in-cluster
To sync sample app stuff to remote cluster

@huang-cn

@morningspace agree, we'll need to doc these steps.


Manage each component as independent npm module

I wonder if we can move these down to the componenet level -- making each one of our components an indepdendently installable npm module (optionally).
Originally posted by @Sing-Li in https://github.com/RocketChat/RC4Community/pull/78#discussion_r805189033

@sidmohanty11     Absolutely 😍 to see this.   It was in the long term mind-roadmap  (I didn't think we'd reach this point in 2022 actually)
But if you can do this (or set the foundation)  NOW - it would be amazing.

@sidmohanty11   but this does entail a Proof-of-Concept by moving ALL our current components to npm format.
Please don't overload the current PR with all the components, but start separate ones for each (group of) component.   Or even advise team-mates of the "how" and let them take care of  nmp'ing their own modules.

@Sing-Li  Sure! As this is going be a big change, let me prepare a full-proof working model design (that can be helpful for people joining in, they can also understand the flow) and I will share you my process on the way.


HIP separable compilation linking fails when passed archives

Found while working on implementing HIP support in CMake
Tested with compilers provided with ROCm 3.5 and 3.7
Given the following CMake:
cmake_minimum_required(VERSION 3.18)

project(static-lib-rdc HIP)

set(CMAKE_HIP_FLAGS "-fgpu-rdc")
set(CMAKE_HIP_ARCHITECTURES gfx908)

add_library(static-lib file1.cxx file2.hip.cxx file3.hip.cpp file4.hip file5.cu)

add_executable(verify main.cu)
target_link_libraries(verify PUBLIC static-lib)
set_source_files_properties(
    file1.cxx file2.hip.cxx file3.hip.cpp file4.hip file5.cu main.cu
  PROPERTIES
    LANGUAGE "HIP"
)

We get the following error when trying to link the verify executable
/opt/rocm/bin/hipcc -fgpu-rdc --amdgpu-target=gfx908 CMakeFiles/verify.dir/main.cu.o -o verify  libstatic-lib.a
clang-11: error: no such file or directory: '/tmp/hipcc0wDdnRUU/file1.cxx.o /tmp/hipcc0wDdnRUU/file2.hip.cxx.o /tmp/hipcc0wDdnRUU/file3.hip.cpp.o /tmp/hipcc0wDdnRUU/file4.hip.o /tmp/hipcc0wDdnRUU/file5.cu.o'

It looks something is going wrong and the clang-offload-bundler files are not being placed in the correct location or being removed before linking.

How did you build the static-lib? If it contains HIP code, please build using clang++ with flags -fgpu-rdc --emit-static-lib -o libstatic-lib.a.
Then when linking with it, please link with these flags in target_link_libraries, -lstatic-lib -L/path/to/libstatic-lib.a.

It looks like switching the link line to the following does work:
hipcc -fgpu-rdc --amdgpu-target=gfx908 CMakeFiles/verify.dir/main.cu.o -o verify -lstatic-lib -L.

Unfortunately this isn't a solution that is acceptable for CMake.
Link lines like these are ambiguous espescially when linking to multiple numerous libraries in different locations. Since we haven't given explicit paths to any of the libraries we could errantly pick up the wrong static-lib when given multiple link directories. CMake transforms link lines to use explicit paths whenever to possible to avoid such ambiguities.

Shouldn't cmake use clang directly and not hipcc since hipcc doesn't understand the cmake build environment?

If it contains HIP code, please build using clang++ with flags

What if the user is using -fno-gpu-rdc? Is that only possible with shared libraries?

Then when linking with it, please link with these flags in target_link_libraries

Is the -l flag necessary, or can the path to the static lib be passed directly to the compiler?

Shouldn't cmake use clang directly and not hipcc since hipcc doesn't understand the cmake build environment?

I am working on getting CMake to understand two things:

HIP as a compilation language
hipcc / hipclang as a unique compiler compared to upstream clang.

Is the -l flag necessary, or can the path to the static lib be passed directly to the compiler?

The original bug report is that the link lines CMake is currently generating for my work to get HIP language support currently don't work with HIPClang. All build-systems are effect by this issue.

Shouldn't cmake use clang directly and not hipcc since hipcc doesn't understand the cmake build environment?

If it contains HIP code, please build using clang++ with flags

What if the user is using -fno-gpu-rdc? Is that only possible with shared libraries?

If the user is using -fno-gpu-rdc, then they can compile all their source objects normally using -fno-gpu-rdc -c -o source.cpp.o. Then archive them using cmake's ar, ar rcsD list.cpp.o of.cpp.o sources.cpp.o, I think cmake already has this functionality if you add option(BUILD_SHARED_LIBS "Build as a shared library" OFF) to the project.

Then when linking with it, please link with these flags in target_link_libraries

Is the -l flag necessary, or can the path to the static lib be passed directly to the compiler?

The clang++ compiler will accept these two flags. However just passing the path to static lib is not enough, I think you have to also have -l too.

The original bug report is that the link lines CMake is currently generating for my work to get HIP language support currently don't work with HIPClang. All build-systems are effect by this issue.

As a workaround, you may try this:
add_dependencies(verify static-lib)
target_link_libraries(verify PRIVATE -lstatic -L${CMAKE_CURRENT_BINARY_DIR})

I will discuss with my team about consuming the libstatic-lib.a as an input.

The clang++ compiler will accept these two flags. However just passing the path to static lib is not enough, I think you have to also have -l too.

upstream clang and hipclang both consider the line /opt/rocm/bin/hipcc -fgpu-rdc --amdgpu-target=gfx908 CMakeFiles/verify.dir/main.cu.o -o verify  libstatic-lib.a  to be entirely valid when gpu-rdc is disabled.

The clang++ compiler will accept these two flags. However just passing the path to static lib is not enough, I think you have to also have -l too.

Are you sure? We already are building with static libs in MIOpen, rocBLAS, etc using cmake, so the explicit path should be working?

The clang++ compiler will accept these two flags. However just passing the path to static lib is not enough, I think you have to also have -l too.

Are you sure? We already are building with static libs in MIOpen, rocBLAS, etc using cmake, so the explicit path should be working?

Sorry, you're right, when gpu-rdc is disabled, giving the path to static lib works fine.

hipcc / hipclang as a unique compiler compared to upstream clang.

Well there is no hipclang driver, its just clang++(from rocm or upstream) with -x hip. For cmake, clang++ with the hip::device cmake target should be preferred over hipcc. hipcc is mainly for non-cmake users, and has lots of limitations(requires a lot custom env variables to find its dependencies, and doesnt work with upstream static libs).

@pfultz2 As far as I am aware the clang++ provided by rocm is not equivalent to upstream clang++ as it contains modifications that have not yet been accepted upstream. Therefore the ROCM provided clang compiler must be identified with a unique id and version number since it diverges from upstream.

Well there is no hipclang driver, its just clang++(from rocm or upstream) with -x hip.

It would be great to have Rocm provide clang++ or some other alias inside the rocm/bin folder as currently the only easily discoverable compiler is hipcc.

For cmake, clang++ with the hip::device cmake target should be preferred over hipcc

Yes long term would be to have CMake understand the following:

upstream Clang aka COMPILER_ID Clang supports the HIP language ( -x hip )
rocm Clang aka COMPILER_ID HIPClang ( subject to change ) supports the HIP language

Due to how CMake's internal compiler detection works, we simply can't rely on the existence of hip::device target as compiler detection can occur before any find queries. The approach for upstream Clang support most likely will follow how CMake added support for Clang as a CUDA compiler in 3.18.

hipcc doesnt work with upstream static libs

Can you elaborate or point me towards more information on this?

As far as I am aware the clang++ provided by rocm is not equivalent to upstream clang++ as it contains modifications that have not yet been accepted upstream. Therefore the ROCM provided clang compiler must be identified with a unique id and version number since it diverges from upstream.

Yes, unfortunately we don't have a distinguished version, but we should.

It would be great to have Rocm provide clang++ or some other alias inside the rocm/bin folder as currently the only easily discoverable compiler is hipcc.

I think we want to install everything into /opt/rocm, and drop these subdirectories(ie /opt/rocm/llvm, /opt/rocm/hip, /opt/rocm/miopen, etc).

rocm Clang aka COMPILER_ID HIPClang ( subject to change ) supports the HIP language

How would you tell if its rocm clang? Because right now, the version is the same as upstream clang.

Due to how CMake's internal compiler detection works, we simply can't rely on the existence of hip::device target as compiler detection can occur before any find queries.

Why would the compiler detection need hip::device? I assume this would be used by the user as the compiler and the runtime are seperate components. I assume the detection would just check if --cuda-host-only -x hip are valid compilation flags.

Yes, unfortunately we don't have a distinguished version, but we should.

I agree, see: https://github.com/ROCm-Developer-Tools/HIP/issues/2150

How would you tell if its rocm clang? Because right now, the version is the same as upstream clang.

No matter the language the __HIP__ define is specified. When that is detected we know we are 'HIPClang' and normally would extract the version from the pre-processor. Currently we will extract that information by calling the compiler again with --version and extracting the ROCm toolkit version and using that as the compiler version.
will answer last question later.

When that is detected we know we are 'HIPClang'

But having__HIP__ defined doesn't mean we aren't using upstream clang? In fact, clang-10 shows it defined:
$ echo | clang++-10 -x hip --cuda-host-only -dM -E - | grep -i hip
#define __HIPCC__ 1
#define __HIP__ 1

Currently we will extract that information by calling the compiler again with --version and extracting the ROCm toolkit version and using that as the compiler version.

But clang doesn't show the rocm version? Furthermore, the rocm version may not be available if its built from source.

In fact, clang-10 shows it defined

Well dang, that is really problematic.
CMake needs a way to uniquely identify the clang compiler shipped as part of the ROCm toolkit.

But clang doesn't show the rocm version?

upstream clang compiler version information is extracted via the pre-processor.
The root issue here is that the ROCm derivation of clang has zero identifiable pre-processor defines. We shouldn't identify it with compiler vendor of clang and the related clang version as that will cause downstream projects that have specific clang checks to potentially break.

Furthermore, the rocm version may not be available if its built from source.

To be honest, this is the least of our worries if we can't fix the above issues.

Why would the compiler detection need hip::device? I assume this would be used by the user as the compiler and the runtime ? are seperate components. I assume the detection would just check if --cuda-host-only -x hip are valid compilation flags.

For compiler detection we can explicitly pass --cuda-host-only and extract the required information.
The question will be how do we solve ( or can we? ) the following example project where the user tries to compile and run a block of HIP code that needs the HIP runtime.
cmake_minimum_required(VERSION 3.19)
project(try_hip HIP)

try_run( ...  srcfile.hip ...)

The root issue here is that the ROCm derivation of clang has zero identifiable pre-processor defines.

The goal of hip-clang is to have everything upstreamed so users can build from the HEAD of llvm. However, our fork many times has features that our still in the review queue of upstream llvm, so we should have a unique way of identifying our fork. Either we provide a __rocm__ define or say rocm-clang version: in the output of --version. Perhaps @yxsamliu or @aaronenyeshi can comment on that feasibility.

For compiler detection we can explicitly pass --cuda-host-only and extract the required information.

Thats good, because using --cuda-device-only requires finding rocm device libs, which needs cmake search paths.

The question will be how do we solve ( or can we? ) the following example project where the user tries to compile and run a block of HIP code that needs the HIP runtime.

Is this because try_run cannot implicitly link the hip::device target?

Is this because try_run cannot implicitly link the hip::device target?

Was thinking about this more, and will report back after I have done some exploration.

Closing this as passing static libraries explicitly on the link line when using RDC now works ( verified with 3.9 )

Tried again with 4.1.1 and this seems to fail again


api.SendTextMessage(...) not working

Tried calling it with working IDs and always the response status code is 400 (Bad Request). Also tried my own ID, even than it's still not working.
Exception details:
System.Net.Http.HttpRequestException
Response status code does not indicate success: 400 (Bad Request).

Oh, there was a typo, which coused that...


feat: initial version

This is the initial version of the module, with a wrapper for the textinput bubble.

Codecov Report

:exclamation: No coverage uploaded for pull request base (trunk@a1cc7a3). Click here to learn what that means.
Patch has no changes to coverable lines.

:exclamation: Current head 04ba350 differs from pull request most recent head 332b043. Consider uploading reports for the commit 332b043 to get more accurate results

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@           Coverage Diff            @@
##             trunk       #1   +/-   ##
========================================
  Coverage         ?   79.06%
========================================
  Files            ?        1
  Lines            ?       43
  Branches         ?        0
========================================
  Hits             ?       34
  Misses           ?        8
  Partials         ?        1

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Change rendering of help texts to conform to design

Note: Please transform - [ ] into - (NA) in the description when things are not applicable
Related issues

Fixes #1767
Description

Set new styles for form-text (help-text)
Motivation & Context

Apply changes in design after DSM V5 release
Types of change

Bug fix (non-breaking which fixes an issues)

Live previews

https://deploy-preview-1779--boosted.netlify.app/docs/5.2/forms/overview/

Checklist

Contribution

[x] I have read the contributing guidelines

Accessibility

[x] My change follows accessibility good practices; I have at least run axe

Design

[x] My change respects the design guidelines defined in Orange Design System
[x] My change is compatible with responsive display

Development

[x] My change follows the developer guide
[ ] I have added JavaScript unit tests to cover my changes

Documentation

[x] My change introduces changes to the documentation and/or I have updated the documentation accordingly

Checklist (for Core Team only)

[x] My change introduces changes to the migration guide
(NA) My new component is added in Storybook
(NA) My new component is compatible with RTL
[ ] Manually run BrowserStack tests
[ ] Manually test browser compatibility with BrowserStack (Chrome >= 60, Firefox >= 60 (+ ESR), Edge, Safari >= 12, iOS Safari, Chrome & Firefox on Android)
[ ] Code review
[ ] Design review
[ ] A11y review

After the merge

[ ] Manually launch Percy tests

I can see a shift of 1px between the text and the input compared to the design, but let's keep it for the design review!

Yes, you're right, but it is consistent with error messages though...

Still awaiting for design review, we'll see what Franco will say (card "Dev. Design review >> Forms Help text")

Looks good. As you mentioned in your comment in this pull request, there is a 1 px difference in the positioning to the visual specification.
 If it is possible to move the Help text 1 px down, that would be perfect. Thanks

From DSM or Zeplin, it is asked 6px of top margin, but it makes 10px from the bottom of the input and the top of the uppercase letters, see screenshots below:
DSM (Validation error message):

Zeplin (Validation error message)

Zeplin (Form text):

In Boosted, we have currently (not changed), for error message 9px:

So, when I implement Help text, I have the same than for error, 9px:

So, does it mean that error messages should be 1 px lower too? @julien-deramond @Franco-Riccitelli


Tron should have a "Identity" Disc script

@vocatus
I believe that like all good "programs" Tron should have a "Identity" Disc. This can be a script of frequently used 'tools' that Tron can use to fight for the Users.
One such 'tool' could be:
:: Pause X
:tron_wait_x
ping -n %1 localhost >nul
goto :EOF
This could be called from the different batch files.
Instead of having in the script
ping <IP_ADDRESS> -n 180 > nul 2>&1
you could have
call "functions\tron_disc.bat" tron_wait_x 180
Another tool could be determining "Bitness" of the system.
Set "_Bitness=64"
IF "%PROCESSOR_ARCHITECTURE%" == "x86" (
IF NOT DEFINED PROCESSOR_ARCHITEW6432 Set "_Bitness=32" )
Then all scripts that require the information could just check for the "%_Bitness%" variable.

Thanks for the suggestions @RedBaron2. Many of the things you mentioned are already implemented in Tron in one form or another. For example:

"Pause" command or similar - I don't really see a benefit to creating another sub-script just to embed the ping command in it, since we can just call ping directly from anywhere already.

Determining bitness of the system - again something I don't see any benefit to creating another script or function for. The %PROCESSOR_ARCHITECTURE% variable is a system variable and present on every Windows system already; what benefit would we gain by creating another variable that, more or less, duplicates the information already contained there?

@vocatus

I don't really see a benefit to creating another sub-script just to embed the ping command in it, since we can just call ping directly from anywhere already.

I could make the same argument for your use of echo in the log.bat file. I will just agree to disagree at this time, and close this issue.


Got Access denied error when I tried to access DB in Kernel.php.

I tried to use the "Task Scheduling", the codes below in the function schedule() of file Kernel.php,
DB::table('table name')->delete();
but I got the error below,
SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: YES)
Did anyone meet this before?

Fixed, just log in to the container, then the command "php artisan schedule:run" works.
docker exec -it [container_id] bash

Hi! Not sure this issue is in the right repo?


HBASE-27390: prevent NPE when task status is null

Simple null check to prevent the following spam when a task does not have a status.
[RpcServer.default.FPBQ.Fifo.handler=29,queue=2,port=60000] ERROR org.apache.hadoop.hbase.ipc.RpcServer: Unexpected throwable object
java.lang.NullPointerException
at org.apache.hadoop.hbase.shaded.protobuf.generated.ClusterStatusProtos$ServerTask$Builder.setStatus(ClusterStatusProtos.java:14352)
at org.apache.hadoop.hbase.shaded.protobuf.ProtobufUtil.toServerTask(ProtobufUtil.java:3565)
at org.apache.hadoop.hbase.ClusterMetricsBuilder.lambda$toClusterStatus$4(ClusterMetricsBuilder.java:80)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1655)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578)
at org.apache.hadoop.hbase.ClusterMetricsBuilder.toClusterStatus(ClusterMetricsBuilder.java:80)
at org.apache.hadoop.hbase.master.MasterRpcServices.getClusterStatus(MasterRpcServices.java:980)
at org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java)
at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:385)
at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:124)
at org.apache.hadoop.hbase.ipc.RpcHandler.run(RpcHandler.java:102)
at org.apache.hadoop.hbase.ipc.RpcHandler.run(RpcHandler.java:82)

FWIW i wonder if this invalid statue occurs due to the connection bug that was in 2.5.0 and remediated in 2.5.1. I would think that could lead us to a weird spot where there is a task not fully initialized with a status.
Here's how I got to this simple null check:
Each task has a status

The task is implemented in two spots... looking at those two spots its only needs to have a null check in one place
MontioredRpcHandler ->

and MonitoredTaskImpl which is the super reference in the call above

A monitored task status is initially null... something needs to call set status

We can see here its done in many places and is just a string var

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
3m 16s
Docker mode activated.

I've been looking into how these Tasks are created. It seems like all MonitoredTask are created through TaskMonitor.createStatus. All of the createStatus overloads take a description, so the description is always set on the MonitoredTask just after creation. For example:
MonitoredTask stat = new MonitoredTaskImpl(enableJournal);
stat.setDescription(description);

In terms of usages, there are a few usages of getStatus and getDescription, mostly assuming non-null (except one which does a null check). If something were to accidentally break the convention of always calling setDescription, we'd have a similar failure on our hands.
Since these classes are all IA.Private, I think we should change the constructor of MonitoredTaskImpl to take a description, and then set a default value of "unset" (or something to that effect) for status rather than the implicit default of null. This way it should be clear when viewing such a task that it never reached it's first call of setStatus
While here, I think we should consider adding a null check in setStatus and setDescription, to avoid programming errors in the future re-introducing null states.
Thoughts?

@bbeaudreault That makes sense to me. I also had to update MonitoredRPCHandlerImpl which extends MonitoredTaskImpl. The MonitoredRPCHandlerImpl usages in our tests definitely did not follow the convention of always calling setDescription.
I used a precondition check for not null values as I see that's common throughout the code but can add a null check and plain return if that's better.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m  2s
Docker mode activated.

-0 :warning:
yetus
0m  3s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ master Compile Tests _

+1 :green_heart:
mvninstall
2m 26s
master passed

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

+1 :green_heart:
shadedjars
3m 46s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 26s
master passed

_ Patch Compile Tests _

-1 :x:
mvninstall
1m  6s
root in the patch failed.

-1 :x:
compile
0m 15s
hbase-server in the patch failed.

-0 :warning:
javac
0m 15s
hbase-server in the patch failed.

-1 :x:
shadedjars
2m 36s
patch has 10 errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 23s
the patch passed

_ Other Tests _

-1 :x:
unit
0m 15s
hbase-server in the patch failed.

13m 37s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile

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

JIRA Issue
HBASE-27390

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 236b6b028791 5.4.0-124-generic #140-Ubuntu SMP Thu Aug 4 02:23:37 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / febe511750

Default Java
Temurin-1.8.0_352-b08

mvninstall
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-jdk8-hadoop3-check/output/patch-mvninstall-root.txt

compile
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-jdk8-hadoop3-check/output/patch-compile-hbase-server.txt

javac
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-jdk8-hadoop3-check/output/patch-compile-hbase-server.txt

shadedjars
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-jdk8-hadoop3-check/output/patch-shadedjars.txt

unit
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-jdk8-hadoop3-check/output/patch-unit-hbase-server.txt

Test Results
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/testReport/

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

modules
C: hbase-server U: hbase-server

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

versions
git=2.34.1 maven=3.8.6

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

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m 20s
Docker mode activated.

-0 :warning:
yetus
0m  2s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ master Compile Tests _

+1 :green_heart:
mvninstall
2m 40s
master passed

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

+1 :green_heart:
shadedjars
3m 57s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 23s
master passed

_ Patch Compile Tests _

-1 :x:
mvninstall
1m 12s
root in the patch failed.

-1 :x:
compile
0m 13s
hbase-server in the patch failed.

-0 :warning:
javac
0m 13s
hbase-server in the patch failed.

-1 :x:
shadedjars
2m 41s
patch has 10 errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 22s
the patch passed

_ Other Tests _

-1 :x:
unit
0m 14s
hbase-server in the patch failed.

14m 30s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile

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

JIRA Issue
HBASE-27390

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 3dcd8a9dee75 5.4.0-1088-aws #96~18.04.1-Ubuntu SMP Mon Oct 17 02:57:48 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / febe511750

Default Java
Eclipse Adoptium-11.0.17+8

mvninstall
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-jdk11-hadoop3-check/output/patch-mvninstall-root.txt

compile
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-jdk11-hadoop3-check/output/patch-compile-hbase-server.txt

javac
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-jdk11-hadoop3-check/output/patch-compile-hbase-server.txt

shadedjars
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-jdk11-hadoop3-check/output/patch-shadedjars.txt

unit
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-jdk11-hadoop3-check/output/patch-unit-hbase-server.txt

Test Results
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/testReport/

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

modules
C: hbase-server U: hbase-server

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

versions
git=2.34.1 maven=3.8.6

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

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 41s
Docker mode activated.

_ Prechecks _

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

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

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

_ master Compile Tests _

+1 :green_heart:
mvninstall
2m 44s
master passed

+1 :green_heart:
compile
2m 25s
master passed

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

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

+1 :green_heart:
spotbugs
1m 25s
master passed

_ Patch Compile Tests _

-1 :x:
mvninstall
1m 13s
root in the patch failed.

-1 :x:
compile
0m 13s
hbase-server in the patch failed.

-0 :warning:
javac
0m 13s
hbase-server in the patch failed.

-0 :warning:
checkstyle
0m 29s
hbase-server: The patch generated 1 new + 1 unchanged - 0 fixed = 2 total (was 1)

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

-1 :x:
hadoopcheck
1m 14s
The patch causes 10 errors with Hadoop v3.2.4.

-1 :x:
hadoopcheck
2m 31s
The patch causes 10 errors with Hadoop v3.3.4.

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

-1 :x:
spotbugs
0m 13s
hbase-server in the patch failed.

_ Other Tests _

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

14m 55s

Subsystem
Report/Notes

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

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

JIRA Issue
HBASE-27390

Optional Tests
dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile

uname
Linux b0e55182e8d2 5.4.0-1088-aws #96~18.04.1-Ubuntu SMP Mon Oct 17 02:57:48 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / febe511750

Default Java
Eclipse Adoptium-11.0.17+8

mvninstall
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-general-check/output/patch-mvninstall-root.txt

compile
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-general-check/output/patch-compile-hbase-server.txt

javac
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-general-check/output/patch-compile-hbase-server.txt

checkstyle
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-general-check/output/diff-checkstyle-hbase-server.txt

hadoopcheck
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-general-check/output/patch-javac-3.2.4.txt

hadoopcheck
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-general-check/output/patch-javac-3.3.4.txt

spotbugs
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4853/3/artifact/yetus-general-check/output/patch-spotbugs-hbase-server.txt

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

modules
C: hbase-server U: hbase-server

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

versions
git=2.34.1 maven=3.8.6 spotbugs=4.7.3

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

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
2m 18s
Docker mode activated.


chore(deps): update module github.com/gruntwork-io/terratest to v0.44.0

This PR contains the following updates:

Package
Type
Update
Change

github.com/gruntwork-io/terratest
require
minor
v0.43.13 -> v0.44.0

Release Notes

gruntwork-io/terratest (github.com/gruntwork-io/terratest)
v0.44.0
Compare Source
Description

Updated minimal Go version to 1.21

Related links

https://github.com/gruntwork-io/terratest/pull/1339

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

/run pipeline

/run pipeline

/run pipeline

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


fix: do not upload .git for on cluster build

Changes

:gift: Do not upload .git directory when doing on cluster build.

/kind enhancement

@jrangelramos PTAL

/lgtm
/hold for @jrangelramos to take a look as well

/unhold


Incorrect bundling using SystemJS Builder

Short description of the problem:
When using SystemJS Builder for bundling Ionic 2, dependency paths of ionic-angular are bundled incorrectly so that they cannot be imported.
This might be a SystemJS issue, but other similar structured dependencies (angular2) are working properly.
What behavior are you expecting?
Dependencies of ionic-angular should be loaded out of the bundle instead of causing separate XHR requests.
Steps to reproduce:
Using this repository:

run npm install
run ionic serve
open localhost in browser, display console or network requests

Bundling steps:
gulpfile.js using instructions of SystemJS Builder:
    var builder = new Builder({
        packages: {
            app: {
                format: 'register',
                defaultExtension: 'js'
            }
        },
        paths: {
            '*': './node_modules/*',
            'app/*': 'app/*',
            "ionic-angular": './node_modules/ionic-angular/index.js',
            "ionic-native": './node_modules/ionic-native/dist/index.js'
        },
        defaultJSExtensions: true
    });

    // Combine angular dependencies into dependencies.js
    builder
        .bundle('app/**/*.js - [app/**/*]', './www/ng/dependencies.js')
        .then(function () {
            // Uglify using gulp
            gulp.src('./www/ng/dependencies.js')
                //.pipe(uglify({mangle: { keep_fnames: true}, compress: {keep_fnames: true} }))
                .pipe(gulp.dest('./www/ng'));
        })
        .catch(function (err) {
            console.log(err);
        });

Embedding in index.html:
<body>
<!-- cordova.js required for cordova apps -->
<script src="cordova.js"></script>
<script src="/ng/static.js"></script>
<script>
    System.config({
        baseURL: '/ng',
        defaultJSExtensions: true
    });
</script>

<script src="/ng/dependencies.js"></script>
<!-- this Ionic's root component and where the app will load -->
<script>
    System.import('app/app').then(null, console.error.bind(console));
</script>
<ion-app></ion-app>
</body>

XHR-Requests:

It looks like SystemJS has problems understanding the relative dependencies of Ionic although Angular2 uses similar relative dependencies.
Is this an issue with SystemJS or with Ionic?

The problem here is embedding the bundle. SystemJS needs to map dependencies inside ionic-angular and ionic-native. Therefore, SystemJS needs the paths of the included packages at runtime as well.
Adding paths in System.config(...) in index.html will solve the problem:
System.config({
        baseURL: '/ng',
        packages: {
            app: {
                format: 'register',
                defaultExtension: 'js'
            }
        },
        paths: {
            '*': './node_modules/*',
            'app/*': 'app/*',
            "ionic-angular": './node_modules/ionic-angular/index.js',
            "ionic-native": './node_modules/ionic-native/dist/index.js'
        },
        defaultJSExtensions: true
    });


DisableFilter extension not working correctly with "Contains()"-filter

Hi,
Im having a problem with a Linq filter that uses the Contains() operator.
When the filter is active, the DbSet returns only the entities that match the filter, but when i use the DisableFilter() extension to disable the filter, the DbSet returns no entities (instead of all entities).
Here is an example that shows the issue.
C# Console Application with the following NuGet packages:
EntityFramework version="6.1.2"
EntityFramework.DynamicFilters version="1.3.2"
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity;
using System.Linq;
using EntityFramework.DynamicFilters;

namespace DynamicFilters
{
    class Program
    {
        static void Main()
        {
            var context = new Context();

            // Seed 10 entities.
            Enumerable.Range(1, 10)
                .Select(i => new Entity { Value = i })
                .ToList()
                .ForEach(entity => context.Entities.Add(entity));
            context.SaveChanges();

            // Get filtered entities.
            var entities = context.Entities.ToList();
            Console.WriteLine("Filter enabled : {0}", String.Join(",", entities));

            // Get unfiltered entities.
            context.DisableFilter("ContainsFilter");
            entities = context.Entities.ToList();
            Console.WriteLine("Filter disabled: {0}", String.Join(",", entities));

            // Wait
            Console.WriteLine("End. Press key...");
            Console.ReadKey();
        }
    }

    class Context : DbContext
    {
        public IDbSet<Entity> Entities { get; set; }

        static Context()
        {
            Database.SetInitializer(new DropCreateDatabaseAlways<Context>());
        }

        protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            var valuesToShow = new List<int> { 1, 2, 3, 4 };
            modelBuilder.Filter("ContainsFilter",
                (Entity entity, List<int> values) => values.Contains(entity.Value),
                valuesToShow);

            base.OnModelCreating(modelBuilder);
        }
    }

    class Entity
    {
        public int Id { get; set; }
        public int Value { get; set; }

        public override string ToString()
        {
            return Value.ToString();
        }
    }
}

Here are the queries that get sent to the SQL Server
With filter enabled:
(@DynamicFilterParam_ContainsFilter_values int)SELECT
    [Var_1].[Id] AS [Id],
    [Var_1].[Value] AS [Value]
    FROM [dbo].[Entities] AS [Var_1]
    WHERE [Var_1].[Value] in (@DynamicFilterParam_ContainsFilter_values, 2, 3, 4)

With filter disabled:
(@DynamicFilterParam_ContainsFilter_values int)SELECT
    [Var_1].[Id] AS [Id],
    [Var_1].[Value] AS [Value]
    FROM [dbo].[Entities] AS [Var_1]
    WHERE [Var_1].[Value] = @DynamicFilterParam_ContainsFilter_values

Sorry about that.  I had a TODO note in there about that I completely missed it.
I just pushed a change to how filters are disabled to fix this.  And it also fixes disabling filters that have multiple parameters.  I was previously using a null value on a parameter value which doesn't work well for filters with multiple parameters and limited filters to not be able to check for null values.
NuGet has also been updated.

Unfortunately the fix doesn't work with EntityFramework 6.1.2 - TypeUsage.Create(boolPrimitiveType, null) raises ArgumentNullException (it's not allowed pass null instead Facets' collection).

Hi,
Thanks for the quick response.
I can confirm the problem with EntityFamework 6.1.2.
With EntityFramework 6.1.1 it works though.

Sorry about that - I hadn't even seen that EF 6.1.2 was released!  It's fixed now and NuGet has been updated.

This issue is fixed.
Thank you!


btn-radio/btn-check directives not working on 0.13.2  if combined with ng-disabled directive

commit 42e1af5c provided a fix to ensure the btn-radio and btn-check directives respected the 'disabled" attribute.  Unfortunately the implementation doesn't seem to be compatible with using the ng-disabled directive on the element as well.
If ng-disabled is present, the buttons will not respond to clicks: see plunk using angularjs 1.13.17 with ui-bootstrap 0.13.2 -> http://plnkr.co/edit/VGBoML5oh4VvEP9kwT3g?p=preview
Instead of:
if ('disabled' in attrs) {
on lines 27 and 71 of buttons.js, it works if you change to
if(attrs.disabled) {

This already is fixed on master & will be going out in a fix likely tomorrow.


Please can the color-names be customizable

Totally love this tool, great work!
Please can the color-names be customizable.
Thanks!

@CharlesOkwuagwu sure, I will add it to the next release 😊


Navigating between SPFx SingleWebPartAppPage pages doesn't work

Category

[x] Bug

Describe the bug
Navigating between SPFx SingleWebPartAppPage pages doesn't work.
Steps to reproduce
Let's say you have a site with 4 different pages each containing a single web part with the SingleWebPartAppPage layout and a home page with the Home layout. Each page has a link in the GlobalNavigation.

Go to homepage
Click on Page 1 in navigation (which is a page with SingleWebPartAppPage layout)
Wait for it to load
Click on Page 2 in navigation (which is a page with SingleWebPartAppPage layout)

The url changes to the URL of Page 2, but Page 1 remains rendered on the page.
Expected behavior
Navigating between different SingleWebPartAppPage pages should work.
Developer environment
Edge Chromium

I'm having the exact same problem.

Duplicate of #5235, #4272 #5277 , #5211 , #5321

Also this one #5264. I submitted a ticket to Microsoft.

This issue was already alerted by @andrewconnell to Microsoft Team.
https://github.com/SharePoint/sp-dev-docs/issues/5277#issuecomment-585727453

This doesn't issue reproduce in the latest prod. tenant. @olemp  If you are still having this issue, can you let me know the exact steps to repro. this issue.


Add a Feature to toggle from OpenAI to Huggingface text-generation-inference

Hello, this is my first attempt at adding a feature to a Pypi library. Any thoughts and criticisms are most welcomed.
Here is a list of changes in the PR:

provide a dotenv (.env) example
normalize spacing, linting
import True/False flag from dotenv
toggle Embeddings for ChromaDB module
toggle Embeddings and Inference for embedchain
removed openai naming style from custom functions

Sorry about the commit history. You can see I tried to use a YAML config and added a requirements.txt but I then realized this project is intended to be a Pypi library, so I removed it and embraced the dotenv config + setup.py instead.

Hey @suparious : thanks for your contribution. this is a good feature to have.
I have taken another approach. Instead of using a flag, I have created a new app type so that its much simpler for everyone.
Eg
from embedchain import App  -> uses OpenAI embedding and LLM
from embedchain import OpenSourceApp -> uses Open Source embedding (sentence transformers) and LLM (gpt4all)
from embedchain import CustomApp -> pro mode for devs, use your own / custom embedding and LLM model

The PR listed above adds support for from embedchain import OpenSourceApp
Support for from embedchain import App is already there.
Need to add support for from embedchain import CustomApp
Let me know your thoughts.

This is a great idea. With your proposed method, we should also consider adding support for HuggingFaceHub, for those without the ability to use the HF text-generation inference.

Please move this forward

thanks for your contribution @suparious . We have already added this support using YAML config approach. This approach gives flexibility to user to use from a variety of LLMs and embedding models.


How can i set release version to many releases with template?

I have the template for releases:
  default: &default
    chart: "stable/{{ .Release.Name }}"
    version: ""
    wait: true
    installed: true
    missingFileHandler: Warn
    values:
    - values/{{ .Release.Name }}/base.yaml
    - values/{{ .Release.Name }}/{{ .Environment.Name }}.yaml

I have list of releases:
- name: "external-dns"
  <<: *default
- name: "metrics-server"
  <<: *default
- name: "prometheus-adapter"
  <<: *default

How can i create  list with name of release and version of helm chart and include in template?.
look like:
versions:
  external-dns: "1.3.0"
  metrics-server: "2.1.0"
  prometheus-adapter: ""

Hey!
First of all areate a versions.yaml containing:
versions:
  external-dns: "1.3.0"
  metrics-server: "2.1.0"
  prometheus-adapter: ""

In your helmfile.yaml you should remove version: "" from the default template and explicitly define version in each release like:
values:
- versions.yaml

#snip

- name: "external-dns"
  version: {{.Values.versions | get "external-dns"}}
  <<: *default
- name: "metrics-server"
  version: {{.Values.versions | get "metrics-server"}}
  <<: *default
- name: "prometheus-adapter"
  version: {{.Values.versions | get "prometheus-adapter" }}
  <<: *default

Hope this works for you.

I'm trying to achieve something similar, and the above doesn't seem to work for me.
versions.yaml
chartVersionMetricsServer: "2.3.0"

helmfile.yaml
bases:
- environments.yaml
---
bases:
- helmdefaults.yaml
---

helmfiles:
- path: releases/metrics-server/helmfile.yaml.gotmpl
  values:
  - versions.yaml
  - name: metrics-server
    base: true
- path: releases/external-dns/helmfile.yaml.gotmpl
  values:
  - name: external-dns
    base: true
- path: releases/cluster-autoscaler/helmfile.yaml.gotmpl
  values:
  - name: cluster-autoscaler
    base: true

releases/metrics-server/helmfile.yaml.gotmpl
releases:
  - name: metrics-server
    namespace: metrics-server
    chart: stable/metrics-server
    version: "{{ .Values | get "chartVersionMetricsServer" }}"
    missingFileHandler: Warn
    values:
    - "../../values/metrics-server/values.yaml.gotmpl"
    - "../../values/metrics-server/{{ .Environment.Name }}.values.yaml"

Error that I'm getting:
err: error during helmfile.yaml.gotmpl.part.0 parsing: template: stringTemplate:5:27: executing "stringTemplate" at <get "chartVersionMetricsServer">: error calling get: no value exist for key "chartVersionMetricsServer" in map[]
changing working directory back to "/Users/agardner/work/helmfile"
in ./helmfile.yaml: in .helmfiles[0]: in releases/metrics-server/helmfile.yaml.gotmpl: error during helmfile.yaml.gotmpl.part.0 parsing: template: stringTemplate:5:27: executing "stringTemplate" at <get "chartVersionMetricsServer">: error calling get: no value exist for key "chartVersionMetricsServer" in map[]```

while that works great, could this be extended further to use `{{ .Release.Name }}?
default: &default
   chart: "stable/{{ .Release.Name }}"
   version: {{.Values.versions | get "{{ .Release.Name }}" }}


Change unit for printing a dimensionless SiScalar to be blank

Currently, a dimensionless SIScalar prints a unit of '1'. Now that the Dimensionless prints a blank unit, the SIScalar has to be changed as well to be consistent. As an example, the following code:
  SIScalar s1 = Torque.of(1.33, "N.m").divide(Energy.valueOf("2.1 J"));
  System.out.println("|" + s1 + "|");

prints:
|0.63333333 1|

The code:
  SIScalar s1 = Torque.of(1.33, "N.m").divide(Energy.valueOf("2.1 J"));
  System.out.println("|" + s1 + "|");

now displays:
|0.63333333 |

A demo called DimensionlessExample has been added to the djunits-demo project to show the parsing and printing of Dimensionless and FloatDimensionless scalars, as well as SIScalar and FloatSIScalar where the SI dimensions are 1. Examples for Vector, FloatVector, SIVector and FloatSIVector are also included.

A helper static constant for the SIUnit class called DIMLESS is added. It is the DIMLESS is defined as the SIUnit with all dimensions equal to zero:
  SIUnit DIMLESS = SIUnit.of(new SIDimensions(0, 0, 0, 0, 0, 0, 0, 0, 0));

All 283 unit tests pass again after the changes of the SIDimensions and SIUnit to accept and print an empty string for a dimensionless quantity.

The following changes have been made:

DimensionlessUnit has an empty string as the default unit id and unit name.
Dimensionless can parse an empty string as the unit in the of(...) and valueOf(...) methods
FloatDimensionless can parse an empty string as the unit in the of(...) and valueOf(...) methods
SIDimensions accepts an empty string as the unit in the of(...) and parse(...) methods
SIDimensions has a static constant called DIMLESS to indicate a dimensionless SI tuple
SIUnit has a static constant called DIMLESS to indicate a dimensionless SI unit
SIScalar accepts an empty string as the unit in the of(...) and valueOf(...) methods
FloatSIScalar accepts an empty string as the unit in the of(...) and valueOf(...) methods
SIVector can parse an empty string as the unit in the three of(...) methods
FloatSIVector can parse an empty string as the unit in the three of(...) methods
SIMatrix can parse an empty string as the unit in the of(...) method
FloatSIMatrix can parse an empty string as the unit in the of(...) method
A demo called DimensionlessExample has been added to the djunits-demo project
All generating classes and templates in the djunits-generator project have been adapted
All unit tests in the djunits project have been updated with the new behavior for dimensionless SI values

This covers all known issues with dimensionless SI values to not print or use '1' anymore as the unit, but leave it blank in the exact way that Dimensionless now prints it unit after Issue #12 was completed.


[#4787] More informative roll dialog titles

Closes #4787
Also added a check when putting the subtitle for an activity use in a chat card whether the activity was a heal-type, if so display "Healing Roll" instead of "Damage Roll."
Attack Roll:

Damage Roll:

Skill Check:

Ability Check:

Saving Throw:

Tool Check:

Fixed subtitle for a heal activity:

Haven't tested much with super long item/actor names. Might make sense to put them as subtitles instead of titles.

Might instead make sense to put the roll type in the main title and the actor/item name in the subtitle (if it's okay to lose "Configure Roll" - which I think it would be, since it's implicit).

New commit changes to match my last comment.
Skill check:

Tool check:

Damage & Healing rolls:

@roth-michael Give a comment on the original issue so I can assign it to you

Might also be nice to show "Concentration Save" when rolling for concentration

Went with the same label but with Concentration instead of Strength for instance (i.e. "Concentration Saving Throw"). Was thinking about whether instead "Concentration Save (Con)" would make sense, but as-is it looks fine to me.


Mathml version 3 equestions rendering issue inside Shadow Dom

Issue Summary
I am using below  MathML version 3  CDN  reference.

I am rendering  MathML version 2 and 3 equations inside the  Shadow DOM and outside the  Shadow DOM using  MathML version 3.

MathML version 2 equation :  <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow><msup><mfenced><mrow><mi>a</mi><mo>+</mo><mi>b</mi></mrow></mfenced><mn>2</mn></msup></mrow> </math>

MathML version 3  equation :  <math xmlns="http://www.w3.org/1998/Math/MathML"><mo>[</mo><mi>K</mi><mi>r</mi><mo>]</mo><mn>5</mn><msup><mi>s</mi><mn>1</mn></msup></math>

But the equations inside the Shadow DOM are not rendering properly, however the  equations  outside the Shadow DOM are rendering properly.
The demo is available here.
MathML rendering inside the  Shadow DOM  :

MathML rendering outside the  Shadow DOM  :

Below is the source code:

<template id="scriptContainer">

</template>

<show-hello></show-hello>
v2 example:<math xmlns="http://www.w3.org/1998/Math/MathML"><mrow><msup><mfenced><mrow><mi>a</mi><mo>+</mo><mi>b</mi></mrow></mfenced><mn>2</mn></msup></mrow> </math>

v3 example:<math xmlns=\"[http://www.w3.org/1998/Math/MathML\](http://www.w3.org/1998/Math/MathML%5C)"><mo>[</mo><mi>K</mi><mi>r</mi><mo>]</mo><mn>5</mn><msup><mi>s</mi><mn>1</mn></msup></math>

Am I doing anything wrong here?
Please suggest how to fix this.
Technical details:
MathJax Version: 3.2.2
Client OS: Windows 10 Pro
Browser: latest chrome

MathJax expects to work in a complete DOM (that includes  and similar elements), but ShadowDOM is just a document-fragment, not a complete DOM, and so MathJax can't find some of the elements that it needs to work with.  So working inside a ShadowDOM has been problematic in the past.
There are some examples of approaches that have worked in the past here, and in #2195, #2263, #2590.
Note that running MathJax inside multiple ShadowDOM elements is not going to be very efficient, as each ShadowDOM will have its own copy of MathJax, and processing the math will cause a page reflow for each ShadowDOM, a significant performance hit.  When the math is all in the main DOM, MathJax can limit the number of reflows as it processes the math.  Finally, if your readers access the MathJax contextual menu on an expression in the ShadowDOM, the menu will be restricted to the ShadowDOM, and will be clipped to the size of the ShadowDOM, which may make it hard to use.
Unless there is a critical need to encapsulate your content in a ShadowDOM, I'd recommend against using MathJax within one.

Same issue, still wondering how to resolve it.

@scruel, I really can't help without seeing what you have done. I'm not planning to spend my own time coming up with an example for you, as I've already posted exampled linked above, and because I don't think it is a good idea to use MathJax in ShadowDOM. If you give a complete example, as the original poster did, I might be able to point out some issues, but "Same issue" is not sufficient to offer additional advice.

Sorry, I am trying to parse LaTeX formulas on bing.com, all elements which contain them are inside the shadow root DOM.
For code, you can check the following link when you have time:
https://github.com/scruel/tampermonkey-scripts/blob/main/chatgpt-latex-render.js


Browser Mob Proxy not working in emulator

Browser Mob Proxy not working in emulator. I've installed BMP certificate in the emulator also setup the ip and port in proxy settings. But no luck. Anyone know the solution?

Any ideas??


Video download freezes around 50% then crashes with "ERROR: unable to download video data: <urlopen error [Errno 0] Error>"

Checklist

[ ] I'm reporting a broken site support issue
[x] I've verified that I'm running youtube-dl version 2019.07.16
[x] I've checked that all provided URLs are alive and playable in a browser
[x] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[x] I've searched the bugtracker for similar bug reports including closed ones
[x] I've read bugs section in FAQ

Verbose log

[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-f', u'bestvideo[fps=60]+bestaudio/bestvideo+bestaudio/best', u'-o', u'/mnt/f/Temp/%(title)s.%(ext)s', u'--no-mtime', u'--write-sub', u'--all-subs', u'--embed-subs', u'-v', u'https://www.youtube.com/watch?v=PNtKXWNKGN8']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2019.07.16
[debug] Python version 2.7.15+ (CPython) - Linux-4.4.0-17763-Microsoft-x86_64-with-Ubuntu-18.04-bionic
[debug] exe versions: ffmpeg 3.4.6, ffprobe 3.4.6
[debug] Proxy map: {}
[youtube] PNtKXWNKGN8: Downloading webpage
[youtube] PNtKXWNKGN8: Downloading video info webpage
[info] Writing video subtitles to: /mnt/f/Temp/Simulating Supply and Demand.en.vtt
[debug] Invoking downloader on u'https://r7---sn-gvopm-vu2e.googlevideo.com/videoplayback?expire=1563777030&ei=pQM1Xar7O5Kz1wLThYGIBQ&ip=<IP_ADDRESS>&id=o-ANBz7l24akgeIJckvxskt5GrjNP1mqUs6XTtQ2NsPeR5&itag=303&aitags=133%2C134%2C135%2C136%2C137%2C160%2C242%2C243%2C244%2C247%2C248%2C278%2C298%2C299%2C302%2C303%2C394%2C395%2C396%2C397%2C398&source=youtube&requiressl=yes&mm=31%2C29&mn=sn-gvopm-vu2e%2Csn-4g5e6nz7&ms=au%2Crdu&mv=m&mvi=6&pl=24&initcwndbps=201250&mime=video%2Fwebm&gir=yes&clen=49115981&dur=741.916&lmt=1556996340744620&mt=1563755291&fvip=2&keepalive=yes&c=WEB&txp=5535432&sparams=expire%2Cei%2Cip%2Cid%2Caitags%2Csource%2Crequiressl%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=ALgxI2wwRQIgGdRZblCfOuvKBdaa9gWvreXK-9CzhmfEdJPsK93T3JsCIQCE6usmbnd81IyINgt-qrh_WkccutF7_sDZeyTsoETlUA%3D%3D&lsparams=mm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AHylml4wRgIhAOeOZOKoDE8nyVWgNeZ2RSnc3udOruKTlr399q40ASgWAiEAvR6qD1fkUU6HjvJGmib9ddeGk4yIX0JQe9Xi9OaOKRo%3D&ratebypass=yes'
[download] Destination: /mnt/f/Temp/Simulating Supply and Demand.f303.webm
[download]  20.7% of 46.84MiB at  9.51MiB/s ETA 00:03ERROR: unable to download video data: <urlopen error [Errno 0] Error>
Traceback (most recent call last):
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1909, in process_info
    partial_success = dl(fname, new_info)
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1854, in dl
    return fd.download(name, info)
  File "/usr/local/bin/youtube-dl/youtube_dl/downloader/common.py", line 366, in download
    return self.real_download(filename, info_dict)
  File "/usr/local/bin/youtube-dl/youtube_dl/downloader/http.py", line 341, in real_download
    establish_connection()
  File "/usr/local/bin/youtube-dl/youtube_dl/downloader/http.py", line 109, in establish_connection
    ctx.data = self.ydl.urlopen(request)
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 2227, in urlopen
    return self._opener.open(req, timeout=self._socket_timeout)
  File "/usr/lib/python2.7/urllib2.py", line 429, in open
    response = self._open(req, data)
  File "/usr/lib/python2.7/urllib2.py", line 447, in _open
    '_open', req)
  File "/usr/lib/python2.7/urllib2.py", line 407, in _call_chain
    result = func(*args)
  File "/usr/local/bin/youtube-dl/youtube_dl/utils.py", line 2724, in https_open
    req, **kwargs)
  File "/usr/lib/python2.7/urllib2.py", line 1198, in do_open
    raise URLError(err)
URLError: <urlopen error [Errno 0] Error>

Description

As of today whenever I try to download a video either through the windows version of youtube-dl or the ubuntu version that's running in Windows's WSL, I get an error that says "ERROR: unable to download video data: <urlopen error [Errno 0] Error>" shortly after the video starts downloading and then freezes. The above error and verbose log are from Windows's WSL. Although the error can be slightly different sometimes. I've noticed that it usually happens around 50% of the video. I should note that it worked in the morning and since then I've had the same version so I'm assuming this could be a youtube problem.
If it helps here's the same problem from the native Windows version continuing off where the last failed
[debug] System config: []
[debug] User config: ['-f', 'bestvideo[fps=60]+bestaudio/bestvideo+bestaudio/best', '-o', 'F:/Temp/%(title)s.%(ext)s', '--no-mtime', '--write-sub', '--all-subs', '--embed-subs']
[debug] Custom config: []
[debug] Command-line args: ['-v', 'https://www.youtube.com/watch?v=PNtKXWNKGN8']
[debug] Encodings: locale cp65001, fs mbcs, out cp65001, pref cp65001
[debug] youtube-dl version 2019.07.16
[debug] Python version 3.4.4 (CPython) - Windows-10-10.0.17763
[debug] exe versions: ffmpeg 3.4.2, ffprobe 3.4.2
[debug] Proxy map: {}
[youtube] PNtKXWNKGN8: Downloading webpage
[youtube] PNtKXWNKGN8: Downloading video info webpage
[info] Writing video subtitles to: F:\Temp\Simulating Supply and Demand.en.vtt
[debug] Invoking downloader on 'https://r7---sn-gvopm-vu2e.googlevideo.com/videoplayback?expire=1563777451&ei=SwU1XdBW0qWBB-O5gaAC&ip=<IP_ADDRESS>&id=o-AFws_riCPivVD66rqMQyJtvVJyCFrTvcSibIaWd9fpcq&itag=303&aitags=133%2C134%2C135%2C136%2C137%2C160%2C242%2C243%2C244%2C247%2C248%2C278%2C298%2C299%2C302%2C303%2C394%2C395%2C396%2C397%2C398&source=youtube&requiressl=yes&mm=31%2C29&mn=sn-gvopm-vu2e%2Csn-4g5e6nz7&ms=au%2Crdu&mv=m&mvi=6&pl=24&initcwndbps=195000&mime=video%2Fwebm&gir=yes&clen=49115981&dur=741.916&lmt=1556996340744620&mt=1563755698&fvip=2&keepalive=yes&c=WEB&txp=5535432&sparams=expire%2Cei%2Cip%2Cid%2Caitags%2Csource%2Crequiressl%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=ALgxI2wwRgIhAM01FCIpTYAMtxbg11TTM6I1a89oB0NkS179cf793ibdAiEAo8ZUqI0DsCHo8tijsA4YI4SG8uAcffxGcOuM3BebsWM%3D&lsparams=mm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AHylml4wRAIgbT_36q8mMoD3Jwh1EfjMO7zb7bvvLga2gHr58gBJlk4CIGiaTz5iSUlwHEnx7D-Jq1icuySxf0N44y7KP9tiwc-E&ratebypass=yes'
[download] Resuming download at byte 10186403
[download] Destination: F:\Temp\Simulating Supply and Demand.f303.webm
[download]  58.6% of 46.84MiB at 68.93KiB/s ETA 04:48 ERROR: unable to download video data: <urlopen error EOF occurred in violation of protocol (_ssl.c:600)>
Traceback (most recent call last):
  File "C:\Python\Python34\lib\urllib\request.py", line 1183, in do_open
  File "C:\Python\Python34\lib\http\client.py", line 1137, in request
  File "C:\Python\Python34\lib\http\client.py", line 1182, in _send_request
  File "C:\Python\Python34\lib\http\client.py", line 1133, in endheaders
  File "C:\Python\Python34\lib\http\client.py", line 963, in _send_output
  File "C:\Python\Python34\lib\http\client.py", line 898, in send
  File "C:\Python\Python34\lib\http\client.py", line 1287, in connect
  File "C:\Python\Python34\lib\ssl.py", line 362, in wrap_socket
  File "C:\Python\Python34\lib\ssl.py", line 580, in __init__
  File "C:\Python\Python34\lib\ssl.py", line 807, in do_handshake
ssl.SSLEOFError: EOF occurred in violation of protocol (_ssl.c:600)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpaxmfe_l6\build\youtube_dl\YoutubeDL.py", line 1909, in process_info
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpaxmfe_l6\build\youtube_dl\YoutubeDL.py", line 1854, in dl
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpaxmfe_l6\build\youtube_dl\downloader\common.py", line 366, in download
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpaxmfe_l6\build\youtube_dl\downloader\http.py", line 341, in real_download
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpaxmfe_l6\build\youtube_dl\downloader\http.py", line 109, in establish_connection
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpaxmfe_l6\build\youtube_dl\YoutubeDL.py", line 2227, in urlopen
  File "C:\Python\Python34\lib\urllib\request.py", line 464, in open
  File "C:\Python\Python34\lib\urllib\request.py", line 482, in _open
  File "C:\Python\Python34\lib\urllib\request.py", line 442, in _call_chain
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpaxmfe_l6\build\youtube_dl\utils.py", line 2724, in https_open
  File "C:\Python\Python34\lib\urllib\request.py", line 1185, in do_open
urllib.error.URLError: <urlopen error EOF occurred in violation of protocol (_ssl.c:600)>

And again the same problem from a real linux OS Manjaro (it actually lasted a lot longer before finally stopping and printing its error)
debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-f', 'bestvideo[fps=60]+bestaudio/bestvideo+bestaudio/best', '-o', '/run/media/kiko/General/Movies/Temp/%(title)s.%(ext)s', '--no-mtime', '--write-sub', '--all-subs', '--embed-subs', '-v', 'https://www.youtube.com/watch?v=PNtKXWNKGN8']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2019.07.16
[debug] Python version 3.7.3 (CPython) - Linux-4.19.59-1-MANJARO-x86_64-with-arch-Manjaro-Linux
[debug] exe versions: ffmpeg 4.1.3, ffprobe 4.1.3, rtmpdump 2.4
[debug] Proxy map: {}
[youtube] PNtKXWNKGN8: Downloading webpage
[youtube] PNtKXWNKGN8: Downloading video info webpage
[info] Writing video subtitles to: /run/media/kiko/General/Movies/Temp/Simulating Supply and Demand.en.vtt
[debug] Invoking downloader on 'https://r7---sn-gvopm-vu2e.googlevideo.com/videoplayback?expire=1563777278&ei=ngQ1XYSCLJ3B1gKS1oqIDg&ip=<IP_ADDRESS>&id=o-AJ6YKtw4V96bt8vd126hi6d2UxuuCb0iIIhcAp8eEZEe&itag=303&aitags=133%2C134%2C135%2C136%2C137%2C160%2C242%2C243%2C244%2C247%2C248%2C278%2C298%2C299%2C302%2C303%2C394%2C395%2C396%2C397%2C398&source=youtube&requiressl=yes&mm=31%2C29&mn=sn-gvopm-vu2e%2Csn-4g5ednsr&ms=au%2Crdu&mv=m&mvi=6&pl=24&initcwndbps=277500&mime=video%2Fwebm&gir=yes&clen=49115981&dur=741.916&lmt=1556996340744620&mt=1563755573&fvip=2&keepalive=yes&c=WEB&txp=5535432&sparams=expire%2Cei%2Cip%2Cid%2Caitags%2Csource%2Crequiressl%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=ALgxI2wwRgIhAJSIy2GjTVRlyn2h3jvUXcKrkOeRE6OjcvQ4rnR-0p2gAiEA2SLIqTfevWzAF-Xzc7eGve3AIvuvJJYuECaz1NREkNM%3D&lsparams=mm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AHylml4wRgIhAIU2I2ALRn7fRArbgtzhQusuB41WZsGAxW1b-BxC07DxAiEA50EkNgyST9apFu3pny7xORygTx2pXAnVGEOPFf66MuE%3D&ratebypass=yes'
[download] Destination: /run/media/kiko/General/Movies/Temp/Simulating Supply and Demand.f303.webm
[download]  57.5% of 46.84MiB at 88.62KiB/s ETA 03:49[download] Got server HTTP error: HTTP Error 503: Service Unavailable. Retrying (attempt 1 of 10)...
[download] Got server HTTP error: HTTP Error 503: Service Unavailable. Retrying (attempt 2 of 10)...
[download]  58.6% of 46.84MiB at 11.16KiB/s ETA 29:40[download] Got server HTTP error: HTTP Error 503: Service Unavailable. Retrying (attempt 3 of 10)...
[download] Got server HTTP error: HTTP Error 503: Service Unavailable. Retrying (attempt 4 of 10)...
[download] Got server HTTP error: HTTP Error 503: Service Unavailable. Retrying (attempt 5 of 10)...
[download] Got server HTTP error: HTTP Error 503: Service Unavailable. Retrying (attempt 6 of 10)...
[download] Got server HTTP error: HTTP Error 503: Service Unavailable. Retrying (attempt 7 of 10)...
[download] Got server HTTP error: HTTP Error 503: Service Unavailable. Retrying (attempt 8 of 10)...
[download]  59.2% of 46.84MiB at 12.45KiB/s ETA 26:12[download] Got server HTTP error: HTTP Error 503: Service Unavailable. Retrying (attempt 9 of 10)...
[download] Got server HTTP error: HTTP Error 503: Service Unavailable. Retrying (attempt 10 of 10)...
ERROR: giving up after 10 retries
  File "/usr/lib/python3.7/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/lib/python3.7/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/usr/local/bin/youtube-dl/__main__.py", line 19, in <module>
    youtube_dl.main()
  File "/usr/local/bin/youtube-dl/youtube_dl/__init__.py", line 474, in main
    _real_main(argv)
  File "/usr/local/bin/youtube-dl/youtube_dl/__init__.py", line 464, in _real_main
    retcode = ydl.download(all_urls)
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 2008, in download
    url, force_generic_extractor=self.params.get('force_generic_extractor', False))
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 807, in extract_info
    return self.process_ie_result(ie_result, download, extra_info)
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 861, in process_ie_result
    return self.process_video_result(ie_result, download=download)
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1642, in process_video_result
    self.process_info(new_info)
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1909, in process_info
    partial_success = dl(fname, new_info)
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1854, in dl
    return fd.download(name, info)
  File "/usr/local/bin/youtube-dl/youtube_dl/downloader/common.py", line 366, in download
    return self.real_download(filename, info_dict)
  File "/usr/local/bin/youtube-dl/youtube_dl/downloader/http.py", line 353, in real_download
    self.report_error('giving up after %s retries' % retries)
  File "/usr/local/bin/youtube-dl/youtube_dl/downloader/common.py", line 165, in report_error
    self.ydl.report_error(*args, **kargs)
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 624, in report_error
    self.trouble(error_message, tb)
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 586, in trouble
    tb_data = traceback.format_list(traceback.extract_stack())

I think the problem might actually be from Youtube after all. When I changed servers on my VPN the problem seemingly went away instantly. Maybe it was related to my IP.


Enable Btrfs filesystem support

What would you like to be added:
Support for Btrfs file system
https://btrfs.wiki.kernel.org/index.php/Changelog#btrfs-progs_v5.4_.28Dec_2019.29
Why is this needed:
Our team provision and maintain Concourse CI on Gardener cluster. Btrfs is one of the filesystems supported by Concourse Helm chart therefore we would like to have the possibility to use Btrfs driver in our deployment.

in next release in


apache solr support

I'm working on a daemonset for connecting to Apache Solr via https://github.com/mosuka/fluent-plugin-output-solr. if I get this working, do you want me to add it to this repo?

#247

As of deployment process was improved, there is a room for newer image build pipeline if user helps continuously maintain  the image even though still have #293 issue. if you still have interest to do it, please create PR.


verbose flag added for k2cli

user can now add -v=true to stream logs ( same output as running up in k2 ).

LGTM.

So you pass  -v=true when running k2cli up? LGTM


Fix wrong deploy option for klusterlet

Signed-off-by: Jian Qiu<EMAIL_ADDRESS>

LGTM

/hold

/hold cancel
/lgtm


Box Emission Shape for GPU and CPU particles is double the size it should be.

Tested versions
4.2.2.stable
System information
Godot v4.2.2.stable - Windows 10.0.22631 - Vulkan (Forward+) - dedicated AMD Radeon RX 7800 XT (Advanced Micro Devices, Inc.; 31.0.24019.1006) - AMD Ryzen 9 7900X 12-Core Processor (24 Threads)
Issue description
The box emission shape is twice the expected area.

These three all have extends of 1,1,1.
This is easy to fix in the particle processing, but I don't know if we need to wait until a major release  where we are breaking back compat since it will mess up people's existing particle setups.
Steps to reproduce
Create a particle system and set it to box emission and observe the size of the emission area.
Minimal reproduction project (MRP)
particles_box_emission_issue.zip

Ah couldn't find that when I first looked at this because I was unsure if it was on purpose. Thanks @and-rad . We might wanna note it here. https://docs.godotengine.org/en/stable/classes/class_particleprocessmaterial.html#class-particleprocessmaterial-property-emission-box-extents
Found this example explaining it for another engine as well.

This is sad to see. Before 4.0 we did a pass to try to move everything to "size" instead of "extents" as the difference was confusing a lot of people https://github.com/godotengine/godot/pull/72075
But I guess we missed this one. I think a note in the documentation would be helpful

Did you miss it or did you maybe keep it on purpose because it might have performance implications? I'm just thinking, since it's used in the particles material, storing the information as extents rather than size might make some computations with regards to bounds and overlaps easier?

This is sad to see. Before 4.0 we did a pass to try to move everything to "size" instead of "extents" as the difference was confusing a lot of people https://github.com/godotengine/godot/pull/72075

We can likely migrate this one without breaking compatibility by adding a new property, deprecating the old one, hiding it from the editor and using _get() to assign it to the new property automatifcally.


preset for leisure=pitch+sport=boules+boules=*

https://wiki.openstreetmap.org/wiki/Tag:sport%3Dboules

Someone can

[ ] copy data/presets/presets/leisure/pitch/bowls.json to data/presets/presets/leisure/pitch/boules.json and change values inside that file.  They're almost the same thing.
[ ] do npm install && npm run build

Done in #4451


Running into an issue when running locally

For some reason the data protection fails when running locally. It will eventually timeout with the error:
{"An error occurred while trying to encrypt the provided data. Refer to the inner exception for more information."}
The inner exception has this message: No such host is known.
But it seems to work just fine when running on AWS in a Lambda. Is there anything specific I need to do locally? E.g. pass the AWS Credentials somehow to the AmazonSimpleSystemsManagementClient in the extension?

Hi @raRaRa,
Good morning.
Please share the sample code solution in order to troubleshoot the issue. Also, for accessing any service API operation, credentials need to be passed. Kindly check on how credentials are configured (e.g. in shared credentials file, passed directly to service client constructor, etc.).
Thanks,
Ashish

I ran into this same issue. In my instance I am running a .net core 3.1 project and I have the AWS CLI installed and configured.
Adding this line right before fixed the issue for me
services.AddSingleton<IAmazonSimpleSystemsManagement>(new AmazonSimpleSystemsManagementClient());
services.AddDataProtection().PersistKeysToAWSSystemsManager("keyhere");

When I didn't add that line if I called .GetService the client was not setup. It used a region called DefaultRegion which seems invalid.

Canceling bot. Still broken..

Canceling bot. Still broken..

Hi @raRaRa,
I tested running simple AWS Serverless Lambda application locally on windows and it works perfectly fine. I used ASP.NET Core Web App for AWS Serverless template using Visual Studio:
.csproj file
<Project Sdk="Microsoft.NET.Sdk.Web">
  <PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles>
    <AWSProjectType>Lambda</AWSProjectType>

    <!-- This property makes the build directory similar to a publish directory and helps the AWS .NET Lambda Mock Test Tool find project dependencies. -->
    <CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Amazon.AspNetCore.DataProtection.SSM" Version="2.0.0" />
    <PackageReference Include="Amazon.Lambda.AspNetCoreServer" Version="5.2.0" />
  </ItemGroup>
  <ItemGroup>
    <Folder Include="wwwroot\images\" />
  </ItemGroup>
</Project>

Startup.cs
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;

namespace SystemManagerDataProtection_Issue29
{
    public class Startup
    {
        public Startup(IConfiguration configuration)
        {
            Configuration = configuration;
        }

        public IConfiguration Configuration { get; }

        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddRazorPages();
            services.AddDataProtection().PersistKeysToAWSSystemsManager("/MyApplication/DataProtection");
        }

        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            else
            {
                app.UseExceptionHandler("/Error");
                // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
                app.UseHsts();
            }

            app.UseHttpsRedirection();
            app.UseStaticFiles();

            app.UseRouting();

            app.UseAuthorization();

            app.UseEndpoints(endpoints =>
            {
                endpoints.MapRazorPages();
            });
        }
    }
}

After running the application locally, it generated the entry /MyApplication/DataProtection/key-<guidstring> in System Manager parameter store:

Kindly note that while generating project from Visual Studio AWS template, it generates appsettings.Development.json as follows:
{
  "AWS": {
    "Region": "DefaultRegion"
  }
}

You would need to change region to an actual region (such as us-east-2) for it to work.
Please let me know if this helps and if it resolves your issue.
Thanks,
Ashish

Hi @raRaRa,
I tested running simple AWS Serverless Lambda application locally on windows and it works perfectly fine. I used ASP.NET Core Web App for AWS Serverless template using Visual Studio:
.csproj file
<Project Sdk="Microsoft.NET.Sdk.Web">
  <PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles>
    <AWSProjectType>Lambda</AWSProjectType>

    <!-- This property makes the build directory similar to a publish directory and helps the AWS .NET Lambda Mock Test Tool find project dependencies. -->
    <CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Amazon.AspNetCore.DataProtection.SSM" Version="2.0.0" />
    <PackageReference Include="Amazon.Lambda.AspNetCoreServer" Version="5.2.0" />
  </ItemGroup>
  <ItemGroup>
    <Folder Include="wwwroot\images\" />
  </ItemGroup>
</Project>

Startup.cs
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;

namespace SystemManagerDataProtection_Issue29
{
    public class Startup
    {
        public Startup(IConfiguration configuration)
        {
            Configuration = configuration;
        }

        public IConfiguration Configuration { get; }

        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddRazorPages();
            services.AddDataProtection().PersistKeysToAWSSystemsManager("/MyApplication/DataProtection");
        }

        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            else
            {
                app.UseExceptionHandler("/Error");
                // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
                app.UseHsts();
            }

            app.UseHttpsRedirection();
            app.UseStaticFiles();

            app.UseRouting();

            app.UseAuthorization();

            app.UseEndpoints(endpoints =>
            {
                endpoints.MapRazorPages();
            });
        }
    }
}

After running the application locally, it generated the entry /MyApplication/DataProtection/key-<guidstring> in System Manager parameter store:

Kindly note that while generating project from Visual Studio AWS template, it generates appsettings.Development.json as follows:
{
  "AWS": {
    "Region": "DefaultRegion"
  }
}

You would need to change region to an actual region (such as us-east-2) for it to work.
Please let me know if this helps and if it resolves your issue.
Thanks,
Ashish


(feat): Fix up operator bundle

To do:

[ ]  Update Quickstart & documentation to let people test out this upgrade path
[ ] Build and publish this bundle

I feel like we should put some super basic steps on getting started w/ the operator in our readme, maybe 🤔


MWPW-143900 - [tabs.quiet] increase tab-list spacing

As a Consonant designer and Milo author, when authoring a Tab block with a quiet variant, the spacing between the tab-list items should be 24px.
It is currently 16px.

Resolves: MWPW-143900
Test URLs:

Before: https://main--milo--adobecom.hlx.page/drafts/rparrish/tabs-content-model?martech=off
After: https://rparrish-tabs-spacing--milo--adobecom.hlx.page/drafts/rparrish/tabs-content-model?martech=off

I wonder if we can have the consonant team approving PRs directly? There are some test links - so it would make sense for them to give their 👍 on the PRs as well


[redesign] implement new toolbar design

Related to #2325
This PR moves the toolbar buttons (execute, prettify, copy and merge) from the header next do the query editor. The history button will later move to the sidebar, so I left it in the header for now.
Preview at https://deploy-preview-2524--graphiql-test.netlify.app/

Looks great! Works in my iPhone too!


fix: Pytests spacy

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 47.80%. Comparing base (2ba0cce) to head (278eaf5).

:exclamation:  There is a different number of reports uploaded between BASE (2ba0cce) and HEAD (278eaf5). Click for more details.
HEAD has 16 uploads less than BASE

Flag
BASE (2ba0cce)
HEAD (278eaf5)

17
1

Additional details and impacted files
@@             Coverage Diff             @@
##           master     #687       +/-   ##
===========================================
- Coverage   59.65%   47.80%   -11.86%
===========================================
  Files          53       13       -40
  Lines        3691      730     -2961
===========================================
- Hits         2202      349     -1853
+ Misses       1489      381     -1108

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.