Feature Request: Typescript Support

Hi,
This is kind of ground breaking. I think this is er very easy and well thought abstraction for animating stuff based on state. I will definitely take a closer look into this tool :-)
My biggest problem(which is kind of small) at the moment is that there aren't any typings to find for this package yet. I would really love to see some typings for this libary as it would make the whole API easier to get into and make it way easier to use in Typescript projects :-)

I have a hard time finding time to write a good and complete type definition for this project soon but i will definitely let you know if or when i have the time to go through the type definition :-)

I welcome PRs. I have little experience in TS myself and found it hard to wrap my head around. If you find the time to create typings, that would be awesome. 😀

I'm currently evaluating the transition from react-motion to react-spring in our products, might have time to make the type definition.

Should this issue be reopened? Due to the fact that the typing is only half finished, and ts compiler will scream when you use components other than Spring.

Sure.

Hey everyone,
I've tried to add the missing types. I'm relatively new to TypeScript so I'm sure I did something wrong. Basically I was just copy & pasting the stuff that I have found in the initial index.d.ts file.
It would be great if I can get some advice/help on how to test the annotations before I do a pull request.

@radudascaluntt no worries, you can just create a PR!

Will make the PR from another account. I forgot I was using this one yesterday :)

Hi @radudascaluntt I wrote the current Spring typing. Didn't write others because I haven't got a change to use them yet.
You can use tsc or vscode to test the syntax. It's a bit hard to test integration because the project itself doesn't have testing yet.
I first edited the index.d.ts directly within my own project to make sure it worked. And then eyeballed the source for places I wasn't quite sure about.
Most of the time you just need to follow the propTypes.
Hope this helps.

For the time being I've found that adding the path to jsconfig.js file makes vscode provide some intellisense
{
  "paths": {
  // ...
    "react-spring": ["./node_modules/react-spring/src/index.js"], // Not ready yet
  },
  // ...
}

@raspo could you make a PR and add it to the build? TS support is supper spotty it seems and the current PRs have all fallen asleep.

Providing only the Spring component in typings.d.ts is not a good idea.
VSCode then thinks the library does have a typings file (which is incomplete) and trigger errors when importing any other component such as Transition.
Either update the typings or remove it completely.

@drcmda I would just merge #84, it probably still misses some things, but it's better than having typings for only 1 out of 5 components, which is the state we're in now.

@jariz thanks, very happy about getting help here - i'll merge it

I've been working on filling out typings for this, but I've ran into an issue where typescript stops being able to infer the render argument type as soon as native is supported. Simplifying:
declare class AnimatedValue<T> {
  interpolate(map: (value: T) => U): AnimatedValue;
}

type AnimatedValueMap<T> = { [N in keyof T]: AnimatedValue<T[N]>; };

declare const animated: // distractingly big, maps JSX.IntrinsicElements to ComponentType<> with props that take AnimatedValue

type RenderPropsBase<T> = {
  render: (value: T) => React.ReactNode;
}; // | { children: ... }, etc...

type RenderProps<T> =
  | RenderPropsBase<T> & { native?: false }
  | RenderPropsBase<AnimatedValueMap<T>> & { native: true }
  ;

type TransitionProps<T> = RenderProps<T> & { from?: T; enter?: T; leave?: T; };

declare class Transition<T> extends React.PureComponent<TransitionProps<T>> { }

const dynamicRenderElement = (
  <Transition
    from={{ x: 0 }}
    enter={{ x: 100 }}
    render={props => ( // Parameter 'props' implicitly has an 'any' type.

    )}
  />
)

const nativeRenderElement = (
  <Transition
    native
    from={{ x: 0 }}
    enter={{ x: 100 }}
    render={props => ( // Parameter 'props' implicitly has an 'any' type.
      <animated.div
        style={props.x.interpolate(left => ({ left }))}
      />
    )}
  />
)

If either option in RenderProps<T> is commented out, the other one works with full inference, so this is pretty annoying, otherwise you have to annotate the props types on both sides as : { x: number } or : { x : AnimatedValue<number> } (or in general, : T and : AnimatedValueMap<T>).
The existing typings seem to "solve" this by removing any type association between the provided values (from, enter) and the render / children argument, meaning you don't have any type checking on the values, or inference on the args, but I haven't double-checked this.
I'll keep poking at this, but would it make sense from the JS side to offer, e.g. <native.Transition /> as a friendlier to typescript option to <Transition native />?

@simonbuchan i see, but is there no other way? Can't props be simply either an object of values and strings or an object of animatedValues? This would cause some confusion otherwise. I wanted the api to stay simple, where "native" wouldn't be that different from the default.
PS. you only need to interpolate values if you change their structure:
render={props => (
  <animated.div style={{ left: props.x }} />
)}

Yeah 😱Does TS run in CodeSandBox? If we re-create your snippet above to demonstrate and isolate the problem, maybe it helps showing it around to get some input.
If nothing helps we could make a typescript target with forward components, it would be easy to define, the build chain is already equipped for it.

Since it's just a typing issue, the standard is the playground for repro issues, e.g. a TS bug report, but I would like to reduce it a bit more first.
What I've got so far now implies that TS doesn't know how to contextually type the JSX props from the component signature, and it works without the union since the non-contextual inference still works, but that doesn't seem to make sense with the parameter being contextually typed. 😵
I could throw up what I've got tomorrow (9:00 PM here 😉) for this side, though, if anyone wants to give it a stab.

@simonbuchan

Nope, then you can't use props.foo.interpolate(), because props.foo might be number instead of AnimatedValue, and you can't assign props.x to left, because animated.div's left is AnimatedValue and props.x might be a number, and vice-versa for non-animated div.

You must check props.foo with typeof during runtime and then cast it to number or AnimatedValue<number>.

No that's not needed if you have the union at a higher lever and have something that can distinguish, e.g. here you can detect based on whether native is provided which will be passed.
E.g. the following works properly in typescript:
declare class AnimatedValue<T> {
    interpolate(map: (value: T) => U): AnimatedValue;
}

type DynamicProps<T> = { native: false, value: T, render: (value: T) => string };
type NativeProps<T> = { native: true, value: T, render: (value: AnimatedValue<T>) => AnimatedValue<string> };
type AutoProps<T> = DynamicProps<T> | NativeProps<T>;

declare function renderAuto<T>(props: AutoProps<T>): string;

renderAuto({
    native: false,
    value: 123,
    render: x => x.toFixed()
});
renderAuto({
    native: true,
    value: 123,
    render: ax => ax.interpolate(x => x.toFixed())
});

Interestingly, you can't make native optional there, even though it should know it has to be DynamicProps<native>. since there's no native property, which might be related.

@simonbuchan i'm a total beginner when it comes to TS, but does that mean it can be solved without having to duplicate all primitives (NativeSpring, etc.) ?

I mean, what I've got will work fine so long as you provide the type for the render argument, the win over the current types being that it can check if the values are compatible - but that's not really up to my expectations (you shouldn't have to read docs on how to use the typings for a library). Typescript already has all the information to infer everything itself, and can figure out similar, but simpler cases like in the example above, so I think this is either just a bug, or an improvement to TS they would be happy to add.
The suggestion for <native.Foo> would mean it wouldn't have to wait for that, though, (and I kind of like the symmetry with <animated.foo>), but you should in general only be changing libraries to fit typescript if it actually makes the library better even without types, which this isn't clearly so - one reason you might break the native types out for is if it means dead code elimination works better, for example?

The additional payload for native and animated.element isn't that big. If size is really an issue there would be more efficient ways, for instance react-spring/dist/universal (doesn't contain native, no colors) or react-spring-numerical (can be native, but no interpolations, just numbers => 2kb).

I see that in TransitionProps, keys property is not marked as optional even though the comment says it can be ommited if children/render aren't array.

Thanks for the work on the missing type definitions. The imperative API still seems to be missing types.

I presume this is related to this ticket, TSLint is giving me this error for Transition and Spring components:
[ts] JSX element type 'Transition' does not have any construct or call signatures.
(alias) class Transition<S extends object, DS extends object>
import Transition

Scratch that. All I had to do was upgrade the React and ReactDOM types to
"@types/react": "^16.4.6",
"@types/react-dom": "^16.0.6",

Hi, I was trying to reproduce an example with typescript and realized there are missing typings for the Keyframes.

@mbeauchamp7 looks like it's an old definition. Do you know your way around TS? I welcome PR's.
They're 4 statics, ´script´ is already gone.
https://github.com/drcmda/react-spring/blob/master/src/Keyframes.js

@drcmda I'm not very good with definition files but I can give it a try!

Someone just updated typing, i'll try to get some more fixes in and will release soon.

Very cool @drcmda !
Full typings would be so cool. I still get weird errors on Transition though.. Which does seem to have typings?
        <Transition
          from={{ opacity: 0 }}
          enter={{ opacity: 1 }}
          leave={{ opacity: 0 }}
        >
          {this.state.loaded && <Welcome>Hello world</Welcome>}
        </Transition>

 Type '{ children: boolean | Element; from: { opacity: number; }; enter: { opacity: number; }; leave: { ...' is not assignable to type '(IntrinsicAttributes & IntrinsicClassAttributes<Transition<{}, { opacity: number; }>> & Readonly<...'.
  Type '{ children: boolean | Element; from: { opacity: number; }; enter: { opacity: number; }; leave: { ...' is not assignable to type 'IntrinsicAttributes & IntrinsicClassAttributes<Transition<{}, { opacity: number; }>> & Readonly<{...'.
    Type '{ children: boolean | Element; from: { opacity: number; }; enter: { opacity: number; }; leave: { ...' is not assignable to type 'Readonly<TransitionProps<{}, { opacity: number; }>>'.
      Types of property 'children' are incompatible.
        Type 'boolean | Element' is not assignable to type 'SpringRendererFunc<{}, { opacity: number; }> | SpringRendererFunc<{}, { opacity: number; }>[] | u...'.
          Type 'true' is not assignable to type 'SpringRendererFunc<{}, { opacity: number; }> | SpringRendererFunc<{}, { opacity: number; }>[] | u...'.

