Unable to create locations with php api

Hello
We are building a web app to help us create locations for our business easily from our php web app, we can succefully list all accounts so the api is connected, but when creating a location im getting this:
And this is our error from api:
Google_Service_Exception: { "error": { "code": 400, "message": "Request contains an invalid argument.", "errors": [ { "message": "Request contains an invalid argument.", "domain": "global", "reason": "badRequest" } ], "status": "INVALID_ARGUMENT" } } in Google_Http_REST::decodeHttpResponse() (line 118 of /var/www/html/portal/vendor/google/apiclient/src/Google/Http/REST.php).
This is the source code:
$accounts = $gmbService->accounts->listAccounts();

        $location = new \Google_Service_Mybusiness_Location();
        $address = new \Google_Service_MyBusiness_PostalAddress();
        $address->setAddressLines("Panacan, Bunawan, Davao City, Philippines");
        $address->setLocality("Davao City");
        $address->setAdministrativeArea("Davao Region");
        $address->setPostalCode("8000");
        $location->setAddress($address);
        $businessHours = new \Google_Service_MyBusiness_BusinessHours();
        $timePeriods = array();
        $days = array("Monday", "Tuesday", "Wednesday", "Thursday", "Friday");
        foreach ($days as $day) {
        $timePeriod = new \Google_Service_Mybusiness_TimePeriod();
        $timePeriod->setOpenDay($day);
        $timePeriod->setOpenTime("9:00");
        $timePeriod->setCloseTime("17:00");
        $timePeriod->setCloseDay($day);
        $timePeriods[] = $timePeriod; }
        $businessHours->setPeriods($timePeriods);
        $latlng = new \Google_Service_MyBusiness_LatLng();
        $latlng->setLatitude("7.152355899999999"); $latlng->setLongitude("125.65878989999999");
        $location->setRegularHours($businessHours);
        $location->setLocationName("Panacan, Bunawan, Davao City, Philippines");
        $location->setStoreCode($data_gmb["store_code"]);
        $location->setPrimaryPhone($data_gmb["primary_phone"]);
        $primaryCategory = new \Google_Service_Mybusiness_Category();
        $primaryCategory->setDisplayName("F45 name");
        $primaryCategory->setCategoryId("gcid:gym");
        $location->setPrimaryCategory($primaryCategory);
        $location->setWebsiteUrl("https://test.com/");
        $labels = array("Recently opened", "High-traffic"); $location->setLabels($labels);

        $getLocations = $gmbService->googleServiceMyBusiness->accounts_locations->create(
        $accounts[0]['name'], $location
        );

Any help? the php library doesnt have descriptive errors.

It's difficult to determine from this snippet precisely what is wrong. I suggest you log the request body (example below) and compare the JSON data to the documented specification to attempt to determine where the error lies.
Here's an example of sending the request and logging the body:
use GuzzleHttp\Client;
use GuzzleHttp\HandlerStack;
use GuzzleHttp\Middleware;

$container = [];
$history = Middleware::history($container);
$stack = HandlerStack::create();
$stack->push($history);

$guzzle = new Client(['handler' => $stack]);
$client->setHttpClient($guzzle);

try {
    $gmbService->googleServiceMyBusiness->accounts_locations->create(
        $accounts[0]['name'], $location
    );
} catch (Exception $e) {
    echo (string) $container[0]['request']->getBody();
}

Feel free to share the request body if you're unable to find the problem. Make sure to redact any private information.

Hello, and thank you for your reply, yes this is the result of the objtect location im creating with php:
This is the print _r of $location variable after creating the objects.
Google_Service_MyBusiness_Location Object
(
    [collection_key:protected] => priceLists
    [internal_gapi_mappings:protected] => Array
        (
        )

    [adWordsLocationExtensionsType:protected] => Google_Service_MyBusiness_AdWordsLocationExtensions
    [adWordsLocationExtensionsDataType:protected] =>
    [additionalCategoriesType:protected] => Google_Service_MyBusiness_Category
    [additionalCategoriesDataType:protected] => array
    [additionalPhones] =>
    [addressType:protected] => Google_Service_MyBusiness_PostalAddress
    [addressDataType:protected] =>
    [attributesType:protected] => Google_Service_MyBusiness_Attribute
    [attributesDataType:protected] => array
    [labels] => Array
        (
            [0] => Recently opened
            [1] => High-traffic
        )

    [languageCode] => en-AU
    [latlngType:protected] => Google_Service_MyBusiness_LatLng
    [latlngDataType:protected] =>
    [locationKeyType:protected] => Google_Service_MyBusiness_LocationKey
    [locationKeyDataType:protected] =>
    [locationName] => Google Sydney
    [locationStateType:protected] => Google_Service_MyBusiness_LocationState
    [locationStateDataType:protected] =>
    [metadataType:protected] => Google_Service_MyBusiness_Metadata
    [metadataDataType:protected] =>
    [name] => Test
    [openInfoType:protected] => Google_Service_MyBusiness_OpenInfo
    [openInfoDataType:protected] =>
    [priceListsType:protected] => Google_Service_MyBusiness_PriceList
    [priceListsDataType:protected] => array
    [primaryCategoryType:protected] => Google_Service_MyBusiness_Category
    [primaryCategoryDataType:protected] =>
    [primaryPhone] => 02 9374 4000
    [profileType:protected] => Google_Service_MyBusiness_Profile
    [profileDataType:protected] =>
    [regularHoursType:protected] => Google_Service_MyBusiness_BusinessHours
    [regularHoursDataType:protected] =>
    [relationshipDataType:protected] => Google_Service_MyBusiness_RelationshipData
    [relationshipDataDataType:protected] =>
    [serviceAreaType:protected] => Google_Service_MyBusiness_ServiceAreaBusiness
    [serviceAreaDataType:protected] =>
    [specialHoursType:protected] => Google_Service_MyBusiness_SpecialHours
    [specialHoursDataType:protected] =>
    [storeCode] => GOOG-SYD
    [websiteUrl] => https://www.google.com.au/
    [modelData:protected] => Array
        (
        )

    [processed:protected] => Array
        (
        )

    [address] => Google_Service_MyBusiness_PostalAddress Object
        (
            [collection_key:protected] => recipients
            [internal_gapi_mappings:protected] => Array
                (
                )

            [addressLines] => Level 5, 48 Pirrama Road
            [administrativeArea] => NSW
            [languageCode] =>
            [locality] => Pyrmont
            [organization] =>
            [postalCode] => 2009
            [recipients] =>
            [regionCode] => AU
            [revision] =>
            [sortingCode] =>
            [sublocality] =>
            [modelData:protected] => Array
                (
                )

            [processed:protected] => Array
                (
                )

        )

    [regularHours] => Google_Service_MyBusiness_BusinessHours Object
        (
            [collection_key:protected] => periods
            [internal_gapi_mappings:protected] => Array
                (
                )

            [periodsType:protected] => Google_Service_MyBusiness_TimePeriod
            [periodsDataType:protected] => array
            [modelData:protected] => Array
                (
                )

            [processed:protected] => Array
                (
                )

            [periods] => Array
                (
                    [0] => Google_Service_MyBusiness_TimePeriod Object
                        (
                            [internal_gapi_mappings:protected] => Array
                                (
                                )

                            [closeDay] => Monday
                            [closeTime] => 17:00
                            [openDay] => Monday
                            [openTime] => 9:00
                            [modelData:protected] => Array
                                (
                                )

                            [processed:protected] => Array
                                (
                                )

                        )

                    [1] => Google_Service_MyBusiness_TimePeriod Object
                        (
                            [internal_gapi_mappings:protected] => Array
                                (
                                )

                            [closeDay] => Tuesday
                            [closeTime] => 17:00
                            [openDay] => Tuesday
                            [openTime] => 9:00
                            [modelData:protected] => Array
                                (
                                )

                            [processed:protected] => Array
                                (
                                )

                        )

                    [2] => Google_Service_MyBusiness_TimePeriod Object
                        (
                            [internal_gapi_mappings:protected] => Array
                                (
                                )

                            [closeDay] => Wednesday
                            [closeTime] => 17:00
                            [openDay] => Wednesday
                            [openTime] => 9:00
                            [modelData:protected] => Array
                                (
                                )

                            [processed:protected] => Array
                                (
                                )

                        )

                    [3] => Google_Service_MyBusiness_TimePeriod Object
                        (
                            [internal_gapi_mappings:protected] => Array
                                (
                                )

                            [closeDay] => Thursday
                            [closeTime] => 17:00
                            [openDay] => Thursday
                            [openTime] => 9:00
                            [modelData:protected] => Array
                                (
                                )

                            [processed:protected] => Array
                                (
                                )

                        )

                    [4] => Google_Service_MyBusiness_TimePeriod Object
                        (
                            [internal_gapi_mappings:protected] => Array
                                (
                                )

                            [closeDay] => Friday
                            [closeTime] => 17:00
                            [openDay] => Friday
                            [openTime] => 9:00
                            [modelData:protected] => Array
                                (
                                )

                            [processed:protected] => Array
                                (
                                )

                        )

                )

        )

    [primaryCategory] => Google_Service_MyBusiness_Category Object
        (
            [internal_gapi_mappings:protected] => Array
                (
                )

            [categoryId] => gcid:software_company
            [displayName] => Prueba
            [modelData:protected] => Array
                (
                )

            [processed:protected] => Array
                (
                )

        )

)

And this is the create parameter
$gmbService->googleServiceMyBusiness->accounts_locations->create(
$accounts[0]['name'], $location
);

I was able to get this solved by adding the error display on Rest.php
$httpHandler = HttpHandlerFactory::build($client);

Glad to hear it! Let us know if you have other problems.

@lucasvm can you please guide how you fixed it what is wrong with your code I am trying to create but it's not showing on my account no error with my code but your code gives me same error you got.

You need to pass the account number , not sure what framework are you using, im under Drupal 8
**$createLocation = $gmbService->googleServiceMyBusiness->accounts_locations->create('accounts/ACCOUNT NUMBER', $location, ['validateOnly' => false, 'requestId' => 'USER CREATED ID']);**


Linking 2 tables cause AutoMigrate in panic

Your Question
I trying to use gorm and got a panic on AutoMigrate call, here is full sample
Here is no check for nil pointer on primaryFields[idx]

The document you expected this should be explained
This document

Expected answer
Here is the error description you can put in PR where you can fix panic yourself: "error description".

Reproducing: go-gorm/playground#223

invalid relation defined here, please refer  https://gorm.io/docs/many_to_many.html

BTW, fixed the panic and returns an error now.


