No .crx file

When I download .zip file and try to upload it, there's no .crx file, so Chrome shows an error message "Manifesto has been not found"

Unfortunately I wasn't able to reproduce your issue. Once you have downloaded the .zip and extracted it, you should be able to load it unpacked. Would greatly appreciate some more info on that.
Regarding the .crx file, it was available on the releases page, though you couldn't download it due to Chrome trying to auto-install it. I just now put it in a .zip file, so it should download normally. I suggest you try using that. Just extract it and drag and drop the .crx file onto your browser's extension management page.
Please get back to me if any other issues arise or if this fixes your problem. Thanks for your feedback.

Hi,
I’ve followed your instructions and downloaded .crx file via releases page, then unpacked it to already existing folder.
Now the browser has installed the extension without any problems.
Thank you for your help!
Best regards
Maksymilian
PS. You can upload .crx file into code page (https://github.com/NorbertCode/CDA-Downloader-Extension/tree/dev), so the browser would automaticlly download all the content.
Thank you for help again! The extension is working without any problems whatsoever!
From: Norbert @.>
Sent: Sunday, September 29, 2024 2:33 PM
To: NorbertCode/CDA-Downloader-Extension @.>
Cc: Mks4747 @.>; Author @.>
Subject: Re: [NorbertCode/CDA-Downloader-Extension] No .crx file (Issue #1)
Unfortunately I wasn't able to reproduce your issue. Once you have downloaded the .zip and extracted it, you should be able to load it unpacked. Would greatly appreciate some more info on that.
Regarding the .crx file, it was available on the releases page https://github.com/NorbertCode/CDA-Downloader-Extension/releases , though you couldn't download it due to Chrome trying to auto-install it. I just now put it in a .zip file, so it should download normally. I suggest you try using that. Just extract it and drag and drop the .crx file onto your browser's extension management page.
Please get back to me if any other issues arise or if this fixes your problem. Thanks for your feedback.
—
Reply to this email directly, view it on GitHub https://github.com/NorbertCode/CDA-Downloader-Extension/issues/1#issuecomment-2381340029 , or unsubscribe https://github.com/notifications/unsubscribe-auth/A5DGQLBWC3PJF66ILHXKODLZY7XRHAVCNFSM6AAAAABPBTHOQCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGOBRGM2DAMBSHE .
You are receiving this because you authored the thread.  https://github.com/notifications/beacon/A5DGQLD4UST3SR4LCLDQDXLZY7XRHA5CNFSM6AAAAABPBTHOQCWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTUN6BOX2.gif Message ID: @.*** @.***> >

Glad I could help and, again, thanks for the feedback. I hope you get some use out of this extension. I'm closing the issue now.


Fix #115 - specify custom parent authorization action.

@bryanrite Do you need anything else from me to get this merged in?

+1 :)


[FEATURE] Add option to cog commit to automatically stage files

Is your feature request related to a problem? Please describe.
I find it slightly annoying to have to add my staged changes with git before using cog commit
Describe the solution you'd like
I'd like an option such as cog commit -a which automatically stages files that have been modified or deleted - analogous to git commit -a.
Describe alternatives you've considered
Currently the only way to achieve this is running git add -u followed by cog commit

Hey @mbhall88, would this satisfy your needs ? https://github.com/cocogitto/cocogitto/pull/373
You can clone this branch and compile using cargo build :)

Hi @ABWassim, no it doesn't unfortunately. The add_all method on a git Repository seems to essentially do git add * which adds all files in the current directory, except for files whose name begin with a dot. What I'm looking for is git commit -a functionality (commit all changed files), which is essentially the same as running git add -u followed by git commit.

Hey @mbhall88 thanks for the feedback ! Just updated the add_all method and tests to include a file that begins with a dot. Looks like it doesn't break other tests (except the GPG one that will be soon fixed), but yeah it's better to use . rather than * imo as well.

Hi @ABWassim, thanks again. I think https://docs.rs/git2/latest/git2/struct.Index.html#method.update_all is the method you would use to emulate git add -u?

Hey again @mbhall88. From my understanding the only difference between git add . and git add . -u is that the latest won't add new files that were created, and I cannot find a use case where this is something that we wouldn't want cog commit -a to do.

I think it's better to have both, indeed. Just updated, the feature, let me know what you think :)

Awesome. Thanks @ABWassim that looks great


For adding watch for data at api-mode:false

at api-mode is false, if props 'data' is changed, is not working.
Below code is works fine.
    'multiSort' (newVal, oldVal) {
      if (newVal === false && this.sortOrder.length > 1) {
        this.sortOrder.splice(1);
        this.loadData();
      }
    },
    'data' (newVal, oldVal) {
      if (this.isDataMode && newVal !== oldVal) {
        this.loadData();
      }
    },
    'apiUrl'  (newVal, oldVal) {
      if(this.reactiveApiUrl && newVal !== oldVal)
        this.refresh()
    }

@yupmin There is this PR by @jwkicklighter that is pending to be merged.


DEV: UpdateToStore log data in <IP_ADDRESS> fails

UpdateToStore log data in <IP_ADDRESS> fails with error: No value present

ETA is 7/25 @TessForGithub2

Update: Please provide the test cases and  will debug this quickly.

UPDATE: Had the following ASK for Shehzad:
May I have the test case for “UpdateToStore log data in <IP_ADDRESS> fails #646”.
Please bear in mind that my guess is that the GET is failing to retrieve the data correctly. Always please document that you are not seeing the information after an UPDATE with a subsequent GET, OK? And, typically, there are 3 steps: Update, Get, then Validate.

This functionality does not work as expected.  GetFromStore does not return the expected data


why does note number 9 appear in italics?

This, the oldest dated inscription of East Java, is of great historical interest and has been edited several times. After the discovery of the main fragment, a posthumously published provisional transcription by J. L. A. Brandes (<bibl rend="omitname"><ptr target="bib:Brandes1913_01"/></bibl>), and a more thorough study by F. D. K. Bosch (<bibl rend="omitname"><ptr target="bib:Bosch1916_01"/></bibl>, with numerous corrections and additions in <bibl rend="omitname"><ptr target="bib:Bosch1923_02"/></bibl>), discovery of further fragments necessitated a revised edition by Bosch (<bibl rend="omitname"><ptr target="bib:Bosch1924_02"/></bibl>).  However, the most reliable, indeed virtually flawless, edition is that of J. G. de Casparis (<bibl rend="omitname"><ptr target="bib:Casparis1941_01"/></bibl>). Thirty years later, H. B. Sarkar (<bibl rend="omitname"><ptr target="bib:Sarkar1971-1972_01"/></bibl>), and also in an article published separately, just one year earlier (<bibl rend="omitname"><ptr target="bib:Sarkar1970_03"/></bibl>) pretended to give a more reliable interpretation than that of his predecessors, but at least his decipherment is not more reliable at all.<note>Sarkar’s readings normalize the spelling and are unreliable especially in the matter of final consonants (notably <foreign>ṁ/m</foreign>).</note> A photo of an excellent inked estampage, showing large parts of lines 10–21, was included as plate 1 in <bibl><ptr target="bib:Brandes1913_01"/></bibl>; both of Bosch' publications also photographic reproductions, but De Casparis (<bibl rend="omitname"><ptr target="bib:Casparis1941_01"/><citedRange unit="page">498</citedRange><citedRange unit="note">7</citedRange></bibl>) has warned that they are often misleading. A useful photograph of the main fragment is available as OD 743. Moreover, the stone is accessible at the National Museum in Jakarta (stone D.113), where I was able to verify the published readings on 6 July 2011. Only variant readings from De Casparis' edition are systematically noted in my apparatus, and I have also recorded all the philological observations made by L.-Ch. Damais (<bibl rend="omitname"><ptr target="bib:Damais1952_01"/></bibl>). I refer for the sake of convenience only to Sarkar's 1970 publication, not to the one of 1971.

It should be good


Simplify README

I've copied the changes to README.qmd which we use to render README.md (it still needs to be rendered though)

Thanks, guys! 🙏


Fix/ Venue: homepage override

#1616

there is one test failing because it is using the old password "1234"


Failing in VSCode on Mac to deploy DotNet Azure Function

<Please be sure to remove any private information before submitting.>
Repro steps:
<Enter steps to reproduce issue>
Action: azureFunctions.deploy
Error type: ArgumentError
Error Message: Invalid Object.
Version: 0.11.0
OS: darwin

We have done a little work to improve those error messages, but haven't released that yet.
Does this happen consistently for you? There may have been an outage earlier causing this

Closing due to lack of response. Feel free to re-open with more info


possibility to print an object all in one line (but still valid Scala code)

It would be useful to have the possibility to print the object all in one line (but still valid Scala code).
Something like:
pprint.pprintln(p, width = None) //or
pprint.pprintln(p, width = 0))

pprint.pprintln(0, width = 99999999)

i think it's a bit ugly.  if not None, at least 0 or -1.


Export-Excel Move* unexpected results

$xlfile = "$env:TEMP\testThis.xlsx"
rm $xlfile -ErrorAction Ignore

1..10  | Export-Excel $xlfile -WorkSheetname First
11..20 | Export-Excel $xlfile -WorkSheetname Second -MoveToStart
21..30 | Export-Excel $xlfile -WorkSheetname Third  -MoveBefore First
31..40 | Export-Excel $xlfile -WorkSheetname Fourth -MoveAfter Third -Show

Expected  the worksheet order to be Second|Fourth|Third|First

I'll check. I had to fix something which was wrong with move before and I may have not got move after correct.
The order should go
first
Second First
Second third first
Second third fourth First.

Committed the fix.

Do you have an example you could post?

I get that behaviour even without the move.  What I notice in excel is if I enter a range name excel translates it to an address
Examples where it works and where it fails would be really helpful

I tried this
$data = @"
A,B,C,Date
2,1,1,2016-03-29
5,10,1,2016-03-29
"@

$c = New-ExcelChartDefinition -ChartType Line  -Title Impressions   -Row 0 -Column 0`
    -XRange "Impressions[Date]" `
    -YRange @("Impressions[B]","Impressions[A]") `
    -SeriesHeader 'B data','A data' `

$data | ConvertFrom-Csv |   Export-Excel -path temp.xlsx -AutoSize -TableName Impressions

If I follow it with
Export-Excel -path temp.xlsx -worksheetName chartPage -ExcelChartDefinition $c  -show
All is good. If I close Excel and run
Export-Excel -path temp.xlsx -WorkSheetname sheet1 -MoveToEnd  -Show

The chart breaks.  But I get the same if I place the chart page before the data page like this
Export-Excel -path temp.xlsx -WorkSheetname chartPage
$data | ConvertFrom-Csv |   Export-Excel -path temp.xlsx -AutoSize -TableName Impressions
Export-Excel -path temp.xlsx -worksheetName chartPage -ExcelChartDefinition $c  -show

It looks like a bug in EPPlus which says a table can only be the source of a chart if the chart comes on a later page

Sorry I was away on the weekend but what you described is exactly what I had (just with a different move statement). Sounds like it is out of your control though which sucks, but ranges still work so it isn't a big deal.


Relative expiration time

Senders may specify for how many seconds the document is available to sign rather than a single point in time where it expires
This has been changed to a relative value to be able to support "chained signatures" (i.e. one signer is required to sign before another) in the future. In such a case it doesn't make sense to specify a single point in time where the document expires, so the sender may specify a duration the document is available for each signer.

