MINOR: fix ZkMetadataCache package name

More detailed description of your change,
if necessary. The PR title and PR message become
the squashed commit message, so use a separate
comment to ping reviewers.
The package name is not correct!

ping @cmccabe , I'm also thinking about moving MetadataCache into kafka.server.metadata , WDYT?


Give Thea org admin permission

/cc @theadactyl

/lgtm
/approve
Thank you!

/hold

I also updated the PR to remove Thea from the members list and checked Thea was already in the allowlist for admins: https://github.com/kubeflow/internal-acls/blob/2030ec2d5e59cf98e554cd3a5a2318fb26c167bf/github-orgs/manifests/validate_config.py#L32-L34

/unhold
/lgtm


Add gops to cilium-cni

Failure to start gops is considered non-fatal here since this feature
should be mostly useful to debug hangs or weird condition and trying to
avoid breaking container creation if gops init fails seems reasonable.
Signed-off by: Jean Raby<EMAIL_ADDRESS>

This change is

test-me-please


Animations on Remove item

Hi, thanks for such an amazing package, I've been using this a lot.
Is there any way to handle animations when an item is remove from the list?

Hey! Totally agree...this package is working out great. I just switched over from implicitly_animated_reorderable_list, as I was having some issues with performance of my long lists. But, I'm struggling to get the animations to work when items are added and removed from the list.
I saw another issue which suggested that removing AnimationLimiter will help to animate items as they get added/re-added to the list. But still, when items get removed they just disappear. Any advice? Or can the animation of items that are added and removed from the list be added as a feature?

Hey I am facing the same issue, is there any fix?

This package only manages staggered items appearance animations.
It has no plan to manage animations on items removal.


Image support webp (opening and drop)

Right now it supportts png, jpeg...
I think it would be only adding it to the list of allowed extensions

I remembered that I modified it some time ago...
I've tried it and it works for me, doesn't it for you @brauliodiez ?
accept="image/*"  in \src\common\components\inline-edit\components\image-upload.widget.tsx


added favicon + header background

change -1 favicon

added favicon in tab bar

change -2 header of tweets

added background color to pink
changed font-size (kept 1.5rem)

Fatal error: Uncaught DivisionByZeroError: Division by zero in C:\xampp\htdocs\TwitterSentimentAnalysis-master1\index.php:58 Stack trace: #0 {main} thrown in C:\xampp\htdocs\TwitterSentimentAnalysis-master1\index.php on line 58

@maskumambang202 hey i still remembered that i had nothing changed other than the stylem


Unable to delete and lock a user

Some questions that you might want to take a look into:

I am currently an admin. Why can't I "lock" a user? And what does the "Lock" do?
How do I delete/remove a user?

I can lock users.

I got the problem, it seems, after a while I can not unlock users.

ice this issue for now


qemu: Add maxcpus attribute to -smp

maxcpus is used to specify how many cpus a VM can have.
This attribute must be specified to enable the hotplugging CPUs capability,
otherwise the maximum number of CPU will be defined by the number of CPU
in -smp.
Signed-off-by: Julio Montes<EMAIL_ADDRESS>

/cc @mcastelino

@markdryan  changes applied, thanks

@markdryan  fixed

@devimc Did you update the help for MaxCPUs?

@markdryan done


Feat: comment on pr yml file

Describe the feature
Adding the yml for it.
Explain Intentions: Use comments to provide context and explain the intentions behind the changes made in the YAML file. Clarify why certain configurations or steps are necessary and how they relate to the overall CI/CD pipeline or application functionality.
Highlight Changes: If the changes in the PR specifically target the YAML file, use comments to draw attention to those modifications. Point out which lines or sections have been added, modified, or removed to make it easier for reviewers to identify and focus on the relevant changes.
Address Reviewer Questions: If a reviewer raises questions or requests clarification about certain aspects of the YAML file, respond to their comments directly in the YAML file. Provide clear explanations, examples, or references to relevant documentation to address their concerns.
Add ScreenShots
none
Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'23 contributor
[X] I want to work on this issue

Go Ahead @Abhinavcode13


Stats tool

Given a Tabular Data Package compute stats for each file
A stat looks like:

{
  count: record-count
  fields: [
    {
     name: field-id
     sum:
     avg:
     ...
    }
  ]
}

@Stiivi - any thoughts or recommendations?

@pwalsh i wonder if this relates to https://github.com/okfn/data-quality-cli also i'm wondering about a mini CSV/JSON "spec" for recording quality info based on our experience there and elsewhere (one for dataprotocols).

@rgrp agreed that the older work done in the above CLI and also in GoodTables reporter serves as a basic for, if not a quality/stats "spec", a pattern and a blueprint to iterate on an implementation thereof. I'd like to work on that, actually.

Moved here: https://trello.com/c/oeBZW6vi/90-as-a-researcher-i-want-a-tool-that-can-generate-basic-statistics-about-a-dataset


fix(p-spinner): fix bugs in related components

To Reviewers

[ ] Skipping review is not a problem (style, chore ONLY)
[X] Not that difficult

Type of Change

[ ] New feature
[X] Bug fixes
[ ] Feature improvement

[ ] These changes require a usage change

[ ] Others (performance improvement, refactoring, CI/CD, etc.)

Checklist

[ ] Updated Storybook documents
[X] Tested with console

Description

bug fix due to p-spinner change

Things to Talk About

:tada: This PR is included in version 1.1.0-beta.434 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


How do I get a Q4 of GIANTpanda

How can I get a  Q4panda, GIANTpanda，Is GIANTpanda used to connect accord?

GIANTpanda is a carrier board for the comma.ai panda, and it has the hardware needed to interface with accord, yes.

Fantastic George, our issue is solved, can you advice on specific accord model we can test with as we are developing a GiantPanda board

We worked with the 2016 Accord Touring. The braking and cruise are the same as the Acura, the steering is over K-Line.

George, do we need Panda to use with GiantPanda for Honda Accord on connect directly to OBDII K-line

Yes you need a panda. GiantPanda is simply a breakout board for the panda. It lets you mount a panda in a neo.


Update working-with-vite-in-ddev.md

Added language to start vite as a daemon
The Issue
How This PR Solves The Issue
Manual Testing Instructions
Automated Testing Overview

Related Issue Link(s)
Release/Deployment Notes

@mandrasch thanks for the article, and your review is what matters, thanks.

Hi @dingman, thanks for suggestion and PR! 👍
Please implement the following changes:

Web Daemons are not specific to Laravel, please add a new headline and section before the section "NodeJS"
Please add a disclaimer that Vite devserver output is not visible directly in case of errors and that they need to be accessed via ddev logs.
Please link to this article as practical example https://www.viget.com/articles/how-we-use-ddev-vite-and-tailwind-with-craft-cms/

Reasoning, why I'm not a fan of this, at least for a beginner's tutorial - because web daemons can make things harder for newbies, quote from discussion on Discord:

We've had similar discussions / preferences around web_extra_daemons at Viget.

Some of us like having it run in a background daemon, others like putting it in the post-start hook. That way it runs automatically, but the output & errors are still visible in the terminal.

web_extra_daemons does bury things a bit, which can trip up folks who don't know about ddev logs.

Once a project is somewhat stable, there usually isn't too much trouble running in a daemon.

From my point of view it is an expert topic. With a disclaimer and in a extra section, this is fine in my opinion - and a great addition to the article. 👍
@rfay I have no real time resources till end of month (summer time 🌞 ), feel free to merge this in any way it's seem fitting to you. The article should be helpful for the whole DDEV community and not just my personal opinion piece (of course). ;) I could re-check at end of August as well to see if have further change proposals.

Looking forward to getting back to this when you've had a chance to look at the suggestions @dingman and when you get back @mandrasch

@dingman What about something like this? (new chapter in the article)
Automatically start Vite
There is also the possibility to automatically start Vite when you start a DDEV project.
Please beware: Autostart can complicate things a bit, it's a technique for advanced usage.
Some developers like having it run in a background daemon, others like putting it in the post-start hook. That way it runs automatically, but the output & errors are still visible in the terminal.
If you want to run Vite in the background as a daemon via web_extra_daemons, edit your config.yaml like this ("ddev restart" needed):
web_extra_daemons:
  - name: vite
    command: bash -c 'npm install && npm run dev -- --host'
    directory: /var/www/html

An example can be found here as well: https://github.com/ddev/ddev.com You can also use supervisors like pm2 (https://www.lullabot.com/articles/nodejs-development-ddev)

Sadly, I haven't had time to prioritize making this update.
Your update looks great and I give it a +1

You'd probably want to update and push the change @dingman
I'll close this about November 1, 2024 if it doesn't make progress. Thanks for taking the time to contribute on this, but we need to get to the finish line.

Created https://github.com/ddev/ddev.com/pull/255

Thanks for the initiative, fixed in

https://github.com/ddev/ddev.com/pull/255


/usr/bin/ld: cannot find -lgtest ?

Hi,
I'm trying to build mxnet myself but it crashes on google tests.
It tries to linked against libgtest which does not exist.
g++ -std=c++11 -Itests/cpp/include -Isrc -DMSHADOW_FORCE_STREAM -Wall -Wsign-compare -O3 -DNDEBUG=1 -I/home/acecile/packaging/mxnet/mxnet-0.12.0+debian/mshadow/ -I/home/acecile/packaging/mxnet/mxnet-0.12.0+debian/dmlc-core/include -fPIC -I/home/acecile/packaging/mxnet/mxnet-0.12.0+debian/nnvm/include -I/home/acecile/packaging/mxnet/mxnet-0.12.0+debian/dlpack/include -Iinclude -funroll-loops -Wno-unused-variable -Wno-unused-parameter -Wno-unknown-pragmas -Wno-unused-local-typedefs -msse3 -DMSHADOW_USE_CUDA=0 -DMSHADOW_USE_CBLAS=1 -DMSHADOW_USE_MKL=0 -DMSHADOW_RABIT_PS=0 -DMSHADOW_DIST_PS=0 -DMSHADOW_USE_PASCAL=0 -DMXNET_USE_OPENCV=1 -I/usr/include/opencv -fopenmp -DMXNET_USE_LAPACK  -DMXNET_USE_LIBJPEG_TURBO=0 -I/include/ -o build/tests/cpp/mxnet_test build/tests/cpp/operator/krprod_test.o build/tests/cpp/operator/batchnorm_test.o build/tests/cpp/test_main.o build/tests/cpp/storage/storage_test.o build/tests/cpp/engine/threaded_engine_test.o lib/libmxnet.so -pthread -lm -lcblas -fopenmp -lrt -lopencv_shape -lopencv_stitching -lopencv_superres -lopencv_videostab -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_dnn -lopencv_dpm -lopencv_fuzzy -lopencv_hdf -lopencv_line_descriptor -lopencv_optflow -lopencv_plot -lopencv_reg -lopencv_saliency -lopencv_stereo -lopencv_structured_light -lopencv_rgbd -lopencv_viz -lopencv_surface_matching -lopencv_tracking -lopencv_datasets -lopencv_text -lopencv_face -lopencv_video -lopencv_ximgproc -lopencv_calib3d -lopencv_features2d -lopencv_flann -lopencv_xobjdetect -lopencv_objdetect -lopencv_ml -lopencv_xphoto -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_photo -lopencv_imgproc -lopencv_core -llapack  -Llib -lmxnet -L/lib/ -lgtest
/usr/bin/ld: cannot find -lgtest
collect2: error: ld returned 1 exit status
tests/cpp/unittest.mk:39: recipe for target 'build/tests/cpp/mxnet_test' failed

