Composite SPDX license expression not recognized

Thanks for this great software.
I have a software with a component type-fest, this component has got a composite SPDX license expression (MIT OR CC0-1.0).
I have a license configuration file allowing both licenses.
When listing the licenses .\sbom-utility.exe license list ... it does not behave as I expect it. It evaluates the policy to UNDEFINED.
Version: v0.9.3
If more information is needed, I am happy to provide it.
Expected behavior
The policy for the component is allowed.
Actual behavior
The policy for the component is UNDEFINED.
Result:
Policy     Type        ID/Name/Expression  Component(s)                       BOM ref.                               Document location
------     ----        ------------------  ------------                       --------                               -----------------
UNDEFINED  expression  (MIT OR CC0-1.0)    type-fest<EMAIL_ADDRESS>                      components
UNDEFINED  invalid     NOASSERTION         ProductWithNpmAndSomeDependencies  -/ProductWithNpmAndSomeDependencies@-  metadata.component

Minimal reproducible example

Click me
SBOM
{
  "$schema": "http://cyclonedx.org/schema/bom-1.4.schema.json",
  "bomFormat": "CycloneDX",
  "specVersion": "1.4",
  "version": 1,
  "serialNumber": "urn:uuid:50a6176e-bc14-4420-afd6-4b5142bec584",
  "metadata": {
    "timestamp": "2023-02-24T11:31:49.124Z",
    "tools": [
      {
        "vendor": "@cyclonedx",
        "name": "cyclonedx-npm",
        "version": "1.8.0",
        "externalReferences": [
          {
            "url": "git+https://github.com/CycloneDX/cyclonedx-node-npm.git",
            "type": "vcs",
            "comment": "as detected from PackageJson property \"repository.url\""
          },
          {
            "url": "https://github.com/CycloneDX/cyclonedx-node-npm#readme",
            "type": "website",
            "comment": "as detected from PackageJson property \"homepage\""
          },
          {
            "url": "https://github.com/CycloneDX/cyclonedx-node-npm/issues",
            "type": "issue-tracker",
            "comment": "as detected from PackageJson property \"bugs.url\""
          }
        ]
      },
      {
        "vendor": "@cyclonedx",
        "name": "cyclonedx-library",
        "version": "1.11.0",
        "externalReferences": [
          {
            "url": "git+https://github.com/CycloneDX/cyclonedx-javascript-library.git",
            "type": "vcs",
            "comment": "as detected from PackageJson property \"repository.url\""
          },
          {
            "url": "https://github.com/CycloneDX/cyclonedx-javascript-library#readme",
            "type": "website",
            "comment": "as detected from PackageJson property \"homepage\""
          },
          {
            "url": "https://github.com/CycloneDX/cyclonedx-javascript-library/issues",
            "type": "issue-tracker",
            "comment": "as detected from PackageJson property \"bugs.url\""
          }
        ]
      }
    ],
    "component": {
      "type": "application",
      "name": "ProductWithNpmAndSomeDependencies",
      "bom-ref": "-/ProductWithNpmAndSomeDependencies@-",
      "purl": "pkg:npm/ProductWithNpmAndSomeDependencies",
      "properties": [
        {
          "name": "cdx:npm:package:path",
          "value": ""
        }
      ]
    }
  },
  "components": [
    {
      "type": "library",
      "name": "type-fest",
      "version": "1.4.0",
      "bom-ref"<EMAIL_ADDRESS>      "author": "Sindre Sorhus",
      "description": "A collection of essential TypeScript types",
      "hashes": [
        {
          "alg": "SHA-512",
          "content": "c864b36bbe31934506f24fa92e1e687a8622aef2225a8e6dd3fa37cc71c03b6b510e265cc563fb7f2c0d95786a6fafebeac5afc22f91b3240c5a154b7b8055b8"
        }
      ],
      "licenses": [
        {
          "expression": "(MIT OR CC0-1.0)"
        }
      ],
      "purl"<EMAIL_ADDRESS>      "externalReferences": [
        {
          "url": "sindresorhus/type-fest",
          "type": "vcs",
          "comment": "as detected from PackageJson property \"repository\""
        },
        {
          "url": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz",
          "type": "distribution",
          "comment": "as detected from npm-ls property \"resolved\""
        }
      ],
      "properties": [
        {
          "name": "cdx:npm:package:path",
          "value": "node_modules/type-fest"
        },
        {
          "name": "cdx:npm:package:development",
          "value": "true"
        }
      ]
    }
  ]
}

License Configuration
{
      "policies": [
            {
                  "id": "CC0-1.0",
                  "name": "Creative Commons Zero v1.0 Universal",
                  "family": "CC0",
                  "usagePolicy": "allow",
                  "annotationRefs": [
                        "APPROVED"
                  ],
                  "notes": [
                        ""
                  ]
            },
            {
                  "id": "MIT",
                  "name": "MIT License",
                  "family": "MIT",
                  "usagePolicy": "allow",
                  "annotationRefs": [
                        "APPROVED"
                  ],
                  "notes": [
                        ""
                  ],
                  "urls": [
                        "https://spdx.org/licenses/MIT.html"
                  ]
            }
      ]
}

CLI
.\sbom-utility.exe license list -i "mre-sbom.json" --format json --summary --quiet --config-license .\mre-license.json

The UNDEFINED behavior indicates the license policy file (i.e. "mre-license.json") was not found...
If not running in --quiet mode, you may see the WARNINGs:
[WARN] unable to find license policy config file: `.mre-license.json`
[WARN] License policy will default to `UNDEFINED`.

have you tried using instead using simply -config-license mre-license.json?
e.g.,
.\sbom-utility.exe license list -i "mre-sbom.json" --format json --summary --quiet --config-license mre-license.json

Seeing you are using the backslash file sep., are you running this in Windows?  If so, I had no avail. Windows test env., but endeavored to use the system neutral filepath libraries (i.e., accounts for fore/backslash handling) in all places.  Will check tomorrow if those properly handling the strings passed in on the --config-license parm.

When running (from PowerShell)
.\sbom-utility.exe license list -i "mre-sbom.json" --format json --summary --config-license "mre-license.json"

This gets printed
Welcome to the sbom-utility! Version `v0.9.3` (sbom-utility) (windows/amd64)
============================================================================
[INFO] Loading license policy config file: `mre-license.json`...
[INFO] Attempting to load and unmarshal file `mre-sbom.json`...
[INFO] Successfully unmarshalled data from: `mre-sbom.json`
[INFO] Determining file's SBOM format and version...
[INFO] Determined SBOM format, version (variant): `CycloneDX`, `1.4` (latest)
[INFO] Matching SBOM schema (for validation): schema/cyclonedx/1.4/bom-1.4.schema.json
[INFO] Scanning document for licenses...
[WARN] invalid SBOM: licenses not found (metadata.licenses) (mre-sbom.json)
[WARN] No license found for component. bomRef: -/ProductWithNpmAndSomeDependencies@- (`ProductWithNpmAndSomeDependencies`, , pkg:npm/ProductWithNpmAndSomeDependencies)
[INFO] Outputting summary (`json` format)...
[WARN] Summary not supported for `json` format; defaulting to `txt` format...
Policy     Type        ID/Name/Expression  Component(s)                       BOM ref.                               Document location
------     ----        ------------------  ------------                       --------                               -----------------
UNDEFINED  expression  (MIT OR CC0-1.0)    type-fest<EMAIL_ADDRESS>                      components
UNDEFINED  invalid     NOASSERTION         ProductWithNpmAndSomeDependencies  -/ProductWithNpmAndSomeDependencies@-  metadata.component

When running
.\sbom-utility.exe license list -i "mre-sbom.json" --format json --summary --config-license "mre-license.json"

Against the below SBOM (same filename mre-sbom), added one component called IDisposableAnalyzers.
And the same mre-license.json file.
For component IDisposableAnalyzers it behaves as expected (allow)
This gets printed
Welcome to the sbom-utility! Version `v0.9.3` (sbom-utility) (windows/amd64)
============================================================================
[INFO] Loading license policy config file: `mre-license.json`...
[INFO] Attempting to load and unmarshal file `mre-sbom.json`...
[INFO] Successfully unmarshalled data from: `mre-sbom.json`
[INFO] Determining file's SBOM format and version...
[INFO] Determined SBOM format, version (variant): `CycloneDX`, `1.4` (latest)
[INFO] Matching SBOM schema (for validation): schema/cyclonedx/1.4/bom-1.4.schema.json
[INFO] Scanning document for licenses...
[WARN] invalid SBOM: licenses not found (metadata.licenses) (mre-sbom.json)
[WARN] No license found for component. bomRef: -/ProductWithNpmAndSomeDependencies@- (`ProductWithNpmAndSomeDependencies`, , pkg:npm/ProductWithNpmAndSomeDependencies)
[INFO] Outputting summary (`json` format)...
[WARN] Summary not supported for `json` format; defaulting to `txt` format...
Policy     Type        ID/Name/Expression  Component(s)                       BOM ref.                               Document location
------     ----        ------------------  ------------                       --------                               -----------------
UNDEFINED  expression  (MIT OR CC0-1.0)    type-fest<EMAIL_ADDRESS>                      components
allow      id          MIT                 IDisposableAnalyzers<EMAIL_ADDRESS> components
UNDEFINED  invalid     NOASSERTION         ProductWithNpmAndSomeDependencies  -/ProductWithNpmAndSomeDependencies@-  metadata.component