Other chess bots other than Stockfish

Hi! I recall opening an issue about this because I thought it was already implemented, and was confused when it didn't move despite being connected.
I would love to see any engine being used in your program. I'm no developer, but it would really cool for me to be able to use the zappa engine, which is a bot that likes to make moves that seem like blunders but aren't. There are a lot of bots I would love to try out!

Hello @Baconartist. You opened the same issue some time ago (https://github.com/PanagiotisIatrou/chess-auto-bot/issues/35). I closed this because it is a duplicate of https://github.com/PanagiotisIatrou/chess-auto-bot/issues/21 and that's the reason I am going to close this issue too.


Validate date

Hello
is it possible to check if a value entered in the input field is a valid date for the datepicker?
My issue is that i disable a lot of dates for order delivery purpose.  So i need a way to validate the date entered in the datepicker input field, and check that the entered date is not disabled.
Is there any way i can do this?

I'm sorry, but this library had been depracated.


improve performance

Some avenues to consider, in roughly chronological order of observation, include:

Issues #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, and #12 for geomath.
Modify geomath::norm to pass values by mutable reference and update them in place rather than returning a separate value.
Negate geodesic._gen_inverse clam12 on the same line where it's assigned, and make it non-mut.
Explore use of f64.sin_cos() over f64.sin() followed by f64.cos().
Explore use of mem::swap() and relatives in place of things like {let c=a; a=b; b=c;}
Look for places that assign the same calculated value more than once in a row, like:M12 = sig12.cos();
M21 = sig12.cos(); // instead use M21 = M12;

Explore reducing scratch array allocations, through some combination of (a) more reuse and (b) larger allocations followed by slicing.
Review choice of declared types, to reduce need for casting.
Make more use of operation-assign operators, like |=.
For optional inputs, standardize (at least for each individual case) on either None or NAN as the "no value" option, rather than using a 2-step translation process (e.g. None to NAN to calculated default).

None is likely to make much impact individually, but they might add up to something together.
I'll continue adding items to this list as I explore issues with returned values, until we get around to actually trying to make performance improvements.

Actually been attacking these problems on my own.
I Currently have the rust implementation at ~7.06% faster than the reference C implementation. I hope to open a PR by sunday. If the project is interested in these changes.

Wow! I'll be interested to see your changes, though it may take me a bit. I
haven't had much time for this in a while, but I think I can figure out a
way to make some time for it.
On Thu, Jan 18, 2024 at 4:55 PM Cody Laeder @.***>
wrote:

Actually been attacking these problems on my own.
I Currently have the rust implementation at ~7.06% faster than the
reference C implementation. I hope to open a PR by sunday. If the project
is interested in these changes.
—
Reply to this email directly, view it on GitHub
https://github.com/georust/geographiclib-rs/issues/32#issuecomment-1899460590,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABPR6RKLS3F2AEVDI65JZXLYPG77PAVCNFSM4WQKTF52U5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TCOBZHE2DMMBVHEYA
.
You are receiving this because you authored the thread.Message ID:
@.***>


Publish release 0.26.3 to the provider registry

Is it possible to get version 0.26.3 published to the terraform provider registry?
We are hoping to take advantage of the new replication support.

Thanks for calling this out. @alldoami worked on this on Friday and it appears to be releasing properly now. I'll close this for now, but let us know if you have issues using the latest provider version.


Conflict with @angular BrowserAnimationsModule when routing after authentication

Version info
Angular:
@angular/cli: "1.2.0"
Firebase:
firebase": "4.1.3",
AngularFire:
angularfire2: 4.0.0-rc0
How to reproduce these conditions
Steps to set up and reproduce
Add Angular animations and angularfire to angular-cli project:

import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
Navigate on Login
Call router.navigate to change routes after logging in with AngularFireAuth
this.afAuth.auth.signInWithPopup(new firebase.auth.FacebookAuthProvider()).then((data) => { this.router.navigate(['/lobby']); });			 }

Expected behavior
After login/navigate show only component for new route
Actual behavior
After login/navigate components for previous roure and new route are shown. After 10-25 seconds the previous route disappears. If you do multiple successive login/logouts that navigate between Home route and Lobby route the Home and Lobby components multiply
Before:

After-Login:

20 Seconds after login:

After multiple login/logouts

@kelle62819 Can you create an github repo that reproduces this? If so I'll be happy to take a look.

Here you go: https://github.com/kelle62819/conflict
You should see the behavior described. When you take out the BrowserAnimationsModule everything works properly.
Thanks for looking at this.

@davideast Were you able to reproduce this?

