Support css-filter and css-placeholder.

Two incidental changes were required to get this to work, both for css-placeholder:

Add a stub for "omitted-usage" that causes all browsers to be supported.
Ignore empty lines in the diffs. For some reason, the SassC output for the input-placeholder test contains some extra newlines compared to the native output. Would be better to fix this if you have ideas as to how.

Thanks Morgan!


cmd/go: checksum mismatch lacks resolution information

What version of Go are you using (go version)?

$ go version

go version devel +5f45a3337e Wed Aug 14 19:49:15 2019 +0000 linux/amd64

Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GO111MODULE="auto"
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/iand/.cache/go-build"
GOENV="/home/iand/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/iand"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/opt/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/opt/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/home/iand/wip/--elided---/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build133450829=/tmp/go-build -gno-record-gcc-switches"

What did you do?
Ran go mod tidy
What did you expect to see?
Instructions for investigating the cause and potential resolution of a checksum mismatch.
What did you see instead?
10:24 $ go mod tidy
verifying<EMAIL_ADDRESS>checksum mismatch
	downloaded: h1:y0IMTfclpMdsdIbr6uwmJn5/WZ7vFuObxDMdrylFM3A=
	sum.golang.org: h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo=

SECURITY ERROR
This download does NOT match the one reported by the checksum server.
The bits may have been replaced on the origin server, or an attacker may
have intercepted the download attempt.

For more information, see 'go help module-auth'.

This information, while correct, is not very informative for most users. It tells them the problem but doesn't indicate how they can resolve it. Their build will not progress until they resolve the problem.
go help module-auth provides very detailed information on the operation of the module checksum mechanism but doesn't help the typical user get their build working.
In my case go clean -modcache solved my problem although I am left with the feeling that I just did the module analog of "switching it off and on again".
The message would be more informative if it told me where the downloaded code is and how I can cross reference that with the code the checksum server saw.

/cc @bcmills @jayconrod

The same problem caused me to vote for go mod clean -m extension proposal in #28835

The same problem with go1.13 and some repos (https://github.com/panjf2000/ants/issues/49)

$ go version
go version go1.13 darwin/amd64

Same issue, solved with go clean -modcache, but as mentioned the error message really needs to specify more clearly how to get the build working again

Thanks @eaardal


AGIC crashed at Applcation Gateway doesn't have a public IP

Describe the bug
AGIC 1.5.1 crashed when working with internal Application Gateway, error message:
F0531 10:05:48.200347       1 main.go:192] Got a fatal validation error on existing Application Gateway config. Please update Application Gateway or the controller's helm config. Error:Code="ErrorNoPublicIP" Message="Applcation Gateway doesn't have a public IP"

To Reproduce
Steps to reproduce the behavior:

Create internal Application Gateway:
Follow Configure an application gateway with an internal load balancer (ILB) endpoint to provision Standard tier application gateway on subnet(<IP_ADDRESS>/28). The frontend IP is <IP_ADDRESS>.

Enable AGIC 1.5.1
See helm configuration:

# This file contains the essential configs for the ingress controller Helm chart

# Verbosity level of the App Gateway Ingress Controller
verbosityLevel: 3

################################################################################
# Specify which application gateway the ingress controller will manage
#
appgw:
    subscriptionId: 260524c9-7a4d-4483-8d85-de54f9c40ae8
    resourceGroup: haiche-aks-1-gateway-1
    name: appgw1voa5jhws7maoc
    usePrivateIP: true

    # Setting appgw.shared to "true" will create an AzureIngressProhibitedTarget CRD.
    # This prohibits AGIC from applying config for any host/path.
    # Use "kubectl get AzureIngressProhibitedTargets" to view and change this.
    shared: false

################################################################################
# Specify which Kubernetes namespace the ingress controller will watch
# Default value is "default"
# Leaving this variable out or setting it to blank or empty string would
# result in ingress controller observing all acessible namespaces.
#
kubernetes:
  watchNamespace: sample-domain1-ns

################################################################################
# Specify the authentication with Azure Resource Manager
#
# Two authentication methods are available:
# - Option 1: AAD-Pod-Identity (https://github.com/Azure/aad-pod-identity)
# armAuth:
#    type: aadPodIdentity
#    identityResourceID:
#    identityClientID:

armAuth:
    type: servicePrincipal
    secretJSON: <secret>

################################################################################
# Specify if the cluster is RBAC enabled or not
rbac:
  # Specifies whether RBAC resources should be created
  create: true

Ingress Controller details

Output of kubectl describe pod <ingress controller> . The  pod name can be obtained by running helm list.

Name:         ingress-azure-7bb7749d8-q7bm7
Namespace:    default
Priority:     0
Node:         aks-agentpool-13946896-vmss000001/<IP_ADDRESS>
Start Time:   Tue, 31 May 2022 18:04:52 +0800
Labels:       app=ingress-azure
              pod-template-hash=7bb7749d8
              release=ingress-azure
Annotations:  checksum/config: 54f7501e40746d9d906a2ad5724979802a2e47f15ed8c3bad717d2c9cce9cf5c
              prometheus.io/port: 8123
              prometheus.io/scrape: true
Status:       Running
IP:           <IP_ADDRESS>
IPs:
  IP:           <IP_ADDRESS>
Controlled By:  ReplicaSet/ingress-azure-7bb7749d8
Containers:
  ingress-azure:
    Container ID:   containerd://aaa26aa5dd34b3d4b465d99d09eee198b9df107628681f8760ee7e4865e54b74
    Image:          mcr.microsoft.com/azure-application-gateway/kubernetes-ingress:1.5.1
    Image ID:       mcr.microsoft.com/azure-application-gateway/kubernetes-ingress@sha256:cc131292df265926942e23ca5601a3de66e8feabcb81f705d8f7d84b740f81b6
    Port:           <none>
    Host Port:      <none>
    State:          Waiting
      Reason:       CrashLoopBackOff
    Last State:     Terminated
      Reason:       Error
      Exit Code:    255
      Started:      Tue, 31 May 2022 18:21:02 +0800
      Finished:     Tue, 31 May 2022 18:21:03 +0800
    Ready:          False
    Restart Count:  8
    Liveness:       http-get http://:8123/health/alive delay=15s timeout=1s period=20s #success=1 #failure=3
    Readiness:      http-get http://:8123/health/ready delay=5s timeout=1s period=10s #success=1 #failure=3
    Environment Variables from:
      ingress-azure  ConfigMap  Optional: false
    Environment:
      AZURE_CLOUD_PROVIDER_LOCATION:  /etc/appgw/azure.json
      AGIC_POD_NAME:                  ingress-azure-7bb7749d8-q7bm7 (v1:metadata.name)
      AGIC_POD_NAMESPACE:             default (v1:metadata.namespace)
      AZURE_AUTH_LOCATION:            /etc/Azure/Networking-AppGW/auth/armAuth.json
    Mounts:
      /etc/Azure/Networking-AppGW/auth from networking-appgw-k8s-azure-service-principal-mount (ro)
      /etc/appgw/ from azure (ro)
      /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-7nb6q (ro)
Conditions:
  Type              Status
  Initialized       True
  Ready             False
  ContainersReady   False
  PodScheduled      True
Volumes:
  azure:
    Type:          HostPath (bare host directory volume)
    Path:          /etc/kubernetes/
    HostPathType:  Directory
  networking-appgw-k8s-azure-service-principal-mount:
    Type:        Secret (a volume populated by a Secret)
    SecretName:  networking-appgw-k8s-azure-service-principal
    Optional:    false
  kube-api-access-7nb6q:
    Type:                    Projected (a volume that contains injected data from multiple sources)
    TokenExpirationSeconds:  3607
    ConfigMapName:           kube-root-ca.crt
    ConfigMapOptional:       <nil>
    DownwardAPI:             true
QoS Class:                   BestEffort
Node-Selectors:              <none>
Tolerations:                 node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
                             node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events:
  Type     Reason     Age                   From               Message
  ----     ------     ----                  ----               -------
  Normal   Scheduled  19m                   default-scheduler  Successfully assigned default/ingress-azure-7bb7749d8-q7bm7 to aks-agentpool-13946896-vmss000001
  Normal   Pulled     19m                   kubelet            Successfully pulled image "mcr.microsoft.com/azure-application-gateway/kubernetes-ingress:1.5.1" in 129.696054ms
  Normal   Pulled     19m                   kubelet            Successfully pulled image "mcr.microsoft.com/azure-application-gateway/kubernetes-ingress:1.5.1" in 100.958457ms
  Normal   Pulled     19m                   kubelet            Successfully pulled image "mcr.microsoft.com/azure-application-gateway/kubernetes-ingress:1.5.1" in 75.482394ms
  Normal   Created    19m (x4 over 19m)     kubelet            Created container ingress-azure
  Normal   Started    19m (x4 over 19m)     kubelet            Started container ingress-azure
  Normal   Pulling    19m (x4 over 19m)     kubelet            Pulling image "mcr.microsoft.com/azure-application-gateway/kubernetes-ingress:1.5.1"
  Normal   Pulled     19m                   kubelet            Successfully pulled image "mcr.microsoft.com/azure-application-gateway/kubernetes-ingress:1.5.1" in 98.417938ms
  Warning  BackOff    4m54s (x82 over 19m)  kubelet            Back-off restarting failed container

