AnimatedSprite doesn't work when .textures are swapped on 'dev'

Expected Behavior
If you have an animatedSprite with textures ['1', '2', '3'], but then swap them out for textures ['a', 'b', 'c'] and called updateTexture(), you'd expect to see texture 'a' displayed
Current Behavior
After https://github.com/pixijs/pixi.js/pull/6487 - this now stops a texture update if the frameIndex hasn't changed. This is fine for when .textures stays the same between calls, but if they're swapped out dynamically, this breaks. Maybe resetting previousFrame to null when textures is set might help
Possible Solution
Previous PR needs re-investiga
Steps to Reproduce
Environment

pixi.js version: dev
Browser & Version: Chrome 80
OS & Version: Windows 10
Running Example: https://www.pixiplayground.com/#/edit/-elBHgYoZlcYkIALyPXC4

Makes sense. Pinging @JetLua, can you take a look at this? We should add a unit-test for setting textures.

I've had a little hack, and just adding
this._previousFrame = null;

above
this.gotoAndStop(0);
this.updateTexture();

in the textures setter seems to work, but not had a chance to verify properly. Should be easy to unit test any fix


Feature 509 if pcp combine run limitation

Added functionality to allow users to explicitly define the field info instead of deriving it from the var list ([FCST/OBS]VAR[NAME/LEVELS]). Updated a use case to show how the conf should be changed and that explicitly defining the var info works correctly. Also added SKIP_IF_OUTPUT_EXISTS functionality for USER_DEFINED mode (as requested by Brian Matilla).

We discussed these changes in a meeting and determined that they make sense for the time being. I updated one of the use cases to use explicit field naming so there is an example of how the use cases should be set up going forward.


Docker Hub: Update title and description

Description
Manifest updates for Docker Hub.
Type of change

Bug fix / improvement for somebody else's extension. Extension author: @k8scat

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing

Missed the spelling during review (it's officially "Docker Hub"), fyi @k8scat


Background video

Hi,
I need to insert a video as a background, so I put it inside an AbsoluteLaout before my FlexboxLayout, but if the aspect ratio of the video is not identical to the aspect ratio of the phone I see whitespace.
I would like to have a real full screen video, though it could seems cropped

Try setting fill
From the docs:

fill - (boolean)
If true, the aspect ratio of the video will not be honored and it will fill the entire space available

fill property doesn't maintain the aspect ratio, I need to "zoom" video to the center covering all the screen


Added breast cancer staging computations

Added methods and lookups to convert T,N,M to prognostic stage and prognostic stage to T,N,M for the 5th, 6th, and 7th editions of clinical staging for breast cancer.
const staging = require('lib/staging');

// uses only the 7th edition for these computations:
const prognosticStage = staging.breastCancerPrognosticStage('T1', 'N2', 'M0');

// 5th, 6th, and 7th editions are all valid (defaults to 7th):
const values7thEd = staging.breastCancerPossibleTNM('IIB');
const values6thEd = staging.breastCancerPossibleTNM('I', 6);

The prognosticStage is returned as a display-ready string, e.g. 'IIIA'.
Possible TNM values are returned as 2D array, e.g.:
[ ['T1','N1','M0'], ['T1','N2','M0'] ]

Also added unit tests for these library functions. I'm not sure how yarn test is configured for react, so I've just been using good ol' fashioned mocha:
From the top-level project directory, simply run:
mocha

You should see something like:

  breastCancerPrognosticStage
    ✓ should compute valid prognostic stages given T, N, M
    ✓ should return null for invalid T, N, M values
    ✓ should return null for undefined staging given T, N, M
    ✓ should be case-insensitive

  breastCancerPossibleTNM
    ✓ should return a list of possible T, N, M tuples given a prognostic stage
    ✓ should return all permutations of T and N for stage IV
    ✓ should return an empty list for an invalid staging edition
    ✓ should return an empty list for an unknown prognostic stage
    ✓ should default to the 7th edition if none is specified
    ✓ should be case-insensitive

  10 passing (12ms)

Now that we have unit tests for something, perhaps we should also setup Travis CI?

This looks great Carlton! Can we integrate this into Flux Notes? I guess for now that would just mean replace our function that calculate stage from TNM with a call to your library?

I'm fine with merging this. Not sure if Nicole or Dylan want to take a look

I want to make one minor adjustment to see if I can get it to work easily with yarn. That way we're using yarn for our full build/test/run process. Let's review at scrum before merging.

Shelving the testing for now. Ready to merge.

Looks good on my end. I'll merge it and Carlton said he'll make a Jira task for integrating this into the current infrastructure. It'll go in the backlog and we can revisit it next sprint planning meeting.


Feature

Ability to create multiple metronomes would be very nice

Hi, thanks for the suggestion, but I think being able to create multiple metronomes would cause too much clutter since there has to be at least two times the amount of settings and I'm not sure how that would work.

I think it would be useful if you could add it


Compat: Allow get location calls

@ironman-machine try

Hello @LaurenSpiegel
"try": Success: Try build successfully launched on 'http://ci.ironmann.io/gh/scality/Integration/14937' with the following env. args:
{
    "SCALITY_INTEGRATION_BRANCH": "ultron/rel/6.4",
    "REPO_NAME": "S3",
    "DEFAULT_BRANCH": "rel/6.4",
    "SCALITY_S3_BRANCH": "fix/getLocation"
}

PR has been updated. Reviewers, please be cautious.

Hello @LaurenSpiegel
"try": Success: Try build successfully launched on 'http://ci.ironmann.io/gh/scality/Integration/14951' with the following env. args:
{
    "SCALITY_INTEGRATION_BRANCH": "ultron/rel/6.4",
    "REPO_NAME": "S3",
    "DEFAULT_BRANCH": "rel/6.4",
    "SCALITY_S3_BRANCH": "fix/getLocation"
}

:sunny: :+1: circleCI test succeeded!

end to end passed: http://ci.ironmann.io/gh/scality/Integration/14951


Bifrost 0.0.2

🔥 Bifrost 0.0.2 is almost here! 🔥
New features:

Configuring account has been moved to backend by adding a temporary signer on user's account. This makes the whole process much faster, easier to maintain and less error prone (only 1-2 recovery transactions needed).
Time-locking account during a token sale. Close #267.
Allows using Distribution account (ex. when Issuing account has been locked). Close #251.
Automatically imports database schema when server is started (or asks to recreate DB if schema is out of date). We are not implementing schema migrations here because Bifrost deployments are short-lived (so #86 still open).
"Account configuration" section in README.

And additionally it closes #350 because it was needed to create a transaction with time bounds.

Got a question about LockUnixTimestamp. Does this have to be a timestamp in the future? If so do we test if the timestamp given meets that criteria?

We don't have any checks in place right now. We can do it but I think people can still enter a timestamp that is in a future but before the locking period ends by mistake. I'd be more concern by setting the value too far in a future (like 10 years ahead 😉) so it basically blocks assets for a long time.

Yes its definitely more serious if its too far in the future. I guess we can always add the checks in future iterations.

@poliha added a new bullet in "Going to production" section of the README file.


Added observedGeneration to FederatedCluster status

Similar to FederatedTypeConfig, adding ObservedGeneration field in the status of FederatedCluster to allow users to determine whether the controller backing a resource has 'seen' the latest version of that resource's spec. This will increase understandability of the behavior of the system.

cc/ @pmorie @marun

/ok-to-test

@sohankunkerkar I think this PR should ensure the controller populates the field.

@marun I'm working on adding this field in the controller for both FederatedCluster and FederatedTypeConfig. Should I track this under different PR?

@sohankunkerkar I think the value in adding the field is populating it, and that adding the field+populating it for each of the types in question is the order I would choose vs adding the field for both and then populating it.

@marun makes complete sense. I will not create a separate PR for these changes instead add it in the existing PR itself.

Closing this PR after having some discussion with @pmorie


Gym Pokemon leveling up

Describe the bug
When doing gym battles the gym pokemon start to level up when they are not suppose to
To Reproduce
Steps to reproduce the behavior:

Battle a gym leader
see error

Expected behavior
The gym pokemons should not level up or get xp
Username:
itsAmaze
Server name (all applicable):
All Servers

closing as https://github.com/NebulaMC-GG/Bugs-and-Issues/issues/2317 details the same issue


In Plain Sight audio guides: tagging guide selection

We want to know if the following change has improved the user experience
User experience of exhibition is enhanced by audio guides.
Definition of success is
Users listen to the audio guides.
We'll know if we're succeeding if we measure the following metric and this happens
By tagging the audio guides for QR and non-QR users, "events" for the different guides can be collected which shows users listening to different audio guides beyond the first one.
Definition of failure is
Users don't listen to the audio guides.
We'll know if we're failing if we measure the following metric and this happens
There are few events for the audio guides beyond the first guide.

Just checking, is this not showing that this is a QR hit? usingQRcode=true
I can see this data in GA.
https://wellcomecollection.org/guides/exhibitions/YzwsAREAAHylrxau/audio-without-descriptions?usingQRCode=true&stopId=mati-armour-8
On desktop/direct visits (non-QR), I note that the play button doesn't trigger a change in URL, so presumably non-QR visits aren't triggering any audio plays? Would this just entail having a usingQRcode=false but otherwise follow the same pattern? Or is there an alternative to this where an event on all audio players should capture:

QR or non-QR
Play button activated
stopID

@jennpb non-QR visits are triggering audio plays but because they don't trigger any changes in url, all play buttons activated just show up as events on the audio player homepage without any information about which stops they selected. So for all I know they all listened to stop 1 and then decided that was more than enough.
There is an event called button already in GA but this is not linked to the audio player actions.

This work is now covered by #9038


Nice-to-have Features

@dieghernan

[x] Redraw risk areas while dragging (actual behaviour seemingly linked to mouseup ). Leaflet reference

[x] Alternatively/complementary, paint the off-chart areas of on-chart regions to avoid glitchy square cutoffs while dragging.

[x] Add status-change dates on the tables and the clickable information on the map.

Regarding the first issue, don't know how to do it even in pure Leaflet (or even possible, the official docs shows the same glitch).
If solved, it should be somehow implemented on R (note that R uses https://leafletjs.com/reference-1.3.4.html, not 1.7.1).
Other alternative could be using points instead of polygons: http://rstudio.github.io/leaflet/markers.html#marker-clusters
Last option would be not using interactivity and creating static maps, although personally I would prefer to have interactive maps.
See an example of a full html Leaflet map (create an empty test.html file and copy the code inside):
<!DOCTYPE html>

	<title>Minimal page | leaflet-providersESP</title>
	<meta charset="utf-8" />
	<meta name="viewport" content="width=device-width, initial-scale=1.0">

	<link rel="stylesheet"<EMAIL_ADDRESS>/>

The first issue can be alleviated on Javascript with the option {renderer: L.svg({ padding: 0.5 })}. The padding value can be tuned to find a good performance trade-off. See Leaflet/Leaflet#2814.
@dieghernan can you add the option directly on the R code?
<!DOCTYPE html>

	<title>Minimal page | leaflet-providersESP</title>
	<meta charset="utf-8" />
	<meta name="viewport" content="width=device-width, initial-scale=1.0">

	<link rel="stylesheet"<EMAIL_ADDRESS>/>

Nice!! I have been investigating how to implement this on R Leaflet with no luck, so I would focus on other tasks by now.

Regarding status-change dates, shouldn’t be a problem as long as we get the data.
By now, information is retrieved manually, so it would be a matter of adding a new column on db_countries.csv. Note that this feature would require more man-power, as currently there is not a safe way for scrapping data from the pdfs.

@dieghernan check out https://github.com/dieghernan/RKI-Corona-Atlas/commit/a34c695eea726decf47b9ff4fb3d96f4d6c4c6d5
I have finished a somewhat stable scrapper off the German website. On top of the basic info we already had, it extracts the German comments for every country. I have also parsed the starting date of the current status in the column risk_date. Check out the resulting db_scrapped.csv
I would rather not scrap the English PDF for the time being, since PDF scrapping looks too daunting to me in comparison with HTML. But there is the German info and the risk_date, so next week we can talk about adding extra information in the map :)

All that is now implemented after #3

Reopened to track new features

For the info in the English map I would do something simple like:
NAME_ENGL
Risk designation
% if country.risk_date %
since country.risk_date
% endif %
% if country.regions.size > 0 %
A different risk level may apply for the following regions:
% for region in country.regions %

region.NAME_ENGL, since region.risk_date

% endfor %

For the info in the English map I would do something simple like:
NAME_ENGL
Risk designation
% if country.risk_date %
since country.risk_date
% endif %
% if country.regions.size > 0 %
A different risk level may apply for the following regions:
% for region in country.regions %

region.NAME_ENGL, since region.risk_date

% endfor %

See https://github.com/dieghernan/RKI-Corona-Atlas/commit/cd6bb0ab928c0e0635b1646e4fae72e70eb08f06


Add cursor pointer on Active Projects Button

@ceilican please assign this to me i would like to work on this


Integrated skip verify, gomail and templates

I have switched the mail sending mechanism to gomail to get more power
out of the sending method. Beside that I have added a flag to skip
certificate verification.
On top of that I have integrated the drone templating to make it
possible to overwrite the email templates optionally.
To be more compatible I have created a plaintext message format with the
help of html2text as well.

What are the use cases that net/smtp can't handle and github.com/go-gomail/gomail does?

What are the scenarios that net/smtp can't handle and github.com/go-gomail/gomail does?

Getting rid of x509: certificate signed by unknown authority is much more complicated with net/smtp because you have to rewrite SendMail on your own.

That's it?

Note, however, that this is insecure and should not be used in production.

Which I absolutely agree with, also given letsencrypt and ACME spec in general. This should never be used in production.

That's it?
Note, however, that this is insecure and should not be used in production.
Which I absolutely agree with, also given letsencrypt and ACME spec in general. This should never be used in production.

I think it's the decision of the user how he's running his mail servers. We already had a request related to exactly that. I have added another piece to the reasons... easier multipart handling. As you are more than familar with golang, maybe you can give me a better implementation with pure net/smtp? I would be happy about it.

Multipart? What about mime/multipart.

It's just seems this change will give up too much for a single additional option, which is not even recommended for production use, probably covering very small amount of users who run their own smtp servers (which is a bad idea on its own unless you have a dedicated team managing your smtp).

It's just seems this change will give up too much for a single additional option, which is not even recommended for production use, probably covering very small amount of users who run their own smtp servers (which is a bad idea on its own unless you have a dedicated team managing your smtp).

I sort of agree. The beauty of plugins is that if one person wants to skip SSL verification they can fork the project and make the necessary changes. Plugins don't have to do everything for everyone.

But it's also the multipart email, not only the skip verify option. And even just writing multipart with std lib will bloat the code much more.

Im not agree,disabling ssl verify can bring ability to prepare and debug
things before issue any valud cert. Also some services does not have valud
certs, and i need to contact them. Why golang std lub have ability to skip
verify?
23 дек. 2015 г. 20:39 пользователь "Brad Rydzewski" <
<EMAIL_ADDRESS>написал:

It's just seems this change will give up too much for a single additional
option, which is not even recommended for production use, probably covering
very small amount of users who run their own smtp servers (which is a bad
idea on its own unless you have a dedicated team managing your smtp).
I sort of agree. The beauty of plugins is that if one person wants to skip
SSL verification they can fork the project and make the necessary changes.
Plugins don't have to do everything for everyone.
—
Reply to this email directly or view it on GitHub
https://github.com/drone-plugins/drone-email/pull/4#issuecomment-166952950
.

@tboerger this is a simple multi-part gist that I've seen used in the past:
From: {{ FROM }}
To: {{ TO }}
Subject: {{ SUBJECT }}
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="e255104e821101849e9aefa6986"

--e255104e821101849e9aefa6986
Content-Type: text/plain; charset=UTF-8

{{ TEXT MESSAGE }}

--e255104e821101849e9aefa6986
Content-Type: text/html; charset=UTF-8

{{ HTML MESSAGE }}

--e255104e821101849e9aefa6986--

Im not agree, disabling ssl verify can bring ability to prepare and debug things before issue any valud cert.

While I agree in principal, does this really apply to Drone? I would expect someone to setup and debug smtp certificates using a mail client or some command line tools, not using Drone.

Also some services does not have valud certs, and i need to contact them. Why golang std lub have ability to skip verify?

Do you need to contact these services via Drone? I would expect Company X uses Drone and connects to a single Company X smtp server, rather than multiple insecure smtp servers.
While I'm sure there are situations where someone wants to skip TLS verification when sending an email from Drone, I would imagine this is the exception and not the norm. And if it is the exception, someone can always create their own custom plugin.

Plugins don't have to do everything for everyone ... just most things for most people :smile:

@bradrydzewski I totally agree in principal, but (and being selfish here) I personally would like to see the skip TLS verification that @tboerger is providing.
At my work, its not so much the mail server that is the issue most of the time, or how they have TLS configured... usually its the damn proxies (and transparent proxies) in between.  I think it is a common pattern to have multiple SMTP servers running behind a loadbalancer/proxy with a DNS name internally.  Not all internal proxies (at my work) have the latest versions/ciphers for TLS, so they often break (man-in-the-middle) or corrupt the request even if you specify options like  HTTPS_PROXY.  Having a TLS skip option helps with debugging so that we can tell the folks that run the proxy or other services to upgrade or whitelist that URL/service.
I would assume other corporations have similar issues maintaining current TLS ciphers and certs, but maybe we are "special" in that sense :stuck_out_tongue_winking_eye:
In summary I think we can take it or leave it and maybe SMTP should be considered differently, but as a debug option it is nice to have.

@bradrydzewski so what is the decision for this pull request? What do you want to keep and what do you want to have changed?

my preference is to only make people update a single template (so no wrapper) and in the docs we just give them the link to a sample template in the repo they can customize. I can see most people wanting to completely start from scratch and fully brand the email template

I have dropped the wrapper part and added it as a single template. This is how the default template looks like:

Are you fine with merging it that way?

The remote templates depend on https://github.com/drone/drone-go/pull/18

LGTM

LGTM


Create Package Test Failed

https://github.com/amp-buildpacks/foundry/actions/runs/8698598286/job/23855957987
AMP Buildpack for Foundry main
  https://github.com/amp-buildpacks/foundry
  Creating package in /home/runner/buildpack
  Pre-package with scripts/build.sh
    go: downloading golang.org/x/sys v0.19.0

  Caching Foundry 0.2.0
    Downloading from https://raw.githubusercontent.com/foundry-rs/foundry/master/foundryup/install
    Verifying checksum
unable to download Foundry. see DEBUG log level
Error: Process completed with exit code 1.
##[debug]Finishing: Create Package

This problem has reappeared. Please try adjusting the way you download the foundry binary executable file.
https://github.com/amp-buildpacks/foundry/actions/runs/8835173011/job/24259441190

The reason for the error is that the download address uses a dynamic master branch whose sha256 does not match the value in the configuration.
This has now been adjusted to the exact version, see: https://github.com/amp-buildpacks/foundry/commit/829ca7eb6b27d222690056a19ba39ff8c00810b2


Fix typo in CMake variables name

CMake variables are misspelled in the Conan recipe

Thanks @jgsogo, I'll keep the VALUE_PTR_LITE_OPT_BUILD_... and correct the variable in CMakeLists.txt and remain consistent with the other lite projects.

So then we can discard this PR, right?

Indeed. Thanks for pointing out the problem!


Provide option in UI to validate more than 20,000 rows

We have some large datasets to publish. We validate them using the GoodTables user interface or CSVLint before publishing. For big CSV files (>20,000 rows) we can't use GoodTables.
This feature request would allow users to manually override the 20,000 row limit (with an appropriate warning and upper limit).

@Stephen-Gates for your data, what would be a good upper limit that would not restrict you in any way? 100,000 rows? More?

And just to be clear, this issue is about exposing the option via the UI, as the API itself already supports the option.

@pwalsh yes it is about exposing the option via the UI.
The data publishing team has left for the day. An answer for you tomorrow.

@pwalsh. Two biggest datasets I found:

Vehicle registration - 23Mb zipped
Road Crash - 115Mb = 251706 rows

@pwalsh 100,000 row will address 99% of our requirements. Two datasets above are outliers re: size.

@Stephen-Gates ok great thanks.

FIXED.


Engagement team needs the PHE form results to be produce on a RS template

Problem statement
We recently polled STLTs and COVID data senders on their responses to the public health emergency ending on May 11, 2023. We need to input the results into a RS template.
What you need to know
Sharon and customer support team has the link to the output of the data.
Acceptance criteria

[ ] Polished version of the data

To do

[x] Input the data into a RS template
[x] Share with LaFreda

@jakefishbein-navapbc @LaFreda1 Hello, here's the link to the data: https://app.smartsheetgov.com/sheets/xG9g6X3vg34GwchvFH2jrhjW65ff64rRjfqfMCv1?view=grid&filterId=1543982024025988
Also, here's the dashboard: https://app.smartsheetgov.com/dashboards/5prQ2pfv22Jr387xp5pXQFPFJ97G4xrVHHhCMCw1

@sliu1000 I don't have permission to access the dashboard. Can you add me?

@jakefishbein-navapbc Are you using your cdc email? You should be able to access it.

@LaFreda1 @sliu1000 Here is the survey deck. please review for accuracy.


Dropped routes with "convert routes"

What I did
I ran "Convert routes to v2 convention" from on a directory that looked like this
tree routes before: 19 directories, 47 files
routes/
├── __anonymous
│   ├── change-password.tsx
│   ├── forgot-password.tsx
│   ├── login.tsx
│   ├── logout.tsx
│   └── webhooks.ld-update.tsx
├── __anonymous.health.tsx
├── __anonymous.tsx
├── index.tsx
├── participant
│   ├── sessions
│   │   ├── $courseId
│   │   │   └── assessments
│   │   │       ├── $evaluationId
│   │   │       │   ├── index.tsx
│   │   │       │   └── result.tsx
│   │   │       ├── index.tsx
│   │   │       └── new.tsx
│   │   ├── $courseId.tsx
│   │   └── index.tsx
│   └── sessions.tsx
├── sessions
│   ├── $courseId
│   │   ├── assessments
│   │   │   ├── $assessmentType.$assessmentId
│   │   │   │   ├── $evaluationTemplateId
│   │   │   │   │   ├── evaluate.$participantId.tsx
│   │   │   │   │   ├── index.tsx
│   │   │   │   │   └── response-breakdown.tsx
│   │   │   │   ├── index.tsx
│   │   │   │   └── response-breakdown.tsx
│   │   │   ├── $assessmentType.$assessmentId.tsx
│   │   │   ├── $evaluationId.tsx
│   │   │   ├── components
│   │   │   │   └── AssessmentList.tsx
│   │   │   ├── index.tsx
│   │   │   └── types.ts
│   │   ├── facilitators
│   │   │   └── update.tsx
│   │   ├── participants
│   │   │   ├── index.tsx
│   │   │   ├── results.$participantId.tsx
│   │   │   ├── signin-info
│   │   │   │   ├── index.tsx
│   │   │   │   └── pdf.tsx
│   │   │   └── update.tsx
│   │   ├── participants.tsx
│   │   └── summary
│   │       └── index.tsx
│   ├── $courseId.tsx
│   ├── components.tsx
│   ├── create.tsx
│   └── index.tsx
└── users
    ├── $userId.change-password.tsx
    ├── $userId.edit.tsx
    ├── bulk-import
    │   ├── csv.ts
    │   ├── facility.tsx
    │   ├── index.tsx
    │   ├── upload.tsx
    │   └── validation-preview.tsx
    ├── bulk-import.tsx
    ├── create.tsx
    └── index.tsx

19 directories, 47 files

npx remix routes before
<Routes>
  <Route file="root.tsx">
    <Route path="users/:userId/change-password" file="routes/users/$userId.change-password.tsx" />
    <Route path="participant/sessions" file="routes/participant/sessions.tsx">
      <Route path=":courseId" file="routes/participant/sessions/$courseId.tsx">
        <Route path="assessments/:evaluationId/result" file="routes/participant/sessions/$courseId/assessments/$evaluationId/result.tsx" />
        <Route path="assessments/:evaluationId" index file="routes/participant/sessions/$courseId/assessments/$evaluationId/index.tsx" />
        <Route path="assessments" index file="routes/participant/sessions/$courseId/assessments/index.tsx" />
        <Route path="assessments/new" file="routes/participant/sessions/$courseId/assessments/new.tsx" />
      </Route>
      <Route index file="routes/participant/sessions/index.tsx" />
    </Route>
    <Route path="health" file="routes/__anonymous.health.tsx" />
    <Route path="sessions/:courseId" file="routes/sessions/$courseId.tsx">
      <Route path="assessments/:assessmentType/:assessmentId" file="routes/sessions/$courseId/assessments/$assessmentType.$assessmentId.tsx">
        <Route path=":evaluationTemplateId/evaluate/:participantId" file="routes/sessions/$courseId/assessments/$assessmentType.$assessmentId/$evaluationTemplateId/evaluate.$participantId.tsx" />
        <Route path=":evaluationTemplateId/response-breakdown" file="routes/sessions/$courseId/assessments/$assessmentType.$assessmentId/$evaluationTemplateId/response-breakdown.tsx" />
        <Route path=":evaluationTemplateId" index file="routes/sessions/$courseId/assessments/$assessmentType.$assessmentId/$evaluationTemplateId/index.tsx" />
        <Route path="response-breakdown" file="routes/sessions/$courseId/assessments/$assessmentType.$assessmentId/response-breakdown.tsx" />
        <Route index file="routes/sessions/$courseId/assessments/$assessmentType.$assessmentId/index.tsx" />
      </Route>
      <Route path="assessments/:evaluationId" file="routes/sessions/$courseId/assessments/$evaluationId.tsx" />
      <Route path="facilitators/update" file="routes/sessions/$courseId/facilitators/update.tsx" />
      <Route path="assessments" index file="routes/sessions/$courseId/assessments/index.tsx" />
      <Route path="summary" index file="routes/sessions/$courseId/summary/index.tsx" />
      <Route path="participants" file="routes/sessions/$courseId/participants.tsx">
        <Route path="results/:participantId" file="routes/sessions/$courseId/participants/results.$participantId.tsx" />
        <Route path="signin-info" index file="routes/sessions/$courseId/participants/signin-info/index.tsx" />
        <Route path="signin-info/pdf" file="routes/sessions/$courseId/participants/signin-info/pdf.tsx" />
        <Route path="update" file="routes/sessions/$courseId/participants/update.tsx" />
        <Route index file="routes/sessions/$courseId/participants/index.tsx" />
      </Route>
    </Route>
    <Route path="users/:userId/edit" file="routes/users/$userId.edit.tsx" />
    <Route path="users/bulk-import" file="routes/users/bulk-import.tsx">
      <Route path="validation-preview" file="routes/users/bulk-import/validation-preview.tsx" />
      <Route path="facility" file="routes/users/bulk-import/facility.tsx" />
      <Route path="upload" file="routes/users/bulk-import/upload.tsx" />
      <Route index file="routes/users/bulk-import/index.tsx" />
      <Route path="csv" file="routes/users/bulk-import/csv.ts" />
    </Route>
    <Route path="sessions/create" file="routes/sessions/create.tsx" />
    <Route path="sessions" index file="routes/sessions/index.tsx" />
    <Route path="users/create" file="routes/users/create.tsx" />
    <Route file="routes/__anonymous.tsx">
      <Route path="webhooks/ld-update" file="routes/__anonymous/webhooks.ld-update.tsx" />
      <Route path="change-password" file="routes/__anonymous/change-password.tsx" />
      <Route path="forgot-password" file="routes/__anonymous/forgot-password.tsx" />
      <Route path="logout" file="routes/__anonymous/logout.tsx" />
      <Route path="login" file="routes/__anonymous/login.tsx" />
    </Route>
    <Route path="users" index file="routes/users/index.tsx" />
    <Route index file="routes/index.tsx" />
  </Route>
</Routes>

What I observed
It said it succeeded but it lost a lot of files

tree routes after: 1 directory, 19 files
routes/
├── _anonymous..login.md
├── _anonymous.change-password.tsx
├── _anonymous.forgot-password.tsx
├── _anonymous.health.tsx
├── _anonymous.login.tsx
├── _anonymous.logout.tsx
├── _anonymous.tsx
├── _anonymous.webhooks.ld-update.tsx
├── _index.tsx
├── participant.sessions.tsx
├── sessions.$courseId.tsx
├── sessions._index.tsx
├── sessions.components.tsx
├── sessions.create.tsx
├── users.$userId.change-password.tsx
├── users.$userId.edit.tsx
├── users._index.tsx
├── users.bulk-import.tsx
└── users.create.tsx

1 directory, 19 files

npx remix routes after
<Routes>
  <Route file="root.tsx">
    <Route path="_anonymous/webhooks/ld-update" file="routes/_anonymous.webhooks.ld-update.tsx" />
    <Route path="users/:userId/change-password" file="routes/users.$userId.change-password.tsx" />
    <Route path="_anonymous/change-password" file="routes/_anonymous.change-password.tsx" />
    <Route path="_anonymous/forgot-password" file="routes/_anonymous.forgot-password.tsx" />
    <Route path="participant/sessions" file="routes/participant.sessions.tsx" />
    <Route path="sessions/components" file="routes/sessions.components.tsx" />
    <Route path="sessions/:courseId" file="routes/sessions.$courseId.tsx" />
    <Route path="users/:userId/edit" file="routes/users.$userId.edit.tsx" />
    <Route path="_anonymous//login" file="routes/_anonymous..login.md" />
    <Route path="_anonymous/health" file="routes/_anonymous.health.tsx" />
    <Route path="_anonymous/logout" file="routes/_anonymous.logout.tsx" />
    <Route path="users/bulk-import" file="routes/users.bulk-import.tsx" />
    <Route path="_anonymous/login" file="routes/_anonymous.login.tsx" />
    <Route path="sessions/_index" file="routes/sessions._index.tsx" />
    <Route path="sessions/create" file="routes/sessions.create.tsx" />
    <Route path="users/_index" file="routes/users._index.tsx" />
    <Route path="users/create" file="routes/users.create.tsx" />
    <Route path="_anonymous" file="routes/_anonymous.tsx" />
    <Route path="_index" file="routes/_index.tsx" />
  </Route>
</Routes>

It's not clear to me what the issue is, but hopefully the before/after routes will help. Let me know if I can do any thing to give more data or context.

@jfsiii Thank you for the report! I've been trying to figure this one out because it was reported to me but had no luck due to lack of info. This is greatly appreciated. Will try to replicate with this to find the root cause.

@jfsiii there have been some improvements to the underlying code, could you try this again if it works? I have a feeling it is due to an OS difference because when I test it on windows it works.

@jfsiii there have been some improvements to the underlying code, could you try this again if it works? I have a feeling it is due to an OS difference because when I test it on windows it works.

@AlemTuzlak Still no luck.
Here's some info about the before/initial routes
remix-routes-main.txt
tree-routes-main.txt
And here's what I saw running in VS Code

Here's the routes after conversion
remix-routes-forge.txt
tree-routes-forge.txt
The diff of the last line from the two tree outuput
- 21 directories, 53 files
+ 1 directory, 22 files

I'm not sure of the process for conversion but it's losing alot of routes. All (?) the routes in users/bulk-import/* for example.
In getting the screenshots for this response, I started fresh and ran it in VS Code again. This time I got only the "Flattening route to v2 convention finished!" success message but the results were still the same on disk.
We do have some non-route files in there (a components subdirectory in one, two? types.ts files)
ignoredFilePatterns from remix.config.js
  // ignore all files in routes folder to prevent
  // default remix convention from picking up routes
  ignoredRouteFiles: ['**/*'],
  routes(defineRoutes) {
    // uses the v1 convention, works in v1.15+ and v2
    return createRoutesFromFolders(
      defineRoutes,
      // optionally add the real ignored route files here as needed
      {
        ignoredFilePatterns: [
          // ignore (do not make accessible in UI) any files under `routes/` which:
          // start with a `.`
          '**/.*',
          // are named types.ts, types.tsx, components.ts, etc
          '**/{components,utils,types}.ts{,x}',
          // are in a routes/**/components, routes/**/utils, or routes/**/types directory
          '**/{components,utils,types}/*',
        ],
      }
    );

but there's only a few of them, and none a directory like users/bulk-import which is getting lost
└── users
    ├── $userId.change-password.tsx
    ├── $userId.edit.tsx
    ├── bulk-import
    │   ├── csv.ts
    │   ├── facility.tsx
    │   ├── index.tsx
    │   ├── upload.tsx
    │   └── validation-preview.tsx
    ├── bulk-import.tsx
    ├── create.tsx
    └── index.tsx


Static Binding Generator invokes npm install on build

The best approach will be to install all of it dependencies when the platform is added to the project. Build command should do builds only.
Unless there is very GOOD reason to do as it currently is, we should move the install on platform add

Well, technically the CLI currently installs the dev-dependencies on platform add android, I believe that we can safely remove the npm install step from the build. If it crashes for some users, then they have tampered with the node_modules and should do a platform reinstall.


Load json data into Doris by json-path

Requirements describe
I wish Doris can support json data， that‘s load json data into table by routine load or stream load
It's my idea
Routine load:

Create table for books
CREATE TABLE books(
category varchar(32),
author varchar(32),
title varchar(32),
dt int COMMENT '天分区，格式YYYYMMDD',
price int
) ENGINE=OLAP
AGGREGATE KEY(category,author,title)
PARTITION BY RANGE(dt) (
PARTITION p0 VALUES less than ("20190101"),
PARTITION p20190101 VALUES less than ("20190102"),
PARTITION p20190102 VALUES less than ("20190103")
)
DISTRIBUTED BY HASH(category, author, title) BUCKETS 32
PROPERTIES ("storage_type"="column");

Create Routine Load
CREATE ROUTINE LOAD example_db.books_label1 ON books
COLUMNS(category, author, title, dt, price),
PROPERTIES
(
"format" = "json",
"desired_concurrent_number"="3",
"max_batch_interval" = "20",
"max_batch_rows" = "300000",
"max_batch_size" = "209715200",
"strict_mode" = "false",
"timezone" = "Africa/Abidjan"
)
FROM KAFKA
(
"kafka_broker_list" = "broker1:9092,broker2:9092,broker3:9092",
"kafka_topic" = "my_topic",
"property.security.protocol" = "ssl",
"property.ssl.ca.location" = "FILE:ca.pem",
"property.ssl.certificate.location" = "FILE:client.pem",
"property.ssl.key.location" = "FILE:client.key",
"property.ssl.key.password" = "abcdefg",
"property.client.id" = "my_client_id"
);

kafka json data
{
"jsonpath": [
{"key": "author",   "type": "string",   "value": "$.store.book.author"},
{"key": "category", "type": "string",   "value": "$.store.book.category"},
{"key": "price",    "type": "float",    "value": "$.store.book.price"},
{"key": "title",    "type": "string",   "value": "$.store.book.title"}
{"key": "dt",       "type": "integer",  "value": "$.date"}
],
userdata : [
{
"store": {
"book": [
{"category": "reference", "author": "NigelRees", "title": "SayingsoftheCentury", "price": 8.95},
{"category": "fiction", "author": "EvelynWaugh", "title": "SwordofHonour", "price": 12.99}
],
"bicycle": {"color": "red", "price": 19.95}
},
"expensive": 10,
"date": 20190202
},
]

}
PS:

We must specify format， that's "json"
In json data of kafka， we need contain a jsonpath object
Keyword key is a column name of table
Keyword type is data type in json data
Keyword value is express of the json-path.
userdata is array object, it can contain lots of application data objects.

**  Can you offer some other suggestions ？？**

Can the json path be stored in the routine load task?
Because in the actual scenario, the json message in kafka may be filled with ready-made data. If you need to add the json path to the message, the data needs to be reprocessed, and the size of each message is also increased.
I think kafka json message should be decoupled from doris column

I has completed this function.
PR:  https://github.com/apache/incubator-doris/pull/3230
For example:
CREATE TABLE `test_json_price`(
  `category` varchar(32),
  `author` varchar(32),
  `title` varchar(32),
  `price` double  SUM

) ENGINE=OLAP
AGGREGATE KEY(category, author, title)
DISTRIBUTED BY HASH(category, author, title) BUCKETS 32
PROPERTIES ("storage_type"="column","replication_num" = "1");

CREATE ROUTINE LOAD mediavad.test_json_price_label001 ON test_json_price
COLUMNS(category, author, title, price)
PROPERTIES
(
    "desired_concurrent_number"="3",
    "max_batch_interval" = "20",
    "max_batch_rows" = "300000",
    "max_batch_size" = "209715200",
    "strict_mode" = "false",
    "format" = "json",
    "jsonpath" = "{\"jsonpath\":[{\"column\":\"category\",\"value\":\"$.store.book.category\"},{\"column\":\"author\",\"value\":\"$.store.book.author\"},{\"column\":\"title\",\"value\":\"$.store.book.title\"},{\"column\":\"price\",\"value\":\"$.store.book.price\"}]}"
)
FROM KAFKA
(
    "kafka_broker_list" = "<IP_ADDRESS>:9092,<IP_ADDRESS>:9092,<IP_ADDRESS>:9092",
    "kafka_topic" = "KafkaLoadJsonForDoris",
    "kafka_partitions" = "0,1,2",
    "kafka_offsets" = "0,0,0"
);


Update company affiliation for Tiago Mello

Thank you for contributing to openstack/stackalytics!
openstack/stackalytics uses Gerrit for code review.
Please visit
http://docs.openstack.org/infra/manual/developers.html#development-workflow
and follow the instructions there to upload your change to Gerrit.


Overriding assembly task

I want to run a few checks for assembled jar.
I'm trying to override an assembly task with the following code (using example from https://www.scala-sbt.org/1.0/docs/Howto-Dynamic-Task.html):
assembly in assembly := Def.taskDyn {
  val assembledJar = (assembly in assembly).value
  println("we are in patched assembly")
  Def.task {
    import scala.sys.process._
    val testFilesDir = (resourceDirectory in Test).value / "files"
    testFilesDir.listFiles().foreach { testFile =>
      val exitCode = "some_external_command" !
      if (exitCode != 0) {
        throw new RuntimeException(s"Checking assembled jar failed for $testFile")
      }
    }
    assembledJar
  }
}.value

and this does not work. Jar is assembled, but even the text in println is not printed.
However, if I change assembly to compile - overriding works and the debug line is printed:
compile in Compile := Def.taskDyn {
  println("DYNAMIC 1")
  val old = (compile in Compile).value
 Def.task {
    println("DYNAMIC 2")
    import scala.sys.process._
    val testFilesDir = (resourceDirectory in Test).value / "files"
    testFilesDir.listFiles().foreach { testFile =>
      val exitCode =  "some_external_command" !
      if (exitCode != 0) {
        throw new RuntimeException(s"Task assemblyJarCheck failed for $testFile")
      }
    }
    old
  }
}.value

What I'm doing wrong?

My bad. Sorry for inconvenience.
The trick was that I used assembly in assembly instead of just assembly.
In previous versions of sbt Assembly was a Configuration like Compile. But now it is only a task, so assembly in assembly is meaningless.


Add implementation of: https://ocfl.github.io/extensions/0006-flat-om…

…it-prefix-storage-layout.html

Additionally, there should be a copy of the spec here: https://github.com/UW-Madison-Library/ocfl-java/tree/main/ocfl-java-core/src/main/resources/ocfl-specs

Thanks for the review!

Looks good. Will merge when I'm back from vacation on Monday

@pwinckles : I will keep my eye our for a release in order to remove the extension logic from our codebase. Thanks!

@pwinckles : I will keep my eye our for a release in order to remove the extension logic from our codebase. Thanks!

Just released it, but it may take a little bit to show up in central.


influxdb stops writing data after machine hibernates and wakes up

After machine hibernates and wakes up, Influxdb version 1.0.0-beta3 stops processing insert requests of non-zero timestamp that are submitted via HTTP protocol. Have to reboot machine to get it work.
Insert requests from influx CLI do get processed, though.

@fleapapa Can you please give operating system and hardware specs.

Thanks for your attention!
My OS is Ubuntu 16.04 running as a VM on VirtualBox v5.1.2 on OS X v10.10.5 on a Macbook Air 2015.
$uname -a
Linux osboxes 4.4.0-38-generic #57-Ubuntu SMP
Tue Sep 6 15:42:33 UTC 2016
x86_64 x86_64 x86_64 GNU/Linux
The issue can always be reproduced by a nodejs script calling writeSeries() function of influx client library. After putting my Macbook to sleep and waking it up, the nodejs script continues to write series data but influxdb stops writing the data to database.
At that time, from wireshark capture, i can see http requests with "/write" uri but influxdb doesn't fulfill the requests.
At the same time, however, i can write new series data using influx CLI.
Today, i found those unfulfilled write requests were fulfilled after i reboot the VM. They were NOT fulfilled if i just restart influxdb service.
Thanks again!

closing due to age. if the issue persists in the newest release of influxdb, please open a new issue.


Support Arrow 14

Apache Arrow 14.0.1 has been released.
We should check this version is also compatible.

Arrow 15 is already out.
I will update to use 15.0.0 in Dev container.


Update website

This updates the website and makes it more current. It adopts "Guides"|"Api Reference" as the main navigation and further devides the guides into three sections: "Getting started"|"Advanced"|"Cookbook"
Here "Cookbook" contains the use case examples that were added in #276
I have started filling out the first three guides, and the rest are currently marked "Coming soon"
Deployed

GREAT feedback @jorgelainfiesta.
I've gone over everything and tried to incorporate your suggestions. I've also added three more guides. These were mucgh harder to write, and I'm not as happy with these. We're getting into explaining difficult nuances, and so explaining it clearly and easily is very hard. Nevertheless, let me know what you think.


[DEV-12787] Feature - Bring back identify calls based on utm_id

Codecov Report

Merging #303 (1901c3b) into main (20e2ffe) will increase coverage by 0.13%.
The diff coverage is 100.00%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #303      +/-   ##
==========================================
+ Coverage   98.50%   98.63%   +0.13%
==========================================
  Files          16       18       +2
  Lines         200      220      +20
  Branches       41       44       +3
==========================================
+ Hits          197      217      +20
  Misses          3        3


More Code Cleanup and Comment Fixes

#1321  👈
feature/proof-of-stake

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @tholonious and the rest of your teammates on  Graphite


algol68g: init at 2.8.4

Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Relase notes)

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

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 132024 at e2ec1754 run on x86_64-linux 1

1 package built successfully:

algol68g

1 suggestion:

warning: missing-patch-comment
Consider adding a comment explaining the purpose of this patch on the line preceeding.
Near pkgs/development/compilers/algol68g/default.nix:19:5:
   |
19 |     ./0001-plotutils-png-support.diff
   |     ^


pdbpp overrides python keywords and/or basic functions

At no point should pdbpp override any python keyword or default function.
Example of one problem:
pdbpp overrides list, which is a default function available within every module.
This causes something like the following to fail:
(Pdb++) x = 'abc'
(Pdb++) list(x)
*** Error in argument: 'x'

This problem is much more pronounced in python 3 where most functions now return an iterator.

JFI: you can use !list(x) in this case.

note also that this behavior is not peculiar to pdb++, but it is inherited from the standard pdb:
(Pdb) x = 'abc'
(Pdb) list(x)
*** Error in argument: '(x)'

I agree that it would be nice if pdb++ were smart enough to automatically detect whether list is used as a command or as a function call. I'd be glad to merge a PR about it 😊

This gets addressed/fixed by #82 - ready to be merged, but would rather have somebody ACK it.

With IPython it might prevent you from exiting or quitting (https://github.com/antocuni/pdb/issues/76).


chore(docs): rewriting bbup script, refactoring bb readme for clarity

Please read contributing guidelines and remove this line.

#9073  👈
master

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @signorecello and the rest of your teammates on  Graphite

Waiting for @TomAFrench before merging, to make sure this doesn't block Noir

Just following what we agreed on. Can this please be unblocked? We can iterate later for improvements


Fix build break in jsonpatch branch

@rynowak - could you please take a look. This fix will make jsonpatch branch to build and tests to pass.

:shipit:


API for unknown fields

Currently DynamicMessage stores unknown fields internally and roundtrips them through the byte representation, but there is no API to inspect them.

Would it be possible without much effort to add functions for getting/setting all unknown fields at once as a single Vec<u8> (at least temporarily unless you come up with something more general)?
Background: I am currently in the progress of creating an extension module for python-betterproto  based on prost-reflect for improving (de-)serialization performance (see this PR). For that purpose, I need to be able to convert between your DynamicMessage and their betterproto.Message (including unknown fields).

I had hoped prost would gain support for unknown fields that we could re-use here.
However if there's a real-world need for it, I'm happy to expose some new APIs for this. Would the APIs in #52 be sufficient for your usecase?

Regarding the level of detail this is perfect (even more than I need). However, I'll also need a function to set the unknown fields for conversion of betterproto.Message into DynamicMessage (maybe .push_unknown(&mut self, ...)?). Also (as mentioned in #50)  it would be really nice to have a destructive iterator like pub fn take_unknown_fields(&mut self) -> impl Iterator<Item = UnknownField> to avoid cloning on conversion.
Thanks a lot for starting this PR!

What format are the unknown fields from betterproto.Message in? If they are just bytes, then I think DynamicMessage::merge or DynamicMessage::merge_field should be suffcient to add them into the message.
A push_unknown function would need to do something in the error case when a field with the given number exists, which makes me hesitate to add it.
take_unknown_fields sounds like a reasonable companion to take_fields and take_extensions, I'll add that to the PR

Yes, I see. You are technically right. But when converting back and forth (DynamicMessage -> betterproto.Message -> DynamicMessage) this would mean a bit of unnecessary (de-)serialization, as I would have to call something like msg.merge_field(num, tp, unknown_field.encode()) for each unknown field (I actually haven't found an encode method at first glance. How would I do this?)
Wouldn't it be nicer to have a function DynamicField::set_unknown_field(&mut self, number: u32, wire_type: WireType, buf: &mut B) -> ... with the same semantics but less overhead?
Anyway, it probably isn't actually that much of a deal, and I am very grateful that you are making this possible in the first place. So please go ahead as you feel most comfortable with.

If I am not mistaken, the current API fn take_unknown(&mut self) -> impl Iterator<Item = UnknownField> does not return the field number of the unknown fields, does it? This would be required for conversion.

UnknownField includes the number

Yes, I see. You are technically right. But when converting back and forth (DynamicMessage -> betterproto.Message -> DynamicMessage) this would mean a bit of unnecessary (de-)serialization, as I would have to call something like msg.merge(unknown_field.encode_field(num)) for each unknown field. Wouldn't it be nicer to have a function DynamicField::set_unknown_field(&mut self, number: u32, wire_type: WireType, buf: &mut B) -> Result<(), DecodeError> with the same semantics but less overhead?
Anyway, it probably isn't actually that much of a deal, and I am very grateful that you are making this possible in the first place. So please go ahead as you feel most comfortable with.

I've created an issue for a more extensive unknown fields API: #56 . I do agree that a proper setter function would be nicer, but I'd like to put some more thought into the API design.

Version 0.11.5 is released with the new APIs


Feature/suspense

Codecov Report
Patch coverage has no change and project coverage change: -3.70% :warning:

Comparison is base (e0aad73) 97.11% compared to head (582e3d7) 93.41%.
Report is 644 commits behind head on beta.

: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.
Additional details and impacted files
@@            Coverage Diff             @@
##             beta    #5836      +/-   ##
==========================================
- Coverage   97.11%   93.41%   -3.70%
==========================================
  Files          50       20      -30
  Lines        2391      243    -2148
  Branches      706       53     -653
==========================================
- Hits         2322      227    -2095
+ Misses         67       15      -52
+ Partials        2        1       -1

see 70 files with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

Why remove suspense boolean from useQuery and useInfiniteQuery. Sometimes People wanna a conditional suspend query vie option enable or just do not wanna throw error but need a suspend query.

Because the goal is to offer a first class suspense integration, and we can't really do that with a flag. We might want to take advantage of the upcoming use hook internally, or we'll want to wrap updates to the Query Key in transitions (or use deferred values automatically).
Yes, in this first iteration, we are still passing the flag around internally, but it's now an an internal API that we can change in minors as well.

it's also easier for TypeScript to set data to "always defined" with a separate hook, which is a pretty big ask from suspense users

I do not think so. Even if the use hook that can also be used conditionally or throw errors.
And If people wanna data to be defined, There is already a useSuspenseQuery hook to do it. No need to remove suspense from useQuery.


[8.x] New JobRetrying event dispatched

The PR introduces the new event JobRetrying, dispatched calling the queue:retry command.
For example, it's a magic bullet for the models strictly related to a dynamic tenant connection. To learn more about it, see here: https://github.com/spatie/laravel-multitenancy/issues/259#issuecomment-925646752

Can you show me what you plan to do in the listener for this event?

Sure.
The necessity of an event JobRetrying started using the package spatie/laravel-multitenancy. In the multitenancy context, many applications use models and database connections with dynamic parameters.
For example, imagine a situation like so:
class User extends Model {
    use UsesTenantConnection; // It configures the tenant connection dynamically
}

class TenantUserJob {
    public function __construct(TenantUser $user) {
      // ...
    }
}

When you dispatch the job for the first time, the job has the connection configured and works well. But, what happens when the job is unserialized from the retry command? you won't have a connection configured, and an event like JobRetrying could help the developers with a code like so:
app('events')->listen(JobRetrying::class, function (JobRetrying $event) {
    if (! array_key_exists('tenantId', $event->payload())) {
        return;
    }

    $this->findTenant($event)->makeCurrent();
});

Thanks


[feat] Refactor tools base.py

Codecov Report
Attention: 71 lines in your changes are missing coverage. Please review.

Comparison is base (892ee6a) 61.96% compared to head (378319a) 62.30%.

Files
Patch %
Lines

erniebot-agent/erniebot_agent/tools/remote_tool.py
68.24%
47 Missing :warning:

erniebot-agent/erniebot_agent/tools/utils.py
78.57%
24 Missing :warning:

Additional details and impacted files
@@             Coverage Diff             @@
##           develop     #175      +/-   ##
===========================================
+ Coverage    61.96%   62.30%   +0.34%
===========================================
  Files           54       56       +2
  Lines         2671     2677       +6
===========================================
+ Hits          1655     1668      +13
+ Misses        1016     1009       -7

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


add example of quadratic formula

Added the quadratic formula to examples (always returns the greatest root, β)

Have you seen the one one the front page? It's:
Quad ← ÷⊙-⊃⊙(×2)(⊟¯.√+×.⊙(××¯4))∶
Quad 1 2 0

Sorry, didn't see that!


[Spark-7090][MLlib] Introduce LDAOptimizer to LDA to further improve extensibility

jira: https://issues.apache.org/jira/browse/SPARK-7090
LDA was implemented with extensibility in mind. And with the development of OnlineLDA and Gibbs Sampling, we are collecting more detailed requirements from different algorithms.
As Joseph Bradley @jkbradley proposed in https://github.com/apache/spark/pull/4807 and with some further discussion, we'd like to adjust the code structure a little to present the common interface and extension point clearly.
Basically class LDA would be a common entrance for LDA computing. And each LDA object will refer to a LDAOptimizer for the concrete algorithm implementation. Users can customize LDAOptimizer with specific parameters and assign it to LDA.
Concrete changes:

Add a trait LDAOptimizer, which defines the common iterface for concrete implementations. Each subClass is a wrapper for a specific LDA algorithm.

Move EMOptimizer to file LDAOptimizer and inherits from LDAOptimizer, rename to EMLDAOptimizer. (in case a more generic EMOptimizer comes in the future)
-adjust the constructor of EMOptimizer, since all the parameters should be passed in through initialState method. This can avoid unwanted confusion or overwrite.
-move the code from LDA.initalState to initalState of EMLDAOptimizer

Add property ldaOptimizer to LDA and its getter/setter, and EMLDAOptimizer is the default Optimizer.

Change the return type of LDA.run from DistributedLDAModel to LDAModel.

Further work:
add OnlineLDAOptimizer and other possible Optimizers once ready.

Since SPARK-7090 was a duplicate, I closed it. Retag this for SPARK-7089?

Test build #30836 has started for   PR 5661 at commit 0bb8400.

Oh Thanks, I closed 7089 just now...  Can I just use 7090?

Test build #30836 has finished for   PR 5661 at commit 0bb8400.

This patch fails MiMa tests.

This patch merges cleanly.

This patch adds the following public classes (experimental):

trait LDAOptimizer

class EMLDAOptimizer extends LDAOptimizer

This patch does not change any dependencies.

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

Test build #30843 has started for   PR 5661 at commit e756ce4.

Test build #30843 has finished for   PR 5661 at commit e756ce4.

This patch passes all tests.

This patch merges cleanly.

This patch adds the following public classes (experimental):

trait LDAOptimizer

class EMLDAOptimizer extends LDAOptimizer

This patch does not change any dependencies.

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

Sorry for the delay!  I'll review the PR now

@hhbyyh Thanks for the PR!  It looks good, except for 1 item on which I think we weren't clear before:
I meant for us to separate the Optimizer and LearningState concepts.

Optimizer should be a class which stores parameters and not much else. Optimizer.initialState should return an instance of a LearningState class.
LearningState should have the next() and getModel() methods.

Could you please refactor according to that?  It should only require moving code some, but I think it will help clarify the distinction between the parameters and the learning state.

@jkbradley Thanks for the review. I'd send update according to the suggestions soon.

@hhbyyh  Thanks for reminding me of the discussion in the other PR.  I guess it's hard to say what's better given that I've contradicted myself now about whether to split the Optimizer and LearningState concepts.  I think it's fine if you keep them both under the Optimizer concept.  Thanks!

Thanks @jkbradley. I think Optimizer is simpler and provide sufficient flexibility for now. I made some changes according to other comments.

Test build #720 has started for   PR 5661 at commit 0e2e006.

@hhbyyh  Thanks for the updates!  I made a few small comments, but can you please fix them in your next PR which adds OnlineLDA?  (That way, we can go ahead and merge this one.)
LGTM pending tests

Btw, there have been some issues with Jenkins recently (not starting tests or posting results automatically)

Test build #720 has finished for   PR 5661 at commit 0e2e006.

This patch passes all tests.

This patch merges cleanly.

This patch adds the following public classes (experimental):

trait LDAOptimizer

class EMLDAOptimizer extends LDAOptimizer

This patch does not change any dependencies.

Test build #30985 has started for   PR 5661 at commit 0e2e006.

@jkbradley Thanks, I think it's fine to merge the current version.
And if the pending API name change is a concern, I can do a quick update. ( Need to wait for test)

No, I'd just wait for the test.  I think that previous test was cancelled, so I'll start a new one.

Test build #724 has started for   PR 5661 at commit 0e2e006.

The test has finished, yet it's not posting to github

OK, I'll merge it into master.  Thanks!


🐛 [FirebaseAuth] Still logged in after app uninstallation

Bug report
Describe the bug
The user is still logged in after app uninstallation
Steps to reproduce
Steps to reproduce the behavior:

Install the app
Login
Uninstall app
Resinstall app and user will still be logged in but the token is not available anymore

Expected behavior
Flutter doctor
Run flutter doctor and paste the output below:
Click To Expand
flutter doctor -v
[✓] Flutter (Channel beta, 1.24.0-10.2.pre, on Mac OS X 10.15.7 19H114 darwin-x64, locale en-ES)
    • Flutter version 1.24.0-10.2.pre at /Users/arnauddelubac/Development/flutter
    • Framework revision 022b333a08 (8 weeks ago), 2020-11-18 11:35:09 -0800
    • Engine revision 07c1eed46b
    • Dart version 2.12.0 (build 2.12.0-29.10.beta)

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

[✓] Xcode - develop for iOS and macOS (Xcode 11.6)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.6, Build version 11E708
    • CocoaPods version 1.10.0

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

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

[✓] Connected device (1 available)
    • Arnaud’s iPhone (mobile) • 00008030-0005399A3EDB802E • ios • iOS 13.5.1

• No issues found!

Flutter dependencies
Run flutter pub deps -- --style=compact and paste the output below:
Click To Expand
Dart SDK 2.12.0-29.10.beta
Flutter SDK 1.24.0-10.2.pre
hero 1.1.2+29

dependencies:
- auto_route 0.6.9 [flutter meta]
- bubble_tab_indicator 0.1.4 [flutter]
- cached_network_image 2.4.1 [flutter flutter_cache_manager octo_image]
- carousel_slider 2.3.1 [flutter]
- cloud_firestore 0.14.4 [flutter meta quiver firebase_core firebase_core_platform_interface cloud_firestore_platform_interface cloud_firestore_web]
- cupertino_icons 0.1.3
- dartz 0.9.2
- date_util 0.1.4
- easy_localization 2.3.3 [flutter intl shared_preferences args path flutter_localizations]
- file_picker 2.1.0 [flutter flutter_web_plugins flutter_plugin_android_lifecycle plugin_platform_interface]
- firebase_analytics 6.3.0 [meta flutter firebase_core firebase_analytics_web firebase_analytics_platform_interface]
- firebase_auth 0.18.4+1 [meta firebase_core firebase_core_platform_interface firebase_auth_platform_interface firebase_auth_web flutter]
- firebase_core 0.5.3 [firebase_core_platform_interface flutter quiver meta firebase_core_web]
- firebase_dynamic_links 0.6.3 [flutter firebase_core]
- firebase_in_app_messaging 0.2.3 [meta flutter firebase_core]
- firebase_messaging 7.0.3 [meta flutter firebase_core]
- firebase_storage 5.2.0 [flutter firebase_core firebase_core_platform_interface firebase_storage_web firebase_storage_platform_interface quiver]
- flushbar 1.10.4 [flutter]
- flutter 0.0.0 [characters collection meta typed_data vector_math sky_engine]
- flutter_bloc 6.1.1 [flutter bloc provider]
- flutter_circular_chart 0.1.0 [flutter]
- flutter_facebook_login 3.0.0 [flutter collection]
- flutter_feather_icons 1.0.3 [flutter]
- flutter_rating_bar 3.2.0+1 [flutter]
- flutter_signin_button 1.1.0 [flutter font_awesome_flutter]
- flutter_swiper 1.1.6 [flutter transformer_page_view flutter_page_indicator]
- font_awesome_flutter 8.10.0 [flutter]
- freezed_annotation 0.12.0 [collection json_annotation meta]
- functional_widget_annotation 0.5.2
- geocoding 1.0.5 [flutter geocoding_platform_interface url_launcher]
- geoflutterfire 2.2.1 [flutter cloud_firestore rxdart]
- geolocator 6.1.13 [flutter geolocator_platform_interface]
- get_it 5.0.3 [async meta]
- google_fonts 1.1.1 [flutter http path_provider crypto pedantic]
- google_maps_flutter 1.0.6 [flutter flutter_plugin_android_lifecycle google_maps_flutter_platform_interface]
- google_sign_in 4.5.6 [google_sign_in_platform_interface flutter meta google_sign_in_web]
- image_cropper 1.3.1 [flutter]
- injectable 1.0.5 [get_it]
- json_annotation 3.1.1
- launch_review 2.0.0 [flutter]
- location 3.1.0 [flutter meta location_platform_interface location_web]
- package_info 0.4.3+2 [flutter]
- percent_indicator 2.1.8 [flutter]
- permission_handler 5.0.1+1 [flutter meta permission_handler_platform_interface]
- rxdart 0.24.1
- sign_in_with_apple 2.5.4 [meta flutter]
- skeleton_text 1.0.0 [flutter]
- uuid 2.2.2 [crypto convert]

dev dependencies:
- auto_route_generator 0.6.10 [build source_gen analyzer path build_runner auto_route]
- build_runner 1.10.11 [args async build build_config build_daemon build_resolvers build_runner_core code_builder collection crypto dart_style glob graphs http_multi_server io js logging meta mime path pedantic pool pub_semver pubspec_parse shelf shelf_web_socket stack_trace stream_transform timing watcher web_socket_channel yaml]
- flutter_test 0.0.0 [flutter test_api path fake_async clock stack_trace vector_math async boolean_selector characters charcode collection matcher meta source_span stream_channel string_scanner term_glyph typed_data]
- freezed 0.12.6 [analyzer build build_config meta source_gen freezed_annotation]
- injectable_generator 1.0.6 [build source_gen path glob analyzer injectable collection]
- json_serializable 3.5.1 [analyzer build build_config json_annotation meta path source_gen]
- lint 1.5.1

transitive dependencies:
- _fe_analyzer_shared 11.0.0 [meta]
- analyzer 0.40.4 [_fe_analyzer_shared args charcode cli_util collection convert crypto glob meta package_config path pub_semver source_span watcher yaml]
- args 1.6.0
- async 2.5.0-nullsafety.3 [collection]
- bloc 6.1.0 [meta]
- boolean_selector 2.1.0-nullsafety.3 [source_span string_scanner]
- build 1.5.2 [analyzer async convert crypto logging meta path glob]
- build_config 0.4.4 [checked_yaml json_annotation meta path pubspec_parse yaml]
- build_daemon 2.1.4 [built_collection built_value http_multi_server logging pedantic path pool shelf shelf_web_socket stream_transform watcher web_socket_channel]
- build_resolvers 1.4.4 [analyzer build crypto graphs logging meta path package_config pool pub_semver]
- build_runner_core 6.1.2 [async build build_config build_resolvers collection convert crypto glob graphs json_annotation logging meta path package_config pedantic pool timing watcher yaml]
- built_collection 4.3.2 [collection quiver]
- built_value 7.1.0 [built_collection collection fixnum quiver]
- characters 1.1.0-nullsafety.5
- charcode 1.2.0-nullsafety.3
- checked_yaml 1.0.2 [json_annotation source_span yaml]
- cli_util 0.2.0 [path]
- clock 1.1.0-nullsafety.3
- cloud_firestore_platform_interface 2.2.1 [flutter meta collection firebase_core plugin_platform_interface]
- cloud_firestore_web 0.2.1+2 [flutter flutter_web_plugins http_parser meta firebase_core firebase_core_web cloud_firestore_platform_interface js]
- code_builder 3.5.0 [built_collection built_value collection matcher meta]
- collection 1.15.0-nullsafety.5
- convert 2.1.1 [charcode typed_data]
- crypto 2.1.5 [collection convert typed_data]
- dart_style 1.3.10 [analyzer args path source_span]
- fake_async 1.2.0-nullsafety.3 [clock collection]
- ffi 0.1.3
- file 5.2.1 [intl meta path]
- firebase 7.3.3 [http http_parser js]
- firebase_analytics_platform_interface 1.0.3 [flutter meta]
- firebase_analytics_web 0.1.1 [flutter flutter_web_plugins firebase firebase_analytics_platform_interface meta]
- firebase_auth_platform_interface 2.1.4 [flutter meta firebase_core plugin_platform_interface]
- firebase_auth_web 0.3.2+3 [flutter flutter_web_plugins meta http_parser intl firebase_core firebase_core_web firebase_auth_platform_interface js]
- firebase_core_platform_interface 2.1.0 [flutter meta plugin_platform_interface quiver]
- firebase_core_web 0.2.1+1 [firebase_core_platform_interface flutter flutter_web_plugins meta js]
- firebase_storage_platform_interface 1.0.2 [flutter meta collection firebase_core plugin_platform_interface]
- firebase_storage_web 0.1.1+1 [async crypto firebase_core firebase_core_web firebase_storage_platform_interface flutter flutter_web_plugins http js meta]
- fixnum 0.10.11
- flutter_blurhash 0.5.0 [flutter meta]
- flutter_cache_manager 2.0.0 [flutter path_provider uuid http path sqflite pedantic clock file rxdart]
- flutter_localizations 0.0.0 [flutter intl characters collection meta path typed_data vector_math]
- flutter_page_indicator 0.0.3 [flutter]
- flutter_plugin_android_lifecycle 1.0.11 [flutter]
- flutter_web_plugins 0.0.0 [flutter js characters collection meta typed_data vector_math]
- geocoding_platform_interface 1.0.1+1 [flutter meta plugin_platform_interface]
- geolocator_platform_interface 1.0.8 [flutter meta plugin_platform_interface vector_math]
- glob 1.2.0 [async collection node_io path pedantic string_scanner]
- google_maps_flutter_platform_interface 1.0.5 [flutter meta plugin_platform_interface stream_transform]
- google_sign_in_platform_interface 1.1.2 [flutter meta quiver]
- google_sign_in_web 0.9.2 [google_sign_in_platform_interface flutter flutter_web_plugins meta js]
- graphs 0.2.0
- http 0.12.2 [http_parser path pedantic]
- http_multi_server 2.2.0 [async]
- http_parser 3.1.4 [charcode collection source_span string_scanner typed_data]
- intl 0.16.1 [path]
- io 0.3.4 [charcode meta path string_scanner]
- js 0.6.3-nullsafety.3
- location_platform_interface 1.0.1 [flutter meta plugin_platform_interface]
- location_web 1.0.0 [flutter flutter_web_plugins location_platform_interface http_parser meta js]
- logging 0.11.4
- matcher 0.12.10-nullsafety.3 [stack_trace]
- meta 1.3.0-nullsafety.6
- mime 0.9.7
- nested 0.0.4 [flutter]
- node_interop 1.2.1 [js]
- node_io 1.2.0 [file node_interop path]
- octo_image 0.3.0 [flutter flutter_blurhash]
- package_config 1.9.3 [path charcode]
- path 1.8.0-nullsafety.3
- path_provider 1.6.24 [flutter path_provider_platform_interface path_provider_macos path_provider_linux path_provider_windows]
- path_provider_linux 0.0.1+2 [path xdg_directories path_provider_platform_interface flutter]
- path_provider_macos 0.0.4+6 [flutter]
- path_provider_platform_interface 1.0.4 [flutter meta platform plugin_platform_interface]
- path_provider_windows 0.0.4+3 [path_provider_platform_interface meta path flutter ffi win32]
- pedantic 1.9.2 [meta]
- permission_handler_platform_interface 2.0.1 [flutter meta plugin_platform_interface]
- platform 2.2.1
- plugin_platform_interface 1.0.3 [meta]
- pool 1.4.0 [async stack_trace]
- process 3.0.13 [file intl meta path platform]
- provider 4.3.2+3 [collection flutter nested]
- pub_semver 1.4.4 [collection]
- pubspec_parse 0.1.5 [checked_yaml json_annotation pub_semver yaml]
- quiver 2.1.5 [matcher meta]
- shared_preferences 0.5.12+4 [meta flutter shared_preferences_platform_interface shared_preferences_linux shared_preferences_macos shared_preferences_web shared_preferences_windows]
- shared_preferences_linux 0.0.2+4 [file flutter meta path path_provider_linux shared_preferences_platform_interface]
- shared_preferences_macos 0.0.1+11 [shared_preferences_platform_interface flutter]
- shared_preferences_platform_interface 1.0.4 [meta flutter]
- shared_preferences_web 0.1.2+7 [shared_preferences_platform_interface flutter flutter_web_plugins meta]
- shared_preferences_windows 0.0.1+3 [shared_preferences_platform_interface flutter ffi file meta path path_provider_platform_interface path_provider_windows]
- shelf 0.7.9 [async collection http_parser path stack_trace stream_channel]
- shelf_web_socket 0.2.3 [shelf web_socket_channel stream_channel]
- sky_engine 0.0.99
- source_gen 0.9.9 [analyzer async build dart_style glob meta path pedantic source_span]
- source_span 1.8.0-nullsafety.4 [charcode collection path term_glyph]
- sqflite 1.3.2+1 [flutter sqflite_common path]
- sqflite_common 1.0.2+1 [synchronized path meta]
- stack_trace 1.10.0-nullsafety.6 [path]
- stream_channel 2.1.0-nullsafety.3 [async]
- stream_transform 1.2.0
- string_scanner 1.1.0-nullsafety.3 [charcode source_span]
- synchronized 2.2.0+2
- term_glyph 1.2.0-nullsafety.3
- test_api 0.2.19-nullsafety.6 [async boolean_selector collection meta path source_span stack_trace stream_channel string_scanner term_glyph matcher]
- timing 0.1.1+2 [json_annotation]
- transformer_page_view 0.1.6 [flutter]
- typed_data 1.3.0-nullsafety.5 [collection]
- url_launcher 5.7.10 [flutter url_launcher_platform_interface url_launcher_web url_launcher_linux url_launcher_macos url_launcher_windows]
- url_launcher_linux 0.0.1+4 [flutter]
- url_launcher_macos 0.0.1+9 [flutter]
- url_launcher_platform_interface 1.0.9 [flutter meta plugin_platform_interface]
- url_launcher_web 0.1.5+1 [url_launcher_platform_interface flutter flutter_web_plugins meta]
- url_launcher_windows 0.0.1+3 [flutter]
- vector_math 2.1.0-nullsafety.5
- watcher 0.9.7+15 [async path pedantic]
- web_socket_channel 1.1.0 [async crypto stream_channel]
- win32 1.7.4 [ffi]
- xdg_directories 0.1.2 [meta path process]
- yaml 2.2.1 [charcode collection string_scanner source_span]

Hi @arnaudelub
This is appeared mid last year https://github.com/FirebaseExtended/flutterfire/pull/2913.
Does updating the dependency resolve this issue?
Latest version for auth is 0.20.0+1 https://pub.dev/packages/firebase_auth/install

Hi @arnaudelub
This is appeared mid last year https://github.com/FirebaseExtended/flutterfire/pull/2913.
Does updating the dependency resolve this issue?
Latest version for auth is 0.20.0+1 https://pub.dev/packages/firebase_auth/install

i'll try that and let you know. Thank you for the reminder

i'll try that and let you know. Thank you for the reminder

ok, i can't update firebase_auth because it's depending on firebase_core ^0.7.0 and i am using firebase_messaging as well, but last version is firebase_messaging 7.0.3 and it depends on firebase_core ^0.5.0+1.
I am not sure that overriding dependancy here is a good idea.

ok, i can't update firebase_auth because it's depending on firebase_core ^0.7.0 and i am using firebase_messaging as well, but last version is firebase_messaging 7.0.3 and it depends on firebase_core ^0.5.0+1.
I am not sure that overriding dependancy here is a good idea.

I was able to repro this on the latest master 1.26.0-2.0.pre.313 with firebase_auth: ^0.20.0+1 using the official example (with https://github.com/FirebaseExtended/flutterfire/pull/4635) and building a dev IPA. Deleting and then installing again didn't change the login state.

flutter doctor -v
[✓] Flutter (Channel master, 1.26.0-2.0.pre.313, on macOS 11.1 20C69 darwin-arm,
    locale en-GB)
    • Flutter version 1.26.0-2.0.pre.313 at
      /Users/nevercode/development/flutter_master
    • Framework revision 1cb0a24a46 (35 hours ago), 2021-01-12 21:39:27 -0800
    • Engine revision 10cee6abcb
    • Dart version 2.12.0 (build 2.12.0-214.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Users/nevercode/Library/Android/sdk
    • Platform android-30, build-tools 30.0.3
    • Java binary at: /Users/nevercode/Library/Application
      Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/201.6953283/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.3, Build version 12C33
    • CocoaPods version 1.10.1

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

[✓] Android Studio (version 4.1)
    • Android Studio at /Users/nevercode/Library/Application
      Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/201.6953283/Android
      Studio.app/Contents
    • Flutter plugin can be installed from:
      � https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      � https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-arm64   • macOS 11.1 20C69 darwin-arm
    • Chrome (web)    • chrome • web-javascript • Google Chrome 87.0.4280.141

• No issues found!

@arnaudelub What did you mean exactly by the token not being available? As a side note the latest messaging version is actually firebase_messaging: ^8.0.0-dev.14 and I would recommend you take a look at upgrading to it. There are a lot of breaking changes but the stability and overall improvements are worth it.

I was able to repro this on the latest master 1.26.0-2.0.pre.313 with firebase_auth: ^0.20.0+1 using the official example (with https://github.com/FirebaseExtended/flutterfire/pull/4635) and building a dev IPA. Deleting and then installing again didn't change the login state.

flutter doctor -v
[✓] Flutter (Channel master, 1.26.0-2.0.pre.313, on macOS 11.1 20C69 darwin-arm,
    locale en-GB)
    • Flutter version 1.26.0-2.0.pre.313 at
      /Users/nevercode/development/flutter_master
    • Framework revision 1cb0a24a46 (35 hours ago), 2021-01-12 21:39:27 -0800
    • Engine revision 10cee6abcb
    • Dart version 2.12.0 (build 2.12.0-214.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Users/nevercode/Library/Android/sdk
    • Platform android-30, build-tools 30.0.3
    • Java binary at: /Users/nevercode/Library/Application
      Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/201.6953283/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.3, Build version 12C33
    • CocoaPods version 1.10.1

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

[✓] Android Studio (version 4.1)
    • Android Studio at /Users/nevercode/Library/Application
      Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/201.6953283/Android
      Studio.app/Contents
    • Flutter plugin can be installed from:
      � https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      � https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-arm64   • macOS 11.1 20C69 darwin-arm
    • Chrome (web)    • chrome • web-javascript • Google Chrome 87.0.4280.141

• No issues found!

@arnaudelub What did you mean exactly by the token not being available? As a side note the latest messaging version is actually firebase_messaging: ^8.0.0-dev.14 and I would recommend you take a look at upgrading to it. There are a lot of breaking changes but the stability and overall improvements are worth it.

Hi @arnaudelub.
It is my understanding this issue comes from underlying Firebase iOS SDK as this is persists authentication to the keychain.
We ideally need to update the documentation for Flutterfire to explain this scenario.

Hi @arnaudelub.
It is my understanding this issue comes from underlying Firebase iOS SDK as this is persists authentication to the keychain.
We ideally need to update the documentation for Flutterfire to explain this scenario.

This was noted in the react-native-firebase repo as well: https://github.com/invertase/react-native-firebase/issues/4667#issuecomment-748163619
Example iOS code in the react-native-firebase style (might need to be bent to fit here) that works around it @dackers86
Try putting this on your AppDelegate.m:
  NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    if (![defaults boolForKey:@"notFirstRun"]) {
        [defaults setBool:YES forKey:@"notFirstRun"];
        [defaults synchronize];
        [[FIRAuth auth] signOut:NULL];
   }

put it after
  if ([FIRApp defaultApp] == nil) {
    [FIRApp configure];
  }

This was noted in the react-native-firebase repo as well: https://github.com/invertase/react-native-firebase/issues/4667#issuecomment-748163619
Example iOS code in the react-native-firebase style (might need to be bent to fit here) that works around it @dackers86
Try putting this on your AppDelegate.m:
  NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    if (![defaults boolForKey:@"notFirstRun"]) {
        [defaults setBool:YES forKey:@"notFirstRun"];
        [defaults synchronize];
        [[FIRAuth auth] signOut:NULL];
   }

put it after
  if ([FIRApp defaultApp] == nil) {
    [FIRApp configure];
  }

Thanks @mikehardy!

Thanks @mikehardy!

Hi, just to let you know that with latest updates, it is still appening.
This is my actual flutter doctor and dependencies:
Flutter doctor
Run flutter doctor and paste the output below:
Click To Expand
[✓] Flutter (Channel beta, 1.26.0-17.3.pre, on Mac OS X 10.15.7 19H114 darwin-x64, locale en-ES)
    • Flutter version 1.26.0-17.3.pre at /Users/arnauddelubac/Development/flutter
    • Framework revision 4b50ca7f7f (21 hours ago), 2021-02-04 19:44:27 -0800
    • Engine revision 2c527d6c7e
    • Dart version 2.12.0 (build 2.12.0-259.8.beta)

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

[!] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.6, Build version 11E708
    ! Xcode 11.6.0 out of date (12.0.1 is recommended).
      Download the latest version or update via the Mac App Store.
    • CocoaPods version 1.10.0

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

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

[✓] Connected device (1 available)
    • Arnaud’s iPhone (mobile) • 00008030-0005399A3EDB802E • ios • iOS 13.5.1

! Doctor found issues in 1 category.

Flutter dependencies
Run flutter pub deps -- --style=compact and paste the output below:
Click To Expand
Dart SDK 2.12.0-259.8.beta
Flutter SDK 1.26.0-17.3.pre
reliqium 0.0.2+35

dependencies:
- auto_route 0.6.9 [flutter meta]
- cached_network_image 2.5.0 [flutter flutter_cache_manager octo_image]
- camera 0.7.0 [flutter camera_platform_interface pedantic quiver]
- cloud_firestore 0.16.0 [flutter meta quiver firebase_core firebase_core_platform_interface cloud_firestore_platform_interface cloud_firestore_web]
- cupertino_icons 1.0.0
- dartz 0.9.2
- dio 3.0.10 [http_parser path]
- easy_localization 2.3.4-nullsafety.1 [flutter shared_preferences intl args path flutter_localizations]
- file_picker 2.1.5+1 [flutter flutter_web_plugins flutter_plugin_android_lifecycle plugin_platform_interface]
- firebase_analytics 7.0.1 [meta flutter firebase_core firebase_analytics_web firebase_analytics_platform_interface]
- firebase_auth 0.20.0+1 [meta firebase_core firebase_core_platform_interface firebase_auth_platform_interface firebase_auth_web flutter]
- firebase_core 0.7.0 [firebase_core_platform_interface flutter quiver meta firebase_core_web]
- firebase_in_app_messaging 0.3.0+1 [meta flutter firebase_core]
- firebase_messaging 8.0.0-dev.14 [meta flutter firebase_core firebase_core_platform_interface firebase_messaging_platform_interface firebase_messaging_web]
- firebase_storage 7.0.0 [flutter firebase_core firebase_core_platform_interface firebase_storage_web firebase_storage_platform_interface quiver]
- flushbar 1.10.4 [flutter]
- flutter 0.0.0 [characters collection meta typed_data vector_math sky_engine]
- flutter_app_lock 1.4.0+1 [flutter]
- flutter_bloc 6.1.1 [flutter bloc provider]
- flutter_cache_manager 2.1.1 [flutter path_provider uuid http path sqflite pedantic clock file rxdart image]
- flutter_facebook_login 3.0.0 [flutter collection]
- flutter_nfc_kit 2.2.0 [flutter json_annotation ndef]
- flutter_signin_button 1.1.0 [flutter font_awesome_flutter]
- flutter_staggered_grid_view 0.3.3 [flutter]
- freezed 0.12.7 [analyzer build build_config meta source_gen freezed_annotation]
- get_it 5.0.4 [async meta]
- google_sign_in 4.5.9 [google_sign_in_platform_interface flutter meta google_sign_in_web]
- http 0.12.2 [http_parser path pedantic]
- image_cropper 1.3.1 [flutter]
- image_picker 0.6.7+21 [flutter flutter_plugin_android_lifecycle image_picker_platform_interface]
- injectable 1.0.7 [get_it]
- intl 0.17.0-nullsafety.2 [clock path]
- jiffy 3.0.1 [intl]
- launch_review 2.0.0 [flutter]
- local_image_provider 2.2.1 [flutter json_annotation]
- lottie 0.7.0+1 [archive characters charcode collection flutter logging meta path vector_math]
- mime_type 0.3.2
- nfc_in_flutter 2.0.5 [flutter]
- path_provider 1.6.27 [flutter path_provider_platform_interface path_provider_macos path_provider_linux path_provider_windows]
- percent_indicator 2.1.9+1 [flutter]
- pinch_zoom 0.0.4 [flutter]
- progressive_image 1.0.1 [flutter]
- pull_to_refresh 1.6.3 [flutter]
- rxdart 0.25.0
- sentry 4.0.1 [http meta stack_trace uuid]
- shared_preferences 0.5.12+4 [meta flutter shared_preferences_platform_interface shared_preferences_linux shared_preferences_macos shared_preferences_web shared_preferences_windows]
- sign_in_with_apple 2.5.4 [meta flutter]
- url_launcher 5.7.10 [flutter url_launcher_platform_interface url_launcher_web url_launcher_linux url_launcher_macos url_launcher_windows]
- uuid 2.2.2 [crypto convert]
- video_compress 2.1.1 [flutter]
- video_player 1.0.1 [meta video_player_platform_interface video_player_web flutter]
- visibility_detector 0.1.5 [flutter]

dev dependencies:
- auto_route_generator 0.6.10 [build source_gen analyzer path build_runner auto_route]
- build_runner 1.10.13 [args async build build_config build_daemon build_resolvers build_runner_core code_builder collection crypto dart_style glob graphs http_multi_server io js logging meta mime path pedantic pool pub_semver pubspec_parse shelf shelf_web_socket stack_trace stream_transform timing watcher web_socket_channel yaml]
- flutter_launcher_icons 0.8.1 [image args yaml path]
- flutter_native_splash 0.2.9 [yaml image xml]
- flutter_test 0.0.0 [flutter test_api path fake_async clock stack_trace vector_math async boolean_selector characters charcode collection matcher meta source_span stream_channel string_scanner term_glyph typed_data]
- freezed_annotation 0.12.0 [collection json_annotation meta]
- injectable_generator 1.0.7 [build source_gen path glob analyzer injectable collection]
- json_serializable 3.5.1 [analyzer build build_config json_annotation meta path source_gen]
- lint 1.3.0

dependency overrides:
- intl 0.17.0-nullsafety.2 [clock path]

transitive dependencies:
- _fe_analyzer_shared 12.0.0 [meta]
- analyzer 0.40.6 [_fe_analyzer_shared args cli_util collection convert crypto glob meta package_config path pub_semver source_span watcher yaml]
- archive 2.0.13 [crypto args path]
- args 1.6.0
- async 2.5.0-nullsafety.3 [collection]
- bloc 6.1.1 [meta]
- boolean_selector 2.1.0-nullsafety.3 [source_span string_scanner]
- build 1.6.1 [analyzer async convert crypto glob logging meta path]
- build_config 0.4.5 [checked_yaml json_annotation meta path pubspec_parse yaml]
- build_daemon 2.1.6 [built_collection built_value http_multi_server logging pedantic path pool shelf shelf_web_socket stream_transform watcher web_socket_channel]
- build_resolvers 1.5.2 [analyzer build crypto graphs logging meta path package_config pool pub_semver]
- build_runner_core 6.1.6 [async build build_config build_resolvers collection convert crypto glob graphs logging meta path package_config pedantic pool timing watcher yaml]
- built_collection 4.3.2 [collection quiver]
- built_value 7.1.0 [built_collection collection fixnum quiver]
- camera_platform_interface 1.5.0 [flutter meta plugin_platform_interface cross_file stream_transform]
- characters 1.1.0-nullsafety.5
- charcode 1.2.0-nullsafety.3
- checked_yaml 1.0.4 [json_annotation source_span yaml]
- cli_util 0.2.0 [path]
- clock 1.1.0-nullsafety.3
- cloud_firestore_platform_interface 3.0.1 [flutter meta collection firebase_core plugin_platform_interface]
- cloud_firestore_web 0.3.0+1 [flutter flutter_web_plugins http_parser meta firebase_core firebase_core_web cloud_firestore_platform_interface js]
- code_builder 3.6.0 [built_collection built_value collection matcher meta]
- collection 1.15.0-nullsafety.5
- convert 2.1.1 [charcode typed_data]
- cross_file 0.1.0 [flutter http meta]
- crypto 2.1.5 [collection convert typed_data]
- dart_style 1.3.10 [analyzer args path source_span]
- fake_async 1.2.0-nullsafety.3 [clock collection]
- ffi 0.1.3
- file 5.2.1 [intl meta path]
- firebase 7.3.3 [http http_parser js]
- firebase_analytics_platform_interface 1.0.3 [flutter meta]
- firebase_analytics_web 0.1.1 [flutter flutter_web_plugins firebase firebase_analytics_platform_interface meta]
- firebase_auth_platform_interface 3.0.1 [flutter meta firebase_core plugin_platform_interface]
- firebase_auth_web 0.3.2+6 [flutter flutter_web_plugins meta http_parser intl firebase_core firebase_core_web firebase_auth_platform_interface js]
- firebase_core_platform_interface 3.0.1 [flutter meta plugin_platform_interface quiver]
- firebase_core_web 0.2.1+3 [firebase_core_platform_interface flutter flutter_web_plugins meta js]
- firebase_messaging_platform_interface 1.0.0-dev.10 [flutter meta firebase_core plugin_platform_interface]
- firebase_messaging_web 0.1.0-dev.5 [flutter flutter_web_plugins meta firebase_core firebase_core_web firebase_messaging_platform_interface js service_worker]
- firebase_storage_platform_interface 1.0.4 [flutter meta collection firebase_core plugin_platform_interface]
- firebase_storage_web 0.1.1+3 [async crypto firebase_core firebase_core_web firebase_storage_platform_interface flutter flutter_web_plugins http js meta]
- fixnum 0.10.11
- flutter_blurhash 0.5.0 [flutter meta]
- flutter_localizations 0.0.0 [flutter intl characters clock collection meta path typed_data vector_math]
- flutter_plugin_android_lifecycle 1.0.11 [flutter]
- flutter_web_plugins 0.0.0 [flutter js characters collection meta typed_data vector_math]
- font_awesome_flutter 8.11.0 [flutter]
- glob 1.2.0 [async collection node_io path pedantic string_scanner]
- google_sign_in_platform_interface 1.1.2 [flutter meta quiver]
- google_sign_in_web 0.9.2 [google_sign_in_platform_interface flutter flutter_web_plugins meta js]
- graphs 0.2.0
- http_multi_server 2.2.0 [async]
- http_parser 3.1.4 [charcode collection source_span string_scanner typed_data]
- image 2.1.19 [archive xml meta]
- image_picker_platform_interface 1.1.1 [flutter meta http plugin_platform_interface]
- io 0.3.4 [charcode meta path string_scanner]
- js 0.6.3-nullsafety.3
- json_annotation 3.1.1
- logging 0.11.4
- matcher 0.12.10-nullsafety.3 [stack_trace]
- meta 1.3.0-nullsafety.6
- mime 0.9.7
- ndef 0.2.2 [uuid]
- nested 0.0.4 [flutter]
- node_interop 1.2.1 [js]
- node_io 1.2.0 [file node_interop path]
- octo_image 0.3.0 [flutter flutter_blurhash]
- package_config 1.9.3 [path charcode]
- path 1.8.0-nullsafety.3
- path_provider_linux 0.0.1+2 [path xdg_directories path_provider_platform_interface flutter]
- path_provider_macos 0.0.4+8 [flutter]
- path_provider_platform_interface 1.0.4 [flutter meta platform plugin_platform_interface]
- path_provider_windows 0.0.4+3 [path_provider_platform_interface meta path flutter ffi win32]
- pedantic 1.9.2 [meta]
- petitparser 3.1.0 [meta]
- platform 2.2.1
- plugin_platform_interface 1.0.3 [meta]
- pool 1.4.0 [async stack_trace]
- process 3.0.13 [file intl meta path platform]
- provider 4.3.3 [collection flutter nested]
- pub_semver 1.4.4 [collection]
- pubspec_parse 0.1.7 [checked_yaml json_annotation pub_semver yaml]
- quiver 2.1.5 [matcher meta]
- service_worker 0.2.4 [js]
- shared_preferences_linux 0.0.2+4 [file flutter meta path path_provider_linux shared_preferences_platform_interface]
- shared_preferences_macos 0.0.1+11 [shared_preferences_platform_interface flutter]
- shared_preferences_platform_interface 1.0.4 [meta flutter]
- shared_preferences_web 0.1.2+7 [shared_preferences_platform_interface flutter flutter_web_plugins meta]
- shared_preferences_windows 0.0.1+3 [shared_preferences_platform_interface flutter ffi file meta path path_provider_platform_interface path_provider_windows]
- shelf 0.7.9 [async collection http_parser path stack_trace stream_channel]
- shelf_web_socket 0.2.3 [shelf web_socket_channel stream_channel]
- sky_engine 0.0.99
- source_gen 0.9.10+1 [analyzer async build dart_style glob meta path pedantic source_span]
- source_span 1.8.0-nullsafety.4 [charcode collection path term_glyph]
- sqflite 1.3.2+2 [flutter sqflite_common path]
- sqflite_common 1.0.3 [synchronized path meta]
- stack_trace 1.10.0-nullsafety.6 [path]
- stream_channel 2.1.0-nullsafety.3 [async]
- stream_transform 1.2.0
- string_scanner 1.1.0-nullsafety.3 [charcode source_span]
- synchronized 2.2.0+2
- term_glyph 1.2.0-nullsafety.3
- test_api 0.2.19-nullsafety.6 [async boolean_selector collection meta path source_span stack_trace stream_channel string_scanner term_glyph matcher]
- timing 0.1.1+3 [json_annotation]
- typed_data 1.3.0-nullsafety.5 [collection]
- url_launcher_linux 0.0.1+4 [flutter]
- url_launcher_macos 0.0.1+9 [flutter]
- url_launcher_platform_interface 1.0.9 [flutter meta plugin_platform_interface]
- url_launcher_web 0.1.5+1 [url_launcher_platform_interface flutter flutter_web_plugins meta]
- url_launcher_windows 0.0.1+3 [flutter]
- vector_math 2.1.0-nullsafety.5
- video_player_platform_interface 2.2.0 [flutter meta]
- video_player_web 0.1.4+1 [flutter flutter_web_plugins meta video_player_platform_interface]
- watcher 0.9.7+15 [async path pedantic]
- web_socket_channel 1.1.0 [async crypto stream_channel]
- win32 1.7.4 [ffi]
- xdg_directories 0.1.2 [meta path process]
- xml 4.5.1 [collection convert meta petitparser]
- yaml 2.2.1 [charcode collection string_scanner source_span]

But as you can see i have to override intl version because of compatibility issue between easy_localization and firebase_auth
Thanks


read version from package.json

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@2852607). Click here to learn what that means.
The diff coverage is 0%.

@@            Coverage Diff            @@
##             master      #40   +/-   ##
=========================================
  Coverage          ?   61.93%
=========================================
  Files             ?       14
  Lines             ?      176
  Branches          ?       25
=========================================
  Hits              ?      109
  Misses            ?       55
  Partials          ?       12

Impacted Files
Coverage Δ

src/utils/sentry.ts
0% <0%> (ø)

Continue to review full report at Codecov.

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