Click me
file name: mre-sbom
{
  "$schema": "http://cyclonedx.org/schema/bom-1.4.schema.json",
  "bomFormat": "CycloneDX",
  "specVersion": "1.4",
  "version": 1,
  "serialNumber": "urn:uuid:50a6176e-bc14-4420-afd6-4b5142bec584",
  "metadata": {
    "timestamp": "2023-02-24T11:31:49.124Z",
    "tools": [
      {
        "vendor": "@cyclonedx",
        "name": "cyclonedx-npm",
        "version": "1.8.0",
        "externalReferences": [
          {
            "url": "git+https://github.com/CycloneDX/cyclonedx-node-npm.git",
            "type": "vcs",
            "comment": "as detected from PackageJson property \"repository.url\""
          },
          {
            "url": "https://github.com/CycloneDX/cyclonedx-node-npm#readme",
            "type": "website",
            "comment": "as detected from PackageJson property \"homepage\""
          },
          {
            "url": "https://github.com/CycloneDX/cyclonedx-node-npm/issues",
            "type": "issue-tracker",
            "comment": "as detected from PackageJson property \"bugs.url\""
          }
        ]
      },
      {
        "vendor": "@cyclonedx",
        "name": "cyclonedx-library",
        "version": "1.11.0",
        "externalReferences": [
          {
            "url": "git+https://github.com/CycloneDX/cyclonedx-javascript-library.git",
            "type": "vcs",
            "comment": "as detected from PackageJson property \"repository.url\""
          },
          {
            "url": "https://github.com/CycloneDX/cyclonedx-javascript-library#readme",
            "type": "website",
            "comment": "as detected from PackageJson property \"homepage\""
          },
          {
            "url": "https://github.com/CycloneDX/cyclonedx-javascript-library/issues",
            "type": "issue-tracker",
            "comment": "as detected from PackageJson property \"bugs.url\""
          }
        ]
      }
    ],
    "component": {
      "type": "application",
      "name": "ProductWithNpmAndSomeDependencies",
      "bom-ref": "-/ProductWithNpmAndSomeDependencies@-",
      "purl": "pkg:npm/ProductWithNpmAndSomeDependencies",
      "properties": [
        {
          "name": "cdx:npm:package:path",
          "value": ""
        }
      ]
    }
  },
  "components": [
    {
      "type": "library",
      "name": "type-fest",
      "version": "1.4.0",
      "bom-ref"<EMAIL_ADDRESS>      "author": "Sindre Sorhus",
      "description": "A collection of essential TypeScript types",
      "hashes": [
        {
          "alg": "SHA-512",
          "content": "c864b36bbe31934506f24fa92e1e687a8622aef2225a8e6dd3fa37cc71c03b6b510e265cc563fb7f2c0d95786a6fafebeac5afc22f91b3240c5a154b7b8055b8"
        }
      ],
      "licenses": [
        {
          "expression": "(MIT OR CC0-1.0)"
        }
      ],
      "purl"<EMAIL_ADDRESS>      "externalReferences": [
        {
          "url": "sindresorhus/type-fest",
          "type": "vcs",
          "comment": "as detected from PackageJson property \"repository\""
        },
        {
          "url": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz",
          "type": "distribution",
          "comment": "as detected from npm-ls property \"resolved\""
        }
      ],
      "properties": [
        {
          "name": "cdx:npm:package:path",
          "value": "node_modules/type-fest"
        },
        {
          "name": "cdx:npm:package:development",
          "value": "true"
        }
      ]
    },
	{
      "type": "library",
      "bom-ref"<EMAIL_ADDRESS>      "publisher": "Johan Larsson, milleniumbug",
      "name": "IDisposableAnalyzers",
      "version": "4.0.1",
      "description": "Analyzers and fixes for IDisposable.",
      "scope": "excluded",
      "hashes": [
        {
          "alg": "SHA-512",
          "content": "66B1A1885AD746DD599F4794E3AA77FC64C3F7F5F4F992AE143C9506E6F6B14D9E1658CDE6586DC0EAE3A0012D587BDE5C2DC427104C1E79A773835FB2335C00"
        }
      ],
      "licenses": [
        {
          "license": {
            "id": "MIT"
          }
        }
      ],
      "purl"<EMAIL_ADDRESS>      "externalReferences": [
        {
          "url": "https://github.com/DotNetAnalyzers/IDisposableAnalyzers",
          "type": "website"
        },
        {
          "url": "https://github.com/DotNetAnalyzers/IDisposableAnalyzers",
          "type": "vcs"
        }
      ]
    }
  ]
}
```
</details>

After looking at the ABNF grammar: https://spdx.github.io/spdx-spec/v2.3/SPDX-license-expressions/
It appears, the last case of of "simple-expression":
simple-expression "WITH" license-exception-id /
  compound-expression "AND" compound-expression /
  compound-expression "OR" compound-expression /
  "(" compound-expression ")" )

that is:
"(" compound-expression ")"

was not accounted for in the recursive parsing as my logic always assumed a balanced left-right tree joined by a conjunction.   Still thinking of the most elegant way to handle in the recursion...

@manne Would you care to look at my PR (do not know if you have time to clone or pull it, compile and run it) before merge?


Update Weather Snapshot to allow use of personal api key

Added personal API Key schema (config) value to allow more frequent updates (every 10 minutes vs every 6 hrs). Changed weather API to free tier that does not require a credit card. Original functionality is maintained if no personal API key is provided (will still use the provided hashed API keys in file and cache/query every 6 hrs).

I have read the CLA Document and I hereby sign the CLA

I had to recreate my pull request due to an error committing code under the wrong user and being unable to sign the CLA with my second user.
@arieltian I reverted the AQI API to what it was previously and just added extra logic to handle caching differently if a personal API key is provided. Let me know what you think!

@arieltian Thoughts on this one?

Looks good to me. I assume you tested the 2.5 api calls and also the change to the padding for one of the elements.

Yup! I updated the response handling to match the 2.5 api response structure and updated the static weather data as well. Tested the app using the static data, DEV_API_KEY, and schema config field.
The padding change is very minor and only applied to the humidity but looked more centered for the handful of values I tested. Here are some examples:
Ex 1

Ex 2

Ex 3

Great, ship it


missing modls are still stored in json files

If a model fails completely it is still listed (empty entry) in the json files, do we really want this?
example:
        "CanCM4": {
            "units": "W m-2",
            "InputClimatologyFileName": "rlus_Amon_CanCM4_historical_r1i1p1_197901-198912-clim-ac.nc",
            "SimulationDescription": {
                "ModellingGroup": "CCCma",
                "ModelFreeSpace": "N/A",
                "MIPTable": "CERES",
                "creation_date": "2016-02-05T20:08:53Z",
                "ModelActivity": "CMIP5",
                "Experiment": "historical",
                "tracking_id": "/45f1fb18-4490-4419-b8f9-7e1a0f14298d",
                "Realization": "r1i1p1",
                "Model": "CanCM4"
            },
            "defaultReference": {
                "source": "CERES"
            },
            "InputClimatologyMD5": "57c973e0ae25ebdd0d939b51a0372c31"
        }
    },

@gleckler1 @durack1 @jservonnat what do you think?

@doutriaux1 @durack1 @jservonnat   Probably what is going on here is that the model climatology exists and the user has requested rlus to be tested, but rlus is not in the PMP obs dataset.   In this case there should be no results in this (rlus) json file.  This is a fine example of where this should be dealt with via error trapping informing the user what happened.


Invalid memberships after time period.

The user should be able to add an invalidation period only when there are terms in the group. I haven't tested this but it seems that the logic is missing for this part.

Well we are not there yet but before you merge (or at any point) squash these commits. This is a single bug functionality and should be delivered in a single commit.

Please keep in mind that if we merge PR #1250 first, you will need to update the migration here and vice versa.

Tests are failing

Please add the invalidation field in the admin interface.

This PR needs a rebase and an update on the migration.

What happens in the case where the group has no more members due to the invalidation process? Should the group be deleted?

Apart from the last comment, the functionality seems to be working fine. In the case where a group with no members after the invalidation process should be deleted, just add a small test for this.
r+wc :100:

@akatsoulas PR updated

Updated migrations
Updated comments
Rebased
Groups without members are deleted automatically every day


Force ascending order

BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1470260
When any sort_by is specified, the arel_attribute should be in ascending order by default. Currently, asc is not called either by default or when it is specified, causing an Arel::Attributes::Attribute to be returned, rather than Arel::Nodes::Ascending:, resulting in
{
  "error": {
    "kind": "internal_server_error",
    "message": "undefined method `to_sql' for #\u003cArel::Attributes::Attribute:0x007f98f3460288\u003e\nDid you mean?  to_s\n               to_set",
    "klass": "NoMethodError"
  }
}

The test added for this comes from the exact query mentioned in this BZ which allowed me to reproduce the bug.
@miq-bot add_label bz, api
cc: @AllenBW @imtayadeway

@miq-bot add_label bug

🌮 💃 😻


Tests are marked as "skipped" when using @DisplayName

Description
Apparently it has an issue that tests with @DisplayName are marked as skipped, no matter if passed or not:

when i run the test:

I was able to fix this issue on my fork, the thing is i think i've broke the paramiterized tests xD
Idk if is something you can reuse, i refactored a bunch of stuff

Thank you. Hopefully I will be able to check it out soon.

Fixed in #80


add a linux_arm toolchain for customized use

This tool chain is targeted to Linux running on ARM SoC, because there
is a demand of running some of the example tools like "chip-tool" on
embeded linux device instead of on Linux laptop.
If the target_os is linux and the target_cpu is "arm" or "arm64", this
toolchain will be used.
It is similar to the "CROSS_COMPILE" when build kernel, a build arg
named "linux_arm_cross_compile" need to be specified also, it should be
a path to the cross compile tools.
Take the embedded linux SDK into consideration, other build args to
specify in the command line includes:

target_os
target_cpu
arm_arch
target_cflags
target_ldflags
etc.

And the pkg-config tool need below two enviroment to be well set  to
correctly find the include path:

PKG_CONFIG_SYSROOT_DIR
PKG_CONFIG_LIBDIR

A demo command to generate ninja files are listed below, the content in
angle brackets need to be updated with developer's local env.
PKG_CONFIG_SYSROOT_DIR=<embedded_linux_sdk_sysroot>
PKG_CONFIG_LIBDIR=${PKG_CONFIG_SYSROOT_DIR}/usr/lib/pkgconfig:${PKG_CONFIG_SYSROOT_DIR}/usr/share/pkgconfig
gn gen out out/aarch64 --args='target_os="linux" target_cpu="arm64" arm_arch="armv8-a"
target_cflags=[ "--sysroot=<embedded_linux_sdk_sysroot>" ]
target_ldflags=[ "--sysroot=<embedded_linux_sdk_sysroot>" ]
linux_arm_cross_compile="<path_to_cross_compile_tools>"'
Change-Id: Id4b7b4932e16fcc42d77af7020ebb6a7133e237b
Signed-off-by: faqiang.zhu<EMAIL_ADDRESS>Problem
it does not try to fix any problem.
Change overview
added a tool chain for arm-linux and modified the rule of choose a tool chain to set to be the default tools chain.
Testing

If manually tested, what platforms controller and device platforms were manually tested, and how?
With this change and the right command to use NXP yocto release SDK based on Linux 5.10 kernel, try to below target:
"//examples/lighting-app/linux:chip-lighting-app"
"//examples/chip-tool"

Then the build out binary can be executed on NXP i.MX 8MM (Arm Cortex A53) EVK running the corresponding yocto release,

 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.


driver name rbd.csi.ceph.com not found in the list of registered CSI drivers

Describe the bug
I deployed ceph cluster using cephadm successfully. I can create StorageClass and pvc with CephFS and RBD in only one of 3 nodes. The others encounter an error MapVolume.SetUpDevice failed for volume "pvc-7fcd65f2-42c6-4ab1-a95d-e9eb27de22f4" : kubernetes.io/csi: blockMapper.SetUpDevice failed to get CSI client: driver name rbd.csi.ceph.com not found in the list of registered CSI drivers
Environment details

Image/version of Ceph CSI driver : canary
Helm chart version : NO
Kernel version :  4.18.0-147.8.1.el8_1.x86_64
Mounter used for mounting PVC (for cephfs its fuse or kernel. for rbd its
krbd or rbd-nbd) : krbd(? not sure)
Kubernetes cluster version : 1.18.4
Ceph cluster version :  15.2.4 octopus (stable)

Steps to reproduce
Steps to reproduce the behavior:

Setup details: 'deploy kubernetes cluster, install cephadm and deploy the cluster (3 nodes), try to use rbd following the Guide'
Deployment to trigger the issue MapVolume.SetUpDevice failed for volume "pvc-7fcd65f2-42c6-4ab1-a95d-e9eb27de22f4" : kubernetes.io/csi: blockMapper.SetUpDevice failed to get CSI client: driver name rbd.csi.ceph.com not found in the list of registered CSI drivers
See error

Actual results
Pod status is still ContainerCreating,
Expected behavior
Pod can mount the PVC.
Logs
Pod event:
 Normal   Scheduled               36s               default-scheduler        Successfully assigned mars/pod-with-raw-block-volume to <IP_ADDRESS>
  Normal   SuccessfulAttachVolume  36s               attachdetach-controller  AttachVolume.Attach succeeded for volume "pvc-7fcd65f2-42c6-4ab1-a95d-e9eb27de22f4"
  Warning  FailedMapVolume         2s (x7 over 34s)  kubelet, <IP_ADDRESS>      MapVolume.SetUpDevice failed for volume "pvc-7fcd65f2-42c6-4ab1-a95d-e9eb27de22f4" : kubernetes.io/csi: blockMapper.SetUpDevice failed to get CSI client: driver name rbd.csi.ceph.com not found in the list of registered CSI drivers

