Predefined Variables are not replaced in "displayName" from the .yml file?

When using this yml:
variables:
  tag: $(Build.BuildNumber)

- script: docker tag $(DOCKER_ID)/$(imageName):latest $(DOCKER_ID)/$(imageName):$(tag)
  displayName: 'Tag Docker image [$(imageName):$(tag)]'

The logging in Azure DevOps build shows Tag Docker image [MyImageName:$(Build.BuildNumber)], but I would expect something like Tag Docker image [MyImageName:20190124.2].

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

ID: 9ffebdc8-521c-44b5-cde4-4abdc1bd6f18
Version Independent ID: dc0effda-6d93-62aa-64c5-4e6f283b0826
Content: Predefined build variables - Azure Pipelines
Content Source: docs/pipelines/build/variables.md
Product: devops
GitHub Login: @andyjlewis
Microsoft Alias: alewis

same issue here

same issue guys here, any solution ?

give it a try using syntax like this :
${{ variables.tag }}

not working,
even ${{ $(variables.tag) }} or ${{ '$(variables.tag)' }}
thank you

Same here :disappointed:

Task:
- task: CopyFiles@2
    displayName: 'Copy files to $(Build.ArtifactStagingDirectory)'
    inputs:
      Contents: |
        bin/**
        deploy/**
        build/libs/**
        gradle.properties
      TargetFolder: '$(Build.ArtifactStagingDirectory)'

This is not working for resources.pipeline..sourceBranch  (in other words I want the artifact sourceBranch to be part of the name of my DEPLOYMENT pipe.

This is working for me:
variables:
  - name: branchName
    value: $(Build.SourceBranchName) # value = "myBranch" as example

steps:
  - checkout: self
    displayName: Checkout repo@${{ variables.branchName }} # Shows "Checkout repo@myBranch"

Single quotes aren't necessary.

Does not work on stage's displayName


Google statistics in nuxt.js pro,ga is not defined

hey when i follow the official example to add Google statistics in my nuxt.js pro, console prompt me 'ga is not defined',What did I miss？

you mean  Google Analytics, right?
share the source code of your GA integration, please.
but prefer use the official nuxt module: https://github.com/nuxt-community/analytics-module

i follow the official example https://nuxtjs.org/faq/google-analytics，so I still don't understand what the problem is，thank you;

AFAIK this example is outdated and it doesn't work with 1.0
You should use module, it is working great.
https://github.com/nuxt-community/analytics-module

well,thank you ,i will try it

@awronski could you show how you have this analytics-module setup? I'm trying to use it but can't actually get it to track any data after following the brief readme.

@seanwash Sure!
package.json:
"devDependencies": {
    "@nuxtjs/google-analytics": "^1.0.0",
    [...]
}

nuxt.config.js:
module.exports = {
  modules: [
    ['@nuxtjs/google-analytics', { ua: 'UA-XXXXX-1' }]
  ]
  [...]
}

That's all.

@awronski Ah, I see. I thought you were using the new module that uses vue-analytics.

I am using the old module. Because the new one has WIP status. I don't know
if it is ready to use.
On 21 Oct 2017 4:35 pm, "Sean Washington"<EMAIL_ADDRESS>wrote:

@awronski https://github.com/awronski Ah, I see. I thought you were
using the new module that uses vue-analytics.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/nuxt/nuxt.js/issues/1816#issuecomment-338406934, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AB4d3eeeF2MqSpARSGfTSjnVf4vV-ig7ks5sugE3gaJpZM4PzUA0
.

hello, i've setting nuxt module google analytics,  found the same error.
[Nuxt] Error when initializing app referenceError : ga not found,
I follow the step from here: https://nuxtjs.org/faq/google-analytics/
and, where i should placing my google analytics script?


Update submodule pointers of third party demos

Description
Update submodule pointers of third party demos
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Hi,This PR is merged. Then I find that third party demos can be found in github.But when I download or clone this repo, There is nothing in FreeRTOS\Demo\ThirdParty.

Which command are you using to clone this repo? Can you try the following command:
git clone https://github.com/FreeRTOS/FreeRTOS.git --recurse-submodules

Yes, I have tried the following command:
git clone https://github.com/FreeRTOS/FreeRTOS.git --recurse-submodules
And I see the  LOG as follows, Is it because of poor Internet access.
Cloning into 'D:/WorkSpace/FMD/1111/6100 FreeRTOS/Test/FreeRTOS/FreeRTOS/Demo/ThirdParty/Community-Supported-Demos'...
fatal: unable to access 'https://github.com/FreeRTOS/FreeRTOS-Community-Supported-Demos/': OpenSSL SSL_read: Connection was reset, errno 10054
Cloning into 'D:/WorkSpace/FMD/1111/6100 FreeRTOS/Test/FreeRTOS/FreeRTOS/Demo/ThirdParty/Partner-Supported-Demos'...
fatal: unable to access 'https://github.com/FreeRTOS/FreeRTOS-Partner-Supported-Demos/': OpenSSL SSL_read: Connection was reset, errno 10054

That seems like a network issue. Are you able to access these links from the same machine?

https://github.com/FreeRTOS/FreeRTOS-Community-Supported-Demos/
https://github.com/FreeRTOS/FreeRTOS-Partner-Supported-Demos/

Yes,I can access these links from the same machine.And I can clone it with the following command,
git clone git@github.com:FreeRTOS/FreeRTOS-Community-Supported-Demos.git
But I can not clone it with the following command,
git clone  https://github.com/FreeRTOS/FreeRTOS-Community-Supported-Demos.git
I think I may find out the reason. When I clone with SSH URLs. It still clone the submodulest with HTTPS URLs. I don't know why.
And as my HTTPS URLs Internet speed is very unstable, so the clone work  failed.

Glad that it works for you.

Is there other way to download expect clone.
I click the Download ZIP,and it doesn't include the submodules.
Also I download from the https://www.freertos.org/, it doesn't inchude the submodules either.

If you think that SSH link works for you, you can change HTTPS links to SSH links here an try: https://github.com/FreeRTOS/FreeRTOS/blob/main/.gitmodules#L57

Is that means I can pull requests to change this file?

No. We do not put SSH links. I suggested that only because you said that HTTPS is not working and SSH will probably work for you.

And what can I do to try this,
Or can the demos put in the path https://github.com/FreeRTOS/FreeRTOS/tree/main/FreeRTOS/Demo instead of thirdparty.
Is there any rules or requirement if I really need put in the path? Demos in the thirdparty is hard to clone and find for the developers.

Demos in third party are not hard to clone and it has been working for everyone. The instructions on the top level README file tells to use the git clone with recurse-submodules. Is it possible for you to try with a better internet connection?
In addition, your demo will be available in the release zip (both from GitHub Releasesand from FreeRTOS.org website) when we create our next release.


Create README.ja-JP.md

Japanese Readme

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: duffrind sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

Is it a duplicate of #138?

Thanks for taking the time to contribute this localization pull request. However, we are not able to accept contributions to this historical reference repository at this time.


fix: fix broken links and update them to the latest links.

What ❔

fix broken links and update them to the latest links.

Why ❔

fix broken links and update them to the latest links.

Checklist

[ ✅ ] PR title corresponds to the body of PR (we generate changelog entries from PRs).
[ ✅ ] Tests for the changes have been added / updated.
[ ✅ ] Documentation comments have been added / updated.
[ ✅ ] Code has been formatted via zk fmt and zk lint.

Looks like the linter doesn't like the formatting. Could you please run zk fmt in order to apply automatic fixes?

done


Improve documentation

Most of the Haddock documentation is pretty boilerplate-y. However I added it anyway for two reasons: just having it there makes it easier to change later on, and I had many notes in functions that deserved to be more visible.


What events are streamed from cache.download()?

Firstly, thanks for an awesome plugin. It came highly recommended and seems to be precisely what we're looking for.
I'm wondering if there are docs somewhere about what type of events the onprogress callback gets passed?
Specifically, I'm thinking about how to implement a "ready" event for each file. Ideally I'd like to throw some files at the cache, and then trigger a callback when those files have been successfully fetched. My first thought was to try listening to the progress events and then reacting appropriately. Does that approach make sense?

Yes it does! Should be possible with existing api, although you must
correlate download percent/index with index in download queue yourself.
Could be a pull request to add a list of downloaded files to the events
Op di 30 aug. 2016 23:54 schreef Callum Macdonald<EMAIL_ADDRESS>
:

Firstly, thanks for an awesome plugin. It came highly recommended and
seems to be precisely what we're looking for.
I'm wondering if there are docs somewhere about what type of events the
onprogress callback gets passed?
Specifically, I'm thinking about how to implement a "ready" event for each
file. Ideally I'd like to throw some files at the cache, and then trigger a
callback when those files have been successfully fetched. My first thought
was to try listening to the progress events and then reacting
appropriately. Does that approach make sense?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/markmarijnissen/cordova-file-cache/issues/20, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABOmDaANqsNeyDfn731DRMexg9li4lhCks5qlGTHgaJpZM4JwwvQ
.

@markmarijnissen I've been playing around with the onprogress callback, trying different combinations of several files, single files, and true or false for includeFileProgress. I can't quite figure out what all the various properties of the events mean, and how I should interpret them.
Are there docs on this somewhere? If not, would you be up for writing a little about what each property means, and what events are streamed?
Here's an example event I'm seeing:
ProgressEvent
  bubbles: false
  cancelBubble: false
  cancelable: false
  lengthComputable: false
  loaded: 0
  path: "cache/bar.json"
  percentage: 0.25
  queueIndex: 0
  queueSize: 4
  target: null
  total: 0
  type: undefined
  url: "https://s3.eu-central-1.amazonaws.com/foo/bar.json"
  ProgressEvent Prototype

At a guess, it looks like percentage is how far through the total queue we currently are. So with a queueSize of 4 and 1 of those 4 downloads completed, then percentage = 0.25. Is that correct?
Am I correct in thinking that one event will be streamed for the successful download of each file? Are the url and path properties also unique to that file? I'm seeing the last file in my queue generating 2 events, but that's fairly easy to handle.
Bottom line, I'm struggling to grasp how I can put a single file into the cache, and then trigger a callback once that file has been successfully loaded into the cache. I looked into the code and am slightly nervous that the .download() method appears to call .abort() when it starts, so calling it multiple times could potentially kill downloads which are currently in progress. I'm therefore guessing I need some kind of mutual exclusion in my own code where I ensure that I only ever have 1 call to .download() at a time.


im.composite modifies source image

Noticed that the im.composite function modifies the source image. This is not the expected behavior I would want, instead I'd prefer:

we throw if the source is not premultiplied
then we don't have to modify the source and it can be considered immutable
we also then don't may the perf penalty of demultiplying the source (likely needlessly)

The byproduct of this bug is that compositing multiple images into one larger one ultimately leads to messed up colors in the destination image (I presume due to the bad effect of rounding/precision loss each pre/de-multiply trip).
Seeing an image created from many subimages that looks like this (see the less vibrant red in the upper left):


Feature Request: defaultValue prop in SimpleForm should support dynamic value

My first try with Global Default Value
const generateCode = {
    number: 1,
    call: function() {
        let code =  'CODE' + this.number;
        this.number++;
        return code;
    }
};

const productDefaultValue = { created_at: new Date(), code:  generateCode.call()};

export const ProductCreate = (props) => (
    <Create {...props}>
        <SimpleForm defaultValue={productDefaultValue}>
            <TextInput source="code" />
            <DateInput source="created_at" />
        </SimpleForm>
    </Create>
);

The product 'code' is expected as 'CODE1', 'CODE2' and so on everytime we press CREATE button.
But it does not, it's always 'CODE1'.
'created_at' prop has the same story.
Then, I try Per Field Default Value
export const ProductCreate = (props) => (
    <Create {...props}>
        <SimpleForm>
            <TextInput source="code" defaultValue={generateCode.call()}/>
            <DateInput source="created_at" defaultValue={new Date()}/>
        </SimpleForm>
    </Create>
);

The result is good for 'created_at' prop, it always receives new date value.
But the 'code' prop is not pretty good.
It is CODE1 at 1st time, CODE4 at 2nd time, CODE8 at 3rd time.
Seem that 'generateCode.call()' gets called everytime React renders as below
_react2.default.createElement(_input.TextInput, _extends({}, MA_DH, { defaultValue: generateCode.call()})), ...);
I think we should somehow support dynamic default value.
If there is better way, please light me up.
Thank you very much.

Fixed by #277


Every game resulting in a draw

https://github.com/jonathanmcdermid/Clovis/pull/21
https://github.com/jonathanmcdermid/Clovis/actions/runs/10054095058/job/27788039114
I'm trying to use fastchess in a pipeline, but despite using what appears to be a valid command, every game results in a draw.
./fast-chess/fast-chess
-engine name=clovis-new cmd=build/bin/Release/clovis
-engine name=clovis-old cmd=build/clovis-release-gcc-linux
-games 100
-each proto=uci tc=5+0.1
-openings file=fast-chess/app/tests/data/openings.epd format=epd order=random
-concurrency 32
-pgnout file=self-play.pgn

This looks like the binary isn't working for the engines(probably a wrong path), the games dont have a termination end
Finished game 3 (clovis-new vs clovis-old): 1/2-1/2 {}
[Event "Fast-Chess Tournament"]
[Site "?"]
[Date "2024.07.23"]
[Round "2"]
[White "clovis-new"]
[Black "clovis-old"]
[Result "*"]
[SetUp "1"]
[FEN "rnbq1rk1/ppp1ppbp/1n4p1/8/2BP4/2N1PN2/PP2QPPP/R1B2RK1 w - - 7 9"]
[GameDuration "00:00:00"]
[GameStartTime "2024-07-23T06:48:25 +0000"]
[GameEndTime "2024-07-23T06:48:26 +0000"]
[PlyCount "0"]
[TimeControl "5+0.1"]

 *

can you specify the the log option with -log file=log.txt level=trace and maybe upload to get a better understanding?

Technically, if the tournament starts and both binaries are not working, it should always be a loss for the side with the first move? But I know that engines not starting/not responding is going to be fixed soon, and the tournament then wouldn't even start, right?

and the tournament then wouldn't even start, right?

yes

should always be a loss for the side with the first move?

probably

@jonathanmcdermid
the binary doesnt seem to work, i plan to improve how that is being displayed though
https://github.com/Disservin/Clovis/actions/runs/10063906096/job/27819705219?pr=1

@Disservin
I'm not sure if this run you made is actually identifying the problem. bench isnt a valid command for that binary. This run shows how the binary is indeed where it is expected to be.
https://github.com/jonathanmcdermid/Clovis/actions/runs/10069623122/job/27836892752
Do you have any advice for determining what exactly is going wrong with the fastchess command?

@Disservin take a look at the log file. It seems that the engine is interfacing with fastchess just fine. Not sure what is going wrong.
https://github.com/jonathanmcdermid/Clovis/actions/runs/10069932635/artifacts/1733266219

[Engine] [03:23:44.682683] <140336133305920> clovis-new ---> info depth 14 score cp   50 nodes   695027 time    376 nps  1843572 pv f1b5 b8d7 f3d4 a8c8 e4d5 f6d5 c2e2 d8e7 c3e4 e8d8 e1g1 d5f6 b5d7 f6d7 f1e1 b7e4 e2e4 e7e4 e1e4  [Engine] [03:23:44.682688] <140336133305920> clovis-new ---> bestmove f1b5 [TRACE ] [03:23:44.682696] <140336133305920> fastchess --- Engine clovis-new is done thinking [TRACE ] [03:23:44.682702] <140336133305920> fastchess --- Check if engine clovis-new is in a ready state [TRACE ] [03:23:44.682712] <140336133305920> fastchess --- Pinging engine clovis-new [Engine] [03:23:44.682717] <140336133305920> clovis-new <--- isready [Engine] [03:23:44.682765] <140336133305920> clovis-new ---> readyok [TRACE ] [03:23:44.682775] <140336133305920> fastchess --- Engine clovis-new is responsive. [TRACE ] [03:23:44.682780] <140336133305920> fastchess --- Engine clovis-new is in a ready state [TRACE ] [03:23:44.683652] <140336133305920> fastchess --- Game 1 between clovis-new and clovis-old finished [TRACE ] [03:23:44.683687] <140336133305920> fastchess --- Game 1 finished with result * [TRACE ] [03:23:44.683719] <140336133305920> fastchess --- Game 2 between clovis-old and clovis-new starting
@Disservin It seems like every game just has one engine queried for the first move, and then ends for some reason.

I'm not sure if this run you made is actually identifying the problem.

Oh sorry

And could you show me what a valid command would be in this pipeline

checkout sf ci
Id if the binary maybe crashes in the ci with the commands, ill look later again

Thanks for your help, I will try matching the sf ci more closely and also will try using a sf binary to determine if its a problem with my engine or not.

I just realized that your engine has the output aligned
info depth 13 score cp   58 nodes   291609 time    153 nps  1893564 pv f1b5 b8d7 f3d4 a8c8 e4d5 f6d5 c2e2 f8e7 c3d5 b7d5 e2g4 e7f6 e1g1 f6e5 f1d1
info depth 14 score cp   50 nodes   695027 time    376 nps  1843572 pv f1b5 b8d7 f3d4 a8c8 e4d5 f6d5 c2e2 d8e7 c3e4 e8d8 e1g1 d5f6 b5d7 f6d7 f1e1 b7e4 e2e4 e7e4 e1e4

while this should still work, i can imagine that maybe fc doesnt correctly parse something

@Disservin thanks! that was indeed the problem. I will remove the alignment for now. Do you plan on making fc accomodate that sort of thing or no?

yeah can you check if replacing the simple emplace_back here to the conditional work for you?
https://github.com/Disservin/fast-chess/blob/master/app/src/util/helper.hpp#L66
    while (std::getline(string_stream, segment, delimiter))
        if (!segment.empty()) seglist.emplace_back(segment);

(feel free to open a pr if it does)


API SDK retrieve the list of all supports and tips to a video

Is there a way to retrieve the list of users, and the amount of support to a particular video?
For instance , this video :
https://lbry.tv/@Learn-LBRY:6/how-to-fix-vcruntime140.dll-missing-error-in-valorant:f has 18 LBC of supports and tips . Is there a way to get the list of channels and the tip amount?
I tried using the  support list endpoint .
The video has claim_id as fe442d3fc15c1281fb4f968edf3bc51b22917c76 (retrieved from the video information) .
I executed :
lbrynet support list --claim_id=fe442d3fc15c1281fb4f968edf3bc51b22917c76
and it returns me :
{   "items": [],   "page": 1,   "page_size": 20,   "total_items": 0,   "total_pages": 0 }
I am not the creator of the video or neither have I supported / tipped the video .
I have tried this with multiple videos and claim ids , and this doesnt seem to work .  Any help would be appreciated ,
Regards !

This is not possible yet, but we do plan to implement it. Working through a big refactor and a few other issues at the moment.
Support list will only show local wallet data, but the plan is to have a new api with all.
Will be covered under https://github.com/lbryio/lbry-sdk/issues/2041

Hey @tzarebczan . Thank you for your follow up. Instead , Can I just get a full list of all supports/tips , not searchingby claim id . Analogous to the command
lbrynet claim search which seems to list all the claims .
I am trying to  get a hand on the list of supports by any way possible. Please help!


Fix live code example width

Before
After

This kind of seems like a band-aid to fix the real issue, which is the parent Flex container using row as flex-direction. In my opinion, the parent shouldn't be a Flexbox at all - just a regular block element.

(ah sorry, saw @T-Hugs comment after approving the band-aid -- I don't have a strong preference for his suggested fix vs. this one)

🤦♀ I too missed Trevor's comment before approving and merging (was quickly trying to clean up our PRs ahead of today's release). Sorry about that! @colebemis if you would like to make the flex box change feel free and I'll review that separately


findOrCreate function ?

Hi,
Just asking, is there any method for saving a model which checking if it exist in the db or not. Currently, i'm using model.where and model.save to achieve this.
Thank you for your help.

Hey! I think the best way to achieve this is to use setUniqueKey. For example, if you do this:
User.setUniqueKey('name', true);

User.save({name: 'Jon', country: 'Norway'}, (e, node) => console.log(node))
// -> { name: 'Jon', country: 'Norway', id: 1 }
User.save({name: 'Jon', country: 'Norway'}, (e, node) => console.log(node))
// -> { name: 'Jon', country: 'Norway', id: 1 }

However, this only checks that key, not the whole object. Doing a save would update the object with the existing matching key to update its properties to whatever you sent, instead of returning the old ones.
User.save({name: 'Jon', country: 'Australia'}, (e, node) => console.log(node))
// -> { name: 'Jon', country: 'Australia', id: 1 }
// same node, same id, but "country" has been changed to "Australia".

Does this help? Otherwise, I suggest sticking to using where and find together, that's all that a findOrCreate function would be if it was added.


REL: set version to v0.5.0

Closes gh-203.

Current coverage is 86.68% (diff: 100%)

Merging #239 into master will not change coverage

@@             master       #239   diff @@
==========================================
  Files            20         20
  Lines          2900       2900
  Methods           0          0
  Messages          0          0
  Branches        277        277
==========================================
  Hits           2514       2514
- Misses          335        336     +1
+ Partials         51         50     -1

Powered by Codecov. Last update a7cc59a...62f5e45


How does Azure protect against gas shortage scenarios

Hello,
how does Azure Regions like Amsterdam and Frankfurt protect against gast shortage scenarios?
thanks

Hello @cpinotossi - Thank you for your feedback. Since this channel is more for driving improvements towards MS Docs and your feedback doesn't reference any specific MS Docs, could you make a new post on the MS Q&A channel instead for your question? That way, we're able to locate the right team & SMEs that are better suited to address your questions.

We will now proceed to close this thread. If there are further questions regarding this matter, please reopen it and we will gladly continue the discussion.


storage: always flush the delete range when region range changes

What problem does this PR solve?
Issue Number: close #6039
Problem Summary:
What is changed and how it works?

Always flush the delete range when region range changes.

Renamed several functions in KvStore to reduce confusion.

handlePreApplySnapshot → applyPreHandledSnapshot
checkAndApplySnapshot → checkAndApplyPreHandledSnapshot

Introduced GCOptions to onSyncGC, instead of using FailPoints like now. In this way,  it would be simpler to test different GC methods.

Check List
Tests

[x] Unit test
[ ] Integration test
[x] Manual test (add detailed scripts or steps below)

When I commented out the newly added flushCache, unit test for ingestUsingSplit will fail, and unit test for ingestUsingColumnFile will still success, as expected:

[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

Fix a case that some data may be not reclaimed when setting TiFlash replica to 0

/run-all-tests

/run-all-tests

/merge

/run-unit-test

/merge


feat: Czech Localization

Autogenerated - partial review

Thanks for the PR! 💜
I would like to focus on v4 and it will have a better way to add translations.


Console error when calling capturer.stop()

Hi,
First I want to say thank you for your effort building this useful library!
I'm using ccapture.all.min.js to record my canvas animation. Everything works fine except for the last step. When I'm calling capturer.stop(), I see an error in the browser and I believe it's preventing me from downloading the video. Any ideas? BTW my canvas size doesn't change at all throughout the process.

Below is my code for drawing:
function draw {
  background(19,19,19, 200);
  var waveform = fft.analyze(64);
  var w = width;
  var h = height;
  noStroke();

  for (var i = 0; i <= 32; i++) {
    var x = map(i, 0, 32, w / 5, w/5 * 4);
    var y = map(waveform[i+12], 0, 255, h / 4 * 3, h/4);
    circles[i].x = x;
    circles[i].y = y;
    circles[i].show();
  }
  for (var n = 0; n <= 32; n++) {
    if (n < 32) {
      lines[n].x = circles[n].x;
      lines[n].y = circles[n].y;
      lines[n].x2 = circles[n+1].x
      lines[n].y2 = circles[n+1].y
      lines[n].show(200,200,200,100);
    }
    lines[n+32].show(100,100,100,80);
  }
  capturer.capture(document.getElementById('defaultCanvas0'));
}

That error means the canvas has changed size during capture (frames have to be the same size to be converted to video, I assume you're using the WebM capturer). It looks like you're setting the size after capture has started (it says the second frame is different). Make sure the size is set for good before starting capture (before the first .capture)

@spite Thanks for the reply. I don't think I'm setting the size after the capture. The width and height variable in my code is a constant that comes with P5. I observed the size of the canvas throughout the recording process, I'm sure the size doesn't change. BTW I sometimes get the error "Frame 2 has a different size" and sometimes "Frame 3 has a different size".
I kind of wonder what exactly is the 'size' you are referencing to? Is that the size of the canvas? Or it's the size of the content that is animating inside the canvas?

That message is from Whammy.js, the library to create WebM (https://github.com/spite/ccapture.js/blob/5c794f8fb6aecd909868147cd05b37ee02b4fcbc/src/Whammy.js#L237). You can see in the link how it checks for frame sizes. That message you're seeing is usually because the canvas has changed sizes. Try doing a console.log of the canvas width and height just before passing it to .capture and see if they're constant.

I just checked my code, and logged the size of both canvas and each frame. It turns out that the frame here is not the size of the canvas. My canvas size stays the same throughout the recording process whereas the size of each frame does differ from each other. So I guess I need to modify my code for animation. I will let you know once I solved this problem.

Had the same problem, but using the files in the src/ folder solved it... maybe you need to rebuild everything.

Possibly related: https://github.com/spite/ccapture.js/issues/76

Possibly fixed with https://github.com/spite/ccapture.js/commit/a6cafcc8371055cb0344c06999cb588063003037


Use a modified ctc_topo.

This implements the topo mentioned in
https://github.com/k2-fsa/k2/issues/746#issuecomment-856421616
Some examples (assuming there are three phones: a, b, c)

CAUTION: There are no mandatory blanks between the two consecutive symbols aa in aabc.

The following shows the same example using the existing ctc_topo:

Wow that was fast!
Merge when you think it makes sense, looks good to me!
(BTW at some point we should change the args of those function to be just an integer saying the number of phones; the list input is not good because we require the list to be contiguous.)

Maybe I’m missing sth but if we allow no blank between repeated phones, then isn’t the blank redundant? Can we simply use a 1 state pure self loop phone topo (+ final state) instead with the same result?

I think empirically the shared blank helps.  If the nnet doesn't want to
use it, it can just make it very improbable.
(in LF-MMI).
On Tue, Jun 8, 2021 at 7:21 PM Piotr Żelasko @.***>
wrote:

Maybe I’m missing sth but if we allow no blank between repeated phones,
then isn’t the blank redundant? Can we simply use a 1 state pure self loop
phone topo (+ final state) instead with the same result?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/k2-fsa/snowfall/pull/209#issuecomment-856678645, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAZFLO2KQZ67FQYFCLWE2CLTRX4MDANCNFSM46JKH3BQ
.

Nice to see this non-standard topo implemented finally (as we discussed before @danpovey , Fig 1a in http://oa.ee.tsinghua.edu.cn/~ouzhijian/pdf/ctc-crf.pdf). This doesn't matter much during training (because even with the standard topo, we can use rule-based numerator FST construction rather than composing topo FST with tokenized transcripts, to lower the computation cost of numerator construction). But this significantly improves decoding speed (much smaller HLG). The WER degradation is minimal. The main issue is that words like "met" and "meet" will be more confusable during both training and decoding. @pzelasko Yeah having a shared blank is important regarding training performance, especially when we use specAug (we can achieve similar effects by allowing skippable silence phones within a word, which is hacky for HMM). But silence/HMM still has its advantage when we need a model to produce accurate alignments/decoding time-stamps.

interesting, thanks for the explanation.


Change reference repo for Regions/France data

Dear @stevenliuyi,
Repository for Regions in France seems outdated and is giving wrong results. France being one of the most critical countries, it would be interesting to provide the most refreshed information.
The official French repository is the following:
https://github.com/opencovid19-fr/
Output data files are available in x=json or x=csv at:
https://github.com/opencovid19-fr/data/raw/master/dist/chiffres-cles.x
FYI:  chiffres-cles goes with:
"date"
"nom" => RegionName ("France" is also included)
"casConfirmes" => Confirmed Cases
"deces" => Deaths
"gueris" => Recovered
I don't know which format is the most useful to process the information and embed it into data_processing.js.
Besides, the official French Government dashboard is available at:
https://github.com/etalab/covid19-dashboard
It has a script "prepare-data.js".
Can I help you with this?
Best wishes,
Paul

After investigating the repos, it seems that France had stopped reporting number of confirmed cases for regions, instead they are only reporting number of hospitalized cases.


Implement archive access

Once we have an authenticated session we need to be able to getArchive and getArchives for a given user.
I believe this will involve the definition of a few TypeScript types:

ArchiveVO -- this is the VO returned by the PHP api, for internal use within the SDK.
Archive -- this is the exposed "archive" type that the SDK will return (and accept) for various archive methods.

as well as the following exposed SDK methods:

getArchives - returns a list of populated archives (takes token)
getArchive - returns a populated archive (takes token + archive ID)

A little more context can be found in our SDK thoughts notes

Let's talk about the archive object!
Here are the attributes that the PHP ArchiveVO contains:

archiveId
publicDT
archiveNbr
public
view
viewProperty
thumbArchiveNbr
imageRatio
type
thumbStatus
thumbURL200
thumbURL500
thumbURL1000
thumbURL2000
thumbDT
tatus

I'm going to try to figure out what each of these actually is and determine better types / structure and where / how they're used.  The questions I'm exploring right now:

What is the "public date time" used for (publicDT)?
What's the difference between an "archive ID" and an "archive number" (archiveNbr)?
What is public?
What is view and viewProperty?
What is thumbArchiveNbr?
What does type refer to and what are the possible values?
What are the possible values for thumbStatus?
What is a thumbDT and what is it used for?
What are the possible values for status?

The various type values / possible values are defined in the constants definition.
Specifically:

What does type refer to and what are the possible values?

https://github.com/PermanentOrg/back-end/blob/be63d67417b6fe6ed57510e882e48ea6bca9a225/library/definition/perm.constants.php#L411-L414

What are the possible values for status?

https://github.com/PermanentOrg/back-end/blob/be63d67417b6fe6ed57510e882e48ea6bca9a225/library/definition/perm.constants.php#L320-L328

What are the possible values for thumb status

Same as status, though it looks like the ONLY time anything is ever set is:
https://github.com/PermanentOrg/back-end/blob/be63d67417b6fe6ed57510e882e48ea6bca9a225/api/core/archive/bo/archive.bo.php#L209
so... it's unclear if this is a useful field.

I can help with public and publicDT because I looked into this recently for Kaitlyn:

There is a public field on the archive table that is either 0 (private) or 1 (public) (i.e. a  MySQL boolean).  When I tested locally, this flipped from private to public as soon as I uploaded something to the Public workspace.

There is also a publicDT field on archive, but unfortunately it looks like it is an exact match for createdDT, except for a few very old archives.  I think we used to use this to indicate when an archive was made public (which would make sense) but that got lost along the way.

It looks like archive view and viewProperty are not used anywhere
The Folder VO also has a view field which seems to relate to various folder view types (e.g. grid, timeline, etc).
I'm not seeing any instance of viewProperty being used or assigned a value; not clear if it does anything in any context.

I'm going to assume thumbDT references the creation date of the thumbnail, so that's what I'll translate it to.

I find archiveNbr extremely confusing and have never fully investigated it.  A few things I do know:

it is a string, not a number
records/folders also have archiveNbrs.  I think they are used to find the folder a record is in, sometimes, though we also have folder_link so I'm not totally sure.
The archiveNbr is used to create the link to a public archive (e.g. https://www.permanent.org/p/archive/03dg-0000 - the archive number for mine is '03dg-0000')

So an archiveId is the ID of an archive. An archive can have multiple multiple files. ArchiveNbr in increasing increments is a number used to identify every file on the archive.. So lets say if the archive has an archiveNbr abcd-0000, then the records in this archive will be abcd-0001,abcd-0002..... etc
These archiveNbrs are appended in the URL of each file fetched and inorder to avoid exposing archiveIds to the world, they came up with ArchiveNbr(way before me).

I had included the concept of a displayDate in the Archive type but I'm actually not seeing... why!
I'm going to remove it from the Archive type.  (we still store createdAt / updatedAt).  I think in my mind it was going to host the value for publicDT but as discussed above that is kind of an obsolete field and we don't need to carry it forward.  Obviously we can add it back if we decide it's useful.

I just spoke with @meisekimiu about the question of having a single "children" vs splitting into "folders" and "items" -- the original draft had a single "children" but in runtime this is going to be a huge pain since it forces our users to check / type guard which type the field is.
By splitting into two we keep meaningful information about the children, so I'm going to move to that approach.  It's very easy to combine the two types into one list if the user wants that!

As a further followup -- it seems that archives don't technically have children (even though the Vo has elements that indicate they would)
Instead they have a root (which is not provided as part of the archive API response)  I'm going to create an issue in backend exploring the merit of having this be part of the archive object, but in the short term I think this just means removing child elements from the Archive type.


Move from restructured text to markdown

Move away from readthedoc and from the github wiki. Integrate the documentation into the repo directly.

I'll change it!

Resolved by #641.


Automator: update<EMAIL_ADDRESS>in<EMAIL_ADDRESS>

Generated by Automator - 2023-05-24T01:59:59+00:00

@istio-testing: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

test_ztunnel_release-1.18
8c2be164251aeca53ffae158184162cbdbea7c84
link
true
/test test

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

@istio-testing: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

test_ztunnel_release-1.18
8c2be164251aeca53ffae158184162cbdbea7c84
link
true
/test test

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test test

@istio-testing: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

test_ztunnel_release-1.18
8c2be164251aeca53ffae158184162cbdbea7c84
link
true
/test test

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

cc @howardjohn
Caused by:
  Unable to update https://github.com/howardjohn/hyper-util?branch=client/h2-timer#5f15fb08
Caused by:
  object not found - no match for id (5f[15](https://prow.istio.io/view/gs/istio-prow/pr-logs/pull/istio_ztunnel/532/test_ztunnel_release-1.18/1661209675225370624#1:build-log.txt%3A15)fb087d2b2b64e2019a06990b07a055f479f5); class=Odb (9); code=NotFound (-3)
make: *** [Makefile.core.mk:15: check-features] Error 101

Maybe need to cherry-pick https://github.com/istio/ztunnel/pull/293? @howardjohn

Replaced by https://github.com/istio/ztunnel/pull/534

https://github.com/istio/ztunnel/pull/534 has been merged.


Set the minimum network protocol version to 170_050 for NU5 testnet

Motivation
On testnet, Zebra should always reject pre-NU5 nodes.
Scheduling
We need to wait for:

NU5 testnet activation - around April 22
Enough NU5 nodes to be deployed on testnet

Tasks

Update the INITIAL_MIN_NETWORK_PROTOCOL_VERSION to Testnet, Nu5

The minimum version should be 170_040, right?
Closed by https://github.com/ZcashFoundation/zebra/pull/3976

170_040 is a fake version that rejects all pre-NU5 nodes. (The previous released version was 170_017.)
So technically this ticket is closed, because there are no nodes between 170_040 and 170_050.
But the specific code change in the ticket hasn't been done yet.
We can fix this up when we do the NU5 mainnet version fix in #4117.


Support repositories: ${{ github.repository }}

Could we please support passing (only) ${{ github.repository }} to the repositories input?

I've had to make use of this ugly workaround for now:
    steps:
      - name: Extract repo (only, not org) from ${{ github.repository }}
        id: repo
        run: |
          org_slash_repo="${{ github.repository }}"
          repo="${org_slash_repo##*/}"
          echo "repo=${repo}" >> "${GITHUB_OUTPUT}"

      - name: Create GitHub token for checking out ${{ github.repository }}
        uses: actions/create-github-app-token@5d869da34e18e7287c1daad50e0b8ea0f506ce69 # v1.11.0
        id: app-token
        with:
          app-id: ${{ vars.MYORG_SOME_APP_ID }}
          private-key: ${{ secrets.MYORG_SOME_APP_PRIVATE_KEY }}
          owner: myorg
          repositories: ${{ steps.repo.outputs.repo }}

      - name: Checkout ${{ github.repository }}
        uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
        with:
          token: ${{ steps.app-token.outputs.token }}