Looks all good. The BigInteger vs. Long (https://github.com/digipost/signature-api-specification/pull/27#discussion_r55034842) applies obviously here as well. Should probably represent the number as a Long internally before we marshall to XML.


Feature request: Filter the experiment table by tag

Short description
In the context of an model/artifact registry set with gto, it would be very handful to be able to filter the experiment table by tag.
Example
For example, imagine that I have a model registry with the following artifacts

base-churn-time-series
base-churn-hierarchical-model
acquisition-time-series

and therefore I have git tags created by gto, like

<EMAIL_ADDRESS><EMAIL_ADDRESS>base-churn-time-series#prod#1
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>acquisition-time-series#prod#1

and when I look at the experiment table, I would like to focus on type of artifact at a time. It would be nice to be able to filter by a regex or substring, e.g. "base-churn", or "acquisition", or "base-churn-time-series".
Workarounds
Of course I could get around this issue by adding this information in the params.yaml, but it is somewhat redundant, I think.
Perhaps there are other ways I could not think of...

Hi @francesco086,
Thanks for raising. I've opened #4882 to address this.
Here is a demo of the feature:
https://github.com/iterative/vscode-dvc/assets/37993418/1ab9a3e7-dd26-40f3-b8d9-7f170cf58b61
Please let me know if you have any feedback or would like any changes.
Thanks

Wow! That was fast!
And very good too!
I have only one small suggestion for something to check, perhaps it's already implemented but I don't know the base code enough to tell. If you open the "Command Palette", and select "DVC: Add filter to experiments table", will you be prompted to filter by tag too?

If you open the "Command Palette", and select "DVC: Add filter to experiments table", will you be prompted to filter by tag too?

Yep, that is covered.

Then that's it, I'd say!
Thank you so much, really impressive to see how fast this was addressed.

The feature went out with 1.1.11


RATIS-978. Fix failed UT: testAddNewFollowers

What changes were proposed in this pull request?
When leader send install snapshot request to follower, leader will wait, but when leader receive the response of install snapshot, leader does not notify.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/RATIS-978
How was this patch tested?
Existed tests

@bshashikant @lokeshj1703 Could you help review this patch ? Thank you very much.

Thanks @runzhiwang for working on this. The change looks ok. But , don't we need to check if request for install snapshot is just a notification but not a real snapshot install?
@lokeshj1703 , can you also check?

@lokeshj1703 Thanks for review. I have updated.

@runzhiwang Thanks for the contribution! @bshashikant Thanks for review! I have committed the PR to master branch.


Mobile Native Controls for copy/paste text cannot be dismissed

Bug description
On mobile, after selecting a date, the timepicker is focused. On click on the time (hours or minutes), the native controls to CUT/COPY/PASTE the text are triggered and cannot be dismissed.
Live Example
https://codepen.io/davideghz/full/GXVNYw/
My Environment

flatpickr version used: flatpickr v4.5.2
Browser name and version: Chrome 69.0.3497.100
OS and version: Android 6.0.1; ONE E1003 Build/MMB29M

Screenshot

Hi, has anybody checked into this?

Will look into it as soon as I can. Thank you for the patience :)

I think a nice interaction on mobile devices would be to show the native number select UI, which I think can be triggered "simply" using an input with type='number'. I'm not sure whether this can get along with the rest of the codebase tho

Any news on this? It's a pretty annoying experience for users on mobile


Adopt localized resources

As of issue https://github.com/sindresorhus/Preferences/issues/77 i localized package strings in a Resource Folder exactly as described in Apple documentation.
PS: while I was trying to sync the fork the initial PR was intentionally merged.

Please use these lang tags for Chinese:
zh-Hans in lieu of zh-CN.
zh-Hant in lieu of zh-TW.

Closing for lack of activity. Going to leave this for someone else.

@ShikiSuen Could you apply the changes you proposed and open a new PR?

@DivineDominion I'll see whether I can find some time to do this in this month (Jan).

@DivineDominion I'll see whether I can find some time to do this in this month (Jan).

@DivineDominion I'll do this after #90 gets merged, reducing possibilities of merging conflicts.


Update README.md

Some link were not functioning so I fixed them

@soluwatuyi Please review and merge the changes I made to the README file. Its very important since most people will be seeing the main branch's README first or is it causing any conflicts


Pattern and Additional properties

Below the proposal to how implement pattern and additional properties.
patternProperties:
Must be an object, where the key is a valid regex and the value is an object.
Example:
"patternProperties": {
    "^S_": { "type": "string" },
    "^I_": { "type": "integer" }
  }

patternProperties will work only for the properties that are not explicitly listed in the properties object.
additionalProperties:
Must be a boolean or an object.
If the is setted to false and there are properties that are not explicitly listed in the properties object we should throw an error.
If additionalProperties is used in conjunction with patternProperties the pecking order will be:
properties -> patternProperties -> additionalProperties
Example:
"additionalProperties": {
  "type": "string"
}

Discussion:
The json schema is very bad documented, so before start to implement these functionalities we need to discuss about few things.

additionalProperties
If is setted to { type: 'string' } and any additional property is not a string we have two possible cases:

throw an error
stringify the property as string

patternProperties
Basically the same as above, if a property matches to a pattern with { type: 'number' } but the property is not a number we have two cases:

throw an error
stringify the property as number

If I forgot or I didn't see some edge case please write it below.

Use http://npm.im/fast-safe-stringify to stringify the property, we can even be gentle and not have a strong type check for now, we can add that later (maybe).

Ok but we should stringify it as is or as the pattern/additional property says?
Example:
schema
properties: {...}
additionalProperties: {
  type: 'string'
}

object to stringify
{ addProp: 42 } // addProp is a number and not a string

The result will be
'{"addProp":42}'   // original type
                   // or
'{"addProp":"42"}' // additionaProperty wanted type

We should try to coerce and serialize. If not possible, throw.
Il giorno lun 19 set 2016 alle 14:02 Tomas Della Vedova <
<EMAIL_ADDRESS>ha scritto:

Ok but we should stringify it as is or as the pattern/additional property
says?
Example:
schema
properties: {...}
additionalProperties: {
type: 'string'
}
object to stringify
{ addProp: 42 } // addProp is a number and not a string
The result will be
'{"addProp":42}'   // original type
// or '{"addProp":"42"}' // additionaProperty wanted type
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/mcollina/fast-json-stringify/issues/5#issuecomment-247974809,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AADL4zhVP_gfrixoKg1WsJfNINY9qP0rks5qrnnjgaJpZM4J_7i7
.

Edge case:
Schema:
{
  title: 'title',
  type: 'object',
  properties: {...}
  patternProperties: {
    foo: {
      type: 'string'
    }
  }
}

if the user tries to stringify objfoo: {a: true}what we should do?

Stringify as [object Object]
Stringify with fast-safe-stringify
throw

I think the best option is the first one, because the user must know what is passing to fast-json-stringify, and if he sets a patternProperty, he's expecting the all the matching property have a specific type.
Furthermore I guess that [object Object] is faster than de others (I didn't do any bench).
In the other cases, if foo: { type: 'number' } -stringify-as-> NaN
If { type: 'boolean' } -stringify-as-> true

IMHO [object Object] sounds good. In fact, I would call toString() on it to coerce.
> ({}).toString()
'[object Object]'

If additionalProperties is setted to false and there's a property that does not match to properties and patternProperties, what behavior we want to adopt?
We can throw an error or "discard" the property when is time to stringify it.
I think is better to "discard" the property, but I'm not sure about this because the documentation is very unclear.
Documentation:

json-schema
understanding-json-schema

@delvedor yes, discard the property. It should behave like a "filter".

Both successfully implemented, closing.


Add vanilla go lang

Figured we might want to add Caddy or other higher level abstractions that's why I called it Go (vanilla).

Also, looks like the build already caught it, but the image needs to be scaled down to 256x256. (Never hurts to run it through a PNG optimizer too for file size).


(WIP) Focal Modulation Networks for Interpretable Sound Classification

Code for the workshop paper:
Focal Modulation Networks for Interpretable Sound Classification
L. Della Libera, C. Subakan, M. Ravanelli.
To appear at: 2024 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) XAI-SA Workshop

Overall things looks good. Here are some things that could be improved, from a first scan:

My biggest concern is that there are too many files with many repetitions. I think it would be nicer if we can merge train_piq_focalnet.py, train_piq_vit.py under train_piq.py. Of course if the merge makes train_piq.py too complicated we might prefer having two separate files.
It would be even nicer if we can merge test_vit.py and test_focalnet.py under one file also.
VectorQuantizedPSIFocalNet can go inside speechbrain/lobes/models/PIQ.py
The visualization could be nicer (subplot sizes and orientations especially), but this is a comment to the original PR also.
At the moment the new additions are not explained in the README. I will start something now. Especially, having the default commands to run the methods in the paper would help.
PIQ results on focalnets do not seem very good qualitatively from what I have seen. I am investigating more.

Thank you @lucadellalib for your code contribution, and @ycemsubakan  for your review. I have a few additional comments:

Regarding the README.MD, it would be better to include a link to your paper and a bib reference to facilitate citation. Additionally, I suggest expanding the README to cover all implemented systems.

