Questions concerning the new validation components

Versions:

VueJs: 2.5.17
Vee-Validate: 2.1.1

Description:
The new validation components make sense to me and I'm currently converting my code to use them.
However I encountered some problems.

How to fill server side validation errors? This is what I've done before:

forEach(errors, (errs, key) => {
	const field = this.$validator.fields.find({ name: key, scope: this.$options.scope })

	if (field) {
		this.$validator.errors.add({
			id: field.id,
			field: key,
			msg: errs[0],
			scope: this.$options.scope
		})

		field.setFlags({
			invalid: true,
			valid: false,
			validated: true
		})
	}
})

I tried to use a ValidationObserver together with a ValidationProvider but got an error. Is that not possible and how should it be done?

<ValidationObserver ref="userData">
    <template slot-scope="{ invalid }">
        <ValidationProvider rules="required|alpha_num|min:3|max:16">
            <template slot-scope="{ errors }">
                <v-text-field
                    type="text"
                    name="username"
                    prepend-icon="person"
                    label="Nutzername"
                    color="primary"
                    v-model="username"
                    data-vv-as="Nutzername"
                    :error-messages="errors"
                ></v-text-field>
            </template>
        </ValidationProvider>

        <ValidationProvider rules="required|email">
            <template slot-scope="{ errors }">
                <v-text-field
                    type="email"
                    name="email"
                    prepend-icon="email"
                    label="E-Mail Adresse"
                    color="primary"
                    v-model="email"
                    data-vv-as="E-Mail Adresse"
                    :error-messages="errors"
                ></v-text-field>
            </template>
        </ValidationProvider>

        <ValidationProvider rules="required|min:8|max:72">
            <template slot-scope="{ errors }">
                <v-text-field
                    :type="showPassword ? 'text' : 'password'"
                    vid="password"
                    name="password"
                    prepend-icon="lock"
                    :append-icon="showPassword ? 'visibility_off' : 'visibility'"
                    label="Passwort"
                    color="primary"
                    v-model="password"
                    data-vv-as="Passwort"
                    :error-messages="errors"
                    @click:append="showPassword = !showPassword"
                ></v-text-field>
            </template>
        </ValidationProvider>

        <ValidationProvider rules="required|confirmed:password">
            <template slot-scope="{ errors }">
                <v-text-field
                    :type="showPasswordConfirmation ? 'text' : 'password'"
                    name="password_confirmation"
                    prepend-icon="lock"
                    :append-icon="showPasswordConfirmation ? 'visibility_off' : 'visibility'"
                    label="Passwort wiederholen"
                    class="mb-3"
                    color="primary"
                    v-model="password_confirmation"
                    data-vv-as="Passwort wiederholen"
                    :error-messages="errors"
                    @click:append="showPasswordConfirmation = !showPasswordConfirmation"
                ></v-text-field>
            </template>
        </ValidationProvider>

        <v-btn color="primary" @click="preRegister" :disabled="invalid">
            Weiter
        </v-btn>
    </template>
</ValidationObserver>

Since vue 2.5.x it is possible to use the scoped-slot feature on other things than template.
Would it be possible to do <ValidationProvider slot-scope="{ errors }"> to safe some lines?

How to fill server side validation errors?

Currently there is no API to do that, but there is nothing stopping you from:
 <ValidationProvider rules="required|confirmed:password" ref="password">
  <ValidationProvider>
[Node]        <ValidationObserver>
[Node]          <VStepperContent>
[Node]            <VStepper>
[Node]              <VCard>
[Node]                <Pages/register.vue> at pages/register.vue
[Node]                  <Nuxt>
[Node]                    <VContent>
[Node]                      <VApp>
[Node]                        <Default> at layouts/default.vue
[Node]                          <Root>
[Node] [18:56:55] ReferenceError: Event is not defined
[Node] at isEvent (/Users/pascal/code/web/node_modules/vee-validate/dist/vee-validate.js:5712:24)
[Node] at VueComponent.syncValue (/Users/pascal/code/web/node_modules/vee-validate/dist/vee-validate.js:7951:21)
[Node] at Proxy.onRenderUpdate (/Users/pascal/code/web/node_modules/vee-validate/dist/vee-validate.js:7767:12)
[Node] at Proxy.addListeners (/Users/pascal/code/web/node_modules/vee-validate/dist/vee-validate.js:7810:20)
[Node] at /Users/pascal/code/web/node_modules/vee-validate/dist/vee-validate.js:8065:22
[Node] at Array.forEach (<anonymous>)
[Node] at Proxy.render (/Users/pascal/code/web/node_modules/vee-validate/dist/vee-validate.js:8064:42)
[Node] at VueComponent.Vue._render (/Users/pascal/code/web/node_modules/vue/dist/vue.runtime.common.js:4542:22)
[Node] at renderComponentInner (/Users/pascal/code/web/node_modules/vue-server-renderer/build.js:7532:25)
[Node] at renderComponent (/Users/pascal/code/web/node_modules/vue-server-renderer/build.js:7502:5)
[Node] at RenderContext.renderNode (/Users/pascal/code/web/node_modules/vue-server-renderer/build.js:7418:5)
[Node] at RenderContext.next (/Users/pascal/code/web/node_modules/vue-server-renderer/build.js:2436:14)
[Node] at cachedWrite (/Users/pascal/code/web/node_modules/vue-server-renderer/build.js:2295:9)
[Node] at renderElement (/Users/pascal/code/web/node_modules/vue-server-renderer/build.js:7656:5)
[Node] at renderNode (/Users/pascal/code/web/node_modules/vue-server-renderer/build.js:7420:5)
[Node] at renderComponentInner (/Users/pascal/code/web/node_modules/vue-server-renderer/build.js:7538:3)

This is actually a bug, I will try to introduce a fix around tomorrow.

Okay, will try it out again when the release is out.

Okay, any ETA on when a fix will be released?

Also for inserting server side validation errors, I tried the solution you gave but it was not working.
Would be great if you could give another example and explain the structure of errorsArrayFromServer.
Another thing that changed with the new components is localization. I was doing this to give custom error messages for some fields:
VeeValidate.Validator.localize({
	de: Object.assign(deLocale, {
		custom: {
			password: {
				confirmed: 'Die eingegebenen Passwörter stimmen nicht überein.'
			}
		}
	})
})

However this does not seem to work anymore. I tried setting vid="password" on the validation provider but that did not help either. How should that be done?

I'm still waiting for #1698 to be confirmed to fix the issues mentioned in there, otherwise I can release it today/tomorrow. You can clone the repo and use the updated version now if you would like.

Also for inserting server-side validation errors, I tried the solution you gave but it was not working.

Sorry I didn't realize I gave you the wrong prop name, the messages prop is the one which holds the error messages. Here is an example:
<ValidationProvider rules="required" ref="name">

    <input v-model="value" type="text">
    {{ errors[0] }}

</ValidationProvider>

Then add your errors like this:
// place a message as the first item.
this.$refs.pro.messages.unshift('MY MESSAGE');

// ADD multiple messages as the last items
const messages = ['first', 'second', 'third'];
this.$refs.pro.messages.push(...messages);

Another thing that changed with the new components is localization ...

vid is only used for cross-field validation. Use the name prop,  I will add a note in the docs.

Nice, using the name property on the ValidationProvider works fine for localization.
Pushing to the messages array also works fine. I like that the process is much simpler than before (just pushing to the error now detects that the field is invalid without the need to find the field first and setting field flags).

Yep, everything is neatly packed with those components! some stuff remains to be ironed out.

@logaretm, how about use case when we have multiple ValidationProviders wrapped inside ValidationObserver, like this:
`

{{ errors[0] }}

                <ValidationProvider rules="required">
                    <base-range-input v-model="field2" name="field2" label="Field2" min="0" max="10" step="1"
                                      slot-scope="{ errors }">
                        {{ errors[0] }}
                    </base-range-input>
                </ValidationProvider>

               <ValidationProvider rules="required">
                    <base-range-input v-model="field3" name="field3" label="Field3" min="0" max="10" step="1"
                                      slot-scope="{ errors }">
                        {{ errors[0] }}
                    </base-range-input>
                </ValidationProvider>

                    <button class="btn btn-default"
                            :class="{'disabled': invalid}"
                            @click.prevent="submitForm">Submit
                    </button>

            </form>
        </ValidationObserver>`

Is there a way to programmatically add an error to a specific child in this case other than treat each one separately using specific ref attribute names and match them to api response name fields?

@logaretm, how about use case when we have multiple ValidationProviders wrapped inside ValidationObserver, like this:
<ValidationObserver ref="observer">
           <form slot-scope="{ invalid }">
                <ValidationProvider rules="required">
                   <base-range-input v-model="field1" name="field1" label="Field1" min="0" max="10"
                                      slot-scope="{ errors }">
                        {{ errors[0] }}
                    </base-range-input>
                </ValidationProvider>

                <ValidationProvider rules="required">
                    <base-range-input v-model="field2" name="field2" label="Field2" min="0" max="10"
                                      slot-scope="{ errors }">
                        {{ errors[0] }}
                    </base-range-input>
                </ValidationProvider>

                    <button class="btn btn-default"
                            :class="{'disabled': invalid}"
                            @click.prevent="submitForm">Submit
                    </button>

            </form>
</ValidationObserver>

Is there a way to programmatically add an error to a specific child in this case other than treat each one separately using specific ref attribute names and match them to api response name fields?

@logaretm, I see you mentioned there is no currently an API for that, so here is what I came up with at the moment:
Given we a view structure mentioned above with ValidationObserver and some nested ValidationProviders, if we have a backend error format like this:
const apiResponseWithErrors = {
                    field1: 'Only integer values allowed',
                    field2: 'Only integer values allowed'
                };

For now the only solution I see is to iterate ValidationObserver's $children all of which have to be provided with a name attribute that corresponds with the actual field name:
Object.keys(apiResponseWithErrors).forEach((key) => {
                    // going through each validation provider
                    this.$refs.observer.$children.forEach((validationProvider) => {
                        if (validationProvider.name === key) {
                                validationProvider.messages.push(apiResponseWithErrors[key]);
                        }
                    });
                });


"Cannot connect proxy"

can not connect, "Cannot connect proxy" is displayed.

Hello. I checked and changed the regular expression for checking the proxy and added proxy information to the console, update. And specify https at the beginning of the proxy, because http may not work. 😄


monaco-editor-wrapper vs @codingame/monaco-editor-wrapper