What am I doing wrong ?
Thanks in advance,
Adam.

To build from source, please follow this guide: http://mxnet.incubator.apache.org/install/index.html

Hello @eLvErDe , looks like you're missing the gtest library on your system.  The good news is it's quite easy to install.  Here's a SO answer that outlines the process https://stackoverflow.com/questions/13513905/how-to-setup-googletest-as-a-shared-library-on-linux

@eLvErDe Are you able to build mxnet successfully? If so can this issue be closed?
@mxnet-label-bot add [Pending Requestor Info]

@mxnet-label-bot add [Pending Requestor Info]

@lanking520 requesting to close due to lack of activity

@eLvErDe Please feel free to reopen this if you are still facing the issue. Close it for now.


[BUG] auto format will block the undo/redo

[case1]:

1s1|
1 s 1 |  < input a blank will cause auto format
|        < ctrl+z to undo
1 s 1 |  < ctrl+y to redo
1 s 1 |  < ctrl+z cannot undo now.

[case2]:

- a1a|
- a 1 a |  < input a blank will cause auto format
- |        < ctrl+z to undo, and will be blocked at the list bullet (ctrl+z/ctrl+y both broken)

After close the auto format in setting page, ctrl+z/ctrl+y can be continuely used as usual...

this fix will be available in the next release


CRC16 mismatch in received data from Thermostat

I am trying to connect to my Heatmiser, I am sure my configured are right, but I think they might have changed the API and things aren't working anymore.  Anyone can point me on the right track? I have also enabled Legacy APi on their app in case anyone needs that info.
CONFIG
climate:
  - platform: heatmiser_wifi
    host: <IP_ADDRESS>
    port: 4242 - I have also tried the default port, but it does not work
    friendly_name: Heatmiser

LOG
2022-02-07 08:18:08 WARNING (SyncWorker_1) [homeassistant.loader] We found a custom integration heatmiser_wifi which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2022-02-07 08:18:35 WARNING (MainThread) [homeassistant.components.climate] Setup of climate platform heatmiser_wifi is taking over 10 seconds.
2022-02-07 08:18:35 ERROR (MainThread) [homeassistant.components.climate] heatmiser_wifi: Error on device update!
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 431, in _async_add_entity
    await entity.async_device_update(warning=False)
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 709, in async_device_update
    await task
  File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/heatmiser_wifi/climate.py", line 169, in update
    self._heatmiser_info = self._heatmiser.get_info()
  File "/usr/local/lib/python3.9/site-packages/heatmiser_wifi/heatmiser_wifi.py", line 183, in get_info
    dcb = self.get_dcb()
  File "/usr/local/lib/python3.9/site-packages/heatmiser_wifi/heatmiser_wifi.py", line 155, in get_dcb
    (dcb_start, dcb_data) = self._receive_dcb()
  File "/usr/local/lib/python3.9/site-packages/heatmiser_wifi/heatmiser_wifi.py", line 126, in _receive_dcb
    raise Exception("CRC16 mismatch in received data from Thermostat")
Exception: CRC16 mismatch in received data from Thermostat

Which model of WiFi thermostat do you have? Only DT, DT-E, PRT models are supported by the protocol. However in reality I think it is only the PRT model that had WiFi. Note that all these models was stopped being produced many years ago.
Newer Heatmiser WiFi thermostat, called Neo, are connected to network through a separate component called NeoHub. NeoHub has another protocol. It seems to be a component availale on HACS called Heatmiser Neo Integration that should to the trick.


Fix error introduced in #1477

My apologies - it seems like the change included in #1477 did not match the one I had tested locally, and contained an error. That error should be resolved by this commit.

:D


User preferences interactions

Description
The main purpose of this pull request is to enhance the interactions on the UserPreferencesView container, and any subsequent components inside.
Test Plan
N/A
Motivation and Context
The interactions and touch events aren't the smoothest or most responsive, so this PR aims to improve some of these performance drop-offs.
How Has This Been Tested?
I've manually tested all the touch events on the component to ensure everything is operating as it was before.
Types of Changes

Documentation
Bug fix
[x] New feature
Breaking change

Checklist

[x] My code follows the code style of this project

 User preferences view interactions


⚠ ClamAV has degraded performance

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

HTTP code: 200
Response time: 755 ms

Resolved: ClamAV performance has improved in 751b972.


Using typescript-graphql-request with esm results in gql type error