The inclusion of transformers>=4.29 and pandas in the extra requirements is redundant since they are already included in the general Speechbrain requirements (see https://github.com/speechbrain/speechbrain/blob/develop/requirements.txt).

Once we're ready for that, we should upload the logs to the official Speechbrain folder for accessibility and organization. Please, follow up with me.


[ISSUE-#7348] 配置文件添加指定暴露注册中心的方式

issues-7348解决思路
通过配置文件能指定服务暴露的注册中心
dubbo.registries.unit1.address=zookeeper://<IP_ADDRESS>:2181
dubbo.registries.unit1.enable=true
dubbo.registries.unit2.address=zookeeper://<IP_ADDRESS>:2182
dubbo.registries.unit2.enable=false
XXXXX
Brief changelog
XXXXX
Verifying this change
XXXXX
Follow this checklist to help us incorporate your contribution quickly and easily:

[x] Make sure there is a GITHUB_issue field for the change (usually before you start working on it). Trivial changes like typos do not require a GITHUB issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[ ] Format the pull request title like [Dubbo-XXX] Fix UnknownException when host config not exist #XXX. Each commit in the pull request should have a meaningful subject line and body.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Write necessary unit-test to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add sample in dubbo samples project.
[ ] Run mvn clean install -DskipTests=false & mvn clean test-compile failsafe:integration-test to make sure unit-test and integration-test pass.
[ ] If this contribution is large, please follow the Software Donation Guide.

It is useless if we configure a registry however make it disabled? In this situation, remove the whole configuration would be better


html texture with input binding [tutorial]

I would like to show interactive web pages on in game panels. How would input binding work in this case?

I believe Google is working on rendering on an iframe -> texture solution:
https://www.youtube.com/watch?v=dAtdE4LQCSc#t=25m22s
Who knows when that will see the light of day or whether it'll become a standard, but it looks pretty cool.
In the meantime, it is possible to render a PlayCanvas scene over an HTML div that is transformed with CSS 3D to match the transform of the PlayCanvas camera. You simply have to render a transparent quad into the PlayCanvas scene where you want to the 3D div to be to write the quad to the z-buffer. But yeah, it's a technique that does kinda work.

This tutorial should provide what was originally requested:
https://developer.playcanvas.com/en/tutorials/youtube-in-3d-scenes/
Closing. Feel free to reopen if you feel this tutorial is not sufficient.


Remove undocumented, unnecessary const_missing_from_s3_library that broke my UserBucket model.

Hi Marcel,
I found this comment from you on the web:
"
Just to sanity check, you could go into lib/aws/s3/extensions.rb and
remove
the definition to const_missing_from_s3_library and the two calls to
alias_method below it. I threw in that const missing recently just to
add a
tiny convenience to the API. What it provides isn't even documented and
the
library doesn't depend on it so you can safely take it away. I probably
will
remove it. I was just trying it on to see how it felt. But either way,
my
const_missing shouldn't be getting in the way since it's chaining back
to the
original.
"
Source: http://www.ruby-forum.com/topic/89681
This little "convenience" led me on quite the interesting wild goose chase. I have a Rails model named Bucket and it is mapped by an association table to the User model. That association's name? UserBucket. Yeah, well, adding aw-s3 to my Gemfile caused all sorts of interestingly broken behavior. Since you yourself suggested that you may remove it, I've taken the liberty of doing it for you :-)
Thanks!
Brandon

While I agree that it's not worth keeping this behavior, simply removing it will break backwards compatibility.
A safer approach perhaps would be to do something along the lines of putting this into an END block and before invoking it check ObjectSpace for any classes that match the pattern and if there are any don't define it and if there aren't, define it but enhance the implementation to print out a deprecation warning and also if ENV['RAILS_ENV'] is set to production don't define the code.
I apologize to everyone who had to spend maddening hours hunting this down. What was added as a convenience ended up more often than not likely being anything but.

Simpler is better: Move it to an external module & provide an option to enable this behavior if needed for compatibility. Document it as deprecated in the README.

That is simpler but breaks backwards compatibility without a deprecation. My first priority with the library is to have it remain stable. While I'm obviously not against improving it and enhancing it, I don't want to do that at the cost of causing failures in production. While failures in development are frustrating and I apologize, failures in production are worse. Sure people shouldn't just push a dependency upgrade into production without testing it first but the reality is that people do.

... isn't that what SemVer and Gemfile.lock are for?
So whatever, add a deprecation warning & a way to turn it off. That would
have prevented the wild goose chase. At minimum add a note to the README
that this behavior exists.
On Thu, Oct 20, 2011 at 3:11 PM, Marcel Molina <
<EMAIL_ADDRESS>
That is simpler but breaks backwards compatibility without a deprecation.
My first priority with the library is to have it remain stable. While I'm
obviously not against improving it and enhancing it, I don't want to do that
at the cost of causing failures in production. While failures in development
are frustrating and I apologize, failures in production are worse. Sure
people shouldn't just push a dependency upgrade into production without
testing it first but the reality is that people do.
--
Reply to this email directly or view it on GitHub:
https://github.com/marcel/aws-s3/pull/14#issuecomment-2475119

+1


Fragment generation issue - # isn't replaced

The # fragment is left in the anchor, it should be converted to the word sharp.
http://docs.orchardproject.net/Documentation/Code-conventions

no longer applicable, from old site template


Expander header is not stretch

There is no way to made full width expander header, without control template modification.
Steps to reproduce the behavior:

Apply fluent style
Put expander
Add header content with right alignment
Header is always aligned to left

          <Expander>
            <Expander.Header>
              <Grid ColumnDefinitions="*, Auto">
                <TextBlock Text="{Binding ComponentType}" />
                <Button Grid.Column="1" Padding="0">
                  <Image  Source="{StaticResource AppMinus}" Height="30" />
                </Button>
              </Grid>
            </Expander.Header>
            <ContentControl Content="{Binding}" />
          </Expander>

Expected behavior
Content aligned to right
Screenshots
Actual result

Expected result:

Additional context
This is probably because of following Grid in Expander toggle button template.
https://github.com/AvaloniaUI/Avalonia/blob/25fe106c235ebb5c6260af5a13d6a79b633c5b82/src/Avalonia.Themes.Fluent/Controls/Expander.xaml#L90
I think it should have ColumnDefinitions="Auto,*" . Should I make a pull request with this fix?

I have the same problem. Is there any update or a potential fix / workaround? How did you solved it @Soarc ?

I have the same problem. Is there any update or a potential fix / workaround? How did you solved it @Soarc ?

Just overrided default control template template.

Not the best solution, but also a working one: Binding the width of the header content to the top level width like
<Grid Name="Grid_Menu">
    <Expander>
        <Expander.Header>
            <Grid ColumnDefinitions="*,Auto" Width="{Binding #Grid_Menu.Bounds.Width}">
                ...
            </Grid>
        </Expander.Header>
        ...
    </Expander>
</Grid>

This Bug is still open. Are there plans to fix that in the next time?

Not relevant anymore

I have the same Problem in latest Avalonia Version (0.10.7) on a Window 10 Machine, when using Fluent Theme:
My workaround is to overwrite the Template (as mentioned above).

Still not an issue
<StackPanel>
	<Expander Header="HorizontalAlignment=Stretch"
				HorizontalAlignment="Stretch"/>
	<Expander Header="HorizontalAlignment=Center"
				HorizontalAlignment="Center"/>
	<Expander Header="HorizontalAlignment=Left"
				HorizontalAlignment="Left"/>
</StackPanel>

If you have minimal repro, please open new issue. It might be related to something else.

I think your example is not the same since the StackPanel should be I side the header, not outside of the Expander.

not the same since the StackPanel should be inside the header

I see what you mean. It never will work with StackPanel (by design of stack panel), but it must work with Grid. Will open a PR for that.

Btw. It's a problem with default expander style. For fluent you can avoid it without changing whole template:
  <Style Selector="Expander /template/ ToggleButton#ExpanderHeader">
    <Setter Property="HorizontalContentAlignment" Value="Stretch" />
  </Style>

But for convenience I will change default value anyway. It makes more sense.


Your Collectibles list should show claim status

Like DNA. Requested via another function.

Your Collectibles was removed


Finish ANSI formatting

Finish adding ANSI formatting to the helper file. Includes formatting like bold, strikethrough, etc., as well as all background colors.

Added foreground and background colors and formatting


Build containers with ko

What this PR does / why we need it:
To minimize the maintenance cost, we are integrating ko to our process of building Sonobuoy container.
Special notes for your reviewer:

[x] use ko-built container for running integration test
[x] build / release pipelines to use / rely on ko ~(WIP: I want to get this in this PR as well -- it involves migrating Circle CI job to GitHub Actions)~
[ ] add dockerhub token

Release note:
Building Sonobuoy containers in integration tests with `ko`

What is left on this? Last we spoke there were still a few issues blocking it weren't there?

so I think we're going to drop this effort. one thing is that we can't pass many ldflags in ko build context (at least I have failed to discover how). I can't really recall what else was the problem (maybe none?) but at this point it feels like marginal improvement.
I know this is supposed to pay down technical debt of our Makefile magic, but maybe not this time 😬

Closing; not really on our radar and I'm not sure what improvements this causes. Already have gotten rid of the makefile for now for simpler bash logic and have support for windows now which probably complicates this as well.


Remove expandUrl re-export

ol-mapbox-style does not use expandUrl any more. See https://github.com/openlayers/ol-mapbox-style/pull/1228.

Updated reference images to account for minor Puppeteer font rendering changes

It would be good to add upgrade notes saying that<EMAIL_ADDRESS>or higher is required.

@tschaub Done.


Model

Hello, the experimental section of this paper mentions the model variant of 'AST-B+', but there is no model parameter setting for this in the model_utils.comy section of the code. May I ask how you designed the model parameters for 'AST-B+'?

Hi,
The '+' symbol indicates the use of the geometric self-ensemble strategy. In fact, the model parameter settings for this case, as defined in model_utils.py, are identical to those used for 'AST-B'. I hope this response clarifies your concerns.


Silent tensorflow models output to stdout

Removing the following lines that keep printing in stdout when disable the progress bar
1/1 [==============================] - 0s 408ms/step

too many lines changed. unfortunately i cannot merge this. if your purpose is just making silent the progress bar, create a pr covering this.

too many lines changed. unfortunately i cannot merge this. if your purpose is just making silent the progress bar, create a pr covering this.

I checked again the commit, I only change a line of code to suppress the output, however, the autoformat in my IDE did change a lot of code elsewhere.

from tab indent -> space indent
sort the import

So maybe I make another PR with just the change to the stdout and leave the format intact? @serengil

yes please


Fix REST client URL encoding bug

When dragging in links to models into an Ignition Gazebo window, the RestClient gets called by FuelClient to parse the URL and post a GET Request.
Unfortunately, the way that it is parsed causes unexpected processing which breaks the url.
Setup
I am on Ignition Citadel, and Ign Fuel is on 4.1.0
Recreate by dragging in URLs into Ignition Gazebo. Though this should work in the C++ API as well for FuelClient since Ignition Gazebo eventually calls FuelClient.cc and RestClient.cc
Example
Input URL:
https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Some%20Model
Expected encodedPath: OpenRobotics/models/Some%20Model
Actual output: OpenRobotics/models/Some%2520Model
The reason this happens is because the "%" symbol is erroneously encoded into "%25".
This is further verified because Ignition happily crunches in an input URL of:
https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Some Model
Which heavily implies that it is a URL encoding error.
The Fix
Simply unencode any characters first before re-encoding them. Most use cases of this should already be inputting properly URL encoded strings. And this does not break any cases where unencoded URL strings are input.
Extra Notes
I am not aware of any side-effects this might cause for other uses of the REST client.
As such I am pushing to master. If I should be pushing it to a different branch instead, let me know, and I'll recreate the PR.
Relevant Screenshots
Failed URL fetch:

But it clearly works!

But dragging in https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Pavement Plane works! (Note the un-encoded whitespace.)

CH3EERS!

Thanks for the PR. This looks like a similar same fix to #70. How about just merging that forward?

#72 is forward-porting #70 to Citadel.

I am on Ignition Citadel, and Ign Fuel is on 4.1.0

Note that this PR targets the master branch, which is ign-fuel-tools version 5 :wink:

Ah! It seems I missed it, should've looked first.
Thanks!


install locales on ubuntu-16.04 nodeset

this makes the 16.04 tests pass
this is the error it's getting while building the docker image:
Step 10 : RUN rm /usr/sbin/policy-rc.d && rm /sbin/initctl && dpkg-divert --rename --remove /sbin/initctl && apt-get update && apt-get install -y net-tools wget && locale-gen en_US.UTF-8
 ---> Running in b2bb58c12ecc
Removing 'local diversion of /sbin/initctl to /sbin/initctl.distrib'
Hit:1 http://security.ubuntu.com/ubuntu xenial-security InRelease
Hit:2 http://archive.ubuntu.com/ubuntu xenial InRelease
Hit:3 http://archive.ubuntu.com/ubuntu xenial-updates InRelease
Hit:4 http://archive.ubuntu.com/ubuntu xenial-backports InRelease
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
wget is already the newest version (1.17.1-1ubuntu1.2).
wget set to manually installed.
The following NEW packages will be installed:
  net-tools
0 upgraded, 1 newly installed, 0 to remove and 3 not upgraded.
Need to get 175 kB of archives.
After this operation, 725 kB of additional disk space will be used.
Get:1 http://archive.ubuntu.com/ubuntu xenial/main amd64 net-tools amd64 1.60-26ubuntu1 [175 kB]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 175 kB in 0s (195 kB/s)
Selecting previously unselected package net-tools.
(Reading database ... 9851 files and directories currently installed.)
Preparing to unpack .../net-tools_1.60-26ubuntu1_amd64.deb ...
Unpacking net-tools (1.60-26ubuntu1) ...
Setting up net-tools (1.60-26ubuntu1) ...
/bin/sh: 1: locale-gen: not found
The command '/bin/sh -c rm /usr/sbin/policy-rc.d && rm /sbin/initctl && dpkg-divert --rename --remove /sbin/initctl && apt-get update && apt-get install -y net-tools wget && locale-gen en_US.UTF-8' returned a non-zero code: 127

Thanks so much for fixing this - unfortunately I haven't had a lot of time to work on this lately.


[FEATURE]  Want to add animation and hover effect on the Home page images

Description
I want to add animation and hover effect on the Home page images, also the shop section product does not  have any hover effect , I want to  work on this issue, kindly assign me this issue.
Screenshots

🥦 Browser
Brave
Checklist ✅

[X] I checked and didn't find similar issue
[X] I have read the Contributing Guidelines
[X] I am willing to work on this issue (blank for no)

Hi there, what type of animations are we talking about ?
Would be better if you could explain in detail about the changes.

Hi there, what type of animations are we talking about ? Would be better if you could explain in detail about the changes.

animation like gssoc website has in their home page image have
ok i add video
https://github.com/tamalCodes/Milan/assets/83147410/0c0776c6-2aaf-4ae6-898c-70b70a44b0a0

Hi @HimanshuNarware , thanks for clarifying - but i don't think we need animations like that - we like to keep things light and simple as it is.
Thankyou so much for giving this a thought.

Hi @HimanshuNarware , thanks for clarifying - but i don't think we need animations like that - we like to keep things light and simple as it is.
Thankyou so much for giving this a thought.

and what about the hover effect on the Trending production section product img hover effect


Return more accurate error when stating object

What is the purpose of this change?

Was the change discussed in an issue or in the forum before?

Checklist

[ ] I have read the contribution guidelines.
[ ] I have added tests for all changes in this PR if appropriate.
[ ] I have added documentation for the changes if appropriate.
[ ] All commit messages are in house style.
[ ] I'm done, this Pull Request is ready for review :-)

I wonder if it makes sense to have convertError function that converts between uplink and rclone errors. Similar to that we have in the gateway that converts between uplink and minio errors.

Make sense. We have the same thing in uplink to convert stroj/rpc errors into uplink errors.

but lets add it later


Use dynamic import for attributor in runtime instead of mixin

Description
Shift package from @fluid-experimental/attributor to @fluidframework/attributor inside runtime packages and then use dynamic import for attributor in runtime instead of Mixin so as to not increase bundle size by default in case someone is not using fluid attributor. Only 3KB size is increased for container runtime.

diff here probably looks a lot better if you remove the old attributor package at the same time (files should largely be moves)

diff here probably looks a lot better if you remove the old attributor package at the same time (files should largely be moves)

But @fluid-experimental should not be getting counted in size here. The size diff is actually 3Kb and not 18KB because same container runtime is getting calculated in other modules like azure client, odsp client etc. @Abe27342

Closing this PR for now based on the comment in the ADO task in the description.


packetization payload size should not greater than 1200 bytes

packetization payload size should not greater than 1200 bytes
frameDuration := 20 * time.Millisecond
gotrack, _ := lksdk.NewLocalFileTrack("/Users/huxing/Desktop/work/jibengong/server/ai_server/test.ogg", lksdk.ReaderTrackWithFrameDuration(frameDuration),
lksdk.ReaderTrackWithOnWriteComplete(func() { fmt.Println("track finished") }))
s.roomClient.LocalParticipant.PublishTrack(gotrack, &lksdk.TrackPublicationOptions{
Name: "test",
})
Why does this problem occur? Is there no fragment in SDK when sending? In addition, if it is a data stream, how should I fragment and send it myself? The demo only gives this example, can you send the data stream?

Can we have an audio sample for file play? or how to use FFmpeg to convert mp3 to our required audio format.


Line number improvements

@not-nef I recently created a text widget modified to have a crazy good linenumber system that dynamically resizes. I'm gonna create a repo but the current implementation in txt2 has a few issues (common in tk editors) that I fixed. I'll link the repo soon

Yoo great!!

@not-nef https://github.com/Moosems/TkLineNums It's on pypi to as tklinenums. Check the tests folder and copy paste the contents to a new file after downloading., That should give you a sense of the linenumbers. It's almost exactly the same as the current one but with a few improvements

Great!

Make sure you use version 1.3

On pypi


Integrate better engine errors into TS client

Follow up to PR: https://github.com/prisma/prisma-engines/pull/2451
Main tracking ticket: https://github.com/prisma/prisma/issues/5040
When the engine part merged, it's time for the TS client to integrate it.

Please open a new issue @SynergyEvolved - this is an issue about an internal improvement we want to get out. We can not understand your problem in here. Thanks.


Hexagon Delegate not working with quantized EfficientNet Lite0

Please make sure that this is a bug. As per our
GitHub Policy,
we only address code/doc bugs, performance issues, feature requests and
build/installation issues on GitHub. tag:bug_template
System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow):
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Ubuntu 18.04
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device: Intrinsyc SD820 dev board
TensorFlow installed from (source or binary): binary
TensorFlow version (use command below): v2.1.0-rc2-17-ge5bf8de 2.1.0
Python version: 3.6.9
Bazel version (if compiling from source): 1.2.1
GCC/Compiler version (if compiling from source): 7.4.0
CUDA/cuDNN version:
GPU model and memory:

You can collect some of this information using our environment capture
script
You can also obtain the TensorFlow version with: 1. TF 1.0: python -c "import tensorflow as tf; print(tf.GIT_VERSION, tf.VERSION)" 2. TF 2.0: python -c "import tensorflow as tf; print(tf.version.GIT_VERSION, tf.version.VERSION)"
Describe the current behavior
The Hexagon DSP Delegate is working well on some Google hosted quantized TFLite models (e.g. MobileNets), using the benchmark_model CLI.  However, when using benchmark_model on the newly released EfficientNet Lite models from the URL below, the DSP Delegate fails to engage (0 nodes delegated):
https://github.com/tensorflow/tpu/blob/master/models/official/efficientnet/lite/README.md
Example benchmark run:
$ adb shell benchmark_model \
   --use_hexagon=true \
   --input_layer=images \
   --input_layer_shape=1,224,224,3 \
   --graph=/sdcard/efficientnet-lite0-int8.tflite

STARTING!
Min num runs: [50]
Min runs duration (seconds): [1]
Max runs duration (seconds): [150]
Inter-run delay (seconds): [-1]
Num threads: [1]
Benchmark name: []
Output prefix: []
Min warmup runs: [1]
Min warmup runs duration (seconds): [0.5]
Graph: [/sdcard/efficientnet-lite0-int8.tflite]
Input layers: [images]
Input shapes: [1,224,224,3]
Input value ranges: []
Use legacy nnapi : [0]
Allow fp16 : [0]
Require full delegation : [0]
Enable op profiling: [0]
Max profiling buffer entries: [1024]
Use gpu : [0]
Allow lower precision in gpu : [1]
Use Hexagon : [1]
Hexagon lib path : [/data/local/tmp]
Hexagon Profiling : [0]
Use nnapi : [0]
Loaded model efficientnet-lite0-int8.tflite
INFO: Initialized TensorFlow Lite runtime.
remote_handle_control available and used
INFO: Created TensorFlow Lite delegate for Hexagon.
INFO: Hexagon delegate: 0 nodes delegated out of 64 nodes.

Applied Hexagon delegate.
The input model file size (MB): 5.42276
Initialized session in 93.33ms.
Running benchmark for at least 1 iterations and at least 0.5 seconds but terminate if exceeding 150 seconds.
count=9 first=69875 curr=58811 min=58605 max=69875 avg=60623.8 std=3476

Running benchmark for at least 50 iterations and at least 1 seconds but terminate if exceeding 150 seconds.
count=50 first=60688 curr=58755 min=58527 max=61817 avg=59263.9 std=711

Average inference timings in us: Warmup: 60623.8, Init: 93330, Inference: 59263.9
Note: as the benchmark tool itself affects memory footprint, the following is only APPROXIMATE to the actual memory footprint of the model at runtime. Take the information at your discretion.
Peak memory footprint (MB): init=2.44922 overall=9.28125

At first I thought it was due to the (new?) "Quantize" node at the beginning of the EfficientNet Lite0 network, but pointing "--input_layer" to the next node doesn't help.

Is this a DSP Delegate bug, or an issue with post-training quantization vs quantization-aware training?   If so, when can we expect TF2 quantization-aware training and/or DSP Delegate compatible EfficientNet Lite models?
Thanks
Describe the expected behavior
Majority of the 64 nodes in the EfficientNet Lite0 quantized model above should have been delegated to the DSP, and the inference time should have been much faster.
Standalone code to reproduce the issue
Provide a reproducible test case that is the bare minimum necessary to generate
the problem. If possible, please share a link to Colab/Jupyter/any notebook.
Other info / logs Include any logs or source code that would be helpful to
diagnose the problem. If including tracebacks, please include the full
traceback. Large logs and files should be attached.

Is this model quantized using post-training quantization ? If yes, then it is not yet supported - we are working on it.

Thank you for your quick reply Karim.
According to the referenced page, it does look like those EfficientNet Lite models were post-training quantized:

Each checkpoint all contains FP tflite and post-training quantized INT8 tflite files. If you use these models or checkpoints, you can cite this efficientnet paper.

Can you point me to pages showing how to do TF2 quantization-aware training myself?  Thanks!

See the bottom of this page
https://www.tensorflow.org/lite/convert/quantization
"During training: Quantizing models for integer-only execution."
You will also need to set
converter.experimental_new_converter=False
Let me know how it goes.
Thanks

Hey @holokai-ai did you manage to get this to work?

Thank you for your quick reply Karim.
According to the referenced page, it does look like those EfficientNet Lite models were post-training quantized:

Each checkpoint all contains FP tflite and post-training quantized INT8 tflite files. If you use these models or checkpoints, you can cite this efficientnet paper.

Can you point me to pages showing how to do TF2 quantization-aware training myself? Thanks!

Hi @holokai-ai , @msalvaris
Quick update:
We started rolling some changes for int8 (post training quantization) support. If you tried at HEAD most of efficient-net should be accelerated.
More ops to be supported soon, also more optimizations.
Please give it a try and give us some feedback.
For the Quantization aware training,
can you explain the issues you are facing.
Thanks

No issues in particular so far. Just wondered if there was an example to work off since the efficientnet repo doesn't have one AFAIK.

Thank you for the update on post-training quantization Karim.   Will give
it a try this week.
I got side tracked with another task, but I'm still struggling with TF2
Quantization Aware Training
https://blog.tensorflow.org/2020/04/quantization-aware-training-with-tensorflow-model-optimization-toolkit.html
on my own TF2 Keras model.   One of the problems is BatchNormalization,
which is used a lot in various models.   As a minimal example, if I change
the Keras model below slightly in the QAT example notebook to add
BatchNormalization
(with or without fusing), the floating point training goes fine:
https://www.tensorflow.org/model_optimization/guide/quantization/training_example
model = keras.Sequential([
keras.layers.InputLayer(input_shape=(28, 28)),
keras.layers.Reshape(target_shape=(28, 28, 1)),
keras.layers.Conv2D(filters=12, kernel_size=(3, 3), strides=(2, 2)),
keras.layers.BatchNormalization(fused=True),
keras.layers.ReLU(max_value=6.0),
keras.layers.MaxPooling2D(pool_size=(2, 2)),
keras.layers.Flatten(),
keras.layers.Dropout(0.2),
keras.layers.Dense(10, activation=tf.nn.softmax)
])
But the subsequent quantization aware training / fine tuning crashes:
Traceback (most recent call last):
File "./quantization_aware_training_in_keras_example.py", line 133, in

q_aware_model = quantize_model(model)
File
"/home/holokai/.local/lib/python3.6/site-packages/tensorflow_model_optimization/python/core/quantization/keras/quantize.py",
line 138, in quantize_model
return quantize_apply(annotated_model)
File
"/home/holokai/.local/lib/python3.6/site-packages/tensorflow_model_optimization/python/core/quantization/keras/quantize.py",
line 403, in quantize_apply
unwrapped_model, layer_quantize_map)
File
"/home/holokai/.local/lib/python3.6/site-packages/tensorflow_model_optimization/python/core/quantization/keras/default_8bit/default_8bit_quantize_layout_transform.py",
line 67, in apply
layer_quantize_map.keys(), layer_quantize_map).transform()
File
"/home/holokai/.local/lib/python3.6/site-packages/tensorflow_model_optimization/python/core/quantization/keras/graph_transformations/model_transformer.py",
line 552, in transform
custom_objects)
File
"/home/holokai/.local/lib/python3.6/site-packages/tensorflow/python/keras/engine/sequential.py",
line 399, in from_config
model.add(layer)
File
"/home/holokai/.local/lib/python3.6/site-packages/tensorflow/python/training/tracking/base.py",
line 456, in _method_wrapper
result = method(self, *args, **kwargs)
File
"/home/holokai/.local/lib/python3.6/site-packages/tensorflow/python/keras/engine/sequential.py",
line 213, in add
output_tensor = layer(self.outputs[0])
File
"/home/holokai/.local/lib/python3.6/site-packages/tensorflow/python/keras/engine/base_layer.py",
line 886, in call
self.name)
File
"/home/holokai/.local/lib/python3.6/site-packages/tensorflow/python/keras/engine/input_spec.py",
line 180, in assert_input_compatibility
str(x.shape.as_list()))
ValueError: Input 0 of layer conv2d is incompatible with the layer:
expected ndim=4, found ndim=2. Full shape received: [None, 196]
Some papers talk about quantizing batch normalization, but I haven't seen a
simple example that spells out how to implement it in Keras:

https://arxiv.org/pdf/1712.05877.pdf
https://arxiv.org/pdf/1806.08342.pdf

I've tried upgrading to tensorflow2.2.0rc3 as well as tf-nightly to no
avail.   I'm using tensorflow-model-optimization 0.3.0.
Thank you for any pointers
On Mon, Apr 13, 2020 at 11:05 AM Karim Nosseir<EMAIL_ADDRESS>wrote:

Hi @holokai-ai https://github.com/holokai-ai , @msalvaris
https://github.com/msalvaris
Quick update:
We started rolling some changes for int8 (post training quantization)
support. If you tried at HEAD most of efficient-net should be accelerated.
More ops to be supported soon, also more optimizations.
Please give it a try and give us some feedback.
For the Quantization aware training,
can you explain the issues you are facing.
Thanks
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/37376#issuecomment-613018680,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AOX4O3OVMTAG5BYCGSYTVB3RMNH65ANCNFSM4LCUGW6Q
.

Thanks again for the tip that the QCOM DSP Delegate now supports post-training quantization.
I recompiled benchmark_model from HEAD, and now the post-training quantized EfficientNet Lite0 model runs on DSP!
$ adb shell benchmark_model \
     --use_hexagon=true \
     --input_layer=images \
     --input_layer_shape=1,224,224,3 \
     --graph=/data/local/tmp/efficientnet-lite0-int8.tflite

STARTING!
Duplicate flags: num_threads
Min num runs: [50]
Min runs duration (seconds): [1]
Max runs duration (seconds): [150]
Inter-run delay (seconds): [-1]
Num threads: [1]
Benchmark name: []
Output prefix: []
Min warmup runs: [1]
Min warmup runs duration (seconds): [0.5]
Graph: [/data/local/tmp/efficientnet-lite0-int8.tflite]
Input layers: [images]
Input shapes: [1,224,224,3]
Input value ranges: []
Input layer values files: []
Use legacy nnapi : [0]
Allow fp16 : [0]
Require full delegation : [0]
Enable op profiling: [1]
Max profiling buffer entries: [1024]
CSV File to export profiling data to: []
Enable platform-wide tracing: [0]
#threads used for CPU inference: [1]
Max number of delegated partitions : [0]
External delegate path : []
External delegate options : []
Use gpu : [0]
Allow lower precision in gpu : [1]
Use Hexagon : [1]
Hexagon lib path : [/data/local/tmp]
Hexagon Profiling : [0]
Use nnapi : [0]
Use xnnpack : [0]
Loaded model /data/local/tmp/efficientnet-lite0-int8.tflite
INFO: Initialized TensorFlow Lite runtime.
INFO: Created TensorFlow Lite delegate for Hexagon.
INFO: Hexagon delegate: 61 nodes delegated out of 64 nodes with 2 partitions.

loaded libadsprpc.so
Applied Hexagon delegate, and the model graph will be partially executed w/ the delegate.
The input model file size (MB): 5.42276
Initialized session in 402.08ms.
Running benchmark for at least 1 iterations and at least 0.5 seconds but terminate if exceeding 150 seconds.
count=36 first=17729 curr=13808 min=13748 max=17729 avg=13940.5 std=641

Running benchmark for at least 50 iterations and at least 1 seconds but terminate if exceeding 150 seconds.
count=72 first=13889 curr=13840 min=13746 max=13946 avg=13847.2 std=44

Inference timings in us: Init: 402080, First inference: 17729, Warmup (avg): 13940.5, Inference (avg): 13847.2
Note: as the benchmark tool itself affects memory footprint, the following is only APPROXIMATE to the actual memory footprint of the model at runtime. Take the information at your discretion.
Peak memory footprint (MB): init=13.0703 overall=13.0703
Profiling Info for Benchmark Initialization:
============================== Run Order ==============================
	             [node type]	          [start]	  [first]	 [avg ms]	     [%]	  [cdf%]	  [mem KB]	[times called]	[Name]
	 ModifyGraphWithDelegate	            0.000	  147.622	  147.622	 69.490%	 69.490%	 11108.000	        1	ModifyGraphWithDelegate/0
	         AllocateTensors	          115.380	   64.782	   32.407	 30.510%	100.000%	     0.000	        2	AllocateTensors/0

============================== Top by Computation Time ==============================
	             [node type]	          [start]	  [first]	 [avg ms]	     [%]	  [cdf%]	  [mem KB]	[times called]	[Name]
	 ModifyGraphWithDelegate	            0.000	  147.622	  147.622	 69.490%	 69.490%	 11108.000	        1	ModifyGraphWithDelegate/0
	         AllocateTensors	          115.380	   64.782	   32.407	 30.510%	100.000%	     0.000	        2	AllocateTensors/0

Number of nodes executed: 2
============================== Summary by node type ==============================
	             [Node type]	  [count]	  [avg ms]	    [avg %]	    [cdf %]	  [mem KB]	[times called]
	 ModifyGraphWithDelegate	        1	   147.622	    69.490%	    69.490%	 11108.000	        1
	         AllocateTensors	        1	    64.815	    30.510%	   100.000%	     0.000	        2

Timings (microseconds): count=1 curr=212437
Memory (bytes): count=0
2 nodes observed

Operator-wise Profiling Info for Regular Benchmark Runs:
============================== Run Order ==============================
	             [node type]	          [start]	  [first]	 [avg ms]	     [%]	  [cdf%]	  [mem KB]	[times called]	[Name]
	                QUANTIZE	            0.000	    0.158	    0.157	  1.134%	  1.134%	     0.000	        1	[images_int8]:0
	   TfLiteHexagonDelegate	            0.158	   13.088	   13.066	 94.409%	 95.543%	     0.000	        1	[efficientnet-lite0/model/head/AvgPool]:64
	                 RESHAPE	           13.226	    0.004	    0.002	  0.016%	 95.560%	     0.000	        1	[efficientnet-lite0/model/head/Squeeze1]:60
	   TfLiteHexagonDelegate	           13.229	    0.626	    0.610	  4.409%	 99.969%	     0.000	        1	[Softmax_int8]:65
	                QUANTIZE	           13.840	    0.004	    0.004	  0.031%	100.000%	     0.000	        1	[Softmax]:63

============================== Top by Computation Time ==============================
	             [node type]	          [start]	  [first]	 [avg ms]	     [%]	  [cdf%]	  [mem KB]	[times called]	[Name]
	   TfLiteHexagonDelegate	            0.158	   13.088	   13.066	 94.409%	 94.409%	     0.000	        1	[efficientnet-lite0/model/head/AvgPool]:64
	   TfLiteHexagonDelegate	           13.229	    0.626	    0.610	  4.409%	 98.819%	     0.000	        1	[Softmax_int8]:65
	                QUANTIZE	            0.000	    0.158	    0.157	  1.134%	 99.953%	     0.000	        1	[images_int8]:0
	                QUANTIZE	           13.840	    0.004	    0.004	  0.031%	 99.984%	     0.000	        1	[Softmax]:63
	                 RESHAPE	           13.226	    0.004	    0.002	  0.016%	100.000%	     0.000	        1	[efficientnet-lite0/model/head/Squeeze1]:60

Number of nodes executed: 5
============================== Summary by node type ==============================
	             [Node type]	  [count]	  [avg ms]	    [avg %]	    [cdf %]	  [mem KB]	[times called]
	   TfLiteHexagonDelegate	        2	    13.676	    98.829%	    98.829%	     0.000	        2
	                QUANTIZE	        2	     0.160	     1.156%	    99.986%	     0.000	        2
	                 RESHAPE	        1	     0.002	     0.014%	   100.000%	     0.000	        1

Timings (microseconds): count=72 first=13880 curr=13834 min=13740 max=13938 avg=13840.2 std=44
Memory (bytes): count=0
5 nodes observed

@nutsiepully Can you check the crash from the QAT.
@holokai-ai Glad it is working, BTW reshape is added now, if you retried you should have 1 hexagon graph, and should be slight faster.
We are working on optimizing few parts too, so stay tuned :)
Thanks

@karimnosseir Sure enough, after I recompiled from ac271534, RESHAPE is folded in and there's only one DSP Delegate graph now.
Will post-training quantization support for Hexagon Delegate be part of TF 2.2.0 ?   Right now I don't see the relevant commits in r2.2.   The last commit in the Hexagon Delegate for r2.2 is from Feb 27.
Thanks!
$ adb shell benchmark_model \
     --use_hexagon=true \
     --input_layer=images \
     --input_layer_shape=1,224,224,3 \
     --graph=/data/local/tmp/efficientnet-lite0-int8.tflite
...
...
Operator-wise Profiling Info for Regular Benchmark Runs:
============================== Run Order ==============================
	             [node type]	          [start]	  [first]	 [avg ms]	     [%]	  [cdf%]	  [mem KB]	[times called]	[Name]
	                QUANTIZE	            0.000	    0.165	    0.164	  1.197%	  1.197%	     0.000	        1	[images_int8]:0
	   TfLiteHexagonDelegate	            0.165	   13.573	   13.509	 98.753%	 99.949%	     0.000	        1	[Softmax_int8]:64
	                QUANTIZE	           13.676	    0.007	    0.007	  0.051%	100.000%	     0.000	        1	[Softmax]:63

============================== Top by Computation Time ==============================
	             [node type]	          [start]	  [first]	 [avg ms]	     [%]	  [cdf%]	  [mem KB]	[times called]	[Name]
	   TfLiteHexagonDelegate	            0.165	   13.573	   13.509	 98.753%	 98.753%	     0.000	        1	[Softmax_int8]:64
	                QUANTIZE	            0.000	    0.165	    0.164	  1.197%	 99.949%	     0.000	        1	[images_int8]:0
	                QUANTIZE	           13.676	    0.007	    0.007	  0.051%	100.000%	     0.000	        1	[Softmax]:63

Number of nodes executed: 3
============================== Summary by node type ==============================
	             [Node type]	  [count]	  [avg ms]	    [avg %]	    [cdf %]	  [mem KB]	[times called]
	   TfLiteHexagonDelegate	        1	    13.509	    98.764%	    98.764%	     0.000	        1
	                QUANTIZE	        2	     0.169	     1.236%	   100.000%	     0.000	        2

Timings (microseconds): count=73 first=13745 curr=13616 min=13528 max=13861 avg=13679.8 std=86
Memory (bytes): count=0
3 nodes observed

@karimnosseir I am unable to do quantization aware training for EfficientNet. If I tried  using the recent Keras API but it doesn't work as there is only support for Sequential and Functional models not custom it seems.
If I try to use tf.contrib.quantize it seems to skip quantizing quite a few ops.
Please advise as to what would be the best way to carry out quantization aware training of EfficientNet model.

@nutsiepully @msalvaris  I'm guilty of starting the TF2 QAT question here, but perhaps we should move it to the TFMOT project?   Someone just posted a similar question here:
https://github.com/tensorflow/model-optimization/issues/363

