K8SSAND-1608 ⁃ How can I change cluster size down?

What did you do?
Deploy K8ssandraCluster - it's ok.
Change size DC1 from 2 to 1.
Did you expect to see some different?
Pod with rack1 nod deleting.
Environment

Cass Operator version:
Insert image tag or Git SHA here
k8ssandra/k8ssandra-operator:v1.1.1
k8ssandra/cass-operator:v1.11.0* Kubernetes version information:
kubectl version
Server Version: version.Info{Major:"1", Minor:"22", GitVersion:"v1.22.11", GitCommit:"5824e3251d294d324320db85bf63a53eb0767af2", GitTreeState:"clean", BuildDate:"2022-06-16T05:33:55Z", GoVersion:"go1.16.15", Compiler:"gc", Platform:"linux/amd64"}* Kubernetes cluster kind:

minikube, docker driver

Manifests:

first:
apiVersion: k8ssandra.io/v1alpha1
kind: K8ssandraCluster
metadata:
  name: test123
spec:
  reaper: {}
  cassandra:
    serverVersion: "3.11.13"
    softPodAntiAffinity: true
    resources:
      requests:
        cpu: "150m"
    networking:
      hostNetwork: true
    datacenters:
      - metadata:
          name: dc1
        size: 2
        racks:
        - name: rack1
        - name: rack2
        storageConfig:
          cassandraDataVolumeClaimSpec:
            storageClassName: local-path
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 50Gi
        config:
          jvmOptions:
            heapSize: 512M
      - metadata:
          name: dc2
        k8sContext: cass-m03
        size: 1
        storageConfig:
          cassandraDataVolumeClaimSpec:
            storageClassName: local-path
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 5Gi
        config:
          jvmOptions:
            heapSize: 512M

change and apply:
apiVersion: k8ssandra.io/v1alpha1
kind: K8ssandraCluster
metadata:
  name: test123
spec:
  reaper: {}
  cassandra:
    serverVersion: "3.11.13"
    softPodAntiAffinity: true
    resources:
      requests:
        cpu: "150m"
    networking:
      hostNetwork: true
    datacenters:
      - metadata:
          name: dc1
        size: 1
        racks:
        - name: rack2
        storageConfig:
          cassandraDataVolumeClaimSpec:
            storageClassName: local-path
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 5Gi
        config:
          jvmOptions:
            heapSize: 512M
      - metadata:
          name: dc2
        k8sContext: cass-m03
        size: 1
        storageConfig:
          cassandraDataVolumeClaimSpec:
            storageClassName: local-path
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 5Gi
        config:
          jvmOptions:
            heapSize: 512M

state:
apiVersion: k8ssandra.io/v1alpha1
kind: K8ssandraCluster
metadata:
  annotations:
    k8ssandra.io/initial-system-replication: '{"dc1":1,"dc2":1}'
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"k8ssandra.io/v1alpha1","kind":"K8ssandraCluster","metadata":{"annotations":{},"name":"test123","namespace":"cassandra"},"spec":{"cassandra":{"datacenters":[{"config":{"jvmOptions":{"heapSize":"512M"}},"metadata":{"name":"dc1"},"racks":[{"name":"rack2"}],"size":1,"storageConfig":{"cassandraDataVolumeClaimSpec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"5Gi"}},"storageClassName":"local-path"}}},{"config":{"jvmOptions":{"heapSize":"512M"}},"k8sContext":"cass-m03","metadata":{"name":"dc2"},"size":1,"storageConfig":{"cassandraDataVolumeClaimSpec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"5Gi"}},"storageClassName":"local-path"}}}],"networking":{"hostNetwork":true},"resources":{"requests":{"cpu":"150m"}},"serverVersion":"3.11.13","softPodAntiAffinity":true},"reaper":{}}}
  creationTimestamp: "2022-06-29T13:57:56Z"
  finalizers:
  - k8ssandracluster.k8ssandra.io/finalizer
  generation: 5
  name: test123
  namespace: cassandra
  resourceVersion: "19219"
  uid: 61867621-a2c1-4369-aaad-27ad1688b443
spec:
  auth: true
  cassandra:
    datacenters:
    - config:
        jvmOptions:
          heapSize: 512M
      jmxInitContainerImage:
        name: busybox
        registry: docker.io
        tag: 1.34.1
      metadata:
        name: dc1
      racks:
      - name: rack2
      size: 1
      stopped: false
      storageConfig:
        cassandraDataVolumeClaimSpec:
          accessModes:
          - ReadWriteOnce
          resources:
            requests:
              storage: 5Gi
          storageClassName: local-path
    - config:
        jvmOptions:
          heapSize: 512M
      jmxInitContainerImage:
        name: busybox
        registry: docker.io
        tag: 1.34.1
      k8sContext: cass-m03
      metadata:
        name: dc2
      size: 1
      stopped: false
      storageConfig:
        cassandraDataVolumeClaimSpec:
          accessModes:
          - ReadWriteOnce
          resources:
            requests:
              storage: 5Gi
          storageClassName: local-path
    jmxInitContainerImage:
      name: busybox
      registry: docker.io
      tag: 1.34.1
    networking:
      hostNetwork: true
    resources:
      requests:
        cpu: 150m
    serverVersion: 3.11.13
    softPodAntiAffinity: true
    superuserSecretRef:
      name: test123-superuser
  reaper:
    ServiceAccountName: default
    containerImage:
      name: cassandra-reaper
      registry: docker.io
      repository: thelastpickle
      tag: 3.1.1
    deploymentMode: PER_DC
    heapSize: 2Gi
    initContainerImage:
      name: cassandra-reaper
      registry: docker.io
      repository: thelastpickle
      tag: 3.1.1
    keyspace: reaper_db
status:
  conditions:
  - lastTransitionTime: "2022-06-29T14:02:08Z"
    status: "True"
    type: CassandraInitialized
  datacenters:
    dc1:
      cassandra:
        cassandraOperatorProgress: Ready
        conditions:
        - lastTransitionTime: "2022-06-29T13:59:45Z"
          message: ""
          reason: ""
          status: "False"
          type: Stopped
        - lastTransitionTime: "2022-06-29T13:59:45Z"
          message: ""
          reason: ""
          status: "False"
          type: ReplacingNodes
        - lastTransitionTime: "2022-06-30T06:15:02Z"
          message: ""
          reason: ""
          status: "False"
          type: Updating
        - lastTransitionTime: "2022-06-29T13:59:45Z"
          message: ""
          reason: ""
          status: "False"
          type: RollingRestart
        - lastTransitionTime: "2022-06-29T13:59:45Z"
          message: ""
          reason: ""
          status: "False"
          type: Resuming
        - lastTransitionTime: "2022-06-29T13:59:45Z"
          message: ""
          reason: ""
          status: "False"
          type: ScalingDown
        - lastTransitionTime: "2022-06-29T13:59:45Z"
          message: ""
          reason: ""
          status: "True"
          type: Valid
        - lastTransitionTime: "2022-06-29T13:59:45Z"
          message: ""
          reason: ""
          status: "True"
          type: Initialized
        - lastTransitionTime: "2022-06-29T13:59:45Z"
          message: ""
          reason: ""
          status: "True"
          type: Ready
        lastServerNodeStarted: "2022-06-30T06:52:11Z"
        nodeStatuses:
          test123-dc1-rack1-sts-0:
            hostID: 7f9bd556-03b3-4445-9023-1f4f8e2a9118
          test123-dc1-rack2-sts-0:
            hostID: cacae2da-7463-4882-a6a7-4724d9620326
        observedGeneration: 3
        quietPeriod: "2022-06-30T06:52:58Z"
        superUserUpserted: "2022-06-30T06:52:53Z"
        usersUpserted: "2022-06-30T06:52:53Z"
      reaper:
        conditions:
        - lastTransitionTime: "2022-06-30T06:17:36Z"
          status: "True"
          type: Ready
        progress: Running
    dc2:
      cassandra:
        cassandraOperatorProgress: Ready
        conditions:
        - lastTransitionTime: "2022-06-29T14:02:07Z"
          message: ""
          reason: ""
          status: "False"
          type: Stopped
        - lastTransitionTime: "2022-06-29T14:02:07Z"
          message: ""
          reason: ""
          status: "False"
          type: ReplacingNodes
        - lastTransitionTime: "2022-06-30T06:13:58Z"
          message: ""
          reason: ""
          status: "False"
          type: Updating
        - lastTransitionTime: "2022-06-29T14:02:07Z"
          message: ""
          reason: ""
          status: "False"
          type: RollingRestart
        - lastTransitionTime: "2022-06-29T14:02:07Z"
          message: ""
          reason: ""
          status: "False"
          type: Resuming
        - lastTransitionTime: "2022-06-29T14:02:07Z"
          message: ""
          reason: ""
          status: "False"
          type: ScalingDown
        - lastTransitionTime: "2022-06-29T14:02:07Z"
          message: ""
          reason: ""
          status: "True"
          type: Valid
        - lastTransitionTime: "2022-06-29T14:02:07Z"
          message: ""
          reason: ""
          status: "True"
          type: Initialized
        - lastTransitionTime: "2022-06-29T14:02:07Z"
          message: ""
          reason: ""
          status: "True"
          type: Ready
        lastServerNodeStarted: "2022-06-30T06:13:25Z"
        nodeStatuses:
          test123-dc2-default-sts-0:
            hostID: 0634dc31-3f51-44a3-8934-e8f0da06157e
        observedGeneration: 2
        quietPeriod: "2022-06-30T06:14:04Z"
      reaper:
        conditions:
        - lastTransitionTime: "2022-06-30T06:19:25Z"
          status: "True"
          type: Ready
        progress: Running

pods cluster 1:
$ kubectl get pod -n cassandra
NAME                                                READY   STATUS      RESTARTS      AGE
cassandra-stress-tfx5b                              0/1     Completed   0             17h
k8ssandra-operator-cass-operator-59956b455b-xqvkv   1/1     Running     0             17h
k8ssandra-operator-ffb675cd9-6xdbl                  1/1     Running     1 (17h ago)   17h
test123-dc1-rack1-sts-0                             2/2     Running     0             32m
test123-dc1-rack2-sts-0                             2/2     Running     0             70m
test123-dc1-reaper-67b4b9bd9c-hm7p7                 1/1     Running     0             69m

Cass Operator Logs:

Anything else we need to know?:
How can I change cluster size down?
┆Issue is synchronized with this Jira Task by Unito
┆friendlyId: K8SSAND-1608
┆priority: Medium

Deleting racks is not supported at this point, that's why your operation will not complete.

No, since you would have more racks than nodes, which isn't possible (2 racks will require min. 2 nodes, one per rack).
https://github.com/k8ssandra/cass-operator/issues/188

Thanks


Stuck on logging multiple accounts

New class called PGoAccount.swift
import Foundation

import UIKit
import PGoApi

class PGoAccount: PGoAuthDelegate, PGoApiDelegate {
    var auth: PtcOAuth!
    var successHandler:((Void)->Void)!
    var failHandler:((Void)->Void)!