csi-rbdplugin log:
I0709 03:19:46.513343   27678 cephcsi.go:126] Driver version: canary and Git version: 82080dcfa9bb6a3f45e70effa871dfee6f4d63ee
I0709 03:19:46.513408   27678 cephcsi.go:181] Starting driver type: rbd with name: rbd.csi.ceph.com
I0709 03:19:46.518063   27678 mount_linux.go:173] Cannot run systemd-run, assuming non-systemd OS
I0709 03:19:46.518072   27678 mount_linux.go:174] systemd-run failed with: exit status 1
I0709 03:19:46.518081   27678 mount_linux.go:175] systemd-run output: System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to create bus connection: Host is down
I0709 03:19:46.518239   27678 server.go:116] Listening for connections on address: &net.UnixAddr{Name:"//csi/csi.sock", Net:"unix"}
I0709 03:19:47.398888   27678 utils.go:159] ID: 1 GRPC call: /csi.v1.Identity/GetPluginInfo
I0709 03:19:47.398901   27678 utils.go:160] ID: 1 GRPC request: {}
I0709 03:19:47.399861   27678 identityserver-default.go:37] ID: 1 Using default GetPluginInfo
I0709 03:19:47.399868   27678 utils.go:165] ID: 1 GRPC response: {"name":"rbd.csi.ceph.com","vendor_version":"canary"}
I0709 03:20:46.618077   27678 utils.go:159] ID: 2 GRPC call: /csi.v1.Identity/Probe
I0709 03:20:46.618091   27678 utils.go:160] ID: 2 GRPC request: {}
I0709 03:20:46.619293   27678 utils.go:165] ID: 2 GRPC response: {}

driver-registrar log:
I0709 03:19:46.396924   27642 main.go:110] Version: v1.3.0-0-g6e9fff3e
I0709 03:19:46.396985   27642 main.go:120] Attempting to open a gRPC connection with: "/csi/csi.sock"
I0709 03:19:46.397005   27642 connection.go:151] Connecting to unix:///csi/csi.sock
I0709 03:19:47.397487   27642 main.go:127] Calling CSI driver to discover driver name
I0709 03:19:47.397511   27642 connection.go:180] GRPC call: /csi.v1.Identity/GetPluginInfo
I0709 03:19:47.397518   27642 connection.go:181] GRPC request: {}
I0709 03:19:47.400319   27642 connection.go:183] GRPC response: {"name":"rbd.csi.ceph.com","vendor_version":"canary"}
I0709 03:19:47.400617   27642 connection.go:184] GRPC error: <nil>
I0709 03:19:47.400625   27642 main.go:137] CSI driver name: "rbd.csi.ceph.com"
I0709 03:19:47.400676   27642 node_register.go:51] Starting Registration Server at: /registration/rbd.csi.ceph.com-reg.sock
I0709 03:19:47.400762   27642 node_register.go:60] Registration Server started at: /registration/rbd.csi.ceph.com-reg.soc

** dmesg logs.**

[26704.821899] rbd: loaded (major 251)
[100297.566840] IPv6: ADDRCONF(NETDEV_UP): cali30e78a3adac: link is not ready
[100297.567369] IPv6: ADDRCONF(NETDEV_CHANGE): cali30e78a3adac: link becomes ready
[111144.112333] libceph: mon2 <IP_ADDRESS>:6789 session established
[111144.112448] libceph: client34241 fsid 1e883026-c03d-11ea-9dd5-00163e101e9f
[111144.115684] rbd: rbd0: capacity<PHONE_NUMBER> features 0x1
[111145.448598] EXT4-fs (rbd0): mounted filesystem with ordered data mode. Opts: (null)
[111146.000098] IPv6: ADDRCONF(NETDEV_UP): caliac37385a53e: link is not ready
[111146.000693] IPv6: ADDRCONF(NETDEV_CHANGE): caliac37385a53e: link becomes ready
[171219.432037] IPv6: ADDRCONF(NETDEV_UP): cali495fe95050e: link is not ready
[171219.432518] IPv6: ADDRCONF(NETDEV_CHANGE): cali495fe95050e: link becomes ready

Additional context
For example:
Any existing bug report which describe about the similar issue/behavior: #1105

After restarting the host server it works now.


added Leanders pic

added my pic but I am not super happy with it :) I thought maybe I can change it later when I find the right one so that in the meantime the website doesn't look broken?

Thanks and you can change it anytime


Alter Last Menstrual Period in Pregnancy Edit View

Takes a stab at straightening out LMP in the view. In this iteration it looks as follows:

The changes are stripping LMP as a date and replacing it with a weeks/days breakout, and then adding a readonly field that compares LMP on intake to the current date.
(There are some less interesting/client facing edits to the pregnancy model, strong params, etc as well. And this isn't passing tests quite yet.)
@lwaldsc @NerdyGirl537 can you all review and let me know what you think? Specifically interested in whether this fits into how LMP tends to be used on the fly when CM-ing.
Fixes #185
Fixes #186
Fixes #247
Fixes #246

This is great!
Would it be possible to split that bottom read only to LMP W/D into today's date and date of appointment when inserted into the appropriate field? I know it's a bit more coding but would be useful.

I bet that's doable but not quite sure how it should play out. Any chance I
could get you to draw me a picture or break that into specific fields?
Otherwise we can discuss on Wednesday when we have everyone in the room
next.
On Sat, Apr 2, 2016, 2:38 PM Lisa<EMAIL_ADDRESS>wrote:

This is great!
Would it be possible to split that bottom read only to LMP W/D into
today's date and date of appointment when inserted into the appropriate
field? I know it's a bit more coding but would be useful.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/colinxfleming/dcaf_case_management/pull/211#issuecomment-204771038

@mebates will want to touch this too since it's got design implications, so let's temporarily punt on this until Wednesday.

If this is what the CMs want, let's do it!
But, just to speak to the original design: we had envisioned the date and weeks drop down to have a relationship. So, if the patient says "April 4" you can put that in and it will show X weeks from the date you put in. Or, if she says "10 weeks", you can put that in the drop down and the date will update to 10 weeks before. Then the weeks drop down would need to automagically update when each week ticks by. Which is maybe the flaw in our plan.

Let's make sure we talk about this on Wednesday to put a nail in it!

Have this approximately sorted out now. Still TK:

Removing depreciated fields in pregnancy model
Making some of that stuff private
Getting the helper text to spill over
Adjusting seeds to create someone who's at a different status for smoke testing
Get the actual pregnancy fields to properly render
Get approx gestation at intake to work

This needs a refactor still and definitely needs testing, but here's an early draft of what it looks like from the main page and from the pregnancy view:

The major backend additions to this are going to wind up being the existence of last_menstrual_period_helper.rb and changes to the pregnancy model. The end result of that will be convenience methods for display of LMP in weeks and days according to two different dates (one, date of pregnancy creation/initial call, and two, date of appointment). (Also testing!)

Declaring victory finally!


Add MSC timestamp event

Adds handling for timestamp events on linux. These events are sent by Nintendo joycons(I'm not aware of any other controller that sends this information) As I understand this can be used to correlate timing with gyro/accelerometer readings sent. (See here )
Here's the relevant part of the event code documentation
EV_MSC:
----------
EV_MSC events are used for input and output events that do not fall under other
categories.

A few EV_MSC codes have special meaning:

* MSC_TIMESTAMP:
  - Used to report the number of microseconds since the last reset. This event
    should be coded as an uint32 value, which is allowed to wrap around with
    no special consequence. It is assumed that the time difference between two
    consecutive events is reliable on a reasonable time scale (hours).
    A reset to zero can happen, in which case the time since the last event is
    unknown.  If the device does not provide this information, the driver must
    not provide it to user space.

Also: I'm not sure whats the from_id and to_id stuff and just added the next number in the series.

I've tested the changes on raspbian 10

@medakk Thanks, this looks great!  One small nitpick before I merge it: Instead of returning the microsecond value directly from the Linux kernel, I would like it to be an instance of std::time::Duration constructed with std::time::Duration::from_micros().
The reason for this is that I'd like to use a type that's name describes what it is (I believe this is important for measurement units, such as time).  The precision of microseconds is somewhat arbitrary, and in the future it might be possible some other device supports nanoseconds (although the usefulness of that might be questionable).  Although this does increase the size of Event, it should be acceptable since typically after events are created, they are matched on immediately.
I'm also thinking maybe the event should be called Uptime rather than Timestamp, since usually timestamps are associated with other events.
BTW I'm hoping I can fix #38 today, which should make it possible to start looking into #39 again.

@medakk Actually, scratch that.  I'm planning on merging code that changes a lot of the organization of code in the repository today, so I'll just merge this when I do and make the necessary changes to avoid a mess of merging.

Thanks @AldaronLau ! yes std::time::Duration makes more sense here!
Regarding #39 , with this PR (#40) and the WIP PR #38, I am able to use my joycons' accelerometer. I'm just not sure what the scale is, but admittedly I haven't dug into it too much since its fine for my current project


Defender interferes with sync from Cloud DP to local SMB DP

I get transfer interruption failures when Defender is installed.  What is the location of temporary files while transferring from cloud DP to local SMB DP so I can exclude them from Defender?

Sorry for the delay. It uses NSTemporaryDirectory to create a temporary directory. This is usually something like "/var/folders/7t/f8lrg4c174j_m8cxdwgg27x00000gp/T/", and I think the only part of that which is consistent is "/var/folders".

I'm closing this for now since It think the only ask here is where it stores temporary files.


bump gitpython because of CVE-2023-40267

Gitpython has a vulnerability where it does not block insecure non-multi options in clone and clone_from. This popped up in our vulnerability scanner, so I thought it suggest to bump it.
https://avd.aquasec.com/nvd/2023/cve-2023-40267/
I have a hard time seeing it should pose a real security issue for OPAL users, but who knows. At the very least, it's nice to not get any critical vulnerability reports in vulnerability scanners.
The minor version bump suggest it should be an easy one. Complete changelog here: https://github.com/gitpython-developers/GitPython/compare/3.1.27...3.1.32
Check List (Check all the applicable boxes)

[x] I sign off on contributing this submission to open-source
[ ] My code follows the code style of this project.
[ ] My change requires changes to the documentation.
[ ] I have updated the documentation accordingly.
[ ] All new and existing tests passed.
[ ] This PR does not contain plagiarized content.
[ ] The title of my pull request is a short description of the requested changes.

Note to reviewers
I am not sure exactly how to test this further than the automated tests. Let me know if you want further action from my side.
I did not get the tests running on my local machine - would need approval on the test run: https://github.com/permitio/opal/actions/runs/5956379336

Thanks @philipclaesson ! :)
@asafc / @roekatz what do you think ?


Can't get %ressdead to work

When using it such as: { "%ressdead('Resuscitate')" }, I can't seem to get this to work and need to manually cast Resuscitate, which is fine.
I wonder if local spell = spellResolve(args, Obj.key, false) is at issue?  We're passing in the spell as the first argument but it looks like this is getting overrwritten by the result of the call to spellResolve.  Should the spellResolve call change to actually use the spell passed into ressdead?
  ['ressdead'] = function(spell, target, sI, args)
    for i=1,#NeP.OM.unitFriend do
      local Obj = NeP.OM.unitFriend[i]
      local spell = spellResolve(args, Obj.key, false)
      if spell and Obj.distance < 40 and UnitIsPlayer(Obj.Key)
      and UnitIsDeadOrGhost(Obj.key) and UnitPlayerOrPetInParty(Obj.key) then
        if sI then SpellStopCasting() end
        Cast(spell, Obj.key, false)
        return true
      end
    end
  end,

spellResolve is need to verify if we actualy have it and convert to name, etc...
Will look into why is failing

We're wiping the OM (and list of dead units) every .25s.  And subsequently re-adding them via NeP.OM.addToOM.  Maybe there is some sort of race condition at play here?

Good point, will investigate

ive made the necessary changes so that dosent happens

Its %ressdead(SPELL)
Forgot to mention, sorry

Like "%ressdead('spell')"or"%ressdead(spell)"` ?

"%ressdead(spell)"

fixed? Its work?

untested, should be tho.

I've not been able to get this to work after combat is over in a dungeon run but would like confirmation from others.  I'm using it as follows in the out of combat section:
{ "%ressdead('Resuscitate')", (function() return F('auto_res') end) },

This was closed, but the following still does not work - tested in a raid last night.  After combat there were two dead people and it didn't do anything:
(this is in the out of combat' section:
{ "%ressdead(Resuscitate)", 'UI(auto_res)' },
Does the spell name need quotes around it?

@modhunter This may have been related to #164 which has been closed.

@Yobleed and I are still not able to make this one work even after the changes - has anyone been able to make this work?

nope not working


Make the bot post weekly events

online game night
in-person regular session

Will post a survey to see if people prefer the Apollo bot format over Discord's own event feature.


how to get confidence values of each keypoints for hand?

Have I written custom code (as opposed to using a stock example script provided in MediaPipe)
None
OS Platform and Distribution
Ubuntu 22.04
MediaPipe Tasks SDK version
No response
Task name (e.g. Image classification, Gesture recognition etc.)
hand pixel coordinates and its confidence
Programming Language and version (e.g. C++, Python, Java)
python
Describe the actual behavior
using hand_landmarks, there is no confidence of each keypoints but only score for all keypoints.
Describe the expected behaviour
I want to get each confidence for each keypoints to define occlusions.
Standalone code/steps you may have used to try to get what you need
And can get pixel cooridnates by multiplying image width and height?

Other info / Complete Logs
No response

Hello @JasOleander
HandLandmarker do not output any confidence score for each keypoint as the underlying models do not output such information. The model output can be found in the model card present in the models section of HandLandmarker or refer here.
Also, the API documentation for HandLandmarkerResult can help to find related information.


Azure Iot Hub <--> Azure Databricks

Thanks for the great tutorial.
Do you guys also have a tutorial for connecting Azure IoT Hub to Azure Databricks?
Thanks :-)

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

ID: 4137b0cc-898b-b25c-6321-fe98f22f803d
Version Independent ID: 4ec1e187-7e69-e5da-b6dd-cb03b6db9366
Content: Tutorial: Stream data into Azure Databricks using Event Hubs
Content Source: articles/azure-databricks/databricks-stream-from-eventhubs.md
Service: azure-databricks
GitHub Login: @lenadroid
Microsoft Alias: alehall

I found the answer myself... the event hub connection string can be found on the iot hub ==> endpoint ==> Built-in endpoints ==> Events

@candidson Sorry about the lack of a response here and great that you found this out yourself !


Missing English translations in the code list innovative-acquisition

In the code list innovative-acquisition there are missing English translations for codes prod-innov and proc-innov

source - https://github.com/OP-TED/eForms-SDK/blob/develop/codelists/innovative-acquisition.gc

Thanks for your feedback.
the English translations were indeed missing in the source we use for this code list: the Genericode file from https://op.europa.eu/en/web/eu-vocabularies/dataset/-/resource?uri=http://publications.europa.eu/resource/dataset/innovative-acquisition
But the labels are available in other formats, so we've added them.
This will be included in a next version of the SDK.

This was fixed in version 1.5.1 of the SDK.


Call-to-action entry produces accessibility issue

The new call-to-action entry is a <div> element but has a aria-label attribute and no role attribute which produces an accessibility  error.

Closed by https://github.com/camunda/improved-canvas/pull/44

This issue has not been fixed. aria-role doesn't exist. role should be used instead.


Vulnerability issue in langchain-pinecone 0.2.0 (https://github.com/advisories/GHSA-jwhx-xcg6-8xhj)

Checked other resources

[X] I added a very descriptive title to this issue.
[X] I searched the LangChain documentation with the integrated search.
[X] I used the GitHub search to find a similar question and didn't find it.
[X] I am sure that this is a bug in LangChain rather than my code.
[X] The bug is not resolved by updating to the latest stable version of LangChain (or the specific integration package).

Example Code
https://github.com/langchain-ai/langchain/blob/27a905672595f01a2321749194f77477071a74c2/libs/partners/pinecone/pyproject.toml#L25
Error Message and Stack Trace (if applicable)
Na
Description
https://github.com/langchain-ai/langchain/blob/27a905672595f01a2321749194f77477071a74c2/libs/partners/pinecone/pyproject.toml#L25
This issue is introduced by langchain-pinecone 0.2.0 which requires aiohttp = ">=3.9.5,<3.10"
aiohttp has vulnerability issue which fixed in 3.10.2 https://github.com/advisories/GHSA-jwhx-xcg6-8xhj
Could you please update aiohttp upper limit to fix this vulnerability? Thank you
System Info
Na

Please fix this issue as soon as possible, thanks.


Add monitoring feature

Hey guys, thanks for all you great work.
Are there any plans to support exporting stackdriver metrics export?
There is option in gcsfuse app that will enable export metrics via stackdriver.
Thanks in advance.

Hi @aliaksei-karneyeu we are working on estimating how to export these metrics on GKE. I will update with more information later. Can you share what gcsfuse metrics you would like to collect?

We are working on this branch to expose GCSFuse metrics via CSI.

In he mean time is this still valid? https://github.com/GoogleCloudPlatform/gcs-fuse-csi-driver/blob/main/docs/monitoring.md
Cause recently I don't fined anymore the metrics in the Metrics Explorer.

Hi @aliaksei-karneyeu, we now support Cloud Storage FUSE metrics and integration with our managed GKE CSI driver. These metrics are available free of charge through the Metrics Exploer. For details, see our Metrics Overview. We are working to add more details on how users can leverage these metrics.


[GPUTree] waterfall_plot requires a scalar base_values of the model output as the first parameter, but...

Sklearn, random forest for regression. I am using shap.explainers.GPUTree and manage to generate an instance of shap._explanation.Explanation.
The problem is, global visualizations do work (shap.plots.bar(shap_values), shap.summary_plot(shap_values, x_sub, featurenames)). However the waterfall and force plot visualization do not work!
For example shap.plots.waterfall(shap_values[0]) results in:

Exception: waterfall_plot requires a scalar base_values of the model output as the first parameter, but you have passed an array as the first parameter! Try shap.waterfall_plot(explainer.base_values[0], values[0], X[0]) or for multi-output models try shap.waterfall_plot(explainer.base_values[0], values[0][0], X[0]).

Hi. I have the same issue. Let me know if you find a way to plot an explanation for multiclass problem. Thx

Same issue here with a LGBM Classifier

Hi, I'm not entirely sure what the problem is, but Explainers seem to have trouble handling some Sklearn like models. Anyways, pretty sure that could be investigated further, but here's a workaround (not so clean but works):
import shap
from types import SimpleNamespace

model = None # insert your model here
inputs = None # insert your inputs as pandas Dataframe

explainer = shap.Explainer(model) # change explainer as needed
shap_values = explainer(inputs)

# workaround...
to_pass = SimpleNamespace(**{
                          'values': np.array(shap_values[0].values),
                          'data': np.array(shap_values[0].data),
                          'feature_names': inputs.columns,
                          'base_values': shap_values[0].base_values[0]
            })
shap.plots.waterfall(shap_values[0])

It seems this repo lacks maintenance

for 2 outputs I modified @rolare sample:
to_pass = SimpleNamespace(**{
                          'values': np.array(shap_values[0].values[:,0]),
                          'data': np.array(shap_values[0].data),
                          'feature_names': feature_names,
                          'base_values': shap_values[0].base_values[0]
            })

shap.plots.waterfall(to_pass)

to_pass = SimpleNamespace(**{
                          'values': np.array(shap_values[0].values[:,1]),
                          'data': np.array(shap_values[0].data),
                          'feature_names': feature_names,
                          'base_values': shap_values[0].base_values[0]
            })

shap.plots.waterfall(to_pass)

and I get two waterfalls as expected :tada:


[MOS-017] Data Field Overview

As a
user
I want
to see all my data fields in one place
so that
I can organize and manage them centrally.


Sync eng/common directory with azure-sdk-tools for PR 2412

Sync eng/common directory with azure-sdk-tools for PR https://github.com/Azure/azure-sdk-tools/pull/2412  See eng/common workflow

/check-enforcer override


refactor(debounce): switch debounce, throttle operator

closes #486
Expanded test coverage will follow as separate PR, for now simply switched existing tests.

That was fast! Merged with 58cc75c... thanks @kwonoj!


Fix the test failures on CI

Two test failures to fix:

Parallel test setup. This is breaking because Firedrake updated/fixed how they run parallel tests, so don't need to pin pytest to an old version. We just need to update our conftest.py to match theirs.
The Williamson5 timeseries test is hanging. This test was written a while ago so the style is a bit out of date. This should be updated to use the ComparisonMiniapp instead, which will calculate the error of paradiag vs the serial solution. Changing to Galewsky to avoid the nasty initial conditions of Williamson5 is also probably a good idea

These commits were originally made in PR #91, but that was branched off the memory profiling branch #90. This branch contains only the CI fixes so it can be merged straight into main.

looks fine to me


Handle more than 2 levels of inheritance (fixes nullref)

We were seeing an error when using MSTest with our hierarchy when trying to add ClassInit and Cleanup attributes.
Have re-created the problem in tests and fixed the code (and also fixed a typo in another test)

@MatthewSteeples FYI I also fixed this in my pr #660

So you did! Can't believe I missed that as I even skimmed through your PR looking to see if you'd made similar changes to me! Will close in favour of yours, no point the team reviewing 2 PRs!


How to debug a data matrix ErrorCorrection error?

I have found a data matrix and trying to decode it.
I tried using datamatrix-rs wit the following code:
fn main() {
    let input_str = std::fs::read_to_string("datamatrix.txt").unwrap();
    let pixels = input_str.chars().filter_map(|b| match b {
        '1' => Some(true),
        '0' => Some(false),
        _ => None,
    }).collect::<Vec<_>>();
    let width = 48;
    let data = datamatrix::DataMatrix::decode(&pixels, width);
    println!("{:?}", data.unwrap());
}`

Here is the contents of datamatrix.txt
101010101010101010101010101010101010101010101010
100101001000001001010001101000010101010010111101
110010100001000111101110111111011100101000001100
110001110000001011000011100110101100011100010001
101011100011100001000110110100011010111000011000
100010001001011011001101101100010000100010000101
100011000101100010011010111001110000110001101000
110000001001100001110111100110111100000010000001
100101000111001011100000100010100101010001011110
111000111111000001001011110011010110001111110101
110001100110001000001100100111011100011001100010
100011010001101100100001111010100000110100100111
111010110010111000011100101100111110101100011000
110010001001011010011101101101010100100010100001
111101100110000101101110101000000111011001100000
111111111111111111111111111111111111111111111111

Is there any way to debug the data matrix to tell where the input data is wrong?
Thanks.

Hi,
sorry for this super late answer. Seems I did not see the notification, will check later.
This is the your code visualized:

I tried different scanners and they also fail, but you might already know that.
An ErrorCorrection error signals that the error correction was either not done correctly when the datamatrix was encoded or there were too many errors, ie. 0 and 1 that are wrong detected. This is the best one can due I think since we can not say which 0 and 1 are wrong, only that there are too many (most likely).

Did take a closer look, might be helpful to you or not: The reason why error correction fails in this case is that the error locator polynomial has degree 14 but only two zeros (should be 14). The explanation stays the same, however.

@jannschu Thanks for the answer. Is there an easy way to produce that visualisation. I would like to check if I correctly set up the 1s and 0s. 😉

Yes, I used this code:
let (matrix_map, size) =
    datamatrix::placement::MatrixMap::try_from_bits(&pixels, width).unwrap();
println!("{}", matrix_map.bitmap().unicode());
println!("{:?}", size);

Can it be a problem that the data is actually inverted?

No. If you invert 0 and 1 the library will stop even earlier. In this case because the alignment pattern around is not correct (black "L" and the alternating lines).
For visualization you can either print dark on light or light on dark. But after detection this must be mapped correctly to true and false.

Great, thank you very much for support!


Errata in TBH_9.1a_S

Betzatá instead of Betzata

Josafat instead of Jehosafat

Ajab instead of Acab

Coregente instead of corregente

Evil-Merodach instead of Evil-Merodac

Thank you again @MisaelArciniega !!!
I have fixed all these.
You have a good eye for detail :-) And thank you for taking the time to report.
In case you want to suggest more fixes, the strings are here: https://crowdin.com/project/tbhist/es-ES

