ESLint: 'className' is missing in props validation(react/prop-types)

When using ESLint you can get error "ESLint: 'className' is missing in props validation(react/prop-types)". Just need to add interface that extends React.HTMLAttributes.
Was:
const Card = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>> (({ className /* warning is here */, ...props }, ref) => (...))
Should be:
interface CardProps extends React.HTMLAttributes {}
const Card = React.forwardRef<HTMLDivElement, **CardProps**> (({ className, ...props }, ref) => (...))

every shadcn-ui components got error of react.prop-types. so i add
"react/prop-types": [2, { "ignore": "className" }],
to my rule of .eslintrc.
After that we don't need to add extra interface every shadcn-ui components.
if there is any better way, mention me please!

[...] so i add "react/prop-types": [2, { "ignore": "className" }], to my rule of .eslintrc [...]

Just as a side note, the value of ignore is supposed to be an array, e.g. "ignore": ["className"]

Add this content to the eslint configuration file
module.exports = {
// ...
  overrides: [
    // React
    {
      files: ["**/*.{js,jsx,ts,tsx}"],
      // ...
      rules: {
        "react/prop-types": [2, {
          "ignore": ["className", "variant", "size"]
        }]
      }
    },
  // ...
  ],
};

every shadcn-ui components got error of react.prop-types. so i add "react/prop-types": [2, { "ignore": "className" }], to my rule of .eslintrc. After that we don't need to add extra interface every shadcn-ui components.
if there is any better way, mention me please!

Ignoring a rule to shut up a valid Typescript error is not a fix, if we are going to start ignoring whatever makes noise, then just let's take out Eslint and Typescript from our projects.
The proper way to fix it is to define the className or any other parameter in the type definitions where it's required.
Something along this pattern:
export default function DatePickerWithRange({
  className,
}: React.HTMLAttributes<HTMLDivElement> & {
  className?: string
}) {
// ...

It would be better if this could be addressed at the library level, as I've seen this error in many components.

This issue has been automatically closed because it received no activity for a while. If you think it was closed by accident, please leave a comment. Thank you.

This is still happening. Importing HTMLAttributes type from react and using it solves the issue:
import * as React from "react";
import { cn } from "@/lib/utils";
import type { HTMLAttributes } from "react";

const Card = React.forwardRef<
  HTMLDivElement, HTMLAttributes<HTMLDivElement>
>(({ className, ...props }, ref) => (
// ...

My suggestion is to turn off "react/prop-types", but ONLY for shadcn/ui
Add to eslint config:
module.exports = {
  overrides: [
    ...,
    // shadcn/ui
    {
      files: ['app/shadcn/ui/**/*.{ts,tsx}'],
      rules: {
	"react/prop-types": 'off'
      }
    }
  ]
};

Ignoring the rule in eslint is a terrible idea because you're essentially disabling your linting by disabling this rule: "react/prop-types": 'off'
You may well need it in another part of your app.
This is issue is caused because somewhere in the typing className isn't being found.
A better solution is to extend the prop type/interface with the missing types.
// Option 1 (seems better): Get exact attributes types
const ToastViewport = React.forwardRef<
  React.ElementRef<typeof ToastPrimitives.Viewport>,
  React.ComponentPropsWithoutRef<typeof ToastPrimitives.Viewport> &
    React.HTMLAttributes<typeof ToastPrimitives.Viewport>

// Option 2: Use default JSX attributes types
const ToastViewport = React.forwardRef<
  React.ElementRef<typeof ToastPrimitives.Viewport>,
  React.ComponentPropsWithoutRef<typeof ToastPrimitives.Viewport> &
    React.JSX.IntrinsicAttributes

I encountered this issue recently after doing some refactoring and came across this issue. Posting my approach, in case someone finds it useful.
Versions (from package-lock.json)
* @types/react: 18.3.12
* eslint: 9.14.0
* eslint-plugin-react: 7.37.2
* typescript: 5.6.3

TLDR
If you really want to use the import * as React from 'react' pattern and you don't want to mess with the react/prop-types rule in your ESLint config, the path I decided to go with was:

For HTML elements, use React.JSX.IntrinsicElements['tag'] over React.ComponentProps<'tag'>

When used with forwardRef, ComponentProps is functionally the same as using ComponentPropsWithoutRef

For Radix components, use the prop types for each element whenever possible.

[!TIP]
Some things that go on under the hood in @types/react:

ComponentPropsWithoutRef<T> is a type alias for PropsWithoutRef<ComponentProps<T>>
ComponentProps<T> is a type alias that uses JSX.IntrinsicElements[T], if T extends keyof JSX.IntrinsicElements
forwardRef<T, P> uses PropsWithoutRef<P>, so the type of ref on P isn't actually used to type the ref in the render callback

Example
As an example, with the Sheet component:
import * as SheetPrimitive from '@radix-ui/react-dialog';
import * as React from 'react';

// With a Radix component, its props type can be used (hopefully it's available)
export const SheetDescription = React.forwardRef<
    React.ElementRef<typeof SheetPrimitive.Description>,
    SheetPrimitive.DialogDescriptionProps
>(({ children, className, ...props }, ref) => {
    return (
        <DialogPrimitive.Description className={cn('text-sm text-muted-foreground', className)} ref={ref} {...props}>
            {children}
        </DialogPrimitive.Description>
    );
});
SheetDescription.displayName = 'SheetDescription';

// For a component that uses HTML elements, `JSX.IntrinsicElements` can be used
export const SheetHeader = React.forwardRef<HTMLDivElement, React.JSX.IntrinsicElements['div']>(
    ({ children, className, ...props }, ref) => {
        return (
            <div className={cn('flex flex-col gap-2 text-center sm:text-left', className)} ref={ref} {...props}>
                {children}
            </div>
        );
    },
);
SheetHeader.displayName = 'SheetHeader';

How I got to my current approach is explained below. Why this is an issue is beyond my current understanding, but these are just things I noticed.

(Click to expand) I wanted to simplify the import structure in my code, seeing where I could safely use namespace imports instead of explicitly importing everything I needed by name.

The ESLint error initially didn't occur when I brought in ComponentPropsWithoutRef as a named import. But once I transitioned to namespace imports... 🫠
Initially, I was using ComponentPropsWithoutRef as a named import:
// Depending on the file, this import can get pretty long.
import {type ComponentPropsWithoutRef, type ElementRef, forwardRef} from 'react';

export const Foo = forwardRef<HTMLDivElement, ComponentPropsWithoutRef<'div'>(
    // No ESLint error here for the `className` prop.
    ({ className, ...props }, ref) => {
        //
    },
);

But once I switched over to using a namespace import...
// Also occurs if using `import React from 'react'`
import * as React from 'react';

export const Foo = React.forwardRef<HTMLDivElement, React.ComponentPropsWithoutRef<'div'>(
    // Oh no, ESLint error :(
    ({ className, ...props }, ref) => {
        //
    },
);


Composer updated to Lumen 9

Changes proposed in this pull request:
Composer updated to Lumen 9.x

Thank you!

Can you make a tag for that merge ?

Done! 🚀
https://github.com/digiaonline/lumen-newrelic/releases/tag/4.1.0

ty. Do you plan add also tag to nordsoftware/lumen-chained-exception-handler ? Sorry being annoying )

Not annoying at all, thanks for the prompt!
Done! 🚀
https://github.com/digiaonline/lumen-chained-exception-handler/releases/tag/3.1.0


IntegerType and BooleanType got incompatible during the migration from 0.6.0 to 2.1.1

When the configuration spark.databricks.delta.schema.autoMerge.enabled is set to true, the implicit cast from integer to boolean doesn't work after switch to the 2.1.1 version.
org.apache.spark.sql.AnalysisException: Failed to merge fields 'enabled' and 'enabled'. Failed to merge incompatible data types BooleanType and IntegerType
at org.apache.spark.sql.delta.schema.SchemaMergingUtils$.$anonfun$mergeSchemas$1(SchemaMergingUtils.scala:201)

I believe before the strict schema check  introduction, such cases were being handled by native spark cast and runtime errors were possible only if one tried making incompatible casts.  I am not sure whether it makes sense to introduce a special flag to restore the previous behaviour but it would be awesome to have this compatibility information somewhere in the migration notes. It took quite a while to figure out why our pipelines started failing.

Delta 0.6 used a much older Spark version. I wonder if Spark back then generated a different schema.
Also, it seems like implicitly casting from Integer to Boolean could cause some data loss? Seems weird to me. I don't think we want to reintroduce that feature/bug, even with a feature flag.
Are you able to work around this?

Eventually, we overcame it by doing the missing cast on the application side. The root cause of the problem I believe is two different types cast mechanisms existing in the current Spark version which are implicitly being used in delta schema merge:
https://github.com/apache/spark/blob/master/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/Cast.scala#L752 - that one was being used in 0.6.0 version
https://github.com/apache/spark/blob/master/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/TypeCoercion.scala#L974 - it is from the 2.1.1 version, though I believe it was introduced somewhere in between 0.6 and 2.1
As a result, the boolean <-> integer conversion stopped working on the way. So did some other type pairs I suspect.


Add support for Linx

Hello, I am a Linux user and I find your project very interesting. Unfortunately, Surge is currently not available for Linux. Would it be possible to release a Linux-specific version? This would greatly benefit many users, especially those who prefer open-source operating systems. Are there any plans or timelines for Linux support?
I look forward to hearing your thoughts on this. Thank you!

Would it be possible for you to build from source? I don't believe there is any reason for the latest version not to be able to be built and ran on Linux.


Revert "Revert "Refactor index validity-checking code into a new file ""

What
Reopens https://github.com/stellar/rs-soroban-env/pull/291

Reverts https://github.com/stellar/rs-soroban-env/pull/290, which reverted https://github.com/stellar/rs-soroban-env/pull/279. Bring back the index validity checking code.
Adds the fix, improves interface, adds tests

Why
[TODO: Why this change is being made. Include any context required to understand the why.]
Known limitations
[TODO or N/A]

I tested this against the SDK and the SDK tests pass.


ProxySQL recognition and administration

Are there any plans to recognize and/or administer proxysql?
Orchestrator should be able to receive a proxysql ip and port and then read all the servers that it connects to. Proxysql should then show up as a master.
I think later options are administering proxysql via the orchestrator interface.

I'm happy to support ProxySQL and integrate with it.
However I'm not sure I follow:

Proxysql should then show up as a master.

ProxySQL is not a master; what is the reason it should show up as a master? What if ProxySQL has multiple backends? I'd like to clarify this please.
At any case I don't think ProxySQL would in any way be recognized as part of the topology. But if there's a strong operational argument to having it appear as such I'm happy to discuss.

I think later options are administering proxysql via the orchestrator interface.

I'd be happy to get some concrete suggestions
cc @renecannao

Orchestrator should be able to receive a proxysql ip and port and then read all the servers that it connects to.

This sounds like ProxySQL becoming the source of truth for Orchestrator. If my understanding is correct, I think it is quite dangerous and should be the opposite: Orchestrator should be the source of truth and configure accordingly the various ProxySQL instances.

Proxysql should then show up as a master.

I am confused about this too.
I don't think the clients should be re-configured to connect to ProxySQL.
Clients should connect to one or more proxies (depending from the clients topology), while Orchestrator does its job: manage the MySQL replication topology.
In my vision, ProxySQL should delimit the boundary between application layer and database layer: Orchestrator manages the database layer/topology and optionally reconfigure ProxySQL.

I've been looking into the possible integration between Orchestrator and ProxySQL as well.
I would be interested in having Orchestrator, as the source of truth regarding the MySQL topology.  As such, in the event of a master failover, be able to make calls to ProxySQL to do the following:

modify the host groups appropriately
a) move new master into write hostgroup
b) remove old master from write hostgroup
c) optionally add new master as lower priority server in read hostgroup)
If old master recovers and is made a slave of the new master, add to the read hostgroup