But could we please add support for not needing it?

I've had to make use of this ugly workaround for now:
[...]
But could we please add support for not needing it?

Because when trying without it, like this:
    steps:
      - name: Create GitHub token for checking out ${{ github.repository }}
        uses: actions/create-github-app-token@5d869da34e18e7287c1daad50e0b8ea0f506ce69 # v1.11.0
        id: app-token
        with:
          app-id: ${{ vars.MYORG_SOME_APP_ID }}
          private-key: ${{ secrets.MYORG_SOME_APP_PRIVATE_KEY }}
          owner: myorg
          repositories: ${{ github.repository }}

      - name: Checkout ${{ github.repository }}
        uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
        with:
          token: ${{ steps.app-token.outputs.token }}

I only get errors like this:
Failed to create token for "myorg/example-prototype-api" (attempt 2): Not Found - https://docs.github.com/rest/apps/apps#get-a-repository-installation-for-the-authenticated-app
Failed to create token for "myorg/example-prototype-api" (attempt 3): Not Found - https://docs.github.com/rest/apps/apps#get-a-repository-installation-for-the-authenticated-app
Failed to create token for "myorg/example-prototype-api" (attempt 4): Not Found - https://docs.github.com/rest/apps/apps#get-a-repository-installation-for-the-authenticated-app
RequestError [HttpError]: Not Found - https://docs.github.com/rest/apps/apps#get-a-repository-installation-for-the-authenticated-app
    at fetchWrapper (/home/runner/_work/_actions/actions/create-github-app-token/5d869da34e18e7287c1daad50e0b8ea0f506ce69/dist/main.cjs:37109:11)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async hook4 (/home/runner/_work/_actions/actions/create-github-app-token/5d869da34e[18](https://github.com/myorg/example-prototype-api/actions/runs/11816114724/job/32918724422?pr=73#step:2:18)e7287c1daad50e0b8ea0f506ce69/dist/main.cjs:39476:18)
    at async getTokenFromRepository (/home/runner/_work/_actions/actions/create-github-app-token/5d869da34e18e7287c1daad50e0b8ea0f506ce69/dist/main.cjs:39792:20)
    at async RetryOperation._fn (/home/runner/_work/_actions/actions/create-github-app-token/5d869da34e18e7287c1daad50e0b8ea0f506ce69/dist/main.cjs:39667:24) {
  status: 404,
  request: {
    method: 'GET',
    url: 'https://api.github.com/repos/myorg/myorg%2Fexample-prototype-api/installation',
    headers: {
      accept: 'application/vnd.github.v3+json',
      'user-agent': 'actions/create-github-app-token',
      authorization: 'bearer [REDACTED]'
    },
    request: { hook: [Function: bound hook4] AsyncFunction }
  },

(note the duplicated myorg there in myorg/myorg/example-prototype-api)

This is especially interesting/needed nowadays when there is "Ruleset Workflows", which seem to require making use of actions/create-github-app-token since the GITHUB_TOKEN they use don't appear to have access to other repositories than the one the workflow is defined in (?).


Continuous Integration Methodology

I setup Wercker on my branch. After running it, Wercker builds aren't actually doing anything from what I can tell. Since there is no wercker.yml, they are run and do something like this:
https://app.wercker.com/#buildstep/5541a7d9dc16db447911285b
But, after further reading, I'd be more in favor of setting up Wercker than Travis. Main reason is because Wercker seems to have support for local docker instances, which I don't see Travis having out of the box, but maybe I'm missing something. I like to have an option of building locally in the same environment as the CI server.

Oooh, I like that.  Maybe we should switch over.


Bump version of loader

I believe this is why the CI run is failing now, because the kernel was updated without also changing the loader.

@jounathaen

The file ist not called rusty-loader anymore, but hermit-loader. That's why the CI fails

You are absolutely right! Works now.

Thanks!


How to realize the autocomplete feature ?

https://stackoverflow.com/questions/71997354/vscode-extension-how-to-realize-the-autocomplete-feature[](url)

https://github.com/microsoft/vscode-extension-samples/tree/main/inline-completions


Inventory count

This adds support for the Inventory Count record type and its item sublist.
http://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2018_1/script/record/inventorycount.html

Targeted the wrong branch here! Sorry :)


[Feature]: update project for Core Web Vitals

How the project can be improved?
I recently added few improvements to how VSF is auditioned by Lighthouse. It would be worth to have these features here.
What are the acceptance criteria?

[ ]

Additional information
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

https://github.com/vuestorefront/vue-storefront/pull/6307
https://github.com/vuestorefront/vue-storefront/pull/6306
https://github.com/vuestorefront/vue-storefront/pull/6304
https://github.com/vuestorefront/vue-storefront/pull/6301
https://github.com/vuestorefront/vue-storefront/pull/6297


error pulling amazonlinux:latest

  - docker#v5.6.0:
        image: "amazonlinux:latest"
        always-pull: true

hello, Could you help me,  I have these errors in the logs of buildkite when I try to use the latest of amazonlinux, with a previous version works but not with the latest
Unable to find image 'amazonlinux:latest' locally
--
  | latest: Pulling from library/amazonlinux
  | ee5c3b4d09bc: Pull complete
  | Digest: sha256:1293fb4fa103ea81a8769d7b0aa000072884b0750c0a28563fd9838fea784245
  | Status: Downloaded newer image for amazonlinux:latest
  | Amazon Linux 2023 repository                    0.0  B/s \|   0  B     00:00
  | Errors during downloading metadata for repository 'amazonlinux':
  | - Curl error (6): Couldn't resolve host name for https://cdn.amazonlinux.com/al2023/core/mirrors/2023.0.20230322/x86_64/mirror.list [getaddrinfo() thread failed to start]
  | Error: Failed to download metadata for repo 'amazonlinux': Cannot prepare internal mirrorlist: Curl error (6): Couldn't resolve host name for https://cdn.amazonlinux.com/al2023/core/mirrors/2023.0.20230322/x86_64/mirror.list [getaddrinfo() thread failed to start]
  | Ignoring repositories: amazonlinux
  | No match for argument: unzip

@royalcala the error appears to be on the command you are running as the docker pull output is only up to the Status: line, whatever is after that is what you are running inside the container.
Could you provide more information so that we can further troubleshoot?

thanks @toote , these are my logs and the following is my config(if I use     image: "amazonlinux:2" works, but not with the latest version, suddenly it stopped working)
steps:
- label: ":lambda: Unit testing & lambda zip artifact creation"
  commands:
    - "npm install"
    - "npm run test"
    - "mkdir -p build"
    - "chown -R $(whoami) build"
    - "cp src/index.js package.json package-lock.json src/constants.js build"
    - "cp src/country.utils.js src/constants.zip_codes.js src/zip_code.utils.js src/identifiers.js build"
    - "cd build && npm install --production"
    - "npx bestzip lambda.zip *"
    - "buildkite-agent artifact upload lambda.zip"
  plugins:
    - docker#v3.9.0:
        image: "node:12"

- wait
- label: ":rocket: Deploying lambda zip to aws"
  command: "./lambda-deploy.sh"
  plugins:
    - cultureamp/aws-assume-role:
        role: arn:aws:iam::127579856528:role/buildkite-sam-role
    - docker#v3.9.0:
        image: "amazonlinux"
        propagate-environment: true
        environment:
          - AWS_REGION
          - AWS_SECRET_ACCESS_KEY
          - AWS_SESSION_TOKEN
          - AWS_DEFAULT_REGION
          - AWS_ACCESS_KEY_ID

@royalcala looks like the issue is within your ./lambda-deploy.sh script. From the error, it would appear that that it is not finding the zipfile... which makes sense as you are uploading it as an artifact in the previous step but not downloading afterwards 🤷

this is my lambda-deploy.sh that works before but now it doesn't works with the latest image
#!/usr/bin/env /bin/bash
echo "************************************************************"
echo "Starting Deployment to ${LAMBDA_ENV}"
echo "************************************************************"
set -euo pipefail

LAMBDA_ENV="mktg_starfish_lambda_stg"
ENVIRONMENT="stg"
if [[ "${BUILDKITE_BRANCH}" == "main" ]]; then
   LAMBDA_ENV="mktg_starfish_lambda"
   ENVIRONMENT="prod"
fi

yum -y install unzip
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip -q awscliv2.zip && ./aws/install

buildkite-agent artifact download lambda.zip .

aws lambda update-function-code \
   --publish \
   --function-name $LAMBDA_ENV \
   --zip-file fileb://lambda.zip > /dev/null

echo "************************************************************"
echo "Deployment completed to ${LAMBDA_ENV}"
echo "************************************************************"

with the latest amazonlinux version works adding privileged to true
    - docker#v3.9.0:
        image: "amazonlinux"
        privileged: true

That is weird... the error is obviously that curl could not download the the installation step as you can see in the following line:
Couldn't resolve host name for https://cdn.amazonlinux.com/al2023/core/mirrors/2023.0.20230322/x86_64/mirror.list [getaddrinfo() thread failed to start]

Doesn't look like an issue with the plugin itself but with the network where it is running or the setup of docker because I can't reproduce on my local agent :(


[Update Request]: Oracle VM VirtualBox

What type of update are you requesting?
A new version of an existing package
Current Package Identifier
Oracle.VirtualBox
Package Version
7.0.18
Please describe the changes you would like to see
There is a new release (7.0.18) available

https://github.com/microsoft/winget-pkgs/pull/152163

#152163


Give the rest of the Auth routes a name.

Named routes area really useful and it seems strange to only have a name for login and logout, but not the others.

It's fine as is. You can tweak in your own app if you would like.


Running a postgres database on Kubernetes

Setup a statefulset for a postgres database in kubernetes
Here is what you should do
Run a postgres  database as a statefulset
We should be able to authenticate into database using a username admin and password admin
Database data should be stored in a Volume like PVC
PVC should be created from a PV

please assign me this issue. it's my first time implementing k8s , that's why i am so much excited.

done


Switch WriteFlusher import to pkg/ioutils

:smile:
https://github.com/docker/docker/pull/13093

As discussed in https://github.com/samalba/dockerclient/pull/103#issuecomment-100033199 :heart:
This fixes the build on master for me, using the following simple Dockerfile:
FROM golang:1.4

RUN git clone --depth=1 https://github.com/docker/docker.git /go/src/github.com/docker/docker

WORKDIR /go/src/github.com/samalba/dockerclient
COPY . /go/src/github.com/samalba/dockerclient

RUN go get -d -t -v ./...
RUN go build -v ./...
RUN go test -v ./...

(and only pre-cloning docker/docker for --depth=1 so it can be speedy)

:+1: ping @abronan @aluzzardi @vieux @ehazlett (sorry for spam)

LGTM

:+1:


squash login related blackbars

cc @keybase/hotpotatosquad

Hmm I don't know about this change, what inspired it? How does it affect the CLI?

ah yeah not good for the CLI. @buoyad was getting some blackbars on logout, i think there were some chat calls in progress when logout was triggered and the errors bubbled up

That shouldn't happen if that RPC canceller stuff is working right. It's supposed to cancel any live RPCs on logout for chat.

i think there is a race between the active device being cleared and the RPC cancelling. Iwonder why ActiveDevice.Clear() doesn't happen as one of the last steps https://github.com/keybase/client/blob/master/go/libkb/globals.go#L329

Ok if that is true, I think that is what we need to fix rather than swallowing these. I intended that squash function for stuff that is just clearly not a problem, like context.Canceled and company.

yeah agreed, have a ticket to look into the race more closely