Fixed in TBH_9.1b_S


chore(typings): improve toPromise typings

Description:
Add overload signatures that use TypeScript's built-in PromiseConstructorLike and
PromiseLike types.
Related issue (if exists): #2904

Coverage remained the same at 97.465% when pulling 1624bcab66adcb9c08a127b542c289b61aa37d99 on cartant:issue-2904 into 5dbad94e25d24b7a2ae5b77d2b73b26b51435a53 on ReactiveX:master.

@benlesh Done. Do you want me to replace typeof Promise with PromiseConstructor, as it's a little clearer and Promise has been declared like this since TypeScript 2.0 (at least) was released?

Coverage remained the same at 97.465% when pulling 11f56112bb0aeba0927c6ca85410ed5689e805a9 on cartant:issue-2904 into 0939f61eaf131090724cd18012cea1891e311a52 on ReactiveX:master.


Feat/create more space

Select all and deselect all buttons have been replaced with a checkbox in the table header.
Padding on table rows have been minimized to create more space.
Metadata table visible under the editor has been moved above it and can be shown or hidden with a button.
Table header names and column values have been shortened, hovering on the table header will still show the full name.
Table row spacing can be altered in settings, font size is also changed with the spacing.

Currently spacing 0 is the default but I would change that to 1 as the default.
If 1 is the default then people that want it small can make it smaller but it generally has better accessibility for people with to click on the right item


Remove --base64 argument from now secret add

It's been broken on the server-side for quite a while now,
and on top of that it's never been clear as to how you
get the binary value back out from within the deployment.
For these reasons, let's get rid of the option altogether.
Users who need to encode binary data as the secret value
should encode to base64 manually. For example:
$ now secret add my-secret $(echo 'foo' | base64)

woah, we should have noticed this earlier. Thanks @TooTallNate!


Adds 'planner roster get' command. Closes #4395

Adds planner roster get command. Closes #4395

Nice work @nanddeepn, we'll review it asap!

@nanddeepn do you think you could merge with latest main and resolve the conflicts before we proceed with merging?
Besides that I think it is ready to be merged 🚀👍

Hi @Adam-it
Resolve the conflicts

Sorry @nanddeepn, you can blame me, but there are some merge conflicts again 😄

NP @milanholemans
Resolve the conflict 😄

merged manually


Segfault after exception within Python IO

While working on #111, I caused a segfault by returning a None instead of the read method. Somehow this lead the buffer to be freed twice. I don't have any more at this time.

I just tried to do a fresh install from master and there are some errors when I run make
src/av/option.c: In function ‘PyInit_option’:
src/av/option.c:1706:51: error: ‘AV_OPT_TYPE_DICT’ undeclared (first use in this function)
   __pyx_t_2 = __Pyx_PyInt_From_enum__AVOptionType(AV_OPT_TYPE_DICT); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 23; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                                   ^
src/av/option.c:1706:51: note: each undeclared identifier is reported only once for each function it appears in
src/av/option.c:1730:51: error: ‘AV_OPT_TYPE_IMAGE_SIZE’ undeclared (first use in this function)
   __pyx_t_2 = __Pyx_PyInt_From_enum__AVOptionType(AV_OPT_TYPE_IMAGE_SIZE); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 25; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                                   ^
src/av/option.c:1742:51: error: ‘AV_OPT_TYPE_PIXEL_FMT’ undeclared (first use in this function)
   __pyx_t_2 = __Pyx_PyInt_From_enum__AVOptionType(AV_OPT_TYPE_PIXEL_FMT); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 26; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                                   ^
src/av/option.c:1754:51: error: ‘AV_OPT_TYPE_SAMPLE_FMT’ undeclared (first use in this function)
   __pyx_t_2 = __Pyx_PyInt_From_enum__AVOptionType(AV_OPT_TYPE_SAMPLE_FMT); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 27; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                                   ^
src/av/option.c:1766:51: error: ‘AV_OPT_TYPE_VIDEO_RATE’ undeclared (first use in this function)
   __pyx_t_2 = __Pyx_PyInt_From_enum__AVOptionType(AV_OPT_TYPE_VIDEO_RATE); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                                   ^
src/av/option.c:1778:51: error: ‘AV_OPT_TYPE_DURATION’ undeclared (first use in this function)
   __pyx_t_2 = __Pyx_PyInt_From_enum__AVOptionType(AV_OPT_TYPE_DURATION); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                                   ^
src/av/option.c:1790:51: error: ‘AV_OPT_TYPE_COLOR’ undeclared (first use in this function)
   __pyx_t_2 = __Pyx_PyInt_From_enum__AVOptionType(AV_OPT_TYPE_COLOR); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                                   ^
src/av/option.c:1802:51: error: ‘AV_OPT_TYPE_CHANNEL_LAYOUT’ undeclared (first use in this function)
   __pyx_t_2 = __Pyx_PyInt_From_enum__AVOptionType(AV_OPT_TYPE_CHANNEL_LAYOUT); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                                   ^
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
make: *** [build] Error 1

The only difference from these instructions is that I am using pip to install pillow instead of pil. Anyone else experiencing this?

I'm not sure I understand this issue, is it still current?

I certainly don't understand it. I likely did at the time.


[feature request] on startup to restore the opened files (incl. unsaved files and unsaved untitled documents) of last session

VSCode Version: 1.4.0
OS Version: win 10 x64

Steps to Reproduce:

Currently there is only this pref in User Settings related to this :
 // Controls how folders are being reopened after a restart.
 // Select:
 // 'none' to never reopen a folder,
 // 'one' to reopen the last folder you worked on, or
 // 'all' to reopen all folders of your last session.
 "window.reopenFolders": "one",

i.e. VSCode can only reopen folders that they were open during the last session.
Also, as you quit VSCode, you get a prompt about whether you want to save unsaved files:
in any case, in the next program launch it will open with just a new empty file (instead of your files from your last session).

My feature request is to add a new pref to restore all files of your last session:
VSCode to periodically backup the current session,
user won't be asked to save unsaved file as he quits VSCode,
and on next startup VSCode to restore all files (incl. unsaved file and unsaved untitled documents) of last session.
This feature will protect your data/work.

Duplicate of this #8101  (most probably)

https://github.com/Microsoft/vscode/issues/101


Changeset updates

Description
Changeset docs and tidying

Add release/snapit documentation
Remove js shipit stacks
Update snapshot tag to be 'snapshot' insead of 'snapshot-release'
Go back to using the default GITHUB_TOKEN as a personal access token
is not worth it. Educating releasers that absent CI checks on version PRs is expected is easier than having to manage PAT tokens.

Whats all this about skipping CI checks and PATs?
As noted in the release doc, pull requests / commits authenticated with the default automatically provided GITHUB_TOKEN secret do not trigger downstream actions. The "Version Packages" PR and the commits therein are created with this token, which means there our CI actions do not get triggered. These CI actions are marked as required, so you end up with these checks being marked as required but never sent:

That's not ideal. I've tried to come up with a good way around this, and everything is worse than saying "yeah we know, use repo administrator privileges to force the merge even though those required checks are missing". Oh well.
Alternative "Fix" 1: Use a Personal Access Token (PAT)
By uploading a Personal Access Token and using its credentials when pushing commits the it should be possible to cause the  pull_request events to trigger, and thus make the CI checks run and be associated with the commits.
However this means that now I have to manually cycle an access token whenever it expires. Having a long expiry is a bad idea as it means that if the token gets compromised then somebody can act as me without my knowledge. I'd have to do this in every repo we want to use changesets in (quilt, web-configs, sewing-kit, loom) and that overhead multiplies quickly. I don't want to be a single point of failure, and having to teach folks "every few months you need to update this token across many repos" is a terrible experience.
Alternative "Fix 2: Use some common token
Riffing on the PAT idea, what if there was an organisation level secret that we could use? That'd be great but it does not exist. I've spoke to code-scale about this - they're understandably against using service accounts (having been moving away from that idea for years).  There was some ideas about them building some token rotator that could update something in an org-level secret that many repos could have access too (kinda like the NPM_TOKEN), but that'll require a lot of working. It's a nice idea for the future but it isn't ready now.
Alternative "Fix" 3: Trigger the CI actions manually
I thought it might be possible to trigger the CI actions manually. I couldn't get it work. I suspect that there's a difference between "this workflow is ran" and "this adds a check against a specific commit". I could do the former but not the latter.
Alternative "Fix" 4: Remove those checks from being "required checks"
Uugh, no. I don't want to remove the notion of "these are required" on PRs made by humans. These being required makes sure that PRs can't be merged in the cases where webhooks are delayed and it takes a while for the CI actions are triggered. I could not see a way of marking "commits by this person can bypass the checks requirement".
Current state of the world
I think telling people "yes we know these checks shall be absent on the Version PR, but we think that is ok and you should use your admin-ness to merge this PR" is better than "having personal access tokens across multiple repositories" or "losing 'required' marks on PRs made by humans".

Turns out explicitly setting the GITHUB_TOKEN was important - https://github.com/Shopify/quilt/commit/6a91db721fbec7de60c7d7ab8432c09397b24a5c


going to insert mode sometimes inserts a 'j'

I find this bug quite hard to reproduce as it appears intermittently. Often when I go into insert mode it also inserts a 'j', this happens not only when I press i but also when I press o.
Not sure if this is a known issue, if not let me know if you need some more data to help track it down.
(OS macOS catalina)

Would be useful to know your Oni2 config if that has anything custom in it.
Since its intermittent, if possible you could set the ONI2_DEBUG and ONI2_LOG_FILE variables and log out to a file whilst you use Oni2 normally, then hopefully catch it occurring. You'd then be able to see the log for that event. (https://onivim.github.io/docs/using-onivim/command-line#logging)

I can't repeat this anymore so best to close. Thanks for the offer to help.


Fixed #28360 -- Fixed crash of test runner with --debug-sql on fail/error in subTest.

https://code.djangoproject.com/ticket/28360

addSubTest() is called for all subtests just before stopTest(). Because of this, such test:
class ErrorSubTest(TestCase):
    def runTest(self):
        with self.subTest():
            Person.objects.filter(first_name='subtest-error').count()
            raise Exception

        Person.objects.filter(first_name='pass').count()

produces this (query executed after subtest is printed too):
======================================================================
ERROR: runTest (test_runner.test_debug_sql.TestDebugSQL.ErrorSubTest) (<subtest>)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/sergey/dev/django/tests/test_runner/test_debug_sql.py", line 44, in runTest
    raise Exception
Exception

----------------------------------------------------------------------
(0.000) SELECT COUNT(*) AS "__count" FROM "test_runner_person" WHERE "test_runner_person"."first_name" = 'subtest-error'; args=('subtest-error',)
(0.000) SELECT COUNT(*) AS "__count" FROM "test_runner_person" WHERE "test_runner_person"."first_name" = 'pass'; args=('pass',)