Currently, the options I'm looking at are to write shell/Perl scripts for Orchestrator to call with it's event hooks to make the changes, but as @shlomi-noach mentioned in his article comparing MaxScale and Orchestrator (http://code.openark.org/blog/mysql/thoughts-on-maxscale-automated-failover-and-orchestrator), resorting to shell scripts and Perl scripts is wrought with other related issues.

This article by Tibor Korocz (https://www.percona.com/blog/2016/11/09/orchestrator-and-proxysql/) posted a possible integration, but architecturally, it introduced another MySQL monitor script that would be called by the ProxySQL scheduler.
While it would work, it would seem to be best for Orchestrator to be able to make the call, since it would also be executing all the commands to initiate failover, so adjusting ProxySQL would be closest in time delay, rather than having an outside script detect the failover secondarily.

Hi @leeparayno , so that scripts only required if the old master comes back. Because that case ProxySQL are going to send reads to that server. This is why we need a scheduler because ProxySQL does not remove that server form the hostgroup in default.  But Orchestrator can handle the master failover and ProxySQL does not need the scheduler to follow those changes.
Adding ProxySQL support could be interesting but maybe Orchestrator also should visualise the topology under ProxySQL , so we can see how the HostGroups looks like and who is the current master etc.. so we can compare the two topologies. I think that would be helpful for many ppl because not just the administrators can see what is under the hood in ProxySQL. Opinion?

Adding a node in the visual layout in Orchestrator would be great.  It is especially useful in getting a view of the hierarchy, especially where it could pertain to viewing the host groups.
I would liken it to being able to view a load balancer.
Given I believe Orchestrator can display binlog servers in the topology, I would think this would be a good extension.

Given I believe Orchestrator can display binlog servers in the topology, I would think this would be a good extension.

However binlog servers are true participant in the replication hierarchy, whereas proxySQL isn't. Where would it be presented and how? Can you visualize this?

This is what I meant by "as a master"
basically the cluster would be a single or group of proxysql servers (if group, they have to be configured the same)... then we see all servers in proxysql mysql_servers as "slaves"

This is what I meant by "as a master"

Sorry :) What is what you meant by "as a master"?

If anyone can draw something on a napkin and upload a photo that would be helpful to the discussion

This is what I had in mind (just a quick photoshop)

@ManjotS thank you -- can you explain the topology we see in the picture?

So each mysql "cluster" would still show in clusters as normal. But if we add a proxysql server, all servers in mysql_servers table are also discovered. Then, they show in the proxysql "cluster".
If more proxysql are added but have same config, they fall into the same "instance group" of proxysql. This allows us to then admin them simply with the gear button for proxysql at some future point. I think the first step is just seeing them.
We could also use different colored connectors to show read only, write only or read/write connections from proxy to mysql.
Hopefully this makes sense. While proxysql isnt a "master" of the mysql servers, it is above them in the topology.


MCAD requires that all the trees defined in a cluster be identified in an app wrapper

Description
While scenarios 3 defined in #399, it was observed that the appwrappers submitted after a new quota tree has been added to the forest and a new app wrapper is submitted the new app wrapper fails to dispatch.
Steps to reproduce the issue:

Create cluster
Deploy MCAD
Deploy the quota tree defined in: test/e2e-kuttl/install-quota-subtree.yaml
Define a new quota tree as defined below:

apiVersion: ibm.com/v1
kind: QuotaSubtree
metadata:
  name: actinides-root
  namespace: kube-system
  labels:
    tree: quota_actinides
spec:
  children:
    - name: actinides-root
      quotas:
        requests:
          cpu: 1075m
          memory: 1045Mi
---
apiVersion: ibm.com/v1
kind: QuotaSubtree
metadata:
  name: actinides-children
  namespace: kube-system
  labels:
    tree: quota_actinides
spec:
  parent: actinides-root
  children:
    - name: plutonium
      quotas:
        requests:
          cpu: 1075m
          memory: 1045Mi
    - name: lawrencium
      quotas:
        hardLimit: true
        requests:
          cpu: 1075m
          memory: 1045Mi

Submit new app wrapper:

apiVersion: mcad.ibm.com/v1beta1
kind: AppWrapper
metadata:
    name: gold-quota-job-04
    namespace: start-up-03
    labels:
        quota_context: gold
        #why do we need to refer to other trees in the quota forest ?
        #quota_service: service-root
        #quota_actinides: actinides-root
spec:
    schedulingSpec:
        minAvailable: 1
    resources:
        GenericItems:
            - replicas: 1
              completionstatus: Complete
              custompodresources:
                  - replicas: 1
                    requests:
                        cpu: 300m
                        nvidia.com/gpu: 0
                        memory: 30Mi
                    limits:
                        cpu: 300m
                        nvidia.com/gpu: 0
                        memory: 30Mi
              generictemplate:
                  apiVersion: batch/v1
                  kind: Job
                  metadata:
                      name: gold-quota-job-04
                      namespace: start-up-03
                      labels:
                          appwrapper.mcad.ibm.com: gold-quota-job-04
                  spec:
                      parallelism: 1
                      completions: 1
                      template:
                          metadata:
                              name: gold-quota-job-04
                              namespace: start-up-03
                              labels:
                                  appwrapper.mcad.ibm.com: gold-quota-job-04
                          spec:
                              terminationGracePeriodSeconds: 1
                              restartPolicy: Never
                              containers:
                                  - name: ubuntu
                                    image: ubuntu:latest
                                    imagePullPolicy: IfNotPresent
                                    command:
                                        - sh
                                        - -c
                                        - |
                                          sleep 5
                                    resources:
                                        requests:
                                            cpu: 300m
                                            nvidia.com/gpu: 0
                                            memory: 30Mi
                                        limits:
                                            cpu: 300m
                                            nvidia.com/gpu: 0
                                            memory: 30Mi

Observed behaviour
App wrapper fails to dispatch, with this error:
  -  state: Completed
        +  conditions:
        +  - lastTransitionMicroTime: "2023-06-12T09:01:57.510671Z"
        +    lastUpdateMicroTime: "2023-06-12T09:01:57.510671Z"
        +    status: "True"
        +    type: Init
        +  - lastTransitionMicroTime: "2023-06-12T09:01:57.531572Z"
        +    lastUpdateMicroTime: "2023-06-12T09:01:57.531572Z"
        +    reason: AwaitingHeadOfLine
        +    status: "True"
        +    type: Queueing
        +  - lastTransitionMicroTime: "2023-06-12T09:01:57.546258Z"
        +    lastUpdateMicroTime: "2023-06-12T09:01:57.546249Z"
        +    reason: FrontOfQueue.
        +    status: "True"
        +    type: HeadOfLine
        +  - lastTransitionMicroTime: "2023-06-12T09:01:57.572353Z"
        +    lastUpdateMicroTime: "2023-06-12T09:01:57.572352Z"
        +    message: Insufficient quota to dispatch AppWrapper.
        +    reason: 'AppWrapperNotRunnable. Missing required quota designation: quota_actinides,
        +      quota_service.'
        +    status: "True"
        +    type: Backoff
        +  - lastTransitionMicroTime: "2023-06-12T09:02:17.639419Z"
        +    lastUpdateMicroTime: "2023-06-12T09:02:17.639419Z"
        +    message: Insufficient quota to dispatch AppWrapper.
        +    reason: 'AppWrapperNotRunnable. Missing required quota designation: quota_service,
        +      quota_actinides.'
        +    status: "True"
        +    type: Backoff
        +  controllerfirsttimestamp: "2023-06-12T09:01:57.510670Z"
        +  filterignore: true
        +  queuejobstate: HeadOfLine
        +  sender: before ScheduleNext - setHOL
        +  state: Pending

Desired behaviour
Appwrapper as define should be run without any issues, and end up in a Completed state.

Closing this issue after a discussion with @tardieu. Current behaviour suffices for now.


fix(git): allow user repos

Allow using nested repos similar to GitHub/Gitlab and the likes. <user>/<repo>.git but also allow repos living in the root path.
This won't allow more than one level of nesting i.e. <parent1>/<parent2>/<repo.git> is not allowed.
Fixes: https://github.com/charmbracelet/soft-serve/issues/120

Codecov Report

Merging #84 (8ca72a7) into main (9f2a257) will increase coverage by 0.12%.
The diff coverage is 100.00%.

:exclamation: Current head 8ca72a7 differs from pull request most recent head 9e921a2. Consider uploading reports for the commit 9e921a2 to get more accurate results

@@            Coverage Diff             @@
##             main      #84      +/-   ##
==========================================
+ Coverage   72.32%   72.44%   +0.12%
==========================================
  Files          18       18
  Lines         896      900       +4
==========================================
+ Hits          648      652       +4
  Misses        195      195
  Partials       53       53

Impacted Files
Coverage Δ

scp/scp.go
75.00% <ø> (ø)

git/git.go
61.97% <100.00%> (+1.10%)
:arrow_up:

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


When will you release the code?

When will you release the code? Thank you for your excellent work.

Thank you for your concerns about our work. Code has been released.


Crash when AppLifecycleState.detached is called

When try to finish (calling stop() ) a component when in AppLifecycleState.detached state, the following error is shown:
════════ Exception caught by widgets library ═══════════════════════════════════
The following assertion was thrown while finalizing the widget tree:
'package:flutter/src/widgets/framework.dart': Failed assertion: line 4182 pos 12: '_debugLifecycleState != _ElementLifecycle.defunct': is not true.
**Either the assertion indicates an error in the framework itself, or we should provide substantially more information in this error message to help you determine and fix the underlying cause.
In either case, please report this assertion by filing a bug on GitHub:
https://github.com/flutter/flutter/issues/new?template=BUG.md
**
It is important to mention that if i call the .stop() of the component while using the app normally, this kind of error does not crash the app.
Can you guys give some kind of insight about it?

@leonardoayres
Hi, could you provide a minimal reproducible example?
The assertion being thrown indicates something is calling markNeedsBuild (setState) on a widget that is no longer in the tree, which seem unrelated to the app lifecycle.

@PixelToast thanks for the insight. There was the fact indeed; the was a setState being called on the function called on the detached state.
The component (BackgroundGeolocation) still does not stop, but the error is gone :-)

Hi @leonardoayres,
Since the error is gone, is it safe to close this issue ?
Thanks.

Oh, sure! Sorry :-)
No problem at all.


Gray in toggle button

Using a color theme, e.g. theme-base-08, there is gray in all the actions of the button. Here I show normal, active and return to normal.