Hi, there are 2 libraries with same name but different namespaces.
Can they be both used together (for instance to use the vim keyboard service from '@codingame/monaco-editor-wrapper' ? Why are they separated but have the same name?

The CodinGame version of the wrapper is very tied to our needs (including the languages and tools we need). It's open-source because why not, but it wasn't really designed to be generic and to be widely used

The question was answered. Closing the issue.


Support for duplicate keys

It seems that when a key is added a second time, a duplicate is not added and rather the value associated with that key is replaced. It would be very useful for my use case and I'm sure others to store both, and I've seen this in other implementations.
I could handle this up front but it means spending quite a bit of time in Python and so would be slow. I'd be willing to help with a change, if people generally agreed it would be positive, but might need some pointers.
Thanks for an awesome, stable and blazingly fast library!

@richdutton Hi :)
The behaviour here is the same as for a dict: associating a value to an existing key will replace the value.

It would be very useful for my use case and I'm sure others to store both, and I've seen this in other implementations.

Do you have pointers to this?

I could handle this up front but it means spending quite a bit of time in Python and so would be slow.

Are you sure this would slow? IMHO you could try this:
Always assign a list object as a value. When you insert, first test if the key exists, and if yes, append to the list; otherwise add the key/value wrapping the value in list.  I am not sure this would major performance implications

Thanks for an awesome, stable and blazingly fast library!
All the credits go to @WojciechMula

@richdutton: as @pombredanne wrote, you could try with standard python containers (list, tuple, set). If performance appear to be issue, we will consider changes.
Thanks for the kind words, but without help received from many people, the lib wouldn't be as good as it is now.


Add viewbox

This adds the width, height, and sets the viewBox of the <svg> element. This sets the visible viewport for SVG when being displayed.

Thanks, sir!

Thanks for the great script!


[KubernetesConfiguration] Release 2021-10-01-preview with FluxConfigurations

MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Changelog
Add a changelog entry for this PR by answering the following questions:

What's the purpose of the update?

[ ] new service onboarding
[x] new API version
[ ] update existing version for new feature
[ ] update existing version to fix swagger quality issue in s360
[ ] Other, please clarify

When are you targeting to deploy the new service/feature to public regions? Please provide the date or, if the date is not yet available, the month.
When do you expect to publish the swagger? Please provide date or, the the date is not yet available, the month.
If updating an existing version, please select the specific langauge SDKs and CLIs that must be refreshed after the swagger is published.

[ ] SDK of .NET (need service team to ensure code readiness)
[ ] SDK of Python
[ ] SDK of Java
[ ] SDK of Js
[ ] SDK of Go
[ ] PowerShell
[ ] CLI
[ ] Terraform
[ ] No refresh required for updates in this PR

Contribution checklist:

[x] I commit to follow the Breaking Change Policy of "no breaking changes"
[x] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

Applicability: :warning:
If your changes encompass only the following scenarios, you should SKIP this section, as these scenarios do not require ARM review.

Change to data plane APIs
Adding new properties
All removals

Otherwise your PR may be subject to ARM review requirements. Complete the following:

[ ] Check this box if any of the following apply to the PR so that label “WaitForARMFeedback” will be added automatically to begin ARM API Review. Failure to comply may result in delays to the manifest.

Adding a new service
Adding new API(s)
Adding a new API version
-[ ] To review changes efficiently, ensure you copy the existing version into the new directory structure for first commit and then push new changes, including version updates, in separate commits.

[ ] Ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If any of the following scenarios apply to the PR, request approval from the Breaking Change Review Board as defined in the Breaking Change Policy.

[ ] Removing API(s) in a stable version
[ ] Removing properties in a stable version
[ ] Removing API version(s) in a stable version
[ ] Updating API in a stable or public preview version with Breaking Change Validation errors
[ ] Updating API(s) in public preview over 1 year (refer to Retirement of Previews)

Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Addition details on the process and office hours are on the Breaking change Wiki.
Please follow the link to find more details on PR review process.

@qwordy
For Cross-Version Breaking Changes

/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{clusterRp}/{clusterResourceName}/{clusterName}/providers/Microsoft.KubernetesConfiguration/operations path still exists, but has been moved to operations.json, this is not breaking
providers/Microsoft.KubernetesConfiguration/operations path still exists, but has been moved to operations.json, this is not breaking
ClusterRpParameter, ClusterResourceNameParameter, and ClusterNameParameter are not removed, but have been moved into /common/parameters.json, they have not been removed and this is not breaking
ReadOnlyProperty changes in kubernetesconfiguration.json have already been approved in previous API reviews for 2021-05-01-preview and 2021-06-01-preview, these should not be considered breaking
ClusterTypeParameterwas replaced with ClusterRpParameter, these should contain the same values and this should not be considered breaking

@ArcturusZhang Can you assist with figuring out why the SourcControlConfigurationOperations is not being generated by Python Track 2, we are not intending to create any sort of breaking change here

@jonathan-innis Can you fix failure of Swagger ApiDocPreview ?

@qwordy Can you help me (or point me to someone who can) why the docs-gen is failing? We are seeing that the file Get_Operation already exists but there is no file by this name in the PR


A data file for a piece can be devided into parts, and parts managed as separate entities within FreeCEN (as registers and parts of registers are managed within FreeREG)

Tools need to be created/modified to permit this.
CEN1 works on the basis that there is one vld file per piece. ie all of the transcriptions are contained within 1 file. This leads to massive files and means coordinators often have to merge multiple sets of transcriptions into 1.
There is no reason why  data should not be uploaded in chunks of transcriptions and effectively merged at the database level

The new file naming scheme permits parts
File naming in CEN2#881
No further components are required.
This can be closed


docs: update documentation to match updated cli

updates documentation on flow cli
ref. https://pnp.github.io/cli-microsoft365/cmd/flow/run/run-list/

@Taaqif: thank you. We will come back to you shortly

Manually merged


Piece: Postgres ETL

This PR adds a new project to insert data into a Postgres table and measure the performance of async querying. It would be interesting to see the async data ingestion and query performance using asyncpg in Python and sqlx in Rust.

@sanders41 that's a good tip, thanks!


String escape not working in syntax

For string literals in the syntax, the escape character '' is yet to be implemented.

Resolved in v1.0.14


Support install-only

I'd like to use my re-usable scripts for generating diffs in github actions w/ atlas CLI. I'd like to use the atlas-action to set up atlas for me. However, this does not seem to be supported right now, as:

the binary is not exposed for later steps
it's not possible to run the atlas-action without executing any command

Do you think it's possible to support that, or with a separate action like ariga/setup-atlas?

We're on it!

Hi @aplr
Thanks for the suggestion, we have implemented the setup-atlas action, you can find it here: https://github.com/ariga/setup-atlas/


convert some service classes to static props, run [codefactor codeship conda continuousphp]

Warnings

:warning:
This PR modified service code for continuousphp but not its test code. That's okay so long as it's refactoring existing code.

:warning:
This PR modified service code for conda but not its test code. That's okay so long as it's refactoring existing code.

:warning:
This PR modified service code for codeship but not its test code. That's okay so long as it's refactoring existing code.

:warning:
This PR modified service code for codefactor but not its test code. That's okay so long as it's refactoring existing code.

Messages

:book:
:sparkles: Thanks for your contribution to Shields, @calebcartwright!

  Generated by :no_entry_sign: dangerJS against 70dd75539d0d1e2a37e6ea7579b06a0e2becfedb


Standardizing error vs stderr?

Maybe a copy/paste thing, normalizing error and stderr

Definitely copy and paste (and not testing 😜 ). Thanks for the fix!


Handle scenarios for requests/responses where rawBody is being used

Hi,
We're having a project where we use the Throttler being defined globally in the app module and we're listening for stripe webhook events with the @golevelup/nestjs-stripe module.
We've added { bodyParser: false } inside the main.ts followed by defining the following setup in the app module:
export class AppModule implements NestModule {
  configure(consumer: MiddlewareConsumer): void {
    consumer
      .apply(RawBodyMiddleware)
      .forRoutes({
        path: 'stripe/webhook',
        method: RequestMethod.ALL,
      })
      .apply(JsonBodyMiddleware)
      .forRoutes('*')
  }
}

After triggering a Stripe event, this resulted in the following error:
TypeError: Cannot read property 'header' of undefined
    at ThrottlerGuard.handleRequest (/Users/<username>/projects/<my-project>/node_modules/@nestjs/throttler/dist/throttler.guard.js:68:13)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
    at async GuardsConsumer.tryActivate (/Users/<username>/projects/<my-project>/node_modules/@nestjs/core/guards/guards-consumer.js:16:17)
    at async canActivateFn (/Users/<username>/projects/<my-project>/node_modules/@nestjs/core/helpers/external-context-creator.js:162:33)
    at async target (/Users/<username>/projects/<my-project>/node_modules/@nestjs/core/helpers/external-context-creator.js:75:31)
    at async Object.handler (/Users/<username>/projects/<my-project>/node_modules/@nestjs/core/helpers/external-proxy.js:9:24)
    at async Promise.all (index 0)
    at async StripeWebhookService.handleWebhook (/Users/<username>/projects/<my-project>/node_modules/@golevelup/nestjs-stripe/lib/stripe.module.js:108:17)
    at async StripeWebhookController.handleWebhook (/Users/<username>/projects/<my-project>/node_modules/@golevelup/nestjs-stripe/lib/stripe.webhook.controller.js:34:9)

Basically, the problem is that in this scenario, the res is undefined in the throttler guard and I don't really know why, but adding an if-statement around it will fix the problem.
I thought to myself, I could add ignoreUserAgents: [/^Stripe\/[\d.]+/] as well, but this resulted in the error Cannot read property 'user-agent' of undefined so I've also improved that check by checking if req.headers exists.
There's no way for me to use stripe with throttler globally configured together, so we're disabling throttler in our project at this point. I suggest we merge this crucial change ASAP and do a deploy to NPM as well.

@jmcdo29 Can you help me to fix the tests? It seems to fail quite a lot.

@kkoomen we can probably remove the tests for node 10. 12 and 14 are current anyways.
Should we make a check in here for if(!res) { return true; } so we don't have to wrap the entire thing?
Also, isn't this a perfect use case for the @ThrottlerSkip() decorator?

Should we make a check in here for if(!res) { return true; } so we don't have to wrap the entire thing?

I've though about it, but then it wouldn't take this endpoint in consideration for the throttling. I still want this endpoint to be throttled though so that's why I did add if (res) { .... } around the parts that contain res.header().

I'm going to end up opening a PR in the @golevelup package to allow for decorators on the endpoint that would allow for calling @ThrottlerSkip(). I'll keep reviewing this in the meantime though

@kkoomen Bro. How's it going, nice news! I checked it in the @goleveup/nestjs-stripe @jmcdo29  his  PR262 is merged. so we can use it like this now.
StripeBaseModule.forRootAsync(StripeBaseModule, {
      imports: [ConfigModule],
      inject: [ConfigService],
      useFactory: (configService: ConfigService) => ({
        apiKey: configService.get<string>('STRIPE_SECRET_KEY'),
        timeout: 1000 * 20,
        webhookConfig: {
          stripeWebhookSecret: configService.get<string>('STRIPE_WEBHOOK_SECRET_KEY'),
          decorators: [SkipThrottle()],
        },
      }),
    }),