I don't think it could be improved somehow without monkey patching TestCase.subTest().


Bug - Safari does not support input[type=color]

Safari of 9.1 and older versions does not support inputs of color type – http://caniuse.com/#feat=input-color. So the color input looks this way

Arrrgg damn Safari. Well, I guess I have to use a polyfill for these sweet browsers. I put it on my list. Thanks for the issue :)


Reset lcdClientMock data after each test

Description:
Apparently the state of the lcdclientmock does not reset after an individual test. The error probably resides in vuex-setup.js.

I would like to close this issue, as with the new design for unit tests, we don't need vuex-setup.js anymore.


Kevo lock not showing up in HA

I've installed per the read me file, but I'm unable to find any mention of Kevo in Home Assistant.  I have kevo plus directory located in config/custom_components, and I have the proper lines in configuration.yaml, edited with my information.
Do I need to do anything else, other than restarting Home Assistant?

I have the same issue. Do you fix it?


why does tree shaking must work on one chunk?

src/main.js

function getUserInfo() {
    console.log('I,m smith')
}

function getGps() {
    console.log('116.222,90.233')
}

export {
    getUserInfo,
    getGps
}

src/index.js
import {
    getGps
}
from 'main.js'

getGps();

webpack.config.js
module.exports = {
     entry: {
           index: 'src/index.js',
           main: 'src/main.js'
     },
     plugins: [{
            new HtmlWebpackPlugin({
                  template: 'src/index',
                  filename:  'index.html',
                  chunks: ['index','main']
           })
     }]
})

why I  split index & main with two chunks , the tree shaking does not work, when I put them in one only entry, it works.
it takes me much time to find the problem, the webpack docs does not reflect it.

I experience the same behaviour, also someone on stackoverflow with the same issue http://stackoverflow.com/questions/38053664/webpack-2-is-it-bad-practice-to-use-vendors-bundle

@davyrolink Thanks! guy!


Don't redefine PIXI.animate.

If pixi-animate is included multiple times, don't redefine PIXI.animate, just export the existing version.

What's up with the Travis failing?

Fixed. Thanks @andrewstart for this.


mb-8838 Updating setup documentation from an onboarding perspective

Description
As a new member for the Roci team, I'm going through the initial setup documentation and updating things as I see necessary. In order to not duplicate effort, I'm collaborating with @felipe-lee by merging this into #7020 instead of master. My patch series will focus on the initial developer experience rather than any of the effort of refactoring or migrating folks over to using Nix.
The commit messages in this patch series will be granular and descriptive about what the changes are and why. This should help keep things tidy as I'm not entirely sure of the specific scope of all the changes.
Reviewer Notes
If you have the time, go through setting up this repository in a new directory or new machine. But the majority of the scrutiny should go to reading through the documentation and making sure that it makes sense.
Code Review Verification Steps

[x] Request review from a member of a different team.
[x] Have the Jira acceptance criteria been met for this change?

References

Jira story for this change

Thanks for the comments @felipe-lee. I'm currently leaving this as a draft until I completely go through the docs for now.


Error with .render()

DISCLAIMER
I'm new to openai and I'm currently just try to get example projects to run but so far it's not working.
Expected behavior
I want the game to render so I can see what's happening.
CODE
import gym
import universe

env = gym.make('flashgames.CoasterRacer-v0')
env.configure(remotes=1)
observation_n = env.reset()

while (True):
	action_n = [[('KeyEvent', 'ArrowUp', True)] for ob in observation_n]
	observation_n, reward_n, done_n, info = env.step(action_n)
	env.render()

Actual behavior
The program won't launch.
TERMINAL
python bot3.py
[2017-12-17 13:47:08,181] Making new env: flashgames.CoasterRacer-v0
[2017-12-17 13:47:08,185] Writing logs to file: /tmp/universe-10334.log
[2017-12-17 13:47:08,192] Ports used: [15904, 5900, 5901, 5902, 5903, 5904, 15900, 15901, 15902, 15903]
[2017-12-17 13:47:08,192] [0] Creating container: image=quay.io/openai/universe.flashgames:0.20.28. Run the same thing by hand as: docker run -p 5905:5900 -p 15905:15900 --cap-add SYS_ADMIN --ipc host --privileged quay.io/openai/universe.flashgames:0.20.28
[2017-12-17 13:47:09,644] Remote closed: address=localhost:15905
[2017-12-17 13:47:09,644] Remote closed: address=localhost:5905
[2017-12-17 13:47:09,644] At least one sockets was closed by the remote. Sleeping 1s...
universe-oe08aY-0 | Setting VNC and rewarder password: openai
universe-oe08aY-0 | [Sun Dec 17 12:47:09 UTC 2017] Waiting for /tmp/.X11-unix/X0 to be created (try 1/10)
universe-oe08aY-0 | [tigervnc]
universe-oe08aY-0 | [tigervnc] Xvnc TigerVNC 1.7.0 - built Sep  8 2016 10:39:22
universe-oe08aY-0 | [tigervnc] Copyright (C) 1999-2016 TigerVNC Team and many others (see README.txt)
universe-oe08aY-0 | [tigervnc] See http://www.tigervnc.org for information on TigerVNC.
universe-oe08aY-0 | [tigervnc] Underlying X server release 11400000, The X.Org Foundation
universe-oe08aY-0 | [tigervnc]
universe-oe08aY-0 | [tigervnc] Initializing built-in extension VNC-EXTENSION
universe-oe08aY-0 | [tigervnc] Initializing built-in extension Generic Event Extension
universe-oe08aY-0 | [tigervnc] Initializing built-in extension SHAPE
universe-oe08aY-0 | [tigervnc] Initializing built-in extension MIT-SHM
universe-oe08aY-0 | [tigervnc] Initializing built-in extension XInputExtension
universe-oe08aY-0 | [tigervnc] Initializing built-in extension XTEST
universe-oe08aY-0 | [tigervnc] Initializing built-in extension BIG-REQUESTS
universe-oe08aY-0 | [tigervnc] Initializing built-in extension SYNC
universe-oe08aY-0 | [tigervnc] Initializing built-in extension XKEYBOARD
universe-oe08aY-0 | [tigervnc] Initializing built-in extension XC-MISC
universe-oe08aY-0 | [tigervnc] Initializing built-in extension XINERAMA
universe-oe08aY-0 | [tigervnc] Initializing built-in extension XFIXES
universe-oe08aY-0 | [tigervnc] Initializing built-in extension RENDER
universe-oe08aY-0 | [tigervnc] Initializing built-in extension RANDR
universe-oe08aY-0 | [tigervnc] Initializing built-in extension COMPOSITE
universe-oe08aY-0 | [tigervnc] Initializing built-in extension DAMAGE
universe-oe08aY-0 | [tigervnc] Initializing built-in extension MIT-SCREEN-SAVER
universe-oe08aY-0 | [tigervnc] Initializing built-in extension DOUBLE-BUFFER
universe-oe08aY-0 | [tigervnc] Initializing built-in extension RECORD
universe-oe08aY-0 | [tigervnc] Initializing built-in extension DPMS
universe-oe08aY-0 | [tigervnc] Initializing built-in extension X-Resource
universe-oe08aY-0 | [tigervnc] Initializing built-in extension XVideo
universe-oe08aY-0 | [tigervnc] Initializing built-in extension XVideo-MotionCompensation
universe-oe08aY-0 | [tigervnc] Initializing built-in extension GLX
universe-oe08aY-0 | [tigervnc]
universe-oe08aY-0 | [tigervnc] Sun Dec 17 12:47:09 2017
universe-oe08aY-0 | [tigervnc]  vncext:      VNC extension running!
universe-oe08aY-0 | [tigervnc]  vncext:      Listening for VNC connections on all interface(s), port 5900
universe-oe08aY-0 | [tigervnc]  vncext:      created VNC server for screen 0
universe-oe08aY-0 | [tigervnc] [dix] Could not init font path element /usr/share/fonts/X11/Type1/, removing from list!
universe-oe08aY-0 | [tigervnc] [dix] Could not init font path element /usr/share/fonts/X11/75dpi/, removing from list!
universe-oe08aY-0 | [tigervnc] [dix] Could not init font path element /usr/share/fonts/X11/100dpi/, removing from list!
universe-oe08aY-0 | [Sun Dec 17 12:47:10 UTC 2017] [/usr/local/bin/sudoable-env-setup] Disabling outbound network traffic for none
universe-oe08aY-0 | [init] [2017-12-17 12:47:10,056] Launching system_diagnostics_logger.py, recorder_logdir=/tmp/demo
universe-oe08aY-0 | [init] [2017-12-17 12:47:10,070] Launching reward_recorder.py, recorder_logdir=/tmp/demo
universe-oe08aY-0 | [init] [2017-12-17 12:47:10,071] Launching vnc_recorder.py, recorder_logdir=/tmp/demo
universe-oe08aY-0 | [init] [2017-12-17 12:47:10,074] PID 55 launched with command ['sudo', '-H', '-u', 'nobody', 'DISPLAY=:0', 'DBUS_SESSION_BUS_ADDRESS=/dev/null', '/app/universe-envs/controlplane/bin/controlplane.py', '--rewarder-port=15901']
universe-oe08aY-0 | [init] [2017-12-17 12:47:10,145] init detected end of child process 58 with exit code 0, not killed by signal
universe-oe08aY-0 | WebSocket server settings:
universe-oe08aY-0 |   - Listen on :5898
universe-oe08aY-0 |   - Flash security policy server
universe-oe08aY-0 |   - No SSL/TLS support (no cert file)
universe-oe08aY-0 |   - proxying from :5898 to localhost:5900
[2017-12-17 13:47:10,645] Remote closed: address=localhost:5905
[2017-12-17 13:47:10,646] Remote closed: address=localhost:15905
[2017-12-17 13:47:10,646] At least one sockets was closed by the remote. Sleeping 1s...
universe-oe08aY-0 | [nginx] 2017/12/17 12:47:10 [error] 65#65: *1 connect() failed (111: Connection refused) while connecting to upstream, client: <IP_ADDRESS>, server: , request: "GET / HTTP/1.1", upstream: "http://<IP_ADDRESS>:15901/", host: "<IP_ADDRESS>:10003"
universe-oe08aY-0 | [nginx] <IP_ADDRESS> - openai [17/Dec/2017:12:47:10 +0000] "GET / HTTP/1.1" 502 182 "-" "-"
universe-oe08aY-0 | [tigervnc]
universe-oe08aY-0 | [tigervnc] Sun Dec 17 12:47:10 2017
universe-oe08aY-0 | [tigervnc]  Connections: accepted: <IP_ADDRESS>::39334
universe-oe08aY-0 | [init] [2017-12-17 12:47:10,890] init detected end of child process 16 with exit code 0, not killed by signal
universe-oe08aY-0 | [vnc_recorder] [2017-12-17 12:47:11,342] Listening on <IP_ADDRESS>:5899
universe-oe08aY-0 | [reward_recorder] [2017-12-17 12:47:11,386] Listening on <IP_ADDRESS>:15898
[2017-12-17 13:47:11,647] Using the golang VNC implementation
[2017-12-17 13:47:11,647] Using VNCSession arguments: {'subsample_level': 2, 'start_timeout': 7, 'fine_quality_level': 50, 'encoding': 'tight'}. (Customize by running "env.configure(vnc_kwargs={...})"
universe-oe08aY-0 | [tigervnc]
universe-oe08aY-0 | [tigervnc] Sun Dec 17 12:47:11 2017
universe-oe08aY-0 | [tigervnc]  Connections: closed: <IP_ADDRESS>::39334 (Clean disconnection)
universe-oe08aY-0 | [tigervnc]  EncodeManager: Framebuffer updates: 0
universe-oe08aY-0 | [tigervnc]  EncodeManager:   Total: 0 rects, 0 pixels
universe-oe08aY-0 | [tigervnc]  EncodeManager:          0 B (1:-nan ratio)
universe-oe08aY-0 | [nginx] 2017/12/17 12:47:11 [info] 65#65: *1 client <IP_ADDRESS> closed keepalive connection
[2017-12-17 13:47:11,653] [0] Connecting to environment: vnc://localhost:5905 password=openai. If desired, you can manually connect a VNC viewer, such as TurboVNC. Most environments provide a convenient in-browser VNC client: http://localhost:15905/viewer/?password=openai
2017/12/17 13:47:11 I1217 13:47:11.653738 10334 gymvnc.go:417] [0:localhost:5905] opening connection to VNC server
universe-oe08aY-0 | [tigervnc]  Connections: accepted: <IP_ADDRESS>::39354
2017/12/17 13:47:11 I1217 13:47:11.659805 10334 gymvnc.go:550] [0:localhost:5905] connection established
universe-oe08aY-0 | [tigervnc]  SConnection: Client needs protocol version 3.8
universe-oe08aY-0 | [tigervnc]  SConnection: Client requests security type VncAuth(2)
universe-oe08aY-0 | [tigervnc]  VNCSConnST:  Server default pixel format depth 24 (32bpp) little-endian rgb888
universe-oe08aY-0 | [tigervnc]  VNCSConnST:  Client pixel format depth 24 (32bpp) little-endian bgr888
Traceback (most recent call last):
  File "bot3.py", line 11, in <module>
    env.render()
  File "/home/viktor/gym/gym/core.py", line 150, in render
    return self._render(mode=mode, close=close)
  File "/home/viktor/gym/gym/core.py", line 286, in _render
    return self.env.render(mode, close)
  File "/home/viktor/gym/gym/core.py", line 150, in render
    return self._render(mode=mode, close=close)
  File "/home/viktor/universe/universe/wrappers/render.py", line 52, in _render
    return self.env.render(mode=mode, *args, **kwargs)
  File "/home/viktor/gym/gym/core.py", line 150, in render
    return self._render(mode=mode, close=close)
  File "/home/viktor/gym/gym/core.py", line 286, in _render
    return self.env.render(mode, close)
  File "/home/viktor/gym/gym/core.py", line 150, in render
    return self._render(mode=mode, close=close)
  File "/home/viktor/universe/universe/envs/vnc_env.py", line 552, in _render
    self.vnc_session.render(self.connection_names[0])