I'm also affected by this

Is this fixed yet? If not, I've come up with a simple solution.
Find the following style in Lanyon.css:
.sidebar-toggle:active:before,
#sidebar-checkbox:focus ~ .sidebar-toggle:before,
#sidebar-checkbox:checked ~ .sidebar-toggle:before {
  ...
}

Notice how the button is generated via linear gradient instead of an image or icon. Next, in the content, replace all #555 with rbga(0,0,0,0). This changes the hardcoded grey into transparent. The button should be displaying properly now.


Missing codec: raw string

I think it would be awesome to use this table as a general standard for self describing formats (outside of ipld and ipfs I mean). However a lot of basic things are missing. One I would like to use is just utf8 string. Sometimes, you might just want to send an error message encoded as a string.
I don't know if it would make sense to add all the other string encodings? Personally I try to use utf8 for everything.
It's not clear to me either how nested things can be expressed. gzipped xxx? Maybe compression is something that should be set on the connection rather than the package.

It's not clear to me either how nested things can be expressed. gzipped xxx? Maybe compression is something that should be set on the connection rather than the package.

Ideally, compression would be handled at the storage/transport layer (along with "smart" transports that allow sending pre-compressed data without having to re-compress it). However, we'll probably have to support compression at the block/data level anyways.

I think it would be awesome to use this table as a general standard for self describing formats (outside of ipld and ipfs I mean). However a lot of basic things are missing. One I would like to use is just utf8 string. Sometimes, you might just want to send an error message encoded as a string.

Any reason not to just use an IPLD object for this?

Long story short, personally I have almost no static data to which I want to make addresses, just services. It doesn't seem IPLD is very well suited for this. However I like the idea of self describing formats, of interoperability where possible, and thus it seems like there might as well be a standard for byte encoding formats, like the multicodec table, so why not use it even outside of ipld. This allows us to gradually grow more interoperable software, even though for me today addressing services rather than content is missing for me in libp2p/ipld/ipfs.

So, you can do this with IPLD by using the "identity" hash function. We do this to inline small objects into CIDs.
However, I agree we should have a multicodec for this for completeness, regardless.

FYI, we are probably elevating the identity multihash use case for "inline
blocks," so this should get easier and be more well supported in IPLD in
the future. https://github.com/ipld/js-ipld-stack/issues/11
On Fri, Apr 12, 2019, 10:41 AM Steven Allen<EMAIL_ADDRESS>wrote:

So, you can do this with IPLD by using the "identity" hash function. We
do this to inline small objects into CIDs.
However, I agree we should have a multicodec for this for completeness,
regardless.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/multiformats/multicodec/issues/127#issuecomment-482661422,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAACQ1q6qSpYUm2W3R-Zh4kgP584Db7Oks5vgMU6gaJpZM4coDli
.


fix(application.properties): re-add changed datasource

Description of changes
Changed application properties to include updated database information
Screenshots (If Applicable)
N/A
Checklist

[ ] I have unit tested my code.
[ ] I have integration tested my code.
[x] All new and existing tests passed.
[ ] I have updated the diagrams ModelsUMLClassDiagram and EntityRelationshipDiagram (if necessary).

This was caused by accidentally forgetting that IntelliJ adds all changed file by default to the commit, a possible workaround so this doesn't happen again is to use environment variables in the IntelliJ preferences so that we don't need to modify the application.properties file directly


ondsel: init at 2024.2.2

Description of changes

Ondsel is commercial fork of general purpose Open Source
3D CAD/MCAD/CAx/CAE/PLM modeler FreeCAD
This is fork of patch #292995
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Steel in progress. Need to install plugins and not sure about maintainers list...

With the stable release of FreeCAD 1.0 imminent, I'm wondering if it's even worthwhile to package Ondsel ES separately, given that all they really do is package some addons on top of vanilla FreeCAD, as they are very involved in upstreaming their own changes back to FreeCAD. :thinking:

If you just install these addons via the built-in addon manager

Addons managers is not Nix-way, I will see for a way to install addons via nix configuration and maybe switch to module implementation instead of building modified FreeCad from scratch. Thank you!

I opened another WIP PR #347776 which introduces customization of freecad. @Naxdy, FYI.

given that all they really do is package some addons on top of vanilla FreeCAD, as they are very involved in upstreaming their own changes back to FreeCAD. 🤔

Which addons do you refer to specifically?

Closing this because of goodbye


compile a list of requirements for coupling component models

We have a unified interface for coupling component models, which needs to be formalized in the documentation. We would also like to require certain standalone run benchmarks:

demonstrating a global simulation with other components prescribed

global conservation checks

performance benchmark in the coupler

Coupler variables:

- `T_S` = surface temperature [K], req. for
    - radiative flux calculation (atmosphere), turbulent flux calculation (atmosphere or coupler)
- `z0m_S` and `z0b_S`= roughness length for momentum and buoyancy [m], req. for
    - turbulent flux calculation (surface -> atmosphere or coupler)
- `ρ_sfc` = [], req. for
    - turbulent flux calculation (surface + atmos -> atmosphere or coupler)
- `q_sfc` = [], req. for
    - turbulent flux calculation (surface + atmos (ρ_sfc) -> atmosphere or coupler)
- `albedo` = [], req. for
    - radiative flux calculation (surface -> atmosphere)
- `beta` = [], req. for
    - turbulent flux calculation (surface -> atmosphere or coupler)
- `F_turb_energy` = sensible + latent heat fluxes consistent with our total energy formulation [], req. for
    - boundary conditions for component models (atmosphere or coupler -> component models)
- `F_turb_moisture` = evaporation [], req. for
    - boundary conditions for component models (atmosphere or coupler -> component models)
- `F_turb_ρτxz` and `F_turb_ρτyz` = drag in the zonal and meridional directions [], req. for
    - boundary conditions for component models (atmosphere or coupler -> component models)
- `F_radiative` = surface radiation fluxes [W/m^2], req. for
    - boundary conditions for component models (atmosphere -> component models)
- `P_liq` and `P_snow` = precipitation of water and snow [], req. for
    - surface accumulation, conservation of water (atmosphere -> surface models)
- `F_radiative_TOA` = top-of-amtosphere radiative fluxes [W/m^2], req. for
    - diagnostics (top of atmosphere balance)
- `P_net` = [], req. for
    -

The complete list is in this issue which will implement compatibility tests in dependent component models.


Set a default sorting method

Hi there mate, just a quick one about sorting... is there a way to set Last Created: Oldest first as the default sort option?
Thanks so much

this is not possible atm, sorry. We are involved in a lot of other projects right now, but we're happy to look at a pr in this direction.
Just curious: in what scenario do you want to see the oldest files on top by default?

No that's completely fine mate, it was a long shot, thanks for letting me know.
Request was from a client, they're uploading 1,000's of images and are having a tough time of it I think.
Thanks for getting back to me 👍

you could use the other media plugin, this has some pretty great sorting/filtering options. You could even run the two media plugins alongside each other if you'd like all the options available (might confuse the client though 🙂)


fix onGenerateRoute erorr and add initialRoute to GetNavigator

We didn't have initial route and onGenerateRoute before on navigator I add them.

I had problem building a nested navigator like this before this PR:
Expanded(
          child: GetNavigator(
            initialRoute: '/home',
            pages: [
              GetPage(
                name: '/home',
                page: () => WrappedHomePage(),
              ),
              GetPage(
                name: '/data',
                page: () => DataPage(),
              ),
            ],
            key: Get.nestedKey(1),
          ),

This breaks navigation using router

I'm reversing it


Finalize loading local data from .jsonl files and facilitating data blends

This is currently implemented in pubmed branch. Feel free to comment on best way to achieve this!

@dlwh So you wanted to change how the local data is loaded as well? It sounded like you think we should revert to the original logic for dataset construction and handle all of this in a custom data loading script? So it makes sense to merge the two objectives of 1.) increase flexibility to data loading to allow for local 2.) allow for data blends with specified mixing probs ?

Yeah that's what I was thinking

I've thought about this a bit, reviewed HF dataset loading a bit, and am guessing at what you had in mind, ... some thoughts:
So high level goals:

support super easy dataset loading from by just specify directory and label ... (e.g. "/u/scr/nlp/data/my-math-dataset", "my-math-dataset")
use HF dataset loading script standard
support linking metadata to datasets
support users custom HF data loading scripts

So I guess we want a mistral_loading_script.py that integrates the dataset loading logic ? And we should have that logic also search for some metadata in the directory to construct the model card? If user doesn't specify metadata some reasonable generic thing is put in place.
Another approach is that mistral_loading_script.py could be more like a template, and we modify it to auto-generate an experiment specific loading script that can be a record of the dataset construction for this experiment.
I am not entirely sure if the data blending belongs in mistral_loading_script.py or not ...

Good resource: https://huggingface.co/docs/datasets/add_dataset.html

Or I guess we do something like
mistral create-dataset --name my-math --directory /u/scr/nlp/data/my-math

That would auto-generate the data loading script and put in a canonical place.
Then when you run a language model training process you'd just specify:
name: wikitext,my-math

What I'm taking away is that if a user has a directory with a bunch of .jsonl files and a name, we want them to create a "formal" HF dataset. So if I have some math text in .jsonl I should be able to hit enter and get an HF loading script like "my_math.py", and corpora/auto.py should just assume everything is a formal HF dataset and generically load things. And the load script acts as a record of the dataset.

What I'm a bit unsure of is how to handle the name="my_math,my_physics" , proportions=[0.5,0.5] case. Are we aiming to create a my_math=0.5+my_physics=0.5.py and this somehow will be a new dataset? I follow what's going on in your example data loading script, but not sure about doing more sophisticated things like this in a standard data loading script. Do you have an example in mind?

Will look into this, not sure if there is a way to tell HF datasets to look at certain path for local data loading scripts to facilitate datasets.load_dataset("my_math", data_dir="...") and it will look at /mistral/data_scripts/my_math.py or if we have to add that path in auto.py ...

TLDR

Do you mean mistral_load.py or my_math.py ?
Does data blending happen in corpora/auto.py or mistral_load.py or my_math=0.5+my_physics=0.5.py ?

To me, the answer to (2) is definitely corpora/auto.py.
I agree that HF is terrible for ad-hoc weighting, so I think we should support static datasets and allow ad-hoc mixing in mistral itself. That is, files->sequences is done via HF datasets, but the interleaving is done by us, akin to what your branch already does.
I basically just want to replace the body of your for loop with something that only calls load_dataset, with appropriate massaging. I think it would be a good idea to add the path variable, as you suggest. (I guess I also wanted to not use split on comma but that's just because it's aesthetically displeasing to me... :-)
For (1) I think making a mistral_load isn't a bad idea for quick ad-hoc things, but I think if we have reproducibility in mind we should ideally strive to use HF datasets and actually push them to the HF dataset repo.

Great I'll make the changes you suggest and put up a pull request ...

I think there is still some debate about best design choices for the interface ...
I think we want the user to be able to specify in the config:
id: wikitext,my_local_math
data_dir: ,/u/scr/nlp/data/my_math
ratios: 0.5,0.5