Output of `kubectl logs .

I0531 10:05:47.700084       1 utils.go:114] Using verbosity level 3 from environment variable APPGW_VERBOSITY_LEVEL
I0531 10:05:47.743106       1 supported_apiversion.go:70] server version is: 1.21.9
I0531 10:05:47.763709       1 main.go:118] Using User Agent Suffix='ingress-azure-7bb7749d8-q7bm7' when communicating with ARM
I0531 10:05:47.763995       1 main.go:137] Application Gateway Details: Subscription="260524c9-7a4d-4483-8d85-de54f9c40ae8" Resource Group="haiche-aks-1-gateway-1" Name="appgw1voa5jhws7maoc"
I0531 10:05:47.764060       1 auth.go:38] Creating authorizer from file referenced by environment variable: /etc/Azure/Networking-AppGW/auth/armAuth.json
I0531 10:05:47.765078       1 httpserver.go:57] Starting API Server on :8123
I0531 10:05:48.112538       1 main.go:186] Ingress Controller will observe the following namespaces:sample-domain1-ns
F0531 10:05:48.200347       1 main.go:192] Got a fatal validation error on existing Application Gateway config. Please update Application Gateway or the controller's helm config. Error:Code="ErrorNoPublicIP" Message="Applcation Gateway doesn't have a public IP"
goroutine 1 [running]:
k8s.io/klog/v2.stacks(0x1)
        /go/pkg/mod/k8s.io/klog/v2@v2.9.0/klog.go:1026 +0x8a
k8s.io/klog/v2.(*loggingT).output(0x2858520, 0x3, {0x0, 0x0}, 0xc00022ab60, 0x1, {0x1f73ff3, 0xc00005e800}, 0xc000468360, 0x0)
        /go/pkg/mod/k8s.io/klog/v2@v2.9.0/klog.go:975 +0x63d
k8s.io/klog/v2.(*loggingT).printDepth(0x0, 0x46056, {0x0, 0x0}, {0x0, 0x0}, 0x13, {0xc000468360, 0x2, 0x2})
        /go/pkg/mod/k8s.io/klog/v2@v2.9.0/klog.go:735 +0x1ba
k8s.io/klog/v2.(*loggingT).print(...)
        /go/pkg/mod/k8s.io/klog/v2@v2.9.0/klog.go:717
k8s.io/klog/v2.Fatal(...)
        /go/pkg/mod/k8s.io/klog/v2@v2.9.0/klog.go:1494
main.main()
        /azure/cmd/appgw-ingress/main.go:192 +0x176e

goroutine 19 [chan receive]:
k8s.io/klog/v2.(*loggingT).flushDaemon(0x0)
        /go/pkg/mod/k8s.io/klog/v2@v2.9.0/klog.go:1169 +0x6a
created by k8s.io/klog/v2.init.0
        /go/pkg/mod/k8s.io/klog/v2@v2.9.0/klog.go:420 +0xfb

Any Azure support tickets associated with this issue.

@galiacheng I just got the same problem, did you find any solutions?

Same problem here. Have a Standard_v2 application gateway with the EnableApplicationGatewayNetworkIsolation preview, and the controller is throwing
Error:Code="ErrorNoPublicIP" Message="Applcation Gateway doesn't have a public IP"

I'm curious if the AGIC was never updated to handle a fully private appgw?
https://github.com/Azure/application-gateway-kubernetes-ingress/issues/1423#issuecomment-1194455124


Disable scrollable tab animation / tabs do not respect transitions from theme

The scrollable tab component animates to the selected tab if it is out of view / partly out of view. This causes troubles during visual regression tests, because it leads to flaky screenshots.
During visual regression tests I use the following theme modification that turns off animations:
      transitions: {
        create: () => "none",
        duration: {
          complex: 0,
          enteringScreen: 0,
          leavingScreen: 0,
          short: 0,
          shorter: 0,
          shortest: 0,
          standard: 0,
        },
      },

This works quite well, except for the tab situation.
Tabs animation don't seem to respect the theme settings. It would be great if they would or if there would be a way to disable tab animation.
One use case I see besides mine is an accessibility issue if people use prefers-reduced-motion
This issues exists in material-ui 4.x and 5.x

[x] The issue is present in the latest release.
[x] I have searched the issues of this repository and believe that this is not a duplicate. >> There were similiar issues but no solution

Current Behavior 😯
Scrollable tabs animate regardless of theme setting. There is no way of disabling this.

Expected Behavior 🤔
Scrollable tabs should use the theme transition settings

If you look here: https://github.com/mui-org/material-ui/blob/3c95b618a58629d5dcde16f8b49ae6b76031b522/packages/material-ui/src/Tabs/Tabs.js#L422-L428
you can see here that the animate arg defaults to true. I think an easy remedy would be to pass the theme transition duration to the animate function
 const scroll = (scrollValue, { animation = true } = {}) => {
    if (animation) {
      animate(scrollStart, tabsRef.current, scrollValue, {duration: theme.transitions.duration.standard);
    } else {
      tabsRef.current[scrollStart] = scrollValue;
    }
  };


Update connect-multiple-private-clouds-same-region.md

Corrected VMware product name.

@rvandenbedem : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@suzizuber - Can you sign-off on this one plz?

#sign-off


allowing creation of intake catalogues via mopdb  varlist

The plan is to allow the creation of an intake-esm catalogue of the raw model output based on the files scan and mapping of variables that the tool is already doing to create the mapping.
The new mopdb subcommand intake will take the same inputs shared by varlist and template, but additionally should be able to take a final mapping.
It will then use a template available in the repository data folder to setup the catalogue and use the available information to write a catalogue.csv list of files for intake.
Based on above it can start from:

-f path -d match
-f varlist file
-f mapping file -?
We need a way for intake to know that the file is a map or a varlist as behaviour will be different
also for this to work fully we should really pass a list of variable objects to the final step, so this will come either from previous steps or will be created out of the mapping file.
A similar change needs to be done for "varlist" when calling template as we should be pass the list of variable objs and not the file as input as we're doing now.

[ ] add function to read varlist/mapping file and return vobjs object list
[ ] in template we can assume the file is a varlist for intake it could be a mapping file this should be handled by the new function to create vobjs and/or should be determined form the created vobjs
[ ] at the moment model-vars only calls varlist, it should actually include some of its logic and write_varlist should just write to file
[ ] map_variables should be able to directly use the vobjs returned by model_vars() and eventually by the new function if we need to read a varlist file
[ ]write_catalogue (called by intake0 should use vobjs directly

I can now create a intake multi-variable catalogue, however this defeats having added information as you cannot really make use of the mapped values or standard_names as there's not a connection between these and the variable names in the catalogue itself.
I want to to try to add lines for each mapped variable as if they are a single variables files. This will replicate the path information but will allow to select them separately and then use preprocess to open the files.
A esm catalogue might then look like
path-pattern, [var1, var2, var3], '', ''
path-file1, [var1], map1, std-name1,
with a mix approach allowing both multi-variable and single variable

This seems to work, I'm now adding more fields that didn't otherwise make sense, like units, calculation etc.
I should be eliminating only the mapped variables where there's more than 1 input var. But I should be able to add the mapped variables that require some calculation but not other variables.
So I'm adding calculation to the Variable class attributes


fix(pwa): update dependency file-loader to v5

This is the list of breaking changes of v5:

minimum required nodejs version is 10.13.0
rename the esModules option to esModule
switch to ES modules by default (the option esModule is true by default)

And as we still need to support Node v10(.0.0) I think we can't update this here. What do you think?

Yeah, whyever they had to make this 10.13 rather than just 10… 🙄

Okay, back in the game! 👊


Code generator outputing functions in wrong order.

Minimal (er, kinda) reproducing it: https://github.com/juanibiapina/elm-typeerror
I've tried reproducing it with a minimal set of simple functions but was not able. There must be something related to one of the functions that I'm using that I'm missing.
Mac OSX Yosemite. Chrome. Elm 0.18.
The error is:
Uncaught TypeError: _user$project$Main$urlParam is not a function
    at Object.eval (Main.elm:13428)
    at eval (Main.elm:13854)
    at Object.<anonymous> (bundle.js:1381)
    at __webpack_require__ (bundle.js:556)
    at fn (bundle.js:87)
    at eval (index.js:2)
    at Object.<anonymous> (bundle.js:1336)
    at __webpack_require__ (bundle.js:556)
    at fn (bundle.js:87)
    at eval (multi_main:3)1

And here's a snippet of the generated JS:
var _user$project$Main$matchers = _ktonon$url_parser$UrlParser$oneOf(
	{
		ctor: '::',
		_0: A2(_ktonon$url_parser$UrlParser$map, _user$project$Main$TopRoute, _ktonon$url_parser$UrlParser$top),
		_1: {
			ctor: '::',
			_0: A2(
				_ktonon$url_parser$UrlParser$map,
				_user$project$Main$LoginRoute,
				A2(
					_ktonon$url_parser$UrlParser_ops['<?>'],
					_ktonon$url_parser$UrlParser$s('login'),
					_user$project$Main$urlParam('redirect'))), <------------------ ERROR
			_1: {ctor: '[]'}
		}
	});
var _user$project$Main$urlParam = function (name) {
	return A2(_ktonon$url_parser$UrlParser$customParam, name, _user$project$Main$parsePath);
};

Duplicate of any (or several) of #1516, #1527, #1529, https://github.com/elm-lang/elm-compiler/issues/1560?

Thanks for making that list @jvoigtlaender!
Added all of these to https://github.com/elm-lang/elm-compiler/issues/1377 so they can be addressed together in one pass.


Robotjs does not click on ESCAPE in a Selenium Webdriver e2 test

I want to use Robotjs to click on ESCAPE on the keyboard, when Selenium Webdriver opens Upload an image dialog from a web browser.
Expected Behavior
Based on the documentation, it should work with
const robot = require('robotjs');
robot.keyTap('escape');

Current Behavior
I think I'm missing something while using Robotjs, because it does not click on ESCAPE.
Steps to Reproduce (for bugs)

Initialize Robotjs
const robot = require('robotjs');
Use Selenium Webdriver to go to a website and click on the button to trigger Upload an image window
Use Robotjs to click on ESCAPE button on the keyboard in order to close the window and continue with Selenium Webdriver

const uploadButton = await driver.findElement(By.id('capture'));
uploadButton.click();
robot.keyTap('escape');
await driver.findElement(By.id('nextButton').click();

Context

I want to use Robotjs in my e2e tests, in cases where Selenium Webdriver has no power to proceed.
Your Environment

RobotJS version: ^0.6.0
Node.js version: v10.20.1
npm version: 6.14.4
Operating System: macOS Catalina, Version 10.15.4

I'm trying to do the same operation, I need to close the windows OS file selector window, but it is not working.


Save character sheets to local storage and recall them later

first, need to make all contenteditable fields save to Pinia store sheet object
save the character sheet object to an array in local storage (requires a unique sheet.name value converted into an "ID")
if local storage array has sheet objects, need to display a list to load from
need to reassign the Pinia store object with the local storage sheet object (should automatically regenerate sheet)
need to save changes to sheet if current sheet id exists in local storage array


Powered Off VMs, exclude newly created?

Hello,
For 60 Powered Off VMs.ps1, is there an easy way of excluding VMs that have been created in the last 7 days?
Some of them have not been powered on yet and I then mistake them for really old VMs through this script.

You would need to modify the plugin to find the creation date and then filter based on that. Not simple, but not difficult either.

I've added a pull request that would also show the VM's folder and notes.  If you added something to the notes when you created the VM then it would be easy for a human to know they are new without adding overhead to the script.  Something like "20151202- Created for ticket 2289 by (username)".


Error if Symbol not defined.

https://github.com/justinfagnani/mixwith.js/blob/d34fe88ef3bb69d7e1751ad139208b656bf88a38/src/mixwith.js#L181
Seems that if Symbol is not defined, there will be an error. Maybe it needs to be a typeof Symbol != 'undefined' check.

Oh, and
mixin[Symbol.hasInstance]

will check for Function.prototype[Symbol.hasInstance]. Should that check for an own symbol property instead?


ci: release flow

Working to add https://github.com/actions/create-release

Let me merge this to run this CI.
Will create a followup PR later to update body etc.


chore(cve-check): handle Slack API restriction of 50 blocks per message

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


DetLocalVisualizer artifacts in semantic segmentation

Describe the bug
Semantic segmentations are not being accurately visualized with DetLocalVisualizer, leading to the same artifacts as are shown in mmengine issue 741 and below. I don't think the root issue here is with DetLocalVisualizer, but the issue can be fixed by changing the implementation of _draw_sem_seg(). This "fixed" implementation mirrors the _draw_panoptic_seg() method and is also significantly faster.
The current implementation calls Visualizer.draw_binary_masks() and Visualizer.draw_texts() once per label ID in the semantic segmentation. This is causing artifacts around the borders of the image. I tried modifying the interpolation and the implementation of draw_binary_masks to only modify the masked region, but it still causes artifacts outside of a masked region. The solution seems to simply be calling draw_binary_masks() / draw_texts() methods once, drawing all masks and labels at the same time. For the images below I also added draw_polygons() calls to draw outlines as in instance segmentation. This more easily shows the issue is with the borders of the masked regions (and the text boxes).

Visualizer
Image 002006
Image 433204
Image 226802

Orig

Fixed

Orig w/ Poly

Fixed w/ Poly

Reproduction

What command or script did you run?

This was discovered as part of a larger project. I created a minimum working example with two files, show_draw_sem_seg_issue.py, which imports the fixed visualizer from fix_local_visualizer.py. These are in show_draw_sem_seg_issue.zip. These assume COCO-Stuff is setup with tools/dataset_converters/coco_stuff164k.py as shown in the docs (and shown below for clarity).
To reproduce you may do the following (also in the docstring of show_draw_sem_seg_issue.py). The images above are output with these calls.

Generate stuffthingmaps_semseg from here:
https://mmdetection.readthedocs.io/en/latest/user_guides/dataset_prepare.html#coco-semantic-dataset-preparation

Example:
# Assumes mmdetection was cloned to ~/mmdetection
# Assumes data is symbolically linked to ~/mmdetection/data
python ~/mmdetection/tools/dataset_converters/coco_stuff164k.py \
    ~/mmdetection/data/coco \
    --nproc 8

After, the data directory should look like:
~/mmdetection
├── data  # "Data root" used below with --data-root
│   ├── coco
│   │   ├── annotations
│   │   ├── train2017
│   │   ├── val2017
│   │   ├── test2017
│   │   ├── stuffthingmaps
│   │   ├── stuffthingmaps_semseg

Output a subset of val2017 annotations using this script

Example:
# Assumes `show_draw_sem_seg_issue.py` (this script) is copied to:
#    ~/mmdetection/fix_draw_sem_seg/show_draw_sem_seg_issue.py
# Assumes `fix_local_visualizer.py` is copied to same directory:
#    ~/mmdetection/fix_draw_sem_seg/fix_local_visualizer.py
# Assumes data root, e.g. ~/mmdetection/data above, is set to MMDET_DATASETS

cd ~/mmdetection/fix_draw_sem_seg
MMDET_DATASETS=~/mmdetection/data

# Output original GT files to 'gt_orig' dir
python ./show_draw_sem_seg_issue.py --data-root=$MMDET_DATASETS --orig-visualizer --gt-name=gt_orig

# Output fixed GT files to `gt_fix` dir
python ./show_draw_sem_seg_issue.py --data-root=$MMDET_DATASETS --gt-name=gt_fix

# Output fixed GT files with polygon outlines to `gt_fix` dir
python ./show_draw_sem_seg_issue.py --data-root=$MMDET_DATASETS --draw-polygons --gt-name=gt_fix_poly

# Output original GT files with polygon outlines to `gt_nofix_poly` to better see issue
python ./show_draw_sem_seg_issue.py --data-root=$MMDET_DATASETS --no-single-draw-call --draw-polygons --gt-name=gt_nofix_poly

Did you make any modifications on the code or config? Did you understand what you have modified?
All code is above and is my own.

What dataset did you use?
COCO-Stuff as described above.

Environment

Please run python mmdet/utils/collect_env.py to collect necessary environment information and paste it here.

$ python mmdet/utils/collect_env.py
sys.platform: linux
Python: 3.10.12 | packaged by conda-forge | (main, Jun 23 2023, 22:40:32) [GCC 12.3.0]
CUDA available: True
numpy_random_seed:<PHONE_NUMBER>
GPU 0: NVIDIA TITAN V
CUDA_HOME: /usr/local/cuda-11.8
NVCC: Cuda compilation tools, release 11.8, V11.8.89
GCC: gcc (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0
PyTorch: 2.0.1+cu118
PyTorch compiling details: PyTorch built with:
  - GCC 9.3
  - C++ Version: 201703
  - Intel(R) oneAPI Math Kernel Library Version 2022.2-Product Build 20220804 for Intel(R) 64 architecture applications
  - Intel(R) MKL-DNN v2.7.3 (Git Hash 6dbeffbae1f23cbbeae17adb7b5b13f1f37c080e)
  - OpenMP 201511 (a.k.a. OpenMP 4.5)
  - LAPACK is enabled (usually provided by MKL)
  - NNPACK is enabled
  - CPU capability usage: AVX2
  - CUDA Runtime 11.8
  - NVCC architecture flags: -gencode;arch=compute_37,code=sm_37;-gencode;arch=compute_50,code=sm_50;-gencode;arch=compute_60,code=sm_60;-gencode;arch=compute_70,code=sm_70;-gencode;arch=compute_75,code=sm_75;-gencode;arch=compute_80,code=sm_80;-gencode;arch=compute_86,code=sm_86;-gencode;arch=compute_90,code=sm_90
  - CuDNN 8.9
    - Built with CuDNN 8.7
  - Magma 2.6.1
  - Build settings: BLAS_INFO=mkl, BUILD_TYPE=Release, CUDA_VERSION=11.8, CUDNN_VERSION=8.7.0, CXX_COMPILER=/opt/rh/devtoolset-9/root/usr/bin/c++, CXX_FLAGS= -D_GLIBCXX_USE_CXX11_ABI=0 -fabi-version=11 -Wno-deprecated -fvisibility-inlines-hidden -DUSE_PTHREADPOOL -DNDEBUG -DUSE_KINETO -DLIBKINETO_NOROCTRACER -DUSE_FBGEMM -DUSE_QNNPACK -DUSE_PYTORCH_QNNPACK -DUSE_XNNPACK -DSYMBOLICATE_MOBILE_DEBUG_HANDLE -O2 -fPIC -Wall -Wextra -Werror=return-type -Werror=non-virtual-dtor -Werror=bool-operation -Wnarrowing -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wunused-local-typedefs -Wno-unused-parameter -Wno-unused-function -Wno-unused-result -Wno-strict-overflow -Wno-strict-aliasing -Wno-error=deprecated-declarations -Wno-stringop-overflow -Wno-psabi -Wno-error=pedantic -Wno-error=redundant-decls -Wno-error=old-style-cast -fdiagnostics-color=always -faligned-new -Wno-unused-but-set-variable -Wno-maybe-uninitialized -fno-math-errno -fno-trapping-math -Werror=format -Werror=cast-function-type -Wno-stringop-overflow, LAPACK_INFO=mkl, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, TORCH_DISABLE_GPU_ASSERTS=ON, TORCH_VERSION=2.0.1, USE_CUDA=ON, USE_CUDNN=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=ON, USE_MKLDNN=ON, USE_MPI=OFF, USE_NCCL=1, USE_NNPACK=ON, USE_OPENMP=ON, USE_ROCM=OFF,

TorchVision: 0.15.2+cu118
OpenCV: 4.8.1
MMEngine: 0.10.2
MMDetection: 3.2.0+fe3f809

You may add addition that may be helpful for locating the problem, such as

How you installed PyTorch [e.g., pip, conda, source]
Other environment variables that may be related (such as $PATH, $LD_LIBRARY_PATH, $PYTHONPATH, etc.)

I setup my environment with a conda/pip/mim. If you need the scripts/instructions I can share them.
Error traceback
N/A
Bug fix
If you have already identified the reason, you can provide the information here. If you are willing to create a PR to fix it, please also leave a comment here and that would be much appreciated!
I can submit my fix with a PR, or someone on your team can if that's easier. The fix is in fix_local_visualizer.py in the zip above, but here is the core of it. This version has a flag to implement the single-draw fix (sem_seg_single_draw_call) and also has a flag to output the polygon outlines (sem_seg_draw_polygons).
class FixDetLocalVisualizer(DetLocalVisualizer):
    """DetLocalVisualizer with new `_draw_sem_seg()` implementation to optionally:
    - Draw all binary masks / texts in one call rather than iteratively (fixes the issue)
    - Draw polygon outlines as in `DetLocalVisualizer._draw_instances()`

    Have to have the 'name' argument (non-keyword) or we get 'must have `name` argument'
    from ManagerMeta init.
    """

    def __init__(
        self,
        name: str,
        *args,
        sem_seg_single_draw_call: bool = True,  # True fixes the issue, False does not
        sem_seg_draw_polygons: bool = False,  # Optional, True helps see the output a bit better
        polygon_line_width: int = 1,
        **kwargs,
    ):
        self.sem_seg_single_draw_call = sem_seg_single_draw_call
        self.sem_seg_draw_polygons = sem_seg_draw_polygons
        self.polygon_line_width = polygon_line_width
        super().__init__(*args, name=name, **kwargs)

    def _draw_sem_seg(
        self,
        image: np.ndarray,
        sem_seg: PixelData,
        classes: Optional[List],
        palette: Optional[List],
    ) -> np.ndarray:
        """Draw semantic seg of GT or prediction.

        Same as DetLocalVisualizer._draw_sem_seg() but uses `self.single_draw_call`:
        - If true, calls draw_binary_masks()/draw_texts() once which is faster /  minimizes artifacts
        - If false, calls draw_binary_masks()/draw_texts() one per mask like in original version

        We were having issues (artifacts) with the original version and single_draw_call=True helps.
        See https://github.com/open-mmlab/mmengine/issues/741

        Args:
            image (np.ndarray): The image to draw.
            sem_seg (:obj:`PixelData`): Data structure for pixel-level
                annotations or predictions.
            classes (list, optional): Input classes for result rendering, as
                the prediction of segmentation model is a segment map with
                label indices, `classes` is a list which includes items
                responding to the label indices. If classes is not defined,
                visualizer will take `cityscapes` classes by default.
                Defaults to None.
            palette (list, optional): Input palette for result rendering, which
                is a list of color palette responding to the classes.
                Defaults to None.

        Returns:
            np.ndarray: the drawn image which channel is RGB.
        """
        sem_seg_data = sem_seg.sem_seg
        if isinstance(sem_seg_data, torch.Tensor):
            sem_seg_data = sem_seg_data.numpy()

        # 0 ~ num_class, the value 0 means background
        ids = np.unique(sem_seg_data)
        ignore_index = sem_seg.metainfo.get("ignore_index", 255)
        ids = ids[ids != ignore_index]

        if "label_names" in sem_seg:
            # open set semseg
            label_names = sem_seg.metainfo["label_names"]
        else:
            label_names = classes

        labels = np.array(ids, dtype=np.int64)
        colors = [palette[label] for label in labels]

        self.set_image(image)

        # draw all binary masks / texts at once
        masks: List[np.array] = []
        mask_colors: List[Tuple] = []
        polygons: List[np.array] = []
        label_texts: List[str] = []
        label_centroids: List[cv2.typing.MatLike] = []
        label_font_sizes: List[int] = []

        # draw semantic masks
        for i, (label, color) in enumerate(zip(labels, colors)):
            mask = sem_seg_data == label

            contours: Optional[List[np.array]] = None
            if self.sem_seg_draw_polygons:  # Added for clarity
                assert mask.shape[0] == 1, "Expected shape (1,H,W)"
                contours, _ = bitmap_to_polygon(mask[0])

            if self.sem_seg_single_draw_call:  # Added (main fix)
                masks.append(mask)
                mask_colors.append(color)
                if contours is not None:
                    polygons.extend(contours)

            else:
                self.draw_binary_masks(mask, colors=[color], alphas=self.alpha)  # Original code
                if contours is not None:  # Added for clarity
                    self.draw_polygons(
                        contours,
                        edge_colors="w",
                        alpha=self.alpha,
                        line_widths=self.polygon_line_width,
                    )

            label_text = label_names[label]
            _, _, stats, centroids = cv2.connectedComponentsWithStats(
                mask[0].astype(np.uint8), connectivity=8
            )
            if stats.shape[0] > 1:
                largest_id = np.argmax(stats[1:, -1]) + 1
                centroids = centroids[largest_id]

                areas = stats[largest_id, -1]
                scales = _get_adaptive_scales(areas)

                if self.sem_seg_single_draw_call:  # Added, main fix
                    assert np.isscalar(scales), "Expected single value for font scaling"
                    label_texts.append(label_text)
                    label_centroids.append(centroids)
                    label_font_sizes.append(int(13 * scales))
                else:  # Original code
                    self.draw_texts(
                        label_text,
                        centroids,
                        colors=(255, 255, 255),
                        font_sizes=int(13 * scales),
                        horizontal_alignments="center",
                        bboxes=[
                            {"facecolor": "black", "alpha": 0.8, "pad": 0.7, "edgecolor": "none"}
                        ],
                    )

        if self.sem_seg_single_draw_call:  # Added, main fix
            masks = np.concatenate(masks, axis=0)  # N x (1,H,W) -> (N,H,W)
            self.draw_binary_masks(masks, colors=mask_colors, alphas=self.alpha)

            if len(polygons) > 0:
                self.draw_polygons(
                    polygons, edge_colors="w", alpha=self.alpha, line_widths=self.polygon_line_width
                )

            label_centroids = np.stack(label_centroids, axis=0)  # N x (2,) -> (N,2)
            bboxes_kwargs = {
                "facecolor": "black",
                "alpha": self.alpha,
                "pad": 0.7,
                "edgecolor": "none",
            }
            self.draw_texts(
                label_texts,
                label_centroids,
                colors=(255, 255, 255),
                font_sizes=label_font_sizes,
                horizontal_alignments="center",
                bboxes=[bboxes_kwargs] * len(label_texts),
            )

        return self.get_image()

If submitting my own PR I have a couple of other suggestions for an updated DetLocalVisualizer which I have implemented in my own codebase:

Draw polygons after masks, not before, so the lines are on top and more clearly shown
For instances, draw masks first then bboxes, so bboxes and labels are on top of the masks if they partially overlap
In add_datasample() if multiple GT annotations exist, e.g. gt_instances and gt_sem_seg, rather than always merge them into one, have a flag to separate them and concatenate the images together. Same thing for the predictions, because if both of these exist the output is very difficult to parse. Default behavior should obviously be to leave it the way it is, which makes sense if the instance/semantic segmentations (GT or predicted) are non-overlapping.

Thank you for reviewing this.

I stumbled upon the root of the problem here. I still stand by my solution above but the issue is stemming from Visualizer.get_image()
    @master_only
    def get_image(self) -> np.ndarray:
        """Get the drawn image. The format is RGB.

        Returns:
            np.ndarray: the drawn image which channel is RGB.
        """
        assert self._image is not None, 'Please set image using `set_image`'
        return img_from_canvas(self.fig_save_canvas)  # type: ignore

It looks like the img_from_canvas() method is not pixel-wise accurate. It is producing small off-by-one errors sometimes, likely due to the underlying rendering method. I'm not sure how the mechanics of the Visualizer class work, but I think the point is we need to make sure we only call this method when necessary. Since it's called from draw_binary_masks() that means calling draw_binary_masks() one time is much much better than calling it many times (from a pixel-wise accuracy point of view).


Fix some issues in the Perf Dashboard

I have made some changes on this dashboard in order to improve its usability:
1- Added a constraint in the queries to show vCPU/1krps and memory/1krps only when there is a significant load in the mesh. There could be still a tail at the end of a load period that can be disproportional to the steady state values, but that it will be difficult to eliminate.
2- For istio-proxy cpu and memory, add only the values for the containers that are not in the istio-system namespace (i.e., only the application sidecars), since the others are already counted as part of the telemetry and ingressgateway pods.
3- When calculating memory per ingressgateway, the count of instances would return double the actual number, so added a filter to remove container=POD.
4- Added a text panel with a brief explanation of the charts and how to interpret the data.
You can see the modified dashboard live here:
https://grafana.v103.qualistio.org/d/t8BUIg1ma/istio-performance-dashboard-pr-9404?refresh=10s&orgId=1&from=now-15m&to=now
or if it is offline, here is a snapshot:
https://snapshot.raintank.io/dashboard/snapshot/hIkT9VrTQ1fN1qA7o1xf4BgaixG00Cnb

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

Needs approval from an approver in each of these files:

install/OWNERS

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

Hi @jnativio. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
I understand the commands that are listed here.

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

/assign @mandarjog

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

Test name
Commit
Details
Rerun command

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
12777370969d24645ee0371e207b88734021a8f2
link
/test istio-pilot-e2e-envoyv2-v1alpha3

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

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

Test name
Commit
Details
Rerun command

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
12777370969d24645ee0371e207b88734021a8f2
link
/test istio-pilot-e2e-envoyv2-v1alpha3

prow/istio-pilot-e2e-envoyv2-v1alpha3-mcp.sh
12777370969d24645ee0371e207b88734021a8f2
link
/test istio-pilot-e2e-envoyv2-v1alpha3-mcp

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

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

Test name
Commit
Details
Rerun command

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
12777370969d24645ee0371e207b88734021a8f2
link
/test istio-pilot-e2e-envoyv2-v1alpha3

prow/istio-pilot-e2e-envoyv2-v1alpha3-mcp.sh
12777370969d24645ee0371e207b88734021a8f2
link
/test istio-pilot-e2e-envoyv2-v1alpha3-mcp

prow/istio-pilot-multicluster-e2e.sh
12777370969d24645ee0371e207b88734021a8f2
link
/test istio-pilot-multicluster-e2e

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

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

Test name
Commit
Details
Rerun command

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
12777370969d24645ee0371e207b88734021a8f2
link
/test istio-pilot-e2e-envoyv2-v1alpha3

prow/istio-pilot-e2e-envoyv2-v1alpha3-mcp.sh
12777370969d24645ee0371e207b88734021a8f2
link
/test istio-pilot-e2e-envoyv2-v1alpha3-mcp

prow/istio-pilot-multicluster-e2e.sh
12777370969d24645ee0371e207b88734021a8f2
link
/test istio-pilot-multicluster-e2e

prow/e2e-bookInfoTests-v1alpha3.sh
12777370969d24645ee0371e207b88734021a8f2
link
/test e2e-bookInfoTests-envoyv2-v1alpha3

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

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

Needs approval from an approver in each of these files:

install/OWNERS

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

/lgtm

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

Needs approval from an approver in each of these files:

install/OWNERS [mandarjog]

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


teleport v-bind css not working

Version
3.2.27
Reproduction link
teleport.v-bind.css
Steps to reproduce

teleport v-bind css not working!! bug!
What is expected?
teleport v-bind css not working!! bug!
What is actually happening?
teleport v-bind css not working!! bug!

teleport v-bind css not working!! bug!

duplicate of https://github.com/vuejs/core/issues/4605


LTO options in release and dist profiles are swapped

These are the profiles as they currently exist.
[profile.release]
lto = true
codegen-units = 1

# The profile that 'cargo dist' will build with
[profile.dist]
inherits = "release"
lto = "thin"

The parts below produce potentially better optimizations at the cost of speed. (vs thin and default codegen units)
lto = true
codegen-units = 1

I believe they should be in the dist profile, not release.
IMO, LTO shouldn't be used at all in release, but I am impatient.

Hey, thanks for the reminder. I tried to clean this up and was hoping I could remove the custom release configuration, but some of the tools the template uses for distribution builds do not support custom profiles (xbuild and trunk).
I improved the dist profile, used it were I could and documented why the release profile still has custom configuration. As soon as all used build tools support custom profiles, I would like to remove the release configuration.


Move common Spark code from WebIndex

There is some common Spark code in Webindex that could be moved fluo-recipes and added to a 'spark' module.  This code primarily deals with taking Spark RDDs in RowColum/Bytes or Key/Value format and storing them in Fluo or Accumulo.  However, more Spark related code could be added over time.

Closed by #56


Bug 2092867: Add chart name to ACM simple kmod and ACM ICE driver

Having the same chart name in the SpecialResource/SpecialResourceModule
CR triggers 0 byte size files in helm internal cache, not being able
to read the helm recipe's contents and failing to reconcile.

/lgtm


Conan Full Build Error

=> ERROR [conan 5/5] RUN ue4 conan generate && echo '' && echo 'RUN directive complete. Docker will now commit the filesystem layer to disk.' && echo 'Note that for large filesystem layers this can take quite  2.7s
when running ue4-docker build 5.4.4 --target=full

I have encountered the same issue. Did you manage to fix it?
Posting additional info
`> [conan 5/5] RUN ue4 conan generate && echo '' && echo 'RUN directive complete. Docker will now commit the filesystem layer to disk.' && echo 'Note that for large filesystem layers this can take quite some time.' && echo 'Performing filesystem layer commit...' && echo '':
0.445 Using user-specified engine root: /home/ue4/UnrealEngine
2.521 Removing the "ue5.4-Linux-x86_64-unknown-linux-gnu" Conan profile if it already exists...
2.521 Removing any previous versions of profile base packages...
2.521 Creating "ue5.4-Linux-x86_64-unknown-linux-gnu" Conan profile using autodetected settings...
2.521 Installing profile base packages...
2.521 Copying the "ue5.4-Linux-x86_64-unknown-linux-gnu" Conan profile into a new profile named "ue4"...
2.521 Retrieving thirdparty library list from UBT...
2.521 Traceback (most recent call last):
2.521   File "/usr/local/bin/ue4", line 8, in
2.521     sys.exit(main())
2.521   File "/usr/local/lib/python3.10/dist-packages/ue4cli/cli.py", line 222, in main
2.521     SUPPORTED_COMMANDS[command]['action'](manager, args)
2.521   File "/usr/local/lib/python3.10/dist-packages/conan_ue4cli/main.py", line 48, in main
2.521     SUBCOMMANDS[subcommand]['function'](manager, args[1:])
2.521   File "/usr/local/lib/python3.10/dist-packages/conan_ue4cli/commands/generate.py", line 153, in generate
2.521     libs = [lib for lib in manager.listThirdPartyLibs() if lib != 'libc++']
2.521   File "/usr/local/lib/python3.10/dist-packages/ue4cli/UnrealManagerBase.py", line 183, in listThirdPartyLibs
2.521     return interrogator.list(self.getPlatformIdentifier(), configuration, self._getLibraryOverrides())
2.521   File "/usr/local/lib/python3.10/dist-packages/ue4cli/UE4BuildInterrogator.py", line 20, in list
2.521     modules = self._getThirdPartyLibs(platformIdentifier, configuration)
2.521   File "/usr/local/lib/python3.10/dist-packages/ue4cli/UE4BuildInterrogator.py", line 170, in _getThirdPartyLibs
2.521     self.runUBTFunc('UnrealEditor', platformIdentifier, configuration, args)
2.521   File "/usr/local/lib/python3.10/dist-packages/ue4cli/UnrealManagerBase.py", line 695, in
2.521     ubtLambda = lambda target, platform, config, args: self._runUnrealBuildTool(target, platform, config, args, True)
2.521   File "/usr/local/lib/python3.10/dist-packages/ue4cli/UnrealManagerBase.py", line 687, in _runUnrealBuildTool
2.522     return Utility.capture(arguments, cwd=self.getEngineRoot(), raiseOnError=True)
2.522   File "/usr/local/lib/python3.10/dist-packages/ue4cli/Utility.py", line 125, in capture
2.522     raise Exception(
2.522 Exception: child process ['/home/ue4/UnrealEngine/Engine/Build/BatchFiles/Linux/Build.sh', 'UnrealEditor', 'Linux', 'Development', '-Mode=JsonExport', '-OutputFile=/tmp/tmpm89lfgua/ubt_output.json'] failed with exit code 1
2.522 stdout: "Setting up bundled DotNet SDK
2.522 Running command : dotnet Engine/Binaries/DotNET/UnrealBuildTool/UnrealBuildTool.dll UnrealEditor Linux Development -Mode=JsonExport -OutputFile=/tmp/tmpm89lfgua/ubt_output.json
2.522
2.522 Welcome to .NET !
2.522 ---------------------
2.522 SDK Version:
2.522
2.522 Telemetry
2.522 ---------
2.522 The .NET tools collect usage data in order to help us improve your experience. It is collected by Microsoft and shared with the community. You can opt-out of telemetry by setting the DOTNET_CLI_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your favorite shell.
2.522
2.522 Read more about .NET CLI Tools telemetry: https://aka.ms/dotnet-cli-telemetry
2.522
2.522 ----------------
2.522 Installed an ASP.NET Core HTTPS development certificate.
2.522 To trust the certificate run 'dotnet dev-certs https --trust' (Windows and macOS only).
2.522 Learn about HTTPS: https://aka.ms/dotnet-https
2.522 ----------------
2.522 Write your first app: https://aka.ms/dotnet-hello-world
2.522 Find out what's new: https://aka.ms/dotnet-whats-new
2.522 Explore documentation: https://aka.ms/dotnet-docs
2.522 Report issues and find source on GitHub: https://github.com/dotnet/core
2.522 Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli
2.522 --------------------------------------------------------------------------------------
2.522 "
2.522 stderr: "Could not execute because the specified command or file was not found.
2.522 Possible reasons for this include:
2.522   * You misspelled a built-in dotnet command.
2.522   * You intended to execute a .NET program, but dotnet-Engine/Binaries/DotNET/UnrealBuildTool/UnrealBuildTool.dll does not exist.
2.522   * You intended to run a global tool, but a dotnet-prefixed executable with this name could not be found on the PATH.
2.522 "
Dockerfile:20
18 |     # Extract the third-party library details from UBT
19 |     RUN ue4 setroot /home/ue4/UnrealEngine && echo '' && echo 'RUN directive complete. Docker will now commit the filesystem layer to disk.' && echo 'Note that for large filesystem layers this can take quite some time.' && echo 'Performing filesystem layer commit...' && echo ''
20 | >>> RUN ue4 conan generate && echo '' && echo 'RUN directive complete. Docker will now commit the filesystem layer to disk.' && echo 'Note that for large filesystem layers this can take quite some time.' && echo 'Performing filesystem layer commit...' && echo ''
21 |
22 |     # Copy the generated Conan packages into a new image with our Installed Build
ERROR: failed to solve: process "/bin/sh -c ue4 conan generate && echo '' && echo 'RUN directive complete. Docker will now commit the filesystem layer to disk.' && echo 'Note that for large filesystem layers this can take quite some time.' && echo 'Performing filesystem layer commit...' && echo ''" did not complete successfully: exit code: 1
[ue4-docker build] Error: failed to build image "adamrehn/ue4-full:5.4.4-opengl-ubuntu22.04".`

Hmm. We're just calling out to UE's Build.sh, so it looks like a UE-side issue, but perhaps we need to do something to ensure that .dll exists first...
Also, poking around, there used to be an issue that UnrealBuildTool.dll was in the wrong directory (or perhaps the Build.sh has a faulty default for installed builds... although this might be unrelated and was also years ago.)
And of course, it might be a new issue with UE 5.4.4, that we would have to work-around or patch. UE 5.5.0 is out now, so we may never see a UE 5.4.5 if it is an engine-side bug; it'd be good to know if this is also affecting UE 5.5.0.
I don't have a Linux box handy to investigate this right now, but if anyone's up for debugging, determining if there is a UnrealBuildTool.dll created before this step, and if so, where it's located, would help narrow down the issue.


Transform with RenameTypes break __typename on a list

First, thanks for your amazing work on the version 3.
I made few tests with the new transform api for namespacing types and fields and i encounter a strange bug. I'm don't know if it's a miss understanding from my side or simply a bug.
Basically, it's happen after transforming (Renaming type) and asking for the field __typename on a list, the response is an empty list but it's working if i didn't ask for the field __typename.
It's look to work for a simple object type.
> Execution
import { graphql } from "graphql";
import * as util from "util";

import {
  makeExecutableSchema,
  RenameTypes,
  RenameRootFields,
} from 'graphql-tools';

import transformSchema from "graphql-tools/dist/transforms/transformSchema";

const userSchema = makeExecutableSchema({
  typeDefs: `
    type User {
      id: ID!
    }

    type Query {
      users: [User!]!
      user: User!
    }
  `,
  resolvers: {
    Query: {
      users: {
        resolve: () => {
          return [
            {
              id: "user1"
            },
            {
              id: "user2"
            }
          ];
        }
      },
      user: {
        resolve: () => {
          return {
            id: "user1"
          }
        }
      },
    }
  }
});

const userSchemaTransform = transformSchema(userSchema, [
  new RenameRootFields((_, fieldName: string) => {
    return `User_${fieldName}`;
  }),
  new RenameTypes((name: string) => { return `User_${name}` }),
]);

const query = ({ query, variables }: { query: string; variables?: { [key: string]: any } }) =>
  graphql({
    schema: userSchemaTransform,
    source: query,
    variableValues: variables,
  }) as any;

(async () => {
  const resUsers = await query({
    query: `
       query {
         User_users {
           id
         }
       }
    `
  });

  // Works
  console.log(util.inspect(resUsers, false, null));

  const resUsersWithTypename = await query({
    query: `
       query {
         User_users {
           __typename
           id
         }
       }
    `
  });

  // Empty list
  console.log(util.inspect(resUsersWithTypename, false, null));

  const resUser = await query({
    query: `
       query {
         User_user {
           __typename
           id
         }
       }
    `
  });

  // Works
  console.log(util.inspect(resUser, false, null));
})();

> Results
// Without __typname on a list
{ data: { User_users: [ { id: 'user1' }, { id: 'user2' } ] } }

// With __typename on a list
{ data: { User_users: [] } }

// With __typename on a simple type
{ data: { User_user: { __typename: 'User_User', id: 'user1' } } }

#756 fix the problem

Thanks and fixed!


System.Runtime.Caching dependency in Z.Expressions.Eval prevent using in Xamarin

Description
We use Z.EntityFramework.Plus.EFCore in our Xamarin.Forms apps. The verion 3.0.34 break the compability. As I can see, Z.Expressions.Eval adds new dependency from version 3.1.0, System.Runtime.Caching. This dependency prevent apps from build. On build we get the error below:
Can not resolve reference: `System.Runtime.Caching`, referenced by `Z.Expressions.Eval`. Please add a NuGet package or assembly reference for `System.Runtime.Caching`, or remove the reference to `Z.Expressions.Eval`.

Adding of System.Runtime.Caching NuGet package to the project doesn't help.
Further technical details

EF version: 3.1
EF Plus version: 3.0.34
Database Provider: SQLite

Hello @WebDucer ,
My developer didn't succeed to reproduce the issue.
It's possible for you to provide a small runnable project with the issue? It will be faster for us to find out why that's not working.

Hello @WebDucer
Since our last conversation, we haven't heard from you.
As mentioned in my previous message, is it possible for you to provide a small runnable project with the issue?
Looking forward to hearing from you,
Jon

Hello @JonathanMagnan
I'm having the same issue and created a small sample project where I could reproduce it. I get the error when trying to compile the android project.
SampleIssue.zip
thanks in advance
Martin

Awesome thank you ;) We will look at it.

Here is what my developer found so far: https://github.com/dotnet/runtime/issues/28686
It seems there was indeed an issue with Xamarin.Android and the caching library.
It looks to be fixed in v3.0
Is it possible for you to upgrade to this version?
On our side, we had to do this change to make sure all framework version was using the same cache, and no 2 different caching libraries.

Thanks. I will try it on Monday and see what versions we use in Android projects.

I'm not sure how I would get to the correct version. I'm using VS 2019 16.4.4 which should have the latest .net Core SDK included. I tried updating to the latest Xamarin.Forms version (<IP_ADDRESS>1640) and downgrading the EFCore Version to 3.0.2, using .NetStandard 2.1.
Everything to no avail. I'm still getting the error. Am I missing some place where I could change a version? My Android version for compiling is 9.0, min-version 5.0 and targetversion 9.0.

That's a very good question @MartinLeist ,
No one is used with Xamarin here (just the very basic). We tried on our side and didn't find how to make it works either.
We are currently in discussion about moving all our .NET Core project to use the new Microsoft.Extensions.Caching cache (which was used previously). If this change gets accepted, we will try to do it this week.
Personally, I don't like the fact that the .NET Framework and .NET Core projects will use a different cache but we might not have the choice to eventually move to this one either.
I will let you know more very soon.

Hello @WebDucer , @MartinLeist ,
Just to let you know that the final decision was to move all .NET Standard version of our library to use instead Microsoft.Extensions.Caching.
So probably at the start of next week, our library will no longer use System.Runtime.Caching dll.
So this issue will be fixed soon ;)

Hello,
A new version has been released.
For EF Core, our library should no longer have a dependency on System.Runtime.Caching.
Could you try it and let us know if that's now working?

Hello,
Since our previous conversation, we haven't heard from you.
Did you get the time to try out the new version?
looking forward to hearing from you,
Jon

Hi @JonathanMagnan
sorry for the late answer. I did not have time to attempt the EFCore 3 update again earlier. I tried today and while I still get errors, they are not with your project. The compilation works now. I also updated my sample project to EFCore 3.1.2 and Z.EntityFramework.Plus.EFCore 3.0.39 and it now has no problem with compilation anymore.
Thanks.

Awesome, thank you for letting us know.
Have a great day.


I don't log ips but ebwry website logs your ip when you visiy it, its almost imposible to get a privafe ip which is what actually does damage.


Updated starter projects to use initializeWithConfiguration

Closes #929

Thank you for your pull request and welcome to our community. We require contributors to sign our Contributor License Agreement, and we don't seem to have you on file. In order for us to review and merge your code, please sign up at https://code.facebook.com/cla - and if you have received this in error or have any questions, please drop us a line at<EMAIL_ADDRESS>Thanks!


Bump version of webcrypto

Forgotten after version of mls-rs-core was bumped.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 and MIT license.

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

Project coverage is 90.17%. Comparing base (ad3c6e9) to head (6f5c733).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #217   +/-   ##
=======================================
  Coverage   90.17%   90.17%
=======================================
  Files         176      176
  Lines       31558    31558
=======================================
  Hits        28458    28458
  Misses       3100     3100

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

🚨 Try these New Features:

Flaky Tests Detection - Detect and resolve failed and flaky tests


State observers proposal

What I do in this PR:
Concept:

divide all state into two categories:

broadcasting: the subscription is global; every time there's a change, all subscribers are notified. (default - this is how we handled all the state till now)
observable: the state that only notifies interested subscribers - those subscribed through a dedicated observer

when contributing state from Shell, it is contributed as either broadcasting or observable:

contributeState()  contributes broadcasting state
contributeObservableState() contributes observable state.

contributeObservableState creates a ChangeObserver dedicated to that piece of state. The ChangeObserver will usually be exposed through a property in an API.
ChangeObserver is parallel to RX-like Observable interface - it has subscribe() function for anyone who's interested. But the difference that the callback doesn't have the "next data" parameter, as that would leak package internal state to external subscribers.
The most common use case is to get a ChangeObserver from an API and pass it to connectWithShellAndObserve()
connectWithShellAndObserve is a variation of connectWithShell() that receives array of ChangeObservers in an additional parameter. The connected component's mapStateToProps would be checked, as earlier, on every change in the broadcasting state, and in addition, on every change in any of passed observers.

Implementation highlights:

all code related to building Redux store that resided in appHost.ts now moved to throttledStore.ts
when the ThrottledStore is built, every reducer gets wrapped in a notification decorator:

broadcasting reducers are wrapped with a decorator that upon a change, sets the flag "broadcasting state changed"
observable reducers are wrapped with a decorator than upon a change, notifies the dedicated observer

when an action is dispatched:

if any or broadcasting reducers set the "broadcasting state changed", all regular subscribers are notified.
the "broadcasting state changed" flag is reset each time after reducers run (on ThrottledStores own subscriber, which is the only direct subscriber to the underlying Redux store).

ChangeObserver uses an ExtensionSlot for storing subscribers, so that there's no need to unsubscribe when subscriber's Shell is exiting the AppHost - it should happen automatically.
connectWithShellAndObserve wraps the usual connected component with a HOC that causes the component to update when any of the passed observers notify about a change.

@itsh01 @salickc
Now ready for final review.
Now connectWithShellAndObserve receives a map of observables, which is converted to map of observed selectors, and then consumed by mapStateToProps through the ownProps parameter. It doesn't require changes to existing components. The changes are only in mapStatesToProps.
    interface SomethingElseSelectors {
       getSomeValue(): SomeValue
    }
    interface MyAPI {
        getSomething(): Something
        observables: {
            somethingElse: Observable<SomethingElseSelectors>
        }
    }
    const ConnectedComp = connectWithShellAndObserve(
        {
            somethingElse: host.getAPI(MyAPI).observables.somethingElse
        },
        (_shell, state: TestStateOne, ownProps): CompProps => {
            mapStateToPropsSpy()
            return {
                someValue: ownProps?.somethingElse.getSomeValue() || 'N/A'
            }
        },
       undefined,
        shell
    )(PureComp)

One thing's left - I want to find a more elegant name to  ChangeObserver. The ideal would be Observable<T>. But I’m afraid of conflicts with other Observables in react and redux.
WDYT?


Go back to specific step in waterfall

Hi,
Working with node here!
How can I go back to a specific step in a waterfall ?
The use case is as follow:
Step 1 :
The User is prompted to enter a research
Step 2 :
No result Found So we go back to step 1
I can't find a way to implement this behavior...

reload the dialog using session.replaceDialog(). This will start you back at the beginning of the waterfall. If your waterfall isn't a separate dialog you should break it out to be a separate dialog.

Yeah I discovered it by myself yesterday ! Hope it will help others!
Thanks for the great work you are doing on this project by the way!

Is there a way to skip a step in a waterfall? Say I have a waterfall where each step promps for some data, but for some run through's I may already have the data needed in some of the steps.

@stephshelley check if the result exists, if it does run next()

may be, you can add a int value to next, to comeback to a previous step or add an index to every step, and, using next(index), we can go back to the step in waterfall

If you want to go backward use a Switch method instead of the waterfall dialog.

@jasonMunsterteiger can you explein please?

You use a Case/Switch statement with If() and control the flow different than with a waterfall dialog.
Just check the Case against the client reply and you can start from whatever part in the loop you desire.

Reading his initial question again, I see that you could also use the data validator for dialog prompts and keep trying that same question until it receives the expected data.


Added package metadata to controls project to enable publishing

Resolved / Related Issues
Discussed on Discord
Steps used to test these changes

Built the Files controls project
Checked for Roslyn analysers during build
Ensured NuGet package was correctly generated
Inspected NuGet package internals to ensure proper generation and inclusion of XAML resources

Note for reviewer:

The CD fails because there is no such API key provided (please create a NUGET_API_KEY secret in the repository to enable publishing)


Fix alpha formula

Fix alpha formula for top view. It hadn't returned the alpha to 1 when top view expanded.

Thanks @brightsider - I'll take a look later and merge this in.


JSON parsing not working properly.

Fetching data correctly from API as I am printing out response and debugging shows me the results. However, the actually JSON PARSE using "<~" is giving weird/odd behaviour. This has randomly broke. Is there any known issues or something you are working on similar from the other side???

@jaffacake

Hi,
Same here. Parsing otherwise valid JSON fails in some cases. I have, in my opinion, quite a big JSON array (70k items). I'm getting it compressed from the server (in gzip). After that I'm passing the decompressed data to SwiftyJSON  constructor init(data: Data, options opt: JSONSerialization.ReadingOptions = .allowFragments, error: NSErrorPointer = nil) .  I'm passing the same json data, but sometimes this line JSONSerialization.jsonObject(with: data, options: opt) throws:

Error Domain=NSCocoaErrorDomain Code=3840 "Unable to convert data to string around character 1944859."

In respect of the above issue I'd like to suggest something. Initially I used SwiftyJSON constructor like this let json = JSON(data: decompressedData), and then my check was for a .null  JSON. What I expected is if the JSON is .null, to have the error for that set in  SwiftyJSON  error property, but it's not set even if JSONSerialization.jsonObject(with: data, options: opt) throws an exception. Then I had to switch to let json = JSON(data: decompressedData, options: [], error: &error) in order to obtain the error. It seems kinda inconsistent to use another error object only for the constructor when working with SwiftyJSON. Could you please, add one line in constructor that will copy the exception error to your property.

i am also facing the same issue. Not able to use swiftyJSON and socket.io swift 3.0. Please help me out.Its urgent.

@crickabhi Looks like you have a duplicate SwiftyJSON module ?

@AleksandarPetrov @haiderashfaq I would love to take a look at this if you guys can share a sample project to reproduce this. :)

@wongzigii I created a new project and added SwiftyJSON and socket.io to it and made sure that there is no duplicate SwiftyJSON module and still my project does not compile.
Therefore i have added the project. Please have a look at it and propose a desired solution.
Thanks.
SocketWithSwiftyJSON.zip

I found a way to fix my issue. Still I think that the error, that may arise in the constructor, should be stored to the local property.


ECS Enhancements

Hey team,
Description
This PR introduces the following enhancements:

Lock required dependencies
Format the module
Use unique resource names - this will allow to deploy the service multiple times on the same cluster (for configuration tests for example) and to maintain separate definition within the same account/region
Support user tagging - frequently used for billing and alike
Use single definition for multiple service deployments - allows centrally maintaining configuration for all the deployments

How Has This Been Tested?
This PR was not tested
Checklist:

[ ] I have updated the relevant example in the examples directory for the module.
[ ] I have updated the relevant test file for the module.
[ ] This change does not affect module (e.g. it's readme file change)

I have updated the PR as per your commentaries
Thank you

@anton-yurchenko I notice that there is 1 check fail since you didn't update the changelog
once you update it we will be able to merge the changes


More tidying

Changes
Some more tiny fixes & tidying up. :leaves:

Curious about why the width changes, but other than that :+1:


fix tests that need to be uncommented

Some tests ask to be uncommented to see actual behaviour, because they are designed to fail.
Instead of doing that, another instance of mocha should be run and then test on that instance if the before/after/tests are run/failed/etc. Kinda of what I've done at test/mocha.js.

Thanks to @geoguide we've also discovered that async errors are reported as 'Uncaught'. All the tests that 'need to be uncommented to check behaviour' should be improved, IMO.

Closed thanks to the great work of @glenjamin in #1781


When running as a standalone NW.js application on a Macintosh, copy/paste do not work in text fields.

This is an issue in NW.js when the built-in webkit browser menu is not active:
This NW.js issue documents how to add logic to activate that menu to allow copy/paste to work.
https://github.com/nwjs/nw.js/issues/1955
That logic needs to be added to cb-bread.
In the interim, run cb-bread using the 'node server' command and open http://localhost:8008/ in a browser such as Safari or Chrome.

Resolved in Release 1.0.2+20151006
https://github.com/rrutt/cb-bread/releases/tag/1.0.2%2B20151006


CLI and API server should allow retrieval log URLs

The CLI and API server should allow the user to retrieve log URLs associated with archived resources.
Although logs are associated with Pods, the log URLs should be able to be retrieved by referencing any Pod owner.  For example, if the user asks for logs for a  PipelineRun, the API server needs to query the database to get the logs from all Pods that executed as part of that PipelineRun.
A query to retrieve resources that are owned by another resource might look like this:
SELECT uuid
FROM public.resource
WHERE data->'metadata'->'ownerReferences' @> '[{"uid": "2d893024-4ed4-4318-a12d-13cb7f6562bc'"}]'::jsonb;

The API server may need to make multiple queries to retrieve all the Pods and then get the log URLs.  Or a stored procedure could be created to do all the work, resulting in only a single call being required from the API server.
Acceptance Criteria

The API server and CLI allows users to query and retrieve log URLs.

References

Logging design document
This is dependent upon log URL generation functionality in the sink (see https://github.com/kubearchive/kubearchive/issues/538)
This issue relates to https://github.com/kubearchive/kubearchive/issues/492.

The whole log URL retrieval feature is big enough to be separated into several issues.
I linked the main PR to this issue but I am creating separate issues to get this feature complete:
https://github.com/kubearchive/kubearchive/issues/633
https://github.com/kubearchive/kubearchive/issues/632
https://github.com/kubearchive/kubearchive/issues/631
https://github.com/kubearchive/kubearchive/issues/630


Add API documentation to README

Hello :wave:
The goal of the task is to add API documentation to the README. Current API is a bit obscure and can be quite complicated to understand at first look.
Example of API documentation can be found in another project like RC.

hi @fraxken can u guide me how do i add API documentation to the readme

@manan1979 It's equivalent to writing documentation, so it required to look at the code. You need to have some understading of markdown. For how to do it exactly, that's why I linked an "example" project.
Can't help that much, if you have more precise questions do not hesitate


play sprite in sync with audio?

How would I have a character come in from the left side of the screen and stop in the middle then play the sprite animation with an audio file at the same time then have the animation stop once the audio file stops?

You can provide a callback to the audio player's play method which will be called after the sound is completed. Inside that callback function you could stop the animation. If you were using a frame-based animation with a block or slice you could call the stop method. For example:
game.speaker.play("sound-name", function () {
  animation.stop();
});


Alex

Functional modeling and plotting routes. Deployed to Heroku

Merging working branch into development branch. Plotting and modeling routes set up and deployed.


Helm fails to download chart when installing but claims deployment worked

I've been trying to deploy cert-manager via helm to a RKE kubernetes cluster both locally and in the cloud.
However, every time Helm claims that the chart is deployed and k8s claims it isn't.
Using --wait/--atomic has merely ended in timeouts and --verify has claimed that helm can't fetch the chart at all (even though using helm to download the chart and untar it works fine as long as I don't try to install).
wolfskin@Arch:~/repos/rke|⇒  helm repo update
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "rancher-latest" chart repository
...Successfully got an update from the "jetstack" chart repository
Update Complete. ⎈Happy Helming!⎈
wolfskin@Arch:~/repos/rke|⇒  kubectl create namespace cattle-system
namespace/cattle-system created
wolfskin@Arch:~/repos/rke|⇒  kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.0.4/cert-manager.crds.yaml
customresourcedefinition.apiextensions.k8s.io/certificaterequests.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/certificates.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/challenges.acme.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/clusterissuers.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/issuers.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/orders.acme.cert-manager.io created
wolfskin@Arch:~/repos/rke|⇒  kubectl create namespace cert-manager
namespace/cert-manager created
wolfskin@Arch:~/repos/rke|⇒  helm install \
  cert-manager jetstack/cert-manager \
  --namespace cert-manager \
  --version v1.0.4 \
> --verify \
> --atomic
Error: failed to download "jetstack/cert-manager" at version "v1.0.4" (hint: running `helm repo update` may help)
wolfskin@Arch:~/repos/rke|⇒

Any advice that you could give me on this would be much appreciated as I'm completely stumped and under pressure to get this working.
Output of helm version:
version.BuildInfo{Version:"v3.4.2", GitCommit:"23dd3af5e19a02d4f4baa5b2f242645a1a3af629", GitTreeState:"clean", GoVersion:"go1.15.6"}

Output of kubectl version:
Client Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.4", GitCommit:"d360454c9bcd1634cf4cc52d1867af5491dc9c5f", GitTreeState:"archive", BuildDate:"2020-11-25T13:19:56Z", GoVersion:"go1.15.5", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"17", GitVersion:"v1.17.14", GitCommit:"f238f5142728be4033c37aa0ad69bf806090beae", GitTreeState:"clean", BuildDate:"2020-11-11T13:03:54Z", GoVersion:"go1.13.15", Compiler:"gc", Platform:"linux/amd64"}

Cloud Provider/Platform (AKS, GKE, Minikube etc.):
Hetzner VPS + RKE

Can you run the command helm search repo jetstack/cert-manager -l? This will help you see of 1.0.4 is an available version.

https://charts.jetstack.io redirects to https://artifacthub.io/charts/jetstack, resulting in a 404. That could likely be the cause of the issue.

Here is the output:
wolfskin@Arch:~|⇒  helm search repo jetstack/cert-manager -l
NAME                 	CHART VERSION	APP VERSION	DESCRIPTION
jetstack/cert-manager	v1.1.0       	v1.1.0     	A Helm chart for cert-manager
jetstack/cert-manager	v1.0.4       	v1.0.4     	A Helm chart for cert-manager
jetstack/cert-manager	v1.0.3       	v1.0.3     	A Helm chart for cert-manager
jetstack/cert-manager	v1.0.2       	v1.0.2     	A Helm chart for cert-manager
jetstack/cert-manager	v1.0.1       	v1.0.1     	A Helm chart for cert-manager
jetstack/cert-manager	v1.0.0       	v1.0.0     	A Helm chart for cert-manager
jetstack/cert-manager	v0.16.1      	v0.16.1    	A Helm chart for cert-manager
jetstack/cert-manager	v0.16.0      	v0.16.0    	A Helm chart for cert-manager
jetstack/cert-manager	v0.15.2      	v0.15.2    	A Helm chart for cert-manager
jetstack/cert-manager	v0.15.1      	v0.15.1    	A Helm chart for cert-manager
jetstack/cert-manager	v0.15.0      	v0.15.0    	A Helm chart for cert-manager
jetstack/cert-manager	v0.14.3      	v0.14.3    	A Helm chart for cert-manager
jetstack/cert-manager	v0.14.2      	v0.14.2    	A Helm chart for cert-manager
jetstack/cert-manager	v0.14.1      	v0.14.1    	A Helm chart for cert-manager
jetstack/cert-manager	v0.14.0      	v0.14.0    	A Helm chart for cert-manager
jetstack/cert-manager	v0.13.1      	v0.13.1    	A Helm chart for cert-manager
jetstack/cert-manager	v0.13.0      	v0.13.0    	A Helm chart for cert-manager
jetstack/cert-manager	v0.12.0      	v0.12.0    	A Helm chart for cert-manager
jetstack/cert-manager	v0.11.1      	v0.11.1    	A Helm chart for cert-manager
jetstack/cert-manager	v0.11.0      	v0.11.0    	A Helm chart for cert-manager
jetstack/cert-manager	v0.10.1      	v0.10.1    	A Helm chart for cert-manager
jetstack/cert-manager	v0.10.0      	v0.10.0    	A Helm chart for cert-manager
jetstack/cert-manager	v0.9.1       	v0.9.1     	A Helm chart for cert-manager
jetstack/cert-manager	v0.9.0       	v0.9.0     	A Helm chart for cert-manager
jetstack/cert-manager	v0.8.1       	v0.8.1     	A Helm chart for cert-manager
jetstack/cert-manager	v0.8.0       	v0.8.0     	A Helm chart for cert-manager
jetstack/cert-manager	v0.7.2       	v0.7.2     	A Helm chart for cert-manager
jetstack/cert-manager	v0.7.1       	v0.7.1     	A Helm chart for cert-manager
jetstack/cert-manager	v0.7.0       	v0.7.0     	A Helm chart for cert-manager
jetstack/cert-manager	v0.6.0       	v0.6.0     	A Helm chart for cert-manager
jetstack/cert-manager	v0.5.2       	v0.5.2     	A Helm chart for cert-manager
wolfskin@Arch:~|⇒

The version is definitely there, and I get the exact same issue with v1.1.0

Are you able to run helm pull jetstack/cert-manager --version v1.0.4? This should download the chart. I ask this because the index with the information used to know about a version and have metadata for search is separate from the assets. If the asset can't be reached it's a second issue.
If that works, can you use the --debug flag on the helm install command to get additional detail. This flag works on any Helm command to get additional information.

Ok, so I can run the first command and I can successfully pull down the tar.gz file.
When I run helm install with debug, I get the following:
https://termbin.com/6dwy
I have also included some other command outputs in there pertaining to showcasing that the install still fails for some reason.
I've also figured out that the verify flag is causing problems because there is not provenance file. However its removal seems to have no effect on the actual deployment problem

So that seems to have at least solved the download issue


Customize snippets on Google+

See https://developers.google.com/+/web/snippet/

common.html already contains the necessary items at PkgCmdHeader. What should be added from here?

Yup, everything needed is there. I think that G+ added more ways to customize the snippet since I opened this issue.


Request to update header files to better prevent namespace and header file name collisions

This is a cool project, I like it!
Some minor requests if not already done or work in progress:

Change the base namespace from "Net" to "pistache". Likely it would better prevent namespace
collision with another project using "Net".
In the header files change the includes for Pistache files to be '#include "pistache/..." This will likely
prevent the include file name collisions if other projects happen to have a similar name.
Renaming the libraries from libnet to libpistache would prevent potential library file name collisions..
Add "-Wall" and "-Werror" to the compilation so that any warnings / errors can be identified and
resolved.
In example it could, arguably, be better so that all Pistache type names are fully qualified, or an
alias be used.

I second it. Also, namespaces like detail in flags.h makes the compiler think it is ambiguous when I was using pistache together with some other libraries.

Makes sense, will do :+1:

I will also connect it with this PR. To change library name from libnet to libpistache.
@oktal  Really good work! Keep on.

Also, do we need to add the _static suffix to the static lib archive?

@koallen  In my opinion also no. There is information using extension lib*.a
@oktal  Do you have any special reason for that name? Maybe we miss sth?


The simplest FSM implementation of deviceShifu

Finite State Machine(FSM) could be a useful feature to logically automate deviceshifu's state and behavior.
Here we request to add example of applying FSM to deviceshifu. we can create a folder called "fsm/examples" under /pkg.
To create the simplest FSM as following:
Please use https://github.com/looplab/fsm to define a FSM that can control a LED deviceShifu's ON and OFF state changes.

The LED can turn ON if and only if it is in the OFF state
The LED can turn OFF if and only if it is in the ON state

Hey @kris21he , I would like to work on this issue.

@bhavyastar Thank you!
Feel free to reach out to us on Discord/Slack if you ever need anything

Hi @bhavyastar , any update on this issue? let us know if have any questions.

Yes, I have 2-3 questions. Are you available for meeting on 11th June?

Sure, you can ping me on Discord to schedule a meeting

unassigning to make this issue available for others


Creating index with "ddoc":"" makes DB read-only

Expected Behavior
CouchDB should prevent creation of Mango index ddoc with the _design/ _id.
Current Behavior
POST-ing JSON body with "ddoc":"" field to /db/_index creates a ddoc, which seems non-deletable, effectively breaks replication and makes DB non-writable (both PUT and POST fail with 500).
Steps to Reproduce

Open Fauxton
Create a DB
Open Mango query tab and then Mango indexes
Create index with any name and "ddoc":"" field

Context
I was creating Mango index editor in Couch Photon, and noticed the issue during UI tests.
Your Environment

Version used: CouchDB 2.1.2 single node
Browser Name and version: Chrome 66
Operating System and version (desktop or mobile):  Xenial

@ermouth I think this was fixed for 2.2.0, see https://github.com/apache/couchdb/pull/961

if not let me know and we can reopen

#961 is unrelated. Letting you know it is not fixed in 2.2.x branch. Just built 2.2.0 from sources to check it.

This still happens. With auto-indexer (ken) it's even worse as it will start crashing as well and flooding the logs with failures that look like:
[error] 2021-11-04T17:19:00.390502Z<EMAIL_ADDRESS>emulator -------- Error in process <0.16318.0> on node<EMAIL_ADDRESS>with exit value:
{{nocatch,{illegal_docid,<<"Illegal document id `_design/`">>}},[{couch_doc,validate_docid,1,[{file,"src/couch_doc.erl"},{line,213}]},{couch_doc,transfer_fields,3,[{file,"src/couch_doc.erl"},{line,252}]},{ken_server,'-update_db_indexes/2-fun-1-',4,[{file,"src/ken_server.erl"},{line,280}]},{lists,foldl,3,[{file,"lists.erl"},{line,1263}]},{ken_server,update_db_indexes,2,[{file,"src/ken_server.erl"},{line,279}]}]}

It appears that https://github.com/apache/couchdb/pull/3990 fixes this issue, so closing as resolved.


test: Move uniform expiration test to the end of integration tests (#5891)

Closes #5891
During the Uniform integration tests, we set the UNIFORM_INTEGRATION_TTL to 1m in order to test the automatic expiration of Keptn integrations. However, since this test is done at the very beginning of the integration tests setting the timeout value to such a low value had an impact on other tests where certain Keptn integrations (such as the webhook service) need to be present in the uniform. Therefore, this PR moves the uniform integration test to the very end.

Is it not possible to just set the TTL to the value before the test? This would basically remove the interdependency between tests

Is it not possible to just set the TTL to the value before the test? This would basically remove the interdependency between tests

It is, but if there are any networking issues, subscriptions like the ones of the webhook service might fade out and be removed from the database. afterwards the webhook service pod would need to be restarted to register itself again at the API


enforce clippy verification.

I had temporary disable 2 warnings
#![allow(clippy::new_ret_no_self)]
#![allow(clippy::large_enum_variant)]

does this also run clippy checks against our tests?


Can not find the shared library: libhdfs3.so

Hi,
I am trying to install hdfs3 using pip in centos. But when I try to use HDFileSystem(), it is throwing Can not find the shared library: libhdfs3.so ERROR.
Steps I followed:
curl -L "https://bintray.com/wangzw/rpm/rpm" -o /etc/yum.repos.d/bintray-wangzw-rpm.repo \
    && yum makecache \
    && yum install -y libhdfs3 libhdfs3-devel \
    && pip install hdfs3

I have tried installing via conda. It works. But unfortunately we can't use conda in our environment for some reasons.
Could anyone help me? Thanks

check lbhdfs3.so in LD_LIBRARY_PATH.
or libdhfs3.so version doesn't match hdfs3 needed.
or you could just compile from source https://github.com/ContinuumIO/libhdfs3-downstream

To diagnose further, you could try running the ctypes load command in the lib module yourself, to see what the exact error was.

Note that lib/hdfs3 has never been tested via yum by me. Since I see "wangzw" in the URL, I suspect it may be an old build. I recommend using conda for the installation of complicated python-related binary libraries.

I also have this problem in a mac. fresh install using conda did not help

Same suggestions as above...
Note that lib/hdfs3 has not changed or been released in some time, but other libraries have moved on.


Fix dangling Variants (3.2)

This commit addresses multiple issues with Variants that point to an Object which is later released, when it's tried to be accessed again.
Formerly, while running on the debugger the system would check if the instance id was still valid to print warnings or return special values. Some cases weren't being warned about whatsoever. Moreover, on release builds you would experiment undefined behavior; specially, crashes.
Also, a newly allocated Object could happen to be allocated at the same memory address of an old one, making cases of use hard to find and having Variants pointing to the old one magically reassigned to the new.
This commit fixes all these problems:

While debugging you still have instance id checks so you get warnings about trying to operate on objects that have been already released.
But the debug behavior on those cases is now consistent: aside from returning the most reasonable value in read operations given the circumstances, you get a printed warning in all cases and with an easier to understand message.
- On release builds, the instance id check is not performed, so no warnings are printed, but now the validity of the Variant is checked by more optimal means, allowing the system to act in a controlled manner in those cases, as if it was null, with no crashes, etc.
UPDATE: This PR has been updated to remove the checks from release builds. A separate proposal about how to include them for those needing maximum safety will be written, so don't worry. What is done in this PR is already good stuff.

All that said, in the name of performance there's still one possible case of undefined behavior: in multithreaded scripts there would be a race condition between a thread freeing an Object and another one trying to operate on it. The latter may not realize the Object has been freed soon enough. But that's a case of bad scripting that was never supported anyway.

Part of the credit for this goes to @reduz, since this is the result of implementing an approach he suggested to me with some additional ideas of mine.

This code is generously donated by IMVU.

Thanks!

@godotengine/bugsquad  This likely fixes many open issues about Variant references being wrongly reassigned to a random node after free. Feel free to hunt them down and close them as fix (another fix for that issue was already merged in master a while ago).

That's great! Thanks for fixing this critical issue. What's the plan for release builds in 3.x ? Currently we're bound to debug builds since our release builds crash systematically. I couldn't find the mentioned new proposal for that, so could you please provide the link if it exists? Thanks!

I haven't had time yet, but I'll give it a higher priority in my backlog.

As far as I can tell, there's not much we can do as users in GDscript to avoid the issue, or is there? We don't use threads, but we do use audio which is multi-threaded under the hood. Unfortunately release builds currently seem to be trading safety for speed which is unfortunate and prohibitive. Since safety prevails, we're stuck to debug builds with the assumed cost of lower fps.


fix: return error when fail to pull data from stream in disk manager

As title.

Codecov Report
Attention: Patch coverage is 77.77778% with 4 lines in your changes are missing coverage. Please review.

Project coverage is 88.98%. Comparing base (73a50e3) to head (37355b0).

Files
Patch %
Lines

storage-node/src/disk/disk_manager.rs
82.35%
2 Missing and 1 partial :warning:

...age-node/src/cache/data_store_cache/memdisk/mod.rs
0.00%
0 Missing and 1 partial :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #47      +/-   ##
==========================================
- Coverage   89.08%   88.98%   -0.10%
==========================================
  Files          17       17
  Lines        2116     2116
  Branches     2116     2116
==========================================
- Hits         1885     1883       -2
  Misses        121      121
- Partials      110      112       +2

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

LGTM


Fix for 6 deprecations on master.

Would allow to close issues #139, #141, #142, #143 and #144

Integrated in both https://atom.io/packages/symbols-tree-nav and https://atom.io/packages/symbols-tree-view-fix

@nicolashainaux Thank you very much for your work! Sorry for my late reply, it is too busy for me these day...

@xncdn No problem.
If you have more time later, you can take all or some of the enhancements that are experimental in symbols-tree-nav.

@xncdn Also now you can close the issues related to this PR.


Feature request: add "Share" menu to the File menu

wondering if the "Share" button can be added to the "File" dropdown in the menu bar so that it's easier to share things with a mac keyboard shortcut.
both Google Chrome and Safari have "Share" in the file menu:

example of the keyboard shortcut i use to share to a specific app, Pocket in this case:

Reopening because this needs additional verification.


Update testcontainers-scala-dynalite, ... to 0.40.5

Updates

com.dimafeng:testcontainers-scala-dynalite
com.dimafeng:testcontainers-scala-mockserver
com.dimafeng:testcontainers-scala-scalatest

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

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.dimafeng" } ]

labels: test-library-update, early-semver-major, semver-spec-minor

Superseded by #261.


Haskell generic args builder modifier backport

Motivation for this change
#109059 introduced "generic builder arguments modifier" functionality to the nixpkgs Haskell builder, which allows users to make modifications to the whole package set being used within shellFor when compiling dependencies and then again when compiling the "dummy" package that's used to create the final shell.
The intended use-case is to support users who want to disable test suites, benchmarks, haddocks, etc. for the Haskell dependencies, but re-enable them for the packages within the final shell.
This can be useful when developing a complex local package with lots of overrides; building the package set can be prohibitively complex when having to override lots of test dependency breakage, but one would still want to run the test/benchmark suite of the local package (and thus have Nix pull down all of its dependencies into the shell).
Things done
Cherry picked 335f1fb25f2f784e496dc4e5560cea7e3414a7a8 and 95d0e6c1b8adca3a03c5e79fc1dba84b5c1f68d6 from the main branch onto the release-20.09 branch. It seems like there were some other changes that got mixed in from previous commits, so let me know if I should go back and rework this PR (e.g. maybe try to find those older commits and cherry-pick them first).
cc @cdepillabout @expipiplus1 since you helped me out with the initial work and seem to have the most working familiarity with this stuff of the active contributors.

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

These two PRs have also been included in this backport: https://github.com/NixOS/nixpkgs/pull/102683 and https://github.com/NixOS/nixpkgs/pull/102598

@GrahamcOfBorg build tests.haskell-shellFor

Looks like tests.haskell-shellFor works, so I'd say this is probably fine!