I experience the same issue, I use the BrowserAnimationsModule and experience ~20 delay when routing, I also notice that the delay occurs when changing things in the template with a variable.
For example;
this.afAuth.auth.signInWithPopup(new firebase.auth.FacebookAuthProvider()).then((data) => {  this.showThing = true;
And in the template you have
<div * ngIf="showThing">show me</div>
So for some reason is seems that change detection is not triggered for a while after the promise resolves.
It´s possible to workaround it by manually triggering change detection for dom manipulation
`import { ChangeDetectorRef } from '@angular/core';`

constructor(
    private cd: ChangeDetectorRef
  )

this.afAuth.auth.signInWithPopup(new firebase.auth.FacebookAuthProvider()).then((data) => {
this.showThing = true;
this.cd.detectChanges();

Unfortunately it doesn´t work while routing since you are leaving the view and no code after the routing statement will execute, and you can´t trigger change detection in the new view until it´s rendered.
No solution really but I thought it might help and may be easier to troubleshoot looking at change detection with a simple template manipulation than with routing.

+1

+1

I have exactly the same issue !

@kelle62819 Can you try the latest version and see if this is still a problem?
npm i angularfire2@next

I tried upgrading and am running into this error: (not my post, but I am getting the same error)
https://stackoverflow.com/questions/46557694/update-issues-in-angularfire-5-0

@kelle62819 You need to also upgrade to Firebase 4.5.0. Let me know if that works.

Closing but feel free to open a new issue if the problem exists.

I've been very frustrated about this issue. It was happening to me too even when I updated to Angular 5.0.0, AngularFire2 5.0.0-rc.3, and firebase 4.6.1;
I have a login component that does a this.router.navigate(['dashboard']) on successful firebase google login, however both the sign in component and the dashboard components are rendered after the routing event triggers a few seconds after the popup closes. And it only happens when I add the BrowserAnimationsModule to the project. If I remove the module everything works fine.
I tried setTimeout() but it didn't help. I was ready to give up, either choosing to not use the animations module, or to replace the signin setup with a dropdown auth component on the navigation bar on my dashboard instead, however I was googling something else when I found NgZone and I managed to make my desired setup work fine by using zone.run() like:
this.afAuth.auth.signInWithPopup(this.googleProvider)
      .then((result) => {
        // ...

        // Redirecting without this.zone.run() messes up routing, and change detection
        this.zone.run(() => {
          this.router.navigate(['/', 'app', 'dashboard']);
        });
      })

It works for me! no 20 second delay to route, no issues with the 'from' component being left in the DOM, and all my animations work fine!
I hope this helps


bugdown: Clarify walk_tree_with_family via ElementPair NamedTuple.

While reviewing this code to add the cast for mypy 0.570, I thought this code might be clearer with use of a NamedTuple. I left the declaration outside of the function so that it doesn't need to repeatedly generate it.
I had hoped to set the NamedTuple to be defined in terms of itself for the parent type, but this seems to cause recursion and I'm not sure if there is a way around this?
This should be a straight substitution of data structure; it passed travis.

I don't see a way to do what you'd hoped to do either.
Looks good, merged, thanks @neiljp!


Fix UI for detailed client

same issue as https://github.com/AY2223S1-CS2103T-W16-4/tp/pull/204

Codecov Report
Base: 63.41% // Head: 62.77% // Decreases project coverage by -0.63% :warning:

Coverage data is based on head (588ea6a) compared to base (4bb664f).
Patch coverage: 0.00% of modified lines in pull request are covered.

Additional details and impacted files
@@             Coverage Diff              @@
##             master     #205      +/-   ##
============================================
- Coverage     63.41%   62.77%   -0.64%
+ Complexity      635      614      -21
============================================
  Files           111      111
  Lines          2192     2144      -48
  Branches        246      231      -15
============================================
- Hits           1390     1346      -44
- Misses          714      716       +2
+ Partials         88       82       -6

Impacted Files
Coverage Δ

...main/java/seedu/address/ui/ClientDetailedView.java
0.00% <0.00%> (ø)

.../address/logic/parser/ListClientCommandParser.java
38.46% <0.00%> (-14.48%)
:arrow_down:

...eedu/address/logic/commands/ListClientCommand.java
35.29% <0.00%> (-12.54%)
:arrow_down:

...main/java/seedu/address/model/client/Birthday.java
26.66% <0.00%> (-11.18%)
:arrow_down:

...c/main/java/seedu/address/model/client/Client.java
81.81% <0.00%> (-3.75%)
:arrow_down:

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

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Release v1.0.4.rc1

I'll close this un-merged and re-create rc1 branch as the previous tagged build failed with middleman build errors.


Cannot read property 'container' of undefined

Using version 0.18.0 of liquid fire I am seeing an error
Cannot read property 'container' of undefined

Could be something up with my app but error message seems to point to this line of code
https://github.com/ef4/liquid-fire/blob/v0.18.0/app/helpers/liquid-with.js#L7
    helperFunction: function liquidWithHelperFunc(params, hash, options, env) {
      var innerHash = {};
      var View = this.container.lookupFactory("view:liquid-with");
      var innerOptions = {
        hashTypes: {},
        morph: options.morph
      };

... snip ...

Interestingly the above seems to have been removed from master and liquidWithHelperFunc  is no longer in
liquid-fire/ember-internals
Can some one explain what is happening here? Is there something I should look for in my code or just use master branch of liquid fire?

Please see #190 , this is the same issue.


Set hostname from given parameter

Fixes #14

With name:
kontena upcloud node create foobar-1
> Choose availability zone: Amsterdam #1
> Choose plan: 2048MB / 2 CPU, 50GB MaxIOPS disk, 3072GB transfer
 [done] Creating UpCloud node foobar-1
 [done] Waiting for node foobar-1 join to grid test

Without name:
kontena upcloud node create
> Choose availability zone: Amsterdam #1
> Choose plan: 2048MB / 2 CPU, 50GB MaxIOPS disk, 3072GB transfer
 [done] Creating UpCloud node muddy-rain-91
 [done] Waiting for node muddy-rain-91 join to grid test


Use a helper for setting the Succeeded condition on PipelineRun.

These helpers reduce a lot of the boilerplate and give us hooks
where we can eagerly set the CompletionTime field rather than waiting
for updateStatus.
Fixes: https://github.com/tektoncd/pipeline/issues/2741

/kind bug

The only concern left that I have is that we have an issue with setting the completion time today. We want to mark the pipeline failed as early as possible, however taskruns may still be running when that happens, and we need to keep them running until they finish, which means that the completion time does not really reflect the time when the last sub-resource completed.
To fix that issue with this change in place, it means we won't be able to set the pipeline as failed until all TaskRuns completed. Is this an acceptable approach?

yes its a valid concern. I havent looked into this yet (will look into it ASAP) but are we now setting pipeline competition time when a first taskRun failure is noted 🤔
	after := resources.GetPipelineConditionStatus(pr, pipelineState, c.Logger, d)
	pr.Status.SetCondition(after)		switch after.Status {
	case corev1.ConditionTrue:
		pr.Status.MarkSucceeded(after.Reason, after.Message)
	case corev1.ConditionFalse:
		pr.Status.MarkFailed(after.Reason, after.Message)

In that case, we need a separate helper to not set the competition time on failure. The issue is GetPipelineConditionStatus returns corev1.ConditionFalse as soon as a failure is discovered without checking if any other taskRuns are still running. Ideally, GetPipelineConditionStatus should wait before returning failure but at the same time, reconciler should not pick any new tasks while in this waiting phase.
A    B     C
|      |      |
X    Y     Z

Let's say we have three tasks executing in parallel, A, B, and C. Task A fails but Task B and C are still running. Now, Task B finishes execution successfully but C is still running. While we are waiting for Task C to finish, Reconciler should not schedule (Task Y) subsequent node of Task B for execution otherwise we might break backward compatibility of failing pipeline on first task failure.
Trying to address this particular scenario in issue #1680

TBH I'm more inclined now towards changing the logic to setting both status and completion time of the PipelineRun only once all subresources have finished their job.
@pritidesai @vdemeester @bobcatfish @ImJasonH wdyt?

I tested master with a pipeline having three tasks:
A(failure)    B(successful with sleep 10)     C(successful with sleep 20)

PipelineRun Completion Time is set to the task A competition time 😢   while task B and task C are still running:
kubectl get pr -o json | jq .items[].status.completionTime
"2020-06-05T19:52:03Z"

kubectl get pr -o json | jq '[ .items[].status.taskRuns[] | (.pipelineTaskName + " " + .status.completionTime) ]'
[
  "task-a 2020-06-05T19:52:03Z",
  "task-b 2020-06-05T19:52:16Z",
  "task-c 2020-06-05T19:52:27Z"
]

tkn CLI sets the duration to failed taskRun:
tkn pr describe pipelinerun-one-failure-two-success
Name:           pipelinerun-one-failure-two-success
Namespace:      default
Pipeline Ref:   pipeline-one-failure-two-success
Timeout:        1h0m0s
Labels:
 tekton.dev/pipeline=pipeline-one-failure-two-success

🌡  Status

STARTED          DURATION     STATUS
18 minutes ago   10 seconds   Failed

💌 Message

TaskRun pipelinerun-one-failure-two-success-task-a-sgwh2 has failed ("step-fail" exited with code 1 (image: "docker-pullable://ubuntu@sha256:747d2dbbaaee995098c9792d99bd333c6783ce56150d1b11e333bbceed5c54d7"); for logs run: kubectl -n default logs pipelinerun-one-failure-two-success-task-a-sgwh2-pod-2xldc -c step-fail
)

📦 Resources

 No resources

⚓ Params

 No params

🗂  Taskruns

 NAME                                                 TASK NAME   STARTED          DURATION     STATUS
 ∙ pipelinerun-one-failure-two-success-task-a-sgwh2   task-a      18 minutes ago   10 seconds   Failed
 ∙ pipelinerun-one-failure-two-success-task-b-82xxr   task-b      18 minutes ago   23 seconds   Succeeded
 ∙ pipelinerun-one-failure-two-success-task-c-ztv7k   task-c      18 minutes ago   34 seconds   Succeeded

Yeah, the completion time is not set along with setting success or failure, which is a change in behaviour. I think the next step on this should be to do so only once all resources spawned by the pipelinerun have completed their work.
@bobcatfish @vdemeester @pritidesai @mattmoor @ImJasonH thoughts?
I would be happy to submit a PR for that if we agree on it.
Personally I think it's ok to have v0.13.0 behaving like this.
Alternatively we could roll this back in a v0.13.1 branch (but not on master?) and continue towards the genreconciler for v0.14

I'm a bit puzzled by why my change affected this unless the Succeeded condition is being set to failed and then unset before the updateStatus?  Let me take another look, but a workaround would be to have the MarkUnknown variant of this clear CompletionTime 🤔

e.g. are we expecting this line to undo a MarkFailed earlier in the reconciliation?
https://github.com/tektoncd/pipeline/blob/b51405aed08990db933ac13c4a4c12b3b7d7bfcb/pkg/reconciler/pipelinerun/pipelinerun.go#L566

TBH I would prefer having stop setting the status to failed with no completion time, wait until the DAG is completed and then report how many failed / passed / skipped / cancelled.
I started working on a patch for that, and I'll raise this question on our Monday API WG.

https://github.com/tektoncd/pipeline/pull/2774


Add junit dependency that is required for kafka-08 tests.

Update hadoop version to 2.6.0 since that is required by the hive 1.1.0 version.

@abti, please take a look.


[manga-cam] Wait for 'loadeddata' event before calculating video size.

Looks like videoWidth / videoHeight were not being properly retrieved.
Resolves GoogleChrome/chrome-app-samples#380

Thank you for fixing this. A small nit and we're good to go!

Nit corrected and version bumped

WebStore Item has been updated at https://chrome.google.com/webstore/detail/cnehcenehakkickcnoiaemcpjpaigmbb/
Thank you Joseph!


"Add HaloDAO RNBW and xRNBW logo""

Reverts MetaMask/contract-metadata#930

Hi @xrn can I just checked if this has been merged? thank you


How you re-throw changes our ability to catch the exception:

Exception Handling in PowerShell is the pits (part 2)
I am re-filing this from Connect from as it appears to have gone missing again.
Re-throwing exceptions with throw (rather than throw $_) changes how exception handling works -- apparently breaking our ability to catch the outer exception and still handle the inner exception type if it's thrown unwrapped.
Steps to reproduce
Given an example case where the .Net Framework or PowerShell throws an exception with an InnerException (the actual types aren't important, just the fact that they are nested).
function Throw-InnerException {
       $infe = [System.Management.Automation.ItemNotFoundException]::new("File Not Found")
       $pbe =  [System.Management.Automation.ParameterBindingException]::new( "FileName", $infe)
       throw $pbe
}

If we write code that calls that function, and then rethrows any exceptions, we do not expect that to change the exception -- but it has the effect of changing how outer exception handling works.

Note that the community believes wrapping things in a try/catch+rethrow is, in general, a good practice, since it ensures that you (and any code you're calling) don't inadvertently turn terminating exceptions into non-terminating ones.

Here's a simple example:
function Invoke-Correctly {
    try {
        <# Do something #>
        # Call the cmdlet which might throw
        Throw-InnerException
        <# Do other things if it does not throw #>
        # Catch and re-throw, so callers can handle any unhandled errors
    } catch { throw }
}

Now, when that function is called (and if you try to handle both exception types), the inner one is incorrectly caught, even if it's handler is defined last (this will incorrectly output INFE):
$Error.Clear()
try {
    Invoke-Correctly
} catch [System.Management.Automation.ParameterBindingException] {
    "PBE"
} catch [System.Management.Automation.ItemNotFoundException] {
    "INFE"
}

Only if you do not have a handler for the inner exception, can you catch the outer exception. This will correctly output PBE and INNER: ItemNotFoundException:
$Error.Clear()
try {
    Invoke-Correctly
} catch [System.Management.Automation.ParameterBindingException] {
    "PBE"
     # Note that the "ItemNotFoundException" is inside this one:
    "INNER: "+ $_.Exception.InnerException.GetType().Name
} catch {
    "INFE (won't be caught)"
}

The weird thing is that we can fix this. We can get the catching behavior we expected by simply changing the rethrow to throw $_ -- just adding the $_ to the throw statement results in what is caught changing. This should not happen:
function Invoke-Better {
    try {
        # Do something
        # Call the cmdlet which might throw
        Throw-InnerException
        # Do other things if it does not throw
        # Catch and re-throw, so callers can handle the underlying error
    } catch { throw $_ }
}

Expected behavior
We should be able to catch the outer exception even if we have a handler for the inner exception. Note that this will work, if we call Invoke-Better (but doesn't work if we call Invoke-Correctly):
$Error.Clear()
try {
    Invoke-Better
} catch [System.Management.Automation.ParameterBindingException] {
    "PBE"
} catch [System.Management.Automation.ItemNotFoundException] {
    "INFE"
}

Actual behavior
Using throw $_ as in Invoke-Better works the way we expect it too.
But using throw as in Invoke-Correctly (which is supposed to mean the same thing), hinders our ability to handle the exception correctly.
Environment data
This bug has always existed (or at least, has existed for a very long time), and it still persists in PowerShell 6.
> $PSVersionTable
Name                           Value
----                           -----
PSVersion                      6.0.0
PSEdition                      Core
GitCommitId                    v6.0.0
OS                             Microsoft Windows 10.0.15063
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

@TravisEz13 @SteveL-MSFT @BrucePay Is there any particular reason this behaviour is the way it is, and should we seek to design out a more consistent and reliable system for handling errors?
As it currently stands, it's not only difficult to write scripts with this caveat (you have to use wordier and more complex alternatives like $PSCmdlet.ThrowTerminatingError(), or the workarounds @Jaykul describes), but as an end-user it also means that behaviour when applying different preference variables or parameters can't be relied upon for script modules. Practically ever module becomes a case-by-case "did they jump through all X hoops to make sure their error handling works".
In my opinion, we should be attempting to simplify working with errors, not introducing additional complications.

Recently I found myself digging into this issue while troubleshooting something related that I was working on in the debugger and compiler, and there are actually a few specific issues identified above that need to be discussed separately, as follows:
Issue descriptions

Exceptions derived from System.Management.Automation.RuntimeException that contain inner exceptions cannot be caught by the outer exception type if the thing that was thrown was the raw exception (as opposed to an ErrorRecord or a wrapping RuntimeException). They can, however, be caught using the inner exception type (which should never be possible, if PowerShell aligns itself to similar designs in other languages like C#). This is an issue in lines 1464-1466 of the FindMatchingHandler static method, which should create a new ErrorRecord that wraps the RuntimeException and assign those two variables differently if the parent (the exception in the rte variable itself) contains the exception (as can be seen by inspecting the ErrorRecord property on the RuntimeException (plus a minor logic change to prevent an unnecessary second invocation of FindAndProcessHandler). This issue is the root cause of what is happening here.

When you rethrow using throw inside of a catch block, if whatever was thrown and then caught is derived from System.Management.Automation.RuntimeException, it will be rethrown as is. Otherwise it will be converted into a System.Management.Automation.RuntimeException and then thrown. Conversely, if instead you rethrow by invoking throw $_ inside of the catch block, the ErrorRecord that was created to identify the error and stored in $_ will be thrown. From an end user perspective, this seems odd, since they are both inside of the same catch block; however, I believe that detail is moot once the first issue is addressed.

Alternative workaround
An alternative workaround for the first issue than what was suggested above is to wrap the exception in an ErrorRecord, and then throw the ErrorRecord. You can see how the wrapping is done in the script that demonstrates that issue below.
Test script demonstrating first issue
To demonstrate the first issue, see the following script:
function Test-ExceptionHandling {
    [CmdletBinding()]
    param(
        [Parameter(Mandatory)]
        [ValidateNotNull()]
        [System.Type]
        $InnerExceptionType,

        [Parameter(Mandatory)]
        [ValidateNotNull()]
        [System.Type]
        $OuterExceptionType,

        [Parameter(Mandatory)]
        [ValidateSet('Exception','ErrorRecord','RuntimeException')]
        [System.String]
        $ThrowType
    )
    function Write-ErrorInfo {
        param($ErrorRecord)
        "Caught: $($ErrorRecord.Exception.foreach('GetType').FullName)"
        "Category: $($ErrorRecord.CategoryInfo.Category)"
        "Message: $($ErrorRecord.Exception.Message)"
        "InnerException: $($ErrorRecord.Exception.InnerException.foreach('GetType').FullName)"
    }

    Invoke-Expression -Command @"
try {
    `$ine = `$InnerExceptionType::new("My inner exception")
    `$oute =  `$OuterExceptionType::new("My outer exception", `$ine)
    `$er = [System.Management.Automation.ErrorRecord]::new(`$oute, `$oute.Message, 'OperationStopped', `$null)
    `$rte = [System.Management.Automation.RuntimeException]::new(`$oute.Message, `$oute, `$er)
    switch (`$ThrowType) {
        'Exception' {
            throw `$oute
        }
        'ErrorRecord' {
            throw `$er
        }
        'RuntimeException' {
            throw `$rte
        }
    }
} catch [$($InnerExceptionType.FullName)] {
    Write-ErrorInfo `$_
} catch [$($OuterExceptionType.FullName)] {
    Write-ErrorInfo `$_
} catch {
    'Caught: Catch all'
}
"@
}

# This works
Test-ExceptionHandling -InnerExceptionType System.ArgumentException -OuterExceptionType System.Management.Automation.ItemNotFoundException -ThrowType RuntimeException

# As does this
Test-ExceptionHandling -InnerExceptionType System.ArgumentException -OuterExceptionType System.Management.Automation.ItemNotFoundException -ThrowType ErrorRecord

# But when throwing the unwrapped raw exception, the bug is exposed, with the error handler catching the inner exception (something that should not be possible)
Test-ExceptionHandling -InnerExceptionType System.ArgumentException -OuterExceptionType System.Management.Automation.ItemNotFoundException -ThrowType Exception

Now that the issue has been identified, would you like it fixed @SteveL-MSFT?

That's some supreme sleuthing you've done there, Kirk, nice work! 😊

Just to add one more thought related to the second "issue" identified above so that the committee can consider it.
From within a catch block, invoking throw and throw $_ are effectively doing the same thing. The end result is two ErrorRecord objects that are not the same (because they are generated by PowerShell), but the properties on those ErrorRecord objects are identical. Given that is the case, wouldn't it make sense for the PowerShell compiler to treat throw and throw $_ both as rethrows, in this method, so that they both compile and function the same way?

@PowerShell/powershell-committee reviewed this, we believe the fundamental issue is that there are many cases in PowerShell where exceptions get wrapped.  This makes error handling difficult.  We agreed that we should allow the user to catch the inner exception.  Proposal is that in our catch code, we should recurse into it looking for a match and return that exception to the catch if found.  We should not make changes to throw behavior.  @JamesWTruher offered to author a RFC for this

@SteveL-MSFT Just to make sure I understand, when you say "we should allow the user to catch the inner exception", you're only suggesting that PowerShell try/catch blocks be able to catch inner exceptions that are automatically wrapped by PowerShell with other exceptions such as RuntimeException, and not inner exceptions in general, correct?

@KirkMunro we didn't differentiate between PS wrapped or non-PS wrapped exceptions.  The idea is that PS would look through all the inner exceptions for a match regardless of who put it there.  This is a technical breaking change, but in our discussion we agreed that since this is an error handling case, those scripts were already broken if they weren't correctly catching the exception.

I recall some discussion about PS ignore exceptions thrown by a .NET property accessor but I don't recall anything about exceptions thrown by .NET methods being treated differently.  But the following behavior is just weird.  The Substring(1) call causes an exception to be generated in .NET.  An exception "should" alter the flow of control through my code and IMO the Write-Host shouldn't execute but it does.  I have to wrap that call in try/catch to get the behavior I want.  I can also set $ErrorActionPreference to Stop to get the desired behavior but both of these seem like they should be unnecessary.
C:\Users\Keith
05-20 20:03:02 3> function WTF {
>>     [CmdletBinding()]param()
>>     "".substring(1)
>>     Write-Host "Shouldn't get here!"
>> }
C:\Users\Keith
05-20 20:08:47 4> WTF
Exception calling "Substring" with "1" argument(s): "startIndex cannot be larger than length of string.
Parameter name: startIndex"
At line:3 char:5
+     "".substring(1)
+     ~~~~~~~~~~~~~~~
+ CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : ArgumentOutOfRangeException

Shouldn't get here!  <<<< Huh?

>> }
C:\Users\Keith
05-20 20:09:17 6> WTF
Exception calling "Substring" with "1" argument(s): "startIndex cannot be larger than length of string.
Parameter name: startIndex"
At line:3 char:11
+     try { "".substring(1) } catch { throw } # This works but doesn't seem like I should have to do this
+           ~~~~~~~~~~~~~~~
+ CategoryInfo          : NotSpecified: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : ArgumentOutOfRangeException

C:\Users\Keith
05-20 20:09:19 7>

@SteveL-MSFT This warrants some more discussion in the committee or here on this issue discussion because you made the wrong decision.
Inner exceptions should not be catchable because they've already been handled. C# works this way. Java as well. I can do more research, but I suspect other programming languages behave the same way. When you have a method/command/script that invokes something inside of a try/catch block and internally catches that exception, the code is handling the exception. If it wants to surface the exception as-is, it just rethrows it. Otherwise, it may suppress it, or it may generate a new exception based on that exception and assign the original exception as the inner exception. This is known as exception chaining.
If I write some code that may throw exceptions, it is advantageous to the caller to know what type of exceptions may be thrown. For example, see any number of methods in .NET such as this one which identifies the types of exceptions that it may throw. Unless the logic within those methods specifically rethrows an exception of a certain type, you will never, ever see that documentation indicate types of inner exceptions as exceptions that it throws because they are already handled.
PowerShell should learn from these other languages and be no different when it comes to exception chaining. Generally speaking, users should not be allowed to catch the inner exception. The exception to that rule (pun intended) when it comes to PowerShell is with wrapper exceptions. PowerShell uses certain exception types to marshal exceptions through the engine and surface them to the user. In those cases, the user needs to be able to catch the original exception, not the wrapper/helper that PowerShell puts on top of it.
If you look in Issue 1 of my earlier post, it describes one place where PowerShell can be updated to properly propagate exceptions through the system so that they can be properly caught (the actual exception, not the wrapper). Those are the types of changes that need to be made through PRs -- identify where PowerShell wraps exceptions, and make sure that those exceptions are wrapped properly so that the correct exception can be caught by the end user.

I have obviously explained this very poorly if you think that making me able to catch inner exceptions would help. The original problem I was trying to work around by using throw $_ instead of throw is the fact that I am already catching inner exceptions
I'm trying NOT to catch innerexceptions!
See #9689

Additional data points:
This issue has something to do with the throw $pbe statement in powershell. When the exception is thrown from true .NET method, the re-throw statement works as expected. See the code below:
Add-Type -TypeDefinition @'
using System.Management.Automation;
using System;
public class Bar {
    public static void ThrowException() {
        var inf = new ItemNotFoundException("File Not Found");
        var pbe = new ParameterBindingException("FileName", inf);
        throw pbe;
    }
}
'@

function TryAgain { try { [Bar]::ThrowException() } catch { throw } }

try {
    TryAgain
} catch [System.Management.Automation.ParameterBindingException] {
    "PBE"
} catch [System.Management.Automation.ItemNotFoundException] {
    "INFE"
}

> PBE

So, if someone is investigating for a fix, the focus probably should be the throw $pbe statement.

This surfaced for me as well now.


Language corrections for the R3 Release Notes.

/assign @liamfallon @ciaranjohnston

/ok-to-test

/retest

/retest

/retest

Hi @mpgreaves can you address the comments of the github runner? There are couple of tiny adjustments

@arora-sagar, I have implemented the comments that are valid.

/approve
/lgtm


modules argument not working

After adding modules: qtcharts, the build still failed doe to a lack of QtCharts
file: https://github.com/lhy0403/Qv2ray/blob/8f5c5cf7d870a406f13f72ffed9cde31682e3bd4/.github/workflows/build-push.yml#L19
Github action log:

I just tested it on my system, and it works fine. qtcharts module is downloaded and detected. Not sure why it's not working on your CI yet.

Is my syntax of arguments correct?
      - name: Installing Qt
        uses: jurplel/install-qt-action@v2
        with:
          arch: win64_mingw73
          modules: qtcharts

Yes.

That's strange, seems the parameter has been passed into aqtinstall...
But the log shows nothing about QtCharts...
Below is Github Action log for my linux build, I think Windows and macOS have experienced the same.
6log.txt

[command]python3 -m aqt install -O /home/runner/work/Qv2ray/Qt 5.12.6 linux desktop -m qtcharts

I tried that exact command on my local computer and it worked perfectly

I'm still not be able to build due to this error.
Even in a clean enviornment https://github.com/lhy0403/install-qt-action:
https://github.com/lhy0403/install-qt-action/commit/e4124435718bea08fad538bcbe36c6b2690f894c/checks?check_suite_id=347786789

I believe there's something wrong with the Github Action platform, please verify it.

I am running into the same problem. I also tried it with the qtwebengine module and it did not work.

i'm working on it!

The issue was that the arguments were being pushed to the array incorrectly. All fixed now. Sorry about that.


Updated Cargo.toml broccoli from 0.20.0 to 1.2.5

It seems nothing is broken from the update in broccoli.
Note
This is one of the coolest projects I have ever seen!

Excellent! Thank you for the PR. I'm glad you like the project :)


[Concurrent Segment Search]: Implement concurrent aggregations support without profile option

Description
Implementation to support non global aggregations with concurrent segment search execution path. This change enables queries with aggregation clause to run with concurrent search model. It currently still uses sequential path for global aggregation as this is handled separately. Also search request with profile option is not handled in this PR and will be done in a follow-up PR.
This PR is updated to support Global Aggregations as well in concurrent mode
Related Issues
https://github.com/opensearch-project/OpenSearch/issues/7353
Check List

[X] New functionality includes testing.

[X] All tests pass

[ ] New functionality has been documented.

[X] New functionality has javadoc added

[X] Commits are signed per the DCO using --signoff
[x] Commit changes are listed out in CHANGELOG.md file (See: Changelog)

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@reta @nknize Tagging to get some review feedback

Codecov Report

Merging #7514 (ee87f1e) into main (96f2ffa) will increase coverage by 0.01%.
The diff coverage is 86.00%.

:exclamation: Current head ee87f1e differs from pull request most recent head 11bbf76. Consider uploading reports for the commit 11bbf76 to get more accurate results

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@             Coverage Diff              @@
##               main    #7514      +/-   ##
============================================
+ Coverage     70.60%   70.62%   +0.01%
- Complexity    59741    59768      +27
============================================
  Files          4887     4889       +2
  Lines        286611   286646      +35
  Branches      41315    41313       -2
============================================
+ Hits         202369   202430      +61
+ Misses        67643    67592      -51
- Partials      16599    16624      +25

Impacted Files
Coverage Δ

...pensearch/action/search/TransportSearchAction.java
70.99% <0.00%> (ø)

...nsearch/search/internal/FilteredSearchContext.java
9.17% <0.00%> (-0.09%)
:arrow_down:

.../org/opensearch/search/internal/SearchContext.java
37.20% <ø> (ø)

...main/java/org/opensearch/search/SearchService.java
71.89% <25.00%> (ø)

...va/org/opensearch/search/DefaultSearchContext.java
76.67% <50.00%> (-0.22%)
:arrow_down:

...ations/bucket/filter/FiltersAggregatorFactory.java
89.65% <75.00%> (-1.65%)
:arrow_down:

...earch/search/aggregations/AggregatorFactories.java
75.39% <84.61%> (+0.69%)
:arrow_up:

...arch/aggregations/AggregationCollectorManager.java
88.88% <88.88%> (ø)

...arch/aggregations/DefaultAggregationProcessor.java
72.41% <91.30%> (ø)

...pensearch/action/search/SearchPhaseController.java
77.27% <100.00%> (-5.97%)
:arrow_down:

... and 8 more

... and 471 files with indirect coverage changes

Gradle Check (Jenkins) Run Completed with:

RESULT: UNSTABLE ❕
TEST FAILURES:

      1 org.opensearch.search.backpressure.SearchBackpressureIT.testSearchTaskCancellationWithHighCpu

URL: https://build.ci.opensearch.org/job/gradle-check/16669/
CommitID: d703df2
Please review all flaky tests that succeeded after retry and create an issue if one does not already exist to track the flaky failure.

Known Issue: https://github.com/opensearch-project/OpenSearch/issues/7750

@sohami it looks pretty good (at least to me), I have a few minor comments to get rid of assertions for null values but LGTM otherwise! :clap: :clap: :clap: @nknize @gashutos have time to look?

@sohami it looks pretty good (at least to me), I have a few minor comments to get rid of assertions for null values but LGTM otherwise! 👏 👏 👏 @nknize @gashutos have time to look?

@reta Thanks for the review 🙏

@sohami it looks pretty good (at least to me), I have a few minor comments to get rid of assertions for null values but LGTM otherwise! 👏 👏 👏 @nknize @gashutos have time to look?

Ack @reta ! Will be taking a look by today/tomorrow

Apologies, just started looking (with very limited bandwidth until Thursday) but I think I will take some time to go over, but given this PR is open since long and reviewed by Reta, please go ahead and merge, I will still review post merge and suggest changes if get some better way...

@sohami we are backporting it to 2.x?

Yes. Should I cherry-pick all the commits to 2.x and create another PR for that ?

@sohami ^^ yeah, automation failed, please send pull request manually, thank you

@sohami ^^ yeah, automation failed, please send pull request manually, thank you

@reta Created https://github.com/opensearch-project/OpenSearch/pull/7948 for backport PR


Remove save a page

Remove the SavedPages feature
Trello
See also
gds-api-adpters#1108
gds-api-adpters#1109
government-frontend#2230

I think you can also remove app/validators/absolute_path_validator.rb in this PR, as it was just used for saved pages.

Ok I've unpublished both those two content IDs across all three environments

These three are now all merged: 🎉

gds-api-adpters#1108
gds-api-adpters#1109
government-frontend#2230

Can you also do https://github.com/alphagov/frontend/pull/2952 ?

On it!

https://github.com/alphagov/frontend/pull/2956


Docs site footer not getting populated

Describe the bug
Footer of docs site is not getting a date or commit id.
Example:
https://bunit.dev/index.html

Source: https://github.com/bUnit-dev/bUnit/blob/f022007120e09bd99af38150d51d28661c7d9519/docs/site/docfx.json#L72
Not sure how to fix this, wanted to bring attention to it.
Thanks

Thanks for that - it seems it is just a matter of missing configuration in the pipeline.
WIll take care of that.


when updateVersion is present store it

Task/Issue URL: https://app.asana.com/0/392891325557410/1114152243888973
Tech Design URL:
CC:
Description:
When the udpateVersion property is available in the atb.js response then it is stored as the main atb version.
Steps to test this PR:
With Charles proxy running and a breakpoint for atb.js

clean install
edit the atb.js response to set the atb version to something old
perform a search, observe the updateVersion in the response
subsequent set_atb calls should use the new cohort for the atb

Internal references:
Software Engineering Expectations
Technical Design Template

Thanks @CDRussell


Creating AAF from OTIO does not work when imported into DaVinci Resolve

Converting an AAF to OTIO and back to AAF, importing the created AAF works fine in Media Composer, but can't be imported into DaVinci Resolve. The Error is "no primary timecode track found. Violates AAF edit protocol 6.3"
Section 6.3 of the edit protocol states (besides some other requirements): "A top-level composition shall contain one or more timecode tracks and include a Primary timecode track. Timecode tracks shall use the MobSlot::PhysicalTrackNumber property to distinguish their type, as shown in the Table below."
Seems the current AAF writer does not create such Timecode track and Media Composer is more forgiving, but DaVinci Resolve is not.

Was this tested with Resolve 16.2.5 because this update has an AAF fix
https://www.blackmagicdesign.com/support

I was testing it with with 16.2.2. I just upgraded to 16.2.5 and I still get the same error.

Tests-2020-12-16.zip
I am still able to reproduce this error in DaVinci Resolve 17.0B build 13.
The above attachment contains an example AAF (and equivalent FCP XML and OTIO). The AAF file imports fine into Premiere but not Resolve, giving the error message described above.

This is unfortunately still an issue with Resolve 17.3 and 18.0.
Because of a separate Resolve bug with how it no longer likes to conform image sequences from FCPXML files (as of 17.4), being able to import AAF into Resolve is now more desirable for us. Is there anyone who could help point us in the right direction for this? We might be able to rustle up a small amount of funds to pay someone to help address the issue, but I wouldn't know where to start myself. Is this in OpenTimelineIO code, or PyAAF?

This is likely a change needed in the OTIO AAF adapter. Specifically in here: https://github.com/PixarAnimationStudios/OpenTimelineIO/blob/main/contrib/opentimelineio_contrib/adapters/aaf_adapter/aaf_writer.py
It probably needs to call create_timecode_slot and attach it to the right place. Hopefully that's enough of a start that someone else could jump in and give it a try.

Adding a Primary Timecode track to the toplevel composition fixes the file for me.  Here is some rough example pyaaf2 code that fixes the aaf otio generates. Attached is the fixed file too, I tested this in resolve 18
import sys
import shutil
import os
import aaf2

name, ext = os.path.splitext(sys.argv[1])
fix_file = name + "_fix.aaf"

shutil.copy(sys.argv[1], fix_file)

with aaf2.open(fix_file, 'rw') as f:
    for mob in f.content.toplevel():
        slot = f.create.TimelineMobSlot()
        slot.slot_id = 2
        slot.name = "TC"
        slot['PhysicalTrackNumber'].value = 1
        slot.segment = f.create.Timecode()
        mob.slots.append(slot)

Test-2020-12-16-fix.zip

Thanks very much for this! I've just tested this on another AAF generated today, and yes, this turns the AAF generated via otio.adapters.write_to_file() into an AAF file that Resolve is willing to load. It's extremely quick too.
Thanks so much for your help, this is a good step forward

Just as a footnote, this fix also works in Resolve 17.4 as well as 18

Great to hear! The adapter just needs to modified somewhere, I'll take a closer look when I get a chance.

Thanks for working through this!  @markreidvfx, my apologies, but I know you have a bunch of open PRs that we'd like to assess.  did a fix for this ever get worked into one of your open PRs?  Just want to make a note of that so that we can link this issue to one of those PRs if so.  thanks all!

I haven't opened a PR request for this yet, but plan to soon.  When I do I'll reference this issue.

Now that Resolve 18.5 supports native OTIO import/export, is this issue still relevant?

I've had a pending pull request in the external adapter that fixes this issue for quite some time.
https://github.com/OpenTimelineIO/otio-aaf-adapter/pull/9

Great! Sorry for missing that @markreidvfx - we will have to make sure to include the adapter repos in our project issue/PR reviews more actively now.

As mentioned in the thread above, this issue was fixed in https://github.com/OpenTimelineIO/otio-aaf-adapter/pull/9


Add minimal docs describing Drone CI usage

Fixes #1161, #529

I'm going to merge as a further piece of advice to solve #1540.


GetUserTimeline is null on Linux, no exception thrown

I'm attempting to use the code below. It works properly on my local Windows PC, but tweets is null on my server. I'm sure this is a Twitter thing and not a library thing, but no exceptions are being thrown. I tried both methods from the wiki article, but neither of them shows an exception. The server is Ubuntu 18.04, I'm debugging by attaching to the process via Visual Studio.
How can I figure out what exception is being thrown?
// For testing I'm using @github
var twitterId = 13334762;
var sinceId =<PHONE_NUMBER>319471616;

var tweets = await TimelineAsync.GetUserTimeline(new UserIdentifier(twitterId), new UserTimelineParameters
{
    ExcludeReplies = true,
    IncludeRTS = true,
    SinceId = sinceId,
    MaximumNumberOfTweetsToRetrieve = 5
});

// This is always null
var ex = ExceptionHandler.GetLastException();

if (tweets?.Any() == true)
{
    Console.WriteLine("Found tweets");
}
else
{
    Console.WriteLine("No tweets found");
}

This sounds like bug #768.
There's a pull request #770 containing a fix, so you could try building that code yourself and using it.
There's no documentation for it yet and the code hasn't been reviewed though :)
The issue is caused by async, so if you want to keep using the current stable version of Tweetinvi in nuget, use the synchronous methods instead & moved back to using async when the next version of Tweetinvi is released.

Can you try this new build?
netstandard2.0.zip
If you're using Task.Run or other ways of running things on other threads for managing multiple Twitter user's credentials, please read through the "Usage" section of #770.


Fixed national character encoding.

This is not a real fix, just a "it works in more cases" (if the encoding is 8bit Shift-JIS for example this would fail)
It is wrong to make an assumption about the encoding.
The real fix would be to handle everything internally as bytes, find the encoding of each part of the message itself and then decode to strings with the correct encoding. (Decoding headers the same way as the main body, if the encoding is defined there as an 8bit variant)
An intermediate solution would be to have the "global" S22Imap encoding as a setting that can be changed on runtime. An example of this is #96 but that PR has several other changes that makes it "invalid"
I'm highly against changing ASCII to some other hard coded value.
Some of this is discussed in great detail in #47

For what it's worth (and I don't meant to beat a dead horse), MimeKit handles undeclared 8-bit text in headers in what I would describe as probably the only real sane way possible.
MimeKit's parser optionally takes a ParserOptions instance which provides various configuration options for the parser. One of which is a CharsetEncoding option which is used as a fallback charset when the parser encounters undeclared 8-bit text in headers.
The process goes something like this: The parser tries to convert the 8-bit blob of bytes into a System.String using UTF-8. If that fails, then the parer tries the charset provided in the ParserOptions. If that also fails, then it falls back to ISO-8859-1.
The reason for this order of preference is that the latest email specifications allow for UTF-8 encoded email headers, and so going forward, it's probably reasonable to try UTF-8 first since that is an accepted standard. Even if it weren't, though, UTF-8 is still a good charset to try first since it is quite common (due largely to the fact that many systems these days use UTF-8 as their default locale charset). The user supplied charset is tried next because if the user selects ISO-8859-1 (since that is their locale charset, perhaps? or because they live in a western country where latin1 is the most common?), ISO-8859-1 will convert any sequence of 8-bit bytes cleanly, whether it really is ISO-8859-1 or not, so it should ONLY be tried last (which is coincidentally why it is the last charset always tried).
Now... even if none of those 3 charsets was the correct charset (e.g. maybe the actual charset is Big5 but the user set ParserOptions.CharsetEncoding to, say, koi8-r), then the user will still have the option of trying the conversion again after the parser has finished parsing the message by locating the header in the MimeMessage.Headers list and calling Header.GetValue (Encoding encoding) and passing in some other charset encoding to try over and over as many times as they want until the user is satisfied.


Missing concurrency - Add faye-websocket to your gemfile -- It's already in my Gemfile

Today when I decided to re-deploy my AWS Stack, I noticed the following error:
root@2197850807bc:/myapp# bundle exec rails c -e production
Running via Spring preloader in process 1065
WARNING: Spring is running in production. To fix this make sure the spring gem is only present in `development` and `test` groups in your Gemfile and make sure you always use `bundl
e install --without development test` in production
Loading production environment (Rails 5.2.4)
irb(main):001:0> Slack::RealTime::Client.new
Traceback (most recent call last):
        2: from (irb):1
        1: from (irb):1:in `new'
Slack::RealTime::Config::NoConcurrencyError (Missing concurrency. Add async-websocket or faye-websocket to your Gemfile.)
irb(main):002:0> exit
root@2197850807bc:/myapp# cat Gemfile | grep faye
gem "faye-websocket"
root@2197850807bc:/myapp#

I can't figure out why this is happening. My Gemfile has stayed the same and nothing in my code has changed at all. The only thing I can think of is possibly one of the gems have been updated and something broke along the way.
Here's what's in my Gemfile:
132 # Slack-ruby-client
133 gem "eventmachine"
134 gem "faye-websocket"
135 gem "rails_best_practices"
136 gem "slack-ruby-client"
137 gem "websocket-driver"

You've upgraded slack-ruby-client which removed faye-websocket support in https://github.com/slack-ruby/slack-ruby-client/pull/357 (the error message is misleading, I fixed that in https://github.com/slack-ruby/slack-ruby-client/pull/360).
I would lock back slack-ruby-client at the older version you've had or upgrade to async-websocket.
Note that generally you shouldn't be finding this in your deployment, your gems should be locked via Gemfile.lock.

You've upgraded slack-ruby-client which removed faye-websocket support in https://github.com/slack-ruby/slack-ruby-client/pull/357 (the error message is misleading, I fixed that in https://github.com/slack-ruby/slack-ruby-client/pull/360).
I would lock back slack-ruby-client at the older version you've had or upgrade to async-websocket.
Note that generally you shouldn't be finding this in your deployment, your gems should be locked via Gemfile.lock.


Add Docker tags always linking to latest non-major version

Name and Version
rapidfort/mariadb:10.10
What is the problem this feature will solve?
Having to look at the Docker page to see if there is a new minor version so you can update to it. You could set-up an auto-update script if you would not have to.
What is the feature you are proposing to solve the problem?
It would be nice if there would be a tag like "10-current" that would get linked to the latest version of the 10 series of MariaDB (10.8, 10.9, now 10.10).
What alternatives have you considered?
No response

Hi @MatsG23 we do have tolling tags which follow exact same pattern as rolling tags from bitnami. Could you please join our slack community to discuss further your requirements? I would be happy to get this resolved.


Adding Autodose tank low entitites

In the original integration I added support for autodose tank low entities:
https://github.com/miguelangel-nubla/homeassistant_electrolux_status/commit/386a02184320df2c85bad9097c3109a67481fe15#diff-ea2e7a212f400d287ee6f7be85be80a92c935f1fd68dcba665c6db7d9d012bad
In order to make them available in this new one, I added the definition for the sensors
    "fCMiscellaneousState/tankAReserve": ElectroluxDevice(
        capability_info={"access": "read", "type": "boolean"},
        device_class=BinarySensorDeviceClass.PROBLEM,
        unit=None,
        entity_category=EntityCategory.DIAGNOSTIC,
        entity_icon="mdi:washing-machine-alert",
    ),
    "fCMiscellaneousState/tankBReserve": ElectroluxDevice(
        capability_info={"access": "read", "type": "boolean"},
        device_class=BinarySensorDeviceClass.PROBLEM,
        unit=None,
        entity_category=EntityCategory.DIAGNOSTIC,
        entity_icon="mdi:washing-machine-alert",
    ),

but found out fCMiscellaneousState is explicitly ignored in const.py
IGNORED_ATTRIBUTES: [str] = [ "^fCMiscellaneous.+", "fcOptisenseLoadWeight"]

Removing the exclusion works, but as I am not familiar with this new API or the reasons it is explicitly ignored, I would like to know how should I proceed here before submitting a PR.
Is making a exception to the exception in the regex appropiate? Does un-ingoring fCMiscellaneousState make sense or does it create issues with other appliances? Is some extra logic to handle specific cases needed?
My L8FEC962Q fCMiscellaneousState  contains:
    "fCMiscellaneousState": {
        "detergentExtradosage": 40,
        "optisenseResult": 65535,
        "softenerExtradosage": 20,
        "tankADetLoadForNominalWeight": 0,
        "tankAReserve": true,
        "tankBDetLoadForNominalWeight": 0,
        "tankBReserve": false,
        "waterUsage": 0
    },

Hi, I have added this exclusion list because there are many "technical" sensors that are useless (eg value always = 65535).
Maybe we can do a good mix of both : apply the exclusion list EXCEPT for the ones that are explicitly defined in the catalog

Hi, I have added this exclusion list because there are many "technical" sensors that are useless (eg value always = 65535) and pollute the integration. Maybe we can do a good mix of both : apply the exclusion list EXCEPT for the ones that are explicitly defined in the catalog

yep - think this is the best approach.
That actually already works here  😄
https://github.com/albaintor/homeassistant_electrolux_status/blob/main/custom_components/electrolux_status/api.py#L278-L288

I think the IGNORE_LIST and this this tuple should  be merged and then the catalog will work as descirbed

Ok I didn't see that you put an exclude list. I just added a white list next to it in the const.py file and added them back in the catalog
I don't want to break things as we don't make the checks at the same location, can you merge the logic into the const.py file ?

EDIT : Ok I have found how. I do the merge

Tested and working, thanks!


Remove unused imports and params from NFTMetadataRenderer

No functional change, just removing some leftovers from nft-editions

Looks good! Will merge with the next release.


1305 2 refactor user endpoints

https://github.com/bcgov/cas-registration/issues/1305

client/app/api/auth/[...nextauth]/route.ts fails to assign app_role due to missing role_name from
const responseRole = await actionHandler(
            `registration/user/user-app-role/${token.user_guid}`,
            "GET"
          );


upd(git): 2.53.1 -> 2.35.3

The title should be upd(git): 2.35.3 -> 2.53.1 not upd(git): 2.53.1 -> 2.35.3!

Actually it should have been upd(git): 2.35.1 -> 2.35.3

Fixed


Add config file

The config file should be implemented as a TOML file with the following settings:

Seed peers - an array of multiaddr for peers to be dialed. (also called bootstrap nodes)
Pool specific:
Name of pool
Number of shares
Algorithm (sha3x for now)

Note that there is a standard way of doing config files in the Tari repo. This can help with using ENVs and command line option overriding, but other suggestions are also welcome

I've been leaning towards building on existing config utilities, both for unity among projects but also usefulness of existing functionality, but there's an issue with versioning between the two.
sha-p2pool uses a newer version of Clap than minotari_app_utilities, and it could be argued to be a bit of regression for the project should we downgrade to the same version. Specifically, it concerns the struct CommonCliArgs which is necessary since it already implements the trait ConfigOverrideProvider.
I looked at bumping the Clap version on the minotari_app_utilities side to see if it was a quick fix in order for both of the projects to be on par. I noticed there were multiple new errors though, including annotated fields with attributes that I need look closer at exactly how they affect the rest of the module.
Suggest two ways of moving forward:

Schedule work to upgrade Clap in the minotari_app_utilities crate to unblock import in sha-p2pool
Implement a custom (likely simpler, without override) config system, specifically for sha-p2pool

Depends on the timeline we have on this feature, I'll put this on hold for now to focus on higher-priority protocol research.


fix: Fix deprecated message of snowflake_role_grants

References

https://github.com/Snowflake-Labs/terraform-provider-snowflake/issues/2599

Superseded by #2602


Where are BirdNET observation sound snippets saved on an iPhone?

I'm relaying this question from someone else at the Bioacoustics Stack Exchange (currently in beta):
https://bioacoustics.stackexchange.com/questions/114/where-are-birdnet-saved-observation-sound-snippets-saved-on-an-iphone
"I've recorded some sounds using the app BirdNET (https://birdnet.cornell.edu/) and would like to share/export some of the recorded observations I made and saved. I cannot find them within my iPhone's folder structure. Is anyone familiar with where these are saved by default or how to extract them?"
Stefan or others, if there's a better place to ask this question about the phone apps, please let me know!

The reocrdings are saved inside the App-Storage. Since this is the Issue Tracker for BirdNET-Analyzer please ask App related questions on our Twitter @BirdNET_App or Reddit https://www.reddit.com/r/BirdNET_Analyzer/


Neo-Elements disappear after saving

We have build a site for our customer largely based on your faboulus plugin. After the Neo Plugin update to version 1.5 we see strange things happening (a downgrade to 1.4.1 solved these problems):

The lightswitch problem as mentionend in https://github.com/benjamminf/craft-neo/issues/118 occurs
On a page with 3 Neo matrices: On one matrix, it is not possible to add an Element after loading the page. After saving the page, it works (similar to the lightswitch problem). After adding another element in another matrix on this page and saving the page, the previously added elements to the first matrix disappear.
In another matrix, the addition of two elements worked well. After some further changes to other matrices the elements are shown doubled in the frontend, but only one of these elements is visible in the backend.
The removal of a matrix in settings > section > entry types did not work properly: The elements were still visible in the frontend after saving the page without the corresponding matrix.

Probably the minimal requirements for reproducing the problem: Page with 2 Neo matrices. Adding elements to the first matrix. Save the page. Add another Element to the other matrix. Save. If the first element is not present anymore, the bug has been reproduced.
We tried to fix the issues by rebuilding the page: Removal of the Neo matrices and adding them again. This did not solve the problem.
We assume that there is a problem with updating the database. We are highly interested in a bugfix and offer the best we can for supporting you.
Addendum: Initially we stated that the problem occured after the Craft CMS update to version 2.6.2997. We found that it was the Neo Plugin update that caused the problem. We now use Neo 1.4.1 and Craft 2.6.2997 and the stated problems do not occure anymore.

Unfortunately, I am also struggling with both issues. (#118 is the minor one.) Losing content when saving an entry could be catastrophic.
All Matrix-in-Neo content get erased when editing another Matrix or Neo field.

Hey guys, thanks for reporting. I'm well aware of the issue, which stems from a feature I added in 1.5.0 for copying content to other locales. I'm going to bring that version down in the meantime while I work on a patch for this.
Downgrading to 1.4.1 should get things back in order. There were no database changes between those versions so it's safe to do so.

There are also issues with the new "copy & paste" changed from "duplicate" where there are two neo fields on a template, remove and unorder the other neo fields lets say in a sidebar, weird. Backing up to version with duplicate neo fields fixes the issue.

Any movement on this?

FYI, if you're having this issue, try increasing max_input_var in PHP. The default is 1000, and if you have a Neo setup with lots of layout options in every row, it's pretty easy to get up over 1000 on a long post. At least that was why my fields were getting truncated. No warning in Craft about it either.

We just reverted our neo plugin to 1.4. I'm not sure if it fixed the issue. We'll just have to wait and see.
Posting this here as a warning to anyone else who is encountering this issue as of today. I must have downloaded the plugin just before it was taken down.

I'm having this issue with the version currently available here on github (which, incidentally, claims to be version 1.5.0 in the plugin settings.)

Is there any update on this matter?

Thanks @seamusmh, do you know if I can make this change from Control Panel?

No. It needs to be done in the php.ini file.

Any news with this bug? Is there a workaround?

Warning: this issue, from well over a year ago, still seems to be occurring with the most-recent commit (11/29/18) to the craft-2 branch.
In this version, and the now-pulled 1.5.0, if 2 Neo fields are present on an Entry and populated with any configuration of blocks, adding any block (by either manual addition or copy/paste) to the 1st field will utterly destroy the 2nd field.
@ttempleton, this is a critical issue that can ruin entire sites, and it's preventing us from upgrading from 1.4.1, which means we have to go without the much-needed copy/paste functionality. Is there a fix coming down the pike for this?

I struggled a bunch with this.  I've found that even with the fixed release (which can be downloaded from the releases page on github instead of pulling from git) it's possible for an entry to get into a broken state in what I've determined is a race condition due to multiple people saving the same entry at the same time or flipping between various revisions of a page.
If you're seeing this on fresh new pages that haven't previously had neo blocks, then that's different, but I suspect that you, like me, didn't actually have the fixed release because you didn't get it from the releases page.  Once you DO have the fixed release, it's not going to magically fix the broken neo blocks you already have.  I had to go into the database and delete some "orphaned" blocks that were no longer associated with the entry in question.
Basically what happens is that the "missing" blocks are there in the database, but are not correctly associated with the neo block that's in the affected entry.  It seems to get confused until they're deleted.
In any case, I suggest grabbing the release from the releases page, make a new page with a new neo block and see if still behaves the way you describe it.  I suspect it won't, and then it's just a matter of cleaning up the affected neo blocks.

@jerwarren thanks for the feedback!
I'm working on a local VM, so I'm sure the manifestation of this issue I mentioned above isn't caused by a race condition with multiple editors/admins.
I've also confirmed that both the 1.5.0 release (which was pulled from the releases page in Nov 2017) and the craft-2 branch at the latest commit (653b632, 11/28/18) are affected. Following your advice, I cleared the craft_neoblocks table, deleted my Neo fields, and created 2 fresh Neo fields for my test Entry. Unfortunately, the problem persists.
I did a bit of digging in the code, fiddling with this 2 Neo field setup, and I think I've narrowed down the issue to, like you mentioned, extra rows being added to craft_neoblocks. I'm reasonably certain that this an issue revolving around field ids and using them to determine if a element being saved is new or not.
Although I'm still testing, it seems that changing line 48 in the init() function of neo/fieldtypes/NeoFieldType.php to check for the existence of elementId instead of id seems to fix the problem. See the full init() function below and note the change to $this->_isNewElement = ...
        /**
	 * Initialisation of the field type instance.
	 * Used for binding events.
	 */
	public function init()
	{
		parent::init();

		// Watch to see if this request is saving an element
		// This is so that keywords can be safely offloaded to a task later on
		craft()->on('elements.onBeforeSaveElement', function($e)
		{
			$this->_savingElement = $e->params['element'];
			// $this->_isNewElement = !((bool) $this->_savingElement->id);
			$this->_isNewElement = isset($this->_savingElement->elementId);
		});
	}

With this change (to the current craft-2 branch), multiple Neo fields work properly again, there are no errant rows added to the database, and copy/paste (inside a Neo field and between 2 versions of the same field on different Entries) works too. More testing to do I'm sure, but so far so good.

Oh! That reminds me of something I forgot:
There's a config for whether neo saves everything or tries to save only changed fields.  Setting that to always save everything is when I think everything started working OK for me (save for the race condition.)
I think your code change probably achieves something similar.

@jerwarren thanks again for following up. Continued testing has proven that the change I posted above does not fully work. Sometimes -- I can't quite pin it down -- the 2nd Neo field will become corrupted (due to multiple rows being created in craft_neoblocks for the same block).
However, your suggestion to toggle the config setting seems to be working! I'll continue to test that, and I'll post again if I run into issues. But for the time being, anyone who is seeing this issue should try toggling saveModifiedBlocksOnly in craft/config/neo.php to false.
Like this:
<?
  return [
    // If true, optimizes the saving of Neo fields by only saving existing blocks that have had their content modified
    'saveModifiedBlocksOnly' => false,
...

I think any potential performance hit is well worth sidestepping this critical bug.

@caferelgin, @rbaud, @jerwarren apologies for the delay with work on Neo for Craft 2 since late November.
As you've discussed, this does involve extra rows being added to the neoblocks table.  Specifically, when adding new blocks to existing fields, I notice that only the new block will be saved for the first field, but it appears all blocks are being saved as new blocks for the other fields -- while retaining the existing blocks in the neoblocks table.  The block structures are then regenerated -- as they always are when resaving a field -- but for the affected fields, that process seems to only take into account the 'new' blocks, ignoring the previously existing blocks.  This then causes most of those blocks not to appear, because the block queries being performed are finding the first of the original blocks which is no longer associated with any block structure.  Deleting the orphaned blocks, as per @jerwarren's suggestion, does return the situation to normal.
As @rbaud has said, this suggests an issue with checking whether or not a block is new on entries with more than one Neo field.  Unfortunately, though @jerwarren's suggestion of disabling the saveModifiedBlocksOnly setting would make sense, it doesn't appear to be working for me.  I'll continue to look into this; both of you are welcome to continue looking into this as well, if you'd like, the extra efforts to track down the exact cause would definitely be appreciated.
That all being said, the former Neo release 1.5.0 was unstable, due to bugs like this and #118 -- hence why it was pulled from the release feed, and therefore should not be used in production environments.  Anyone wanting to use the latest from the craft-2 branch to help test any bugfixes for the 1.5.1 release in a development environment is welcome to do so, but for anyone else, until Neo 1.5.1 is released, the recommended course of action remains to use the official most recent stable release of the Neo 1.x series, which is 1.4.1.

After further testing and improvements, we feel confident enough to release Neo 1.5.1 now with the fix for this issue.  Due to the move to the craft-2 branch since 1.5.0, this release won't appear on a Craft installation's updates page, so it'll need to be downloaded from its release page on GitHub.
@theskyfloor if you regain access to that client's site, try out the 1.5.1 release and let us know if the situation has been resolved.

Not sure if I'm experiencing this same issue or not. Recently upgraded site from Craft 2 to Craft 3. Neo blocks were intact, but when I go to save, all blocks disappear. I can see the blocks exist in the db table, linked to the correct owner, but they don't appear.
If I switch back to an earlier revision, the blocks are there, but when trying to revert, the Neo field remains empty. Anyone with a similar issue for Craft 3?

@engram-design Which versions of Neo for Craft 2/3 were you using?  I don't think it's related to this issue, but it sounds like something might have gone wrong with the block structure somehow.  Could you please check the neoblockstructures table for the structureId for an affected field/owner/site, and then check the structureelements table for the elements with that structureId and see if their elementIds match the IDs of the Neo blocks?

We were using 1.4.1 for C2, and 2.2.5 for C3. At first, I thought it might be because all the craft_neoblocks and craft_neoblockstructures rows had NULL as the ownerSiteId, but setting that to 1 didn't seem to help.
I've cross-referenced all those tables/values and everything seems to be in place. Going to clone this site locally and dive in...

@ttempleton Yep, ignore this - this is an issue with https://github.com/aelvan/Preparse-Field-Craft, as disabling the plugin rectifies the situation. However, a handy thing to note in your support.

@engram-design Will do, thanks!

@ttempleton I don't think this is fixed, even in 1.5.2. Working on a site, I'm still loading up pages in Craft that suddenly have half their Neo blocks missing. The blocks are still in the database, and they seem to render on the front-end still. But if I want to edit the page, I need to recreate all the content because as soon as it's saved, the orphaned blocks are purged from the database.

I'm still seeing this happen on 1.5.2 with the latest craft version.
I seem to be losing fields randomly, and it SEEMS as if it's happening on fields that were previously removed from the page.
How can I best help troubleshoot?

Also experiencing issues with Neo 1.5.0 deleting fields on save. May be related to #128 - I tinkered locally with my database and deleted duplicate entries in neoblockstructures for the ownerId that was erroring on save, and the fields are appearing as expected. Definitely not sure what the repercussions are for deleting those records though...
Also, increased max_input_vars=5000

@ttempleton Yep, ignore this - this is an issue with https://github.com/aelvan/Preparse-Field-Craft, as disabling the plugin rectifies the situation. However, a handy thing to note in your support.

In case it helps anyone else I'll just add here that we ran into this, too. Some neo blocks were being lost for us on a Craft 2 to 3 update. But taking Preparse out of the equation solved that issue for us.

Can confirm we're seeing in 1.5.2 as well, will update with a fix if I find anything.

I have this problem appearing again after updating to the latest version of the neo plugin on a multi language site. (Craft 3.4.13 / Neo 2.7.5) When saving any entry (basically creating a new version) in a locale, the neo content on the other locales just disappears. Resetting it to an old version of the entry did not work.
I remember that I had this issue also a few months back, it cost me a lot of time to figure this out, and i think i somehow 'fixed' the issue by saving each page again as a new entry. I would loose the old versions, but somehow the neo entries reappeared. Is there any permanent solution to this issue, or is a workaround known? Currently it is quite impossible to do a system update without breaking the whole site, and not even knowing because the update process went 'ok'.

Hey @rhoffmann,
Can you update to the latest neo version? There has been some changes when saving for multisites and how the structure is created for it.

Hello @pvldigital,
thanks for the hint. I updated to this version and it seems to have fixed it, i could revert the entry to a previous state.


jaaa: 0.8.4 -> 0.9.2

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from jaaa.
meta.description for jaaa is: '"JACK and ALSA Audio Analyser"'.

Checks done (click to expand)

built on NixOS
Warning: no invocation of /nix/store/y21jmnnmq309nc7xh4k8cav96wv7qnqj-jaaa-0.9.2/bin/jaaa had a zero exit code or showed the expected version
0 of 1 passed binary check by having a zero exit code.
0 of 1 passed binary check by having the new version present in output.
found 0.9.2 with grep in /nix/store/y21jmnnmq309nc7xh4k8cav96wv7qnqj-jaaa-0.9.2
directory tree listing: https://gist.github.com/01162d7dac679d53e49d90f921472c13
du listing: https://gist.github.com/f6923c862673c287a24106db74db60a5

Instructions to test this update (click to expand)

One-time optional setup to skip building using Cachix:

Install cachix from https://cachix.org/
Use r-ryantm's cache:cachix use r-ryantm

Test this update by entering a nix shell, seeing what is inside the
result, and if applicable, running some binaries:
nix-shell --pure -I nixpkgs=https://github.com/r-ryantm/nixpkgs/archive/cfdb4ceb935ce2c86fdea3e4bc3076afcf81c9d2.tar.gz -p jaaa
ls -la /nix/store/y21jmnnmq309nc7xh4k8cav96wv7qnqj-jaaa-0.9.2

cc @magnetophon for testing.

Success on x86_64-linux (full log)
Attempted: jaaa
Partial log (click to expand)
install -d /nix/store/y21jmnnmq309nc7xh4k8cav96wv7qnqj-jaaa-0.9.2/bin
install -m 755 jaaa /nix/store/y21jmnnmq309nc7xh4k8cav96wv7qnqj-jaaa-0.9.2/bin
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/y21jmnnmq309nc7xh4k8cav96wv7qnqj-jaaa-0.9.2
shrinking /nix/store/y21jmnnmq309nc7xh4k8cav96wv7qnqj-jaaa-0.9.2/bin/jaaa
strip is /nix/store/h0lbngpv6ln56hjj59i6l77vxq25flbz-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/y21jmnnmq309nc7xh4k8cav96wv7qnqj-jaaa-0.9.2/bin
patching script interpreter paths in /nix/store/y21jmnnmq309nc7xh4k8cav96wv7qnqj-jaaa-0.9.2
checking for references to /build in /nix/store/y21jmnnmq309nc7xh4k8cav96wv7qnqj-jaaa-0.9.2...
/nix/store/y21jmnnmq309nc7xh4k8cav96wv7qnqj-jaaa-0.9.2

Success on aarch64-linux (full log)
Attempted: jaaa
Partial log (click to expand)
install -d /nix/store/1s9k1khn392rahcaq2bc303v9h5plxcw-jaaa-0.9.2/bin
install -m 755 jaaa /nix/store/1s9k1khn392rahcaq2bc303v9h5plxcw-jaaa-0.9.2/bin
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/1s9k1khn392rahcaq2bc303v9h5plxcw-jaaa-0.9.2
shrinking /nix/store/1s9k1khn392rahcaq2bc303v9h5plxcw-jaaa-0.9.2/bin/jaaa
strip is /nix/store/y4ymnvgxygpq05h03kyzbj572zmh6zla-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/1s9k1khn392rahcaq2bc303v9h5plxcw-jaaa-0.9.2/bin
patching script interpreter paths in /nix/store/1s9k1khn392rahcaq2bc303v9h5plxcw-jaaa-0.9.2
checking for references to /build in /nix/store/1s9k1khn392rahcaq2bc303v9h5plxcw-jaaa-0.9.2...
/nix/store/1s9k1khn392rahcaq2bc303v9h5plxcw-jaaa-0.9.2


Add Open API spec with generated client

Purpose
Examples
Checklist

[ ] Linked to an issue
[ ] Updated the changelog
[ ] Added tests
[ ] Updated the spec
[ ] Checked native-image compatibility

@KamalikaSene it seems you have missed to commit the license.txt file


Updates for M365 app support GA (desktop, web, mobile)

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/m365-apps/extend-m365-teams-personal-tab.md
96
22
link
:white_check_mark:

msteams-platform/m365-apps/overview.md
93
8
link
:white_check_mark:

msteams-platform/m365-apps/prerequisites.md
94
19
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/m365-apps/extend-m365-teams-personal-tab.md
96
22
link
:white_check_mark:

msteams-platform/m365-apps/overview.md
93
8
link
:white_check_mark:

msteams-platform/m365-apps/prerequisites.md
94
19
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/m365-apps/extend-m365-teams-personal-tab.md
96
22
link
:white_check_mark:

msteams-platform/m365-apps/overview.md
93
8
link
:white_check_mark:

msteams-platform/m365-apps/prerequisites.md
94
19
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/m365-apps/extend-m365-teams-personal-tab.md
94
29
link
:white_check_mark:

msteams-platform/m365-apps/overview.md
93
8
link
:white_check_mark:

msteams-platform/m365-apps/prerequisites.md
94
19
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.


net.add_bursty_drive() uses the same parameter values for all cell types

@cjayb I just found a major issue with net.add_bursty_drive(). It seems that only the last value in the weights/delays dictionaries are applied to each cell type. Here's a minimal example to reproduce:
import os.path as op
import hnn_core
from hnn_core import read_params, default_network, simulate_dipole

hnn_core_root = op.dirname(hnn_core.__file__)
params_fname = op.join(hnn_core_root, 'param', 'default.json')
params = read_params(params_fname)

net = default_network(params)

# Only the last value is stored in the drive conn
weights_ampa = {'L2_basket': 1, 'L2_pyramidal': 3,
                   'L5_basket': 2, 'L5_pyramidal': 4}

syn_delays = {'L2_basket': 0.1, 'L2_pyramidal': 0.1,
                 'L5_basket': 1.0, 'L5_pyramidal': 203423.0}
net.add_bursty_drive(
    'ex_drive', tstart=10, burst_rate=1e-10, burst_std=20., numspikes=2,
    spike_isi=10, repeats=10, location='proximal',
    weights_ampa=weights_ampa, synaptic_delays=syn_delays, seedcore=14)

for type_name, drive in net.external_drives['ex_drive']['conn'].items():
    print(type_name, drive['ampa'])

This does not impact the evoked or poisson drives. You'll note in plot_simulate_alpha.py that the same weights are used for all cell types which is possibly why we didn't notice this.

Nice catch @ntolley ! test_network.py should be made to catch this.


Use native Node.js fetch

Since Node.js 17.5, Node.js has had native fetch support. This means we can no longer support Node.js 16.

Wonder why that test is not running...

Testing passing for me locally.

Wonder why that test is not running...

Because we dropped support for Node.js 16 in doing this.


Android 11 not working this repository

if target version 30  this repository can't work in Android 11 please give me solution

Hi, @ganda5553 , did you manage to solve the issue? How did you make it working for Android 11 ?