@karimnosseir I've been able to run all of Google's post-training quantized EfficientNet Lite models on the Snapdragon 820 DSP using the Hexagon Delegate, except for EfficientNet Lite3.   Running that INT8 model causes a segfault, even though it appears it successfully delegated most of the nodes.  Lite0, Lite1, Lite2 and Lite4 run fine on the DSP Delegate, but not Lite3.  The EfficientNet Lite3 FP32 model runs find on the GPU Delegate.
$ adb shell benchmark_model \
    --use_hexagon=true \
    --input_layer=images \
    --input_layer_shape=1,280,280,3 \
    --graph=/data/local/tmp/efficientnet-lite3-int8.tflite

STARTING!
Duplicate flags: num_threads
Min num runs: [50]
Min runs duration (seconds): [1]
Max runs duration (seconds): [150]
Inter-run delay (seconds): [-1]
Num threads: [1]
Benchmark name: []
Output prefix: []
Min warmup runs: [1]
Min warmup runs duration (seconds): [0.5]
Graph: [efficientnet-lite3-int8.tflite]
Input layers: [images]
Input shapes: [1,280,280,3]
Input value ranges: []
Input layer values files: []
Use legacy nnapi : [0]
Allow fp16 : [0]
Require full delegation : [0]
Enable op profiling: [1]
Max profiling buffer entries: [1024]
CSV File to export profiling data to: []
Enable platform-wide tracing: [0]
#threads used for CPU inference: [1]
Max number of delegated partitions : [0]
External delegate path : []
External delegate options : []
Use gpu : [0]
Allow lower precision in gpu : [1]
Use Hexagon : [1]
Hexagon lib path : [/data/local/tmp]
Hexagon Profiling : [0]
Use nnapi : [0]
Use xnnpack : [0]
Loaded model efficientnet-lite3-int8.tflite
INFO: Initialized TensorFlow Lite runtime.
loaded libadsprpc.so
INFO: Created TensorFlow Lite delegate for Hexagon.
INFO: Hexagon delegate: 94 nodes delegated out of 96 nodes with 1 partitions.

Applied Hexagon delegate, and the model graph will be partially executed w/ the delegate.
The input model file size (MB): 9.58559
Initialized session in 510.615ms.
Running benchmark for at least 1 iterations and at least 0.5 seconds but terminate if exceeding 150 seconds.
Segmentation fault

@karimnosseir Now I'm trying my custom model based on EfficientNet Lite0.  Its input image shape is 224,224,1 (grayscale).   The original FP32 trained model runs fine on SD820 CPU as well as GPU (using GPU Delegate).  Next, I used post-training quantization described below to generate an INT8 model:
https://www.tensorflow.org/lite/performance/post_training_integer_quant
I've tried the TFLiteConverter flags DEFAULT as well as OPTIMIZE_FOR_SIZE and gave it some sample images; results are the same.  The resulting INT8 model is about 4x smaller than the FP32 model (as expected) and runs fine on SD820 CPU, but crashes when I try to run on DSP, even though the majority of nodes were successfully delegated.  Excerpt below.
What am I doing wrong?   Thanks for any pointers.
$ adb shell benchmark_model \
  --use_hexagon=true \
  --input_layer=images \
  --input_layer_shape=1,224,224,1 \
  --graph=/data/local/tmp/int8.tflite

STARTING!
Duplicate flags: num_threads
Min num runs: [50]
Min runs duration (seconds): [1]
Max runs duration (seconds): [150]
Inter-run delay (seconds): [-1]
Num threads: [1]
Benchmark name: []
Output prefix: []
Min warmup runs: [1]
Min warmup runs duration (seconds): [0.5]
Graph: [/data/local/tmp/int8.tflite]
Input layers: [images]
Input shapes: [1,224,224,1]
Input value ranges: []
Input layer values files: []
Use legacy nnapi : [0]
Allow fp16 : [0]
Require full delegation : [0]
Enable op profiling: [1]
Max profiling buffer entries: [1024]
CSV File to export profiling data to: []
Enable platform-wide tracing: [0]
#threads used for CPU inference: [1]
Max number of delegated partitions : [0]
External delegate path : []
External delegate options : []
Use gpu : [0]
Allow lower precision in gpu : [1]
Use Hexagon : [1]
Hexagon lib path : [/data/local/tmp]
Hexagon Profiling : [0]
Use nnapi : [0]
Use xnnpack : [0]
Loaded model /data/local/tmp/int8.tflite
INFO: Initialized TensorFlow Lite runtime.
INFO: Created TensorFlow Lite delegate for Hexagon.
INFO: Hexagon delegate: 59 nodes delegated out of 64 nodes with 2 partitions.

loaded libadsprpc.so
Applied Hexagon delegate, and the model graph will be partially executed w/ the delegate.
The input model file size (MB): 3.69867
Initialized session in 357.232ms.
Running benchmark for at least 1 iterations and at least 0.5 seconds but terminate if exceeding 150 seconds.
----------------
Timestamp: Sun Jan  4 02:40:23 1970

Log
hexagon/ops/src/op_requantize.c:437:Requantize_8to8: Out range too small compared to in range!
hexagon/src/execute.c:142:execute() failed on node id=af err=-1
hexagon/src/interface.c:1174:fail in execute_inner()

----------------
ERROR: Failed: Failed to execute graph.. STATE: FAILED_TO_EXECUTE_GRAPH
ERROR: Node number 64 (TfLiteHexagonDelegate) failed to invoke.

----------------
Timestamp: Sun Jan  4 02:40:23 1970

Log
hexagon/ops/src/op_requantize.c:437:Requantize_8to8: Out range too small compared to in range!
hexagon/src/execute.c:142:execute() failed on node id=af err=-1
hexagon/src/interface.c:1174:fail in execute_inner()

----------------
ERROR: Failed: Failed to execute graph.. STATE: FAILED_TO_EXECUTE_GRAPH
ERROR: Node number 64 (TfLiteHexagonDelegate) failed to invoke.

----------------
<Same sets of error log lines above repeated many times>
...
...

count=24 first=24384 curr=21268 min=20516 max=24384 avg=21053.6 std=722

Benchmarking failed.

@msalvaris Can you try the instructions i sent earlier for the uint8 per tensor, not the new QAT API.
@holokai-ai

For the 2.2: It is finalized, so we can't add more changes. Also, currently AARs are only available in nightlies. We are working on stable releases for the AARs.

For the efficientnet lite 3
I tried this https://tfhub.dev/tensorflow/lite-model/efficientnet/lite3/int8/1
and works fine.
Can you point me which one you tried ?

For the requantize issue:
We saw a similar issue before, it happens when you have input min/max is too big compared to output min/max. We solved by using 32 bit MULs instead.
With efficientNet i think there was a similar case with one DepthwiseConv range are too big compared -128/127, and you can tune by tweaking your model.
Do you mind sharing the model privately, i am happy to have a look, my guess will be the same issue, and you can tweak the model to avoid the quantization creating this big ranges.

Thanks

For the 2.2: It is finalized, so we can't add more changes. Also, currently AARs are only available in nightlies. We are working on stable releases for the AARs.

OK thank you for the clarification!

For the efficientnet lite 3
I tried this https://tfhub.dev/tensorflow/lite-model/efficientnet/lite3/int8/1
and works fine.
Can you point me which one you tried ?

Here's the EfficientNet Lite3 version I used, because TFHub version does not yet allow for fine tuning under TF2 for some reason:
https://github.com/tensorflow/tpu/tree/master/models/official/efficientnet/lite
https://storage.googleapis.com/cloud-tpu-checkpoints/efficientnet/lite/efficientnet-lite3.tar.gz
$ sha1sum efficientnet-lite3-int8.tflite
f0b94fc6725398bdd775ada491c8457215aa9dd4  efficientnet-lite3-int8.tflite

This INT8 model works fine on SD820 SOC CPU:
$ adb shell benchmark_model \
    --input_layer=images \
    --input_layer_shape=1,280,280,3 \
    --graph=/data/local/tmp/efficientnet-lite3-int8.tflite
...
...
Number of nodes executed: 96
============================== Summary by node type ==============================
	             [Node type]	  [count]	  [avg ms]	    [avg %]	    [cdf %]	  [mem KB]	[times called]
	                 CONV_2D	       49	   194.236	    80.390%	    80.390%	     0.000	       49
	       DEPTHWISE_CONV_2D	       24	    44.783	    18.535%	    98.924%	     0.000	       24
	                     ADD	       17	     1.752	     0.725%	    99.649%	     0.000	       17
	         FULLY_CONNECTED	        1	     0.513	     0.212%	    99.862%	     0.000	        1
	                QUANTIZE	        2	     0.256	     0.106%	    99.968%	     0.000	        2
	         AVERAGE_POOL_2D	        1	     0.066	     0.027%	    99.995%	     0.000	        1
	                 SOFTMAX	        1	     0.010	     0.004%	    99.999%	     0.000	        1
	                 RESHAPE	        1	     0.002	     0.001%	   100.000%	     0.000	        1

Timings (microseconds): count=50 first=191312 curr=487173 min=190214 max=712336 avg=241662 std=113426
Memory (bytes): count=0
96 nodes observed

But segfaults on the SD820 SOC DSP:
$ adb shell benchmark_model \
    --use_hexagon=true \
    --input_layer=images \
    --input_layer_shape=1,280,280,3 \
    --graph=/data/local/tmp/efficientnet-lite3-int8.tflite
...
...
Loaded model /data/local/tmp/efficientnet-lite3-int8.tflite
INFO: Initialized TensorFlow Lite runtime.
INFO: Created TensorFlow Lite delegate for Hexagon.
INFO: Hexagon delegate: 94 nodes delegated out of 96 nodes with 1 partitions.

loaded libadsprpc.so
Applied Hexagon delegate, and the model graph will be partially executed w/ the delegate.
The input model file size (MB): 9.58559
Initialized session in 504.5ms.
Running benchmark for at least 1 iterations and at least 0.5 seconds but terminate if exceeding 150 seconds.
Segmentation fault

I don't think it's a resource issue (e.g. OOM) because the larger efficientnet-lite4-int8.tflite model runs fine on DSP.

For the requantize issue:
We saw a similar issue before, it happens when you have input min/max is too big compared to output min/max. We solved by using 32 bit MULs instead.
With efficientNet i think there was a similar case with one DepthwiseConv range are too big compared -128/127, and you can tune by tweaking your model.
Do you mind sharing the model privately, i am happy to have a look, my guess will be the same issue, and you can tweak the model to avoid the quantization creating this big ranges.

OK will do.  Thank you!

@holokai-ai I don't have device with 820, but i have Pixel 1 which has 821 and both should use the Hexagon v60.
I tried it and it works fine.
Also tried it on Samsung S9 which has 845
Can you share the logcat of the run
Dump from the run below:
INFO: Initialized TensorFlow Lite runtime.
Func remote_handle64_open not available on this device (NULL).
Func remote_handle64_invoke not available on this device (NULL).
Func remote_handle64_close not available on this device (NULL).
Func remote_handle_control not available on this device (NULL).
INFO: Created TensorFlow Lite delegate for Hexagon.
INFO: Hexagon delegate: 96 nodes delegated out of 96 nodes with 1 partitions.
loaded libadsprpc.so
Applied Hexagon delegate, and the model graph will be completely executed w/ the delegate.
The input model file size (MB): 9.58559
Initialized session in 1182.01ms.
Running benchmark for at least 1 iterations and at least 0.5 seconds but terminate if exceeding 150 seconds.
count=12 first=105922 curr=35738 min=35322 max=105922 avg=41632.8 std=19406
Running benchmark for at least 50 iterations and at least 1 seconds but terminate if exceeding 150 seconds.
count=50 first=35693 curr=35259 min=35211 max=37337 avg=35585.2 std=401
Inference timings in us: Init: 1182010, First inference: 105922, Warmup (avg): 41632.8, Inference (avg): 35585.2