And I will remove the  ignoreUserAgents is right?
ThrottlerModule.forRootAsync({
      imports: [ConfigModule],
      inject: [ConfigService],
      useFactory: (configService: ConfigService) => ({
        ttl: 60,
        limit: 1000,
//        ignoreUserAgents: [/^Stripe\/[\d.]+/],
        storage: new ThrottlerStorageRedisService(configService.get<string>('REDIS_URL')),
      }),
    }),

@ZhaoKunLong Yes, you can remove the ignoreUserAgents key from the ThrottlerModule and add decorators: [SkipThrottle()] in the StripeBaseModule defined in the app.module.ts.
@jmcdo29 Seems like this issue is solved on one side, but since I did add additional checks, shall we merge those or are those not needed anymore?

I think for now we can close this. I'm not a huge fan of just wrapping this all in an if in the case that res is undefined, which is why I wanted to allow the fix at the StripeModule level. If this comes up again though we can revisit the PR


Add index rec and transaction contention events, misc formatting and spelling.

https://cockroachlabs.atlassian.net/browse/DOC-3649

This change is


audio issue

audio is not coming in any video and removed and installed 3 times. so please rectify the issue

sorry @prateekraj20, but i don't maintain this extension anymore since chrome no longer support these kind of extensions.
i can recommend on "plex" or "powder player".


Open source licensing tasks

[ ] Justin to ask daniel about whether Open Data Licenses apply for the machine learning model
[x] Justin to share link to report Open source archetypes
[ ] @ChristinaLast and @jit-1 to decide the licensing strategy (narrow down to top three)
[ ] @ChristinaLast and @jit-1 Create a Charter

[ ] add vision statement, mission statement and community statements

I think we are Houseplants...


📖 Adding missing documentation for Token-Permissions

Please check if the PR fulfills these requirements

[n/a] Tests for the changes have been added (for bug fixes / features)
[x] PR title follows the guidelines defined in  https://github.com/ossf/scorecard/blob/main/CONTRIBUTING.md#pr-process

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

What is the current behavior? (You can also link to an open issue here)
The Token-Permissions check documentation does not include documentation on when the score is reduced due to certain write permissions being present on a job.

Codecov Report

Merging #1656 (3e4321c) into main (33a01f7) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main    #1656   +/-   ##
=======================================
  Coverage   56.17%   56.17%
=======================================
  Files          72       72
  Lines        6506     6506
=======================================
  Hits         3655     3655
  Misses       2606     2606
  Partials      245      245


Why lot of packages are installed in Android and iOS after version 9.0.1?

??

Yeah, i cam see version 11+ dont have that issue. Thanks


Use lodash-es to minize app bundle size

See https://itnext.io/lodash-es-vs-individual-lodash-utilities-size-comparison-676f14b07568
Related issues

#86

Now in the default branch.


Hero scenarios link validation is failing

A user is trying to add hero scenarios link to the SDK archboard meeting and is getting invalid link even though the link is correct.
Ping me for the link

This is an issue with the Regex that is most like in all of the apps.

I updated the regex for all URL fields in API Review, SDK Review and Informational apps. (Except for ApiView links)


Format code using black

Closes #69

Thx @Carreau CI is failing with ksmm/handlers.py:151:13: E722 do not use bare 'except'
ksmm/handlers.py:156:13: E722 do not use bare 'except'
I think isort will also fail. Can you sort the import (isort...) in this PR?
Thx, Eric

thanks I fixed isort, and flake8 issues.

Thanks !


AzureRmWebAppDeploymentV4 v.4.2.2 tempParameterSet.xml etr

Environment
VSTS:
account name: rapmd
team project name:rapmd
release definition name: QA
release definition number: 248+
Agent:
Private (windows 2016, agent ver.2.120.2)
Issue Description
The error appeared after extension update from version 4.1.12 to 4.2.2
In release I have two successive tasks: deply webapp and function app.
After first is successfully deployed the second fails with error:
Error: Failed cp: cp: dest file already exists: C:\agent3_work\r1\a\tempSetParameters.xml
If switch tasks the result is the same.
The workaround for now is to create a step between tasks that removes the tempSetParameters.xml but I think it should be fixed in the service.
Error logs
2 Logs: 4.1.2 - with success deployment, 4.2.2 - with error
4.2.2.log
4.1.2.log

@mbialitskiy , thanks for reporting the issue. This is a genuine issue and will be fixed.

@mbialitskiy , the issue is fixed and the fix will be available in upcoming deployment.

@vincentdass does this fix the issue with appsetting json variables not being replaced as well?

@vincentdass also when is the upcoming deployment? Is there a way to see a schedule of this?

@joe45sp , JSON var. substitution issue is getting hotfixed. This should available this week.
Setparam issue fix will be available in ~3-4 weeks.

@vincentdass is there anyway to see release progress? Also, can you point me to the commit that fixed the json var substitution? Just curious to see what fixed it. Thank you for all your help with this!!!

@joe45sp , JSON variable substitution fix: #7818. (Task replaced the values in JSON but deployed the unmodified (original) package and this created an impression that JSON variable substitution didn't work)


Error: Ruby install aborted due to missing extensions MacOS Sierra Ruby 2.4.1

I'm unable to install either ruby 2.4.1 or 2.4.0 with rbenv install 2.4.x or ruby-build 2.4.x ~/.rubies/2.4.x
I get the following error:
ruby-build: use openssl from homebrew
Downloading ruby-2.4.1.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.4/ruby-2.4.1.tar.bz2
Installing ruby-2.4.1...
ruby-build: use readline from homebrew

BUILD FAILED (OS X 10.12.6 using ruby-build 20170726)

Inspect or clean up the working tree at /var/folders/g0/wxx5vx755ql5vkqt5lgppgzw0000gp/T/ruby-build.20170825214500.32311
Results logged to /var/folders/g0/wxx5vx755ql5vkqt5lgppgzw0000gp/T/ruby-build.20170825214500.32311.log

Last 10 log lines:
The Ruby yaml extension was not compiled.
ERROR: Ruby install aborted due to missing extensions
Configure options used:
  --prefix=/Users/iaserrat/.rbenv/versions/2.4.1
  --with-openssl-dir=/usr/local/opt/openssl
  --with-readline-dir=/usr/local/opt/readline
  CC=clang
  CFLAGS= -O3 -Wno-error=shorten-64-to-32
  LDFLAGS=-L/Users/iaserrat/.rbenv/versions/2.4.1/lib
  CPPFLAGS=-I/Users/iaserrat/.rbenv/versions/2.4.1/include

However I was able to successfully install 2.3.0.
End of build log:
installing default gems:      /Users/iaserrat/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0 (build_info, cache, doc, extensions, gems, specifications)
                              bigdecimal 1.3.0
                              io-console 0.4.6
                              json 2.0.2
                              openssl 2.0.3
                              psych 2.2.2
                              rdoc 5.0.0
installing bundle gems:       /Users/iaserrat/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0 (build_info, cache, doc, extensions, gems, specifications)
                              did_you_mean 1.1.0
                              minitest 5.10.1
                              net-telnet 0.1.1
                              power_assert 0.4.1
                              rake 12.0.0
                              test-unit 3.2.3
                              xmlrpc 0.2.1