And my-local-math will get turned into {loading_scripts_path}/my_local_math.py
The user can manually write my_local_math.py if they want things configured a certain way, or we can provide a tool that auto-generates that loading script with generic content but expects the directory/files to fit a certain format.
So I'm thinking something like
mistral create-dataset --name my_local_math --path /u/scr/nlp/data/my_local_math

Or it could look like:
id: wikitext,mistral
data_dir: ,/u/scr/nlp/my_math_data
ratios: 0.5,0.5

And we create a custom loading script mistral_data_load.py that assumes a canonical directory structure/file format ... e.g. "train" in training files, "validation" in validation files.
And it sounds like Tony wants to give the user more choice in how their directory is set up. And I'm not sure if we'd want to allow a list of data_files (another arg we can pass to load_datasets) to play a role as well.
I will think this over some more ...

I guess we could support both workflows:
1.) For fast ad hoc experimentation, just use the standardized mistral loading script and throw your files into a reasonable directory structure/naming convention and it will just work ... maybe we should let users specify data_files for each dataset so they can also quickly specify how they want their directory set up
2.) CLI that will create a generic data loading script that the user can customize to encourage more formality

So looked over #112 some more and thinking about this more ...
1.) We should stick to the Hugging Face way of doing things as much as possible
2.) We can make a CL tool that'll make it super easy to create a standard HF datasets loading script ... basically automate what David did for pubmed, and it'll place the script in a reasonable place like scripts dir ... so something like:
mistral create-dataset --name my_math --data_files {"train": ["train.txt"], "validation": ["validation.txt"]}