@karimnosseir Thanks for taking the time to look into this issue.  I mentioned a SD820 dev board, but it actually has a 821 SOC (aka APQ8096pro).  Perhaps it's the difference between Android 9 and 10?  We're unfortunately stuck at Android 9.   SOM vendor says they can't upgrade the SOM to Android 10 due to QCOM, even though essentially the same SOC is on the Pixel 1 running Android 10.
I'm wondering if that's the reason why your target hardware delegates all 96 nodes, but my hardware only delegates 94 nodes?
$ adb shell grep ^Hard /proc/cpuinfo
Hardware	: Qualcomm Technologies, Inc APQ8096pro

$ adb shell getprop ro.build.fingerprint
Android/msm8996/msm8996:9/OpenQ820_P_v5.0-PKQ1.181007.001/12:userdebug/test-keys

$ adb shell sha1sum /data/local/tmp/lib*.so
46425e69ef93b4479ac0caabfcfa3e556444ac89  /data/local/tmp/libhexagon_interface.so
f9809aebb6fa4d52d81e6bb2036120849face179  /data/local/tmp/libhexagon_nn_skel.so
cc8ce9a338eb30c42f9b23647fc43bf8c0bddf0d  /data/local/tmp/libhexagon_nn_skel_v65.so
c7ef0ae4234df8f29bf7eca0e82d5e499c23cfbc  /data/local/tmp/libhexagon_nn_skel_v66.so

Logcat excerpt taken immediately after segfault:
--------- beginning of main
01-04 22:28:20.668   990  1015 I chatty  : uid=1021(gps) NDK expire 2 lines
01-04 22:28:34.690   990  1015 W ServiceManagement: Waited one second for android.frameworks.sensorservice@1.0::ISensorManager/default. Waiting another...
01-04 22:28:35.517 14024 14024 I tflite  : Initialized TensorFlow Lite runtime.
01-04 22:28:35.601 14024 14024 V benchmark_model: vendor/qcom/proprietary/commonsys-intf/adsprpc/src/fastrpc_apps_user.c:1859: Successfully created user PD on domain 0 (attrs 0x0)
01-04 22:28:35.605 14024 14027 V benchmark_model: vendor/qcom/proprietary/commonsys-intf/adsprpc/src/fastrpc_apps_user.c:270: rpc latency thread start
01-04 22:28:35.690   990  1015 W ServiceManagement: Waited one second for android.frameworks.sensorservice@1.0::ISensorManager/default.  Waiting another...
--------- beginning of system

I'm at a loss to explain why only Lite3 causes a segfault ...
Thank you

@karimnosseir I tried doing the quantization aware training that is mentioned in the link you shared. It basically links here https://github.com/tensorflow/tensorflow/tree/r1.15/tensorflow/contrib/quantize
I added the tf.contrib.quantize.create_training_graph and tf.contrib.quantize.create_eval_graph
I am using these within the estimator API and version 15.2 of TF
During training I get
after efficientnet-lite0/model/blocks_13/Add_1           [2020-04-21 08:03:38,183][tensorflow][INFO] - Inserting fake quant op activation_Add_quant after efficientnet-lite0/model/blocks_14/Add_1                 [2020-04-21 08:03:38,215][tensorflow][INFO] - Skipping quant after efficientnet-lite0/model/stem/conv2d/add_fold                              [2020-04-21 08:03:38,215][tensorflow][INFO] - Skipping quant after efficientnet-lite0/model/blocks_0/depthwise_conv2d/add_fold              [2020-04-21 08:03:38,216][tensorflow][INFO] - Skipping quant after efficientnet-lite0/model/blocks_1/conv2d/add_fold                              [2020-04-21 08:03:38,216][tensorflow][INFO] - Skipping quant after efficientnet-lite0/model/blocks_1/depthwise_conv2d/add_fold                      [2020-04-21 08:03:38,217][tensorflow][INFO] - Skipping quant after efficientnet-lite0/model/blocks_2/conv2d/add_fold           [2020-04-21 08:03:38,217][tensorflow][INFO] - Skipping quant after efficientnet-lite0/model/blocks_2/depthwise_conv2d/add_fold [2020-04-21 08:03:38,218][tensorflow][INFO] - Skipping quant after efficientnet-lite0/model/blocks_3/conv2d/add_fold
But it does seem to work.
In the validation though it seems to fail with
[2020-04-21 08:09:49,644][tensorflow][INFO] - Restoring parameters from output/model.ckpt-200                                                     2020-04-21 08:09:50.325225: W tensorflow/core/framework/op_kernel.cc:1651] OP_REQUIRES failed at save_restore_v2_ops.cc:184 : Not found: Key efficientnet -lite0/model/blocks_10/post_activation_bypass_quant/max not found in checkpoint
Not sure whether this is simply an error in the quantization or something else.

@karimnosseir I believe I've fixed the issue of post-training quantization generating errors.   I had inadvertently converted a model that I was using for TF2 QAT, where I had commented out BatchNormalization (because TF2 QAT is apparently not able to handle BatchNormalization yet).   This caused low accuracy even after many epochs, which I suspect made the weights/activations to grow large.
When I put the BatchNormalization back into the model, things converged much more quickly, with higher accuracy.   I was able to quantize that model using post-training quantization without the errors.
Sorry for the false alarm on this post-training quantization issue.
Still hoping to eventually do TF2 QAT for better accuracy, but that's not really a DSP Delegate issue.   Cheers.
@nutsiepully Have you been able to look into the TF2 QAT issue?  Thank you.

@holokai-ai Finally reproduced the crash and have a fix, will be merged by tomorrow hopefully.
I will update you when it is merged, so you can retry. Sorry for the trouble.
For the number of nodes difference, it's because we added support for Quantize op recently (i was using HEAD and i assume you were using older branch).
Glad to know it is working now.
Thanks
@msalvaris
I am confused with your state now,
if you want to run a quantized model which was quantized using post training quantization then it is supported now, no need to try to use the old uint8 quantization.
Just use nightly, and the int8 versions of efficientnet and other int8 models should work.
If you're having issues with some new model using new QAT API, it will be good to summarize so @nutsiepully can help you.
Thanks

@karimnosseir Awesome!   Thank you very much for the quick fix on the EfficientNet Lite3 DSP Delegate crash issue.  Cheers!

@karimnosseir
Sorry for the confusion. I have been able to use post-training quantization which is great but two issues remain:

The drop in accuracy is unacceptable for my use case so wanted to use quantization aware training to try and improve matters
The delegate I am using currently supports uint8 and per tensor quantization, the new spec is int8 and per axis quantization for ops like convolution etc.

It seems I can't use efficientnet with the old quantization aware training and can't use the new keras based one as it only supports sequence and functional models.
If any of the above is incorrect please let me know

@msalvaris for # 1 @nutsiepully can help you. For # 2 please try to use nightly the delegate now supports per channel quantization.
@holokai-ai  Should be fixed now, please retry.
Thanks

@karimnosseir Yes, I recompiled benchmark_model with the latest fix and INT8 EfficientNet Lite3 no longer causes a segfault.   Thank you for the quick fix!

Thanks @karimnosseir!
@nutsiepully Any recommendations?

I am going to close this issue, since the main part about EfficientNet is now resolved.
For the QAT issue #38939 looks like tracking it.
Please feel free to reopen or create new issue if you are having problems.
Thanks


contenttypes: fix the model name passed as a hint

Maybe it lacks a deprecation flag to clean this up some time in the
future.

Bad solution for a problem at the router level. The actual issue is implementing "migration_allowed()" for RunPython/RunScript operations where informing what models are affected as hints is just a convention and everyone would not follow the same one.


Record streams from room (Server-Side)

Hello, I am creating a video conference and I would also record the audio / video streams. E 'can capture and record a server-side room?
The steps are:

The room sends a socket message to the server to register
The server captures all streams, records and saves on server

Using both socket.io that nodejs
Thanks to all who will respond and congratulations for the project.

See ziggeo.com and talk to Oliver there.


fix: run sync notifier once every slot pre-genesis

Motivation
Sync notifier is not working as expected pre-genesis, it logs only every other slot
Sep-26 20:55:30.000[]                 info: Synced - slot: -12323 - head: 0xab09…f889 - finalized: 0x0000…0000:0 - peers: 30
Sep-26 20:55:54.001[]                 info: Synced - slot: -12321 - head: 0xab09…f889 - finalized: 0x0000…0000:0 - peers: 30
Sep-26 20:56:18.000[]                 info: Synced - slot: -12319 - head: 0xab09…f889 - finalized: 0x0000…0000:0 - peers: 30
Sep-26 20:56:42.001[]                 info: Synced - slot: -12317 - head: 0xab09…f889 - finalized: 0x0000…0000:0 - peers: 31
Sep-26 20:57:05.999[]                 info: Synced - slot: -12315 - head: 0xab09…f889 - finalized: 0x0000…0000:0 - peers: 31

Description
Run sync notifier once every slot pre-genesis

For future genesis time, calculate time left in the slot
For past genesis time, calculate time until the next slot

Sep-26 21:58:30.001[]                 info: Synced - slot: -12008 - head: 0xab09…f889 - finalized: 0x0000…0000:0 - peers: 1
Sep-26 21:58:42.001[]                 info: Synced - slot: -12007 - head: 0xab09…f889 - finalized: 0x0000…0000:0 - peers: 2
Sep-26 21:58:54.001[]                 info: Synced - slot: -12006 - head: 0xab09…f889 - finalized: 0x0000…0000:0 - peers: 2
Sep-26 21:59:06.000[]                 info: Synced - slot: -12005 - head: 0xab09…f889 - finalized: 0x0000…0000:0 - peers: 2
Sep-26 21:59:18.002[]                 info: Synced - slot: -12004 - head: 0xab09…f889 - finalized: 0x0000…0000:0 - peers: 2

may be printing the log every other slot is good before genesis there is no useful information at play pre genesis every slot

may be printing the log every other slot is good before genesis there is no useful information at play pre genesis every slot

The variable says msToNextSlot but the current calculation does not consider a negative genesis time (msFromGenesis).
There can be the argument to have less frequent sync notifier logs pre-genesis but that should be done intentionally and not just because the calculation is done incorrectly.
This was brought up by rocknet in discord a while back as well.

The other thing that seems unusual is the logs only report "syncing" every other negative slot.  That is, only the odd-numbered slots.  That doesn't seem good.

In my opinion we should just log once every slot no matter if pre / post-genesis.

:tada: This PR is included in v1.12.0 :tada:


503 error on repository pages:

we have been having those errors for a while, probably after the squeeze to wheezy upgrade on this machine, which moved from gitolite 1.x to 2.x:
Started GET "/projects/X/repository" for Y at 2015-02-04 17:37:01 -0500
Processing by RepositoriesController#show as HTML
  Parameters: {"id"=>"puppet-network"}
  Current user: Z (id=3)
git: error during get default branch: undefined method `[]' for nil:NilClass
The revision 'LICENSE' has a wrong format
The revision 'README' has a wrong format
The revision 'manifests' has a wrong format
The revision 'templates' has a wrong format
Completed 500 Internal Server Error in 411.0ms

TypeError (can't convert nil into String):
  lib/redmine/scm/adapters/git_adapter.rb:237:in `block (2 levels) in revisions'
  lib/redmine/scm/adapters/git_adapter.rb:226:in `block in revisions'
  lib/redmine/scm/adapters/git_adapter.rb:218:in `revisions'
  app/models/repository/git.rb:242:in `latest_changesets'
  app/controllers/repositories_controller.rb:122:in `show'

it turns out this is because of spurious output in the ssh connexion. some banner is being printed by the server and making the scripts freak out. this is resolved the same way as #351 so i'll close and follow up there.


:broom: Use Knative ls-tags tool

Changes

:broom: Use Knative ls-tags tool