go_vncdriver.Error: /tmp/pip-build-f9nV2f/go-vncdriver/.build/src/github.com/openai/go-vncdriver/main.go:387: go_vncdriver was installed without OpenGL support. See https://github.com/openai/go-vncdriver for details on how debug.
[2017-12-17 13:47:11,675] Killing and removing container: id=7cfab68a8072ea022ee675590972a41a8293025a1a215d0398ccd5895883e54e
[2017-12-17 13:47:11,687] [0:localhost:5905] Waiting on rewarder: failed to complete WebSocket handshake. Retry in 1s (slept 0s/7s): connection was closed uncleanly (peer dropped the TCP connection without previous WebSocket closing handshake)
[2017-12-17 13:47:12,689] [0:localhost:5905] Waiting on rewarder: failed to establish rewarder TCP connection. Retry in 3s (slept 1s/7s): Connection was refused by other side: 111: Connection refused.

Versions
$ uname -a ; python --version; pip show universe gym tensorflow numpy go-vncdriver Pillow
Linux viktor 4.10.0-42-generic #46~16.04.1-Ubuntu SMP Mon Dec 4 15:57:59 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
Python 2.7.12
Name: universe
Version: 0.21.5
Summary: Universe: a software platform for measuring and training an AI's general intelligence across the world's supply of games, websites and other applications.
Home-page: https://github.com/openai/universe
Author: OpenAI
Author-email<EMAIL_ADDRESS>License: UNKNOWN
Location: /home/viktor/universe
Requires: autobahn, docker-py, docker-pycreds, fastzbarlight, go-vncdriver, gym, Pillow, PyYAML, six, twisted, ujson
---
Name: gym
Version: 0.9.3
Summary: The OpenAI Gym: A toolkit for developing and comparing your reinforcement learning agents.
Home-page: https://github.com/openai/gym
Author: OpenAI
Author-email<EMAIL_ADDRESS>License: UNKNOWN
Location: /home/viktor/gym
Requires: numpy, requests, six, pyglet
---
Name: tensorflow
Version: 1.4.1
Summary: TensorFlow helps the tensors flow
Home-page: https://www.tensorflow.org/
Author: Google Inc.
Author-email<EMAIL_ADDRESS>License: Apache 2.0
Location: /home/viktor/.local/lib/python2.7/site-packages
Requires: mock, tensorflow-tensorboard, numpy, backports.weakref, wheel, six, protobuf, enum34
---
Name: numpy
Version: 1.13.3
Summary: NumPy: array processing for numbers, strings, records, and objects.
Home-page: http://www.numpy.org
Author: NumPy Developers
Author-email<EMAIL_ADDRESS>License: BSD
Location: /home/viktor/.local/lib/python2.7/site-packages
Requires:
---
Name: go-vncdriver
Version: 0.4.19
Summary: UNKNOWN
Home-page: UNKNOWN
Author: UNKNOWN
Author-email: UNKNOWN
License: UNKNOWN
Location: /home/viktor/.local/lib/python2.7/site-packages
Requires: numpy
---
Name: Pillow
Version: 4.3.0
Summary: Python Imaging Library (Fork)
Home-page: https://python-pillow.org
Author: Alex Clark (Fork Author)
Author-email<EMAIL_ADDRESS>License: Standard PIL License
Location: /home/viktor/.local/lib/python2.7/site-packages
Requires: olefile

SOLUTION
I didn't build the go-vncdriver.
If anyone else has this issue just follow these instructions go-vncdriver


feat: Added net4.5.1 target to Attributes library.

Closes #31
Naive way, not tested

Sorry, but I don't think it makes sense to add a net451 target:

net451 is way out of support now
net451 doesn't support .NET Standard 2.0, so you can't use source generators in these projects

net451 is way out of support now

Based on my experience, a large number of people still use it. This is the minimum version, which is still easy to download from the official website. In addition, the dotnet sdk even supports net4.0 (but there will be problems with local builds in VS, for example). I can replace this with .Net 4.6.2 like many popular packages do. In any case, it would make sense, since the .Net Framework fully supports .Net Standard 2.0 only with .Net 4.7.2 without unnecessary dependencies. Therefore, it is recommended to specify an explicit .Net Framework TargetFramework to avoid these dependencies when used in a project with .Net Framework below 4.7.2.

net451 doesn't support .NET Standard 2.0, so you can't use source generators in these projects

I want to note that the fix is aimed at dll with attributes. At the same time, the generator has no restrictions and depends only on the sdk, and can be run even in Net 3.5. This has been accurately tested by me in a series of my source generators.

Ok, you twisted my arm 😛 Created #45 to do it though, as the targetframework definition was wrong here 🙂


call_update() compatible with get_data()

call_update() need to accommodate simple objects as well.
In the current get_data(), the ... argument should accommodate two inputs:

A logical expression, just like what found in browse()
An object produced by browse(), or a call to browse().

Currently, call_update() returns an NA if the input is an single string of characters.

Issue solved - the integration between call_update and concatenate_queries accommodates points 1 and 2.


Fix a crash on settings reload

07d58a8 contains a regression where the settings' Themes() property is
accessed without checking whether it's a nullptr. This can happen because
the invalid settings modal is shown with a empty settings model object.
This commit fixes the issue by deferring the update of _settings until
after we ensured that the _settings object is valid (besides warnings).
Closes #13543
Validation Steps Performed

Replace any string value with 123
Application doesn't crash ✅

@zadjii-msft @carlos-zamora With the issue Carlos found, I've chosen a new approach which should also work. This slightly changes the behavior of WT however: From now on we'll not reload any settings until after the settings.json could be successfully parsed.

@zadjii-msft @carlos-zamora With the issue Carlos found, I've chosen a new approach which should also work. This slightly changes the behavior of WT however: From now on we'll not reload any settings until after the settings.json could be successfully parsed.

Hmm... That's not noticeable right? A user generally experiences the following behavior after updating the settings.json...

no errors in the JSON --> hot reload
lingering comma --> we're smart and we ignore the comma --> hot reload
valid JSON, but wrong type for a setting --> ignore the setting
JSON cannot be read --> fall back to defaults.json

Hmm... That's not noticeable right? [...]

valid JSON, but wrong type for a setting --> ignore the setting
JSON cannot be read --> fall back to defaults.json

I think the only reason it's generally not very noticeable is because we call _root->SetSettings(_settings, true) only if the settings reload was successful.
But if you check AppLogic.cpp you can see how _settings is used in a lot of other places as well. I get the feeling that this PR might fix a number of subtle bugs and not just #13543. For instance AppLogic::FindTargetWindow depends on _settings, but before this PR _settings might have been invalid.


🚧 Add new column layout templates

Purpose
Users have expressed a need to create some page with multiple columns with various
widths.
Proposal
This adds new templates for various columns variants:

[x] Two columns 50/50;
[x] Three columns 33/33;
[ ] Two columns 75/25;
[ ] Two columns 25/75;

And some CSS to adjust column contents to fit their column width.
This is a work in progress, published sooner to allow some reviews before continuing since it involves a lot of CSS adjustments.
There is a huge plugin variance and plugins layouts have been almost exclusively to be in 100% container width, without adjustments a lot of plugins looks ugly or are even broken (with contents overflowing other contents, etc..).
Also, i started this branch with a minor Sass fix about deprecation warning for division operator with recent Sass implementation from Dart Sass. It has been done in a first distinct commit.
Screenshots
Some screenshot will illustrate the final render of templates with finished CSS adjustments. There will be only screenshots for small and large breakpoints.
There screenshots have been done with homemade pages using the new templates and filled with a full variances of each allowed plugins which i used for prototyping and performing required CSS adjustments.
Three columns 33/33
Large

Small

@jbpenrath

Just a suggestion, what do you think to name templates as..
Current template names comes from a @sampaccoud quick idea, but i prefer yours, i will try to adopt it.

Another question : currently as you are working on multiple columns, it seems simpler to override variant styles from _multiple-columns.scss but in future development I wonder it would be better to write those styles within the variant stylesheet ?