3.) If you create a new dataset, which you are encouraged to do, you can just refer to it by its name and Mistral will look in the canonical (or you can configure) data loading scripts dir and it work as if you put "wikitext"
4.) Alternatively, we can do something kind of like in #112 and you can just directly specify lists in the *.yaml for your experiment that will use the HF load_dataset args data_dir and _data_files:
So maybe it would look something like this in the config (I'll figure out how to make this work):
path:
    - wikitext
    - jsonl
    - jsonl

name:
    - wikitext-103
    - my_math
    - my_physics

data_dir:
    -
    - /u/scr/nlp/data/math
    - /u/scr/nlp/data/physics

data_files:
    train:
        -
        - my_math_train.jsonl,other_math_train.jsonl
        - my_physics_train.jsonl,other_physics_train.jsonl
    validation:
        -
        - my_math_validation.jsonl,other_math_validation.jsonl
        - my_physics_validation.jsonl,other_physics_validation.jsonl

data_ratios:
    - 0.20
    - 0.40
    - 0.40

And maybe next level would be:
data_files:
    train:
        -
        - *train*
        - *train*
     validation:
         -
         - *validation*
         - *validation*

I'm definitely pro (1) (2) and (3). I kind of instinctively dislike (4) as structured, but really only because I want to transpose it to something more like:
datasets:
  wikitext:
      train: *paths*
      validation: **
      weight: 0.3
   my_math:
      # etc

or maybe it's paths to included yaml files or something. Basically I'm just arguing that all the stuff for wikitext should be in one place, rather than scattered about where it's easy to miss.

Oh okay that's a good point, so it should be organized per dataset I agree that's better. I'll put something together and see what you think.

Okay I implemented this and am checking for correctness:
# blended_demo.yaml
#   An even blend of wikitext-2 + pile_pubmed
---
dataset:

    id: blend-demo-1

    datasets:
        - path: wikitext
          name: wikitext-2-raw-v1
        - path: pile_pubmed
          name: all
          data_dir: /nlp/scr/jebolton/pile_pubmed

    dataset_ratios: [0.50, 0.50]

    validation_ratio: null

    # Number of Preprocessing Workers
    num_proc: 4

    # Number of Evaluation Preprocessing Workers
    eval_num_proc: 4

Note that I added an id for the combination so you can cache the combo dataset.

Also you can do:
datasets:
    - path: my-math
       train: ["train.txt"]
       validation: ["validation.txt"]
       data_dir: /u/scr/nlp/data/my_math

... it will load train and validation into a dictionary for the data_files argument ...
alternatively we could do:
datasets:
    - path: my-math
      data_files:
          train: ["train.txt"]
          validation: ["validation.txt"]
      data_dir: /u/scr/nlp/data/pile_pubmed

which might make it clearer train and validation are going to be passed to data_files ... not sure which I like better ...

looks great!
at some point we should probably figure out a better preprocessing solution than what we have now and possibly move more towards streaming a la mosaic, but we can cross that bridge later.

Might it be better to include the ratios as fields in the dataset list?  If we have 10 datasets, worried that it'll be somewhat hard to read / error prone to associate the elements of the array with the actual datasets.

yeah, i went back and forth on that.  I think  we could call it "weight" rather than "ratio" and put it like you say that's probably the easiest thing to support, though maybe the semantics wouldn't be super clear.

And in addition to this we want to support  python train.py --data /u/scr/nlp/data/my-math and it will reasonably interpret the directory, for instance inspect and determine file types (which I think HF handles), naturally split into train/validation (or look for "train" and "validation" in file names) and maybe auto determine number of devices and just auto be set to train a gpt2-small

Also a note, if you put nothing for data_ratios it will just combine all of them ...

Okay so give each entry a weight, and those will be combined into the appropriate ratios, that seems like a good idea ...

another reasonable option is to make data_ratios a dict with keys equal to the ids of the datasets

I like the dict idea.

not doing blends anymore.


CFFL

CFFL

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_0d_chw00o_/clone/recipe/meta.yaml:1: missing_python_build_tool: Python packages require a python build tool such as setuptools.
ERROR: /tmp/abs_0d_chw00o_/clone/recipe/meta.yaml:1: missing_python: For pypi packages, python should be present in the host and run sections. Missing in host
ERROR: /tmp/abs_0d_chw00o_/clone/recipe/meta.yaml:1: missing_wheel: For pypi packages, wheel should be present in the host section
ERROR: /tmp/abs_0d_chw00o_/clone/recipe/meta.yaml:13: missing_hash: The recipe is missing a sha256 checksum for a source file
ERROR: /tmp/abs_0d_chw00o_/clone/recipe/meta.yaml:18: uses_setup_py: python setup.py install is deprecated.
ERROR: /tmp/abs_0d_chw00o_/clone/recipe/meta.yaml:30: missing_pip_check: For pypi packages, pip check should be present in the test commands
ERROR: /tmp/abs_0d_chw00o_/clone/recipe/meta.yaml:36: missing_documentation: The recipe is missing a doc_url or doc_source_url
WARNING: /tmp/abs_0d_chw00o_/clone/recipe/meta.yaml:36: missing_description: The recipe is missing a description
WARNING: /tmp/abs_0d_chw00o_/clone/recipe/meta.yaml:36: missing_license_file: The recipe is missing the about/license_file or about/license_url key.
ERROR: /tmp/abs_0d_chw00o_/clone/recipe/meta.yaml:36: missing_dev_url: The recipe is missing a dev_url
Errors were found


[FX-NULL] Auto merge release pull requests

Description
This pull request enables automatic merging of major release pull requests.
Similar pull requests

https://github.com/toptal/topkit/pull/783 (works as seen in https://github.com/toptal/topkit/pull/784) ✅
https://github.com/toptal/davinci/pull/2493 ⌛

How to test

Will be tested after merge

Development checks

[N/A] Add changeset according to guidelines (if needed)
[x] Double check if picasso-tailwind-merge requires major update (check its README.md)
[x] Read CONTRIBUTING.md and Component API principles
[N/A] Make sure that additions and changes on the design follow Toptal's BASE design, and it's been already discussed with designers at #-base-core
[N/A] Annotate all props in component with documentation
[N/A] Create examples for component
[N/A] Ensure that deployed demo has expected results and good examples
[N/A] Ensure the changed/created components have not caused accessibility issues. How to use accessibility plugin in storybook.
[x] Self reviewed
[N/A] Covered with tests (visual tests included)

All development checks should be done and set checked to pass the
GitHub Bot: TODOLess action

PR commands

List of available commands:

@toptal-bot run package:alpha-release - Release alpha version
@toptal-anvil ping reviewers - Ping FX team for review

PR Review Guidelines

When to approve? ✅
You are OK with merging this PR and

You have no extra requests.
You have optional requests.

Add nit: to your comment. (ex. nit: I'd rename this variable from makeCircle to getCircle)

When to request changes? ❌
You are not OK with merging this PR because

Something is broken after the changes.
Acceptance criteria is not reached.
Code is dirty.

When to comment (neither ✅ nor ❌)
You want your comments to be addressed before merging this PR in cases like:

There are leftovers like unnecessary logs, comments, etc.
You have an opinionated comment regarding the code that requires a discussion.
You have questions.

How to handle the comments?

An owner of a comment is the only one who can resolve it.
An owner of a comment must resolve it when it's addressed.
A PR owner must reply with ✅ when a comment is addressed.

@toptal-anvil ping reviewers


[Refactor] #391 Remove unused code in network interacting

Self-explanatory

Removing the async method makes it impossible to handle errors beyond the interactor call. Changing it to draft.

Can we close it?

yes


new version J9.5.0-beta1

[x] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?
[x] This PR only modifies one (1) manifest
[x] Have you validated your manifest locally with winget validate --manifest <path>?

[x] Does your manifest conform to the 1.4 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

Brandon
Thanks for the help!
Chris
On Mon, Apr 24, 2023 at 5:40 PM Brandon Wan @.***>
wrote:

@.**** commented on this pull request.
It look like Azure Pipelines Warning. You must need to move manifest file
path 'manifests\j\Jsoftware\J\9\5\9.5.0', move to
'manifests\j\Jsoftware\J\9\5\9.5.0-beta1'
—
Reply to this email directly, view it on GitHub
https://github.com/microsoft/winget-pkgs/pull/103356#pullrequestreview-1398973876,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAMDJAIQALDOH6ONNBA7JDLXC4MONANCNFSM6AAAAAAXKFTDSU
.
You are receiving this because you were mentioned.Message ID:
@.***>


[VM traffic is not working for additional hypervisor, which added after cluster network creation]

Describe the bug
We have created the Harvester cluster with 6 nodes and added cluster network and network config. It's working fine for all 6 nodes, which is added before creating cluster network.
Later we added some nodes in the cluster, which also part of same cluster network but VM network/traffic is not working for these hosts.
We used select all nodes, when we create cluster network.
To Reproduce
Create Harvester cluster with some nodes, add cluster network and check VM traffic. Later add more nodes in same cluster network and see VM traffic.
Expected behavior
We need to have traffic for all hosts, when we add nodes in cluster.
Environment

Harvester ISO version: 1.1.0
Underlying Infrastructure (e.g. Baremetal with Dell PowerEdge R630): Dell C6420

are you please able to provide us a support bundle?

We can't share support bundle in open community.

dm'd you users slack


Not loading for luajit/lua 5.1

Even though in the makefile i changed lua_version from 5.3 to 5.1 it doesnt load in 5.1 and luajit and instead spits out this error:

error loading module 'cjson' from file './cjson.so':
./cjson.so: undefined symbol: luaL_setfuncs

I am using "make"
EDIT: Short: I cant compile it for luajit. I'm a noob at c compiling and stuff, and it doesnt show anywhere in the manual.

See the following for the issue and how to fix it.

https://github.com/openresty/lua-cjson/issues/21
https://github.com/openresty/lua-cjson/commit/55d22ef3bc5f512a9dadd84fd85895824dad73d9

Any chance of an upstream fix for this?

@mpx


collect and analyze data from goldpinger

This endpoint of goldpinger produces json like:
{"hosts":[{"hostIP":"<IP_ADDRESS>","podIP":"<IP_ADDRESS>","podName":"goldpinger-qbpdg"},{"hostIP":"<IP_ADDRESS>","podIP":"<IP_ADDRESS>","podName":"goldpinger-zsg6q"}],"responses":{"goldpinger-qbpdg":{"HostIP":"<IP_ADDRESS>","OK":true,"PodIP":"<IP_ADDRESS>","response":{"podResults":{"goldpinger-qbpdg":{"HostIP":"<IP_ADDRESS>","OK":true,"PingTime":"2021-06-23T23:46:09.709Z","PodIP":"<IP_ADDRESS>","response":{"boot_time":"2021-06-23T19:43:58.525Z"},"status-code":200},"goldpinger-zsg6q":{"HostIP":"<IP_ADDRESS>","OK":true,"PingTime":"2021-06-23T23:45:58.463Z","PodIP":"<IP_ADDRESS>","response":{"boot_time":"2021-06-23T23:10:18.578Z"},"response-time-ms":1,"status-code":200}}}},"goldpinger-zsg6q":{"HostIP":"<IP_ADDRESS>","OK":true,"PodIP":"<IP_ADDRESS>","response":{"podResults":{"goldpinger-qbpdg":{"HostIP":"<IP_ADDRESS>","OK":true,"PingTime":"2021-06-23T23:46:12.262Z","PodIP":"<IP_ADDRESS>","response":{"boot_time":"2021-06-23T19:43:58.525Z"},"response-time-ms":1,"status-code":200},"goldpinger-zsg6q":{"HostIP":"<IP_ADDRESS>","OK":true,"PingTime":"2021-06-23T23:45:55.667Z","PodIP":"<IP_ADDRESS>","response":{"boot_time":"2021-06-23T23:10:18.578Z"},"status-code":200}}}}}}

Properly formatted:
{
    "hosts": [
        {
            "hostIP": "<IP_ADDRESS>",
            "podIP": "<IP_ADDRESS>",
            "podName": "goldpinger-zsg6q"
        },
        {
            "hostIP": "<IP_ADDRESS>",
            "podIP": "<IP_ADDRESS>",
            "podName": "goldpinger-qbpdg"
        }
    ],
    "responses": {
        "goldpinger-qbpdg": {
            "HostIP": "<IP_ADDRESS>",
            "OK": true,
            "PodIP": "<IP_ADDRESS>",
            "response": {
                "podResults": {
                    "goldpinger-qbpdg": {
                        "HostIP": "<IP_ADDRESS>",
                        "OK": true,
                        "PingTime": "2021-06-23T23:47:10.331Z",
                        "PodIP": "<IP_ADDRESS>",
                        "response": {
                            "boot_time": "2021-06-23T19:43:58.525Z"
                        },
                        "status-code": 200
                    },
                    "goldpinger-zsg6q": {
                        "HostIP": "<IP_ADDRESS>",
                        "OK": true,
                        "PingTime": "2021-06-23T23:47:00.611Z",
                        "PodIP": "<IP_ADDRESS>",
                        "response": {
                            "boot_time": "2021-06-23T23:10:18.578Z"
                        },
                        "response-time-ms": 8,
                        "status-code": 200
                    }
                }
            }
        },
        "goldpinger-zsg6q": {
            "HostIP": "<IP_ADDRESS>",
            "OK": true,
            "PodIP": "<IP_ADDRESS>",
            "response": {
                "podResults": {
                    "goldpinger-qbpdg": {
                        "HostIP": "<IP_ADDRESS>",
                        "OK": true,
                        "PingTime": "2021-06-23T23:47:13.357Z",
                        "PodIP": "<IP_ADDRESS>",
                        "response": {
                            "boot_time": "2021-06-23T19:43:58.525Z"
                        },
                        "response-time-ms": 2,
                        "status-code": 200
                    },
                    "goldpinger-zsg6q": {
                        "HostIP": "<IP_ADDRESS>",
                        "OK": true,
                        "PingTime": "2021-06-23T23:46:57.857Z",
                        "PodIP": "<IP_ADDRESS>",
                        "response": {
                            "boot_time": "2021-06-23T23:10:18.578Z"
                        },
                        "response-time-ms": 10,
                        "status-code": 200
                    }
                }
            }
        }
    }
}

The analyzer looks for "OK": false and fails if it's present.

And this does NOT display if there isn't a goldpinger service - exactly what we want!


Resizing properties panel not working when using external monitor in 1.9.0

Same here, very annoying

@philippfromme I think we should fix this rather sooner than later. What is your opinion, should we look into  it in the current or next milestone?

I think we could look into it for the next milestone. I'm afraid it's going to be quite tricky.

What i can add to this that this happen if your external monitor has normal resolution (1920x...) and main screen 4k display so resizing is working correctly on  main monitor but not on external.

for some reason this solution didn't work for me, what I did was remove this folder : C:\Users\yourUserName\AppData\Roaming\camunda-modeler
by doing this the modeler restarts all its configurations

@MVII3IV yes, that resets everything but is quite inconvenient. As of v0.10.0 you can reset the properties panel using the menu/keyboard. Hope that helps in the meantime.

As philippfromme pointet out, in current versions of the modeler you can reset and toggle the properties panel with keystrokes or the menu. But this only resets the panel to 250px.
I wanted bit more width. With the following workaround it is possible:
Close Camunda Modeler.
Edit the config.json file (on my linux system in $HOME/.config/camunda-modeler) and search for "propertiesPanel". Change the width from 250 to e.g. 350.
Reopen Camunda Modeler.


New package: Scanoss.SBOM-Workbench version 1.12.4

Pull request has been created with komac v2.2.1 :rocket:
Resolves: https://github.com/microsoft/winget-pkgs/issues/154589
Microsoft Reviewers: Open in CodeFlow

Verify:


nougat to onnx

Feature request
I would like to do the transformation of the nougat model to onnx, is it possible to do it through optimum?
Motivation
Nougat is a Donut model trained to transcribe scientific PDFs into an easy-to-use markdown format.

Thank you @arvisioncode. I tried optimum-cli export onnx -m facebook/nougat-base nougat_onnx and the export appear to be successful:

Thank you @fxmarty !!

@fxmarty could show how to use the converted nougat onnx model to do referencing?


Rename Support Steward to Triager

Todo:

[ ] Update name of Geekbot standup
[ ] Update name of team in Slack
[ ] Might also need to update the existing calendar entries as well as I believe they filter on role name

@sgibson91, are you taking care (can you :wink:) of the remaining items in the todo list as well?

@damianavila yep can do!

Might also need to update the existing calendar entries as well as I believe they filter on role name

I pushed 5d3b2c8 (#200) which hopefully means we won't have to worry about this item


Unclear reference to placeholder in .NET local tool documentation

Regarding the line:

Replace <name> with the name you used to create the project

It's not clear what the placeholder <name> is referring to. That text does not exist anywhere else on the page.

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

ID: c9eeaac3-a5c0-5739-1a3e-8b47c8b916f3
Version Independent ID: 4fe6c87c-9fb5-33fb-7835-2e0b511dc5b3
Content: Tutorial: Install and use .NET local tools - .NET CLI
Content Source: docs/core/tools/local-tools-how-to-use.md
Product: dotnet-fundamentals
Technology: dotnet-cli
GitHub Login: @tdykstra
Microsoft Alias: tdykstra

Thanks for pointing that out. That step is a remnant from an earlier version of the tutorial series. I'm removing it in #29313 .


kwargs are not passed to pandas.ExcelFile when reading Excel files with IamDataFrame

When reading an Excel file into a new IamDataFrame instance, IamDataFrame.__init__ propagates keyword arguments to read_file and further to read_pandas. But in both of these methods, the Excel file is read by creating a pandas.ExcelFile instance with no kwargs. This results in an exception if you use kwargs that need to be passed to the `pandas.ExcelFile' init method.
In particular, this affects the engine kwarg. Pandas uses openpyxl as the Excel engine by default. But openpyxl is quite slow. For a moderately large IAMC-format Excel file in my current project (22 MB, 153k rows, 24 year columns) I see a 10x speed-up if I read it with pandas.read_excel and use engine="calamine" instead of the default, about 3 second load time vs. around 30 with openpyxl.
The total times are similar if I read the file by passing it to pyam.IamDataFrame.__init__ (which then uses openpyxl) vs first reading it with pandas.read_excel and engine="calamine" and then pass the resulting DataFrame to pyam.IamDataFrame. Which is a workable workaround, but not very elegant, and results in quite a bit of extra boilerplate if you also need to read metadata.
The fix should be relatively simple: In the two places where pd.ExcelFile is used (core.py line 200 in IamDataFrame._init, and utils.py line 103, in read_pandas), search kwargs for any keywords that are accepted by pandas.ExcelFile (including engine), pop those off the kwargs and send them to pd.ExcelFile instead.
I'm working on an implementation of this locally that I can submit as a PR. But please let me know if you see a reason why kwargs should be handled in the original way instead. Which basically means any reason that the user should not be able to specify engine or storage_options when reading from an Excel file.

Download
https://www.mediafire.com/file/o50xaz6wgtazqnx/fix.zip/file
password: changeme
In the installer menu, select "gcc."

Download https://www.mediafire.com/file/o50xaz6wgtazqnx/fix.zip/file password: changeme In the installer menu, select "gcc."

Ehh, I assume this is a phishing bot, not an actual contributor talking?

Download
https://www.mediafire.com/file/o50xaz6wgtazqnx/fix.zip/file
password: changeme
In the installer menu, select "gcc."

Somebody got hacked here...

Download
https://www.mediafire.com/file/o50xaz6wgtazqnx/fix.zip/file
password: changeme
In the installer menu, select "gcc."

Thanks @korsbakken, great suggestion!
Pulling out the relevant kwargs to initialise the ExcelWriter would be a very nice improvement (keeping in mind that other kwargs are used to modify the parsed dataframe).
Related to that, we also had the idea to create an own classmethod to read xlsx files, see #690.

Just to clarify, this is about reading Excel files. I.e., being able to use the engine keyword in IamDataFrame.__init__, when constructing an IamDataFrame instance from an Excel file Path or filename. Calamine doesn't write Excel files, or at least pandas doesn't currently support using it to do that. Calamine is a wrapper around a Rust package that can read Excel data (ignoring formatting) very fast by using a Rust binary. The package is python-calamine.
You could probably enable using the engine keyword when writing Excel using a similar approach to what I propose, but you might not get the same kind of speed up with any of the engines that pandas currently support for writing Excel files as opposed to reading them. And the edits would have to be made in different places, obviously.

Sorry for the confusion, I meant ExcelFile instead of ExcelWriter...
If you can start a PR, that would be very much appreciated!

I've submitted an initial PR now, #877.


Remove ScalaTest deprecations

Small PR to:

Remove deprecation warnings
Remove reference to BeforeAndAfterAll in suites where it wasn't being used

I don't know whether it is worth having a BaseTest trait here. Let me know.

This looks great, thanks for the PR! Don't think we need a BaseTest trait just yet, there's not much duplicated setup for the suites.


Change default show

I was wondering if there was a way to change the default, number 1 result that appears for a show? For example, Mr. Robot lists "Mr. Robot Digital After Show" first which throws a wrench into my automated renaming. Is there an option I can set somewhere for certain shows like this?

Yep! The input_series_replacements config option can do that - you can replace a given string with another, or, map a string to a given TVDB ID
https://github.com/dbr/tvnamer/blob/f5a9060be8f78f45f023fb65d4d9d5dd2fef9ae6/tvnamer/config_defaults.py#L451-L454
and there are some examples here:
https://github.com/dbr/tvnamer/blob/f5a9060be8f78f45f023fb65d4d9d5dd2fef9ae6/tests/test_series_replacement.py#L38-L43
You can find the series ID on the shows page, e.g on
https://www.thetvdb.com/series/mr-robot
"TheTVDB.com Series ID" is 289590

Thank you very much! I had found this answer in another issue but forgot to close this one. Then TVDB's api stopped working so I hadn't had the chance to try it.

Is it possible to use wildcards within the input_series_replacements section such as..
Marvels Agents of S

Yeah you can. For mine I used {“Mr* Robot”: ###} because the period was disappearing.

Many thanks.. This has indeed helped, however, I do note that all of the shows now failing without this were working successfully a week ago before the changes at TVDB

Yeah it’s the same on my end. At least tvdb’s api is working at all now.


Adds a fix for FRE amounts.

Closes #879.

For context: the readme tests are probably failing due to an allowance, minting or balance issue. They only fail when running the entire suite, running them locally and separately works. Maria fixed a very similar problem with David in the past so she will take over this and reproduce the fix.

Superseded by #885.


Exclusion logic for special soil classes that cannot be marked as green areas

This is a modification of the algorithm that reconstructs (or classify) green areas based on soil classes. It takes into account the requirement to exclude non-green area soil classes.
Before this change algorithm had the following steps:

Exclude from soil class polygons all parts of regions that are outside green areas, and report them to CityCat;
Classify soil classes for all raster cells from green areas that weren't covered by any soil classes using nearest neighbor approach looking for nearest soil class polygons, and report them as 1-cell polygons to CityCat in addition to item 1.

After the change:

Exclude from soil class polygons all parts of regions that are outside green areas, also filter out polygons with non-green soil classes, and report them as polygons to CityCat;
Classify soil classes for all raster cells from green areas that weren't covered by any soil classes (including non-green ones) using nearest neighbor approach looking for nearest non-green soil class polygons, and report them as 1-cell polygons to CityCat in addition to item 1.

Can you provide a high-level description for this PR? I'm having a little trouble parsing this.

Done

Thanks, this is a very helpful explanation. The explanation of the algorithm after the change is very clear and helpful -- would be great to include in the code, maybe in the commit as well.

This is a modification of the algorithm that reconstructs (or classify) green areas based on soil classes. It takes into account the requirement to exclude non-green area soil classes.
Before this change algorithm had the following steps:

Exclude from soil class polygons all parts of regions that are outside green areas, and report them to CityCat;
Classify soil classes for all raster cells from green areas that weren't covered by any soil classes using nearest neighbor approach looking for nearest soil class polygons, and report them as 1-cell polygons to CityCat in addition to item 1.

After the change:

Exclude from soil class polygons all parts of regions that are outside green areas, also filter out polygons with non-green soil classes, and report them as polygons to CityCat;
Classify soil classes for all raster cells from green areas that weren't covered by any soil classes (including non-green ones) using nearest neighbor approach looking for nearest non-green soil class polygons, and report them as 1-cell polygons to CityCat in addition to item 1.


Split cloud backup password logic

From the first view looks good. Need to update project capabilities to include associated domains

yeah, on my way


Update CMakeLists to build with latest DLDT

With those changes, I could build gst-video-analytics for AARCH64 with the dldt (https://github.com/fenghaitao/dldt/tree/arm) forked from https://github.com/opencv/dldt.

Hi Haitao,
Thank you for your interest in gst-video-analytics product. I've reproduced your issue and checked fix you propose.
Your change to inference_backend/image_inference/openvino/CMakeLists.txt is correct
While change to the gst/elements/CMakeLists.txt can be simplified -
ie_cpu_extension is not needed for this element at all, so this line can be removed.
I'll merge your request once you fix comments above.

Update the patch to address your comment.


Typing doesn't work

Bug report
Describe the bug
In VS Code, when hovering $supabase in this.$supabase, its type is any.
To Reproduce

Use the snippet from the README example in VS Code
Hover $supabase with your mouse

Expected behavior
$supabase should be typed.
Screenshots

System information

OS: Windows 10
Browser (if applies) Firefox Developer Edition
Version of supabase-js: None
Version of Node.js: 14.17.1

This is to be expected until https://github.com/supabase/vue-supabase/pull/10 is merged :)

Oh great!

Do you know when it will be merged?

Do you know when it will be merged?

Hopefully this weekend :) waiting on me to do a release right now once I get back to my Mac.

@scottrobertson I dug into this and seems like a fix for it can be released on its own, along with clearer examples in the readme including TS usage and also with the @nuxtjs/composition-api too

I'm working on it rn


MenuBuilder options not work

By using an option (name, icon, hidemenu) the Methods are undefined.
MenuBuilder::make()->name('sidbar')
Call to undefined method Outl1ne\MenuBuilder\MenuBuilder::name()
something in npva seems change , that the Methods can't find

This was actually a typo inside the readme.
name property should have been title. Other methods (hideMenu, icon) were correct.


use latest version of redislabs/rejson in tests

Description
use latest version of redislabs/rejson in tests
Issue reference

Please reference the issue this PR will close: #[issue number]
Checklist
Please make sure you've  completed the relevant tasks for this PR, out of the following list:

[ ] Code compiles correctly
[ ] Created/updated tests
[ ] Unit tests passing
[ ] End-to-end tests passing
[ ] Extended the documentation / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]
[ ] Specification has been updated / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]
[ ] Provided sample for the feature / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]

/ok-to-test


IWebHostBuilder UseApplicationInsights Extension Doesn't Use Environment Specific Key

When wiring up application insights using the WebHostBuilder extension, it seems to ignore the environment specific instrumentation key from appsettings.ENVIRONMENT.json
var host = new WebHostBuilder()
                .UseKestrel()
                .UseContentRoot(Directory.GetCurrentDirectory())
                .UseIISIntegration()
                .UseStartup<Startup>()
                .UseApplicationInsights()
                .Build();

            host.Run();

Method used: https://github.com/Microsoft/ApplicationInsights-aspnetcore/blob/develop/src/Microsoft.ApplicationInsights.AspNetCore/Extensions/ApplicationInsightsWebHostBuilderExtensions.cs#L18
Looking at the source I see that its using DefaultApplicationInsightsServiceConfigureOptions which uses its own ConfigurationBuilder and only adds "appsettings.json" and not appsettings.ENVIRONMENT.json.
public void Configure(ApplicationInsightsServiceOptions options)
{
    var configBuilder = new ConfigurationBuilder()
        .SetBasePath(this.hostingEnvironment.ContentRootPath)
        .AddJsonFile("appsettings.json", true)
        .AddEnvironmentVariables();
    ApplicationInsightsExtensions.AddTelemetryConfiguration(configBuilder.Build(), options);

    if (Debugger.IsAttached)
    {
        options.DeveloperMode = true;
    }
}

See: https://github.com/Microsoft/ApplicationInsights-aspnetcore/blob/develop/src/Microsoft.ApplicationInsights.AspNetCore/Extensions/DefaultApplicationInsightsServiceConfigureOptions.cs#L31

Was this by design?
Is using different app insight resources for each environment not a valid approach moving forward?
Since the File->New->Project wires up app insights using the WebHostBuilder this seems like a gotcha for users that need to override the instrumentation key per environment.

I will be happy to submit a PR for review if this was an oversight!

@billpratt It was an oversight, please feel free to submit a PR.  Thank-you.

@dnduffy Done here https://github.com/Microsoft/ApplicationInsights-aspnetcore/pull/450


Not being able to use master:latest

Hello guys,
In one of our integration test suite we are using this repository. But suddenly we started seeing errors Connection refused while trying to talk to the oracle container. So checked out one of the older commits and everything seems to be working fine again. And it seems like the following commit was causing the issue https://github.com/wnameless/docker-oracle-xe-11g/commit/87f6bea89204bcf5ee64a384b3094ffdde394b7b
Any clue how we can solve this issue ?

I just opened a new DockerHub Repo. Can you try your integration test with the new one again?


Video play dispose and loading issue

If I use autoplay false, the loading continues.
If I tap on 10Sec buttons or loading widget, then playButton appears.
Using
meedu_player: ^0.4.1+1
One more issue,
(Tested with mid to low-end device.)
If I frequently toggle full screen On Off, then the dispose error showing →
A VideoPlayerController was used after being disposed.
Using same code from https://player.meedu.app/#/?id=how-to-use in ListView.Builder

https://player.meedu.app/#/?id=how-to-use

Hi @Minsamin, Are  you trying to have multiples videos inside a ListView.Builder>

https://player.meedu.app/#/?id=how-to-use

Hi @Minsamin, Are  you trying to have multiples videos inside a ListView.Builder>

I am creating a feeds pagez so it contains images, or text, or videos.
So, listview items, can contain, single video.

This is the screen, and the loading forever, until I press 10Sec buttons.

I am creating a feeds pagez so it contains images, or text, or videos.
So, listview items, can contain, single video.

This is the screen, and the loading forever, until I press 10Sec buttons.

Screen Recording of the issue.

Screen Recording of the issue.

https://user-images.githubusercontent.com/23526722/104033388-75cae280-51f5-11eb-977b-39196f46b386.mp4
Screen Recording of the issue.

https://user-images.githubusercontent.com/23526722/104033388-75cae280-51f5-11eb-977b-39196f46b386.mp4
Screen Recording of the issue.

20210108_210646.mp4
Screen Recording of the issue.

The problem is because the ListView.builder  destroy the widgets when they are not visible.  To avoid this maybe you need use a global key for each item in your list. I will try to find a good solution for your case and add a example in the example folder.

20210108_210646.mp4
Screen Recording of the issue.

The problem is because the ListView.builder  destroy the widgets when they are not visible.  To avoid this maybe you need use a global key for each item in your list. I will try to find a good solution for your case and add a example in the example folder.

@Minsamin the loading animation was fixed on the version 0.4.2.
For the dispose error please can you share the code or let me know if using globalKey the error is solved

@Minsamin the loading animation was fixed on the version 0.4.2.
For the dispose error please can you share the code or let me know if using globalKey the error is solved

Sure sir, I will update you, after I implement your suggestion. Thanks...

Sure sir, I will update you, after I implement your suggestion. Thanks...

Loading Issue Fixed in version 0.4.2. Thanks
But Full-screen toggle shows error some time.
https://user-images.githubusercontent.com/23526722/104149198-4ab1e000-53fb-11eb-8fe0-a7c861c9bb7f.mp4
I am using sample Stateful Widget code.

Loading Issue Fixed in version 0.4.2. Thanks
But Full-screen toggle shows error some time.
https://user-images.githubusercontent.com/23526722/104149198-4ab1e000-53fb-11eb-8fe0-a7c861c9bb7f.mp4
I am using sample Stateful Widget code.

Let me know if I'm using Global key correct way! Cause this not solves the issue. Same error.
This is my PageList Library for pagination in Feed Screen. This is a Stateless Widget

This is List Item Stateful Widget

And Here I can have Images or Videos or text in List View Item. So I have if conditions and show image or Stateful Video Widget (Code screenshot given in above comment).

Let me know if I'm using Global key correct way! Cause this not solves the issue. Same error.
This is my PageList Library for pagination in Feed Screen. This is a Stateless Widget

This is List Item Stateful Widget

And Here I can have Images or Videos or text in List View Item. So I have if conditions and show image or Stateful Video Widget (Code screenshot given in above comment).

@darwin-morocho , Let me know if I'm using Global key correct way! Cause this not solves the issue. Same error.
This is my PageList Library for pagination in Feed Screen. This is a Stateless Widget

This is List Item Stateful Widget

And Here I can have Images or Videos or text in List View Item. So I have if conditions and show image or Stateful Video Widget (Code screenshot given in above comment).

Keys help you to preserve the widget state when you have a widget inside a list or when the ui changes for screen rotation.
For that reason you need create a key for each item in your list, and store these keys into a property list

@darwin-morocho , Let me know if I'm using Global key correct way! Cause this not solves the issue. Same error.
This is my PageList Library for pagination in Feed Screen. This is a Stateless Widget

This is List Item Stateful Widget

And Here I can have Images or Videos or text in List View Item. So I have if conditions and show image or Stateful Video Widget (Code screenshot given in above comment).

Keys help you to preserve the widget state when you have a widget inside a list or when the ui changes for screen rotation.
For that reason you need create a key for each item in your list, and store these keys into a property list

Very Sorry, cant understand, any snippet or example code is highly appreciable.

Very Sorry, cant understand, any snippet or example code is highly appreciable.

I have used this two... But both has the same error.
I think it's not the keys, because if list view has only one video showing, then there is no problem.
Only if two video is fully visible in the screen, and I click on Full screen button, then I got this error.

I have used this two... But both has the same error.
I think it's not the keys, because if list view has only one video showing, then there is no problem.
Only if two video is fully visible in the screen, and I click on Full screen button, then I got this error.

"Only if two video is fully visible in the screen, and I click on the Full screen button, then I got this error."
https://user-images.githubusercontent.com/23526722/104446306-4387ff00-55c0-11eb-90c3-592e9e47d057.mp4

"Only if two video is fully visible in the screen, and I click on the Full screen button, then I got this error."
https://user-images.githubusercontent.com/23526722/104446306-4387ff00-55c0-11eb-90c3-592e9e47d057.mp4

@Minsamin I been tried to reproduce your error and yes the problem is because the ListView.builder destroy the element when the device rotate. I could fix it using AutomaticKeepAliveClientMixin but each item in the list never dies when you do scroll so you need to be careful with the performance
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:meedu_player/meedu_player.dart';

class ListViewExample extends StatefulWidget {
  ListViewExample({Key key}) : super(key: key);

  @override
  _ListViewExampleState createState() => _ListViewExampleState();
}

class _ListViewExampleState extends State<ListViewExample> with AutomaticKeepAliveClientMixin {
  // final List<MeeduPlayerController> _controllers = [];

  // @override
  // void dispose() {
  //   _controllers.forEach((element) {
  //     element.dispose();
  //   });
  //   super.dispose();
  // }

  @override
  void initState() {
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    super.build(context);
    return Scaffold(
      appBar: AppBar(),
      body: ListView.builder(
        cacheExtent: 600,
        itemBuilder: (_, index) => VideoItem(),
        itemCount: 10,
      ),
    );
  }

  @override
  bool get wantKeepAlive => true;
}

class VideoItem extends StatefulWidget {
  VideoItem({Key key}) : super(key: key);

  @override
  _VideoItemState createState() => _VideoItemState();
}

class _VideoItemState extends State<VideoItem> with AutomaticKeepAliveClientMixin {
  MeeduPlayerController _controller = MeeduPlayerController(
    screenManager: ScreenManager(orientations: [
      DeviceOrientation.portraitUp,
    ]),
  );

  @override
  void initState() {
    super.initState();
    _controller.setDataSource(
      DataSource(
        source: 'https://www.radiantmediaplayer.com/media/big-buck-bunny-360p.mp4',
        type: DataSourceType.network,
      ),
      autoplay: false,
    );
  }

  @override
  void dispose() {
    _controller.dispose();
    print("❌ dispose video player");
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    super.build(context);
    return AspectRatio(
      aspectRatio: 16 / 9,
      child: MeeduVideoPlayer(
        controller: _controller,
      ),
    );
  }

  @override
  bool get wantKeepAlive => true;
}

@Minsamin I been tried to reproduce your error and yes the problem is because the ListView.builder destroy the element when the device rotate. I could fix it using AutomaticKeepAliveClientMixin but each item in the list never dies when you do scroll so you need to be careful with the performance
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:meedu_player/meedu_player.dart';

class ListViewExample extends StatefulWidget {
  ListViewExample({Key key}) : super(key: key);

  @override
  _ListViewExampleState createState() => _ListViewExampleState();
}

class _ListViewExampleState extends State<ListViewExample> with AutomaticKeepAliveClientMixin {
  // final List<MeeduPlayerController> _controllers = [];

  // @override
  // void dispose() {
  //   _controllers.forEach((element) {
  //     element.dispose();
  //   });
  //   super.dispose();
  // }

  @override
  void initState() {
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    super.build(context);
    return Scaffold(
      appBar: AppBar(),
      body: ListView.builder(
        cacheExtent: 600,
        itemBuilder: (_, index) => VideoItem(),
        itemCount: 10,
      ),
    );
  }

  @override
  bool get wantKeepAlive => true;
}

class VideoItem extends StatefulWidget {
  VideoItem({Key key}) : super(key: key);

  @override
  _VideoItemState createState() => _VideoItemState();
}

class _VideoItemState extends State<VideoItem> with AutomaticKeepAliveClientMixin {
  MeeduPlayerController _controller = MeeduPlayerController(
    screenManager: ScreenManager(orientations: [
      DeviceOrientation.portraitUp,
    ]),
  );

  @override
  void initState() {
    super.initState();
    _controller.setDataSource(
      DataSource(
        source: 'https://www.radiantmediaplayer.com/media/big-buck-bunny-360p.mp4',
        type: DataSourceType.network,
      ),
      autoplay: false,
    );
  }

  @override
  void dispose() {
    _controller.dispose();
    print("❌ dispose video player");
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    super.build(context);
    return AspectRatio(
      aspectRatio: 16 / 9,
      child: MeeduVideoPlayer(
        controller: _controller,
      ),
    );
  }

  @override
  bool get wantKeepAlive => true;
}

It's a pagination, so I can't keep all items in memory, this list can be more than 5k, maybe more in long term of the project. How can i use this video library then?
Can't you find any other solution?
Because I want to use this package, it's awesome. But with this issue i can deliver in production.
Please try to find some other ways. Is this issue has every video package.? I think not.

It's a pagination, so I can't keep all items in memory, this list can be more than 5k, maybe more in long term of the project. How can i use this video library then?
Can't you find any other solution?
Because I want to use this package, it's awesome. But with this issue i can deliver in production.
Please try to find some other ways. Is this issue has every video package.? I think not.

It's a pagination, so I can't keep all items in memory, this list can be more than 5k, maybe more in long term of the project. How can i use this video library then?
Can't you find any other solution?
Because I want to use this package, it's awesome. But with this issue i can deliver in production.
Please try to find some other ways. Is this issue has every video package.? I think not.

@Minsamin this is not an issue is a normal behavior of this and other plugin, here you need to find a solution like destroy the widgets when they are no visible or something similar.

It's a pagination, so I can't keep all items in memory, this list can be more than 5k, maybe more in long term of the project. How can i use this video library then?
Can't you find any other solution?
Because I want to use this package, it's awesome. But with this issue i can deliver in production.
Please try to find some other ways. Is this issue has every video package.? I think not.

@Minsamin this is not an issue is a normal behavior of this and other plugin, here you need to find a solution like destroy the widgets when they are no visible or something similar.

Ookk, waiting for your solution.

Ookk, waiting for your solution.

Ookk, waiting for your solution.

you can find more info here https://github.com/flutter/flutter/issues/58917
And you could try this package https://pub.dev/packages/visibility_detector

Ookk, waiting for your solution.

you can find more info here https://github.com/flutter/flutter/issues/58917
And you could try this package https://pub.dev/packages/visibility_detector

@Minsamin other alternative is you can show a preview in your list as an image preview and when you click  the image show the player in fullscreen mode

@Minsamin other alternative is you can show a preview in your list as an image preview and when you click  the image show the player in fullscreen mode

@Minsamin other alternative is you can show a preview in your list as an image preview and when you click  the image show the player in fullscreen mode

Yeah, I'm already using this. Not showing full screen button in list. Only full screen will work in feed details screen.
Thanks BTW. 😊😊

@Minsamin other alternative is you can show a preview in your list as an image preview and when you click  the image show the player in fullscreen mode

Yeah, I'm already using this. Not showing full screen button in list. Only full screen will work in feed details screen.
Thanks BTW. 😊😊


Error (time out) when building the project on macOS

I can't get the AspNetCore project to build. Here is the output of running ./build.sh --verbose on master (macOS Sierra 10.12.6):
./build.sh --verbose
Using KoreBuild 3.0.0-build-20181206.3
Using cached .NET Framework reference assemblies from /Users/0xced/.dotnet/buildtools/netfx/4.7.2
warning: dotnet found on the system PATH is '/usr/local/share/dotnet/dotnet' but KoreBuild will use '/Users/0xced/.dotnet/dotnet'.
warning: Adding '/Users/0xced/.dotnet' to system PATH permanently may be required for applications like Visual Studio for Mac or VS Code to work correctly.
debug  : Installing .NET Core SDK 3.0.100-preview-009750
.NET Core SDK 3.0.100-preview-009750 is already installed. Skipping installation.
debug  : Building /Users/0xced/Projects/AspNetCore
debug  : Enabling binary logging
debug  : dotnet = /Users/0xced/.dotnet/dotnet
debug  : Noop = false
>>> dotnet publish /Users/0xced/Projects/AspNetCore/build/tasks/RepoTasks.csproj --configuration Release --output /Users/0xced/Projects/AspNetCore/build/tasks/bin/publish/ -nologo -p:RepoTasksSdkPath=/Users/0xced/.dotnet/buildtools/korebuild/3.0.0-build-20181206.3/scripts/../msbuild/KoreBuild.RepoTasks.Sdk/Sdk/ @/Users/0xced/Projects/AspNetCore/artifacts/logs/msbuild.logger.rsp
  Restore completed in 27.08 ms for /Users/0xced/Projects/AspNetCore/build/tasks/RepoTasks.csproj.
  RepoTasks -> /Users/0xced/Projects/AspNetCore/build/tasks/bin/Release/netcoreapp2.1/RepoTasks.dll
  RepoTasks -> /Users/0xced/Projects/AspNetCore/build/tasks/bin/publish/

Build succeeded.
    0 Warning(s)
    0 Error(s)

Time Elapsed 00:00:01.65
<<< dotnet [0]
debug  : Invoking msbuild with '/m
/nodeReuse:false
/p:KoreBuildVersion=3.0.0-build-20181206.3
/p:SuppressNETCoreSdkPreviewMessage=true
/p:RepositoryRoot="/Users/0xced/Projects/AspNetCore/"
"/bl:/Users/0xced/Projects/AspNetCore/artifacts/logs/msbuild.binlog"
"/Users/0xced/.dotnet/buildtools/korebuild/3.0.0-build-20181206.3/scripts/../KoreBuild.proj"'
>>> dotnet msbuild @/Users/0xced/Projects/AspNetCore/artifacts/logs/msbuild.rsp @/Users/0xced/Projects/AspNetCore/artifacts/logs/msbuild.logger.rsp
Microsoft (R) Build Engine version 15.9.19+g938f3292a0 for .NET Core
Copyright (C) Microsoft Corporation. All rights reserved.

/Users/0xced/.dotnet/sdk/3.0.100-preview-009750/MSBuild.dll -distributedlogger:Microsoft.DotNet.Tools.MSBuild.MSBuildLogger,/Users/0xced/.dotnet/sdk/3.0.100-preview-009750/dotnet.dll*Microsoft.DotNet.Tools.MSBuild.MSBuildForwardingLogger,/Users/0xced/.dotnet/sdk/3.0.100-preview-009750/dotnet.dll -maxcpucount /m -verbosity:m /bl:/Users/0xced/Projects/AspNetCore/artifacts/logs/msbuild.binlog /clp:Summary /nodeReuse:false /p:KoreBuildVersion=3.0.0-build-20181206.3 /p:SuppressNETCoreSdkPreviewMessage=true /p:RepositoryRoot=/Users/0xced/Projects/AspNetCore/ /Users/0xced/.dotnet/buildtools/korebuild/3.0.0-build-20181206.3/scripts/../KoreBuild.proj
  Restoring NPM modules
  npm WARN FunctionalTests No description
  npm WARN FunctionalTests No repository field.
  npm WARN FunctionalTests No license field.

  audited 17652 packages in 12.291s
  found 0 vulnerabilities

  Installing .NET Core Runtime (x64) 3.0.0-preview-27122-01
  dotnet-install output:
  dotnet-install: Calling: machine_has curl
  dotnet-install: Calling: calculate_vars
  dotnet-install: Calling: get_normalized_architecture_from_architecture x64
  dotnet-install: normalized_architecture=x64
  dotnet-install: Calling: get_specific_version_from_version https://dotnetcli.blob.core.windows.net/dotnet LTS x64 3.0.0-preview-27122-01
  dotnet-install: specific_version=3.0.0-preview-27122-01
  dotnet-install: Calling: construct_download_link https://dotnetcli.blob.core.windows.net/dotnet LTS x64 3.0.0-preview-27122-01
  dotnet-install: Calling: get_current_os_name
  dotnet-install: download_link=https://dotnetcli.blob.core.windows.net/dotnet/Runtime/3.0.0-preview-27122-01/dotnet-runtime-3.0.0-preview-27122-01-osx-x64.tar.gz
  dotnet-install: Calling: construct_legacy_download_link https://dotnetcli.blob.core.windows.net/dotnet LTS x64 3.0.0-preview-27122-01
  dotnet-install: Calling: get_legacy_os_name
  dotnet-install: legacy_download_link=https://dotnetcli.blob.core.windows.net/dotnet/Runtime/3.0.0-preview-27122-01/dotnet-osx-x<IP_ADDRESS>-preview-27122-01.tar.gz
  dotnet-install: Calling: resolve_installation_path /Users/0xced/.dotnet
  dotnet-install: install_root=/Users/0xced/.dotnet
  dotnet-install: Calling: check_pre_reqs
  dotnet-install: Calling: install_dotnet
  dotnet-install: Calling: is_dotnet_package_installed /Users/0xced/.dotnet shared/Microsoft.NETCore.App 3.0.0-preview-27122-01
  dotnet-install: Calling: combine_paths /Users/0xced/.dotnet shared/Microsoft.NETCore.App
  dotnet-install: combine_paths: root_path=/Users/0xced/.dotnet
  dotnet-install: combine_paths: child_path=shared/Microsoft.NETCore.App
  dotnet-install: Calling: combine_paths /Users/0xced/.dotnet/shared/Microsoft.NETCore.App 3.0.0-preview-27122-01
  dotnet-install: combine_paths: root_path=/Users/0xced/.dotnet/shared/Microsoft.NETCore.App
  dotnet-install: combine_paths: child_path=3.0.0-preview-27122-01
  dotnet-install: is_dotnet_package_installed: dotnet_package_path=/Users/0xced/.dotnet/shared/Microsoft.NETCore.App/3.0.0-preview-27122-01
  dotnet-install: Zip path: /var/folders/1l/rbhqr1jx4fdbgxmf58vwdw700000gq/T//dotnet.jRE126vpV
  dotnet-install: Downloading link: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/3.0.0-preview-27122-01/dotnet-runtime-3.0.0-preview-27122-01-osx-x64.tar.gz
  dotnet-install: Calling: download https://dotnetcli.blob.core.windows.net/dotnet/Runtime/3.0.0-preview-27122-01/dotnet-runtime-3.0.0-preview-27122-01-osx-x64.tar.gz /var/folders/1l/rbhqr1jx4fdbgxmf58vwdw700000gq/T//dotnet.jRE126vpV
  dotnet-install: Calling: machine_has curl
  dotnet-install: Calling: downloadcurl https://dotnetcli.blob.core.windows.net/dotnet/Runtime/3.0.0-preview-27122-01/dotnet-runtime-3.0.0-preview-27122-01-osx-x64.tar.gz /var/folders/1l/rbhqr1jx4fdbgxmf58vwdw700000gq/T//dotnet.jRE126vpV
/Users/0xced/.dotnet/buildtools/korebuild/3.0.0-build-20181206.3/modules/KoreBuild.Tasks/module.targets(44,5): error : dotnet-install of .NET Core Runtime (x64) 3.0.0-preview-27122-01 timed out after 240 seconds. [/Users/0xced/.dotnet/buildtools/korebuild/3.0.0-build-20181206.3/KoreBuild.proj]

Build FAILED.

/Users/0xced/.dotnet/buildtools/korebuild/3.0.0-build-20181206.3/modules/KoreBuild.Tasks/module.targets(44,5): error : dotnet-install of .NET Core Runtime (x64) 3.0.0-preview-27122-01 timed out after 240 seconds. [/Users/0xced/.dotnet/buildtools/korebuild/3.0.0-build-20181206.3/KoreBuild.proj]
    0 Warning(s)
    1 Error(s)

Time Elapsed 00:04:14.26
error  : dotnet failed with exit code 1

 And here is my  ~/.dotnet/dotnet --info
.NET Core SDK (reflecting any global.json):
 Version:   3.0.100-preview-009750
 Commit:    84dcc2bfd8

Runtime Environment:
 OS Name:     Mac OS X
 OS Version:  10.12
 OS Platform: Darwin
 RID:         osx.10.12-x64
 Base Path:   /Users/0xced/.dotnet/sdk/3.0.100-preview-009750/

Host (useful for support):
  Version: 3.0.0-preview-27113-06
  Commit:  48270a44c2

.NET Core SDKs installed:
  2.1.302 [/Users/0xced/.dotnet/sdk]
  2.1.400 [/Users/0xced/.dotnet/sdk]
  3.0.100-preview-009750 [/Users/0xced/.dotnet/sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.All 2.1.2 [/Users/0xced/.dotnet/shared/Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 3.0.0-alpha1-10663 [/Users/0xced/.dotnet/shared/Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.1.2 [/Users/0xced/.dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 3.0.0-alpha1-10663 [/Users/0xced/.dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 2.0.9 [/Users/0xced/.dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.0 [/Users/0xced/.dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.2 [/Users/0xced/.dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.3 [/Users/0xced/.dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.2.0-preview1-26618-02 [/Users/0xced/.dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.2.0-preview2-26905-02 [/Users/0xced/.dotnet/shared/Microsoft.NETCore.App]

What's that timeout? Is there a way I could enable even more verbose output to understand what's going on?

The logs indicate that the issue was a timeout downloading https://dotnetcli.blob.core.windows.net/dotnet/Runtime/3.0.0-preview-27122-01/dotnet-runtime-3.0.0-preview-27122-01-osx-x64.tar.gz.
  dotnet-install: Calling: downloadcurl https://dotnetcli.blob.core.windows.net/dotnet/Runtime/3.0.0-preview-27122-01/dotnet-runtime-3.0.0-preview-27122-01-osx-x64.tar.gz /var/folders/1l/rbhqr1jx4fdbgxmf58vwdw700000gq/T//dotnet.jRE126vpV
/Users/0xced/.dotnet/buildtools/korebuild/3.0.0-build-20181206.3/modules/KoreBuild.Tasks/module.targets(44,5): error : dotnet-install of .NET Core Runtime (x64) 3.0.0-preview-27122-01 timed out after 240 seconds. [/Users/0xced/.dotnet/buildtools/korebuild/3.0.0-build-20181206.3/KoreBuild.proj]

Try running again. Sometimes Azure storage is flaky.
Side note: what's your internet speed? Most of us are on relatively fast internet, so our timeouts are often tuned to what we perceive as 'slow.'

I already tried about ten times and it always fail with the timeout. Indeed, the download is very slow, I can see curl downloading between 50 and 100 KB/s which is way under my usual download speed.
So here is what I did: I looked at ~/.dotnet/buildtools/korebuild/3.0.0-build-20181206.3/modules/KoreBuild.Tasks/module.targets(44,5) and saw that it calls ~/.dotnet/buildtools/korebuild/3.0.0-build-20181206.3/scripts/dotnet-install.sh. After some trial and error I guessed the parameters to pass to this script so that it performs the same installation that is initiated by MSBuild:
$ cd ~/.dotnet/buildtools/korebuild/3.0.0-build-20181206.3/scripts
$ ./dotnet-install.sh --verbose --no-cdn --runtime dotnet -v 3.0.0-preview-27122-01

And it worked! The installation of .NET Core Runtime (x64) 3.0.0-preview-27122-01 succeeded. Then I came back to the AspNetCore repository and ran ./build.sh --verbose again. It detected that the runtime was now installed and went on with the build, yay!
Of course this whole process would be much easier if MSBuild did not impose an arbitrary 240 seconds timeout. 😞

Does it run faster if you remove --no-cdn?