/kind cleanup
Related #2995
Unblocks https://github.com/knative-sandbox/kn-plugin-event/pull/229
Release Note
Use Knative ls-tags tool instead of janky scripts that fail

/assign @upodroid
/assign @kvmware
/cc @jrangelramos
/cc @mgencur

This should fix failures like: https://github.com/knative-sandbox/kn-plugin-event/actions/runs/3268584206/jobs/5375164931

/hold

/unhold

FYI this seems to have broken the Tekton Downstream e2e Test
https://github.com/knative/pkg/actions/runs/3317533673/jobs/5480506677#step:7:542
The test is now running with allllll the tags specified, which seems to result in baffling stdlib import cycle errors -- things just weren't meant to be built with all these tags:
Building with tags: 386,aix,amd64,appengine,arm,arm64,blahblh,cgo,clientlogmode,codegen,compile,complex_tests,conformance,darwin,dragonfly,e2e,ec2env,examples,exclude_disk_quota,freebsd,gc,gccgo,generate,go1.1,go1.10,go1.11,go1.12,go1.13,go1.14,go1.15,go1.16,go1.17,go1.18,go1.19,go1.2,go1.4,go1.5,go1.6,go1.7,go1.8,go1.9,gofuzz,grpcgoid,ignore,illumos,include_gcs,include_oss,integration,journald,journald_compat,js,jsoniter,jsoniter_sloppy,libdm_dlsym_deferred_remove,libdm_no_deferred_remove,linux,mips,mips64,mips64le,mipsle,modhack,nacl,netbsd,never,no_lcow,no_rdt,noasm,none,noresumabledigest,openbsd,plan9,purego,race,seccomp,solaris,spiffeid_charset_backcompat,static_build,tools,windows,windows_e2e,zos

The last successful run of the Tekton e2e test is here: https://github.com/knative/pkg/actions/runs/3198272700/jobs/5222584998#step:7:568
and says:
Building with tags: conformance e2e examples

cc @vdemeester @dprotaso


How can change redo keybaord shortcode?

Can make redo working by ctrl + shift + x like the defaults of windows?

Hey @johnmark1215
A new issue for this improvement has been created (#48). Please, add your thoughts there, and let's discuss the proposed solution! 💪
Closing this in favor of #48 ;)
Best!!


[material-ui][Select] Not working with the styled input prop: Prop className did not match

Steps to reproduce
Link to live example
Current behavior
When using a styled component for the input prop of the component Select:

Styled does not get applied
SSR warning gets thrown: Prop className did not match. Server: "MuiInputBase-root MuiOutlinedInput-root MuiInputBase-colorPrimary  css-f85pof-MuiInputBase-root-MuiOutlinedInput-root" Client: "MuiInputBase-root MuiOutlinedInput-root MuiInputBase-colorPrimary MuiInputBase-formControl  css-f85pof-MuiInputBase-root-MuiOutlinedInput-root"

Expected behavior
The Select styles are the one in the styled component, if you uncomment the styles from the globals.css they get applied.
Context
I'm trying to change the styles of the input component of the Select
Your environment

npx @mui/envinfo
  System:
    OS: Windows 10 10.0.19045
  Binaries:
    Node: 18.17.0 - C:\Program Files\nodejs\node.EXE
    npm: 9.6.7 - C:\Program Files\nodejs\npm.CMD
    pnpm: Not Found
  Browsers:
    Chrome: 121.0.6167.140
    Edge: Chromium (121.0.2277.98)
  npmPackages:
    @emotion/react: ^11.11.1 => 11.11.1
    @emotion/styled: ^11.11.0 => 11.11.0
    @mui/base:  5.0.0-beta.7
    @mui/core-downloads-tracker:  5.14.0
    @mui/icons-material: ^5.14.0 => 5.14.0
    @mui/lab: ^5.0.0-alpha.137 => 5.0.0-alpha.137
    @mui/material: ^5.14.0 => 5.14.0
    @mui/material-nextjs: ^5.15.6 => 5.15.6
    @mui/private-theming:  5.13.7
    @mui/styled-engine:  5.13.2
    @mui/system:  5.14.1
    @mui/types:  7.2.4
    @mui/utils:  5.14.1
    @types/react: ^18.2.6 => 18.2.15
    react: 18.2.0 => 18.2.0
    react-dom: 18.2.0 => 18.2.0
    typescript: ^5.0.4 => 5.1.6

Search keywords: Select styled input

Styled does not get applied

@RiccardoRomagnoli Since you're styling the label of the Select, which is rendered via the InputLabel component, you should use the styled API on the FormControl component. The label is outside of the OutlinedInput, so it's not targeted there. Here's the updated CodeSandbox. Additionally, you won't need the custom input prop.

SSR warning gets thrown: Prop className did not match. Server: "MuiInputBase-root MuiOutlinedInput-root MuiInputBase-colorPrimary css-f85pof-MuiInputBase-root-MuiOutlinedInput-root" Client: "MuiInputBase-root MuiOutlinedInput-root MuiInputBase-colorPrimary MuiInputBase-formControl css-f85pof-MuiInputBase-root-MuiOutlinedInput-root"

I don't see the warning in your provided CodeSandbox, however, it looks related to #27512.

I also get this error in Next.JS with MUI v5.16.x using emotions styled.

Warning: Prop className did not match. Server: "MuiTypography-root MuiTypography-body2 mui-tgw8io-MuiTypography-root" Client: "MuiTypography-root MuiTypography-body2 mui-zppu4x-MuiTypography-root" Error Component Stack


Fixing "site" detection for reverse proxy configurations

Also added XSS protection, might it ever be needed

Hi @iSDP, thanks for your contribution.
As @Jean85 has explained, we should never trust the user input (HTTP_HOST is) and if localhost is set as the server name this is a configuration issue on the user side which also should be fixed/changed there, we provide hooks to set the site yourself if you really want to use the HTTP_HOST as the site.
Defaulting to HTTP_HOST if the server name is localhost is not the way to fix this because people working on their dev environment or behind proxies might actually see this as intended which can cause confusion if that is overridden.


Introduce Provider concept in tasks exposed by Gradle core

Expected Behavior
Convention mapping is completely removed from code base. Provider concept is used instead.
Current Behavior
Gradle core tasks still use convention mapping. Provider is only used in the jacoco plugin.
Context
External plugins can avoid using convention mapping when configuring Gradle core tasks.

The C++ and Swift plugins also make heavy use of Provider and friends.

This enhancement would be useful for Spring Boot's plugin. We currently have a JavaExec subclass and configuring default jvmArgs is one of the few places where we still have to touch internal API by relying on JavaExec being a ConventionTask and using its ConventionMapping.


New Token submission

ioTube Token submission
Please read the token submission guide here: https://docs.iotube.org/introduction/token-submission
Team / Developer name
Streamr Network AG
Token Symbol
DATA
Token Decimals
18
Token Name in full
Streamr
Link to the token icon

Can also be downloaded from https://streamr.network/design under "Media Kit", then Streamr Brand Assets/Svg/Marks and Symbols/Token symbols/$DATA new token symbol.svg inside the zip file.
Short description of your project
The Streamr Network is a peer-to-peer network for publishing and subscribing to data in real-time. Applications use it for decentralized messaging, for example sharing data across applications or broadcasting real-time state changes to large audiences. The decentralized nature of the system makes the data transport scalable, robust, secure, tamper proof, and censorship resistant.
What is the blockchain (source blockchain) that your token is issued on

[x] Ethereum
[ ] Binance Smart Chain
[ ] Polygon
[ ] IoTeX
[ ] Solana

What blockchains (destination blockchain) would you like your token is bridged to

[ ] Ethereum
[ ] Binance Smart Chain
[ ] Polygon
[x] IoTeX
[ ] Solana

(Please check https://docs.iotube.org/introduction/token-submission#integration-fee for integration fees of different blockchains)
Token native contract address explorer link
Address: 0x8f693ca8D21b157107184d29D398A8D082b38b76
Your project websites

https://streamr.network/

Your social channels

Telegram: https://t.me/streamrofficial
X: https://x.com/streamr
Discord: https://discord.gg/gZAm8P7hK8
Website: https://streamr.network/

Verification of the token
Please provide the verification of your token in one of the following ways.

[x] Token address on your website. Please specify the link.

https://streamr.network/data-token
Under "Add DATA to your wallet", click "Add token"). We're looking forward to adding IoTeX there ;)

[x] CMC / Coingecko profile link with token contract address and link to website/social

https://coinmarketcap.com/currencies/streamr/ ("Website" button points to https://streamr.network/)

Send test tokens
Please send a few test tokens ($1-$10 worth) to our wallet address: 0x571e603e3B5c82Bd40998C538603dF4fb42bB051.

[x] Sent 90 DATA (~$3), see transaction receipt

Integration fee
Please refer to https://docs.iotube.org/introduction/token-submission for the full list of integration fees.
Please send the payment to 0x571e603e3B5c82Bd40998C538603dF4fb42bB051 or io12u0xq03mtjpt6sye33fcvq7lf76zhvz3yvt8q0 and post your txn link here.

[x] Sent 0.07 ETH (~$230), see transaction receipt

There already exists DATA token that is bridged from Polygon: https://iotexscan.io/address/0x1ae24d4928a86faaacd71cf414d2b3a499adb29b#code
Is it possible to bridge both from Mainnet and Polygon? The "original" does live in Mainnet. If that's not possible, it's okay to close this ticket.

Shall we have a tg chat and discuss the details?

Yes, please! After all, it's maybe not even super useful if another ERC20 token is bridged; ideally we'd get ERC667 (transferAndCall) functionality in there as well. Let's discuss in TG! My username is @jtakalai


Get html

Hi.
How to get html source code?

WVBrowser1..ExecuteScript('encodeURI(document.documentElement.innerHTML)');
and in the ExecuteScriptCompleted event :
SourceCode := TNetEncoding.URL.Decode(UTF8ToString(AResultObjectAsJson));

Thanks, it worked.

Really a great job, thank you very much.
You can consider including a GetHTMLSource-like function from the AMEdgeBrowser library
https://github.com/amancini/AMEdgeBrowser/blob/main/Src/AMEdgeBrowser.pas


[help] MetaSpace exception

I just ran bubblewrap` to turn my PWA into an android app for the first time
I run this cmd in a freshly installed windows 10 machine
These are the commands I just used
bubblewrap init --manifest https://www.almogtama3.com/config/manifest.webmanifest
bubblewrap build

but I get this exception (adding --info or --debug to bubblewrap build) outputs the exact same message

Unfortunately, I think this issue is related to the JVM. Can you check if the solution mentioned here solves it? https://github.com/GoogleChromeLabs/bubblewrap/issues/611#issuecomment-947452202


Option to announce when connection to server is lost or the server is shut down

EDIT 1: Partially implemented in  bc0d469.

Closing out feature requests to keep this tracker to bugs-only. This does not mean that this feature is a "won't-add". Further discussion is being moved to the Discord.


Incorrect topology properties are accepted

The KollapsDeploymentGenerator accepts topology properties such as (latency=0) that are semantically invalid.
This should result in an error message when parsing the topology.

Fixed.


Blank space in .cfg

Hello, I have trouble to disabled suit that have blank space in their name (in my case the no css.png)
I try ascii and lot of thing like " or \ and it's never able to work

## Settings file was created by plugin More Suits v1.3.3
## Plugin GUID: x753.More_Suits

[General]

## Comma-separated list of suits that shouldn't be loaded
# Setting type: String
# Default value: UglySuit751.png,UglySuit752.png,UglySuit753.png
Disabled Suit List = TRUEGOON.png,Kirby.png,Jogo.png,no css.png

## If true, ignores the !less-suits.txt file and will attempt to load every suit, except those in the disabled list. This should be true if you're not worried about having too many suits.
# Setting type: Boolean
# Default value: false
Ignore !less-suits.txt = false

Seems to work now, strange behaviour