@lasseborly I think they have been update, but not released on npm

Right, i just updated ...

Ok.. I think I have managed to track my problem down. Limited experience with both react-spring and Typescript might make me come across as ignorant. But here we go.
If I try to go by the docs and make use of Transition as described I run into some problems.
  <Transition
    from={{ opacity: 0 }}
    enter={{ opacity: 1 }}
    leave={{ opacity: 0 }}
  >
    {loaded && Welcome}
  </Transition>

Usage like that resolves in an error: TypeError: Cannot add property props, object is not extensible. Looking at the proptypes then and at other code makes it so children and render only takes a function or an array of functions.
So doing that works fine:
  <Transition
    from={{ opacity: 0 }}
    enter={{ opacity: 1 }}
    leave={{ opacity: 0 }}
  >
    {loaded &&
      (styles => (
        <Welcome style={styles}>Hello world {styles.opacity}</Welcome>
      ))}
  </Transition>

Until we venture into Typescript land where the interface of the Transition prop types are exactly like their prop-types counterparts. A function or an array of functions.
Which means that it bugs out when it sees loaded which is a boolean.
Adding boolean as part of the Transition props interface solves the problem.
If I'm not misunderstanding the problem and I'm not doing something fundamentally wrong you guys can correct me. If not a proposal for a PR I'll gladly produce sounds as follow.

Rewrite the parts of the documentation that are faulty or misleading.
Extend the Transition interface definition to accept a booleanvalue.
Extend the Transition prop type to accept a boolean value. Primarily for parity with the TS interface definition.

Again, I'll gladly put up the PR. Really love this library and would be grateful for the opportunity to contribute. Even if it's "only" typings. 😊

Could anyone help fixing types for 6.0? Transition and Trail have changed a little. They accept a single function child: (item, state, index) => props => ReactNode
item is the individual item, transiton and trail are driven by the items prop
state can be "enter"|"update"|"leave"
index is the index of the item
http://react-spring.surge.sh/transition
Right now the types declare SpringRendererFunc, which is wrong i guess ...

Has anyone managed to use react-spring with typescript?
I tried doing this:
import { config, Transition } from 'react-spring'
const AnimatedRoutes = (props: RouteComponentProps) => (
    <Transition
        config={config.slow}
        keys={props.location.key}
        from={{ transform: 'translateY(100px)', opacity: 0 }}
        enter={{ transform: 'translateY(0px)', opacity: 1 }}
        leave={{ transform: 'translateY(100px)', opacity: 0 }}
    >
        <Switch location={props.location}>
            <Route path="/" exact={true} component={LandingPage} />
            <Route path="/about" component={HowWorks} />
            <Route path="/1" component={Step1} />
            <Route path="/2" component={Step2} />
            <Route path="/3" component={Step3} />
            <Route path="/4" component={Step4} />
            <Route path="/5" component={Step5} />
        </Switch>
    </Transition>
);
class App extends React.Component {
    public render() {
        return (

                <ApolloProvider client={client}>
                    <ReduxProvider store={store}>
                        <Router>
                            <Route render={AnimatedRoutes} />
                        </Router>
                    </ReduxProvider>
                </ApolloProvider>

        );
    }
}

and got this error:
(27,6): Type '{ children: Element; config: SpringConfig; from: { transform: string; opacity: number; }; enter: { transform: string; opacity: number; }; leave: { transform: string; opacity: number; }; }' is not assignable to type '(IntrinsicAttributes & IntrinsicClassAttributes<Transition<{}, {}, { transform: string; opacity: number; }, { transform: string; opacity: number; }, { transform: string; opacity: number; }, {}>> & Readonly<...> & Readonly<...>) |
(IntrinsicAttributes & ... 2 more ... & Readonly<...>)'.
  Type '{ children: Element; config: SpringConfig; from: { transform: string; opacity: number; }; enter: { transform: string; opacity: number; }; leave: { transform: string; opacity: number; }; }' is not assignable to type 'Readonly<TransitionProps<{}, {}, { transform: string; opacity: number; }, { transform: string; opacity: number; }, { transform: string; opacity: number; }, {}>>'.
    Property 'items' is missing in type '{ children: Element; config: SpringConfig; from: { transform: string; opacity: number; }; enter: { transform: string; opacity: number; }; leave: { transform: string; opacity: number; }; }'.