    func login(username: String, password: String, success: Void -> Void, fail: Void -> Void) {
        successHandler = success;
        failHandler = fail;
        auth = PtcOAuth()
        auth.delegate = self
        auth.login(withUsername: username, withPassword: password)
    }

    func didReceiveAuth() {
        print("Auth received!!")
        print("Starting simulation...")
        let request = PGoApiRequest()
        request.simulateAppStart()
        request.makeRequest(.Login, auth: auth, delegate: self)
    }

    func didNotReceiveAuth() {
        print("Failed to auth!")
        failHandler();
    }

    func didReceiveApiResponse(intent: PGoApiIntent, response: PGoApiResponse) {
        print("Got that API response: \(intent)")
        if (intent == .Login) {
            auth.endpoint = "https://\((response.response as! Pogoprotos.Networking.Envelopes.ResponseEnvelope).apiUrl)/rpc"
            print("New endpoint: \(auth.endpoint)")
            let request = PGoApiRequest()

            //Set the latitude/longitude of player; altitude is optional
            request.setLocation(37.331686, longitude: -122.030765, altitude: 0)

            successHandler();
        }
    }

    func didReceiveApiError(intent: PGoApiIntent, statusCode: Int?) {
        print("API Error: \(statusCode)")
        failHandler();
    }
}

ViewController.swift code
import UIKit

class ViewController: UIViewController {

    var loginsGood: Int = 0;
    var loginsBad: Int = 0;

    //Acounts to cycle through
    var currentNumber = 2;
    var endNumber = 1000;

    override func viewDidLoad() {
        super.viewDidLoad()

        nextLogin();
    }

    func loginSuccess() {
        loginsGood += 1;
        currentNumber+=1;
        nextLogin();
    }
    func loginFail() {
        loginsBad += 1;
        nextLogin();
    }

    func nextLogin() {
        print("Good logins: \(loginsGood), Bad logins: \(loginsBad), Total Logins: \(loginsGood + loginsBad)");
        if (currentNumber <= endNumber) {
            print("Starting login process on Name\(currentNumber)")
            let acc : PGoAccount = PGoAccount();
            acc.login("Name\(currentNumber)", password: "password", success: loginSuccess, fail: loginFail);

        }
    }

}

I'm making it log onto one account at a time, logs onto the first but the next it freezes at logging on.
Any idea why?

The problem was the cookies were being shared across sessions.. It should be fixed in the next update.


add unet2d test for exemplum

requires https://github.com/bioimage-io/pytorch-bioimage-io/pull/13
and https://github.com/bioimage-io/python-bioimage-io/pull/18

Merged to master without generate_tiles and training section in model


Wrong french translation

Hello,
I'd like to suggest a change in the french translations.
countries/lib/countries/cache/locales/fr.json sets up the following :
"FR":"France"

In my opinion, it should be like this:
"FR":"France Métropolitaine"

In fact "France" refers to the French territory in Europe + Guadeloupe, Martinique, Guyane française, Saint-Pierre-et-Miquelon, La Réunion. So there should be either "France Métropolitaine" + these OR "France" only. Otherwise, some may be offended to read that Guadeloupe and others are considered apart from France.
Let me know if anything is not clear as english is not my mother tongue :)

Hi,
Thanks for raising the issue. This one is a bit tricky:

According to ISO (https://www.iso.org/obp/ui/#iso:code:3166:FR), the "FR" code applies to all of the French Republic, and states that Metropolitan France is a part of "FR", as are all the overseas regions
The overseas regions have subdivision codes (ISO 3166-2 codes), such as "FR-971" for Guadeloupe
But, at the same time, all the overseas regions have "country codes" (ISO 3166-1), such as "GP" for Guadeloupe. (See https://fr.wikipedia.org/wiki/France_d'outre-mer)
There was a code for Metropolitan France ("FX"), but it has been merged into "FR" in 1997. See the ISO page, and also https://en.wikipedia.org/wiki/ISO_3166-3 (Entry "FXFR")

I'll have to think about this one

2 points about that:

"France Métropolitaine" is now "France hexagonale" or "Hexagone" (https://la1ere.francetvinfo.fr/l-abandon-du-mot-metropole-ou-la-remise-en-question-d-une-forme-de-neo-colonisation-1399730.html)
If FR becomes a part of France, which code should we use for France as a whole?

I think it should remain "FR":"France".

Hi @arnaudlevy ,
Good point on "France Métropolitaine" being now "France hexagonale" or "Hexagone", I missed it out.
Your second point is relevant too and I have no solution to provide unfortunately. I just thought that if there was a distinction between "France hexagonale" and overseas territories, that may mean there is currently no way to refer to France as whole.
That is what I understand from the wikipedia page of the ISO 3166-1 norm but it is ambiguous : https://en.wikipedia.org/wiki/ISO_3166-1


Add ErrorDetail model

Looks good from Java SDK perspective.

Closed it as we all languages are good to use the model from azure core.


Add some logging for testRecomputeFileWorkspaceMembershipOnPackageSwiftChange

I just saw a failure of this test in CI, and can’t figure out what might have happened. Adding some logging that hopefully helps us if the failure happens again.

@swift-ci Please test


adding cf dashboards

I added a few new dashboards for router memory, diego auctions and cloud controller requests.

Thanks @omearaj!


🎉 Pull Request: Flutter Migration & Feature Enhancements 🚀

Description ℹ
Hey everyone! 👋 I'm thrilled to present this pull request which marks a significant milestone in our project. Here's a summary of the awesome updates:
Updates 🌟
✨ Flutter Version Migration: Successfully migrated from Flutter 3.19 to Flutter 3.22, leveraging the latest features and enhancements. 🎈
✨ Android Crash Bug Fix🐞: Resolved a pesky crash bug on Android, ensuring smoother app performance.
✨ New Feature: OTP Screen for Admin: Introduced an OTP screen specifically tailored for admins, enhancing security and access control. 🔐
✨ Layout Enhancements: Addressed several layout issues across various screens, ensuring a polished user experience. 🎨
How to Test 🧪
flutter pub get
flutter run -d "Your Android Device name" //For Android
flutter run -d edge //For Web
Pull the latest changes from this branch.
Run the app on both iOS and Android devices/emulators.
Verify the smooth functioning of the OTP screen for admin.
Explore different parts of the app to ensure layout fixes have been applied correctly.
Additional Notes 📝
Please review the code changes thoroughly and provide any feedback or suggestions.
Don't hesitate to reach out if you have any questions or need further clarification on any aspect of this update.
Let's keep up the great work together! 💪🚀

Approved! Amazing work, you outdid yourself, @Smalick0478


all.yml file doesn't have etcd num nodes

The file: https://github.com/openshift/openshift-ansible-contrib/blob/master/playbooks/provisioning/openstack/sample-inventory/group_vars/all.yml makes no mention of number of etcd nodes, however, if you use the existing https://github.com/openshift/openshift-ansible-contrib/blob/master/playbooks/provisioning/openstack/sample-inventory/hosts file example, it expects an etcd system with etcd.openshift.example.com.
The workaround was to put etcd servers within the masters. However, the all.yaml file should have some sort of variable to list out # of etc nodes and/or if it finds 0 to place etcd by default within master nodes
@tomassedovic

also note that the heat stack outputs contain empty lists for etcd related info

I ran into a similar problem with the installer. Here was the output from the playbook:
TASK [Evaluate groups - Fail if no etcd hosts group is defined] ****************
Tuesday 19 September 2017  16:18:26 +0000 (0:00:00.021)       0:00:00.325 *****
fatal: [localhost]: FAILED! => {"changed": false, "failed": true, "msg": "Running etcd as an embedded service is no longer supported. If this is a new install please define an 'etcd' group with either one or three hosts. These hosts may be the same hosts as your masters. If this is an upgrade you may set openshift_master_unsupported_embedded_etcd=true until a migration playbook becomes available.\n"}

Is it possible the openshift-ansible project made a change that is not yet reflected in the contrib repository?


Adding search filter returns no result

Adding a filter to the search function returns no result, or at least i think so. Did i at least do everything correctly?


Create side bar

Create the side navigation bar according to the mockups
We could possibly have an animation for when the page switches, as in the highlighted bar moves one down when clicking next

I'm going to close this as complete for now. The animation can be a nice add on if we have time for it later

Reopening so that we can style the background with the correct colors according to the mockup


Eva: disabled colors are too light

Report
Checkbox, inputs, etc disabled colors are too light. Simply saying, it makes it very hard to see the elements.
Reason
Multiple Users requests
Mapping Changes
TBD (changes in themes and in the mappings)

[ ] Design OK
[ ] Mobile OK
[ ] Web OK

One more report for a mobile


[Tests] Replace Math::is_equal_approx with == and doctest::Approx

Replaces all occurrences of Math::is_equal_approx in in our test suites (only within the CHECK macro) with == and doctest::Approx, so that the actual values are printed if a test fails. This makes debugging much easier as it is no longer needed to add a print statement to find out the actual value a function returned, resulting in much more fluent TDD.

Thanks!


Monitor wavelength binning workflow example.

Related to https://github.com/scipp/beamlime/issues/186

@SimonHeybrock Will you check if it's in the right direction...?

This is what I tried to make:

I put the IofQ back.

Since the workflow accepts JsonGroup, how should they be tested...?
Is there any tools to convert NexusGroup into JsonGroup...?

Has this been tested with the latest Beamlime? Do we get data through the entire chain?

I tried but I couldn't make it work with the loki.json template.
It's complaining with this error message:
ValueError: Raw data loaded from NeXus does not contain events or a histogram. Expected to find a data array, but the data only contains {'depends_on', 'name', 'transformations', 'transform', 'monitor_2_events', 'position'}

That's why I asked this:

Since the workflow accepts JsonGroup, how should they be tested...?
Is there any tools to convert NexusGroup into JsonGroup...?

Has this been tested with the latest Beamlime? Do we get data through the entire chain?

The minitor workflow works with the fixes that I mentioned here: https://github.com/scipp/beamlime/issues/193
The fixes are stashed in this branch: https://github.com/scipp/beamlime/tree/atleast-work
I'll fix them in an order...
I got these plots as a result :D


Add guide for tipocket

Feature Request
Is your feature request related to a problem? Please describe:

Now tipocket is just a very simple readme, it did not guide how to use the cases, and how to develop more features. We should add the guide
Describe the feature you'd like:

Add overview guide
Add develop guide
Add user guide

Describe alternatives you've considered:

None
Teachability, Documentation, Adoption, Migration Strategy:

None

Closed by https://github.com/pingcap/tipocket/pull/247


Huawei Mate 9 cannot run AlphaWallet v2.12.apk

stop at starting page.

upgrade to AlphaWallet v2.12.apk, stop working
delete, reinstall, works


way to show shortcuts in folders

Good morning,
Is there or am I missing a way to show shortcuts in folders? Files UWP doesn't help me if they won't display in the folder as I have a couple folders that are document shortcuts. That would make Files UWP something that would make this the Explorer replacement for me.
Thanks!
<!--
🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨
I ACKNOWLEDGE THE FOLLOWING BEFORE PROCEEDING:

If I delete this entire template and go my own path, the core team may close my issue without further explanation or engagement.
If I list multiple bugs/concerns in this one issue, the core team may close my issue without further explanation or engagement.
If I write an issue that has many duplicates, the core team may close my issue without further explanation or engagement (and without necessarily spending time to find the exact duplicate ID number).
If I leave the title incomplete when filing the issue, the core team may close my issue without further explanation or engagement.
If I file something completely blank in the body, the core team may close my issue without further explanation or engagement.

All good? Then proceed!
-->
Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here. Ex: What device type/UI layout and app version?

Shortcuts aren't supported yet.

Merging with #177.


Upgrade C# examples to grpc1.14.1 and protobuf3.6.1

update the project files
a few generate_protos.bat fixes
regenerate proto files

(last commit is changes to generated .cs files)

Objective-C binary sizes
*****************STATIC******************
  New size                      Old size
 1,952,962      Total (=)      1,952,962

 No significant differences in binary sizes

***************FRAMEWORKS****************
  New size                      Old size
10,664,809      Total (>)     10,664,797

 No significant differences in binary sizes


Add WindowsPerf to winget

Cloned from: https://linaro.atlassian.net/browse/WPERF-517
winget, is a package manager that is built into windows 10 and above. https://learn.microsoft.com/en-us/windows/package-manager/winget/.
Package WindowsPerf with the wperf-installer component, which is an MSI installer WiX project. This package will include the following components:

wperf CLI
wperf-driver installation
wpa-plugins
MSI installer with the required paths set up

DOD:

Migrate wperf application to winget.
Assess if this is useful without the driver, or if we can also distribute wperf-driver and wperf-devgen what will allow users to install WindowsPerf (wperf + wperf-driver) on their system.

Note: Must require Administrator privileges to do so.

We need further information about who should post this MR to https://github.com/microsoft/winget-pkgs/tree/master


WIP [DEVOPS-356]  nixpkgs:  bump to the tip of 17.09

This bumps Nixpkgs from 16.09 to the current release -- 17.09.

This has to be bumped in iohk-ops repository, not here.


:bug: Fix broken images

Image paths were relative and this caused the website to look for the images in the wrong url. I changed the image paths it fixed the issue. Fixes #367

/approve

/lgtm

/cc @lentzi90


HTML5 Export broken in 3.2.4 (RC2, RC3,RC4,RC5)

Godot version:
RC5 (from RC2 on)
OS/device including version:
IntelGraphics 655, GLES2
Issue description:
When i try to test a project with html5 export settings, the site ist halted and does not respond.
Current status (>RC2)

Expected behaviour (RC1)

When i try to run the export in nginx i get the following error:

Steps to reproduce:
Download Project "GUI Theming Override" and Export it to HTML5
Minimal reproduction project:
Just download "GUI Theming Override" e.g.

I can't seem to reproduce the issue, it loads fine for me in Firefox Nightly and latest Chrome stable, at least when served by Godot's localhost server (one click deploy).

In firefox and with internal server i get a rotating loading screen which stops after some seconds.

Tried changing my settings to english.

When i try to run the export in nginx i get the following error:

The host is not returning the correct mime type for the wasm file.

Can't reproduce it with exports from the classic Godot editor, but it is reproducible with Mono editor (exporting non-Mono project in both cases), macOS 11.2.3 (Chromium 91 and Firefox 86).

Nice! Didn't test that... for me exactly the same - html5 export without mono works as expected!

Did we change Mono or emsdk version between RC1 and RC2?

@neikeq not that I remember, all the changes happened before RC1 (end December, early Jan). @akien-mga anything comes to mind?

I'm having this same issue trying to run a very simple project on RC6 (not mono version).
I'm trying to run a scene with a Control node and a custom node using a plugin of mine.
Here's what happens if exporting for HTML5 and using xampp

Here's using godot's server (the whole browser is completely stuck, cannot even open console)

Could be unrelated, but the same issue happens on Android.
On windows and linux (only platforms I can test everything looks fine).
Here's the project if it could help reproduce this
easycharts.zip
Also here it is the already exported files for HTML5
easycharts.zip

@fenix-hub see my comment above, server is not returning the right headers: https://github.com/godotengine/godot/issues/47048#issuecomment-800155862 and this PR #47191 .

@Faless Sorry, missed that message. Thanks :)

Damit, i'm so sorry. I just retested "GUI Theming Override" with different combinations, i think i made a mistake - Actually it works up until RC2. From RC3 on i get problem:
(internal server & nginx) RC3

Before it works with nginx and internal.

RC4
internal server:
not responding / no message
nginx:

@ZwieBit You need to configure the web server to serve the file with the correct MIME type.

@ZwieBit You need to configure the web server to serve the .wasm file with the correct MIME type. GitHub Pages and itch.io do this automatically, but some development web servers don't.

So why did this then actually work with RC1 and RC2?

So why did this then actually work with RC1 and RC2? I'll give it a try and research for the configuration.

Because it used the slow instantiation method that did not require the mime type. As mentioned above, I've made a workaround for it for future releases.

I would say it's just a follow up error because of the "function signature mismatch".

This is a cache problem 90% of the time, so, always try clearing your cache when you get this error.

Adding the error message in plain text as screenshots are not searchable:
Uncaught (in promise) TypeError: Failed to execute 'compile' on 'WebAssembly': Incorrect response MIME type. Expected 'application/wasm'.

@akien-mga That issue is fixed by #47191 , The function signature mismatch is probably a cache issue.
I'm going to close this, but feel free to comment if you think the issue is still valid.

i know i'm a bit annoying ;-) So #47191 does also eliminate the problem with the internal server of godot, not only external ones?

@ZwieBit what error are you getting when running the internal server in RC6?

Damit, i'm so sorry. I just retested "GUI Theming Override" with different combinations, i think i made a mistake - Actually it works up until RC2. From RC3 on i get problem:
RC3
(internal server & nginx)

Before it works with nginx and internal.
On RC3 "function mismatch" - from RC4 onwards its simply not showing any output in edge, firefox, chromium - just not responding. I can reproduce it with every PC - just using godot-mono with a simple spatial and do a htlm5 export. I'll check this further....

RC4 RC5 RC6
internal server:
not responding / no message
nginx:

On RC3 "function mismatch with wasm" - from RC4 onwards its simply not showing any output in edge, firefox, chromium - just not responding. I can reproduce it with every PC - just using godot-mono with a simple spatial and do a htlm5 export. I'll check this further....

Mono build stalls during emscripten initialization. I can't seem to be able to get a proper trace, just:
Script terminated by timeout at:
Godot/Module.then@http://<IP_ADDRESS>:8060/tmp_js_export.js:9:422409
promise callback*doInit@http://<IP_ADDRESS>:8060/tmp_js_export.js:615:21
init@http://<IP_ADDRESS>:8060/tmp_js_export.js:631:19
startGame@http://<IP_ADDRESS>:8060/tmp_js_export.js:727:11
@http://<IP_ADDRESS>:8060/tmp_js_export.html:222:12
@http://<IP_ADDRESS>:8060/tmp_js_export.html:242:5

after force-stopping the script

So to clarify (as @Faless and I spent some time looking at changes from RC 1 to RC 2...), the regression happened in 3.2.4 RC 3. So:

Work fine: RC 1, RC 2
Broken: RC 3 onward up to RC 6 (current latest)

We also confirmed that it's not related to changes in the build containers, as rebuilding RC 1 and RC 2 with the current containers also makes it work fine.
I initially suspected a regression from the Thread modernization changes in #45618 merged in RC 3, as I know it has caused other issues and Mono threads are somewhat touchy.
But after doing some test builds, it seems #45618 is not directly involved:

Commit 418a08d6787f3bf2dd03e0a39c4f5a1dbf6ea1dd works OK.  Test build: https://downloads.tuxfamily.org/godotengine/testing/Godot_v3.2.4-rc-pre45618_mono_x11%2Bjs.zip
Commit 220f24c191149444dfd34d03d22d4e451dfcaa49 (i.e. #45618 merge commit) seems to work OK too. Test build: https://downloads.tuxfamily.org/godotengine/testing/Godot_v3.2.4-rc-post45618_mono_x11%2Bjs.zip
Note: It crashes if you have a path to the Android SDK set in editor settings due to #46203 - removing it from the editor settings makes it possible to prevent the crash and test this build.

Note 2: Both builds have sound disabled as there were issues building the newly added alsa wrapper at these commits.
So here's the list of potential commits that introduced this regression: https://github.com/godotengine/godot/compare/220f24c191149444dfd34d03d22d4e451dfcaa49...4f891b706027dc800f6949bec413f448defdd20d

Testing further, I found that 3.2.4 RC 3 is actually good (no regression). It's a bit tricky as 3.2.4 RC 3 was affected by another bug that broke the HTML5 export (#46352), but when rebuilding it with the relevant fix, there's no problem starting a Mono export.
I could confirm the Mono build stall in 3.2.4 RC 4 on the other hand.
So the problem actually happened between 3.2.4 RC 3 and 3.2.4 RC 4.


Added the mail to partnerlab, coreos

Type of change
Note: Fill x in []

[ ] bug
[ ] enhancement
[x] documentation
[ ] dependencies

Description

Added the mail to partnerlab, coreos
For security reasons, all pull requests need to be approved first before running any automated CI

ptal @halbfin 👋

@halbfin ptal 👋


template: Add pull request template for reporting PR's

Changes Proposed
Added a new file inside the .github folder which will render a Pull Request template whenever someone opens a new PR.
Chat thread in ZM
Fixes #4411

Hi, @Gautam-Arora24! I'm linking the PR that this replaces: #4412.
One specific reason is that there are some points there that I wanted to check with @gnprice about. But also, it's helpful in general to add references to important previous conversations, so they don't get forgotten.
Also, it's not necessary to close a PR and open a new one that does the same thing. You can read more about fixing your commits locally at this doc. This is one of the docs I mentioned in a long comment (https://github.com/zulip/zulip-mobile/pull/4412#discussion_r568068706) suggesting things that might be helpful to include in a PR template, and I see that it's made it into this revision. If something in a doc doesn't make sense, please let us know—chances are, you're not the only one who's confused, and it'd be good to improve the doc for the next person. 🙂

Thanks @chrisbobbe! for your review. I agree that I shouldn't have to close #4412. My bad, will improve this in my future PR's 😀


[BUG]: Timestamp in SQLite errors if null is passed

What version of drizzle-orm are you using?
0.21.1
Describe the Bug
When using the Sqlite adapter, having nullable integer timestamps will cause an error if null is passed into the field. Seems the builder assumes that the date passed in is always non null.

Already fixed, just not released to latest. You can use drizzle-orm@beta for now.

Fixed in 0.23.0


docs: stop maintenance

As FT-2547 requires we will stop maintenance of this repository. Updating the description of the state.
Please merge this PR and archive this repository when you are ready.

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


Mongo updates

Proposed Changes
This PR does a few things.

Bumps the MongoDB driver to the latest from upstream, including my work to add DNS SRV record support
Adds support in vmq_diversity for SRV seed lookup in MongoDB
Modifies existing MongoDB CT test to authenticate, maybe preventing issues like https://github.com/vernemq/vernemq/issues/1678 from popping up in the future
This probably fixes https://github.com/vernemq/vernemq/issues/1678
Adds a Docker Compose file to make local integration testing easier
Adds a new test profile for CI because not everything passes in GitHub Actions right now

Types of Changes
What types of changes does your code introduce to this project?
Put an x in the boxes that apply

[x] Bugfix (non-breaking change which fixes issue #1678)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation (correction or otherwise)
[ ] Cosmetics (whitespace, styles...)
[x] DevOps (Build scripts, pipelines...)

Checklist
Put an x in the boxes that apply. You can also fill these out after creating
the PR. If you're unsure about any of them, don't hesitate to ask on the
mailing list. We're here to help! This is simply a reminder of what we are
going to look for before merging your code.

[x] I have read the CODE_OF_CONDUCT.md document
[x] All tests pass locally with my changes
[x] I have added tests that prove my fix is effective or that my feature works
[x] I have added necessary documentation (if needed)
[x] Any dependent changes have been merged and published in related repositories
[x] I have updated changelog (At the bottom of the release version)
[x] I have squashed all my commits into one before merging

Further Comments
This bumps rebar3 like https://github.com/vernemq/vernemq/pull/1731 did. I am happy to back that part out if needed.
The CI profile is a temporary workaround to get us some more testing in CI. Eventually we need all the things tested in Actions. Then, we can ditch the CI profile in for the all tests profile. However, I think this is definitely better than the status quo.
I'll add the DNS SRV documentation if this gets approved. The DNS SRV stuff and the latest MongoDB driver will help if we tackle https://github.com/vernemq/vernemq/issues/1471.
This also probably fixes https://github.com/vernemq/vernemq/issues/1117. I tested my MongoDB changes DNS SRV explicitly against Atlas Cloud databases and it worked in driver tests.
There's no good way to test the SRV functionality in CI because it depends on DNS records.
The diversity suite completely passes locally with the Docker Compose file.
varnerac@Drews-MacBook-Pro vernemq % ./rebar3 as all_tests ct --suite apps/vmq_diversity/test/vmq_diversity_provider_SUITE.erl
===> Verifying dependencies...
===> Running neotoma...
===> Analyzing applications...
===> Compiling vmq_acl
===> Compiling vmq_diversity
===> Compiling vmq_generic_msg_store
===> Compiling vmq_mqtt5_demo_plugin
===> Compiling vmq_passwd
===> Compiling vmq_plugin
===> Compiling vmq_plumtree
===> Compiling vmq_pulse
===> Compiling vmq_swc
===> Compiling vmq_webhooks
===> Compiling vmq_ql
===> Compiling vmq_server
===> Compiling vmq_commons
===> Compiling vmq_bridge
cc   -L/usr/local/opt/openssl/lib -I/usr/local/opt/openssl/include vmq_passwd.c -lcrypto -o ../priv/vmq_passwd
===> Running Common Test suites...
%%% vmq_diversity_provider_SUITE: ............
All 12 tests passed.

very welcome improvements on MongoDB :)
review upcoming tomorrow, thanks!

That's as much as I can fix in the the CI runs now. If you re-run, it should pass


Update grammar.dd to support Elvis operator

After (and if) [1] is merged.
[1] https://github.com/dlang/dmd/pull/7242

I think this [1] should be updated as well.
[1] https://dlang.org/spec/expression.html#conditional_expressions

@jacob-carlborg There it is. I made a separate PR since it was easier to just select "Improve this page", then manually make a PR.

Closing pending DIP if anyone takes it.


Full system net http

Changes to support the full framework version of System.Net.Http when building in the full framework.

@mcphersonwhite
Please can you give some details about why you'd like to see this change?
What problem does this solve?
Thanks :)

I've just seen your comment at #1219
We'll consider this next week.

Hello,
I may be mistaken, however I suppose the issue hasn't been resolved yet.
When I add a reference to https://www.nuget.org/packages/Google.Apis.Core/1.34.0 in a project that targets 4.7.1, nuget adds a reference to System.Net.Http.dll from https://www.nuget.org/packages/System.Net.Http/ instead of adding a reference to a lib from a full .net framework (GAC).

packages.config
<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="Google.Apis" version="1.34.0" targetFramework="net471" />
  <package id="Google.Apis.Core" version="1.34.0" targetFramework="net471" />
  <package id="Newtonsoft.Json" version="10.0.2" targetFramework="net471" />
  <package id="System.IO" version="4.3.0" targetFramework="net471" />
  <package id="System.Net.Http" version="4.3.1" targetFramework="net471" />
  <package id="System.Runtime" version="4.3.0" targetFramework="net471" />
  <package id="System.Security.Cryptography.Algorithms" version="4.3.0" targetFramework="net471" />
  <package id="System.Security.Cryptography.Encoding" version="4.3.0" targetFramework="net471" />
  <package id="System.Security.Cryptography.Primitives" version="4.3.0" targetFramework="net471" />
  <package id="System.Security.Cryptography.X509Certificates" version="4.3.0" targetFramework="net471" />
</packages>`

@StasPerekrestov
Based my look at the history here and the code changes added to releases, This change will likely come in the 1.35.0 release. I do not know the timing of the release to nuget, but it is coming, or so I think.

Correct, this will come in the 1.35.0 release.
Unfortunately we're not able to do a release right now due to some internal issues (see also #1249), but we expect these to be resolved by the end of July or beginning of August. As soon as this is sorted out, we'll do a 1.35.0 release containing this fix.

Thank you.

Hey @chrisdunelm, any chance to generate a build with this fix with a 1.34.1 version? Without the need to wait for other internal issues to be fixed.
Thanks for your work on this!

@MauricioArroyo I'll do a release of Google.Apis, Google.Apis.Core and Google.Apis.Auth today or tomorrrow. You'll need to put a reference directly from your project to these libraries to get the updated version, rather than rely on the transitive import; but this should allow you to use the change in this PR.
Then I expect in a couple of weeks we'll do the full release of all Google.Apis.* packages.

@MauricioArroyo v1.35.0 packages are now on nuget.org

Awesome!! Thanks!


Extensions with auto update flow uninstalled after reload

Testing #199180

Set update flow to OnlySelectedExtensions
Have multiple extensions from same publisher installed, in my case installed Docker, ESLint and DevContainers
Set Auto Update for Docker and ESLint
Downgrade the extension versions as mentioned in https://github.com/microsoft/vscode/issues/199180#issue-2012652519
See the update banner popup on the selected extensions
Extensions were auto updated but the banner still persists
Package.json of the extensions still refers to the old version although the extension UI reports differently
Now update the Package.json value to the current installed version
See reload required banner pop up
Click the reload action and extension gets removed

https://github.com/microsoft/vscode/assets/964386/efd4f509-5419-4bef-8602-df10a7b8e36b

I have to say manually messing up the version in package.json and extensions.json file can cause unexpected behaviour like this. Sorry that I recommended this workaround to see updates.
This seems to be suspicious. VS Code has clean up mechanism to remove outdated versions. Because of manual edits, clean up mechanism would have kicked off and uninstalled the extension.
If this approach helped you to test auto update feature then this should be sufficient. Side affects like this are due to the manual edits.

Makes sense. Curious, when you were developing this feature how did you test it ? Was it using published extensions that you control ?

I was also updating above files I mentioned but differently.

Used Install Another Version action from the UI
Removed the pinned attribute from the extensions.json file


Component not loading

Home Assistant says component not loaded, check config.
I have 5 identical AC units and they are using the same codes file. Out of the 5 units, the climate component controls two of them just fine and the rest will only turn off.
All the broadlink switches have been configured and working for 2 years.
I have the following in my configuration.yaml,
smartir:

custom_updater:
  component_urls:
    - https://raw.githubusercontent.com/smartHomeHub/SmartIR/master/custom_components.json

the following in my climate.yaml,
  - platform: smartir
    name: Study
    device_code: 1300
    controller_send_service: switch.broadlink_send_packet_192_168_1_70
    temperature_sensor: sensor.multi_study_temperature
    humidity_sensor: sensor.multi_study_humidity

  - platform: smartir
    name: Hobby
    device_code: 1300
    controller_send_service: switch.broadlink_send_packet_192_168_1_71
    temperature_sensor: sensor.multi_study_temperature
    humidity_sensor: sensor.multi_study_humidity

  - platform: smartir
    name: Living
    device_code: 1300
    controller_send_service: switch.broadlink_send_packet_192_168_1_72
    temperature_sensor: sensor.multi_kitchen_temperature
    humidity_sensor: sensor.multi_kitchen_humidity

  - platform: smartir
    name: Kitchen
    device_code: 1300
    controller_send_service: switch.broadlink_send_packet_192_168_1_73
    temperature_sensor: sensor.multi_kitchen_temperature
    humidity_sensor: sensor.multi_kitchen_humidity

  - platform: smartir
    name: Master
    device_code: 1300
    controller_send_service: switch.broadlink_send_packet_192_168_1_74
    temperature_sensor: sensor.multi_study_temperature
    humidity_sensor: sensor.multi_study_humidity

  - platform: smartir
    name: Dining
    device_code: 1300
    controller_send_service: switch.broadlink_send_packet_192_168_1_75
    temperature_sensor: sensor.multi_kitchen_temperature
    humidity_sensor: sensor.multi_kitchen_humidity

and attached is my json file 1300.
1300.zip

Hi, what is your HA version? Could you send me the full logs?

0.88.2
Sure... I've attached it.
On Mon, 4 Mar 2019, 2:50 am Vassilis Panos<EMAIL_ADDRESS>wrote:

Hi, what is your HA version? Could you send me the full logs?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/smartHomeHub/SmartIR/issues/46#issuecomment-469084630,
or mute the thread
https://github.com/notifications/unsubscribe-auth/Ai6iorWou4yR8Kg4tSMDIRwIcP_RXxhTks5vTG3hgaJpZM4bbSdd
.

On Mon, 4 Mar 2019, 2:50 am Vassilis Panos<EMAIL_ADDRESS>wrote:

Hi, what is your HA version? Could you send me the full logs?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/smartHomeHub/SmartIR/issues/46#issuecomment-469084630,
or mute the thread
https://github.com/notifications/unsubscribe-auth/Ai6iorWou4yR8Kg4tSMDIRwIcP_RXxhTks5vTG3hgaJpZM4bbSdd
.

Did you forget to attach the logs?

Sorry about that, please check here:
https://docs.google.com/document/d/1JgLDm7jSd6Xm565dvGLSM_FLHOs4V3HqFjVhxqkli_Q/edit?usp=sharing

However, does the climate platform work?

Is there Internet access from HA?

HA has internet access, yes.
On Mon, 4 Mar 2019, 5:30 pm Vassilis Panos<EMAIL_ADDRESS>wrote:

Is there Internet access from HA?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/smartHomeHub/SmartIR/issues/46#issuecomment-469294915,
or mute the thread
https://github.com/notifications/unsubscribe-auth/Ai6iouYPN-T2IXPHR9zRqr-vXzjJFMyMks5vTTwUgaJpZM4bbSdd
.

Are all units the same brand and model?

Yes, all Sharp same model and all working for years on the now obsolete
component.
On Mon, 4 Mar 2019, 5:37 pm Vassilis Panos<EMAIL_ADDRESS>wrote:

Are all units the same brand and model?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/smartHomeHub/SmartIR/issues/46#issuecomment-469297710,
or mute the thread
https://github.com/notifications/unsubscribe-auth/Ai6ioov82ABL-6C97OKz_6ubQBCSpyJLks5vTT3CgaJpZM4bbSdd
.

Beside this problem, please update the __init__.py, climate.py, fan.py and media_player.py files from this folder. It seems that you are mixing different versions of files. The previous error should disappear.
About the units which not respond to other commands except 'off' is very strange. Is the broadlink controller led indicates that broadlink send a command?

I have updated the files, the component is now loaded :+1:
Nothing came up in the log but still, the problem persists. With the units that do not respond, the broadlink controller shows no signal. Shows a signal only when turning off.

Did you try to change the controller_send_service to a non-working entity? Let's assume that Kitchen entity not working and Study works well. Please try to add the boradlink's send service of Study to Kitchen entity. Does the component send all the signals now?

Yes, just did that. Problem persisted. The controller still sent only the off command.
I tried something else though... I took a random packet from 1300.json and tried sending it manually from HA's Services Panel one of the controllers that didn't work. It worked... So I think this means maybe something is wrong with the component?


proposal: crypto/ed25519: change GenerateKey to return private key only

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

$ go version
go version go1.13.3 darwin/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

What did you do?

Consistency needed: Change GenerateKey() to return only private key with error because it seems awkward that it returns both public key and private key while NewKeyFromSeed() returns only private key. In addition, it is so confused for someone who are not familiar with crypto/ed25519 package
I know there might be a huge side effect when standard package is changed, but my opinion is that it worth modifying it right now, considering the current increase of gophers. As more gophers mean that more go code will be, this is perfect time to change it

As-is

// GenerateKey generates a public/private key pair using entropy from rand.
// If rand is nil, crypto/rand.Reader will be used.
func GenerateKey(rand io.Reader) (PublicKey, PrivateKey, error) {
	if rand == nil {
		rand = cryptorand.Reader
	}

	seed := make([]byte, SeedSize)
	if _, err := io.ReadFull(rand, seed); err != nil {
		return nil, nil, err
	}

	privateKey := NewKeyFromSeed(seed)
	publicKey := make([]byte, PublicKeySize)
	copy(publicKey, privateKey[32:])

	return publicKey, privateKey, nil
}

To-be

// GenerateKey generates a private pair using entropy from rand.
// If rand is nil, crypto/rand.Reader will be used.
func GenerateKey(rand io.Reader) (PrivateKey, error) {
	if rand == nil {
		rand = cryptorand.Reader
	}

	seed := make([]byte, SeedSize)
	if _, err := io.ReadFull(rand, seed); err != nil {
		return nil, nil, err
	}

	privateKey := NewKeyFromSeed(seed)
	return privateKey, nil
}

What did you expect to see?

Better coding experiment. No more confusion in package document(https://pkg.go.dev/crypto/ed25519?tab=doc)
Improve code consistency for not only package itself but also codes using it

What did you see instead?

I don't necessarily disagree that it would be cleaner to return just the PrivateKey, but unfortunately the API is now locked in by the Go 1 Compatibility Promise.
https://golang.org/doc/go1compat


Create CI build

[x] Create appveyor build.
[ ] Need to separate running the integration tests from the unit tests.
[ ] Create influx instance and populate it with sample data before running integration tests.
[x] Add one of those build passing image things.

Build created in #6 still need to sort out integration tests


Hiding or Locking SideMenu in some cases?

How can I hide sidemenu or remove after embedded?
In some cases, I need to close sidemenu. I couldn't change menu "sidePanelVisible" or embed a sidemenucontroller : nil,

call sidemenuController.toggle() and it will hide the menu if it is visible or show it if it is hidden

Actually, I'm asking to lock sidemenu for some cases. I'm not asking show or hide feature.
For instance, if a user is not logged in, he / she will not see the sidemenu or after log out she/ he will not see it, but in logged mode, the user can use sidemenu. In my case, if a user drag the page left to right, he / she can see sidemenu. I want to lock it.
Thanks in advance.

Did you have a look at this?

Is it possible to have a completion handler in toggle function instead of using delegation ? I want to handle just one case.
I don't want to do my task in hide/reveal functions delegate because it call at every hide/reveal events.
Maybe we could have open / close functions with completion ?
What do you think about it ?

can you make a pull request for that? @lwinged

I did something like that :
//Can't use "toggle" name because of :
//UIKitExtension -> button.addTarget(sideMenuController, action: #selector(SideMenuController.toggle), forControlEvents: UIControlEvents.TouchUpInside)
//Crash on completion?() -> animate(toReveal:)
public func togglePanel(completion: ((Void) -> (Void))? = nil) {

       if sidePanelVisible {
           close(completion)
       } else {
           open(completion)
       }
   }

   public func close(completion: ((Void) -> (Void))? = nil) {
       if !transitionInProgress {
           animate(toReveal: false, completion: completion)
       }
   }

   public func open(completion: ((Void) -> (Void))? = nil) {
       if !transitionInProgress {

           if !sidePanelVisible {
               prepare(sidePanelForDisplay: true)
           }

           animate(toReveal: true, completion: completion)
       }
   }

  // MARK: - Interaction -

//here : add completion handler
func animate(toReveal reveal: Bool, completion: ((Void) -> (Void))? = nil){

       transitionInProgress = true
       sidePanelVisible = reveal

       if reveal {
           set(statusBarHidden: reveal)
       }

       let setFunction = sidePanelPosition.isPositionedUnder ? setUnderSidePanel : setAboveSidePanel
       setFunction(hidden: !reveal) { updated in
           if !reveal {
               self.prepare(sidePanelForDisplay: false)
               self.set(statusBarHidden: reveal)
           }
           self.transitionInProgress = false
           self.centerViewController.view.userInteractionEnabled = !reveal
           if updated {
               let delegateMethod = reveal ? self.delegate?.sideMenuControllerDidReveal :       self.delegate?.sideMenuControllerDidHide
               delegateMethod?(self)
              //here : execute completion
               completion?()
           }
       }
   }

What do you think about that ?

I don't understand the crash behind using toggle

I can't replace your toggle function by mine (togglePanel -> need a rename)
here :
//UIKitExtension -> button.addTarget(sideMenuController, action: #selector(SideMenuController.toggle), forControlEvents: UIControlEvents.TouchUpInside)
Actually, I think the selector send a parameter not nil I don't know why and inside animate function the execution of completion?() crash with EXC_BAD_ACCESS.
So I didn't change your toggle function but I added mine (togglePanel)
Open & Close functions seem to work.
TogglePanel works too but I don't listen this function like your toggle function :
//UIKitExtension -> button.addTarget(sideMenuController, action: #selector(SideMenuController.toggle), forControlEvents: UIControlEvents.TouchUpInside)

how did you manage to avoid the menu when not logged? I think i want to get something similar so when user is not logged, the menu is not shown also no swipe to open menu.

I too think this is a good addition to have. A simple way to enable/disable menu button would be nice.


Update html-webpack-plugin to 3.2.0 to support additional options

We needed to add meta tags to a couple of pages over in https://github.com/github/experiments-frontend, and it looks like the version of html-webpack-config we were on, ^2.0.0, didn't support this.  This updates to the latest stable version of 3.2.0.  Nothing rigorous, but I've verified the tests pass and this works on https://experiments.githubapp.com!

/cc @josh (I can't add review requests)

I pushed f290cf9e54764bbdbc9b444769ec3c24e49b0a01 to see about fixing that error on master. Can you click "Update branch" and we can see if the tests pass here.

@josh thanks!  Tests pass here now.


Enable Datadog profiler for Starrocks FE/BE deployment

Ideally, we can use a init container to download the ddprofile binary. and share it with the main container via emptydir.
The version can be configurable in values.yaml as well as the boolean for enabling ddprofile
ddprofile:
  enabled: true
  version: [0.14.1](https://github.com/DataDog/ddprof/releases/tag/v0.14.1)

https://docs.datadoghq.com/profiler/enabling/ddprof/?tab=environmentvariables
https://docs.datadoghq.com/profiler/enabling/java/?tab=datadogprofiler

what's the size of the binary? is it possible to mount the binary into container with configmap?

ddprof is 13MB.
It's a common practice to use initContainers to share binaries to main container.
E.g. the dd-java-agent.jar is already available from  https://hub.docker.com/r/datadog/dd-lib-java-init

We will add a field preStartScriptLocation, and you can down load the binary before container process start.
see https://github.com/StarRocks/starrocks-kubernetes-operator/pull/355


feat(migrate): start adding --multi-schemas param to "prisma db pull"

Contributes to https://github.com/prisma/prisma/issues/16455.

Note: I'll take this PR and see how it goes

Next: needs new engines from https://github.com/prisma/prisma-engines/pull/3588

I'll merge main once https://github.com/prisma/prisma/pull/17246 landed

Ok, that did not work as the actual URLs come from outside :/ Either we need something like https://github.com/prisma/prisma/pull/17252 that fixes the actual bug, or we need to modify more connection strings.

Note for @Jolg42: we should merge main into this PR's branch, solve conflicts (we have replaced introspection-engine with migration-engine in DbPull.ts in main), and adapt the functionality to the migration-engine.


Handle potential invalid pointer reference for VMCI reply.

Added a check for NULL recv. buffer in the Esx_VmdkCmd:Run() method and in VMCI client code added setting the buf pointer to NULL on entry and on recv failures.

The changes are being tracked via #941, comments are addressed and closing this PR.


Update People

Updated!
Haochen is still with us but graduated.

How did we do it for Yinwei after he got accepted to Princeton? Didn't he just remain in the Current Members section without the arrow until he was moved to the Past Members section?

I'll delegate that decision to @mosharaf. At the minimum, I think the arrow should be that single-character arrow in the Past Members section, not -->.

Yea, agreed

Yeah it's just I feel like if a person is in SymbioticLab, they're in SymbioticLab. They may have a fixed future career step, but that future didn't come yet XD


Unity to Flutter Message not working in released apk/bundle - Android

Unity to flutter messaging working fine using flutter run commands but not for building apk/bundle.
I am able to receive messages using

flutter run --debug

flutter run --release

But for released apk/bundle messages simply doesn't work

flutter build apk --release

flutter build appbundle

I've tried on both the example project and mine and couldn't get it to work.
I'm on unity 2019.3.13

Can anyone confirm if it worked with him?
I've tried 2019.3.5f1 but still the same..

It work fine for me on Unity 2019.3.7f1 and flutter 1.17.2 both message from unity to flutter and flutter to unity in release apk. maybe u can try build using : flutter build apk --no-shrink    hope it help.

It work fine for me on Unity 2019.3.7f1 and flutter 1.17.2 both message from unity to flutter and flutter to unity in release apk. maybe u can try build using : flutter build apk --no-shrink hope it help.

Actually it worked using --no-shrink thank you, I also could get it to work by using "Generate Signed APK/Bundle" directly from android project using android-studio instead of using the generated  apk from "flutter build".


[SPARK-21078][WIP][CORE] JobHistory applications synchronized is invalid

What changes were proposed in this pull request?

Make applications and attemptsToClean immutable to try to simplify concurrency
Remove, for now, the incomplete synchronization of updates of applications
Next: add back synchronization of their update in a different form?

How was this patch tested?
Existing tests

@vanzin I think I need your eyes on this one. I am trying to address the race condition in the JIRA, which I think is very narrowly possible but possible. Additionally, I think attemptsToClean wasn't synchronized properly. So I tried to make it immutable.
But both of the updates to the references is now unsynchronized. I don't think that's OK, because we have to assume things like checkForLogs and mergeApplicationListings are called concurrently right? is it sufficient to just synchronize both of their updates to these two fields on a new lock?

Test build #79021 has started for PR 18497 at commit 7f0966b.

Test build #79021 has finished for PR 18497 at commit 7f0966b.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/79021/
Test FAILed.

Merged build finished. Test FAILed.

Test build #3833 has started for PR 18497 at commit 7f0966b.

Test build #3833 has finished for PR 18497 at commit 7f0966b.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Your change won't work, as far as I can tell. Since multiple threads might be calling mergeApplicationListing, you need synchronization around the block that is doing the list merging. Immutability is not the problem here.
The bug report is right in that the problem here is that synchronization is happening on the wrong object; since applications is overwritten to point to a different map, two threads may be synchronizing on different maps. So the correct change is just to use a different object as the lock here.
In truth, unless you're planning to backport this to other releases, this will all be superseded by my code to fix SPARK-20642, which is the next bug on the list after #18395 goes in.

Yeah, that's really my last question -- mergeApplicationListing and checkForLogs need sync.
You're right that making objects immutable just helped simplify the solution I was going for.
This one's easy to finish with extra synchronization, but if you're saying it will be superseded shortly, just tag your other change with this JIRA and I will close this. I was not planning to back-port unless someone else was actually observing a problem here.


Out of Memory

I have a large test lab of over 100,000 users. I ran this on a VM with 8 GB RAM and got the following:
Array dimensions exceeded supported range.
At line:578 char:17
+                 $domainUserList += $domainUsers.name
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OperationStopped: (:) [], OutOfMemoryException
    + FullyQualifiedErrorId : System.OutOfMemoryException`

This was after the CSV was created. and after the following output:
All the processes completed. Now, starting Accounts analysis..

So your tool never finishes as far I can tell. I have left it going for nearly 24 hours now.

Indeed you have a very large lab :)
How many trusted domains do you have in your scanned forest?
The ACLight is automatically scan all the domains, and therefore it make it tougher from the performance aspect.
The problem you have encountered is indeed lack of free RAM memory.
AClight scan wasn't intended to be performance efficient (it started with a POC project) - run with PowerShell and all the data is analyzed in the same time in the memory with no complicated DB in its backhand.
However, I can say that in one of our previous tests we ran the ACLight on a full forest network with 15 domains and 25,000 and it ended successfully (but we also used a 16GB RAM machine).
My recommendation to you is to try dividing the scan to individual/small domain groups, is it possible in your lab structure?
You can change the domains that will be scanned inside the code in the loop at line 565, or just close the pop up window domain scans that you don't want to scan in that specific execution.
Appreciate you tried the tool, and thanks for your feedback!
Keep me posted if you still encountered errors.
Thanks,
Asaf Hecht (@Hechtov)

@Hechtov I have two domains, sittingduck.info and research.sittingduck.info, only a few shared users between them, and research only has 30 users total.

@mubix for start could you run the scan only on "research" domain? (it should be quick because it's small domain), run the ACLight and close the pop-up window of the "sittingduck.info".
Then, if I got you right, you have the "sittingduck.info" with almost 100,000, I sorry but I think it will get again to memory space problem. Maybe you could add more RAM to your machine?
Another good option for you is to run the scan on less amount of "sensitive AD objects" - look at the script from line 150 - try to run the scan with only one query (for example you can remove all the lines between 160-215), and after this if you want you can scan the other sensitive AD object as well.

Same issue as above. 83k lines in the initial output file. Machine it is running on has 16gb of memory, about 12gb free to this process. I am already limiting this to one domain.

Gave a new VM 22 GB of RAM and ran out again. With no incremental or usable output, this just doesn't work. :(

We had the same OutOfMemoryException problem with ~43.000 users in the main domain and 3 trusted domains. The trusted domains have ~61.000 users in total.
Eine Ausnahme vom Typ "System.OutOfMemoryException" wurde ausgelöst.
In D:\Benutzer\XXXXX\ACLight.ps1:601 Zeichen:17
+                 $domainUserList += $domainUsers.name

(Sorry for the german exception message)

@Hechtov @mubix https://msdn.microsoft.com/powershell/reference/5.1/Microsoft.PowerShell.Core/about/about_Arrays
Note: When you use the += operator, PowerShell actually creates a new array with the values of the original array and the added value. This might cause performance issues if the operation is repeated several times or the size of the array is too big.

So maybe we should use a C# list here? Here are also some performance tests:
https://powershell.org/2013/09/16/powershell-performance-the-operator-and-when-to-avoid-it/

@FireFart  I think you are right, thank you for mentioning this with the given links.
Sadly I used "+=" a lot.. I'm also not sure if it will be enough to just change those big arrays implementations.
I think that for running the scan in very large network I will need to consider to change the basic architecture of the scan (use organized/temporal DB or split the scanning for smaller scopes and in the end unite them together).

So, my memory never spiked over 8 GB and I was still getting the same errors. I think it's more of an issue of array size Array dimensions exceeded supported range. than memory now

@mubix so a list should handle this error too I think.
Maybe you are getting the out of memory exception because when powershell tries to add a new element to an 8GB array in memory it has to copy the array over so it would need 16GB of memory. But this highly depends on the memory management of powershell which I have no plan about :)

Will the script ever end with this error? I have one system that has been now running for > 30 hours. Need to figure out where to handle this

I don't know if it will be finished.. I think it will try to use the hardisk to extend the memory (pagefiles and so on) and it much more slower.. I don't currently have a domain with 100,000 users, but next week I will try to build something like this and will perform more testings.
Meanwhile -
I have two quick suggestions for you to make the script much more lightweight in its memory usages:

The scan is querying the ACLs of multiple sensitive objects in the Active Directory (those are the multiple "Invoke-ACLScanner" calls from line 150).
Just for testing the script and reduce the memory usage you can try running the scan only on the "domain root object" - it will also give interesting result on your domain - the privileged accounts with sensitive power over the domain root + include shadow admins that might have the specific sensitive "ds-replication-get-changes-*" permissions that give the ability to perform DCSync attack.
For that, you just need convert the lines 159 until 215 to a comment section (<#.....#> will do the trick..).

The ACLight scan in the end after discovering all the privileged entities from the sensitive ACEs - it queries all the users in the domain to make sure the entities it discovered are still existing in the domain and they are indeed users accounts (it reduces some false-positives).
In your cases when there are 50,000+ users it's a heavy test, try to remove this test in the end, you just need to convert the following command to "comments": lines 597, 600, 601, 602, 657 and 664.

I hope those two reductions will be sufficient to run the scan in your domains.

@Hechtov I tried the second suggestion you had and it worked!  Seems to be some of the issues listed above with the maximum size of the structures you are using to do your analysis. Great tool and I look forward to incorporating this in to a few operational processes.
Thank you!

@nwdean Thanks for the feedback! I'm happy it worked better. The next tool will be more memory efficient :)

@Hechtov
I might be mistaken buy shouldn't it be $domainUserList += $userAccount.name  instead of $domainUserList += $domainUsers.name ?
The problem is that you are loading all of the names at each loop, which causes the system to run out of memory.

@guios91 You are absolutely right! I changed it. Thanks
Now, It will be interesting to hear from people with 50,000+ domain users about the performance improvement of that change.

@Hechtov Happy to help.
After modification the scripts works well and takes no more than an hour or so for 30 000 users in one domain.

I've grabbed a fresh copy of the script, but still getting the issue where it never completes. Reasonably large domain, around 45K enabled accounts, 85K in total. It creates the first file (full output) at 275MB, and the cmd window shows that it's starting the Accounts Analysis, but never gets any further.

Thanks @dakers1980 for your feedback. In the upcoming future I'm going to publish an improved version of the ACLight scan that will be better in its results and overall performance. Meanwhile you can reduce the size of scan by removing few ACL queries - i.e. remove lines from 158 until 178.

Hi @mubix, @nwdean, @FireFart , @guios91  and @dakers1980, I have uploaded the new and improved ACLight scan version (currently it's under the inner "ACLight2" folder).
Can you please check the new version in your networks and send me your feedback.
It should be more efficient and the architecture of the analysis is better.
Thanks

Hi Guys,
@mubix , @nwdean , @FireFart , @guios91 , @dakers1980 ,
Could you please try ACLight2? The second version has much better performances.
I just want to close this opened issue ticket, and update the main version of the tool to its updated second version.
Share your thoughts,
Thanks

@Hechtov ACLight2 works perfectly
On average 5-6 minutes per domain.
Also liked the possibility to specify the domain as an arg, I was previously modifying the code to manually add them.


feat: Register name with Arbitrum Sepolia resolver

Feature Request
Describe the Feature Request
As part of integrating Arbitrum into the dApp, the goal of this issue is to create and enable Arbitrum Sepolia Resolver CTA in the name registration process, specifically during the resolver selection step.

Preferred Solution

The Arbitrum Sepolia resolver radio button should appear consistent with the other enabled options, differing only in its icon and label.
Update the ENS resolver list to include the Arbitrum Sepolia resolver and its address.
When the user reaches the point of registering records for the newly registered domain, prompt them to switch their network to Arbitrum Sepolia to confirm the text records transaction. If they are not on Arbitrum Sepolia, the transaction should return an error.
Verify that the Arbitrum Sepolia resolver is successfully set after a name registration.

Definition of Done

[ ] The Arbitrum Sepolia resolver radio button should appear consistent with the other enabled options, differing only in its icon and label.
[ ] Users can successfully register a name with Arbitrum Sepolia resolver, the domain should be created on ETH Sepolia.
[ ] Clear errors should be provided if the process fails due to chain misconfiguration or unsupported chain.
[ ] The new domain should be accessible.
[ ] The correct text records, expiration date, and address should be displayed after registration.

Related Code
ENSResolverComponent.tsx

moving back to ideas because the registering of 2LD is not supported yet. we need to figure out a flow of registering the 2LD on both the L1 and L2


Cannot launch multi instances with 1.4

It gives the error .dat is not accessible on multiple instances tested with no parameters, both 32 bit, both 64 bit and 1 32 1 64. Nothing works.
If i open 1.3.1 however, it works just fine.
1.3.1:

1.4:

Seems to be fixed with the api update.


Same username != socket.id

Same player username in room will have same score. Score should be using userid, similar to chat

We wont allow same username in a room.

dupe of issue #14


Add tile component

Check it out. It will 99% have some future updates, so I'd look for smell over anything.
Basic transitions. We can add the cool animated border in an update.
https://app.zeplin.io/project/5b4e44c4113211861caaa7c1/screen/5c1bf894420c9e112ae060d5

@tarikhamilton nice work on this! 🔥


doc: clarify SCMP reality vs. ambition

The SCMP "specification" document described support for SCMP as mandatory. Furthermore, it mandates the use of SPAO+DRKey authentication for SCMPs. This does not correspond to what is currently implemented. SCMP support has been treated as at least semi-optional e.g. in discussions around the dispatcher-less end host stack.
Regarding the authentication, there is no full implementation of this neither in router (support in "our" router is experimental/demo-level, no other router implementation supports it at all) nor in end hosts (currently, nothing at all). There is not sufficiently clear consensus around this to pretend that we'll realize this ambition shortly.
Update the documentation specs to reflect this reality. Move the SCMP authentication description into a design document.
Closes #4528

This change is


Bing Search in Start Menu Removal Issue

Describe the bug
Winutil Seems to hang on Disabling Bing Search
To Reproduce
Steps to reproduce the behavior:

Go to 'Winutil>Tweaks tab'
Click on '"Bing Search in Start Menu slider'
Check Powershell (Admin Access)
See error:  "Deployment operation in progress: Microsoft.549981C3F5F10_4.2308.1005.0_X64_8wekyb3d8bbwe Processing [" on the top status. With "Disabling Bing Search " at the Prompt at the bottom for over an hour.

Expected behavior
The code runs until complete and notification pops up stating that Operation is finished.  Searching from the Start Menu no longer includes Bing.
*The tweak does remove Bing from the Start menu of the User who runs app.  Only doesn't ever display it's completion in either Powershell or the Winutil program, and doesn't work for other users, though the sliding button is in the "Off" position.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.

I can verify that this happens to me too.


Metrics filtered by hour doesn't show date

When clicked on graphics to open the detailed statistics, hour filtered data does not show date.

Date format wasnt able to convert "2020-01-10 12" as a DateTime.
<input matInput placeholder="Date" [value]="data.date | date:'medium'" readonly>
Formatter removed since the date should be displayed according to filter selection.


Twitter Stream Agent Error

Hi, Apologies for raising multiple issue consecutively.
I'm attempting to get a handle on the twitter usage with Huginn for a demo to colleagues.
Here are the steps I followed :

Create a new Agent : Twitter Stream Agent
Add in Twitter Stream Agent details

Details:
Type: Twitter Stream Agent
Schedule: Every 1h
Last checked: 4m ago
Keep events: 1 day
Last event created: never
Events created: 0
Service: Twitter - 07james1
Event receivers: None
Working: No
Options:
{
"filters": [
"Company",
"comp"
],
"expected_update_period_in_days": "1",
"generate": "events"
}
I run the agent -
Error from Logs :
Agents::TwitterStreamAgent-22-a0e5e62347f57419c5ff8aab4ab456da99520775 Exception Broken pipe @ io_write - :
/home/huginn/huginn/app/models/agents/twitter_stream_agent.rb:200:in write' /home/huginn/huginn/app/models/agents/twitter_stream_agent.rb:200:in puts'
/home/huginn/huginn/app/models/agents/twitter_stream_agent.rb:200:in block in stream!' /home/huginn/huginn/vendor/bundle/ruby/2.3.0/bundler/gems/twitter-stream-f7e7edb0bae0/lib/twitter/json_stream.rb:287:in receive_error'
/home/huginn/huginn/vendor/bundle/ruby/2.3.0/bundler/gems/twitter-stream-f7e7edb0bae0/lib/twitter/json_stream.rb:216:in handle_headers_complete' /home/huginn/huginn/vendor/bundle/ruby/2.3.0/bundler/gems/twitter-stream-f7e7edb0bae0/lib/twitter/json_stream.rb:128:in call'
/home/huginn/huginn/vendor/bundle/ruby/2.3.0/bundler/gems/twitter-stream-f7e7edb0bae0/lib/twitter/json_stream.rb:128:in <<' /home/huginn/huginn/vendor/bundle/ruby/2.3.0/bundler/gems/twitter-stream-f7e7edb0bae0/lib/twitter/json_stream.rb:128:in receive_data'
/home/huginn/huginn/vendor/bundle/ruby/2.3.0/gems/eventmachine-1.0.7/lib/eventmachine.rb:187:in run_machine' /home/huginn/huginn/vendor/bundle/ruby/2.3.0/gems/eventmachine-1.0.7/lib/eventmachine.rb:187:in run'
I'm not sure how to debug this log. I have Huginn set up as production
I use :
cd /home/huginn/huginn && sudo bundle exec rake production:start and cd /home/huginn/huginn && sudo bundle exec rake production:stop to start and stop Huginn.
and
sudo service nginx restart
for the Nginx server.
Would you be able to give me some advice on what I'm doing wrong here?
Appreciate the help.
Thanks,
Clinton
PS : Also Tried the below from previous issue posts I read
bundle exec foreman start
Got the following:
22:33:15 web.1  | started with pid 17971
22:33:15 jobs.1 | started with pid 17973
22:33:16 web.1  | exited with code 1
22:33:16 system | sending SIGTERM to all processes
22:33:16 jobs.1 | terminated by SIGTERM

Exception Broken pipe looks like the process can not write to STDOUT, did you get the output from logs/job-1/current?
If you followed the manual installation guide doing sudo bundle exec rake production:start is the correct command, foreman start is only used directly in development.
You can try to reexport the services by running sudo bundle exec rake production:export

Thank you very much . sudo bundle exec rake production:export worked. Getting streams now.
Thanks once again.

Awesome! Glad it's working now 😄


Added new rule MiKo_3225 to simplify redundant conditions

(resolves #1000)

Title
Added new rule MiKo_3225 to simplify redundant conditions

User description
(resolves #1000)

PR Type
Enhancement, Tests

Description

Implemented a new rule, MiKo_3225, to simplify redundant logical conditions by removing duplicate comparisons.
Added a code fix provider for the MiKo_3225 rule to automatically simplify redundant conditions.
Created unit tests to verify the functionality of the MiKo_3225 analyzer and its code fix.
Updated project files to include the new analyzer and code fix provider.
Enhanced documentation by updating the README to reflect the addition of the new rule.

Changes walkthrough 📝
Relevant filesEnhancement

Resources.Designer.csAdd localized strings for MiKo_3225 rule

MiKo.Analyzer.Shared/Resources.Designer.cs
Added localized strings for the new rule MiKo_3225.  Included descriptions and titles for code fix and message format.

+36/-0

MiKo_3225_CodeFixProvider.csImplement code fix provider for redundant conditions

MiKo.Analyzer.Shared/Rules/Maintainability/MiKo_3225_CodeFixProvider.cs
Implemented a code fix provider for simplifying redundant logical conditions.  Defined logic to update syntax by removing redundant comparisons.

+31/-0

MiKo_3225_LogicalConditionsAreTheSameAnalyzer.csCreate analyzer for detecting redundant logical conditions

MiKo.Analyzer.Shared/Rules/Maintainability/MiKo_3225_LogicalConditionsAreTheSameAnalyzer.cs
Created an analyzer to detect redundant logical conditions.  Registered syntax node action to analyze logical expressions.

+34/-0

Resources.resxAdd resource entries for MiKo_3225 rule

MiKo.Analyzer.Shared/Resources.resx

Added resource entries for MiKo_3225 rule.

+12/-0

Tests

MiKo_3225_LogicalConditionsAreTheSameAnalyzerTests.csAdd unit tests for MiKo_3225 analyzer and code fix

MiKo.Analyzer.Tests/Rules/Maintainability/MiKo_3225_LogicalConditionsAreTheSameAnalyzerTests.cs
Added unit tests for the MiKo_3225 analyzer.  Verified code fixes for redundant logical conditions.

+147/-0

Configuration changes

MiKo.Analyzer.Shared.CodeFixes.projitemsInclude MiKo_3225_CodeFixProvider in project items

MiKo.Analyzer.Shared/MiKo.Analyzer.Shared.CodeFixes.projitems

Included MiKo_3225_CodeFixProvider in the project items.

+1/-0

MiKo.Analyzer.Shared.projitemsAdd MiKo_3225 analyzer to project items

MiKo.Analyzer.Shared/MiKo.Analyzer.Shared.projitems
Added MiKo_3225_LogicalConditionsAreTheSameAnalyzer to the project items.

+1/-0

Documentation

README.mdUpdate README with MiKo_3225 rule information

README.md
Updated the rules count and added MiKo_3225 to the list of available rules.

+2/-1

💡 PR-Agent usage: Comment /help "your question" on any pull request to receive relevant information


🐞 [BUG] - Endless Console Logging and Error in Hackathon Page

Description
On the hackathon page of our application, we are currently experiencing two significant issues that are negatively impacting both performance and developer experience.
Issue Description:
On the hackathon page of our application, we are currently experiencing two significant issues that are negatively impacting both performance and developer experience.
1. Endless Console Logging:
We have identified that there is an endless console log being generated on the hackathon page. This issue results in an excessive number of log messages being printed to the console within a short period of time. For instance, we observed that approximately 3225 console log messages are generated in just 10 seconds. This has a negative impact on debugging efforts and can slow down the application's performance.
2. useEffect Error: Maximum Update Depth Exceeded:
Additionally, we have encountered an error related to the use of the useEffect hook on the hackathon page. The error message states:
"Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render."
This error suggests that there is a problem with how the useEffect hook is being used on the page. It's causing an infinite loop of state updates and rendering, which not only results in poor performance but also degrades the developer experience by making debugging challenging.
Expected Behavior:
We expect the hackathon page to function without generating an excessive number of console log messages and without triggering the "Maximum Update Depth Exceeded" error due to incorrect usage of the useEffect hook.
Steps to Reproduce:

Navigate to the hackathon page.
Open the browser console to observe the continuous console log.
Notice the "Maximum Update Depth Exceeded" error in the console.

Current behaviour
The current behavior of the hackathon page is detrimental to both developers and users. It leads to performance degradation, cluttered console logs, and impaired developer productivity. Addressing these issues promptly will contribute to improving the page's overall performance and enhancing the development workflow.
Expected behaviour
We expect the hackathon page to function without generating an excessive number of console log messages and without triggering the "Maximum Update Depth Exceeded" error due to incorrect usage of the useEffect hook.
Reproduction steps
**Steps to Reproduce:**

1. Navigate to the hackathon page.
2. Open the browser console to observe the continuous console log of varirany:primary.
3. Notice the "Maximum Update Depth Exceeded" error in the console.

Screenshots
https://github.com/anmode/grabtern-frontend/assets/85815172/93028eea-a01c-4102-8d17-f05b1ea377e5
Logs
No response
Browsers
Microsoft Edge
OS
Windows
Are you contributing for a program ?
GSSoC2023
Code of Conduct

[X] I have read and agree to the Contributing Guidelines of this project.

@anmode ,please assign me this issue


Use react-query to cache notifications

Speeds up the notifications page quite a bit.

I gave the question in notifications two lines. Can't figure out how to stick the timestamp on the end such that the question truncates when it runs into the timestamp though so I removed the timestamp on smaller screens.


feat(FieldTheory/PrimitiveElement): Steinitz Theorem

Added Field.exists_primitive_element_iff_finite_intermediateField: a finite extension E / F has a primitive element if and only if the intermediate fields between E / F are finitely many.
Also known as Steinitz Theorem https://en.wikipedia.org/wiki/Primitive_element_theorem#The_theorems.

[x] depends on: #7957

Note: I have pushed an update to the lean toolchain because this PR was on a buggy version of the toolchain. WARNING: checking out old commits of this PR using v4.2.0-rc2 or v4.2.0-rc3 can cause lake clean to delete your mathlib folder! If you need to do so, make sure to delete lakefile.olean manually before running any lake commands.

Finally the proof is sorry-free. 😄
By the way, I added a lemma IntermediateField.finiteDimensional_adjoin_of_finite_of_isAlgebraic at L296, but it turns out that this lemma is unused. Should I remove that lemma?

generalize to 0 ≤ m ≠ n;

I think this should be easy; I'll try it at next day.

show [F⟮α⟯ : F⟮α ^ m⟯] = m if m > 0 and α transcendental.

I think maybe you can prove directly that 1, α, ... , α ^ (m-1) form a basis of F⟮α⟯ as a F⟮α ^ m⟯-vector space?

I think maybe you can prove directly that 1, α, ... , α ^ (m-1) form a basis of F⟮α⟯ as a F⟮α ^ m⟯-vector space?

Or perhaps more generally, [F⟮α⟯ : F⟮Polynomial.aeval α f⟯] = m if f : F[X] with m = f.natDegree > 0 and α transcendental

Yeah, both are true. A PowerBasis follows once you show irreducibility of the polynomial (which implies it's the minimal polynomial of α over F⟮α ^ m⟯). A direct proof of linear independence would also be feasible, more so for the similar statement about Algebra.adjoin, but for IntermediateField.adjoin you can still clear the denominators and the proof is essentially the same. I'm not sure it's easier than the proof using irreducibility though.
For the more general statement, actually you can take any rational function f/g in α, and the degree of the field extension of [F(α⟯ : F⟮f(α)/g(α)⟯] will be max {deg f, deg g} assuming f and g are coprime. For this general result, the Eisenstein criterion no longer applies, but there's actually a simpler proof that generalizes: wlog we may assume deg g < deg f because we may replace f/g by g/f, or in case deg f = deg g, replace it by 1/(g/f-1). We may further assume f is monic, so that the candidate minimal polynomial f(X)-g(X)Y of f(α)/g(α) is also monic as a polynomial in X, so we can use integral closedness of F[Y] to reduce irreducibility problem to the ring F[Y][X] as before. But this polynomial is of degree 1 in Y, so its factors are pretty easy to analyze: if it's a product then one of the factors must be of degree 0 in Y, so a polynomial in X, which must be a unit because it needs to divide both f and g.

Sorry for messing around with Adjoin. I added two new lemmas and make some of them simp lemmas. Is that OK?

maintainer merge


Leaflet Providing Invalid Lng/Lat Coordinates when location duplicates on display

Steps to reproduce
Setup a map that repeats.  Click on the repeating section, the click event will return invalid coordinates.
Expected behavior
The correct (repeated) coordinate would be provided for each GPS location, regardless if it repeats on the display.
Current behavior
It returns incorrect data
Minimal example reproducing the issue
https://www.hikerock.com/rock/210/
Click on map -> the console log will output what the gps coordinates are provided by leaflet.
The code is super simple, if you need to access it :
https://www.hikerock.com/plugin/map/js/map.min.js?cache=6x3cWuxp
function map() => inits leaflet
map.prototype.selectorConfirm () -> is what is collects the event, is doing the console.logging

Duplicate of https://github.com/Leaflet/Leaflet/issues/1885


Receiving 404 error

Sessions,
Database all working.
but I receive a 404 error when pressing creating dummy user

in your Server the directory index is disabled http://httpd.apache.org/docs/2.0/mod/mod_dir.html#directoryindex  i tried to fix it with the .htaccess file. update the source code. maybe it will work now.

https://github.com/BlackScorp/webrpg/blob/master/public/.htaccess  this should fix it

no 404 error.
Uploaded  .htaccess.
But nothing happens now when I click on create dummy.
it goes to
http://webrpg.brissyriders.com/dummyUser
But still showing the login page

i updated the public/index.php it should work now;)

still no change
is it ok to post urls on Git?

yeah no problem, can you add var_dump($_SERVER) to public/index.php ? have to check what is going on there

added
echo var_dump($_SERVER);
http://webrpg.brissyriders.com/

and var_dump($request)

done

@Oroton your public/index.php should look like this http://pastebin.com/HFKWsUSW

@Oroton the Problem is defined here http://php.net/manual/de/function.filter-input.php#77307  really tricky one, i fixed it in public/index.php

updated.
it just shows.
string(0) ""


Option to specify flake8 command line

AFAICT currently ALE hardcodes the executable as flake8.  I would like to sometimes use python3 -m flake8 instead.
This is because flake8 uses Python's standard library ast module, which only supports the same major Python version that you used to run flake8.   I use different Python versions for different projects, and I would like to specify which one I want with a vim autocommand.

Sounds good to me. If someone doesn't pick this up, then I will eventually. I'm also interested in making the linter capable of detecting versions of flake8 from virtualenv directories too, as with eslint and node_modules.

I like the idea of detecting a local flake8, but Python doesn't have a strong convention like node_modules :(
I've seen bin/flake8, .env/bin/flake8, .venv/bin/flake8.  I'm sure there are more possibilities.
This is why I'd like to be able to override the detected executable from a vim autocommand.


Could not load data using ElasticClient after installing x-pack

NEST/Elasticsearch.Net version:<IP_ADDRESS>
Elasticsearch version:5.3.0
Description of the problem including expected versus actual behavior:
Steps to reproduce:

Could not load data using ElasticClient after installing x-pack

Provide ConnectionSettings (if relevant):
var settings = new ConnectionSettings(new Uri(ESServer)).DefaultIndex("formattest");
Provide DebugInformation (if relevant): No error information.

Describe the feature:Could not load data using ElasticClient after installing x-pack
before installing x-pack, I could use the ConnectionSettings to load data into ES.
I think it may duo to authentication issue, could you please provide sample to show how to walk-around?

"Could not load data" seems very vague thing to report. If you can not connect let us know the exception or response.DebugInformation so we have something to go from 😄
if you use x-pack security you could not be able to connect for a variety of reasons:

Basic auth might need to be set on ConnectionSettings https://www.elastic.co/guide/en/elasticsearch/client/net-api/5.x/configuration-options.html

EsServer might need to be https ?

Using PKI authentication? there are some docs for that! https://www.elastic.co/guide/en/elasticsearch/client/net-api/5.x/working-with-certificates.html#_client_certificates

Hope the above gets you unblocked.


Instagram Bridge Not mapping Author

Tried a few different Instagram feeds using Username and Hashtag.
The expected result is that the Instagram UserName is applied to the Name tag under Author, but the name is always blank and UserName isnt pulling in a different field.

Sorry, your problem is not clear to me. Could you share some example queries?

Here is an example of atom output.
The "author"  field has the key "name". I would expect or thought that the Instagram username would be the "name" field, but it is undefined.

<title type="text">Instagram Bridge</title>
<id>http://<IP_ADDRESS>:3000/</id>
<icon>https://www.instagram.com/favicon.ico</icon>
<logo>https://www.instagram.com/favicon.ico</logo>
<updated>2018-11-05T11:59:43+00:00</updated>
<link rel="alternate" type="text/html" href="https://www.instagram.com/explore/tags/f3cherokee" />
<link rel="self" href="http://<IP_ADDRESS>:3000/?action=display&bridge=Instagram&h=f3cherokee&media_type=picture&format=Atom" />

<entry>
	<author>
		<name></name>
	</author>
	<title type="html">That’s right. I showed up again this morning at 5:30a to take part in a fitness regiment we call a #f3cherokee beatdown. Where were you? Come join us man. ✌🏻</title>
	<link rel="alternate" type="text/html" href="https://www.instagram.com/p/Bppf3EkARNw/" />
	<id>https://www.instagram.com/p/Bppf3EkARNw/</id>
	<updated>2018-11-01T18:50:40+00:00</updated>
	<content type="html"><img src="https://instagram.fatl1-1.fna.fbcdn.net/vp/e5f0cccab135426b5ca6919e3c4a96d1/5C7CE183/t51.2885-15/e35/43984752_2171232896460095_7112945735936578490_n.jpg" alt="That’s right. I showed up again this morning at 5:30a to take part in a fitness regiment we call a #f3cherokee beatdown. Where were you? Come join us man. ✌🏻" /></content>
	<link rel="enclosure" href="https://instagram.fatl1-1.fna.fbcdn.net/vp/e5f0cccab135426b5ca6919e3c4a96d1/5C7CE183/t51.2885-15/e35/43984752_2171232896460095_7112945735936578490_n.jpg" type="image/jpeg" />

</entry>


[0.39 release] Deprecate supports tags in common-definition 0.20.x

It's deleted in 0.21, and shouldn't be used.  We simply assume tag support (but don't send tags yet, until an upcoming release, probably 0.45).

Looks like the version wasn't bumped to 0.20.2.  I'm not in a super rush to get this deprecation out, but would be good to do. So I guess there's a collow-up PR to bump the version and then we can do a release?

@anthony-murphy - Interested in your input here, trying to do two things besides just the deprecation annotation:

Be explicit (in retrospect) about the breaking change made in common-definitions 0.20.1
Highlight the coming change to delete supportsTags altogether

I know you're thinking about how the release process works for these independent defs packages.


ensure regexp in tables is rendered correctly

In https://github.com/interagent/prmd/pull/345/ a bug was fixed where a regexp containing a pipe character would close the table cell it was in. Because the fix uses <pre> instead of the backticks notation for inline code in markdown, the content of the <pre> element was being parsed as markdown.
It is not unusual for a regexp to contain what looks like a markdown link ([...](...)) so that introduced a new bug.
I believe this PR will fix that bug, while introducing a new test case for them

Leaving a comment here for better visibility as the diff is now outdated.
@geemus wrote:

Why the change from | to |? It looks like 124 is the right HTML entity from brief web searching, so I'm not saying this is wrong, just wanted to confirm. Also, if this is using 124, the test below should also use it. I think being consistent between the two places is important, even if I'm more indifferent about which of the two we choose (presuming they both render in the desired way).

There was no particular reason, I think 124 is just the first one I came across when I googled it as I couldn't remember it at the time. Since you brought it up I made sure to google and check if there is in fact a preferred one, but it seems they're all valid. I went with a third option however: named html entities. I feel like these are easier to read than the codes which you almost certainly have to look up. At least in this version, there's a chance you'll recognize it.
I made a third change as well: adding a replacement for asterisks. I thought of that while making this change, and figured it could technically suffer from similar issues as parts of the regex being rendered as a link. Makes me wonder if there's even more that we should be replacing, but I think this is a good start.
What do you think?

Looks good to me. I like the shift to named entities, definitely makes the code/tests easier to read and understand. Hopefully that set at least mostly covers things, though as you suggest maybe there are other things we are forgetting about. Thanks for working through this with me!