I understand this idea to keep every related plugin styles in its own source, but we are using ITCSS structure where objects are loaded before layout components, plugins are objects and single/multiple columns are layout components. The second one use object and may be able to override them.
If you change a template width, like finally turning the 33% to a 15% (just for example since it won't never occurs), you don't want to have to edit the template components and then goes to the plugin to change adjustment according to the component.
Sass object provide basic working styles and then components adjust them or not depending needing.

Current template names comes from a @sampaccoud quick idea, but i prefer yours, i will try to adopt it.

ah d'accord, ça balance :hushed:

@jbpenrath Just saw this in the builded CSS for the common basic selector i've done:
.multiple-columns__w25 .blogpost-glimpse, .multiple-columns__w25 .blogpost-mini, .multiple-columns__w25 .blogpost-favorite, .multiple-columns__w25 .category-glimpse, .multiple-columns__w25 .course-glimpse, .multiple-columns__w25 .course-glimpse__large, .multiple-columns__w25 .glimpse-card_square, .multiple-columns__w25 .glimpse-badge, .multiple-columns__w25 .glimpse-quote, .multiple-columns__w25 .glimpse-row_half, .multiple-columns__w25 .glimpse-row_full, .multiple-columns__w25 .nested-item--list.nested-item--0, .multiple-columns__w25 .organization-glimpse, .multiple-columns__w25 .organization-card, .multiple-columns__w25 .organization-row, .multiple-columns__w25 .person-glimpse, .multiple-columns__w25 .program-glimpse, .multiple-columns__w33 .blogpost-glimpse, .multiple-columns__w33 .blogpost-mini, .multiple-columns__w33 .blogpost-favorite, .multiple-columns__w33 .category-glimpse, .multiple-columns__w33 .course-glimpse, .multiple-columns__w33 .course-glimpse__large, .multiple-columns__w33 .glimpse-card_square, .multiple-columns__w33 .glimpse-badge, .multiple-columns__w33 .glimpse-quote, .multiple-columns__w33 .glimpse-row_half, .multiple-columns__w33 .glimpse-row_full, .multiple-columns__w33 .nested-item--list.nested-item--0, .multiple-columns__w33 .organization-glimpse, .multiple-columns__w33 .organization-card, .multiple-columns__w33 .organization-row, .multiple-columns__w33 .person-glimpse, .multiple-columns__w33 .program-glimpse, .multiple-columns__w50 .blogpost-glimpse, .multiple-columns__w50 .blogpost-mini, .multiple-columns__w50 .blogpost-favorite, .multiple-columns__w50 .category-glimpse, .multiple-columns__w50 .course-glimpse, .multiple-columns__w50 .course-glimpse__large, .multiple-columns__w50 .glimpse-card_square, .multiple-columns__w50 .glimpse-badge, .multiple-columns__w50 .glimpse-quote, .multiple-columns__w50 .glimpse-row_half, .multiple-columns__w50 .glimpse-row_full, .multiple-columns__w50 .nested-item--list.nested-item--0, .multiple-columns__w50 .organization-glimpse, .multiple-columns__w50 .organization-card, .multiple-columns__w50 .organization-row, .multiple-columns__w50 .person-glimpse, .multiple-columns__w50 .program-glimpse
Ok, this is a problem. I will use an additional classname for this on 25+33+50 columns like multiple-columns__short, it won't reduce the plugins variants but at least it won't rewrite them three times.

@jbpenrath @sampaccoud Just to let you know we end in this common selector now:
.multiple-columns__short .blogpost-glimpse, .multiple-columns__short .blogpost-mini, .multiple-columns__short .blogpost-favorite, .multiple-columns__short .category-glimpse, .multiple-columns__short .course-glimpse, .multiple-columns__short .course-glimpse__large, .multiple-columns__short .glimpse-card_square, .multiple-columns__short .glimpse-badge, .multiple-columns__short .glimpse-quote, .multiple-columns__short .glimpse-row_half, .multiple-columns__short .glimpse-row_full, .multiple-columns__short .nested-item--list.nested-item--0, .multiple-columns__short .organization-glimpse, .multiple-columns__short .organization-card, .multiple-columns__short .organization-row, .multiple-columns__short .person-glimpse, .multiple-columns__short .program-glimpse
It reduces to three times against original selector from my previous comment. It still a little big, but i think it's a good middle between short selector and maintenance. Because i could split it in three shorter selector packs, but there will be needed to maintain them all instead of a single one, what do you think about it ?

I've pushed a finished state with all adjustments for all template columns and added the screenshots. I still need to run the quality tasks for linting frontend etc..


Allow 'doc' to use the same icon as 'docs'

[x] I'm sure this issue is not a duplicate?
[ ] I want to create an icon request(if not, remove these lines below):

Currently, only naming a documentation folder docs will give it a custom icon. Using just doc doesn't work.
Rather than discussing the one, true way of using plurals in file/directory names, I just want to point out several instances where vscode-icons already supports both the singular and plural names:

font, fonts
image, images
icon, icons
include, includes
locale, locales
log, logs
package, packages
plugin, plugins
script, scripts
source, sources
style, styles
test, tests
tool, tools

Hopefully this is a simple request. Can we add 'doc' to the list of names that uses the custom documentation folder icon?

This should be an quite easy task, as long as there is no other meaning for doc. If you like to, you can also file that pr. :)

Sorry @jens1o, I didn't see that you were assigned! 😱


Improve README structure

Followed the recommendations from the Github Guides.
PR for Issue #941.
I read and tried to follow the instructions on creating relative links to markdown files for the gitbook. Let me know if I missed something.

This change is

@justin808 @Judahmeek Basically, what I did was to divide the documentation into smaller chunks to improve its readability.
From the Github Guides:

Your README should contain only the necessary information for developers to get started using and contributing to your project.

I also kept the sales pitch in the README.

Coverage remained the same at ?% when pulling 939faa7138405524573956dd33c98e1836b477d9 on rodrigobdz:master into 383de73e76e0347b9d58508e63f937cfbca6ca40 on shakacode:master.

@rodrigobdz can you please rebase on top of master.

@justin808 I just merged the latest master changes into the PR.

Closing in favor of PR #1092.


[HOPS-1551] System users x.509 v2

Make sure there is no duplicate PR for this issue

Please check if the PR fulfills these requirements

[ ] Tests for the changes have been added and passed (for bug fixes / features)
[x] HOPS JIRA issue has been opened for this PR
[x] All commits have been squashed down to a single commit
[x] The commit message has the following format: [HOPS-XXX] message

Post a link to the associated JIRA issue
https://hopshadoop.atlassian.net/browse/HOPS-1551

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
Improvement

What is the new behavior (if this is a feature change)?
Each system user has its own set of x.509 material. Hops will load the respective keystore and truststore for the user.

Does this PR introduce a breaking change? (What changes might users need to make in their application due to this PR?)
Keystores location is no longer available in ssl-server.xml and system user material are loaded from $HOME/.hops_tls

Other information:

Jenkins test this please

PR is closed and a new one is opened https://github.com/hopshadoop/hops/pull/796 when we switched to Hadoop 3.2.x


⚠ Bofrost.at has degraded performance

In d3a42fe, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 2130 ms

Resolved: Bofrost.at performance has improved in 55d0b0c.


Bug: "Key" commands end up with key being "held down"

Describe the bug
I'm using the button entity created by a "key" command in HASS Agent on a Home Assistant dashboard. When I press said button it sends they key command correctly however it then appears to be continually sending it, almost like holding the key down on a real keyboard. Not 100% sure if this is a Home Assistant issue or not but I don't have issues with non HASS Agent Home Assistant buttons triggering more than once so I think it's something here.
To Reproduce
Steps to reproduce the behavior:

Add a "key" command with the "button" entity type
Add the button in Home Assistant to a dashboard
Press the button on the dashboard

Expected behavior
A single key press to happen per press of the button on the dashboard.
Screenshots
If applicable, add screenshots to help explain your problem.
Misc info (please complete the following information):

Windows build (ideally screenshot/info of winver.exe output):

Windows' UI language: English UK

HASS.Agent version: 2022.14.0

Please check what's applicable (multiple answers possible):

[x] Installed via installer
[ ] Installed manually
[x] Problem occurs in HASS.Agent
[ ] Problem occurs in Satellite Service

Additional context
Add any other context about the problem here.
Logs
If possible, please provide the logs of HASS.Agent and - if applicable - the Satellite Service. You can find HASS.Agent's logs by going to the main window, then Configuration -> Logging -> open logs folder. The Satellite Service's logs are in the same window, but the Satellite Service tab -> open service logs folder. If you want, you can mail them to<EMAIL_ADDRESS>

This is weirdly working in a notepad window but whenever I have steam big picture open and try to use it in a game it gets stuck 🤔

Some logs :)
[2023-07-04] HASS.Agent_20230704.log

I've been able to reproduce this on staging-main branch.
Executing the command on notepad++ works as expected but doing the same with Steam BigPicture results in behaviour described by you.
I wouldn't go (yet) so far as to say it's HASS.Agent's fault as it's using Windows API for key emulation but that's an improper behaviour nevertheless - I'll look into it.

Same problem here with media keys.
I've an automation running what sends a media pause command when the mic is open for a webcall and always my 'Alt" key is stuck after the agent sends the command! Its very annoying!

When can we expect this in a new version?

+1

Silly q, but wahts the easiest way for me to run the beta https://github.com/hass-agent/HASS.Agent/pull/1 since it says it fixes this problem?

Silly q, but wahts the easiest way for me to run the beta https://github.com/hass-agent/HASS.Agent/pull/1 since it says it fixes this problem?

The issue you've linked is a different repo. If you to that repo and find the releases section you can grab the installer. I think there's some migration instructions in the readme to follow first though.


Segmentation Fault

Hi @dmilkie ,
I have successfully installed the simucell3d.
But whenever I ran any example files, it always halted by Segmentation fault (core dumped).
simucell3d was run on Ubuntu 22.04.4 LTS.
A command I used:
./simucell3d ../parameters_tube.xml

Are you running using the Docker image?

I haven't used docker yet.


CC1312 PANID - Get/Set IEEE 802.15.4 PAN ID on the driver -

Currently propietary mode doens't allow to set the PAN ID on the RF Core driver level. We need to workaround this manually.

Pan ID is not handled by us directly, and CC1312 doesn't support it natively.


Updated russian translation

Contribution Type: cosmetic
This pull request affects the following areas:

[x] Front-End
[ ] Builder
[ ] Build Plugins

In raising this pull request, I confirm the following (please check boxes):

[x] I have read and understood the contributing guidelines?
[x] I have checked that another pull request for this purpose does not exist.
[x] I have considered, and confirmed that this submission will be valuable to others.
[x] I have created or updated the relevant documentation for this change on the PHPCI Wiki.
[x] Do the PHPCI tests pass?

https://github.com/Block8/PHPCI/pull/1102 and https://github.com/Block8/PHPCI/pull/1151


False value in where clause ignored

I'm running in to an issue I'll detail with a brief example:
// Example model
type Example struct {
    gorm.Model
    Value bool
}

examples := []Example{}

// Expect to get all examples where Value = true (WORKS AS EXPECTED)
gorm.Where(&Example{Value: true}).Find(&examples)

// Example of SQL executed
SELECT * FROM `examples` WHERE `examples`.`value` = true AND `examples`.`deleted_at` IS NULL

// Expect to get all examples where Value = false (DOESN'T WORK)
gorm.Where(&Example{Value: false}).Find(&examples)

// Example of SQL executed
SELECT * FROM `examples` WHERE `examples`.`deleted_at` IS NULL

I have no idea why using where in this way works only when value is set true.

In go, &Example{Value: false} is the same as &Example{}, we cannot distinguish, zero value will not be regarded as a condition.


[docs] add docs for the mysql tables without primary keys

https://github.com/ververica/flink-cdc-connectors/pull/2227#issue-1767023563

#2227 (comment)

hi, two pr correspond to different branches.

#2227 (comment)

hi, two pr correspond to different branches.

thanks，I missed it


wrong attribute are visible on layered navigation

Bug report
Title
wrong attribute are visible on layered navigation
Issue Description
In layered Navigation, only those attribute should be visible that match the below condition
https://prnt.sc/yi8fo7
https://prnt.sc/yi8ifn
Preconditions
1. framework Version- master

Steps to reproduce
1. step1- create a category & select only one attribute(price) inside the category under layered navigation
2. step2- add product inside this category.
3. step3- go to the category page

Expected result

only one attribute (price) should be visible under the category filter

Actual result

all the attribute are visible that exist in the product

Hi @vaishaliwebkul
The attribute will show there according to product and category that's why two attributes are visible.

@rahulshukla-webkul
Then what is the use of Filterable Attribute inside category?????

i agree with @vaishaliwebkul only attributes that are defined in the category should be displayed in the filter section.