Why is items required? The type definitions seem to be totally off. What am i missing? (i'm using v 6.4.1 or react-slick)

items is a required Transition prop, so add
 <Transition
  items={[1]]

Also Transition`s child needs to be a function, see the docs http://react-spring.surge.sh/transition

bump.
It's really hard to work with lib when you getting errors even in basic usage.

bump.
It's really hard to work with lib when you getting errors even in basic usage.

export const App = () => {
  return (

      import { Spring } from 'react-spring'

      <Spring from={{ opacity: 0 }} to={{ opacity: 1 }}>
        {props =>
hello
}
      </Spring>

  );
};

Not sure if I should make a new issue but Trail and presumably some of the other components that can take any Spring prop should extend SpringProps, not SpringBaseProps.
For example, using the after prop with Trail gives the error Property 'after' does not exist on type...

With the latest version of react-spring (with hooks) and using react-konva:
import { useSpring, animated } from 'react-spring/konva';

I get the following error:
 TS7016: Could not find a declaration file for module 'react-spring/konva'.
'/.../node_modules/react-spring/konva.js' implicitly has an 'any' type.

Any tip on how I can fix this?

The module exists<EMAIL_ADDRESS>


Improvement/project startup

Add test stack
Add openWeatherMapProvider with methods:

getByCityName
getByCityId
getByLatLong
getByZipCodeAndCountryCode

Add test and cover scripts in package.json .

Thanks for your contribution @rdiego26 . Feel free to suggests more and report items.


Added prepared statements in update.php

Added prepared statements in update.php to improve security.
IMPORTANT: I got an issue about the ID in the table, i used your README.md file to get started but probably you want to update it and make the ID as "AUTO_INCREMENT", i'm not sure, this might be on purpose and i may be wrong, but i had to add the following statement to make it work:
ALTER TABLE books MODIFY COLUMN id INT NOT NULL auto_increment;

yes au
to increment was intended. i created the readme after project creation. sorry for that !

you can also update README.md


Use raw atom module names for proto_dist and epmd_module

Something like:
defmodule :caravan_dist do
  # …
end

would greatly improve readability of command line arguments.

I might consider it. I just use bash scripts to set the erl flags, so it's not an issue for me


feat: port CategoryTheory.Limits.Shapes/Biproducts

[ ] depends on: #2636
[ ] depends on: #2688

This PR/issue depends on:

leanprover-community/mathlib4#2636
leanprover-community/mathlib4#2688
By Dependent Issues (🤖). Happy coding!

This PR/issue depends on:

leanprover-community/mathlib4#2636
leanprover-community/mathlib4#2688
By Dependent Issues (🤖). Happy coding!


move from<EMAIL_ADDRESS>to stylelint-test-rule-tape

Expected behavior:
npm install with no warning
Actual behavior:
npm WARN deprecated<EMAIL_ADDRESS>Use stylelint-test-rule-tape instead
Steps to reproduce:
checkout the project
navigate to the frontend directory
npm install
Screenshots (if applicable):
N/A
OS and Browser:

I've submitted a new PR to the dependency: https://github.com/sh-waqar/stylelint-declaration-use-variable/pull/23.
If the author is still there we'd get our fix soon.


Convert path types to use PurePath

What is wrong?
In the trinity module we have a number of path objects that are typed as str.
The pathlib standard library module has a PurePath class which is more appropriate.
How can it be fixed
Update the trinity module to use the PurePath type for all filesystem paths.  If it seems appropriate, lets also update the code to actually use and return PurePath objects.

@pipermerriam would like to take a stab on this 🗡

⚔ stab away


[LAND-SEE] - Add subscription form

PR covers the subscription form, complete with animated parallax background. As suggested by @aghassemi, here, I opted to use amp-position-observer/amp-animation in lieu of amp-fx-parallax to achieve the desired animation effect.
I also abstracted page-level data to data.json, for use with additional upcoming pages, organizing only relevant land-see.amp.json data for use with land-see.amp.html.
Added partials subfolder, along with image.snip.html and subscription.snip.html partials.
Firebase staging deployed:
https://landseeampstart.firebaseapp.com/templates/land-see/land-see.amp
Experimental component will need to be enabled on the JS console:
AMP.toggleExperiment('amp-position-observer');

Cool template.
FYI: we are launching amp-position-observer, so AMP.toggleExperiment('amp-position-observer'); won't be necessary anymore in about a week!

Thanks, @aghassemi! Removed that default attribute. Looking forward to amp-position-observer coming outta experimental phase.

Ok, I think most of those issues have been taken care of. I could use your direction on this, though, please. Thanks!


HPGL homepage down

Dear HPGL team,
Is the projects homepage at http://hpgl.mit-ufa.com/ down?
Cheers

Hello, telesphorus.
Thank you for issue. I will transfer old site to github.io
http://hpgl.github.io/hpgl/


OverFlow Problem

The widget overflows on initial launch by several pixel

I solved the problem : https://github.com/Bernardi23/search_map_place/pull/9

is this going to be merged?

I'm currently traveling. I'll take a look as soon as I get back home and, if everything is working fine, I'll be merging. This is weird though, because I tested it on multiple device sizes and everything looked fine. Maybe the new updates broke it.

I solved the problem : #9

Thanks @TheScottishFly  I've downloaded your fork and it works fine.

it helped me thank you, you should merge it.

I am facing same overflow problem. Although I copy pasted whole code.

problem overflow Expanded(child:child)

Hey guys. I’m sorry for taking so long to update this. All of you who are still having the issue, what device are you using (and what are its dimensions)?

I think this is reproducible on nearly all Android devices.

Hey guys. I’m sorry for taking so long to update this. All of you who are still having the issue, what device are you using (and what are its dimensions)?

I'm getting this issue in the iOS Simulator  (iPhone 11 Pro Max)

Like Ive said before, this is weird because I tested it on multiple device sizes, but I’ll test it again since this might be happening due to updates.
Also I don’t have a Mac to test it on IOS.

Like Ive said before, this is weird because I tested it on multiple device sizes, but I’ll test it again since this might be happening due to updates.
Also I don’t have a Mac to test it on IOS.

So to give you two devices: I could reproduce this issue on a Sony Xperia Xz3 and on a Oneplus 5

I have the same problem on huawei p30 pro. Thanks for fixing soon ;)

Version 0.3.0 should now be available, where there were not only bug fixes (like this one), but also a few other changes.


intersect with split option has a "strand" bug when using on BED12 files with blocks

Thanks for the awesome set of tools.    I'm using Version: v2.26.0
Input files:
cat toy_probe2.bed
chr1	1000000	1000025	probe	1084	-	1000075	1000075	255,0,0	1	25	0
cat toy_mrna.bed
chr1	1000000	1002000	mrna	1084	+	1000000	1000000	255,0,0	5	40,400,160,200,300,	0,300,1000,1200,1700
bedtools intersect -split  -wao   -a toy_probe2.bed -b toy_mrna.bed
chr1	1000000	1000025	probe	1084	-	1000075	1000075	255,0,0	1	25	0	chr1	1000000	1002000	mrna	1084	+	1000000	1000000	255,0,0	5	40,400,160,200,300,	0,300,1000,1200,1700	25
The output shows a 25 base overlap however "probe" is on the minus strand and myna is on the plus strand.
This seems to be a bug.
Thanks, Sajeev

Hi Sajeev,
By default, intersect ignores strandedness, but you can use the -s and -S options to enforce it. From the docs page:
-s 	Force “strandedness”. That is, only report hits in B that overlap A on the same strand. By default, overlaps are reported without respect to strand.
-S 	Require different strandedness. That is, only report hits in B that overlap A on the opposite strand. By default, overlaps are reported without respect to strand.

Yes, thanks for letting me know.
-s works as intended.


drop mIOU when convert to int8 TensorRT

I use RepVGG A2 as Backbone segmentation. After converting to engine TensorRT, float 16 keep the mIOU as the pytorch model, but when I convert to int8 TensorRT, mIOU drop ~5%. Did you try it yet?

Hi,  what is the speed of your models:

before converting to VGG?
after converting to VGG and?
after converting to TensorRT?
Thx~


Api: reminder cron

implement reminder cron, sent every 5 minutes at fixed minutes

Fix #397

missing part: the reminder content is not saying anything about at which time the meeting is, refer to this:

Bonjour ! :sourire_yeux_rieurs: Retrouvez {FullName.Invitant} pour la conversation vidéo prévue à xxhxx, le XX/XX sur ce lien: {https://InstantVisio.com} :réveil:

Good job man! Some conflicts to be solved

I've pushed some more improvement. The Date is formatted but not based on the user local and timezone, this will be done in another PR using Luxon


WIP: Update generated reference API docs

Update generated reference API docs with tag 1.19.0-rc.4
/hold
cc: @kbhawkey @tengqm @jimangel

@kbhawkey 👋 , do you know why the generated folder static/docs/reference/generated/kubernetes-api/v/*  does not have v1.19 but has only v in the path? Is this because I used rc tag while generating the references?

@kbhawkey 👋 , do you know why the generated folder static/docs/reference/generated/kubernetes-api/v/*  does not have v1.19 but has only v in the path? Is this because I used rc tag while generating the references?

Yes, I'll look. Did you run the script without changing the configuration (reference.yml)?

Yes, I'll look. Did you run the script without changing the configuration (reference.yml)?

I did. I just passed the version with the tag via the command line.
python3 update-imported-docs.py reference.yml 1.19.0-rc.4 is the command I used.

Yes, I'll look. Did you run the script without changing the configuration (reference.yml)?

I did. I just passed the version with the tag via the command line.
python3 update-imported-docs.py reference.yml 1.19.0-rc.4 is the command I used.

OK. I just ran the script with:
python3 update-imported-docs.py reference.yml 1.19.0-rc.4
and the directory was created.
Untracked files:
  (use "git add <file>..." to include in what will be committed)

	../content/en/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_certs_generate-csr.md
	../content/en/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade_node_phase_preflight.md
	../static/docs/reference/generated/kubernetes-api/v1.19/

Did you see any error/warning messages in the output when the copyapi target was run?

Did you see any error/warning messages in the output when the copyapi target was run?
I guess the APIDST variable is not set correctly.

I am seeing the following error in my console i/o. Do I need to set APIDST somewhere?
cd /tmp/tmp_3999bm6/src/k8s.io/kubernetes && git show "v1.19.0-rc.4:api/openapi-spec/swagger.json" > /private/tmp/tmp_3999bm6/src/github.com/kubernetes-sigs/reference-docs/gen-apidocs/config/v/swagger.json
sudo rm -f main
Password:
sudo rm -rf /tmp/tmp_3999bm6/src/github.com/kubernetes-sigs/reference-docs/gen-kubectldocs/generators/includes
sudo rm -rf /tmp/tmp_3999bm6/src/github.com/kubernetes-sigs/reference-docs/gen-kubectldocs/generators/build
sudo rm -rf /tmp/tmp_3999bm6/src/github.com/kubernetes-sigs/reference-docs/gen-kubectldocs/generators/manifest.json
cut: illegal option -- -
usage: cut -b list [-n] [file ...]
       cut -c list [file ...]
       cut -f list [-s] [-d delim] [file ...]
go run gen-kubectldocs/main.go --kubernetes-version v
Failed to read yaml file gen-kubectldocs/generators/v/toc.yaml: open gen-kubectldocs/generators/v/toc.yaml: no such file or directorypanic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x18 pc=0x23f05e9]

goroutine 1 [running]:
github.com/kubernetes-sigs/reference-docs/gen-kubectldocs/generators.WriteCommandFiles.func1(0xc000132c90, 0x2c, 0x0, 0x0, 0x2a45720, 0xc000a8eff0, 0x2c, 0x1)
	/tmp/tmp_3999bm6/src/github.com/kubernetes-sigs/reference-docs/gen-kubectldocs/generators/gen.go:186 +0x29
path/filepath.Walk(0xc000132c90, 0x2c, 0x2872bf0, 0xc000132c90, 0x2c)
	/usr/local/Cellar/go/1.14.5/libexec/src/path/filepath/path.go:404 +0x6a
github.com/kubernetes-sigs/reference-docs/gen-kubectldocs/generators.WriteCommandFiles(0xc000a8b980, 0x0, 0x0, 0x0, 0xc000a8e2d0, 0x1, 0x1)
	/tmp/tmp_3999bm6/src/github.com/kubernetes-sigs/reference-docs/gen-kubectldocs/generators/gen.go:185 +0x2c7
github.com/kubernetes-sigs/reference-docs/gen-kubectldocs/generators.GenerateFiles()
	/tmp/tmp_3999bm6/src/github.com/kubernetes-sigs/reference-docs/gen-kubectldocs/generators/gen.go:76 +0x3c5
main.main()
	/tmp/tmp_3999bm6/src/github.com/kubernetes-sigs/reference-docs/gen-kubectldocs/main.go:26 +0x75
exit status 2
make: *** [cli] Error 1

Looks like you do not have the cut program

Looks like you do not have the cut program or have cut but the flags are different than the ones working for me (Ubuntu).

I am using macOS Catalina.

export K8S_RELEASE=1.19.0-rc.4
echo $K8S_RELEASE | cut --characters 1-4

cut: illegal option -- -
usage: cut -b list [-n] [file ...]
       cut -c list [file ...]
       cut -f list [-s] [-d delim] [file ...]

is what I get

Does this work for you: echo $K8S_RELEASE | cut -c 1-4

echo $K8S_RELEASE | cut -c 1-4

That works.
$ echo $K8S_RELEASE | cut -c 1-4
1.19

Good. Updated the command, https://github.com/kubernetes-sigs/reference-docs/pull/170

Thank you for the quick response and help, @kbhawkey :)

@kbhawkey 👋  Thanks for all your help :) Folder structure and files look good to me now. PTAL when you are available for a quick review :)

👀

Hi @savitharaghunathan .
I looked at the pages.
Some of the non-generated kubeadm pages are not rendering correctly -- the pages (some or all) seem to be missing some front matter. Also, the main pages could use the what's next heading shortcode.
There is an  _index page in the generated directory; this directory is
showing as the first link on this page, https://deploy-preview-23018--kubernetes-io-vnext-staging.netlify.app/docs/reference/setup-tools/kubeadm/. This page previously used the toc_hide parameter.
So, these things should be fixed on the master branch. I can do this now?
Some Page previews:
https://deploy-preview-23018--kubernetes-io-vnext-staging.netlify.app/docs/reference/generated/kubernetes-api/v1.19/
https://deploy-preview-23018--kubernetes-io-vnext-staging.netlify.app/docs/reference/command-line-tools-reference/cloud-controller-manager/
https://deploy-preview-23018--kubernetes-io-vnext-staging.netlify.app/docs/reference/command-line-tools-reference/kube-apiserver/
https://deploy-preview-23018--kubernetes-io-vnext-staging.netlify.app/docs/reference/command-line-tools-reference/kube-proxy/
https://deploy-preview-23018--kubernetes-io-vnext-staging.netlify.app/docs/reference/generated/kubectl/kubectl-commands
https://deploy-preview-23018--kubernetes-io-vnext-staging.netlify.app/docs/reference/kubectl/kubectl/
# verified links work from this page

https://deploy-preview-23018--kubernetes-io-vnext-staging.netlify.app/docs/reference/generated/kubectl/kubectl-commands#get
https://deploy-preview-23018--kubernetes-io-vnext-staging.netlify.app/docs/reference/setup-tools/kubeadm/kubeadm-config/
https://deploy-preview-23018--kubernetes-io-vnext-staging.netlify.app/docs/reference/setup-tools/kubeadm/kubeadm-upgrade-phase/
https://deploy-preview-23018--kubernetes-io-vnext-staging.netlify.app/docs/reference/setup-tools/kubeadm/

Hi @kbhawkey 👋 So these changes needs to go into master first? Then I need to sync them to dev-1.19 and update my local branch for this PR and re-generate the files?

Hi @savitharaghunathan .
I looked at the pages.
Some of the non-generated kubeadm pages are not rendering correctly -- the pages (some or all) seem to be missing some front matter. Also, the main pages could use the what's next heading shortcode.
There is an _index page in the generated directory; this directory is
showing as the first link on this page, https://deploy-preview-23018--kubernetes-io-vnext-staging.netlify.app/docs/reference/setup-tools/kubeadm/. This page previously used the toc_hide parameter.
So, these things should be fixed on the master branch. I can do this now?
Yes, please. Can I help in any way?

See #23048 .

Hi @kbhawkey 👋 So these changes needs to go into master first? Then I need to sync them to dev-1.19 and update my local branch for this PR and re-generate the files?

Yes, the changes should go into master and then sync the changes to the dev-1.19 branch. No, the files are not generated.
I noticed that some of the kubeadm pages display generated content in the tabs component. The font sizing seems odd, though, probably related to styling of tab.
Also, I think there is a missing newline after the Options section and before the Options inherited from parents command heading. This can be fixed easily before the release.

See #23048 .

Hi @kbhawkey 👋 So these changes needs to go into master first? Then I need to sync them to dev-1.19 and update my local branch for this PR and re-generate the files?

Yes, the changes should go into master and then sync the changes to the dev-1.19 branch. No, the files are not generated.

Okay. Thank you for the clarification :)

I noticed that some of the kubeadm pages display generated content in the tabs component. The font sizing seems odd, though, probably related to styling of tab.
Also, I think there is a missing newline after the Options section and before the Options inherited from parents command heading. This can be fixed easily before the release.

I will make a note to fix this before the release.

Hi @kbhawkey 👋 , I synced the changes from the primary branch into dev-1.19 and updated this PR. PTAL. Thanks

:eyes:

Hi @savitharaghunathan .The changes look good.
Note: The table of contents (right hand list of links) does not display for most of the component tool pages.
This is not a problem with the generated pages. I have logged an issue and will follow-up on it.
Thanks! :tada:

@kbhawkey Thanks for taking another look at the PR :) I think this is ready for review now. If you think its all good, can you review it, please?
/hold cancel

Hi @savitharaghunathan .
Sure, do you want these changes to merge now and then update if another release candidate is created?
/lgtm

Hi @savitharaghunathan .
Sure, do you want these changes to merge now and then update if another release candidate is created?
@kbhawkey That sounds good to me. Can you approve? Thanks!

/approve


Ingestion of UK radar data

What problem does your feature request solve?

Describe the solution you'd like

Describe alternatives you've considered

A good start would be to plot a spatial map of radar, to compare against models.

A few things are needed for this basic use case. The data can be downloaded as a different "model", but we will have to do something special for determining how many files to grab, as we can't just plot the entire series.

Actually we can just use the validity time, so this might work already.

We need to be careful to ensure that the QA/QC is the same in the evaluation/quicklook route as the METplus route used for verification. There is a need to allow for radar quicklook plots and user defined accumulation periods justifying including radar data similar to model data via an evaluation route as well rather than just via a verification (METplus) route.

[ ] add detail on how current Uk radar data are ingested for prep for MEtplus ingestion
[ ] add detail how Wescon campaign etc currently read in radar data and which processing and assumptions are applied i.e. how many missed 5 min data slots are allowed per hourly accumulation?
[ ] Add detail on GPM ingestion


Upgrade github.com/klauspost/cpuid

Homebrew provides server-go on arm64. CI is showing runtime panics in cpuid. Current version is 2.0.5. Panics might be fixed by upgrading module to a current version and making a release.

Thanks!


Where can I get the dataset

Hi ,where can I get the 3d_llm data, and what 's the dimension of the scene, thank you !

I am not quite sure whether you can still download the v1 data from https://github.com/UMass-Foundation-Model/3D-LLM. You can try processing the data they released. (v2 or v3 maybe)


[OIDC] Replace (most) user-facing references to "OIDC" with "Trusted publish{ers,ing}"

This will more accurately reflect the terminology used in the PyPI docs and other public-facing resources.
@webknjaz pointed out that the email templates, specifically, need updating.

@hugovk pointed out a few other places that need updating:

https://pypi.org/help/#openid-connect
https://pypi.org/manage/account/publishing/
https://pypi.org/manage/project/my-project-name/settings/publishing/


[FLINK-9409] [formats] Remove flink-avro and flink-json from /opt

What is the purpose of the change
Both flink-json and flink-avro were added to the /opt directory in order to use them as jars for the SQL Client. However, they are not required anymore because we added dedicated SQL jars later that are distributed through Maven central (see FLINK-8831).
mvn clean install -pl flink-dist -am is working again
Brief change log
Remove all formats from /opt
Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): yes
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: no
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? no
If yes, how is the feature documented? not applicable

@NicoK can you verify the change?

Thank you @NicoK. I will merge this...


Sending RING Indicate to Connected Headsets

Arkq,
We're using bluealsa to send audio to a connected headset with gstreamer but now need to be able to send a ring indicate from our application. I cannot find this functionality in your code but I do see the ability to send a custom AT command. As you are probably aware, to do this we need to send /r/nRING/r/n to the rfcomm file descriptor for each connected headset.
Is this something you plan to implement in bluealsa? If so, do you have an expected timeline to do so? If not, will you provide some guidelines on how to send a ring indicate command to any connected headsets from a separate application via bluealsa?
Thanks for your help.

Hi,

We [...] need to be able to send a ring indicate from our application. Is this something you plan to implement in bluealsa?

Yes, I do have.

If so, do you have an expected timeline to do so?

I'm afraid it is rather a distant future. Currently, I want to close/fix issues related to audio transport within HFP/HSP profiles.

If not, will you provide some guidelines on how to send a ring indicate command to any connected headsets from a separate application via bluealsa?

My general idea is to expose RFCOMM via bluealsa itself as a "proxy" socket. By doing so, bluealsa will be able to filter audio related commands and forward unrelated ones. In this way, it will be possible to establish Service Level Connection, and allow other application to communicate with BT headset without the requirement of implementing RFCOMM "stack". But it is just an idea. I don't have any prof-of-concept implementation.

Hey,
Thanks for the quick response. We'd really like to work through this. It's a requirement for our product.
I have a few questions.
By "proxy" socket, I presume you mean that an application would get a file descriptor for a device from bluealsa and the application would then "write" to that file descriptor with an api call to bluealsa, which would write to the actual file descriptor. Is that kind of what you are thinking? I'm wondering if it might look very similar to how bluealsa now registers a profile with bluez and gets a new connection callback with a file descriptor when a device is added. Could an application register for new connections of specific profiles with bluealsa and get callbacks with proxy file descriptors when those devices are added? We couldn't write directly with those descriptors but would make a call to bluealsa to write for us?
How would the application communicate with bluealsa? Would there be a network socket or would the application and bluealsa communicate over dbus or some other way?
Again, thanks for your help.

By "proxy" socket, I presume you mean that an application would get a file descriptor for a device from bluealsa and the application would then "write" to that file descriptor with an api call to bluealsa, which would write to the actual file descriptor. Is that kind of what you are thinking?

Yes, generally, that is my idea. I don't know though, if it is a right way to implement such a feature. A lot of my ideas were shattered when they have faced reality :) If you've got some thoughts, I'd be glad to hear them.

How would the application communicate with bluealsa? Would there be a network socket or would the application and bluealsa communicate over dbus or some other way?

Currently, there is a piece of code in the src/shared in files prefixed with ctl-, which is responsible for communication with bluealsa via controller socket.  When you've asked if this socket should be exposed in a similar way, the transport socket is passed from BlueZ to BlueALSA, it has struck me, that PCM FIFO can also be exported in the same fashion - it will simplify communication a little bit. I'm talking about passing file descriptor via socket.

Arkq,
Thanks again for your response. I'm wondering if you would be willing to help us by getting ring indicate working quickly. Is there a way I could contact you off-line to discuss your availability and options?
Thanks.

Hi,

I'm wondering if you would be willing to help us by getting ring indicate working quickly.

:) I'm afraid it is not possible. I'm rather busy right now (that's why the pace with this project has slowed down a little bit). Furthermore, I do not like to make things "quickly" in the pro publico bono open source project - simply it's a waste of time in the long term perspective. Like I said before, I do have plans for RFCOMM communication, but not right now. There are more important architectural changes to be made (e.g. #48 ), and RFCOMM will only blur the image and add another thing to maintain during changes. Of course if you provide some PR with RFCOMM forwarding, I will review it and if it is solid enough I will merge it (maybe not right away, but eventually). Sorry.

Is there a way I could contact you off-line.

Yes, it is: #bluealsa @freenode. If I'm not there, you need to email me (email is available in the git tree), because I'm not logged all the time :). I'm living in the UTC+1 time zone, so please keep that in mind :)
PS.
The changes I was talking about in my previous post (file descriptor sharing simplification) are already in the master.

I'm closing this issue, since it has been resolved in the #102.


Impossible to execute new withdrawals when an 'UNCONFIRMED' one exist

Even when the funds are present, if an withdrawal is pending confirmation (shown as UNCONFIRMED in Transaction History), any subsequently withdrawals will fail with an "Insufficient funds on the source address" error.

Tex has been updated see 67eca67ecc0d4d40b9f2e924b9f933079833df03


Add a loading animation

While the select data is being loaded, run a loading animation on the select

I've added an isLoading prop which toggles a loading animation that can also be overwritten using the loading slot.
I've also introduced 2 new CSS variables for the spinner.
Published under v0.6.1 🎈

https://vue3-select-component.vercel.app/props.html#isloading
https://vue3-select-component.vercel.app/slots.html#loading
https://vue3-select-component.vercel.app/styling.html


Support for Debian Bookworm

Could you also publish an image with Debian Bookworm? It fixes issues with timezones.

Thanks @nikolaik


Support for iframes?

Hello, is there a way how to setup hopscotch that will support iframes within iframes?
I have a page with multiple iframes and each iframe sometimes contains another iframe. (I know that this is not popular implementation of website app but it's a large project that I cannot rewrite right now). I want to write hopscotch tutorial, but I don't know how to make it work. Is it possible right now? Thanks

Yeah, I think the way you'd have to go about this is have each iframe own its particular part of the tour. So, if the iframe had steps 2 and 3 and the main page had steps 1, 4, and 5...

Step 1 would be a 1-step tour with an onEnd callback that tells the inner iframe to start its tour.
Steps 2 and 3 are their own tour (add a dummy step for step 1 that points to nothing and turn off the feature that changes step number for missing steps), which has an onEnd callback that calls the parent to start a third tour.
Steps 4 and 5 is its own tour (w/ dummy steps for 1-3).
Caveats about cross-domain communication apply (they're not allowed).

Perhaps a lot of this messiness could be wrapped away in a plugin (when we have plugins) that handles communication across iframes for you. So, not core functionality (this seems like it would only apply to particular use cases), but let's add this as a plugin candidate.

I did it this way and it worked. But it's hard to maintain. You need to synchronize step configuration in each frame. So plugin would be helpful :+1:

It would be great to have this function and it is hard to implement by yourself:
I have a case when I need to use the multiple iframe during the tour.
And it can be easy resolve if hopscotch support something like container field which I can easily use in my rendering jobs
First step in one container the second in another one.
What do you think for?


2 bulk_rnaseq datasets on Zenodo are missing

Hello,
The following bulk RNA datasets are missing from Zenodo:

Reyfman2020_alvmac.rds
Reyfman2020_pneumo.rds

The 2 rds objects in the [bulk_rnaseq.tar.gz] folder contain DE result tables, not the data object.

For this dataset the DESeq2 results were directly used.


Installing Firmware

The app try to install firmware in nandsystem instead of nand/system

Working on it!
For now a workaround will be to manually extract the contents of the Firmware zip file to C:\Users\<your username>\AppData\Roaming\yuzu\nand\system\Contents\registered folder.
If the launcher downloaded the Firmware, it can be found in C:\Users\<your username>\AppData\Local\yuzu\ folder.

This issue has been fixed in version 2.0.1
Any older version of the launcher will auto update itself when run with internet access.

There is a new error ^^'


Fix parallel data processing bug

fixing it on my side, thanks!

@thomwolf feel free to approve so I can merge it :)


Confusing/conflicting payment threshold announcements

Summary
While watching the debug output on the new Bee client version, I noticed the following logs as clients are connected and negotiated.
time="2021-02-08T17:02:05-05:00" level=trace msg="sending payment threshold announcement to peer ffb4bebe115e72fca4365cfce75e27d074db8f74085ca8c50a758c812fc08877 of<PHONE_NUMBER>0000"
time="2021-02-08T17:02:06-05:00" level=trace msg="received payment threshold announcement from peer ffb4bebe115e72fca4365cfce75e27d074db8f74085ca8c50a758c812fc08877 of [9 24 78 114 160 0]"
How does the outbound amount of<PHONE_NUMBER>0000 become [9 24 78 114 160 0] on the incoming side?
Steps to reproduce
Just watch the debug output from a new version bee client as connections are established and negotiated.
Expected behavior
I would expect the outbound and inbound threshold announcements to include humanly readable/understandable numbers.
Actual behavior
See above.
Version: 0.4.3-67ff6fb0

Inspiration: Convert the<PHONE_NUMBER>0000 to hex and you get 918 4E72 A000 which is 9 24 78 114 160 0.  Seems there's a big number formatting issue on the received payment threshold announcement.

Fixed by #1219


Division by 0 in GetDefaultCellTableCellWidths

Thank you for reporting an issue or suggesting an enhancement. We appreciate your feedback - to help the team to understand your needs, please complete the below template to ensure we have the necessary details to assist you. Thanks!
Category
[ x] Bug
[ ] Enhancement
Problem Area
[x] Page Transformation: Error during the setup/use of the Page Transformation UI solution (did you check our troubleshooting guide?)
[ ] Page Transformation: Error during the use of page transformation from PnP PowerShell
[ ] Page Transformation: Error during the use of page transformation from .Net
[ ] Page Transformation: Page is not looking correct after transformation
[ ] Modernization Scanner: something went wrong...
Expected or Desired Behavior
Hi, I'm getting a divide by 0 error within GetDefaultTableCellWidths:

going up the stack, when the transform method is called with the text in the attached file as the text parameter , it ends up calling  GetDefaultCellTableCellWidths with a 0 in the columns parameter
error.txt

Fixed, there was a bug when a table had a TR but no TD or TH inside...

@russgove : closing, fix was just commited


Proxy launched with --rewrite-inspect leaks netns fds

Two netns fds are lost per docker inspect - see #2532.

Turns out this is fixed in 1.6.2 and 1.7.0:
9b32bc2ab385481d8aa8c124ebf978012b87b483 #2511


feat: support mobile history back button

Description
Resolves #337
I agree with @janmichek that this task ended up being quite a challenge.  I managed to more or less get the expected result but it isn't perfect.
Demo
https://github.com/aeternity/aescan/assets/46789227/17944bf9-40a7-446d-9076-308f72a229fe
Checklist:

[x] I have read and followed the Contributing Guide
[x] My change does not require a change to the documentation.

@lukeromanowicz The navigation is open when going back to the previous page. Shouldn't it be close so that the user doesn't have to scroll down?

This is a good question. IMO if we consider the menu to be vital part of the navigation that should be supporting navigation through history button that I would say yes - it should show up when using the history buttons. Otherwise it would be incosistent

https://github.com/aeternity/aescan/assets/15363559/7de618ac-df27-4f52-ac16-119f2530ccb3
I think the menu should not open when going back. It should only close when going back.
Even tho it's not very logical, as a user I don't expect opening menu again when navigating back

@CharisSiarampalis @janmichek new version was rolled out and I think it's now working accordingly to the expectations you stated. Let me know if it's good

Bigup! 🎖 nice solution, readable and not that much code!
I only found one missing case:
1. go to dashboard

2. open navigation

3. click browser back

4. you will be redirected to previous page (navigation is not just closed)

Can you somehow imitate and pass fake history event when the navigation is open for the first time?

Yes, that's the only idea I got so far

I proposed a new version that adds "#navigation-open" hash if the page was visited for the first time to get rid of scenario that Jan mentioned. The drawback is that in this very specific scenario:

open new tab and visit aescan
open menu
click any of the links
click back button twice

to go forward you will also need to press forward button twice, since the hash stays in the history. Router history does not support detecting how much history is available ahead of the user and implementing this behavior would require at least a couple of additional hours of work and testing. I think the currently proposed version is the best balance of user experience to development effort.

I proposed a new version that adds "#navigation-open" hash if the page was visited for the first time to get rid of scenario that Jan mentioned. The drawback is that in this very specific scenario:
* open new tab and visit aescan

* open menu

* click any of the links

* click back button twice

to go forward you will also need to press forward button twice, since the hash stays in the history. Router history does not support detecting how much history is available ahead of the user and implementing this behavior would require at least a couple of additional hours of work and testing. I'm not even sure if it's possible to implement 100% reliably. I think the currently proposed version is the best balance of user experience to development effort.

Ok, thanks for the new solution. I would say the previous one was a one star better than this one .) What you think?

@janmichek Personally, I think the latest approach is more consistent and better for the user than the previous one. It reduces big inconsistency in very particular scenario to very small issue (the need to press the button twice and only in very very specific scenario that may not happen ever to anyone)

Build stopped working. Let's continue in here https://github.com/aeternity/aescan/pull/828


Added a Prime Number Checker implemented in Rust

Input a number and return a list of all the prime numbers upto that number

Sorry, we are only accepting implementations in 5 languages mentioned in the Contributing Guidelines: Python,C,C++,Java, JS. You can search for other Rust repos.🙂

My bad. Thank you for the update.


SkinChanger not working

Seems to have a weird issue where the skins won't apply on the client side but it displays the name. It worked when I first joined the game and then it doesn't work, skins do not appear on weapons/knives.

Temporary fix: disable skin for cz75 and don't use karambit as your knife, then restart your game. This doesn't happen to everyone for some reason.


Poor Contrast for Warning Text in Documentation

Documentation is

[ ] Missing
[ ] Outdated
[X] Confusing
[ ] Not sure?

Explain in Detail

The yellow-on-yellow for the CSS variable --vp-custom-block-warning-text is, in my opinion, too light as compared to its background. The readability is poor. One must squint and stare to read the text.
Your Suggestion for Changes
I would suggest increasing the contrast here. One option would be making it #c59507, which is what I modified it to in the devtools to produce the following screenshot:

Reproduction
https://vitejs.dev/guide/ssr.html
Steps to reproduce
Documentation site only, view page https://vitejs.dev/guide/ssr.html

Nice catch, made two online contrast check

https://coolors.co/contrast-checker/eab308-fefbf2
https://contrastchecker.com/?c=EAB308&b=FEFBF2
The score is poor indeed. 😬

Nice! Thanks for doing that check.

Fixed in https://main.vitejs.dev/guide/ssr.html, we'll deploy the docs to vitejs.dev once we release 4.2 stable

Amazing! I'm curious, where does the code for color definition live? I searched around for where to change the color but could not find it. Thanks!


Tabs

We need a summary2 implementation for Tabs because Tabs give important information about how form components should be structured in a summary.
Acceptance criterias:

[x] Render a summary for tabs when rendered through Summary2
[x] The summary should handle overwriting properties like "compact" and hidden through the Summary2 component
[x] The summary should display validation-messages for the referenced component
[x] The summary should be implemented according to design for both mobile and desktop

design

[x] The summary should be configured in the component-library document the functionality of the component
[ ] The summary should be tested with integration tests using the component-library app

Test OK


Release Google.Cloud.AppEngine.V1 version 2.3.0

Changes in this release:
New features

Change netstandard2.1 target to netstandard2.0 (commit 82bea85)

Created release for Google.Cloud.AppEngine.V1-2.3.0


series do not contain fields

Describe the issue here.
Relevant URLs

Provide relevant URLs

What products and version are you using?

v1.7

@Normay22 A series definition does include the field key, but not the field value. When stored in the storage engine, you essentially have a series file defined by a series key. The series key is the measurement, tag set, and field key. For example:
Example series key
mem, host=host1, user=user1, used_percent

The series file contains the timestamps and field values for that specific series:
Example series file
00000000001 50.0
00000000002 51.3
00000000003 49.2
00000000004 48.1

Jacob Marble, one of InfluxData's storage engineers, provides an in-depth walkthrough of the TSM storage engine here: https://www.youtube.com/watch?v=8dOZGnSwKmo&ab_channel=InfluxData


Add UI for Marketplace

Simple UI to

list nfts
place an order
accept an order
pay for an accepted order
list my placed orders
list orders for my nfts

contract code at https://github.com/friedger/clarity-marketplace

Market place has been added at /openriff


atom.packages.loadPackage name resolution

Prerequisites

[X] Put an X between the brackets on this line if you have done all of the following:

Reproduced the problem in Safe Mode: https://flight-manual.atom.io/hacking-atom/sections/debugging/#using-safe-mode
Followed all applicable steps in the debugging guide: https://flight-manual.atom.io/hacking-atom/sections/debugging/
Checked the FAQs on the message board for common solutions: https://discuss.atom.io/c/faq
Checked that your issue isn't already filed: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aatom
Checked that there is not already an Atom package that provides the described functionality: https://atom.io/packages

Description
It seems the package name created from atom.packages.loadPackage has changed in Atom v1.24.0-beta3 from Atom v1.23.2.
Steps to Reproduce

Clone atom-minimap-linter
Checkout v2.1.3
Run the package specs

Expected behavior:
The name of a package loaded through atom.packages.loadPackage to match the name field of its package.json (linter-minimaptest in this case).
Actual behavior:
The name of a package loaded through atom.packages.loadPackage matches the folder name it was stored in (fake-linter in this case).
This is currently breaking the specs, but as atom.packages.loadPackage isn't a public function, this may just be something I need to work around there 😉.
Reproduces how often:
100% of the time.
Versions
Atom    : 1.24.0-beta3
Electron: 1.6.15
Chrome  : 56.0.2924.87
Node    : 7.4.0
apm  1.18.12
npm  3.10.10
node 6.9.5 x64
atom 1.24.0-beta3
python 3.6.4
git 2.16.1.windows.3
visual studio 2015

and
Atom    : 1.23.3
Electron: 1.6.15
Chrome  : 56.0.2924.87
Node    : 7.4.0
apm  1.18.12
npm  3.10.10
node 6.9.5 x64
atom 1.23.3
python 2.7.14
git 2.16.1.windows.4
visual studio 2015

Additional Information
atom.packages.loadPackage is NOT PUBLIC, so this may be an expected change... but in case this is a regression I wanted to get this filed.
This might be related to https://github.com/atom/atom/issues/15953.

The behavior here changed between v1.23.3 and v1.24.0-beta3, since #15953 was filed against 1.23.0-dev-02b133844, that helps narrow down the timeline of when this (might have) changed.

@maxbrunsfeld Was this an intentional change?

@Arcanemagus I don't recall making changes to that method recently. Can you tell what commit or PR broke it? Even though it's private, we might be open to merging a PR that restores the old behavior if we can get some insight into why it changed.

@maxbrunsfeld It looks like this was introduced as part of https://github.com/atom/atom/pull/16199.
Previously the package name was determined like this:
https://github.com/atom/atom/blob/fdf0478a775f76e19b44d2f6383dcb7d3e4c6f83/src/package.coffee#L44
Note how metadata.name takes precedence if it exists.
Currently though it is determined like this:
https://github.com/atom/atom/blob/ce83c02ba208858e92ab63e2ef5284aa0c1218d8/src/package.js#L45-L48
This changed the order to prefer params.name before metadata.name. (params.name is determined from the package directory earlier.)
Since the name in the package metadata should take precedence I can send in a PR if you think that should be changed back. If not, I've already worked around it in the spec that was depending on this behavior so I'm fine either way 😉.

Oh great job tracking that down! A PR fixing it would be much appreciated!


[realm-singleton-manager-example] Why just not use @Inject RealmManager?!

Currently, you're doing like this:
public class MainActivity extends AppCompatActivity {
    RealmManager realmManager;
...
@SuppressLint("NewAPI")
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    realmManager = Injector.get().realmManager();
...

Why just not using @Inject RealmManager realmManager;?

Question of preference. I prefer provision methods over field injection.
They both work.


MAINTAINERS: Introduce IEEE 802.15.4 native stack maintenance area and propose self as collaborator

During ZDS'23 @carlescufi approached me to suggest that I add myself as collaborator to the IEEE 802.15.4 native stack maintenance area. (Thanks for that @carlescufi !)
Such a specialized maintenance area for the IEEE 802.15.4 native stack distinguished from IEEE 802.15.4 drivers, OpenThread L2 and generic networking does not yet exist, though. Therefore this change set proposes to introduce it just like the existing OpenThread L2 maintenance area.
Note: Collaboration in the wider networking area would exceed my personal domain of knowledge and interest as well as my time budget. The new maintenance area would allow me to collaborate on a more specialized subset of resources instead.
In a second commit a missing header file is added to the IEEE 802.15.4 driver area of maintenance.

@rlubos fyi - do you agree this makes sense?

Thanks @fgrandel!


Error: Config merge conflict for field formatNumber

If the Relative Line Number plugin is active then MAKE.md doesn't Work.
When Obsidian is restarted it gives the following Error:
An error occurred while loading Obsidian. Error: Config merge conflict for field formatNumber
Relative Lines Number Version: 2.0.1
MAKE.md Version : 0.7.18

Issue resolved by simply toggling Line Numbers in MAKE.md


Error 4 when using WPFLocalizationExtension inside a style

Hi all,
I have a similar problem as the one described in this thread https://github.com/SeriousM/WPFLocalizationExtension/issues/55
I have uploaded an example project here https://github.com/steA/LocExtensionTest
Basically I am getting the following error:
System.Windows.Data Error: 4 : Cannot find source for binding with reference 'RelativeSource FindAncestor, AncestorType='System.Windows.FrameworkElement', AncestorLevel='1''. BindingExpression:Path=Parent; DataItem=null; target element is 'Label' (Name=''); target property is 'Parent' (type 'DependencyObject')
If I remove the Content="{lex:LocText UI_Search}" from the label inside the file LocExtensionView.xaml the error doesn't show up anymore.
Can you help me?

These errors are sometimes hard to find. I suggest to view this blog on how to debug such messages:
https://spin.atomicobject.com/2013/12/11/wpf-data-binding-debug/
Nevertheless, in your particular example, the problem is as follows (as far as I understood): The WPF Binding engine starts after app start and handles our internal Binding to the Parent property of a FrameworkElement. But the binding is evaluated before the visual tree is completed, which means that the resource you defined is still not applied to the target control. Later, when it is attached, the binding gets somehow healed and everything is OK again (I don't really know much about the internals of this process).
To solve the issue in your case: Feed the extension with information that stops it from continuous search of parents in the visual tree. Which means: use the lex:ResxLocalizationProvider.DefaultAssembly and lex:ResxLocalizationProvider.DefaultDictionary directly at the level of the resource.

Thank you!


✨ Naming: KeyCeremonyMediator

Is there an existing issue for this?

[X] I have searched the existing issues

Suggestion
As a developer, I want to understand when we are using a mediator architecture pattern versus an object that has mediator in the name.
Look into better options for naming.
Possible Implementation
No response
Anything else?
No response

Additionally would be good to split the opinionated parts (serialization / storage) apart. See decryptionmediation + tallyManager as example.


Add support for timed pause

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Currently the only way to prevent the battery from charging (e.g. because you have sufficient SoC and wish to maximise export) is to set the charge rate limit to 0W.
The same applies if you wish to prevent the battery discharging.
However the GivEnergy inverter will not actually limit charge/discharge to 0W, instead a seemingly arbitrary and variable limit will apply (see this closed issue).
It appears this is "wontfix" for GivEnergy as they have added a timed pause feature which covers this requirement.
givenergy-local does not yet support the timed pause functionality, so setting the rate limit to 0W and accepting the limit will really be c. 300W is necessary.
Describe the solution you'd like
A clear and concise description of what you want to happen.
Implementation of the timed pause feature via a service, in a similar way to the existing timed charge, discharge, export services.
An additional parameter instructs the inverter to choose a mode for timed pause:
Not Paused
Pause Charge
Pause Discharge
Pause Charge & Discharge
This will truly limit charge, discharge or both to 0W (tested manually using the inverter settings on givenergy.cloud).
I understand that this may not happen quickly as @cdpuk has a gen 1 inverter (which may not support this feature ?), but I'm happy to help test when the time comes 👍
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
See issue referenced above.
Additional context
Add any other context or screenshots about the feature request here.
To put a rough value on this, 300W x 8 hours of sunshine at 15p/kWh export over a year is £131.40.
Assuming you need to import less overnight as a result, at 7.5p, the cost can be offset by half, so £65.70 per annum, plus an unknown community cost of not sharing the energy during daylight hours including evening peak.
[assumes tariff is Intelligent Octopus Go with Outgoing Fixed]

Hi @andynash. With v2.0.0 now released, it should be relatively easy to add this in. Is your offer of testing still open? If so, I can have a go at adding this and create a beta release for review.
On the 4 modes listed, are these available via the GE app or web portal? If so, some screenshots would be handy to understand how best to match the functionality.

That's great news - yes I'd be happy to test this, thanks!
These settings do not appear to be available via the app, just givenergy.cloud, accessed via the cog icon "Remote Control" in the My Inverter section. Hopefully the following will help:

Ideal, thanks.
There are currently some stability issues reported with 2.x, but this looks relatively easy to add in. It would make sense for this to become a select entity presented in the same way as the GivEnergy portal. Could you send one of each of those commads and confirm what appears in the Remote Control History section of that page? If you check "Show Raw Values" I'm assuming they map on to values 0, 1, 2 and 3 (in that order matching the screenshot).

I've made a bit of a guess at the implementation, which is available as HACS beta release v2.1.0-beta1.
With no way to test this properly, please give this a try and feed back any issues here. Debug logs while the integration is loaded or reloaded will be useful.

Make that v2.1.0-beta2. Also note that I've only added a selection for the mode at this stage. If that works, I'll add in the time slot configuration.

Thanks, will try that 👍
However I've updated to v2.1.0-beta2, and despite restarting I don't see any new services or controls - it seems I should see a select?
In terms of your earlier question, I first changed the selector at givenergy.cloud through each pause option in order, and then back to Not Paused. This confirmed Not Paused = 0, Pause Charge = 1, Pause Discharge = 2, Pause Charge & Discharge =3. This had no effect on the operation of the battery (because start and end time were default, i.e. 00:00).
I then set start to 13:00 and end to 14:00 and set the selector to Pause Discharge to confirm it operated as expected which it did, and finally set it to Not Paused again.

Sounds good. Could I have some debug logs while the integration loads? Part of the change is to get it to recognise the additional capabilities of your inverter, which seems not to work yet.

Sorry for the delay, I've been super busy! I've just taken a look and seen this error which seems relevant?
2024-04-05 13:35:03.242 ERROR (MainThread) [homeassistant.components.select] Error while setting up givenergy_local platform for select
  File "/home/homeassistant/.homeassistant/custom_components/givenergy_local/select.py", line 45, in async_setup_entry

Following is the full debug during a reload of the integration:
2024-04-05 13:39:35.741 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:35.742 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:4/ReadInputRegistersResponse(slave_address=0x32 base_register=60)
2024-04-05 13:39:35.742 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:4/ReadInputRegistersResponse(slave_address=0x32 base_register=60)
2024-04-05 13:39:35.790 DEBUG (MainThread) [custom_components.givenergy_local] Scheduled next update for charge_slot_1 at 2024-04-05 23:59:00
2024-04-05 13:39:35.832 DEBUG (MainThread) [custom_components.givenergy_local] Scheduled next update for charge_slot_2 at 2024-04-06 00:01:00
2024-04-05 13:39:35.851 DEBUG (MainThread) [custom_components.givenergy_local] Scheduled next update for discharge_slot_1 at 2024-04-05 23:59:00
2024-04-05 13:39:39.174 DEBUG (MainThread) [custom_components.givenergy_local.coordinator] Shutting down
2024-04-05 13:39:39.175 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Disconnecting and cleaning up
2024-04-05 13:39:39.275 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] network_consumer reader at EOF, cannot continue, closing connection
2024-04-05 13:39:39.494 INFO (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Connection established to <IP_ADDRESS>:8899
2024-04-05 13:39:39.494 INFO (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Detectig plant
2024-04-05 13:39:39.511 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:4/ReadInputRegistersRequest(slave_address=0x32 base_register=0)
2024-04-05 13:39:39.750 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:39.751 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:4/ReadInputRegistersResponse(slave_address=0x32 base_register=0)
2024-04-05 13:39:39.751 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:4/ReadInputRegistersResponse(slave_address=0x32 base_register=0)
2024-04-05 13:39:39.761 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:4/ReadInputRegistersRequest(slave_address=0x32 base_register=180)
2024-04-05 13:39:39.990 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:39.990 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:4/ReadInputRegistersResponse(slave_address=0x32 base_register=180)
2024-04-05 13:39:39.990 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:4/ReadInputRegistersResponse(slave_address=0x32 base_register=180)
2024-04-05 13:39:40.012 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:3/ReadHoldingRegistersRequest(slave_address=0x32 base_register=0)
2024-04-05 13:39:40.259 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:40.260 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:3/ReadHoldingRegistersResponse(slave_address=0x32 base_register=0)
2024-04-05 13:39:40.260 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:3/ReadHoldingRegistersResponse(slave_address=0x32 base_register=0)
2024-04-05 13:39:40.266 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:3/ReadHoldingRegistersRequest(slave_address=0x32 base_register=60)
2024-04-05 13:39:40.500 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:40.501 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:3/ReadHoldingRegistersResponse(slave_address=0x32 base_register=60)
2024-04-05 13:39:40.502 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:3/ReadHoldingRegistersResponse(slave_address=0x32 base_register=60)
2024-04-05 13:39:40.517 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:3/ReadHoldingRegistersRequest(slave_address=0x32 base_register=120)
2024-04-05 13:39:40.751 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:40.751 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:3/ReadHoldingRegistersResponse(slave_address=0x32 base_register=120)
2024-04-05 13:39:40.752 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:3/ReadHoldingRegistersResponse(slave_address=0x32 base_register=120)
2024-04-05 13:39:40.768 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:4/ReadInputRegistersRequest(slave_address=0x32 base_register=120)
2024-04-05 13:39:41.001 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:41.002 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:4/ReadInputRegistersResponse(slave_address=0x32 base_register=120)
2024-04-05 13:39:41.002 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:4/ReadInputRegistersResponse(slave_address=0x32 base_register=120)
2024-04-05 13:39:41.020 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:4/ReadInputRegistersRequest(slave_address=0x32 base_register=60)
2024-04-05 13:39:41.250 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:41.250 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:4/ReadInputRegistersResponse(slave_address=0x32 base_register=60)
2024-04-05 13:39:41.251 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:4/ReadInputRegistersResponse(slave_address=0x32 base_register=60)
2024-04-05 13:39:41.270 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:4/ReadInputRegistersRequest(slave_address=0x33 base_register=60)
2024-04-05 13:39:41.500 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:41.501 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:4/ReadInputRegistersResponse(slave_address=0x33 base_register=60)
2024-04-05 13:39:41.501 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:4/ReadInputRegistersResponse(slave_address=0x33 base_register=60)
2024-04-05 13:39:41.501 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] First time encountering slave address 0x33
2024-04-05 13:39:41.522 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:4/ReadInputRegistersRequest(slave_address=0x34 base_register=60)
2024-04-05 13:39:41.751 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:41.752 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:4/ReadInputRegistersResponse(slave_address=0x34 base_register=60)
2024-04-05 13:39:41.752 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:4/ReadInputRegistersResponse(slave_address=0x34 base_register=60)
2024-04-05 13:39:41.752 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] First time encountering slave address 0x34
2024-04-05 13:39:41.773 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:4/ReadInputRegistersRequest(slave_address=0x35 base_register=60)
2024-04-05 13:39:42.015 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:42.016 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:4/ReadInputRegistersResponse(slave_address=0x35 base_register=60)
2024-04-05 13:39:42.016 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:4/ReadInputRegistersResponse(slave_address=0x35 base_register=60)
2024-04-05 13:39:42.016 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] First time encountering slave address 0x35
2024-04-05 13:39:42.023 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:4/ReadInputRegistersRequest(slave_address=0x36 base_register=60)
2024-04-05 13:39:42.250 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:42.250 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:4/ReadInputRegistersResponse(slave_address=0x36 base_register=60)
2024-04-05 13:39:42.251 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:4/ReadInputRegistersResponse(slave_address=0x36 base_register=60)
2024-04-05 13:39:42.251 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] First time encountering slave address 0x36
2024-04-05 13:39:42.253 INFO (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Batteries detected: 1
2024-04-05 13:39:42.274 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:3/ReadHoldingRegistersRequest(slave_address=0x32 base_register=300)
2024-04-05 13:39:42.520 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:42.521 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:3/ReadHoldingRegistersResponse(slave_address=0x32 base_register=300)
2024-04-05 13:39:42.521 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:3/ReadHoldingRegistersResponse(slave_address=0x32 base_register=300)
2024-04-05 13:39:42.522 INFO (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Detected additional holding register support (base_register=300)
2024-04-05 13:39:42.522 DEBUG (MainThread) [custom_components.givenergy_local.coordinator] Finished fetching Inverter data in 3.123 seconds (success: True)
2024-04-05 13:39:42.684 DEBUG (MainThread) [custom_components.givenergy_local] Scheduled next update for charge_slot_1 at 2024-04-05 23:59:00
2024-04-05 13:39:42.715 DEBUG (MainThread) [custom_components.givenergy_local] Scheduled next update for charge_slot_2 at 2024-04-06 00:01:00
2024-04-05 13:39:42.745 DEBUG (MainThread) [custom_components.givenergy_local] Scheduled next update for discharge_slot_1 at 2024-04-05 23:59:00
2024-04-05 13:39:43.355 ERROR (MainThread) [homeassistant.components.select] Error while setting up givenergy_local platform for select
  File "/home/homeassistant/.homeassistant/custom_components/givenergy_local/select.py", line 45, in async_setup_entry
2024-04-05 13:39:43.685 INFO (MainThread) [custom_components.givenergy_local.coordinator] Fetching data from <IP_ADDRESS> (attempt=1/3, full_refresh=True)
2024-04-05 13:39:43.727 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:6/WriteHoldingRegisterRequest(96 -> False/0x0000)
2024-04-05 13:39:43.860 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x5959000100260102..., buffer_len=44
2024-04-05 13:39:43.861 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:6/WriteHoldingRegisterResponse(96 -> 0/0x0000)
2024-04-05 13:39:43.861 INFO (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] 2:6/WriteHoldingRegisterResponse(96 -> 0/0x0000)
2024-04-05 13:39:43.861 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:6/WriteHoldingRegisterResponse(96 -> 0/0x0000)2024-04-05 13:39:43.948 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:4/ReadInputRegistersRequest(slave_address=0x32 base_register=0)
2024-04-05 13:39:44.180 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:44.180 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:4/ReadInputRegistersResponse(slave_address=0x32 base_register=0)
2024-04-05 13:39:44.180 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:4/ReadInputRegistersResponse(slave_address=0x32 base_register=0)
2024-04-05 13:39:44.199 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:4/ReadInputRegistersRequest(slave_address=0x32 base_register=180)
2024-04-05 13:39:44.439 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:44.440 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:4/ReadInputRegistersResponse(slave_address=0x32 base_register=180)
2024-04-05 13:39:44.440 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:4/ReadInputRegistersResponse(slave_address=0x32 base_register=180)
2024-04-05 13:39:44.450 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:3/ReadHoldingRegistersRequest(slave_address=0x32 base_register=0)
2024-04-05 13:39:44.696 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:44.696 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:3/ReadHoldingRegistersResponse(slave_address=0x32 base_register=0)
2024-04-05 13:39:44.697 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:3/ReadHoldingRegistersResponse(slave_address=0x32 base_register=0)
2024-04-05 13:39:44.700 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:3/ReadHoldingRegistersRequest(slave_address=0x32 base_register=60)
2024-04-05 13:39:44.941 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:44.941 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:3/ReadHoldingRegistersResponse(slave_address=0x32 base_register=60)
2024-04-05 13:39:44.942 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:3/ReadHoldingRegistersResponse(slave_address=0x32 base_register=60)
2024-04-05 13:39:44.951 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:3/ReadHoldingRegistersRequest(slave_address=0x32 base_register=120)
2024-04-05 13:39:45.202 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:45.203 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:3/ReadHoldingRegistersResponse(slave_address=0x32 base_register=120)
2024-04-05 13:39:45.203 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:3/ReadHoldingRegistersResponse(slave_address=0x32 base_register=120)
2024-04-05 13:39:45.228 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:4/ReadInputRegistersRequest(slave_address=0x32 base_register=120)
2024-04-05 13:39:45.447 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:45.448 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:4/ReadInputRegistersResponse(slave_address=0x32 base_register=120)
2024-04-05 13:39:45.448 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:4/ReadInputRegistersResponse(slave_address=0x32 base_register=120)
2024-04-05 13:39:45.468 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:4/ReadInputRegistersRequest(slave_address=0x32 base_register=60)
2024-04-05 13:39:45.702 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:45.702 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:4/ReadInputRegistersResponse(slave_address=0x32 base_register=60)
2024-04-05 13:39:45.703 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:4/ReadInputRegistersResponse(slave_address=0x32 base_register=60)
2024-04-05 13:39:45.718 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:4/ReadInputRegistersRequest(slave_address=0x33 base_register=60)
2024-04-05 13:39:45.970 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:45.971 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:4/ReadInputRegistersResponse(slave_address=0x33 base_register=60)
2024-04-05 13:39:45.971 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:4/ReadInputRegistersResponse(slave_address=0x33 base_register=60)
2024-04-05 13:39:45.973 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:4/ReadInputRegistersRequest(slave_address=0x34 base_register=60)
2024-04-05 13:39:46.221 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:46.221 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:4/ReadInputRegistersResponse(slave_address=0x34 base_register=60)
2024-04-05 13:39:46.222 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:4/ReadInputRegistersResponse(slave_address=0x34 base_register=60)
2024-04-05 13:39:46.225 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:4/ReadInputRegistersRequest(slave_address=0x35 base_register=60)
2024-04-05 13:39:46.450 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:46.451 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:4/ReadInputRegistersResponse(slave_address=0x35 base_register=60)
2024-04-05 13:39:46.451 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:4/ReadInputRegistersResponse(slave_address=0x35 base_register=60)
2024-04-05 13:39:46.476 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:4/ReadInputRegistersRequest(slave_address=0x36 base_register=60)
2024-04-05 13:39:46.700 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x59590001009e0102..., buffer_len=164
2024-04-05 13:39:46.700 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:4/ReadInputRegistersResponse(slave_address=0x36 base_register=60)
2024-04-05 13:39:46.700 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:4/ReadInputRegistersResponse(slave_address=0x36 base_register=60)
2024-04-05 13:39:46.712 DEBUG (MainThread) [custom_components.givenergy_local.coordinator] Finished fetching Inverter data in 3.027 seconds (success: True)
2024-04-05 13:39:46.718 DEBUG (MainThread) [custom_components.givenergy_local] Scheduled next update for charge_slot_1 at 2024-04-05 23:59:00
2024-04-05 13:39:46.739 DEBUG (MainThread) [custom_components.givenergy_local] Scheduled next update for charge_slot_2 at 2024-04-06 00:01:00
2024-04-05 13:39:46.757 DEBUG (MainThread) [custom_components.givenergy_local] Scheduled next update for discharge_slot_1 at 2024-04-05 23:59:00
2024-04-05 13:39:47.040 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:6/WriteHoldingRegisterRequest(59 -> False/0x0000)
2024-04-05 13:39:47.200 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x5959000100260102..., buffer_len=44
2024-04-05 13:39:47.201 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:6/WriteHoldingRegisterResponse(59 -> 0/0x0000)
2024-04-05 13:39:47.201 INFO (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] 2:6/WriteHoldingRegisterResponse(59 -> 0/0x0000)
2024-04-05 13:39:47.201 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:6/WriteHoldingRegisterResponse(59 -> 0/0x0000)2024-04-05 13:39:47.290 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:6/WriteHoldingRegisterRequest(27 -> 1/0x0001)
2024-04-05 13:39:47.503 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x5959000100260102..., buffer_len=44
2024-04-05 13:39:47.503 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:6/WriteHoldingRegisterResponse(27 -> 1/0x0001)
2024-04-05 13:39:47.503 INFO (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] 2:6/WriteHoldingRegisterResponse(27 -> 1/0x0001)
2024-04-05 13:39:47.503 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:6/WriteHoldingRegisterResponse(27 -> 1/0x0001)2024-04-05 13:39:47.541 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:6/WriteHoldingRegisterRequest(111 -> 0/0x0000)
2024-04-05 13:39:47.700 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x5959000100260102..., buffer_len=44
2024-04-05 13:39:47.701 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:6/WriteHoldingRegisterResponse(111 -> 0/0x0000)
2024-04-05 13:39:47.701 INFO (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] 2:6/WriteHoldingRegisterResponse(111 -> 0/0x0000)
2024-04-05 13:39:47.701 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:6/WriteHoldingRegisterResponse(111 -> 0/0x0000)
2024-04-05 13:39:47.792 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Request sent (attempt 1): 2:6/WriteHoldingRegisterRequest(112 -> 50/0x0032)
2024-04-05 13:39:47.997 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.framer] Found next frame: 0x5959000100260102..., buffer_len=44
2024-04-05 13:39:47.997 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] Processing 2:6/WriteHoldingRegisterResponse(112 -> 50/0x0032)
2024-04-05 13:39:47.997 INFO (MainThread) [custom_components.givenergy_local.givenergy_modbus.client.client] 2:6/WriteHoldingRegisterResponse(112 -> 50/0x0032)
2024-04-05 13:39:47.998 DEBUG (MainThread) [custom_components.givenergy_local.givenergy_modbus.model.plant] Handling 2:6/WriteHoldingRegisterResponse(112 -> 50/0x0032)

Hi @cdpuk, any thoughts on the debug log? Thanks!

I'm also excited for this feature, for the exact same reason as Andy.
I've spent the day methodically testing every permutation of setting to see if I could achieve it but no, the firmware doesn't allow a mode which prioritises export while minimising import and no battery charge.
I have a Gen 3 5kW inverter and would be willing to test if it'll be helpful

Hi @cdp, sorry to bug you, as I appreciate you giving up your own time to work on this, and that I myself took a while to get back to you with the logs 😁
Just wondering if you expect to be able to look at this soonish, as if not I need to do some work on automations, to work around  the battery charging when I don't want it to?

@cdpuk I've just upgraded HA to 2024.6.3, and encountered the other now closed issue that prevented startup of the integration, so have now switched from the beta2 to the latest main release.
I'd be happy to switch back to a beta if you are able to look at this again however, as it would be wonderful to get this capability working 👍

I've finally had a bit of time to take another look based on the feedback here. Thanks for the logs - that's exactly what was needed. The new v2.1.0-beta3 has been rebased on top of the latest mainline changes so will work across all recent HA versions. More testing & feedback would be very useful.

Thanks that's great news!
I've installed and now see the Battery Pause Mode select entity. I can change it, but in my testing that didn't appear to change the value on the inverter.
I don't yet see an entity for Pause Battery Start and End Times, should I?

Do you have some logs for the attempted cange of value?
The start/end times won't be there yet, but can be soon.

First attempt at time slot configuration can be found in v2.1.0-beta4. Unlike other time slots, these are implemented as time entities which allow values to be changed without having to call a service.

While you are doing this time based stuff can you also implement the ability to set the timed charge windows?
The use case here is when the energy provider has 'cheep times' which ours does from time to time, I want to be able to trigger the battery to charge outside of the usual times.
I spoke to GivEnergy support and they told me that the mobile app does this buy setting the timed charge values to charge now and then puts them back to your set values later.
I want to replicate this functionality in HA.
Thanks

Hi @SciFi-Bob, I'm fairly sure what you're asking for already exists as the "Enable timed charging" service. I currently use this with Octopus Intelligent Go to deal with cheap periods outside of the usual 2330-0530 slot. Perhaps I'm missing something - if so please raise a new topic to keep that discussion separate. I'm keen to focus on Timed Pause here, which is still awiting further testing from someone who can actually use it.

@cdpuk - apologies, I missed that !  would love to see how you have that setup end-2-end as it's also my target

This has been merged in with the v2.1.0 release. Testing has been limited, but exposure to a wider audience should help iron out any issues.


Duplicate ids on the visualization pages

Validation error report includes them. See https://validator.w3.org/nu/?doc=https%3A%2F%2Fderridas-margins.princeton.edu%2Freferences%2Fhistogram%2Fde-la-grammatologie%2F and https://validator.w3.org/nu/?useragent=Validator.nu%2FLV+http%3A%2F%2Fvalidator.w3.org%2Fservices&acceptlanguage=&doc=https%3A%2F%2Fderridas-margins.princeton.edu%2Freferences%2Fhistogram%2F

This seems to be caused by two inclusions of the same reference, since the id attribute is being generated by the reference id: https://github.com/Princeton-CDH/derrida-django/blob/190d175129f8845fc1eaf267bec5defe19b0d848/templates/components/visualization-marker.html#L6

Ran WAVE on both versions of the histogram visualization and it no longer reports duplicate ids.