installing rdoc:              /Users/iaserrat/.rbenv/versions/2.4.1/share/ri/2.4.0/system
installing capi-docs:         /Users/iaserrat/.rbenv/versions/2.4.1/share/doc/ruby
/Users/iaserrat/.rbenv/versions/2.4.1/lib/ruby/2.4.0/yaml.rb:5:in `<top (required)>':
It seems your ruby installation is missing psych (for YAML output).
To eliminate this warning, please install libyaml and reinstall your ruby.
The Ruby yaml extension was not compiled.
ERROR: Ruby install aborted due to missing extensions
Configure options used:
  --prefix=/Users/iaserrat/.rbenv/versions/2.4.1
  --with-openssl-dir=/usr/local/opt/openssl
  --with-readline-dir=/usr/local/opt/readline
  CC=clang
  CFLAGS= -O3 -Wno-error=shorten-64-to-32
  LDFLAGS=-L/Users/iaserrat/.rbenv/versions/2.4.1/lib
  CPPFLAGS=-I/Users/iaserrat/.rbenv/versions/2.4.1/include

rbenv version:
➜  ~ rbenv --version
rbenv 1.1.1

ruby-build version:
➜  ~ ruby-build --version
ruby-build 20170726

I already tried to:

Uninstall/reinstall rbenv
rm -rf ~/.rbenv
re-install libyaml
re-install ruby-build
RUBY_CONFIGURE_OPTS="--with-openssl-dir=brew --prefix openssl --with-readline-dir=brew --prefix readline --with-libyaml-dir=brew --prefix libyaml" rbenv install 2.4.1

Fixed after running pretty much everything from https://github.com/Homebrew/homebrew-core/issues/11636

Closing because it doesn't sound like this is an issue for you anymore, and we aren't getting similar reports.

Fwiw, I'm getting a similar error on Windows with Cygwin:
...make[2]: Leaving directory '/tmp/ruby-build.20171209133557.1992/ruby-2.4.2/ext/win32ole'
*** Following extensions failed to configure:
../.././ext/dbm/extconf.rb:0: Failed to configure dbm. It will not be installed.
../.././ext/gdbm/extconf.rb:0: Failed to configure gdbm. It will not be installed.
../.././ext/readline/extconf.rb:0: Failed to configure readline. It will not be installed.
*** Fix the problems, then remove these directories and try again if you want.
make[2]: Entering directory '/tmp/ruby-build.20171209133557.1992/ruby-2.4.2'
...
BUILD FAILED (CYGWIN_NT-10.0 2.9.0(0.318/5/3) using ruby-build 20170914-19-gdcfa90c)

The Ruby readline extension was not compiled.
ERROR: Ruby install aborted due to missing extensions

Would you have any advice? 🙂


Fix: Use different functions depending on arch

:tada: This PR is included in version 1.2.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


update pandas for processing container

Reason for Change

#TICKET_NUMBER
If the reason for this PR's code changes are not clear in the issue, state value/impact

Changes

add
remove
modify

Testing steps

Either list QA steps or reasoning you feel QA is unnecessary
Describe how you made sure to know that your changes worked. Should allow someone else to go verify your code without in depth knowledge.
"Unit tested only", "tested in rdev by a, b, c, verifying feature worked by... ", "manually ran pipeline locally with these results: ..."

Checklist 🛎

[ ] Add product, design, and eng as reviewers for rdev review
[ ] For UI changes, add screenshots/videos, so the reviewers know what you expect them to see
[ ] For UI changes, add e2e tests to prevent regressions
[ ] For UI changes, verify impacted analytics events still work

Notes for Reviewer

This can be revisted after cellxgene-schema requirements are updated.
See: https://github.com/chanzuckerberg/single-cell-curation/pull/891/files


Rely on the translation URL rather than on the app URL

The following apps have the same translation URLs, and therefore should automatically share the translations:

http://go-lab.gw.utwente.nl/production/edt/tools/edt/edt_buoyancy.xml
http://go-lab.gw.utwente.nl/production/edt/tools/edt/edt_electricity.xml

Change this in the model.

Done


gopass --password, -o do not work on keyed entries

Summary
You would expect gopass -o to show a secret only when using the -o flag.  This isn't the case....
Steps To Reproduce
gopass edit ladidadida
paste:
username: someuser
password: somesillypassword
totp: otpauth://somesilly&totp
url: http://some-silly.url

gopass show -o ladidadida
Expected behavior
somesillypassword
Environment
    System Software Overview:

      System Version: macOS 12.6.1 (21G217)

gopass 1.15.1 go1.19.4 darwin arm64
<root>     -  gpg 2.3.8 -   fs 0.0.0
Available Crypto Backends: age, gpgcli, plain
Available Storage Backends: fossilfs, fs, gitfs

installed via brew

Additional context

This was never supported nor did we intend to support this so far (this being: threating a password key any special).


Merge develop to master 30.11.2020

Codecov Report

Merging #19 (6954b52) into master (2cd0705) will decrease coverage by 7.49%.
The diff coverage is 83.77%.

@@            Coverage Diff             @@
##           master      #19      +/-   ##
==========================================
- Coverage   93.01%   85.51%   -7.50%
==========================================
  Files          27       28       +1
  Lines         744      939     +195
  Branches       47       94      +47
==========================================
+ Hits          692      803     +111
- Misses         38      109      +71
- Partials       14       27      +13

Impacted Files
Coverage Δ

apartment_application_service/notifications.py
100.00% <ø> (ø)

connections/oikotie/services.py
20.00% <20.00%> (ø)

connections/etuovi/services.py
25.00% <25.00%> (ø)

connections/etuovi/etuovi_mapper.py
88.96% <88.96%> (ø)

application_form/models.py
89.89% <90.56%> (-0.11%)
:arrow_down:

connections/oikotie/oikotie_mapper.py
93.18% <93.18%> (ø)

application_form/services.py
95.16% <95.16%> (ø)

application_form/selectors.py
95.65% <95.65%> (ø)

apartment_application_service/settings.py
82.55% <100.00%> (+1.78%)
:arrow_up:

apartment_application_service/urls.py
100.00% <100.00%> (ø)

... and 20 more

Continue to review full report at Codecov.

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


Day '30' produces SyntaxError: Expected " ", "T", [1] or end of input but "0" found.

The parser doesn't handle day '30':
https://github.com/mrrrgn/proposal-date-time-string-format/blob/master/parser.peg#L98
2001-01-30 and 2001-01-30T00:01:23.456 produce SyntaxError: Expected " ", "T", [1] or end of input but "0" found.

Oy, that's embarrassing. thank you for reporting that! ^.^ Fixed in 2f520aa645c8cbede243733a070560b037d34e06


ValueError: invalid literal for int() with base 10: in utils.py

In the file DIGITS/digits/extensions/data/objectDetection/utils.py line 185,
it has gt.occlusion = int(row[2])
Since row[2] is a string type, it causes the error : ValueError: invalid literal for int() with base 10:
Hence we should first convert it to float and then to int type :)

Hi @AchyutaAich, occlusion is not supposed to be a float. As per the KITTI doc (reproduced there):
#Values    Name      Description
----------------------------------------------------------------------------
...
   1    occluded     Integer (0,1,2,3) indicating occlusion state:
                     0 = fully visible, 1 = partly occluded
                     2 = largely occluded, 3 = unknown

Yes, even I am stating that first it should be made float due to python demands, then make it cast to int type

Can you elaborate? I don't understand. Why would we need to convert to float since the string represents an int?
>>> int("0")
0

What is your version of python ?

Please read my first comment.

Fine .. can you provide me a link to sample format of label.

See this doc


fix for version 0.46

could you review this PR!
For
https://github.com/facebook/react-native-website/issues/1338

@shukubota if you could accept my suggestions I can merge this!


Manage File Metadata

Support management of a file's metadata. This issue is rudimentary, needs details to be filled in as we learn more.

[ ] Allow setting metadata during file creation:

bucket.create_file "hello.txt", metadata: { title: "Hello world!" }

[ ] Allow getting values using the metadata method.

file.metadata["title"] #=> "Hello world!"

[ ] Allow setting a new value using a setter method.

file.metadata = { title: "Goodbye cruel world!" }

Calling this method makes an API call to update the value. A caveat is that this won't update the API:
file.metadata["title"] = "Goodbye cruel world!" # updates local hash, does not make an API call.

Calling this method inside an update block should update the API:
file.update do |f|
  f.metadata["title"] = "Goodbye cruel world!"
end

@blowmage For returned hashes like this (everywhere in gcloud eventually, Bucket#cors for example), I am in favor of freezing the return value so that modification is not possible. There is no sense in taking the chance that a user is misled into thinking a remote update was made.

Calling this method makes an API call to update the value. A caveat is that this won't update the API:

What's your feeling on this?

I agree with freezing.

Thanks @blowmage, will do.

Modifying the hash without sending a request to the service won't be possible. The returned hash will be frozen.


Add support for extending the FHIRValidator with custom validation logic

The FHIRValidator is relatively fixed in terms of how it handles the validation of resource instances. There are circumstances where a user may want to configure custom validation logic or override some of the base model or profile constraints used in the validation process.

Confirmed by:

posting the following to Patient/$validate

{
  "resourceType": "Patient",
  "name": [{
      "given": [ "John" ]
  }]
}

building fhir-validation-4.9.0-SNAPSHOT-test.jar and adding it to the userlib of my test server, and
posting it again

This second time it yields a validation error like

"patient-name-1: If Patient.name exists, then Patient.name.family SHOULD exist"

This shows that the java-based constraint has been successfully found and invoked.


feat(rss): don't include drafts in rss

Hi!
I don't understand, why this is needed. Build without drafts generates RSS without drafts.
So... why it is needed to show drafts only in blog, not in RSS?

Ah true. Was a bit too fast.
While deciding that I don't want some of the index.md (like static content/something.md) files in the rss feed I thought that might be as well a good addition. I was wrong (:


Example 'FixBrickedUID' may cause card can't be read

Step 1: Describe your environment

OS version: macOS 10.13
Arduino IDE version: 1.8.4
MFRC522 Library version: v1.3.6(the newest line in changes.txt)
Arduino device: uno
MFRC522 device: RFID-RC522-Firmware Version: 0x92 = v2.0

Step 2: Describe the problem
Affected file(s) or example(s):

FixBrickedUID
MFRC522.cpp

Steps to reproduce:

put a blank CUID card and run FixBrickedUID.
use example 'ChangeUID' to write sector 0 for new UID.

Observed Results:

RFID reader may not read the card and Android APP 'Mifare Classic Tool' will show that 'this card is not Mifare Classic Card ,etc.'

Expected Results:

CUID card can be read normally.

Relevant Code:
bool MFRC522::MIFARE_UnbrickUidSector(bool logErrors) {
	MIFARE_OpenUidBackdoor(logErrors);

	byte block0_buffer[] = {0x01, 0x02, 0x03, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};

	// Write modified block 0 back to card
	MFRC522::StatusCode status = MIFARE_Write((byte)0, block0_buffer, (byte)16);
	if (status != STATUS_OK) {
		if (logErrors) {
			Serial.print(F("MIFARE_Write() failed: "));
			Serial.println(GetStatusCodeName(status));
		}
		return false;
	}
	return true;
}

MORE DETAILS
A normal card sector 0 may be like this:
   0      3   00 00 00 00  00 00 FF 07  80 69 FF FF  FF FF FF FF  [ 0 0 1 ]
          2   00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  [ 0 0 0 ]
          1   00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  [ 0 0 0 ]
          0   44 96 BE 22  4E 08 04 00  01 6F 01 6D  45 68 F8 1D  [ 0 0 0 ]

A CUID card after 'FixBrickedUID' sector 0 will like this:
   0      3   00 00 00 00  00 00 FF 07  80 69 FF FF  FF FF FF FF  [ 0 0 1 ]
          2   00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  [ 0 0 0 ]
          1   00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  [ 0 0 0 ]
          0   01 02 03 04  04 00 00 00  00 00 00 00  00 00 00 00  [ 0 0 0 ]

if you use the 'ChangeUID', this sector 0 will change to it:
   0      3   00 00 00 00  00 00 FF 07  80 69 FF FF  FF FF FF FF  [ 0 0 1 ]
          2   00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  [ 0 0 0 ]
          1   00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  [ 0 0 0 ]
          0   44 96 BE 22  04 00 00 00  00 00 00 00  00 00 00 00  [ 0 0 0 ]

so if you read the card, it may show nothing. It seems that the card is 'damaged' but it just some wrong data in sector 0.
I don't know how to fix the program, so I open the issue and modified the function 'MIFARE_UnbrickUidSector' to fix the bad card.
Sorry for bad English.

Ok. My first thought was that the byte 7-15 (=manufacturer data) are zero. So the program can not detect the manufacturer and it thinks it is a damaged card.
https://www.nxp.com/docs/en/data-sheet/MF1S50YYX_V1.pdf
Figure 7
Byte 0-6 are uid
byte 7-15 are manufacturer data
Please notice that 2 types of uids exists: 4 byte and 7 byte. 7 byte are more common this days.

Ok. My first thought was that the byte 7-15 (=manufacturer data) are zero. So the program can not detect the manufacturer and it thinks it is a damaged card.
https://www.nxp.com/docs/en/data-sheet/MF1S50YYX_V1.pdf
Figure 7
Byte 0-6 are uid
byte 7-15 are manufacturer data
Please notice that 2 types of uids exists: 4 byte and 7 byte. 7 byte are more common this days.

Hi, Rotzbua
Thanks to your comment, it is really helpful.
After I change any byte in sector 0, card will not work.
So I think the example 'FixBrickedUID' write wrong data to sector 0 (it write 01 02 03 04  04 00 00 00  00 00 00 00  00 00 00 00 to it)
And example 'ChangeUID' (it write 4 byte UID to card) can't read card because of wrong manufacturer data(Byte 5-15 are all zero, but the byte 4 BBC code is right(04)) so it can't write correctly.
They lead to the problem together.
Thanks for your reading.
cheers.


XENOVA conversion issues

System Info
using the requirements.txt in Xenova for environment.

https://github.com/xenova/transformers.js/blob/main/scripts/requirements.txt

Who can help?
@xenova
Information

[ ] The official example scripts
[ ] My own modified scripts

Tasks

[ ] An officially supported task in the examples folder (such as GLUE/SQuAD, ...)
[ ] My own task or dataset (give details below)

Reproduction (minimal, reproducible, runnable)
"Error while initializing BPE: Token _</w> out of vocabulary"
Expected behavior
Been trying to run blenderbot90, 400, 1b distilled.
Have had lots of issues, but I'll start with this one.
version 1 attempt, and loading from local after git-large file from HF repo.
tokenizer = AutoTokenizer.from_pretrained(model)
model = ORTModelForSeq2SeqLM.from_pretrained(model)
inputs = tokenizer("what is a black hole", return_tensors="pt")
gen_tokens = model.generate(**inputs)
response = tokenizer.batch_decode(gen_tokens)
version 2 attempt, directly repo using pipeline
from transformers import AutoTokenizer, pipeline
from optimum.onnxruntime import ORTModelForSeq2SeqLM
tokenizer = AutoTokenizer.from_pretrained("Xenova/blenderbot_small-90M")
model = ORTModelForSeq2SeqLM.from_pretrained("Xenova/blenderbot_small-90M")
onnx_pipe = pipeline("conversational", model=model, tokenizer=tokenizer)
text = "what is a black hole"
response = onnx_pipe (text)
Both cases getting this error: "Error while initializing BPE: Token _</w> out of vocabulary"

Hi there 👋 You can get around this by using the slow tokenizer with:
from transformers import AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("Xenova/blenderbot_small-90M", use_fast=False)

Awesome, thanks!.. will test this out shortly..
Also, was also trying to run the non-pipeline ORT approach using repo, but getting this error, which I'm sure is a basic one but can't find anything in the docs.
What is the correct approach to reference the model from repo, in the onnx folder where there are multiple versions?
model ="Xenova/blenderbot_small-90M" from the repo, and getting error: "Too many ONNX model files were found in Xenova/blenderbot-400M-distill, specify which one to load by using the encoder_file_name argument."
tokenizer = AutoTokenizer.from_pretrained(model )
model = ORTModelForSeq2SeqLM.from_pretrained(model )
inputs = tokenizer("My name is Arthur and I live in", return_tensors="pt")
gen_tokens = model.generate(**inputs,do_sample=True,temperature=0.9, min_length=20,max_length=20)
response = tokenizer.batch_decode(gen_tokens)
I have tried adding "encoder_file_name=encoder_model_quantized.onnx", and "encoder_file_name=onnx/encoder_model_quantized.onnx" and trying to use the subfolder="onnx".. but none of these are working for me.

Found it:
model = ORTModelForSeq2SeqLM.from_pretrained(mname, subfolder="onnx", decoder_file_name="decoder_model_quantized.onnx", encoder_file_name="encoder_model_quantized.onnx")


if the content of Header view is  too much ,The content of headView  to be displaied completely

how can I solve it?

Hi!
Can you post a screenshot or something?

here is the screenshot,the headView can't display completely

Hi!
Sorry for late reply. Thank for the screenshot, but, I wonder, what element is a header? :)

I think you used it uncorrectly.

Did I? :)

@noties  not you, but @VincentRuiLi

@xu6148152 :+1:


Settle on names for Docker containers

Not everyone is currently happy with the choice of "stable" and "unstable."
Please review the documented intent of the names, and officially settle on appropriate tags (as it requires code change).
Also settle on which container will be the "latest" container.
Afterward, we need the Docker Hub registry app to be approved with the PowerShell organization so I can set up automated builds on a PowerShell/PowerShell registry (example setup on my own user).
This is necessary to resolve #2002.
/cc @PowerShell/powershell-committee
Note: I need to copy the bootstrap.ps1 files to each unstable Dockerfile folder; while launch.sh copies it on the fly, this doesn't work for the automated builds. They each need a copy in the context of the folder itself. Alternatively the Dockerfiles can be renamed and put in one folder, but this is unconventional.

You may also consider setting up an Official Repository.

First, I think we definitely want latest-alpha-<platform> for the latest alpha release. That's easy (unless anyone has objections).
For the latest build from source in master, the basic principle is that we want to discourage people from picking this over latest-alpha because it sounds more stable. We've got a few options here, none of which I'm thrilled about:

latest-master-<platform>
latest-dev-<platform>
latest-source-<platform>
latest-github-<platform>
We can also use an arcane acronym as a way to discourage usage of this tag like lbfm for latest build from master or lms for latest master source.

@andschwa : thoughts?

Why use latest so many times? There should be one latest tag, with nothing else suffixed, as this is the default tag used when no others are specified.
As for the unstable from source builds, I'd suggest a prefix of nightly.

Since enabling automated builds under the current tags on my own fork, over 42 pulls have happened, and the availability isn't even widely publicized. This matter should be settled soon so we can host on the official account.

@joeyaiello is this going to be completed soon?

@andschwa it was my understanding that we need two container images, one that has latest powershell installed and the other grabs the latest powershell by cloning the repo and intended for CI use.  I think the list Joey provided was to differentiate the latter from the former.  I say just pick something reasonable.

I'm suggesting release and nightly to take the place of the current stable and unstable tags (we should not overload latest; it's the one tag with a convention and should point to the most recent release image). Does anyone on the @PowerShell/powershell-committee object?

Stable/unstable seems orthogonal to nightly/release. Our general versioning elsewhere in PowerShell is moving toward Semver, which uses the term Stable (& by inference UnStable), as it provides information about the recommended use that's unavailable in Release and Nightly. If we use both, it gives good value. However, without the Stable tag, it seems you are creating a new mechanism for tagging these builds that consumers of them have to interpret independently from Semver. I believe that's not the right approach.

We did go with stable and unstable, I'm blocked because the committee was against this. Has that changed?

Based on past @PowerShell/powershell-committee discussion and today's chat with @SteveL-MSFT, I would suggest, we go with:

latest-alpha-<platform>  for the latest alpha release.
latest-master-<platform> for the latest build from source code in master branch

That's the only one I cannot recommend, latest as a tag has a specific meaning in Docker and shouldn't be overloaded.

latest confuses everyone (tons of articles on this), so why not just drop latest altogether?
alpha-<platform> and master-<platform>, no latest

@PowerShell/powershell-committee is okay with latest pointing to ubuntu-16.04 and a separate repo for powershell-nightly

Perfect! @SteveL-MSFT you'll let me know when permissions on the hub are setup, yeah?

hub repos should be created later today


Add the ability to take an input array and parse it to the proper format

I'd like to take a look at this, but not sure what this is about. render_comment_list already takes a list, what should be changed here?

And you're right.
This seems to be a leftover from when the repo wasn't even objection_engine but a mod from the reddit bot
You're right, this is already done. I'm closing this


CIV-4973 Set location name and region

Before creating a pull request make sure that:

[x] commit messages are meaningful and follow good commit message guidelines
[x] README and other documentation has been updated / added (if needed)
[x] tests have been updated / new tests has been added (if needed)

Please remove this line and everything above and fill the following sections:
JIRA link (if applicable)
https://tools.hmcts.net/jira/browse/CIV-4973
Change description

Set location name and region
Change the field isCcmccLocation to true or false
update the unit test

Does this PR introduce a breaking change? (check one with "x")
[ ] Yes
[ ] No


SocketException not caught on iOS in beta/dev (works in stable)

Summary
The real scenario that when we try to make an http call and the call fails due to not having internet or similar, a SocketException is thrown. The below code makes a call to a domain that does not exist, which results in a SocketException as well. With beta and dev channel the exception is never caught, while stable works as expected.
Steps to Reproduce
This does NOT reproduce in stable channel (1.20.4). This does NOT reproduce deploying to Android devices.
Reproduced using combinations of beta/dev and iOS 13.5 and 14.0 devices / simulators.

Use beta (1.22.0-12.1.pre) or dev (1.23.0-4.0.pre)
Start iOS simulator with iOS 14 and iPhone 11 pro (or iOS 13.5)
Create a new project, and add http: 0.12.2 as dependency
Replace main.dart with this code:

import 'package:flutter/material.dart';
import 'package:http/http.dart' as http;

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
        visualDensity: VisualDensity.adaptivePlatformDensity,
      ),
      home: MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  MyHomePage({Key key, this.title}) : super(key: key);

  final String title;

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

class _MyHomePageState extends State<MyHomePage> {
  bool _loading = false;
  int _statusCode;
  bool _catch;
  bool _finally;

  void _incrementCounter() async {
    setState(() {
      _loading = true;
      _statusCode = null;
      _catch = null;
      _finally = null;
    });
    try {
      final response = await http.get('https://some-domain-that-does.not.exist.com');
      setState(() {
        _statusCode = response.statusCode;
        _catch = false;
      });
    } catch (err) {
      setState(() {
        _catch = true;
      });
    } finally {
      setState(() {
        _loading = false;
        _finally = true;
      });
    }
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            Text('Press the button to make network call'),
            Text('_loading: $_loading'),
            Text('Status code: ${_statusCode ?? '-'}'),
            Text('Catch: ${_catch ?? '-'}'),
            Text('Finally: ${_finally ?? '-'}'),
          ],
        ),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: _incrementCounter,
        tooltip: 'Increment',
        child: Icon(Icons.cloud_download),
      ), // This trailing comma makes auto-formatting nicer for build methods.
    );
  }
}

Start the application on the simulator (or real device).
Click the fab in the bottom right

Expected results: we should see _catch: true shown
Actual results: we see _catch: -, that implies that the catch block was never reached. You also see the following exception in the console:
[VERBOSE-2:ui_dart_state.cc(177)] Unhandled Exception: SocketException: Failed host lookup: 'some-domain-that-does.not.exist.com' (OS Error: nodename nor servname provided, or not known, errno = 8)
#0      _NativeSocket.lookup.<anonymous closure> (dart:io-patch/socket_patch.dart:502:9)
#1      _rootRunUnary (dart:async/zone.dart:1198:47)
#2      _CustomZone.runUnary (dart:async/zone.dart:1100:19)
#3      _FutureListener.handleValue (dart:async/future_impl.dart:143:18)
#4      Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:696:45)
#5      Future._propagateToListeners (dart:async/future_impl.dart:725:32)
#6      Future._completeWithValue (dart:async/future_impl.dart:529:5)
#7      Future._asyncCompleteWithValue.<anonymous closure> (dart:async/future_impl.dart:567:7)
#8      _rootRun (dart:async/zone.dart:1190:13)
#9      _CustomZone.run (dart:async/zone.dart:1093:19)
#10     _CustomZone.runGuarded (dart:async/zone.dart:997:7)
#11     _CustomZone.bindCallbackGuarded.<anony<…>

Logs
VERBOSE LOG ATTACHED AS FILE.

socket-exception-handling-verbose-log-output.txt
➜  socketexception git:(master) ✗ flutter analyze
Analyzing socketexception...
No issues found! (ran in 1.9s)

➜  socketexception git:(master) ✗ flutter doctor -v
Downloading android-arm-profile/darwin-x64 tools...                 1.0s
Downloading android-arm-release/darwin-x64 tools...                 0.5s
Downloading android-arm64-profile/darwin-x64 tools...               0.5s
Downloading android-arm64-release/darwin-x64 tools...               0.4s
Downloading android-x64-profile/darwin-x64 tools...                 0.3s
Downloading android-x64-release/darwin-x64 tools...                 0.4s
[✓] Flutter (Channel beta, 1.22.0-12.1.pre, on Mac OS X 10.15.6 19G2021, locale en-GB)
    • Flutter version 1.22.0-12.1.pre at /Users/plauri/apps/flutter
    • Framework revision 8b3760638a (8 days ago), 2020-09-15 17:47:13 -0700
    • Engine revision 4654fc6cf6
    • Dart version 2.10.0 (build 2.10.0-110.3.beta)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
    • Android SDK at /Users/plauri/Library/Android/sdk
    • Platform android-30, build-tools 30.0.1
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0, Build version 12A7209
    • CocoaPods version 1.9.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 49.0.2
    • Dart plugin version 193.7547
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.47.3)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.13.2

[✓] Connected device (3 available)
    • iPhone 11 Pro (mobile) • 66875199-47A5-4314-9488-A77EB481553E • ios            • com.apple.CoreSimulator.SimRuntime.iOS-13-5 (simulator)
    • Web Server (web)       • web-server                           • web-javascript • Flutter Tools
    • Chrome (web)           • chrome                               • web-javascript • Google Chrome 85.0.4183.121

• No issues found!

Hi @peterlauri
I cannot reproduce this issue on the latest master channel.
Can you please upgrade to the latest  master and try again
flutter channel master
flutter upgrade --force
flutter doctor -v

code sample
import 'package:flutter/material.dart';
import 'package:http/http.dart' as http;

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
        visualDensity: VisualDensity.adaptivePlatformDensity,
      ),
      home: MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  MyHomePage({Key key, this.title}) : super(key: key);

  final String title;

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

class _MyHomePageState extends State<MyHomePage> {
  bool _loading = false;
  int _statusCode;
  bool _catch;
  bool _finally;

  void _incrementCounter() async {
    setState(() {
      _loading = true;
      _statusCode = null;
      _catch = null;
      _finally = null;
    });
    try {
      final response =
          await http.get('https://some-domain-that-does.not.exist.com');
      setState(() {
        _statusCode = response.statusCode;
        _catch = false;
      });
    } catch (err) {
      setState(() {
        _catch = true;
      });
    } finally {
      setState(() {
        _loading = false;
        _finally = true;
      });
    }
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            Text('Press the button to make network call'),
            Text('_loading: $_loading'),
            Text('Status code: ${_statusCode ?? '-'}'),
            Text('Catch: ${_catch ?? '-'}'),
            Text('Finally: ${_finally ?? '-'}'),
          ],
        ),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: _incrementCounter,
        tooltip: 'Increment',
        child: Icon(Icons.cloud_download),
      ), // This trailing comma makes auto-formatting nicer for build methods.
    );
  }
}

flutter doctor -v
[✓] Flutter (Channel master, 1.22.0-10.0.pre.340, on Mac OS X 10.15.6 19G2021
    x86_64, locale en-GB)
    • Flutter version 1.22.0-10.0.pre.340 at
      /Users/tahatesser/Code/flutter_master
    • Framework revision 1fef5912cf (3 hours ago), 2020-09-23 21:37:08 -0700
    • Engine revision dd35b5b659
    • Dart version 2.10.0 (build 2.10.0-156.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK
    version 30.0.2)
    • Android SDK at /Users/tahatesser/Code/sdk
    • Platform android-30, build-tools 30.0.2
    • ANDROID_HOME = /Users/tahatesser/Code/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0, Build version 12A7209
    • CocoaPods version 1.9.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google
      Chrome

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 49.0.2
    • Dart plugin version 193.7547
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.49.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.14.1

[✓] Connected device (4 available)
    • iPhone 11 (mobile) • 9A8EFBFE-A806-4FF9-ACA5-F3F98D94979D • ios            •
      com.apple.CoreSimulator.SimRuntime.iOS-14-0 (simulator)
    • macOS (desktop)    • macos                                • darwin-x64     • Mac OS X
      10.15.6 19G2021 x86_64
    • Web Server (web)   • web-server                           • web-javascript • Flutter
      Tools
    • Chrome (web)       • chrome                               • web-javascript • Google
      Chrome 85.0.4183.102

• No issues found!

Hi @peterlauri
I cannot reproduce this issue on the latest master channel.
Can you please upgrade to the latest master and try again
flutter channel master
flutter upgrade --force
flutter doctor -v
code sample
flutter doctor -v

I can confirm your finding, that in master channel it works as expected.
We have to stick to stable version for now, but that breaks our Web support :( But there is a nice workaround to use stable channel with web, so we are fine for now...

Hi @peterlauri
Thank for confirming, since this is no longer reproducible on the latest master
given your last message I feel safe to close this issue, if you disagree please write in the comments and I will reopen it.
Thank you

Yes it is ok to close this. However, how to actually get feedback when the
fix is in beta? Is there any referenced commit / PR that one can follow to
understand when it is in beta?
On Fri, Sep 25, 2020 at 8:26 AM Taha Tesser<EMAIL_ADDRESS>wrote:

Hi @peterlauri https://github.com/peterlauri
Thank for confirming, since this is no longer reproducible on the latest
master
given your last message I feel safe to close this issue, if you disagree
please write in the comments and I will reopen it.
Thank you
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/flutter/flutter/issues/66488#issuecomment-698727189,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA22EQLRXC4EEYNN4XE7Y53SHQSWPANCNFSM4RXQDLSQ
.

The easiest way is to track beta branch commits but without knowledge which commit fixed that it's hard to tell :/

@peterlauri Can you try on latest beta 1.22.0-12.3.pre?  We think it may be fixed there.

@peterlauri Can you try on latest beta 1.22.0-12.3.pre? We think it may be fixed there.

@jmagman confirmed that the test case works on 1.22.0-12.3.pre. Thanks 😍


Include shelter information in upcoming and previous shifts pages

Is this task related to a feature or a bug? Please include relevant issue numbers below.
Once issue #32 is resolved, calls to /shifts endpoint returns shifts data with facility information. This facility information needs to be integrated into the client side application. Currently, the client side application shows only facility id for each shift.
Describe the solution you'd like
We can start by including the following information in the client side application (per shift):
name,
address
website
phone
Additional context
The facility_info field returned with each shift contains all the facility data we get from the GetHelp API, including the gps coordinates. Later, when we address issue #24 we can use this data to show shifts on the map.

Hi @kate-holdener , I would like to work on this issue. Can you please assign it to me?

@Pooja1672 , how's it going on this issue? Were you able to run the code in a dev environment and replicate the issue?

@Pooja1672 Are you still planning to work on this issue? If not, we'll reassign it to someone else.


ODPI-30. Write iTest tests for validating ODPi spec compliance

A bunch of new tests are added. There are some conflict, which are easy to resolve.

Manually merged and pushed into the receiving branch.


ncm2_filter set_dup bug removes non duplicates.

I am using Intelephense and in my completion popup I have a middleware methodand a middleware property
call ncm2#override_source('intelephense', {'filter': [{'name': 'set_dup', 'value': 0}]})
the middleware method is removed from the completion list

Not a bug.
The duty of set_dup is to set the dup field of :help complete-items.

Sorry new to vim and setting up my own autocompletion but how can It be a feature to remove a function from the completion list if it isn't a duplicate?
They are separate, they just share the same name where one is a variable and the other is a function.
Could you check the type matches before adding it as a duplicate?

@roxma

By calling override_source the second from the top is removed as a duplicate when it shouldn't.

As mentioned in :help complete-items

   dup             when non-zero this match will be added even when an
                   item with the same word is already present.

This is vim builtin feature. If you want customized behavior, you could write another filter like https://github.com/ncm2/ncm2/commit/b022eafc43a4811cc218a15d62e4fb6ffcb9e3e7
By the way, you don't need to use set_dup if there's no duplication issue.

Thanks for clearing that up but unfortunately i'm not familiar with python.
The language server I am using is using stub files for PHP runtime & extensions header files and that is where I am getting the duplicates from.

Please test https://github.com/ncm2/ncm2/pull/145

Working :) thanks again, i'll close this now.


WIP: Map-reduce

Fixed the mean method. Also added the mapreduce method.
The count example seemed obsolete since it used an Accumulator, so I replaced it with a map-reduce example.
Should I move the keyword argument as mentioned in #13 ? I can also write tests for map-reduce.jl if required.

Coverage decreased (-0.06%) to 42.742% when pulling a2a789a634fd7e6e3aec0ec83fdf98f068b97e7e on pranavtbhat:master into cd96debfdeeea37c66b3cdf1102e551fa9616f64 on shashi:master.

Next time, do split the commits.
I don't fully understand what would happen if I set get_result=false in reduce?

I think only the metadata will be returned when the thunk is computed. But since most applications of reduce will just result in a value, I think get_result can just be set to true.
Moving the keyword argument to the exported reduce function will give the user most flexibility I guess.

We should just export reduceblock
On Mon 25 Apr, 2016, 3:43 PM Pranav Thulasiram Bhat, <
<EMAIL_ADDRESS>wrote:

I think only the metadata will be returned when the thunk is computed. But
since most applications of reduce will just result in a value, I think
get_result can just be set to true.
Moving the keyword argument to the exported reduce function will give the
user most flexibility I guess.
—
You are receiving this because you modified the open/close state.
Reply to this email directly or view it on GitHub
https://github.com/shashi/ComputeFramework.jl/pull/28#issuecomment-214248505


defaultTo with uuid_generate_v4() fails due to syntax error

Environment
Knex version: 0.15.1
Database + version: Postgres 9.4+
OS: osx
Bug

Explain what kind of behaviour you are getting and how you think it should do

For migrations, when creating tables, we are using the following
exports.up = async function(knex) {
	await knex.schema.raw('CREATE EXTENSION IF NOT EXISTS "uuid-ossp"');
	return knex.schema.createTable('apps', table => {
		table
			.uuid('id')
			.primary()
			.defaultTo(knex.schema.raw('uuid_generate_v4()'));
		table.string('name');

	});
};

The expected SQL for this should be
create table "apps" ("id" uuid default uuid_generate_v4(),  "name" varchar(255))
But the output is the following
create table "apps" ("id" uuid default 'uuid_generate_v4()',  "name" varchar(255))
Notice the quotations around the uuid_generator_v4().
This is causing the following error to occur:
invalid input syntax for type uuid: "uuid_generate_v4()"

Error message

invalid input syntax for type uuid: "uuid_generate_v4()"

Reduced test code, for example in https://npm.runkit.com/knex or if it needs real
database connection to mysql or postgresql, then single file example which initializes
needed data and demonstrates the problem.

// knexfile.js
{
  development: {
  		client: 'pg',
  		version: '7.2',
  		connection: {
  			host: process.env.PGHOST,
  			user: process.env.PGUSER,
  			password: process.env.PGPASSWORD,
  			database: process.env.PGDATABASE,
  		},
  		pool: { min: 0, max: 10 }, //TODO need to look further into this.
  		migrations: {
  			tableName: 'migrations',
  		},
  },
}

// migration file in /migrations directory
exports.up = async function(knex) {
	await knex.schema.raw('CREATE EXTENSION IF NOT EXISTS "uuid-ossp"');
	return knex.schema.createTable('apps', table => {
		table
			.uuid('id')
			.primary()
			.defaultTo(knex.schema.raw('uuid_generate_v4()'));
		table.string('name');

	});
};

Use knex.raw instead of knex.schema .raw

yup, knex .schema.raw is for adding complete raw queries to schema builder, not for creating parts of query builder.

Looks like this worked. Thanks!


Add a .editorconfig file

This should minimize the needs for commits like https://github.com/OPMDG/check_pgactivity/commit/38f3814ecf9ffa64d5cc5316018f3fd4c625b96e.

Thanks for the review!


No inverter mode/Eco soc with latest versions 5048D-ES

Hi, firstly thanks for making a great plugin, I have been using it for a long time to control my goodwe 5048D_ES system.
I was running v <IP_ADDRESS> with no problems prior, stuck with an old version due to issues goodwe had updating the inverter firmware, which turned out to be related to a weak wifi signal somehow stopping the process. I sorted that out recently and finally have the latest ARM (v20) and DSP (2626?) on the inverter. So great, I could finally upgrade to the newest plugin and get the ECO mode SOC features etc added after <IP_ADDRESS>.
I noticed after updating to the newest HA (2024.2?), the inverter control function became unavailable. (still running plugin code <IP_ADDRESS>), in the log I get the following:
2024-02-12 10:26:02.672 DEBUG (MainThread) [goodwe] Connecting to ES family inverter at <IP_ADDRESS>.
2024-02-12 10:26:02.678 DEBUG (MainThread) [goodwe.inverter] Creating lock instance for current event loop.
2024-02-12 10:26:02.698 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0102000241
2024-02-12 10:26:03.082 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc001824d3233323345475735303438442d45532331302020202020202020202020202039353034384553553232335730303131333630303431302d30343032352d3236493431302d30323033342d323001120f
2024-02-12 10:26:03.086 DEBUG (MainThread) [goodwe] Connected to inverter GW5048D-ES, S/N:95048ESU223W0011.
2024-02-12 10:26:03.091 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0106000245
2024-02-12 10:26:03.841 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc001868c0c28003a020c34002f0202180002005000e601c60064006400001f001f5d030000010916001e0003138a0100680000029f138a01020192000000000001c092000031f7004300430001764b02ad01003000000000010000001d01100800000018020c0a1a020000000000000000000000000000000000000000000000000000ebcc0000ea170200000000000012ac
2024-02-12 10:26:03.845 DEBUG (MainThread) [custom_components.goodwe] Finished fetching GoodWe data in 0.757 seconds (success: True)
2024-02-12 10:26:03.860 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0109000248
2024-02-12 10:26:03.868 ERROR (MainThread) [homeassistant.components.select] Error while setting up goodwe platform for select
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 344, in _async_setup_platform
await asyncio.shield(task)
File "/config/custom_components/goodwe/select.py", line 53, in async_setup_entry
OPERATION_MODE.options = [
^^^^^^^^^^^^^^^^^^^^^^
File "", line 4, in setattr
dataclasses.FrozenInstanceError: cannot assign to field 'options'
2024-02-12 10:26:04.299 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc00189560000000000000000000000000001000100000001000a013b022900f0008001e0000a000f0000000000000064024003e8001e00ea0ed8000000000000023f000000070000000000000001038403e801e0000a000000220c43
2024-02-12 10:26:04.311 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0109000248
2024-02-12 10:26:04.649 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc00189560000000000000000000000000001000100000001000a013b022900f0008001e0000a000f0000000000000064024003e8001e00ea0ed8000000000000023f000000070000000000000001038403e801e0000a000000220c43
Ok, I thought maybe there is an issue with the old plugin and the new HA. So I updated to the newest plugin (<IP_ADDRESS>), however I still get the same issue, no inverter control, and no Eco mode SOC settings etc. In the log I get the following:
2024-02-12 10:32:03.914 DEBUG (MainThread) [goodwe] Connecting to ES family inverter at <IP_ADDRESS>.
2024-02-12 10:32:03.915 DEBUG (MainThread) [goodwe.inverter] Creating lock instance for current event loop.
2024-02-12 10:32:03.919 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0102000241
2024-02-12 10:32:04.528 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc001824d3233323345475735303438442d45532331302020202020202020202020202039353034384553553232335730303131333630303431302d30343032352d3236493431302d30323033342d323001120f
2024-02-12 10:32:04.539 DEBUG (MainThread) [goodwe] Connected to inverter GW5048D-ES, S/N:95048ESU223W0011.
2024-02-12 10:32:04.543 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0106000245
2024-02-12 10:32:04.660 WARNING (MainThread) [homeassistant.bootstrap] Waiting on integrations to complete setup: goodwe
2024-02-12 10:32:04.994 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc001868c0c22003c020c1a00310202180002005000f001d00064006400002100215d030000010909001b0004138b01006700000260138b0102019c000000000001c093000031f7004400440001764c027501003000000000010000002f01100800000018020c0a20030000000000000000000000000000000000000000000000000000ebce0000ea1702000000000000124c
2024-02-12 10:32:04.999 DEBUG (MainThread) [custom_components.goodwe.coordinator] Finished fetching GoodWe data in 0.460 seconds (success: True)
2024-02-12 10:32:05.243 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0109000248
2024-02-12 10:32:05.903 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc00189560000000000000000000000000001000100000001000a013b022900f0008001e0000a000f0000000000000064024003e8001e00ea0ed8000000000000023f000000070000000000000001038403e801e0000a000000220c43
2024-02-12 10:32:05.909 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0109000248
2024-02-12 10:32:06.358 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc00189560000000000000000000000000001000100000001000a013b022900f0008001e0000a000f0000000000000064024003e8001e00ea0ed8000000000000023f000000070000000000000001038403e801e0000a000000220c43
2024-02-12 10:32:06.366 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0109000248
2024-02-12 10:32:06.929 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc00189560000000000000000000000000001000100000001000a013b022900f0008001e0000a000f0000000000000064024003e8001e00ea0ed8000000000000023f000000070000000000000001038403e801e0000a000000220c43
2024-02-12 10:32:06.936 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0109000248
2024-02-12 10:32:07.334 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc00189560000000000000000000000000001000100000001000a013b022900f0008001e0000a000f0000000000000064024003e8001e00ea0ed8000000000000023f000000070000000000000001038403e801e0000a000000220c43
2024-02-12 10:32:07.341 DEBUG (MainThread) [goodwe.protocol] Sending: f703b9bb00068427
2024-02-12 10:32:07.403 DEBUG (MainThread) [goodwe.protocol] Received: aa55f7030c0000173b007f0000383453454d22
2024-02-12 10:32:07.405 DEBUG (MainThread) [custom_components.goodwe.select] Could not read inverter operation mode
Traceback (most recent call last):
File "/config/custom_components/goodwe/select.py", line 60, in async_setup_entry
eco_mode = await inverter.read_setting("eco_mode_1")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/goodwe/es.py", line 226, in read_setting
return setting.read_value(response)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/goodwe/sensor.py", line 528, in read_value
raise ValueError(f"{self.id_}: SoC value {self.soc} out of range.")
ValueError: eco_mode_1: SoC value 14388 out of range.
2024-02-12 10:32:07.417 DEBUG (MainThread) [goodwe.protocol] Sending: f703b9bb00068427
2024-02-12 10:32:07.483 DEBUG (MainThread) [goodwe.protocol] Received: aa55f7030c0000173b007f0000383453454d22
2024-02-12 10:32:07.487 DEBUG (MainThread) [custom_components.goodwe.number] Could not read inverter setting eco_mode_power
2024-02-12 10:32:07.491 DEBUG (MainThread) [goodwe.protocol] Sending: f703b9bb00068427
2024-02-12 10:32:07.562 DEBUG (MainThread) [goodwe.protocol] Received: aa55f7030c0000173b007f0000383453454d22
2024-02-12 10:32:07.565 DEBUG (MainThread) [custom_components.goodwe.number] Could not read inverter setting eco_mode_soc
I also noticed the diagnostics for the new version seem to be reported the incorrect ARM version (v14) rather than V20 which I have confirmed with goodwe and another utility.
Any idea what might be going on here or how I could fix it ?
cheers

v14 is raw hex value - i.e. 20 decimal, so it's ok.
The trouble is that 14388 SoC reported by the inverter - there is a check for 0-100, so something is odd there, need to inverstigate.

The 14388 of SoC makes no sense, it smell like if it some odd non-initialized value ?!
You should try to set the EcoMode with the SolarGo application first (to ensure the register are properly initialized ??).
And then restart the HA and check again

thanks for the reply !
I will try that and get back to you. I wonder, is there a way I can access the older version in HACS for rolling back? at the moment the oldest HACS shows is <IP_ADDRESS>, so if I change I need to do a full HA restore to get the <IP_ADDRESS> back which is working well!!

If it helps, I noticed that my "inverter mode" is also greyed out on the latest version. However my ECO SoC control is there.
I noticed that this issue comes and goes and I haven't really been able to track down what triggers this. It started around the time I logged #219

@robotz0mbie Yes, the v<IP_ADDRESS> requires HA 2024.2, I've just forgot to increase required version in manifest.
As for the rollback to old version, well never tried/needed that so I'm not sure.
@tinuva There is kind of explanation of the instabilities.
During startup, the integration tries to figure out supported features by invoking couple of commands.
If the command fails - it is assumed it is not supported by the inverter and gets greyed out or hidden.
The trouble is with the unreliable nature of the UDP protocol.
There are 3 retries in the communication code, but if you encounter some network instability during startup, it may lead to false negatives.
That's why after restart it sometimes appears and sometime disappears, depending if the responses cam in time/correct.

hmmm so I did some more testing. I installed a fresh HA instance on another Rpi, installed HACS and the latest version of the plugin. Disabled the plugin on my main HA, out of the box I get the same error on the new install (no operation mode, eco soc etc, 61/65 entities)
2024-02-16 09:16:54.503 DEBUG (MainThread) [goodwe] Connecting to ES family inverter at <IP_ADDRESS>.
2024-02-16 09:16:54.504 DEBUG (MainThread) [goodwe.inverter] Creating lock instance for current event loop.
2024-02-16 09:16:54.506 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0102000241
2024-02-16 09:16:55.178 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc001824d3233323345475735303438442d45532331302020202020202020202020202039353034384553553232335730303131333630303431302d30343032352d3236493431302d30323033342d323001120f
2024-02-16 09:16:55.180 DEBUG (MainThread) [goodwe] Connected to inverter GW5048D-ES, S/N:95048ESU223W0011.
2024-02-16 09:16:55.183 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0106000245
2024-02-16 09:16:55.748 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc001868c0d00000b020cba000a0202000002005000d2001d0065006400000e000e5d03000001091e00160003138b010067000001de138b01020118000000000001c46b00003256003900260001788201ea0100300000000001000000250100080000001802100910340000000000000000000000000000000000000000000000000000edb20000ec1802000000000000111e
2024-02-16 09:16:55.751 DEBUG (MainThread) [custom_components.goodwe.coordinator] Finished fetching GoodWe data in 0.570 seconds (success: True)
2024-02-16 09:16:55.762 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0109000248
2024-02-16 09:16:56.228 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc00189560000000000000000000000000001000100000001000a013b022900f0008001e0000a000f0000000000000064024003e8001e00ea0ed8000000000000023f000000070000000000000001038403e801e0000a000000220c43
2024-02-16 09:16:56.232 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0109000248
2024-02-16 09:16:56.557 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc00189560000000000000000000000000001000100000001000a013b022900f0008001e0000a000f0000000000000064024003e8001e00ea0ed8000000000000023f000000070000000000000001038403e801e0000a000000220c43
2024-02-16 09:16:56.561 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0109000248
2024-02-16 09:16:56.963 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc00189560000000000000000000000000001000100000001000a013b022900f0008001e0000a000f0000000000000064024003e8001e00ea0ed8000000000000023f000000070000000000000001038403e801e0000a000000220c43
2024-02-16 09:16:56.967 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0109000248
2024-02-16 09:16:57.302 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc00189560000000000000000000000000001000100000001000a013b022900f0008001e0000a000f0000000000000064024003e8001e00ea0ed8000000000000023f000000070000000000000001038403e801e0000a000000220c43
2024-02-16 09:16:57.307 DEBUG (MainThread) [goodwe.protocol] Sending: f703b9bb00068427
2024-02-16 09:16:57.367 DEBUG (MainThread) [goodwe.protocol] Received: aa55f7030c0000173b007f0000383453454d22
2024-02-16 09:16:57.368 DEBUG (MainThread) [custom_components.goodwe.select] Could not read inverter operation mode
Traceback (most recent call last):
File "/config/custom_components/goodwe/select.py", line 60, in async_setup_entry
eco_mode = await inverter.read_setting("eco_mode_1")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/goodwe/es.py", line 226, in read_setting
return setting.read_value(response)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/goodwe/sensor.py", line 528, in read_value
raise ValueError(f"{self.id_}: SoC value {self.soc} out of range.")
ValueError: eco_mode_1: SoC value 14388 out of range.
2024-02-16 09:16:57.381 DEBUG (MainThread) [goodwe.protocol] Sending: f703b9bb00068427
2024-02-16 09:16:57.442 DEBUG (MainThread) [goodwe.protocol] Received: aa55f7030c0000173b007f0000383453454d22
2024-02-16 09:16:57.444 DEBUG (MainThread) [custom_components.goodwe.number] Could not read inverter setting eco_mode_power
2024-02-16 09:16:57.447 DEBUG (MainThread) [goodwe.protocol] Sending: f703b9bb00068427
2024-02-16 09:16:57.508 DEBUG (MainThread) [goodwe.protocol] Received: aa55f7030c0000173b007f0000383453454d22
2024-02-16 09:16:57.509 DEBUG (MainThread) [custom_components.goodwe.number] Could not read inverter setting eco_mode_soc
2024-02-16 09:17:00.969 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0106000245
2024-02-16 09:17:01.468 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc001868c0cc4000c020cce000a0202000002005000d200190065006400000e000e5d03000001091b00170003138a010067000001da138a01020117000000000001c46b00003256003900260001788201ee01003000000000010000002f01000800000018021009103a0000000000000000000000000000000000000000000000000000edb20000ec180200000000000011fd
2024-02-16 09:17:01.471 DEBUG (MainThread) [custom_components.goodwe.coordinator] Finished fetching GoodWe data in 0.503 seconds (success: True)
2024-02-16 09:17:05.970 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0106000245
I then tried @mletenay idea of initialising with the inverter in eco mode. I disabled the plugin on the new install, enabled on the old install. Set the inverter to eco discharge mode. Disabled the plugin on the old, and re-initialised the plugin on the new install. Showed up in discharge mode as expected, but the same SoC error.
2024-02-16 09:19:06.638 DEBUG (MainThread) [goodwe] Connecting to ES family inverter at <IP_ADDRESS>.
2024-02-16 09:19:06.638 DEBUG (MainThread) [goodwe.inverter] Creating lock instance for current event loop.
2024-02-16 09:19:06.642 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0102000241
2024-02-16 09:19:07.020 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc001824d3233323345475735303438442d45532331302020202020202020202020202039353034384553553232335730303131333630303431302d30343032352d3236493431302d30323033342d323001120f
2024-02-16 09:19:07.022 DEBUG (MainThread) [goodwe] Connected to inverter GW5048D-ES, S/N:95048ESU223W0011.
2024-02-16 09:19:07.025 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0106000245
2024-02-16 09:19:07.589 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc001868c0cca000c020ca6000a0201fe0002005000d2006d0065006400000e000e5d020000010928003202c2138a010067000001d4138a0102011a000000000001c46b000032560039002600017882049701003001000000010000037a0108085000001802100913040000000000000000000000000000000000000000000000000000edb20000ec18020000000000001431
2024-02-16 09:19:07.592 DEBUG (MainThread) [custom_components.goodwe.coordinator] Finished fetching GoodWe data in 0.569 seconds (success: True)
2024-02-16 09:19:07.602 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0109000248
2024-02-16 09:19:07.939 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc00189560000000000000000173b000b0001000100000001000a013b022900f0008001e0000a000f0000000000000064024003e8001e00ea0ed8000000000000023f000000070003000000000001038403e801e0000a000000220ca3
2024-02-16 09:19:07.943 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0109000248
2024-02-16 09:19:08.393 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc00189560000000000000000173b000b0001000100000001000a013b022900f0008001e0000a000f0000000000000064024003e8001e00ea0ed8000000000000023f000000070003000000000001038403e801e0000a000000220ca3
2024-02-16 09:19:08.397 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0109000248
2024-02-16 09:19:08.799 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc00189560000000000000000173b000b0001000100000001000a013b022900f0008001e0000a000f0000000000000064024003e8001e00ea0ed8000000000000023f000000070003000000000001038403e801e0000a000000220ca3
2024-02-16 09:19:08.803 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0109000248
2024-02-16 09:19:09.443 DEBUG (MainThread) [goodwe.protocol] Received: aa557fc00189560000000000000000173b000b0001000100000001000a013b022900f0008001e0000a000f0000000000000064024003e8001e00ea0ed8000000000000023f000000070003000000000001038403e801e0000a000000220ca3
2024-02-16 09:19:09.447 DEBUG (MainThread) [goodwe.protocol] Sending: f703b9bb00068427
2024-02-16 09:19:09.508 DEBUG (MainThread) [goodwe.protocol] Received: aa55f7030c0000173bff7f0000383453450226
2024-02-16 09:19:09.510 DEBUG (MainThread) [custom_components.goodwe.select] Could not read inverter operation mode
Traceback (most recent call last):
File "/config/custom_components/goodwe/select.py", line 59, in async_setup_entry
active_mode = await inverter.get_operation_mode()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/goodwe/es.py", line 291, in get_operation_mode
ecomode = await self.read_setting('eco_mode_1')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/goodwe/es.py", line 226, in read_setting
return setting.read_value(response)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/goodwe/sensor.py", line 528, in read_value
raise ValueError(f"{self.id_}: SoC value {self.soc} out of range.")

This time, there are no errors in the log, and the inverter mode control is available. However, no Eco mode SoC settings available.


community-platforms: add scaleway

Scaleway documentation: from the upload to the deployment.
TODO:

[x] Mention Terraform example
[x] Mention Kosmos (with node agent example)
[x] Deployment example with CLI (needs: https://github.com/scaleway/scaleway-cli/pull/3787)

:warning: Wait for next release before merging this as we need to provide qcow2 images to be in sync with the documentation

is this the only thing to fix to declare support?


FR: Separate deps and devDeps after running yarn eject

After running yarn eject....
Is there are reason why all dependencies are in "dependencies": { ... }? Things like webpack, eslint, and others should go in "devDependencies": { ... }. So, I guess the feature request would be to separate deps based on where they normally go, unless there is an existing option that I haven't seen in the docs.

#2696

This is intentional because everything would be a development dependency, and the ecosystem works better under dependencies for things like Heroku etc, see the issue linked above.


Add readme how to install provider

Literally no info anywhere

Looks like something was merged in https://github.com/crossplane-contrib/provider-sql/pull/174


Reformat Apache 2.0 headers (remove #%L things)

After thinking about it. Those %L things are used by Maven license plugin to include and update the LIC text. So what is the reason to remove it?

Never used the maven license Plugin 😇. In the context of Eclipse Winery,
we use IntelliJ's code header functionality or update the headers manually:
Each class has the year of the last change.
The main reason was consistency to the other classes in the project.
I see three options:
A) leave as is and update CONTRIBUTING.MD
B) Change all headers to maven style
C) Change all headers to a single line SPDX Identifier, which does not hold
any year. The copyright holders are contained in the root LICENSE file.
Option C makes it easy to maintain, but hard for license scanners. Option A
is IMHO the least WTF, but harder to maintain. Need to check whether the
maven plugin can use some other search expression (similar to IntelliJ) so
that option A is also possible
Tobias<EMAIL_ADDRESS>schrieb am Mo., 29. Okt. 2018, 06:50:

After thinking about it. Those %L things are used by Maven license plugin
to include and update the LIC text. So what is the reason to remove it?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/wumpz/java-diff-utils/pull/28#issuecomment-433795524,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABTaflxyqv6NKL2UrxZsifMEWVNYv2hAks5uppc3gaJpZM4X-DTB
.