Describe the bug
When using graphql-codegen-esm and typescript-graphql-request
src/gql/generated/operations.ts:1489:34 - error TS2349: This expression is not callable.   Type 'typeof import("me/node_modules/graphql-tag/lib/index")' has no call signatures.
Your Example Website or App
https://codesandbox.io/s/vigilant-framework-03nz6r?file=/codegen.yml
Steps to Reproduce the Bug or Issue
See the code sandbox example.
Expected behavior
I would expect gql types to be correct.
Screenshots or Videos
No response
Platform
macOs
NodeJs 17.9.1
"@graphql-cli/codegen": "^2.4.10",
"@graphql-codegen/cli": "^2.13.7",
"@graphql-codegen/typescript": "^2.7.4",
"@graphql-codegen/typescript-graphql-request": "^4.5.6",
"@graphql-codegen/typescript-operations": "^2.5.4",
"@graphql-codegen/typescript-resolvers": "^2.7.4",
"@types/node": "15.0.1",
"@types/rimraf": "^3",
"graphql": "^16.5.0",
"rimraf": "^3.0.2",
"ts-node": "^10.9.1",
"typescript": "^4.8.4"
Codegen Config File
overwrite: true
emitLegacyCommonJSImports: false
generates:
  ./src/gql/generated/schema.ts:
    schema:
      - ./src/gql/schema/*.ts:
          noPluck: true
    plugins:
      - typescript
      - typescript-resolvers
    config:
      makeResolverTypeCallable: true
      customResolverFn: ./codeGenCustomTypes#DefaultResolver
  ./src/gql/generated/operations.ts:
    schema:
      - ./src/gql/schema/*.ts:
          noPluck: true
    documents: ./src/gql/operations/*.graphql
    plugins:
      - typescript
      - typescript-operations
      - typescript-graphql-request
    config:
      typesPrefix: 'SDK_'

Additional context
I was wondering if changing the gqlImport config to use another lib might work. If that's the case do you have a recommended replacement

I got around this issue by not using gql for my documents. Instead I use
    config: {
      documentMode: "documentNode",
    },

Explicitly setting gqlImport works for me:
      config: {
        gqlImport: "graphql-tag#gql",
      },

This changes the import from
import gql from 'graphql-tag';

to
import { gql } from 'graphql-tag';


Install secure_headers gem

https://github.com/twitter/secureheaders

This winds up being tricky because it's a real bear about ajax. I'm working on it.
Leaving this note here:

This seems to be more trouble than it's worth. Strikes me as absolutely ideal for APIs, not so great for things that utilize rails views as heavily as we are.
If someone with more experience getting this to work with js wants to pick this up it's in the branch secure_headers.

On the off chance someone is intimately familiar with secure_headers and can offer feedback on whether it's a good idea for this project, I'm all ears!

I think this is still a good idea and I'm still very much interested in setting it up!


Support for hosting artifacts as microservices

Once Metaflow has been used to train a model, it produces artifacts that are typically persisted (for example in S3). A natural extension of this is to provide an easy mechanism to deploy web services that would take these artifacts and serve them in some way so that they can be consumed by downstream applications.

`from metaflow import WebServiceSpec
from metaflow import endpoint
class MyWebService(WebServiceSpec):
@ednpoint
def show_data(self, request):
### TODO
return {}
`
I did not find these classes in master branches. looking forward to seeing.

@wuqunfei Yes, you are correct, we haven’t released WebServiceSpec yet.

thanks, @savingoyal, it is a really good idea to expose endpoint. I am using sagemaker to host endpoint, but it is not so easy as your annotation.

Hi! Saw the talk on this topic yesterday and am really excited for this feature to be released in the future.
Is there a channel where development on this is being discussed? Would love to participate and help out.

Yes, @justinttl this issue tracks the development.

This is a good medium to communicate your ideas, etc. We are currently working on a redesign of the ideas expressed in the talk internally and, given sufficient interest, we will look at releasing this to the community as well. The talk (and associated slides) give a pretty good idea of where we are at right now. Comments/thoughts are more than welcome here!

Kubeflow uses seldon.io for deploying models; it may be worth looking into - or perhaps a pluggable layer with a seldon backend.

Hi @romain-intel , any information on the progress of this feature? Thanks!

How about we package the model artifact and deploy it using Sagemaker in the end step?

It might be worth exploring using the Amazon SageMaker Training Toolkit as a way to create a managed docker container in Amazon SageMaker for a particular step.

@sl-victormazzeo We are looking into publishing recipes on how to deploy metaflow artifacts within a micro-service, independent of this effort. Today, you can access your artifacts via the metaflow client within hosting services like Seldon, AWS Lambda etc.
@agusgun Yes, you can very simply use boto3 to package your model artifact and deploy it to Sagemaker in the end step.
@brightsparc We do have a pending PR that tries to achieve something very similar.


benchmark_xl --save_decompressed --write_html_report works in 0.6 but not in 0.7 or head

Describe the bug
A clear and concise description of what the bug is.
benchmark_xl --save_decompressed --write_html_report works in 0.6 but not in 0.7 or head
To Reproduce
Steps to reproduce the behavior:
cmake --build . -- -j$(nproc) && tools/benchmark_xl --input "$HOME/newcorpus/split/*.png" --codec jxl:d0.5:epf0,jxl:d1:epf0,jxl:d3:epf0,jxl:d5:epf0,jxl:d7:epf0,jxl:d15:epf0 --output_dir=/tmp/jxl_opt/ --save_decompressed --write_html_report --more_columns
a msg saying:
./lib/jxl/dec_external_image.cc:260: JXL_CHECK: float_out ? bits_per_sample == 16 || bits_per_sample == 32 : bits_per_sample > 0 && bits_per_sample <= 16
Illegal instruction
appears
Expected behavior
A clear and concise description of what you expected to happen.
files like '/tmp/opt/index.jxl_d1_epf0.html' will be written with their respective png files
Screenshots
If applicable, add screenshots or example input/output images to help explain your problem.
Environment
usual linux
Additional context
because of this I'm developing in 0.6 but it would be nicer to make quality improvements directly in head

for a temporary fix see https://github.com/libjxl/libjxl/pull/1980


Deprecation warning in node v10 when logging a moment object

Environment: Node v10.0.0 on OSX Mavericks. Moment package version 2.22.1.
Description of the Issue and Steps to Reproduce:
Run this code to reproduce the deprecation message:
console.log(require("moment")());

Console output including deprecation message:
moment("2018-05-24T11:32:57.919")
(node:23450) [DEP0079] DeprecationWarning: Custom inspection function on Objects via .inspect() is deprecated

See the node documentation for information about how to fix this deprecation message:
https://nodejs.org/api/deprecations.html#deprecations_dep0079_custom_inspection_function_on_objects_via_inspect

We need to detect the node version, if its low -- use current approach, if its high, use the new approach -- hopefully this will work on ES5. Not sure how this will affect browser environments.
This needs to be investigated further. The worst thing if we do nothing is that we will lose the inspect functionality, but nothing else will break, right?

Perhaps if the engine is node and util.inspect.custom exists, export the inspect function as [util.inspect.custom] instead of as 'inspect'? That way no other environments should break.

Hi I would like to take up this issue, but since its a first PR can anyone help me with a bit more understanding of the issue?

Is this still waiting to be accepted? Logs are full of extraneous warnings since switching to using moment...

For anyone looking for an interim solution, here is some TypeScript monkey patching:
import moment from 'moment';
const momentCtr: any = moment.fn;
if (typeof momentCtr.inspect === 'function') {
    momentCtr[Symbol.for('nodejs.util.inspect.custom')] = momentCtr.inspect;
} else {
    console.error('Unablet to set moment inspector');
}

See 2.25.3


"x" is not a known member of "None" when using nested optional @dataclasses.dataclass

Environment data

Language Server version: 2023.12.1 (pyright a78e2b10)
OS and version: Apple M1 - Sonoma 14.2 (23C64)
Python version : 3.10

Code Snippet

# EXAMPLE 1 - `Pylance` not working -  Linter wrongly detect possible None value
from dataclasses import dataclass

@dataclass
class MyComponent:
    var_bool: bool | None = None
    var_float: float | None = None
    var_string: str | None = None

@dataclass
class MyComponentParent:
    var: MyComponent | None = None

def get_not_optional() -> MyComponentParent:
    return MyComponentParent(
        var=MyComponent(var_bool=True, var_float=0.0, var_string="test")
    )

# The usage of attributes of `MyComponent` produce a linter error
# "var.var_bool" is not a known member of "None"Pylance[reportOptionalMemberAccess]
# even given the code it's impossible to be None
get_not_optional().var.var_bool
get_not_optional().var.var_float
get_not_optional().var.var_string

# EXAMPLE 2 - `Pylance` not working - Linter wrongly detect possible None value

from __future__ import annotations

from dataclasses import dataclass
from typing import Type

@dataclass
class MyComponent:
    var_bool: bool | None = None
    var_float: float | None = None
    var_string: str | None = None

    @classmethod
    def defaults(cls: Type[MyComponent]) -> MyComponent:
        return cls(var_bool=True, var_float=1.0, var_string="test").get_safe_instance()

    def get_safe_instance(self):
        assert self.var_bool
        assert self.var_float
        assert self.var_string
        return self

@dataclass
class MyComponentParent:
    var: MyComponent | None = None

    @classmethod
    def defaults(cls: Type[MyComponentParent]) -> MyComponentParent:
        return cls(var=MyComponent.defaults().get_safe_instance())

    def get_safe_instance(self):
        assert self.var
        return self

def not_optional():
    return MyComponentParent(
        var=MyComponent(var_bool=True, var_float=0.0, var_string="test")
    ).get_safe_instance()

var_not_optional = not_optional()

# The usage of attributes of `MyComponent` produce a linter error
# "var.var_bool" is not a known member of "None"Pylance[reportOptionalMemberAccess]
# even given the code it's impossible to be None and there are the assert to prove it
var_not_optional.var.var_bool
var_not_optional.var.var_float
var_not_optional.var.var_string

# EXAMPLE 3 - `Pylance` working -  more complex workaround solution to avoid Linters error
# I found a solution but required to create an additional dataclass without optional and use the latter to ensure
# no linters errors.

from __future__ import annotations

from dataclasses import dataclass
from typing import Type

@dataclass
class MyComponent:
    var_bool: bool
    var_float: float
    var_string: str

@dataclass
class MyComponentOptional(MyComponent):
    var_bool: bool | None = None
    var_float: float | None = None
    var_string: str | None = None

    @classmethod
    def defaults(cls: Type[MyComponentOptional]) -> MyComponent:
        return cls(var_bool=True, var_float=1.0, var_string="test")

@dataclass
class MyComponentParent:
    var: MyComponent

@dataclass
class MyComponentParentOptional(MyComponentParent):
    var: MyComponent | None = None

    @classmethod
    def defaults(cls: Type[MyComponentParentOptional]) -> MyComponentParent:
        return cls(var=MyComponentOptional.defaults())

def not_optional():
    return MyComponentParent(
        var=MyComponent(var_bool=True, var_float=0.0, var_string="test")
    )

var_not_optional = MyComponentParentOptional.defaults()

# The usage of attributes of `MyComponent` produce no linter error
var_not_optional.var.var_bool

Repro Steps

Use nested @dataclass with optional attributes

Expected behaviour
Pylance is capable to deduce the dataclass attributes that cannot be None if just constructed or have internal assertion.
Actual behaviour
Pylance show an error on None using nested optional datalcass attributes when it's impossible to be None.
Logs

IMO do not required any trace.

Pyright (the type checker upon which pylance is built) is working correctly here, so this isn't a bug.
You have declared that var_bool, var_float and var_string can optionally contain a None value, but you are not checking for None when you attempt to later attempt to access these.
Despite the fact that you have given your function the name get_not_optional, the type annotations indicate that this function returns an object where the attributes can contain None. Type checkers detect type violations based on the type information they are provided, not based on the natural-language names you give your functions. If you run other static type checkers (like mypy) on this code, you will see the same errors.
Note that pyright is a type checker, not a linter. Linters (which include tools like pylint and ruff) are generally concerned with enforcing coding convention rules. Type checkers are concerned with validating static type rules within the Python static type system. If you want to learn more about static typing in Python, you may find this site useful. You can find the documentation for pyright here. Pyright is a standards-compliant type checker, and it's correctly following the typing standard in all of the code samples you've posted above.

Pyright (the type checker upon which pylance is built) is working correctly here, so this isn't a bug.
You have declared that var_bool, var_float and var_string can optionally contain a None value, but you are not checking for None when you attempt to later attempt to access these.
Despite the fact that you have given your function the name get_not_optional, the type annotations indicate that this function returns an object where the attributes can contain None. Type checkers detect type violations based on the type information they are provided, not based on the natural-language names you give your functions. If you run other static type checkers (like mypy) on this code, you will see the same errors.
Note that pyright is a type checker, not a linter. Linters (which include tools like pylint and ruff) are generally concerned with enforcing coding convention rules. Type checkers are concerned with validating static type rules within the Python static type system. If you want to learn more about static typing in Python, you may find this site useful. You can find the documentation for pyright here. Pyright is a standards-compliant type checker, and it's correctly following the typing standard in all of the code samples you've posted above.

Thanks Eric for the answer and the useful links, I'm sorry for the confusion with the linter I definitely meant type checker.
About your answer honestly I don't understand your point, it's your interpretation about the natural language resolution from the function name and it's completely different from the point I'm raising here.
I never meant what you actually said.
If you look carefully the code:
Example 1:
The function get_not_optional (but for the sake of clarity let's call it from now on get_obj) does return an dataclass obj that  that is not None  containing not None values but just because it was typed with optional Pylance raise the error in saying that should be still checked to not be None.
Example 2:
Show that adding  assertion on the optional possible None variables inside some helpers functions will not help Pylance seeing that in this scenarios the variable cannot be None and it steal raise the error.
Example 3:
Show that currently the only solution is to have a duplicate dataclass object without optional to avoid Pylance produce wrong errors.

get_not_optional is declared to return a value of type MyComponentParent. The type MyComponentParent is defined to contain optional None. Type checkers base their analysis on the declared return type of a function, not on the (potentially more restrictive) types the function implementation returns. In other words, type checkers do not do global type analysis (which would be extremely costly). They instead do local type analysis, and they assume that the return type annotations accurately reflect the return type of a function.
I can assure you that pyright is working correctly here, and it is correct to emit the errors you're seeing here. You will see the same errors if you run other standards-conformant Python type checkers (like mypy) on your code. I encourage you to read the type system specification and other related documentation.

For me this it's still an issue

get_not_optional is declared to return a value of type MyComponentParent. The type MyComponentParent is defined to contain optional None. Type checkers base their analysis on the declared return type of a function, not on the (potentially more restrictive) types the function implementation returns. In other words, type checkers do not do global type analysis (which would be extremely costly). They instead do local type analysis, and they assume that the return type annotations accurately reflect the return type of a function.
I can assure you that pyright is working correctly here, and it is correct to emit the errors you're seeing here. You will see the same errors if you run other standards-conformant Python type checkers (like mypy) on your code. I encourage you to read the type system specification and other related documentation.

Following your reasoning means that it's useless to use a type checker with optional because the only way to avoid seeing raised an error it's to add locally an assertion to the questioned variable.
In any case, I followed your suggestion and running mypy on example-1 produces no error compared to Pylance instead.
mypy test_pylance_1.py
Success: no issues found in 1 source file

running mypy on example-1 produces no error compared to Pylance instead

I'm not sure how you ran mypy, but it produces the same errors as pyright, as you can see here.

Indeed, my local file had no function typing hint  here

To summarize, the only viable solution seems to be avoiding the use of optional in the dataclass. This is to prevent type-checker warnings, as their current implementation necessitates adding local assertions wherever the optional dataclass attribute is utilized.
I'm I wrong ?

If you don't want to use type checking to find bugs in your code, you can disable type checks in pylance (by setting the "typeCheckingMode" to "off").
If you value the use of static type checking for catching bugs in your code, you'll need to learn more about how static type checking works and then write your code in such a manner that it works with type checking. The Python static type system is well established, and it's similar to static type checking systems in other languages, so this isn't a question of "current implementations" not working in accordance with your expectations.
If you want to work toward writing robust Python code (i.e. code that is bug free and easy to maintain), you may need to make some changes in the way you write your code. For example, I would generally try to avoid storing optional values in a dataclass like you're doing here.

Thank you for the detailed explanation. I definitely agree that incorporating a static typing checker is beneficial, and I recognise the limitations it presents in my current use case. Your advice has been invaluable, I will look for an alternative approach that aligns better with these constraints. Thanks again for your time! Much appreciated!

For anyone who might be facing the same problem I did and they still need to usedataclass with optionals the sole resolution is to turn off the optionalMemberAccess. This can be achieved by setting your VSCode configuration as follows:
    "python.analysis.diagnosticSeverityOverrides": {
        "reportOptionalMemberAccess": "none"
    }


[stable/selenium] Customisable selenium probe path

What this PR does / why we need it:
Allows customising the path used for readiness and liveness probes. I'm adding this as a the current value doesn't work when using selenium V2 (the recommended endpoint is /grid/api/hub/status)
Special notes for your reviewer:
I have deployed a V2 selenium grid locally and confirmed that it does start correctly without any other changes to the chart
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md

/ok-to-test

/assign

/lgtm


Changelog for v21.12.1

Changelog for v21.12.1

Codecov Report

Merging #816 (0c84b20) into main (13e05f0) will increase coverage by 0.03%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #816      +/-   ##
==========================================
+ Coverage   70.55%   70.59%   +0.03%
==========================================
  Files         402      402
  Lines       20837    20837
==========================================
+ Hits        14702    14709       +7
+ Misses       5391     5384       -7
  Partials      744      744

Flag
Coverage Δ

integration
52.28% <ø> (ø)

unittests
63.52% <ø> (+0.03%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

pkg/toolkit/ethclient/rpc/quorum.go
77.03% <0.00%> (+5.18%)
:arrow_up:


CPU socket count reporting correction

CPU socket count reporting correction
From https://github.com/MissionCriticalCloud/cosmic-plugin-hypervisor-kvm/pull/16

@NuxRo can you do a force push to kick off jenkins and travis again.  Also, can you show this change fixes the behavior with a screenshot or something.  I don't think the code change warrants a full CI run since nothing new was introduced, only the value of a variable has changed and it uses proper defensive programming...  It would be nice to see the problem it solves though...

@swill more details here: https://github.com/MissionCriticalCloud/cosmic-plugin-hypervisor-kvm/pull/16

Great, thanks @remibergsma.  :)

@NuxRo thanks, please rebase and squash to a single commit
LGTM
tag:mergeready

I'd appreciate it if someone else could do it, I do not have the setup to perform more advanced github operations right now, other than the UI.

Can we get another code review on this?  Also, Jenkins seems to be hung, can we either close and reopen the PR or do a force push to kick it off?  Thx...

We have rolled this patch in our lab and verified that it does indeed report the number of sockets correctly.  Based on testing this LGTM.
Please do a force push to kick off jenkins and travis again.

LGTM (code review)
tag:mergeready

I am comfortable not running CI on this one given the scope of the change and the manual tests that have been run.  This one is ready now.  We need this force pushed again though so we can get Jenkins green.  Thx...

@NuxRo can you close and reopen this PR to force Jenkins to kick off a run.  It has been hung in this state for days.  I know you can't easily amend and force push, so closing and reopening the PR will let you kick it off again through the UI.

@NuxRo I have pushed fixes to both Jenkins and Travis this morning.  Can you close and reopen the PR to kick off the Jenkins and Travis runs again.  Thanks...

LGTM, running this in prod for about a month now. See link above for screenshots.

@swill  This one is green now.

Awesome, thanks guys.  I will merge this...


ActionList and NavList components

This PR introduces the ActionList and NavList components. Interface guidelines for ActionList can be found here. NavList replaces the existing experimental NavigationList component inside dotcom, and uses ActionList as its base. ActionList is intended to be used only as a base class and should not be used directly by consumers.
Please see the Lookbook examples and documentation pages for more details.

Hey @jonrohan, yes! I have a dotcom branch that does just that for the old Experimental::NavigationList component.


Louisiana 3/29 updates

Created phase 16 and older
Added qualifier for age 16+
Set phase to active

[{"key":"louisiana","type":"vaccination","value":{"content":{"activePhase":"16_and_older","phases":[{"id":"1a","qualifications":[{"question":"c19.eligibility.question/healthcare_worker.in_hospital"},{"question":"c19.eligibility.question/long_term_care_resident"}]},{"id":"1b","qualifications":[{"question":"c19.eligibility.question/healthcare_worker"},{"question":"c19.eligibility.question/long_term_care_resident"},{"question":"c19.eligibility.question/essential_worker.1b.la"},{"question":"c19.eligibility.question/age.70_up"}]},{"id":"1c","qualifications":[{"question":"c19.eligibility.question/essential_worker","moreInfoText":"c19.eligibility.moreinfo/essential_worker.la.1c","moreInfoUrl":"https://ldh.la.gov/index.cfm/page/4137"},{"question":"c19.eligibility.question/health","moreInfoText":"c19.eligibility.moreinfo/health.la.1c","moreInfoUrl":"https://ldh.la.gov/index.cfm/page/4137"},{"question":"c19.eligibility.question/age.65_up"}],"label":"1b Tier 2"},{"id":"16_and_older","label":"16 and older","qualifications":[{"question":"c19.eligibility.question/age.16_up","moreInfoText":"c19.eligibility.moreinfo/age.16_up.la.16_and_older"}]}]}}},{"key":"louisiana","type":"strings","value":{"content":{"c19.eligibility.moreinfo/age.16_up.la.16_and_older":{"en-us":"Beginning Monday, March 29, everyone in Louisiana ages 18 and older is eligible to get vaccinated against COVID-19. The Pfizer vaccine is available to those 16 and older."}}}}]


Unhandled promises exception handler

Right now we don't output stack traces for unhandled promises.
https://github.com/nodejs/node/issues/9523#issuecomment-259303079
process.on('unhandledRejection', r => console.log(r))
Fixes it.
Is this something that is worth adding to the framework when in dev mode?

Yes, we can add this. But with a bold warning saying that all async/await should be wrapped inside try/catch and Promises should have .catch on them

This issue was moved to adonisjs/adonis-ignitor#1


CAMEL-20220 - Camel Azure Key Vault: Support Azure Identity in the co…

…mponent and secrets function
Description

Target

[x] I checked that the commit is targeting the correct branch (note that Camel 3 uses camel-3.x, whereas Camel 4 uses the main branch)

Tracking

[x] If this is a large change, bug fix, or code improvement, I checked there is a JIRA issue filed for the change (usually before you start working on it).

Apache Camel coding standards and style

[x] I checked that each commit in the pull request has a meaningful subject line and body.

[x] I have run mvn clean install -DskipTests locally and I have committed all auto-generated changes

/component-test azure


network: use label_prefix in subnets dns_label

Signed-off-by: Omar Aloraini<EMAIL_ADDRESS>Closes #589

Thanks for the PR. Are there any impacts on existing clusters?

@hyder If you did not set label_prefix then nothing will change. But, if you are using label_prefix then things will not work, because you are not allowed to change the dns_label once the subnet is created.
Not sure how to approach this...

Can we lifecycle ignore_changes for dns_label on each of the resources, to have this only affect new instances?

The dns_label doesn't support hyphens or underscores, only alphanumeric characters are supported. I have used 8 as separator. Another limitation is the maximum length of the dns_label is 15. Given the suffix 8workers, the maximum length for the label_prefix is 7, which isn't enough for production :/
WDYT?

full
short

workers
wo

control plane
cp

pods
po

public load balancer
pb

internal load balancer
ib

We could shorted them.

I like the shortened labels - they are similar in spirit to the shortened versions of Kubernetes resources. I think that's brilliant. Just concatenate without the 8 though.
Just to confirm, after your changes, if somebody applies this on an existing tfoke created infra, this will not force a deletion and recreation of subnets, cluster, worker nodes. Correct?

@hyder Yes, I just tested the change on an existing cluster and there were no deletions. Thanks to ignore_changes tip from @devoncrouse. I'll update suffixes to the shorter version. Without the separator the will look like:
productionwo
productioncp
productionpo
productionpb
productionib

hey @devoncrouse
Are you ok with this? You asked me to hold on the merge. Do we have your go-ahead on this?

lgtm - thanks for addressing the lifecycle changes.

Is there a reason dns_label doesn't accept hyphens ? with this change merged, its restricting our ability to produce unique label_prefix in our automation runs


Rename master branch

Rename the 'master' branch of this repository. Common alternatives are 'main' and 'primary'. Are there any known technical blockers to this?
See step by step guide here.

Apologies - it looks like this has already happened, I must have gotten repos confused!


I can't get the 2fa auth panel appear

Hi,
i followed installation and everything was ok. published assets, and put  Spark::useTwoFactorAuth(); in SparkServiceProvider -> booted
but i can't manage to get the panel to appear in settings->security

but, if i open the code, the view pieces are all there

what i'm doing wrong? please help me as I'm pretty new to Spark...

I have the same problem and changing the file resources/js/spark-components/settings/security/enable-two-factor-auth.js to this:
var base = require('settings/security/enable-two-factor-auth');

module.exports = {
    mixins: [base]
};

didn't help.

Incase this helps @ondrejmirtes , I had the same problem, on a fresh Spark 9 installed just today :(
For me to get this to work I had to do the following:

Do as @thomaswardiii suggested

AHA!
In the new file, the first line should be module.exports = { and not Vue.component('spark-enable-two-factor-auth', { and the last line should end with }; and not })

Then, inside file: resources/js/spark-components/settings/security/enable-two-factor-auth.js Change require path to the following: var base = require('spark-components/settings/security/enable-two-factor-auth');

Then, inside file: resources/js/app.js Include new require as follows: require('../assets/js/spark-components/settings/security/enable-two-factor-auth');

Finally, inside file webpack.mix.js Include new path resolver as follows: path.resolve('resources/assets/js'),

Hope this works for you :)

@Fabio101 These are the diffs of what I did: https://gist.github.com/ondrejmirtes/5cf9a457e4b080560cd1522600ace66b
And it still doesn't work:

Your first patch is patching the wrong file, it should be:
resources/assets/js/spark-components/settings/security/enable-two-factor-auth.js
and NOT:
resources/js/spark-components/settings/security/enable-two-factor-auth.js

So the files that I currently have modified, are these:

resources/assets/js/spark-components/settings/security/enable-two-factor-auth.js
resources/js/app.js
resources/js/spark-components/settings/security/enable-two-factor-auth.js
webpack.mix.js

And it still doesn't work. I give up. This should be fixed in this package itself.

Thanks a lot @Fabio101, your instructions helped a lot and I can confirm it worked


C#: make imported functions public by default

This allows them to be called from other assemblies.

Maybe they could be also partial so that we can add methods to the classes.

Maybe the classes/types could be also partial so that we can add methods to the classes.

Sounds interesting.  I'm still learning .NET idioms, so perhaps you could explain how that would be useful vs. e.g. extension methods?

Maybe the classes/types could be also partial so that we can add methods to the classes.

Sounds interesting. I'm still learning .NET idioms, so perhaps you could explain how that would be useful vs. e.g. extension methods?

You can have another hand written .cs file in our project which will be able to modify the type.
For example by adding another interface and implementation.
Or by overriding existing virtual methods.
Custom ToString implementation my be handy, for example.
https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/partial-classes-and-methods


Copy TFL kernel EXP and exp_test into TFLM kernel without changes

Issue #45415 PR3: copy the reference kernel from lite to micro without making any changes. At this point the kernel is in micro but it is not part of the build

Thanks. I changed TODOs to OLDTODOs.
-Robby
From: Rajeshwar Reddy T<EMAIL_ADDRESS>Sent: Monday, January 11, 2021 3:24 PM
To: tensorflow/tensorflow<EMAIL_ADDRESS>Cc: Robby Sun<EMAIL_ADDRESS>State change<EMAIL_ADDRESS>Subject: Re: [tensorflow/tensorflow] Copy TFL kernel EXP and exp_test into TFLM kernel without changes (#45816)
@rthadur requested changes on this pull request.

In tensorflow/lite/micro/kernels/exp.cchttps://github.com/tensorflow/tensorflow/pull/45816#discussion_r555402686:

ExpContext op_context(context, node);

TfLiteIntArray* output_dims = TfLiteIntArrayCopy(op_context.input->dims);

op_context.output->type = op_context.input->type;

return context->ResizeTensor(context, op_context.output, output_dims);

+}

+template
+TfLiteStatus Eval(TfLiteContext* context, TfLiteNode* node) {

ExpContext op_context(context, node);

+#define TF_LITE_EXP(kernel_type, data_type)                               \

kernel_type::Exp<data_type>(GetTensorData<data_type>(op_context.input), \

                         NumElements(op_context.input),              \

                         GetTensorData<data_type>(op_context.output))

// TODO(kanlig): supports half, bfloat16, float64, complex64, and complex128.

please remove all TODOs , this is a blocker for internal merge , thank you

In tensorflow/lite/micro/kernels/exp.cchttps://github.com/tensorflow/tensorflow/pull/45816#discussion_r555402778:

   return kTfLiteError;

}

}

+#undef TF_LITE_EXP

return kTfLiteOk;

+}

+}  // namespace exp

+TfLiteRegistration* Register_EXP_REF() {

static TfLiteRegistration r = {nullptr, nullptr, exp::Prepare,

                            exp::Eval<exp::kReference>};

return &r;

+}

+// TODO(kanlig): add optimized implementation of Exp.
same as above
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHubhttps://github.com/tensorflow/tensorflow/pull/45816#pullrequestreview-565816328, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AQSCHARP3ZBSZW56O5N4SZLSZOB7NANCNFSM4VAMQ53A.

Thanks. I changed TODOs to OLDTODOs.
-Robby
From: Rajeshwar Reddy T<EMAIL_ADDRESS>Sent: Monday, January 11, 2021 3:24 PM
To: tensorflow/tensorflow<EMAIL_ADDRESS>Cc: Robby Sun<EMAIL_ADDRESS>State change<EMAIL_ADDRESS>Subject: Re: [tensorflow/tensorflow] Copy TFL kernel EXP and exp_test into TFLM kernel without changes (#45816)
@rthadur requested changes on this pull request.

In tensorflow/lite/micro/kernels/exp.cchttps://github.com/tensorflow/tensorflow/pull/45816#discussion_r555402686:

ExpContext op_context(context, node);

TfLiteIntArray* output_dims = TfLiteIntArrayCopy(op_context.input->dims);

op_context.output->type = op_context.input->type;

return context->ResizeTensor(context, op_context.output, output_dims);

+}

+template
+TfLiteStatus Eval(TfLiteContext* context, TfLiteNode* node) {

ExpContext op_context(context, node);

+#define TF_LITE_EXP(kernel_type, data_type)                               \

kernel_type::Exp<data_type>(GetTensorData<data_type>(op_context.input), \

                         NumElements(op_context.input),              \

                         GetTensorData<data_type>(op_context.output))

// TODO(kanlig): supports half, bfloat16, float64, complex64, and complex128.

please remove all TODOs , this is a blocker for internal merge , thank you

In tensorflow/lite/micro/kernels/exp.cchttps://github.com/tensorflow/tensorflow/pull/45816#discussion_r555402778:

   return kTfLiteError;

}

}

+#undef TF_LITE_EXP

return kTfLiteOk;

+}

+}  // namespace exp

+TfLiteRegistration* Register_EXP_REF() {

static TfLiteRegistration r = {nullptr, nullptr, exp::Prepare,

                            exp::Eval<exp::kReference>};

return &r;

+}

+// TODO(kanlig): add optimized implementation of Exp.
same as above
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHubhttps://github.com/tensorflow/tensorflow/pull/45816#pullrequestreview-565816328, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AQSCHARP3ZBSZW56O5N4SZLSZOB7NANCNFSM4VAMQ53A.

With https://github.com/tensorflow/tensorflow/commit/6cf83851ced6a8326cb48821a2c2ee2bef81f1f4, a previous version of this PR has been merged (without https://github.com/tensorflow/tensorflow/pull/45816/commits/9dcbe61107f9fce517298a7e522654d0dad66479). Closing the PR

With https://github.com/tensorflow/tensorflow/commit/6cf83851ced6a8326cb48821a2c2ee2bef81f1f4, a previous version of this PR has been merged (without https://github.com/tensorflow/tensorflow/pull/45816/commits/9dcbe61107f9fce517298a7e522654d0dad66479). Closing the PR


Add more HomeKit device enumeration tests

Description:
Another test only branch for homekit_controller - hopefully the last before the remaining config entry work.
These are all the remaining tests from my homekit_controller config entry branch tests that can be merged ahead of the remaining config entry code. Like #22141 these are tests that ensure devices we know should more or less work now continue to more or less work - espsecially that supported_features continue to be detected correctly and that all the supported accessories on multi-device hubs are detected.
Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.

(Rebased to get fix from #22207)

Sorry to bump but if someone could look at this it would be great, and would unblock me to work on some more homekit_controller PR's from my configentry branch. It doesn't change any HA code, just add homekit_controller tests in the same style as a PR that already landed (https://github.com/home-assistant/home-assistant/pull/22141).

Both requested changes have now been made.
I didn't push a rebase because of the breakage on dev, but i did test it still works on latest dev and it does.

Not really sure what is going on here. This change only contains tests, so shouldn't be pulling coverage down., especially on files i haven't gone near! Best guess is that because its an old PR (11 days old) the coverage has gone up on dev in the mean time, so coveralls thinks it will reduce the coverage? When obviously it won't.
I would rebase to fix it but it looks like there are CI failures on dev still. So i'm not sure what the next steps are for this PR?

Merged.

Ahh brilliant, tyvm!


Update SnakeYAML and other versions

I'm about to publish an 0.6.0 release for circe 0.8.0 and went ahead and updated to the new SnakeYAML version (1.18).
There's one change to the tests that's needed because of a change in SnakeYAML (long string values are now split across lines if splitLines is true).
/cc @n4to4 @denisrosset @jeremyrsmith @jeffmay @jonas

I believe the 2.10 failure is one of the intermittent failures we're seeing because of #19, so I'm just restarting.

Took a quick look at the README. I suggest to also update the version in the example, it still refers to 0.4.0.

@jonas Sounds good, I'll add that in after the automatic commits by sbt-release.

LGTM... not sure why there's a failure in CI but it looks like a travis problem and not a code problem.
👍

Cool! I'll be able to remove the custom OrderPreservingPrinter class in my project.

Codecov Report

Merging #27 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master    #27   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           4      4
  Lines          99     99
  Branches        5      5
=====================================
  Hits           99     99

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update daaebf2...e674b66. Read the comment docs.

@jeremyrsmith One intermittent failure because of a known issue and then a spurious Travis CI thing, but it's passing now.


Parser cannot handle omwscripts

.omwscripts are a special case in that they are just plain text files rather than the TES3 format but they should be sorted along with the rest of the content files as their order can be relevant (though I doubt there's a real case of that in any mods now).
plox should not attempt to parse the header of .omwscripts and any predicate that requires access to information in the plugin header ( e.g. DESC ) should always evaluate to false.
EDIT: Another oddity is that they can contain comments which makes the SIZE predicate potentially even more useless for them than it is with plugins

hmm right thanks. so the solution is simply to

add support for them
but skip parsing them
right?


GO Client  library v1 broken?

:lady_beetle: Describe the bug
go get<EMAIL_ADDRESS>doesn't seem to work anymore
:computer: Components impacted
GO client library
:bulb: Screenshots and/or logs
go<EMAIL_ADDRESS>unrecognized import path "heckel.io/ntfy": parse https://heckel.io/ntfy?go-get=1: no go-import meta tags (meta tag heckel.io/ntfy/v2 did not match import path heckel.io/ntfy)
:crystal_ball: Additional context
I've tried to find a v2 version but can't seem to find one.

I'm sorry. There was another ticket around naming it /v2 and I tried to get that to work, but now both are broken. Any hits as to how to fix this are appreciated.

My guess is that I have to publish a v2 with the new import pat, which I just did. So I hope it'll be resolved later. But idk.

Your paths seem fine, you didnt make a git tag yet for v2+ which is the problem i think.

My guess is that I have to publish a v2 with the new import pat, which I just did. So I hope it'll be resolved later. But idk.

i think this will solve the problem yes.

It did in fact not solve the problem. Here's what fixed it:
Old module (v1, at https://heckel.io/ntfy):
heckel.io/ntfy# cat index.html
<!DOCTYPE html>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta name="go-import" content="heckel.io/ntfy git https://github.com/binwiederhier/ntfy">
<meta name="go-source" content="heckel.io/ntfy https://github.com/binwiederhier/ntfy https://github.com/binwiederhier/ntfy/tree/master{/dir} https://github.com/binwiederhier/ntfy/blob/master{/dir}/{file}#L{line}">
<meta http-equiv="refresh" content="0; url=https://github.com/binwiederhier/ntfy">

ntfy, redirecting to GitHub ...

New module (v2, https://heckel.io/ntfy/v2):
hecke.io/ntfy/v2# cat index.html
<!DOCTYPE html>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta name="go-import" content="heckel.io/ntfy/v2 git https://github.com/binwiederhier/ntfy">
<meta name="go-source" content="heckel.io/ntfy/v2 https://github.com/binwiederhier/ntfy https://github.com/binwiederhier/ntfy/tree/main{/dir} https://github.com/binwiederhier/ntfy/blob/main{/dir}/{file}#L{line}">
<meta http-equiv="refresh" content="0; url=https://github.com/binwiederhier/ntfy">

ntfy, redirecting to GitHub ...

The -x flag and the GONOPROXY env variable also helped:
GONOPROXY='heckel.io/*' go get -u -x heckel.io/ntfy/v2

Curious: What are you using the lib for? I make no guarantees for the use as a Go lib. The client lib in particular is very rudimentary.

I use it in my go (private) apps, just to send notifications. I could make it myself but its nice to have something that is already ready to use ;)


sidebar has the same color customization with command panel

changing side bar background will also change command panel background

VSCode Version: 1.36.1
OS Version: 10.14.5

Steps to Reproduce:

try to change the background color of command panel.
You will likely put something like this in the settngs.json

"workbench.colorCustomizations": {
	"sideBar.background": "#282a36",
},

that code will change the color of the sidebar as well

Does this issue occur when all extensions are disabled?: yes

What is the command panel? See here for the names of the various parts in VSCode....
Also please add a screenshot.

command palette I meant.

there's now "quickInput.background"
fixed by https://github.com/microsoft/vscode/issues/65153


arch/irq: add the up_getusrpc macro to get the PC of the interrupted …

Summary
arch/irq: add the up_getusrpc macro
to get the PC of the interrupted thread in the interrupt
Impact
none, new API
Testing
bes board

[Experimental Bot, please feedback here]
No, this PR does not meet the NuttX requirements.
Here's why and how to improve it:
Missing Information:

Summary:

Why is this change necessary?  What problem does it solve? Why is retrieving the PC of the interrupted thread from an interrupt handler useful?
How does it work? Provide a more detailed explanation of the up_getusrpc macro. What does it do internally? Are there any limitations or special considerations?

Impact:

"none, new API" is not sufficient.  Even new APIs can have potential impacts:

Compatibility: Could this API conflict with existing or future code?
Security: Are there any security implications of exposing this information in an interrupt context?
Documentation: New APIs always require documentation.

Testing:

Insufficient detail:

"bes board" doesn't specify the architecture, board configuration, or NuttX version.
Provide the full board name (e.g., "stm32f4discovery").

No logs: Provide actual testing logs demonstrating the change's functionality:

Show how to use the up_getusrpc macro.
Demonstrate the output or behavior before and after the change.

How to Improve the PR:

Expand the Summary: Clearly explain the problem, the solution, and how it works.
Thoroughly Address Impact: Consider all potential consequences, even for seemingly small changes.
Provide Detailed Testing Information:  Include:

Build host details (OS, CPU, compiler).
Target details (architecture, board, NuttX version/commit).
Complete testing logs showing the macro's usage and the results before and after the change.

By providing this information, you make it easier for reviewers to understand and evaluate your changes, increasing the chances of your PR being accepted.


Review and clean up legacy files and folders

Description

Current repository has folders like 'community' and 'contributing' whose contents need to be reviewed for their relevance.

I am actively working on this in parallel.

also need to touch very old files (7,6,5,4,3 years old) to refresh Date Attribute Metadata on file


Black screen after scanning a qr code

@moaazsidat  @mamodom @mjgallag
What's happening?
after scanning a qr code successfully, I'm redirecting to other screen.
when i come back to qr code scanning screen, cam is blacked out.
How can it be reproduced?
add a qr code scanner screen and other screen in a tab nav bar
Build details?
version: react-native-qrcode-scanner - 1.1.2
android: 7.0
react-native: 57

initial screen itself is freezing with blank black screen instead of camera interface
@moaazsidat @matthewconstantine
is there a way out?

I think your camera component never remount after the first usage. The easiest way to fix is to give the component the unique value every time you rout to the component.
Actions.scanner({unique: Date.now() })

This issue is from RNCamera, and its solution is documented here:
https://github.com/react-native-community/react-native-camera/blob/master/docs/react-navigation.md
The solution is for react-navigation however a similar approach could be implemented with other navigation packages (like react-native-navigation using componentDidAppear and componentDidDisappear.

Thank you @j0nd0n7 for the link...
`import { useIsFocused } from '@react-navigation/core';
export const Component = () => {
const isFocused = useIsFocused();
// ...
if (hasCameraPermission === false) {
return No access to camera;
} else if (hasCameraPermission !== null && isFocused) {
return ;
} else {
return null;
}
}
`


String interpolation does not work properly

String interpolation with $"..." has broken syntax highlighting and $'...' does not work at all.
> let f = "foo"

> $"($f)"  # <-- the last " char is not syntax-highlighted

> $'($f)'
Error: nu::parser::parse_mismatch (https://docs.rs/nu-parser/0.1.0/nu-parser/enum.ParseError.html#variant.Expected)

  × Parse mismatch during operation.
   ╭─[entry #5:1:1]
 1 │ $'($f)'
   · ───┬───
   ·    ╰── expected variable
   ╰────

@kubouch - can we split this into two issues?

nevermind, I'll see if I can fix both


Fixed class name and namespace issue when creating command

When I want to create a class with the "nutgram:make:class" command, I have a problem when creating nested folders.
for examle :
php artisan nutgram:make:command Admin\Product\Create

output :
Path : app/Telegram/Commands/Admin/Product/Create.php
namespace App\Telegram\Commands;  // This is wrong

use SergiX44\Nutgram\Nutgram;

class Admin\Product\Create // This is wrong
{
    public function __invoke(Nutgram $bot): void
    {
        $bot->sendMessage('This is a command!');
    }
}

If we look carefully, the name of the class and namespace is wrong !
It should be :
namespace App\Telegram\Commands\Admin\Product;

use SergiX44\Nutgram\Nutgram;

class Create
{
    public function __invoke(Nutgram $bot): void
    {
        $bot->sendMessage('This is a command!');
    }
}

See the failing check too

I don't have access to see it :)


sort input validation

Coverage increased (+0.002%) to 89.248% when pulling e9d66c4856a8b166ef5b93e155fe5244fc1edb32 on kwmsmith:bugfix/sort-input-validation into 0cca30afa7f23906e5e031a57b530d8c15efc310 on blaze:master.

Coverage increased (+0.06%) to 89.301% when pulling 75e2488f6050c3811d21ba1c04a5bca8fcb66045 on kwmsmith:bugfix/sort-input-validation into 0cca30afa7f23906e5e031a57b530d8c15efc310 on blaze:master.

Coverage increased (+0.06%) to 89.301% when pulling 0f04ae810c2b84ac02cf6d6c3803c4fb5d102be5 on kwmsmith:bugfix/sort-input-validation into 0cca30afa7f23906e5e031a57b530d8c15efc310 on blaze:master.


Variable\Get-creds related crash

The following crashes PS>Attack. It probably shouldn't do that.
$cred = get-credentuals -cred[tab]

Might not be an issue. Further testing required.


ensure export modifier is used before default modifier

Fixes #44319

It's caused by tests added in #41947.  I've revert changes in the parser and handled the error in parsingContextErrors.
    default abstract class C {}
    ~~~~~~~
-!!! error TS1128: Declaration or statement expected.
+!!! error TS1005: 'export' expected.


Minimal example for usage in a browser

I was wondering if it would be possible to easily use the compiled JS library in a browser.
If the code has been thought for doing so, would it be possible to add a minimal example?
Thanks.

To elaborate a bit:
I've tried to bundle the module for browser, using esbuild:
.\node_modules\.bin\esbuild .\node_modules\age-encryption\dist\index.js --bundle --outfile=browser.js
The following two issues are present:

The bundle JS file contains one enormous anonymous block

(() => {
  var __create = Object.create;
  var __defProp = Object.defineProperty;
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
  var __getOwnPropNames = Object.getOwnPropertyNames;

  ...

  function generateIdentity() {
    const scalar = sodium4.randombytes_buf(sodium4.crypto_scalarmult_curve25519_SCALARBYTES);
    return (0, import_bech32_buffer.encode)("AGE-SECRET-KEY-", scalar);
  }

  ...

      return null;
    }
  };
})();

This results in the impossibility of using the top-level objects and functions in the browser, such as generateIdentity()
Quick-fix: manually remove the first and last line. This works, but it would be nice if the bundle operation would produce no top-level anonymous block to begin with.

There are issues with libsodium in the bundle operation. Calling generateIdentity() in the browser after importing the esbuild bundle gives the following error: sodium4.randombytes_buf is not a function.
I could verify that the function seems to exist as sodium4.libsodium._randombytes_buf, hinting as some problems with the bundling of libsodium-wrappers. Too bad, manually fixing the reference here doesn't work, as other errors follow.

@FiloSottile is bundling and usage in a browser something that you envisioned for this code, or that you'd be interested in? Or would one be better off writing a browser-oriented library from scratch? I think it would be great to have "official" support for this feature :)

Hello! Yeah I would love to have official support and docs for bundling. The fact that it doesn't work right now is very much a skill issue on my side :)
Is there maybe an example of bundle-friendly library that uses libsodium-wrappers anywhere I could look at? Otherwise I also welcome suggestions or PRs.

@FiloSottile no issues at all! I made a pull request, I am not a JS expert and so the solution is for sure improvable, but it seems to be working and I only made some minimal changes.


Remove updateThrottled

updateThrottled uses setTimeout/clearTimeout to ensure update is called at most once a second, but then we call updateThrottle exactly once a second anyway!
that's equivalent to calling update once a second directly

That's not quite right... please see comment from earlier https://github.com/feross/webtorrent-app/pull/56#discussion_r55164029


add methods to FieldLogger

LogrusLogger (later renamed as FieldLogger) was introduced in #320 three years ago.
However, this interface is not updated since then; missing some methods added later.
This pr added those methods:

WithContext introduced in #919
WithTime introduced in #781
Trace, Tracef, Traceln introduced in #844
Log, Logf, Logln introduced in #863

Sorry, I saw b54cafe5cee93a35bf6b061e261e8265ea0a628c and now understand that this is intended...the duck typing is hard... :cry:

Mistakenly reopened.
#872 and #987 addresses my concern, hopes v2 makes things clear


Warnings in CI - zsh compinit: insecure directories

Extracted from https://github.com/kachick/dotfiles/issues/224
zsh compinit: insecure directories, run compaudit for list.
Ignore insecure directories and continue [y] or abort compinit [n]? compinit: initialization aborted

When came from permission of nix store path, it can not be fixed in nix integration...?

Looks stable, didn't see in this few months


USBMSC

How I can use it with with USBMSC to simulate a pendrive? Thanks

you can't: ESP32-PsRamFS would need to borrow both writeRAW() and readRaw() functions from SD library to work with USBMSC, but it doesn't use track/sector geometry


X-RateLimit headers

I'm building an API with throttling and the API has well educated clients, that can respect the X-RateLimit headers. I haven't found a way to do this in the rack-attack gem. Is there an interest in this feature for throttling? I can develop, but was just wondering if it's desirable to the gem.
Many APIs are using this already:
http://developer.github.com/v3/#rate-limiting
http://developer.vimeo.com/guidelines/rate-limiting
https://dev.twitter.com/docs/rate-limiting/1.1
Looking forward for your feedback.

@gvc have a look at this: https://github.com/jbyck/rack-attack-rate-limit


scivis Volume valueRange is a FLOAT32_BOX1

yet anari_test_scenes/scenes/gravity_spheres_volume.cpp:145 and example_device/scene/volume/Volume.cpp:19 use FLOAT32_VEC2

Yes, this is incorrect in the examples -- just needs to be revised to the spec.

The initial concern should be resolved by https://github.com/KhronosGroup/ANARI-SDK/commit/81672598a3517a20a99c9ce42c13e71846068b24


once the animation done it doesnt restart

when the icon animate first time it work fine when next time come it dont animate again
also i cant find a any docs regarding ur iconify animate

I guess you are talking about icons with animated stroke from Material Line Icons set: https://github.com/cyberalien/line-md
Those icons run animation only once when it is rendered.
I'm not sure what you mean by "when next time come it dont animate again". Are you hiding and showing icon or re-creating it or what do you mean by that?

UnoCSS renders icons as background and mask images.
There is a big bug in browsers when using icons like that: animation timer starts when icon is first loaded. So first time you render icon, timer start and icon is animated. If you render same icon later again, timer already started, so animation has finished.
Additionally, soft refresh in browser does not reset animation timer if icon is cached, so after soft refresh animation doesn't restart either.
Unfortunately, Chrome team doesn't want to fix that. I've filed a bug report few years ago, Chromium dev told me it is like that by design.
Solution is to use iconify-icon web component: https://iconify.design/docs/iconify-icon/
I'm using it on all websites, including Nuxt and Vitepress. It has a workaround for that bug, correctly animating icons every time it is rendered. Additionally, it re-animates icon whenever it appears in view (this can be disabled using noobserver prop)


Any thoughts to allowing alternate Jinja2 templates?

I'm interested in doing an alternate template, but I fear this will mean essentially forking ABlog. Any plans for a configuration option or plugin approach to use external packages for a template?

Yes, we could allow alternate templates. Are there Sphinx themes using other template engines? I am not familiar with other options.

Here's an example that uses Mako https://bitbucket.org/zzzeek/zzzeeksphinx/

On Sep 24, 2015, at 8:42 PM, Ahmet Bakan<EMAIL_ADDRESS>wrote:
Yes, we could allow alternate templates. Are there Sphinx themes using other template engines? I am not familiar with other options.

You are right that my question was perhaps phrased poorly by saying Jinja2. However, leaving Jinja2 might mean a more difficult abstraction, more like a full plug-in architecture. By staying with Jinja2, it’s more like replacement of base templates.
Perhaps you can rely on Sphinx’s pluggability for the theme component.
—Paul

Paul,
Yes, we should rely on Sphinx for theme/template component. To support mako, I will work on translating ablog/templates/*.html to ablog/templates/*.mako files. We could include files to support any other template engine as well.
Ahmet
P.S. Sorry for delayed responses, there is a newborn at home :)

Ok, I tried to add .mako templates, but I didn't like how that works. I am giving up, and closing this issue. If you wanna pursue that you are welcome to use template in mako branch.

That's fine, I didn't expect "Support Mako" to be part of this. If make ABlog look different is really a Sphinx theme customization issue, then closing this is certainly the right thing.

I would love if someone makes a theme to look blogs different than documentation pages. I am cleaning up and documenting ablog API to encourage that person :)

@abakan I use Ablog and my own theme for http://uralbash.ru/

Was there any ABlog-unique work to it, or was it just normal Sphinx theming?
—Paul

On Oct 26, 2015, at 4:32 AM, uralbash<EMAIL_ADDRESS>wrote:
@abakan https://github.com/abakan I use Ablog and my own theme for http://uralbash.ru/ http://uralbash.ru/

@pauleveritt I just redefined index.rst (https://github.com/uralbash/blog/blob/master/index.rst) and post.html (https://github.com/uralbash/blog/blob/master/_templates/page.html)
Also added _templates dir in conf.py (https://github.com/uralbash/blog/blob/master/conf.py#L233)
templates_path = ['_templates', ablog.get_html_templates_path()]

In general it's a standard sphinx theme.


Router Store has a null state

Hi. I have followed all examples, provided in docs, but my router appears with null state. Here is my implementation:
import { createRouter } from 'router5';
import browserPlugin from 'router5/plugins/browser';
import loggerPlugin from 'router5/plugins/logger';
import { mobxPlugin, RouterStore } from 'mobx-router5';

const routerStore = new RouterStore();

const routes = [
  { name: 'signup', path: '/signup' },
  { name: 'user', path: '/user/:uid' },
];

export default function configureRouter(useLoggerPlugin = false) {
  const router = createRouter(routes, { defaultRoute: 'home' })
    .usePlugin(mobxPlugin(routerStore)) // Important: pass the store to the plugin!
    .usePlugin(browserPlugin({}));

  if (useLoggerPlugin) {
    router.usePlugin(loggerPlugin);
  }
  console.log('%c 1router', 'color: #ffcb14', router);
  return { router, routerStore };
}

as the results, my router store contains null in route props

Hello,
You don't have home route in your routes, have you tried to change the defaultRoute?

No problem, cheers!


Move external test suite configs out of experimental.

Our CI skips running on PRs that only modify 'experimental'. These files are being used close enough to the core workflows that they belong in a supported location.

Might hold off on this until we figure out if https://github.com/openxla/iree/pull/16801#discussion_r1540128957 is sticking or needs to be reverted. Landing this on top would make reverting trickier.

Might hold off on this until we figure out if #16801 (comment) is sticking or needs to be reverted. Landing this on top would make reverting trickier.

Dunno what happened there. Succeeded on a retry. Guess this should be fine to keep going forward with.

The prior change appears to be sticking this time. PTAL?


UnexpectedResponse: Unexpected Response: 400 (Bad Request) Raw response content: b'{"status":{"error":"Format error in JSON body: data did not match any variant of untagged enum PointInsertOperations"},"time":0.0}'

herecode.txt
My data is a folder, inside there is a set of image folders, and I use the folder names to label the image files in the folder.

Qdrant only allows UUID strings and unsigned integers as point IDs. You seem to be using a custom label string as ID.
https://qdrant.tech/documentation/concepts/points/#point-ids

Resolved with https://github.com/qdrant/qdrant-client/issues/463.


Remote API Stats - Return Empty Response From Netcat

Hello Docker Community,
I believe there may be an issue with the Docker Remote API for obtaining stats. Few things to note:
I cannot use curl 7.40 or greater as my customers may or may not have this version; As a fallback, I use netcat, similar to the below:
[root@localhost ~]# echo -e "GET /containers/fe47ba52b12a9c320569329aeb35a861aa87c68a7ffe9822d6d0314e40ee8a67/stats HTTP/1.0\r\n" |  nc -U /var/run/docker.sock
HTTP/1.0 200 OK
Server: Docker/1.9.1 (linux)
Date: Wed, 18 May 2016 14:03:21 GMT
Content-Type: text/plain; charset=utf-8

[root@localhost ~]#

You will notice that nothing is returned. Please also note that I have reviewed https://github.com/docker/docker/issues/16078 and this will not work as my netcat does not have a '-q' flag. I have tried, however, using -w in a last ditch effort w/ no avail. I'm really just hoping that there is a magical flag that I'm not utilizing correctly.
Also, to verify that stats IS working, docker stats <container id> yields:
CONTAINER                                                          CPU %               MEM USAGE / LIMIT     MEM %               NET I/O             BLOCK I/O
fe47ba52b12a9c320569329aeb35a861aa87c68a7ffe9822d6d0314e40ee8a67   0.00%               22.65 MB / 2.098 GB   1.08%               3.674 kB / 848 B    16.7 MB / 0 B

Output of docker version:
Client:
 Version:         1.9.1
 API version:     1.21
 Package version: docker-1.9.1-25.el7.centos.x86_64
 Go version:      go1.4.2
 Git commit:      78ee77d/1.9.1
 Built:
 OS/Arch:         linux/amd64

Server:
 Version:         1.9.1
 API version:     1.21
 Package version: docker-1.9.1-25.el7.centos.x86_64
 Go version:      go1.4.2
 Git commit:      78ee77d/1.9.1
 Built:
 OS/Arch:         linux/amd64

Output of docker info:
Containers: 4
Images: 9
Server Version: 1.9.1
Storage Driver: devicemapper
 Pool Name: docker-253:0-451239-pool
 Pool Blocksize: 65.54 kB
 Base Device Size: 107.4 GB
 Backing Filesystem:
 Data file: /dev/loop0
 Metadata file: /dev/loop1
 Data Space Used: 134.4 MB
 Data Space Total: 107.4 GB
 Data Space Available: 13.39 GB
 Metadata Space Used: 839.7 kB
 Metadata Space Total: 2.147 GB
 Metadata Space Available: 2.147 GB
 Udev Sync Supported: true
 Deferred Removal Enabled: false
 Deferred Deletion Enabled: false
 Deferred Deleted Device Count: 0
 Data loop file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
 Library Version: 1.02.107-RHEL7 (2015-12-01)
Execution Driver: native-0.2
Logging Driver: json-file
Kernel Version: 4.6.0-1.el7.elrepo.x86_64
Operating System: CentOS Linux 7 (Core)
CPUs: 1
Total Memory: 1.954 GiB
Name: localhost.localdomain
ID: 7XW7:N72J:LRPO:Q67C:LWJ3:M7XP:VD3W:IYNV:2DSZ:EJTV:2WUP:BACQ
WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled

Additional environment details (AWS, VirtualBox, physical, etc.):
This is running on 'CentOS Linux release 7.2.1511 (Core) ' having kernel '4.6.0-1.el7.elrepo.x86_64'. It is hosted on a VMWare ESXi 5.5 and has curl version '7.29.0 (x86_64-redhat-linux-gnu)'
Describe the results you received:
Receive blank response from API call.
Describe the results you expected:
Expected to receive a json block of data.
More Info
Also, I can verify that my API request are working:
[root@localhost ~]# echo -e "GET /version HTTP/1.0\r\n" |  nc -U /var/run/docker.sock HTTP/1.0 200 OK
Content-Type: application/json
Server: Docker/1.9.1 (linux)
Date: Wed, 18 May 2016 14:29:35 GMT
Content-Length: 211

{"Version":"1.9.1","ApiVersion":"1.21","GitCommit":"78ee77d/1.9.1","GoVersion":"go1.4.2","Os":"linux","Arch":"amd64","KernelVersion":"4.6.0-1.el7.elrepo.x86_64","PkgVersion":"docker-1.9.1-25.el7.centos.x86_64"}

I don't think there's much we can do about that; if you don't have tools to communicate with the API, that's not a bug in docker.
You could consider having them run cURL in a container;
docker run -it --rm -v /var/run/docker.sock:/var/run/docker.sock jess/curl curl -N --unix-socket /var/run/docker.sock http:/containers/web/stats

I'm closing this because this isn't a bug

This doesnt work because it require curl v 7.40 to use --unix-socket.  I mentioned that in my original post.

This doesnt work because it require curl v 7.40 to use --unix-socket. I mentioned that in my original post.

Have you tried? It's running cURL inside a container, so you can have any version you want.
docker run jess/curl curl --version
curl 7.42.1 (x86_64-alpine-linux-musl) libcurl/7.42.1 OpenSSL/1.0.2e zlib/1.2.8 libssh2/1.5.0
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp
Features: IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP UnixSockets

To force users to upgrade items like cURL and kernels in order to consume metric APIs will really reduce your customer consumption

I don't really understand the issue; If you need to consume the API, you need something to consume it. In this case, it's a streaming endpoint, so you need a client that is capable of using that. Could be cURL, could be a simple go binary that connects to the API.
If you don't need "streaming", you can pass the ?stream=0 option, so that you can use polling to get stats;
echo -e "GET /containers/web/stats?stream=0 HTTP/1.0\r\n" |  nc -U /var/run/docker.sock

In reference to your docker wrapping curl container, its too slow, especially if I had to monitor thousands of hosts with containers. Also, it did not work for me:
[root@localhost memory]# docker run -it --rm -v /var/run/docker.sock:/var/run/docker.sock jess/curl curl -N --unix-socket /var/run/docker.sock http:/containers/json
Usage of loopback devices is strongly discouraged for production use. Either use `--storage-opt dm.thinpooldev` or use `--storage-opt dm.no_warn_on_loop_devices=true` to suppress this warning.
curl: (7) Couldn't connect to server

Yea, I would love to not have it streaming. but that still doesnt produce expected results
[root@localhost memory]# echo -e "GET /containers/fe47ba52b12a9c320569329aeb35a861aa87c68a7ffe9822d6d0314e40ee8a67/stats?stream=0 HTTP/1.0\r\n" |  nc -U /var/run/docker.sock
HTTP/1.0 200 OK
Content-Type: application/json
Server: Docker/1.9.1 (linux)
Date: Wed, 18 May 2016 17:03:59 GMT
Content-Length: 0

[root@localhost memory]#

The API should really be accessible from my remote machine without having to SSH into a box then running CLI. This may be possible, but to make it happen, you have to open a port to converse with this machine, thus introducing a security concern.
If using netcat works for pretty much all other commands but NOT stats endpoint, how is this not a bug?
Am I missing something with the above? For a successful monitoring solution, I should never force a client machine to do Change Requests to update. This isn't scalable, nor is it practical. Enterprises are very hesitant to force their IT resource to be on the "latest and greatest", it takes years.

The API should really be accessible from my remote machine without having to SSH into a box then running CLI.

How are you accessing /var/run/docker.sock from your remote machine?

If using netcat works for pretty much all other commands but NOT stats endpoint, how is this not a bug?

As I mentioned above; /stats is a streaming endpoint, I suspect this makes a difference here. Note that nc is notorious, in that its implementation differs a lot between distros. The endpoint is working as intended, but it looks like the version of nc on CentOS can't work with that, and exits directly.

Really appreciate the feedback on this one! To access the /var/run/docker.sock I first SSH into my remote machine then do a CMD line call using paramiko package (python). Is there a better way to achieve successful API calls from a remote system?
I have a feeling that your intuition on CentUS nc is correct. I am in no way claiming to be a Docker expert, but I have interacted with other APIs for service like AWS, SoftLayer, Azure, and VMWare so I may be missing something foundational to my solution

Some ways to remotely access the API;

make the daemon listen to <IP_ADDRESS>:2375 (in addition to a socket), and use a SSH tunnel to connect. Note that port 2375 is an non-TLS port, so unprotected
better is to protect the API with TLS (even if it's only accessible locally); https://docs.docker.com/engine/security/https/
if you don't want to use a tunnel, you can expose the port on the public interface of the host, but ONLY do so if you properly set up TLS (see previous bullet)

Curiosity, do you see majority of your customers forcing the daemon to listen to a designated port in order to issue remote APIs? The big kicker for me is that I do not have the ability to make changes to the clients running docker-engine, so I will require a Change Request to get this done. My solution is meant to be read-only, quick-to-use for my customers utilizing Docker in their IT space. If they have to do things like open up ports or manual ca-cert authentication, it just wont happen. Having the ability to quickly get information from Docker is a necessity, especially for larger SP and enterprises.
Now, I am also not an architect, but is there any development to have a static endpoint to converse with customer docker instances? Something like how Cloudwatch works for AWS...where instances will publish metrics to a DB in a DMZ, and access to that endpoint will be controlled by an IAM service. Right now may just not be the right time to support Docker (for my use case) with large customers.
At first walk into Docker Management/monitoring, I was hoping there was something to get from the docker hub. I can create some hackery around SSH'ing to servers and cat'ing proc PIDs, but its getting messier ever step I take.
Thanks again for all the help with the above!

I don't think it's right to compare Docker Engine with a hosted solution, such as AWS / Cloudwatch. AWS / Cloudwatch is a solution built on top of a lot of other technology. Depending on your use-case, Docker Engine can be part of a solution. By design, the Engine does not provide all possible features, but provides the tools/components to build those features (as there's never a one-size-fits-all solution).
There are various solutions that make use of the engine to give a more "feature complete" / "polished" experience. For example Docker Cloud, or (if you want to have this on-premise) Universal Control plane / Docker Datacenter, or Rancher. For metrics you can also  think of tools like cAdvisor.

Same story here ... but working with curl ...
root@it-2:/home/knujuser# echo -e "GET /containers/342cd03d20d3/stats HTTP/1.0\r\n" |  nc -U /var/run/docker.sock
HTTP/1.0 200 OK
Api-Version: 1.26
Docker-Experimental: false
Server: Docker/1.13.1 (linux)
Date: Thu, 09 Mar 2017 19:26:18 GMT
Content-Type: text/plain; charset=utf-8
root@it-2:/home/knujuser# echo -e "GET /containers/342cd03d20d3/stats?stream=0 HTTP/1.0\r\n" |  nc -U /var/run/docker.sock
HTTP/1.0 200 OK
Api-Version: 1.26
Content-Type: application/json
Docker-Experimental: false
Server: Docker/1.13.1 (linux)
Date: Thu, 09 Mar 2017 19:26:21 GMT
Content-Length: 0
root@it-2:/home/knujuser# curl -s --unix-socket /var/run/docker.sock http::/containers/342cd03d20d3/stats?stream=false | jq ".cpu_stats"
{
"cpu_usage": {
"total_usage":<PHONE_NUMBER>342,
"percpu_usage": [
603946008599,
586343521310,
631040813931,
676828044502
],
"usage_in_kernelmode":<PHONE_NUMBER>00,
"usage_in_usermode":<PHONE_NUMBER>000
},
"system_cpu_usage":<PHONE_NUMBER>000000,
"throttling_data": {
"periods": 0,
"throttled_periods": 0,
"throttled_time": 0
}
}
root@it-2:/home/knujuser#

I found the solution: nc -q 2 -U /var/run/docker.sock
That will keep the connection open.
echo -e "GET /containers/342cd03d20d3/stats?stream=0 HTTP/1.0\r\n" | nc -q 2 -U /var/run/docker.sock


[SPARK-30380][ML] Refactor RandomForest.findSplits

What changes were proposed in this pull request?
Refactor RandomForest.findSplits by applying aggregateByKey instead of groupByKey
Why are the changes needed?
Current impl of RandomForest.findSplits uses groupByKey to collect non-zero values for each feature, so it is quite dangerous.
After looking into the following logic to find splits, I found that collecting all non-zero values is not necessary, and we only need weightSums of distinct values.
Does this PR introduce any user-facing change?
No
How was this patch tested?
existing testsuites

Test build #115910 has started for PR 27040 at commit 39671d9.

Merged build finished. Test PASSed.

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

Test build #115912 has started for PR 27040 at commit 14e8a46.

Merged build finished. Test PASSed.

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

Test build #115910 has finished for PR 27040 at commit 39671d9.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

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

Test build #115912 has finished for PR 27040 at commit 14e8a46.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

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

Merged to master


Materialized View

Hi, I try to SELECT from the materialized view but I don't get any records.
It's a missing feature?
Thanks
Franco

materialized view is working like table
did you test your select stmt ins sql developer or any other tools to see the result and compare?

The same code with go-oci8 work (obviously change the connection string composition).
This is output from you hello example
Successfully connected.

Oracle Database 11g Release <IP_ADDRESS>.0 - 64bit Production
PL/SQL Release <IP_ADDRESS>.0 - Production
CORE	<IP_ADDRESS>.0	Production
TNS for 64-bit Windows: Version <IP_ADDRESS>.0 - Production
NLSRTL Version <IP_ADDRESS>.0 - Production

I make a select stmt on materialized view oracle 11.2 and get results as expected
can you write your code to see the problem

It's very simple example
package main

import (
	"database/sql"
	"fmt"
	"time"

	"github.com/guregu/null"
	_ "github.com/sijms/go-ora"
	// _ "github.com/godror/godror"
	// _ "github.com/mattn/go-oci8"
)

type Record struct {
	ID_RECORD   null.String
	DESCRIPTION null.String
	DEBUG_      null.String
}

var sqlStmt = `
SELECT
   ID_RECORD,
   DESCRIPTION,
   DEBUG_
from DEVELOPERS.MVTEST
`

func main() {

	//	db, err := sql.Open("oci8", "user/password@server:1521/service")

	db, err := sql.Open("oracle", "oracle://user:password@server:1521/service")
	if err != nil {
		panic(err)
	}
	defer db.Close()

	PrintNow("STEP 1")
	err = db.Ping()
	if err != nil {
		panic(err)
	}
	PrintNow("STEP 2")
	stmt, err := db.Prepare(sqlStmt)
	if err != nil {
		panic(err)
	}
	defer stmt.Close()
	PrintNow("STEP 3")
	rows, err := stmt.Query()
	if err != nil {
		panic(err)
	}
	PrintNow("STEP 4")
	ctr := 0
	for rows.Next() {
		rec := Record{}
		if err := rows.Scan(
			&rec.ID_RECORD,
			&rec.DESCRIPTION,
			&rec.DEBUG_,
		); err != nil {
			panic(err)
		}
		ctr++
		fmt.Println(ctr)
		fmt.Println("ID_RECORD ..........:", rec.ID_RECORD.String)
		fmt.Println("DESCRIPTION ........:", rec.DESCRIPTION.String)
		fmt.Println("DEBUG_ .............:", rec.DEBUG_.String)
		fmt.Println("---------------------")
		fmt.Println()

	}
	PrintNow("STEP 5")
}

func PrintNow(value ...interface{}) {
	value = append([]interface{}{time.Now().Format("2006-01-02 15:04:05.000000")}, value...)
	fmt.Println(value...)
}

This is output
2020-11-18 14:05:55.081181 STEP 1
2020-11-18 14:05:57.421472 STEP 2
2020-11-18 14:05:57.421618 STEP 3
2020-11-18 14:05:57.508045 STEP 4
2020-11-18 14:05:57.508116 STEP 5

every thing is correct except this one
can you use sql.NullString and see the result

The same. I also added error checking on rows.
...
if err := rows.Err(); err != nil {
		panic(err)
}

PrintNow("STEP 5")

This code work properly without error
func TestMaterializeView(conn *sql.DB) error {
	stmt, err := conn.Prepare("SELECT ITEM_NO, ITEM_NAME, ITEM_CODE FROM ITEM_DATA WHERE ITEM_SERIAL = 10589")
	if err != nil {
		return err
	}
	defer stmt.Close()
	results, err := stmt.Query()
	var itemNo int64
	var itemCode int64
	var itemName string
	defer results.Close()
	for results.Next() {
		err = results.Scan(&itemNo, &itemName, &itemCode)
		if err != nil {
			return err
		}
		fmt.Println("item no: ", itemNo, "\titem code: ", itemCode, "\tite name: ", itemName)
	}
	return nil
}

result is one record
materialized view created like this
create materialized view USER.ITEM_DATA BUILD DEFERRED refresh fast on demand for update as
SELECT * FROM ITEM_DATA@DATABASE_LINK;

then make refresh
BEGIN
  DBMS_MVIEW.REFRESH('ITEM_DATA', 'C');
END;

Hi, I found the solution.
This does not work
var sqlStmt = `
SELECT
   ID_RECORD,
   DESCRIPTION,
   DEBUG_
from DEVELOPERS.MVTEST
`

This  work
var sqlStmt = "SELECT ID_RECORD, DESCRIPTION, DEBUG_ from DEVELOPERS.MVTEST"

I think there is a parser problem.
By

Hi, I found the solution.
This does not work
var sqlStmt = `
SELECT
   ID_RECORD,
   DESCRIPTION,
   DEBUG_
from DEVELOPERS.MVTEST
`

This  work
var sqlStmt = "SELECT ID_RECORD, DESCRIPTION, DEBUG_ from DEVELOPERS.MVTEST"

I think there is a parser problem.
By


Problem with SMP and mm_delaylist

In SMP mode there is a mm_delaylist for each CPU. When calling mm_free() the memory is put into the delaylist if the mm_lock cannot be acquired, while the delaylist elements are freed when mm_malloc() is called.
There is a problem with the per-CPU delaylist when using this opportunistic approach. Let's imagine a hypothetical situation where:

Only CPU 0 allocates memory
Only CPU 1 frees memory

This will cause a systematic error where CPU 1:s mm_delaylist is filled up with items to be freed, but since CPU 1 never calls mm_malloc() the items in the delaylist are never freed.
We can already see this behavior, as discussed in https://github.com/apache/nuttx-apps/pull/2159
In this simple example only 1 process (hello) is spawned and then the amount of free memory is queried from the shell. The kernel memory usage rises after each run of hello, due to the aforementioned issue.
This can and will eventually result in a OOM situation, even though most (if not all) of the memory is really free (waiting in CPU1 delaylist). Thus, the current opportunistic approach has a vulnerability.

Current mm_delay_list is protected by spinlock and only one CPU can operate mm_delay_list.
But our design is there is a mm_delay_list for each CPU, it will make this issue and delay_list for each CPU is unnecessary because only one CPU can operate delay_list .
Maybe we can share mm_delay_list for each heap instead of CPU?
If my idea is incorrect, please correct me.
Thanks a lot.

no, we can't, you can get more info from: https://github.com/apache/nuttx/pull/4029


improve handling of relation fields that are not preloaded

Coverage remained the same at 100.0% when pulling c1116e4b67dfac307ebad8acb4fac63363cb7a3c on improve-error-messages into eddbcc60d15f824531343dcab30119d7623a702c on main.