Ads are blocked in Google Cloud Function

Hello,
I am writing a script which go on website to take a pictures of the iframe present on the page.
This script is planned to be running on a Google Cloud Function when a form is filled in a web app.

Puppeteer version: 1.19.0
Platform: Google Cloud Functions
Node.js version: 8

What steps will reproduce the problem?
The script present in the cloud function:
import puppeteer from 'puppeteer';

const randomNumber = (min: number, max: number) => Math.floor(Math.random() * (max - min + 1)) + min;
const takeScreenshot = async () => {
  const browser = await puppeteer.launch({
    args: ['--no-sandbox'],
    headless: true
  });

  const page = await browser.newPage();
  await page.goto('https://www.lemonde.fr', {
    waitUntil: 'domcontentloaded',
  });
  await page.waitFor(5000);

  const iframes = await page.$$('iframe');
  console.log(`${iframes.length} iframes`);

  const screenShootdelay = randomNumber(5, 15);
  await page.waitFor(screenShootdelay * 1000);

  const screenshotName = new Date().getTime();
  await page.screenshot({path: `${screenshotName}.png`, fullPage: true});
  console.log(`take screenshot ${screenshotName}`);
};

takeScreenshot();

What is the expected result?
Well, if you don't know the site lemonde.fr, it's full of ads but in the screenshot, there is none, like if the chrome use by puppeteer use a adblocker. Is there a way to display ads ?

May be GCF is blocking adsense ads or its related urls.( I didn't check).

setup a proxy and useragent.


g_loss is zero

g_loss is zero
I have just 20 images...
I have given batch size as 5..
What should I do??
in train
Epoch: [ 2/200] [   0/   4] time: 101.3380, d_loss: 66.68623352, g_loss: 0.00000000
in train
Epoch: [ 2/200] [   1/   4] time: 111.8188, d_loss: 76.59110260, g_loss: 0.00000000
in train
Epoch: [ 2/200] [   2/   4] time: 122.4962, d_loss: 61.84632874, g_loss: 0.00000000
in train
Epoch: [ 2/200] [   3/   4] time: 133.3623, d_loss: 92.15061951, g_loss: 0.00000000
in train
Epoch: [ 3/200] [   0/   4] time: 143.7579, d_loss: 77.85248566, g_loss: 0.00000000
in train
Epoch: [ 3/200] [   1/   4] time: 155.1860, d_loss: 82.39799500, g_loss: 0.00000000
in train
Epoch: [ 3/200] [   2/   4] time: 166.3799, d_loss: 77.72499084, g_loss: 0.00000000
in train
Epoch: [ 3/200] [   3/   4] time: 177.2598, d_loss: 77.97490692, g_loss: 0.00000000
in train
Epoch: [ 4/200] [   0/   4] time: 190.2882, d_loss: 91.62058258, g_loss: 0.00000000
in train
Epoch: [ 4/200] [   1/   4] time: 201.1383, d_loss: 77.87282562, g_loss: 0.00000000
in train
Epoch: [ 4/200] [   2/   4] time: 211.9442, d_loss: 62.41357040, g_loss: 0.00000000
in train
Epoch: [ 4/200] [   3/   4] time: 224.1279, d_loss: 62.39629745, g_loss: 0.00000000
in train
Epoch: [ 5/200] [   0/   4] time: 235.7465, d_loss: 84.88256836, g_loss: 0.00000000
in train
Epoch: [ 5/200] [   1/   4] time: 246.7435, d_loss: 81.24859619, g_loss: 0.00000000
in train
Epoch: [ 5/200] [   2/   4] time: 257.4673, d_loss: 56.56097412, g_loss: 0.00000000
in train
Epoch: [ 5/200] [   3/   4] time: 268.2158, d_loss: 72.46702576, g_loss: 0.00000000
in train
Epoch: [ 6/200] [   0/   4] time: 279.1540, d_loss: 95.52645874, g_loss: 0.00000000
in train
Epoch: [ 6/200] [   1/   4] time: 289.9103, d_loss: 52.89161682, g_loss: 0.00000000
in train
Epoch: [ 6/200] [   2/   4] time: 300.4298, d_loss: 33.64301682, g_loss: 0.00000002
in train
Epoch: [ 6/200] [   3/   4] time: 311.3520, d_loss: 62.36664581, g_loss: 0.00000000
in train
Epoch: [ 7/200] [   0/   4] time: 321.7633, d_loss: 86.98524475, g_loss: 0.00000000
in train
Epoch: [ 7/200] [   1/   4] time: 332.4142, d_loss: 65.05583954, g_loss: 0.00000000
in train
Epoch: [ 7/200] [   2/   4] time: 342.8735, d_loss: 50.12738419, g_loss: 0.00000000
in train
Epoch: [ 7/200] [   3/   4] time: 353.6615, d_loss: 63.79507828, g_loss: 0.00000000
in train
Epoch: [ 8/200] [   0/   4] time: 364.9562, d_loss: 57.13796997, g_loss: 0.00000000
in train
Epoch: [ 8/200] [   1/   4] time: 375.4762, d_loss: 62.95877457, g_loss: 0.00000000
in train
Epoch: [ 8/200] [   2/   4] time: 386.5996, d_loss: 50.77989197, g_loss: 0.00000000
in train
Epoch: [ 8/200] [   3/   4] time: 397.0660, d_loss: 51.62030029, g_loss: 0.00000002
in train
Epoch: [ 9/200] [   0/   4] time: 407.7714, d_loss: 56.64958572, g_loss: 0.00000000
in train
Epoch: [ 9/200] [   1/   4] time: 418.5039, d_loss: 38.02365494, g_loss: 0.00000000
in train
Epoch: [ 9/200] [   2/   4] time: 429.8555, d_loss: 45.29552078, g_loss: 0.00000000
in train
Epoch: [ 9/200] [   3/   4] time: 440.9431, d_loss: 44.95145416, g_loss: 0.00000000
in train
Epoch: [10/200] [   0/   4] time: 451.5838, d_loss: 49.63116074, g_loss: 0.00000000
in train
Epoch: [10/200] [   1/   4] time: 461.9910, d_loss: 39.51537704, g_loss: 0.00000000
in train
Epoch: [10/200] [   2/   4] time: 472.3361, d_loss: 61.76707077, g_loss: 0.00000000
in train
Epoch: [10/200] [   3/   4] time: 482.7479, d_loss: 52.49583817, g_loss: 0.00000000
in train
Epoch: [11/200] [   0/   4] time: 493.0749, d_loss: 69.66619110, g_loss: 0.00000000
in train
Epoch: [11/200] [   1/   4] time: 503.6349, d_loss: 57.94055557, g_loss: 0.00000000
in train
Epoch: [11/200] [   2/   4] time: 515.4273, d_loss: 31.25936508, g_loss: 0.00000000
in train
Epoch: [11/200] [   3/   4] time: 526.4531, d_loss: 55.65859222, g_loss: 0.00000000
in train
Epoch: [12/200] [   0/   4] time: 537.4629, d_loss: 51.19610596, g_loss: 0.00000000
in train
Epoch: [12/200] [   1/   4] time: 548.2230, d_loss: 40.03497314, g_loss: 0.00000000
in train
Epoch: [12/200] [   2/   4] time: 558.9367, d_loss: 56.13888550, g_loss: 0.00000000
in train
Epoch: [12/200] [   3/   4] time: 570.7811, d_loss: 60.09444809, g_loss: 0.00000000
in train
Epoch: [13/200] [   0/   4] time: 581.6425, d_loss: 62.98931885, g_loss: 0.00000000
in train

I happend to the same problem. How do you solve this? @SHANKARMB

have you solved this problem?

your datasets is too small
try data augmentation， rotation，add noise ...


macOS Big Sur: smimesign v0.1.0: Invalid Signatures

smimesign v0.1.0 when installed via Homebrew for macOS Big Sur creates invalid/corrupt signatures. Specifically, this happens when smimesign is installed as follows on macOS Big Sur:
brew install smimesign

This causes the following bottle to be used: https://homebrew.bintray.com/bottles/smimesign-0.1.0.big_sur.bottle.tar.gz
Interestingly enough, these invalid signatures (signatures created with the smimesign binary for macOS Big Sur) can be verified successfully by the same smimesign binary that created them, but are (correctly) reported as invalid by all other smimesign binaries as well as the GitHub UI/API.
To workaround this issue, when installing smimesign on macOS Big Sur, you can explicitly request a bottle that does
not suffer from this issue. Specifically, the smimesign-0.1.0.catalina.bottle.tar.gz bottle (compiled for macOS
Catalina) does not suffer from the issue and works on macOS BigSur:
brew install https://homebrew.bintray.com/bottles/smimesign-0.1.0.catalina.bottle.tar.gz

If this workaround is not performed, corrupt git commit signatures will be produced. Any attempt to verify these
commits using a version of smimesign that does not suffer from the issue will result in the following failure:
[~/dev/test-repo]$ git log --show-signature -1
commit 982cca63826ab8e894fc48db2825dd7805d1f9ae (HEAD -> master, origin/master, origin/HEAD)
failed to verify signature: crypto/rsa: verification error
Merge: 59b2361 26ce50c
Author: Redacted User<EMAIL_ADDRESS>Date:   Fri Sep 18 19:07:50 2020 -0400

    #1: Test Issue
[~/dev/test-repo]$ git verify-commit HEAD
failed to verify signature: crypto/rsa: verification error

Had the exact same issue. Everything exactly as described. Thanks so much for the workaround. Worked great for me. Hopefully whatever is broken in the brew package gets fixed soon.

Had the exact same issue. Everything exactly as described. Thanks so much for the workaround. Worked great for me. Hopefully whatever is broken in the brew package gets fixed soon.

👋 Thanks for the issue. We've taken note of it so that it gets triaged.

👋 Thanks for the issue. We've taken note of it so that it gets triaged.

I tracked this issue down to github/ietf-cms#25, a bug that emerges when built on 1.15. AFAICT fixing that issue should suffice to fix the issue here as well.

I tracked this issue down to github/ietf-cms#25, a bug that emerges when built on 1.15. AFAICT fixing that issue should suffice to fix the issue here as well.

btw this has been an issue since v0.0.13 - has been driving me and my team crazy! So basically depending on what version of Go smimesign was built with, signatures may or may not be valid. We've been going in circles for months trying to figure out why this works for some of us and not others 😅

I believe that @bluestealth and I have fixed the underlying issue that causes this in github/ietf-cms#29.

@btoews @vcsjones @lgarron would it be possible to create a new release with this fix? Can't install go 1.14 to build this myself at the moment.

Everything worked for me by closing the source, updating github/ietf-cms dependency to @main, and rebuilding with Go 1.16.5 on Big Sur.
Waiting for official release.

Thanks @AlekSi, that worked for me as well and commits show as verified here on GitHub 🎉

Same issue applies to the macOS binary available from the releases tab. I didn't even realize all my signed commits were useless up until now...

This was a fun exercise to get a crash course in Go!
I did what @AlekSi did: above:  update<EMAIL_ADDRESS>to use<EMAIL_ADDRESS>and rebuild; it worked with go1.16.7 darwin/amd64.
What needs to happen for smimesign to be updated to  the newer ietf-cms dependency?

@andrewpong we'll be releasing a new version of smimesign with updated dependencies in the near future. Stay tuned!

Is there an update on when this fix will be released?

v0.1.1 was released which should address this issue. Please give it a try and let us know how it goes.

I haven't tested this new release of smimesign, but it is still using v0.1.0 of ietf-cms, which does not include the fix for what I believe to be the underlying issue causing the invalid signatures:
https://github.com/github/smimesign/blob/80395c4a7da0f79c391840c15c51a71250aea678/go.mod#L10
There needs to be a new release of ietf-cms that includes this merged PR and then smimesign needs to be bumped to pull in that new version.

Indeed, this does not fix the problem described in the title and since bintray has shut down, @christopherincanada solution does not work anymore, do you know if it's still possible to install the old Catalina bottle?

Sorry for the confusion y'all, we'll get a new build with the updated ietf-cms dependency as well out soon.

brew install smimesign installed the latest 0.1.2 version and now signatures are correctly verified in GitHub. Thanks a lot

Thanks, @patrickbenitez and @adricasti!
I'll take that as confirmation that this is resolved. If anyone is running into issues, please comment here and we can reopen!


Add doxygen for filter functions, including def_var_zstandard/inq_var_zstandard

Fixes #2333.
Part of #2329
Fixes #2186.
This PR includes PRs #2330 and #2332 and should be merged after them (or instead of them).
In this PR I add dfilter.c to the list of files in Doxyfile, and clean up the documentation in that file so every function has good doxygem.
@WardF you probably want to get these documentation fixes in before the 4.9.0 release.

This work is included in #2336, so I will close this PR.


Is it possible to add the validator to a single page without registering it into the global plugins(Nuxt.js)

Describe the bug
I am using Nuxt.js - most recent stable version
I am curious if it is possible to import vee-validate into a page and use it within the page
I know i can:

Create a script within the plugin folder to import both vue and vee-validate and make use use the validator
Register the script into nuxt.config.js
Use this.$validator.....

However, i do not want to have it globally registered.
Instead, i want to:
//page.vue
<template>

     //basic form to be validated

</template>

Yes, and No, the v-validate directive requires installing it as a plugin because it needs access to the Vue prototype to be able to do stuff like marking observable properties of its own and setup watchers.
Now the Validation Components are exempt from this rule because they are Vue components and they piggyback on Its reactivity system naturally, so they can be used without installing the plugin.
<template>

        <ValidationProvider rules="required" v-slot="{ errors }">
          <input type="text" v-model="value">
          {{ errors[0] }}
        </ValidationProvider>

        <ValidationProvider rules="required|email" v-slot="{ errors }">
          <input type="text" v-model="one">
          {{ errors[0] }}
        </ValidationProvider>

</template>


Shutdown receiver script after received all part

Now receiver have tho threads
When Receiver received all parts we need exit from all threads
May be need remove multi-threading architecture and create non-blocking socket

Close

Close


Fatal uncaught exception "aqt/installer.py", line 362, in show_aqt_version. Related: python3.6/dist-packages/importlib_metadata

https://github.com/miurahr/aqtinstall/blob/2f17a7d42c5d3c0c0f0d61bae36a2c721d4d25e1/aqt/installer.py#L362
I'm not confident to say whether or not this is a bug in aqtinstall or not.
Other possibilities:

something wrong with py 3.6 importlib_metadata
something wrong with the packaging or dist-info or "entry_points.txt" that pip downloads

This started failing for me "out of nowhere."  It was working in one CI job, then the next time I ran the same job (with no changes to my code or build scripts), this failure happened.
I have a way to replicate it using Docker (see below).
This is the error:
        + python3 -m aqt install --base http://mirrors.ocf.berkeley.edu/qt/ --outputdir /opt/atlassian/pipelines/agent/build/dl_third_party/Qt_desktop 5.15.0 linux desktop --archives icu qtbase qtconnectivity qtdeclarative qtgraphicaleffects qtimageformats qtquickcontrols qtquickcontrols2 qtsvg qttools
        Traceback (most recent call last):
          File "/usr/local/lib/python3.6/dist-packages/importlib_metadata/__init__.py", line 170, in __getitem__
            return next(iter(self.select(name=name)))
        StopIteration
        During handling of the above exception, another exception occurred:
        Traceback (most recent call last):
          File "/usr/lib/python3.6/runpy.py", line 193, in _run_module_as_main
            "__main__", mod_spec)
          File "/usr/lib/python3.6/runpy.py", line 85, in _run_code
            exec(code, run_globals)
          File "/usr/local/lib/python3.6/dist-packages/aqt/__main__.py", line 27, in <module>
            sys.exit(main())
          File "/usr/local/lib/python3.6/dist-packages/aqt/__init__.py", line 38, in main
            return cli.run()
          File "/usr/local/lib/python3.6/dist-packages/aqt/installer.py", line 475, in run
            return args.func(args)
          File "/usr/local/lib/python3.6/dist-packages/aqt/installer.py", line 214, in run_install
            self._run_common_part(output_dir, base)
          File "/usr/local/lib/python3.6/dist-packages/aqt/installer.py", line 157, in _run_common_part
            self.show_aqt_version()
          File "/usr/local/lib/python3.6/dist-packages/aqt/installer.py", line 362, in show_aqt_version
            module_name = dist.entry_points[0].name
          File "/usr/local/lib/python3.6/dist-packages/importlib_metadata/__init__.py", line 172, in __getitem__
            raise KeyError(name)
        KeyError: 0

Here is a docker file that will reproduce the failure:
FROM ubuntu:18.04

RUN apt-get update

RUN apt-get --assume-yes install  python3
RUN apt-get --assume-yes install  python3-pip

RUN pip3 install -Iv aqtinstall==1.1.2

RUN python3 -m aqt install --base  --outputdir /tmp/Qt 5.15.0 linux desktop --archives icu qtbase qtconnectivity qtdeclarative qtgraphicaleffects qtimageformats qtquickcontrols qtquickcontrols2 qtsvg qttools

Versioning clue??   If you simply replace this:
FROM ubuntu:18.04

With this:
FROM ubuntu:20.04

And re-run docker build, then you can see it succeeds on Ubuntu 20.

I accidentally created this duplicate case. Please see issue #221

v1.1.3 out.


fix(versions): update Activiti/activiti-cloud-full-chart-security versions

UpdateBot pushed helm dependency: activiti-cloud-full-example to: 7.1.277

UpdateBot commands:
updatebot push-version --kind helm activiti-cloud-full-example 7.1.277


dns-reports.py Check_DNS_AAA_Record -> Check_DNS_AAAA_Record

Cosmetic bug in that dns-reports.py class Check_DNS_AAA_Record should probably be called Check_DNS_AAAA_Record

You don't like my IPv5 DNS record? 😬


Flask-login for every paths

Hi,
I need to protect the access to my flask server with flask-login.
This is done by adding @login_required to the path I need to protect.
Example:
@app.route("/my/path")
@login_required
def test():
    return 'hello'

With flask-autoindex the paths are dynamic, how can I force the user to login for every path ?

Hello,
Why do not want to use @login_required decorator ?

Without answer I close this issue


Move FAQ from sql to operational FAQs page

Also link to new transaction contention content from transactions page.

This change is

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/67019f2331a4f467a4b80ff9fc873f5151ad14db/


for-in loops over arrays should be avoided

There is a new TSLint rule to detect for-in use for arrays that I think would make sense to enable. We have only few violations.
See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for...in#Array_iteration_and_for...in and keep in mind that for-in may inherit properties from Object.
@alexr00 @dbaeumer https://github.com/microsoft/vscode/blob/582b187f88ef40c354d37ee792b621be3fc03a91/src/vs/workbench/contrib/tasks/common/tasks.ts#L988
https://github.com/microsoft/vscode/blob/582b187f88ef40c354d37ee792b621be3fc03a91/src/vs/workbench/contrib/tasks/browser/terminalTaskSystem.ts#L342

:+1: Yeah, not written by me, but I will fix the ones in monarch.

Done in monarch.

@alexr00 there seems to be a PR addressing this https://github.com/microsoft/vscode/pull/79551

Fixed in tasks.


Fix match_narrow traceback for has:link and friends.

Merged the second commit, thanks @showell!  For the retry logic, I wonder if we should keep that logic but only in the event that the error was a networking-level error?  I think it's not great to have it permanently wrong if you weren't on the Internet at the time you narrowed.

I'll defend the first commit in the context of the impending 1.7 deadline.  A runaway retry can be an operational headache, whereas I think one person's network blip is self-correcting here, as I'm pretty sure the problem goes away for the user as soon as they get out of the narrow, which is typically pretty quick for these query.

Heads up @showell, we just merged some commits that conflict with the changes your made in this pull request! You can review this repository's recent commits to see where the conflicts occur. Please rebase your feature branch against the upstream/master branch and resolve your pull request's merge conflicts accordingly.

Closing.  The retry logic stuff is more of a moot point now that we've made the bug fix.


Update web submodule to latest commit

Updated the web submodule to the latest commit, which includes fixes for candy, etc.
An earlier pull request was supposed to do this, but the commit was much earlier than the latest.

This version is not working on my side.

@solderzzc after edited /web/config/userdata.js ( with multi bot) & set ngix root directory to /web
it work for me as old master

to web directory ,
$ cd web
$ git reset --hard origin/master
$ git pull origin master
Config your userdata.js again and re-run your bot.

oh, I just recall the userdata.js was changed.
Thanks @MZorzy @ubu13

It's working well here, I guess we need a wiki update.


Refactor provided exports

What kind of change does this PR introduce?
refactoring
Did you add tests for your changes?
yes
Does this PR introduce a breaking change?
yes
What needs to be documented once your changes are merged?
module.buildMeta.providedExports has been removed.

Thanks


How should a server reject unknown union variants?

Since enum is a constraint trait, if a server encounters an unknown enum variant, it should reject the request just like it would fail to constrain any other value for a constrained shape: that is, the server should parse the request successfully and then constrain the resulting value, returning a collection of constraint violations, if any. In the case of an unknown enum variant, one of those errors should convey that there was an unknown enum variant. Here is one protocol test in the validation suite enforcing this behavior:
https://github.com/awslabs/smithy/blob/1863d672dde488ccd81d9c00c64f57a26728f75d/smithy-aws-protocol-tests/model/restJson1/validation/malformed-enum.smithy#L17-L49
(Aside: it would be nice if the spec on constraint traits documented this server behavior instead of using the protocol tests as a normative reference).

My question is what should happen if a server encounters unknown union variants. It is not obvious, since a union is a shape itself and not a constraint trait like enum. If a server is parsing a union, it will first read the tag and match it against the known modeled tags. If it encounters an unknown tag, should it then:

Immediately reject the request with a deserialization failure; or
Store the unknown tag, discard the union's value (since it can't know its structure), parse the rest of the request successfuly, and insert some sort of validation error in the response, just like we should do for constraint traits?

I think the answer should be (1); it'd be nice if a test could be added to malformed-union.smithy and the spec could call this out if so.

I agree the answer should be 1.

(1) would still be a 400 response in HTTP based protocols, right?

yes, SerializationException is a 400

I was wondering if the behavior for unkown enum variants has changed with IDL v2. In IDL v2, we have enum shapes instead of enum constraint traits, so presumably logic would dictate that they should now be handled like in the case of unkown union variants? That is a big behavioral change.

Hm, no, enums are still open types. There's effectively no behavioral change, just a modeling change.

I'm guessing set shapes in IDL v1 should be rejected in the case of duplicate items in the same way as list shapes with uniqueItems in IDL v2 then: the request is parsed entirely and only then the check is performed. So, another modeling change, but no behavioral change in this regard.

Looks like this is answered

Do we have a protocol test establishing this behavior? I thought that was why the label was added.

Oh missed that. Pushed https://github.com/smithy-lang/smithy/pull/2022


Cypress/E2E: Potential fix for user management

Summary

The failures were passing for me locally but looking at the report, I noticed that the search term is not being typed fully in the input. I've seen this issue before and adding a typing delay seem to help.

Ticket Link
NA

/update-branch

Will try to auto merge this PR once all tests and checks are passing. This might take up to an hour.

Trying to auto merge this PR.

Pull Request successfully merged
SHA: f093c6befaace6cfc67547dd8097cc30d59248cd


Added IReadOnlyGrid to meet MVP goal.

Looked at the issue and it described a read-only grid decorator.  Are we not including that?


Vertically long images rendered blurry on certain devices.

I built a manga app. In the app I display webtoon images which can be vertically long like 1,440px × 37,332px for example. While building the app, I had no problems with the image quality, but after I launched it, some users reported blurry images on their devices, I tested the app on one of the devices and it was really blurry and I could not find a relation between the device type and the problem since they were very different and diverse. P.S: Images on emulator are perfect.
Anyways, I tried it on my brother's device, Samsung A5 (SM-A500H) [I do not have another device]. Even in a fresh project just displaying one image, this happens.
Image Link
Insert the link in an image.network(''), the image must be in a listview in order to scroll it, and according to your device the blurry effect happens. Hypothesis: Flutter has problems rendering long images or it happens according to screen specs 🤷♂🤷♂. No idea why!!
Code Example: very simple.
ListView(                     children: [                       Image.network('url', fit: BoxFit.fitWidth)                     ],                   ),

you've extended the StatefulWidget , you must call setState everytime you change the state. Ex: setState(() { propList.add('text'); });.

you've extended the StatefulWidget , you must call setState everytime you change the state. Ex: setState(() { propList.add('text'); });.

@anass-naoushi
Please provide flutter doctor -v and a minimal complete reproducible code sample that shows the issue.

@anass-naoushi
Please provide flutter doctor -v and a minimal complete reproducible code sample that shows the issue.

@darshankawar  flutter doctor -v output:
[√] Flutter (Channel stable, 1.22.5, on Microsoft Windows [Version 10.0.19041.746], locale en-US)
• Flutter version 1.22.5 at D:\flutter-src\flutter
• Framework revision<PHONE_NUMBER> (6 weeks ago), 2020-12-10 11:54:40 -0800
• Engine revision ae90085a84
• Dart version 2.10.4
[!] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
• Android SDK at C:\Users\Alpha\AppData\Local\Android\sdk
• Platform android-30, build-tools 30.0.3
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
X Android license status unknown.
Run flutter doctor --android-licenses to accept the SDK licenses.
See https://flutter.dev/docs/get-started/install/windows#android-setup for more details.
[√] Android Studio (version 4.0)
• Android Studio at C:\Program Files\Android\Android Studio
• Flutter plugin installed
• Dart plugin version 193.7547
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
[√] Connected device (1 available)
• SM G930V (mobile) • 8aa1e081 • android-arm64 • Android 8.0.0 (API 26)
! Doctor found issues in 1 category.

@darshankawar  flutter doctor -v output:
[√] Flutter (Channel stable, 1.22.5, on Microsoft Windows [Version 10.0.19041.746], locale en-US)
• Flutter version 1.22.5 at D:\flutter-src\flutter
• Framework revision<PHONE_NUMBER> (6 weeks ago), 2020-12-10 11:54:40 -0800
• Engine revision ae90085a84
• Dart version 2.10.4
[!] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
• Android SDK at C:\Users\Alpha\AppData\Local\Android\sdk
• Platform android-30, build-tools 30.0.3
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
X Android license status unknown.
Run flutter doctor --android-licenses to accept the SDK licenses.
See https://flutter.dev/docs/get-started/install/windows#android-setup for more details.
[√] Android Studio (version 4.0)
• Android Studio at C:\Program Files\Android\Android Studio
• Flutter plugin installed
• Dart plugin version 193.7547
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
[√] Connected device (1 available)
• SM G930V (mobile) • 8aa1e081 • android-arm64 • Android 8.0.0 (API 26)
! Doctor found issues in 1 category.

@anass-naoushi
You'll also need to provide a minimal complete reproducible code sample that we can use to verify the issue.
Thanks.

@anass-naoushi
You'll also need to provide a minimal complete reproducible code sample that we can use to verify the issue.
Thanks.

Issue replicable on Android 8.1.0 device whereas, images rendering properly on Android 9 emulator and on iPhone 12 max simulator.

flutter doctor -v
[✓] Flutter (Channel master, 1.26.0-2.0.pre.402, on Mac OS X 10.15.4 19E2269 darwin-x64, locale en-IN)
    • Flutter version 1.26.0-2.0.pre.402 at /Users/dhs/documents/Fluttersdk/flutter
    • Framework revision 2a188eeca3 (11 hours ago), 2021-01-17 19:27:00 -0800
    • Engine revision 609036f2bf
    • Dart version 2.12.0 (build 2.12.0-236.0.dev)

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

[!] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.3, Build version 12C33
    ! CocoaPods 1.9.3 out of date (1.10.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on
        the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade see https://guides.cocoapods.org/using/getting-started.html#installation for instructions.

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

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

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

[✓] Connected device (4 available)
    • SM A260G (mobile)            • 5200763ebcfa861f • android-arm    • Android 8.1.0 (API 27)
    • AOSP on IA Emulator (mobile) • emulator-5554    • android-x86    • Android 9 (API 28) (emulator)
    • macOS (desktop)              • macos            • darwin-x64     • Mac OS X 10.15.4 19E2269 darwin-x64
    • Chrome (web)                 • chrome           • web-javascript • Google Chrome 87.0.4280.141

! Doctor found issues in 1 category.

Issue replicable on Android 8.1.0 device whereas, images rendering properly on Android 9 emulator and on iPhone 12 max simulator.

flutter doctor -v
[✓] Flutter (Channel master, 1.26.0-2.0.pre.402, on Mac OS X 10.15.4 19E2269 darwin-x64, locale en-IN)
    • Flutter version 1.26.0-2.0.pre.402 at /Users/dhs/documents/Fluttersdk/flutter
    • Framework revision 2a188eeca3 (11 hours ago), 2021-01-17 19:27:00 -0800
    • Engine revision 609036f2bf
    • Dart version 2.12.0 (build 2.12.0-236.0.dev)

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

[!] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.3, Build version 12C33
    ! CocoaPods 1.9.3 out of date (1.10.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on
        the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade see https://guides.cocoapods.org/using/getting-started.html#installation for instructions.

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

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

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

[✓] Connected device (4 available)
    • SM A260G (mobile)            • 5200763ebcfa861f • android-arm    • Android 8.1.0 (API 27)
    • AOSP on IA Emulator (mobile) • emulator-5554    • android-x86    • Android 9 (API 28) (emulator)
    • macOS (desktop)              • macos            • darwin-x64     • Mac OS X 10.15.4 19E2269 darwin-x64
    • Chrome (web)                 • chrome           • web-javascript • Google Chrome 87.0.4280.141

! Doctor found issues in 1 category.

@darshankawar, the device I also tested on is android 6.0.1 and the issue occurred.

@darshankawar, the device I also tested on is android 6.0.1 and the issue occurred.

@darshankawar Do you have any idea how long will it take to fix this bug or any workarounds to fix it right now?

@darshankawar Do you have any idea how long will it take to fix this bug or any workarounds to fix it right now?

Flutter does not tile images and will attempt to fit the 1,440px × 37,332px image into whatever texture size the GPU happens to support at the maximum. This is usually 4096px tall. Scaling the image down to fit inside that size explains the rendering artifacts. To work around this issue, the application will have to tile images on its own. I am repurposing this issue as a feature request to explore automatically tiling ui.Images.

cc @flar

@chinmaygarde, is not there any workaround as of the moment cuz this is a serious problem for my project. I tried dividing the images using the image package but it keeps having cast issues even though I casted the import as imglib, flutter keeps having casting issues thus the package is unusable. If you have anything on mind I would appreciate it. Thank you.

Can you share the code you are using to break the images into pieces?

@flar, sorry for the very very late response. This is the function that I use to split my image which has casting issues:
`Future splitImage() async{
//I use color_thief_flutter package here;
Image i =  await getImageFromUrl(widget.url);

  imglib.Image image = i as imglib.Image;
  int verticalPieceCount = (image.height ~/ 4000).toInt();
  int yLength = (image.height / verticalPieceCount).round();
  List<imglib.Image> pieceList = List<imglib.Image>();

  for (int y = 0; y < verticalPieceCount; y++) {
    pieceList.add(
      imglib.copyCrop(image, 0, y, 0, y * yLength),
    );
  }

  List<Image> outputImageList = List<Image>();
  for (imglib.Image img in pieceList) {
    outputImageList.add(Image.memory(imglib.encodeJpg(img)));
  }

return outputImageList;
}
`
The error I receive is as follows:

A value of type 'Image (where Image is defined in D:\flutter-src\flutter\bin\cache\pkg\sky_engine\lib\ui\painting.dart)' can't be assigned to a variable of type 'Image (where Image is defined in D:\flutter-src\flutter\packages\flutter\lib\src\widgets\image.dart)'.
Try changing the type of the variable, or casting the right-hand type to 'Image (where Image is defined in D:\flutter-src\flutter\packages\flutter\lib\src\widgets\image.dart)'

@anass-naoushi you've run into a naming issue in the classes. There is both an Image widget (which takes a source to load an image from like a file or a network address) and there is also the dart:ui Image object (which you seem to import as imglib.Image) and which holds raw pixel data. Your imglib.Image cannot be inserted into a widget tree as it is not a widget.
It is further confusing because the Image widget does not directly take an instance of the ui.Image class as a possible source of the data. Instead you need to use the RawImage widget to render a dart:ui image.

@flar I am getting the raw image like this:

Future splitImage() async{
Uint8List rawImg = (await http.get(widget.url)).bodyBytes;
final img = imglib.decodePng(rawImg);
int verticalPieceCount = (img.height ~/ 4000).toInt();
int yLength = (img.height / verticalPieceCount).round();
List<imglib.Image> pieceList = List<imglib.Image>();
for (int y = 0; y < verticalPieceCount; y++) {
pieceList.add(
imglib.copyCrop(img, 0, y, 0, y * yLength),
);
}
List outputImageList = List();
for (imglib.Image img in pieceList) {
outputImageList.add(Image.memory(imglib.encodeJpg(img)));
}
return outputImageList;
}

But now I am getting a new error where it says:

Unhandled Exception: NoSuchMethodError: The getter 'height' was called on null.
E/flutter (28383): Receiver: null

The image package is having troubles getting the height and width of the image. Anyways, I tried a lot of approaches but I keep getting casting errors or package problems with no results. Can you please help me with this, if you can fix the function or suggest another way to fix the blurry images rather than dividing them. Appreciate the help. Thank you.

We need a minimal reproducible code sample. The code sample you provided in your earlier comment (https://github.com/flutter/flutter/issues/74172#issuecomment-762245426) fails because the network image is not accessible. The image link in the description also currently fails as well.
Since your code snippets in your last 2 comments are failing with calling .height on a null value, it could potentially be due to your code using a stale URL during your testing.
Part of a minimal reproducible code sample is making sure that the network image URLs you use are stable and don't disappear over time and are assets that you own and control.

@flar , here is a minimum reproducible code sample showing how I cannot split the images :
import 'package:flutter/material.dart';
import 'dart:typed_data';
import 'package:http/http.dart' as http;
import 'package:image/image.dart' as imglib;

class Images extends StatelessWidget {
  Future<List> splitImage() async {
    int height;
    http.Response response = await http.get('url');
    Uint8List imagebytes = response.bodyBytes;

    imglib.Image image = imglib.decodeJpg(imagebytes);

    height = image.height;

    int verticalPieceCount = (height ~/ 500).toInt();
    int yLength = (height / verticalPieceCount).round();

    List<imglib.Image> pieceList = List<imglib.Image>();

    for (int y = 0; y < verticalPieceCount; y++) {
      pieceList.add(
        imglib.copyCrop(image, 0, y, 0, y * yLength),
      );
    }
    List<Image> outputImageList = List<Image>();

    for (imglib.Image img in pieceList) {
      outputImageList.add(Image.memory(
        imglib.encodeJpg(img),
        fit: BoxFit.fitWidth,
      ));
    }

    return outputImageList;
  }

  @override
  Widget build(BuildContext context) {
    return FutureBuilder(
      future: splitImage(),
      // ignore: missing_return
      builder: (context, AsyncSnapshot<List> data) {
        if (data.hasError) {
          return Text('error');
        } else if (!data.hasData ||
            data.connectionState == ConnectionState.waiting) {
          return Container(
            height: MediaQuery.of(context).size.height,
            alignment: Alignment.center,
            child: CircularProgressIndicator(),
          );
        } else
          return ListView(
            shrinkWrap: true,
            children: List.generate(data.data.length, (index) {
              return data.data[index];
            }),
          );
      },
    );
  }
}

The Image URL is HERE:
https://firebasestorage.googleapis.com/v0/b/comet-manga.appspot.com/o/test.jpg?alt=media&token=f5f2c481-fc63-48e6-b780-9ae226e2a3bc

Having run it locally I can confirm that you are getting a bad image data error, but that's because the image data is actually bad. You are using the imglib.copyCrop method incorrectly. The arguments are x,y,w,h, which means that you are passing a width of 0 which is causing the bad data. Fixing that, each slice ends up larger and larger because your value for height is increasing on each pass through the loop, and your value for y is also poorly considered as it goes up by 1 for each slice.
I also noticed in passing that using a truncating division to determine the number of pieces would cause you to come up a piece short unless your source image happened to be a multiple of 500. and rounding the yLength might cause it to be too large or too small either leading to more loss from the bottom of the image or possibly even overflowing the bottom of the image.
Running through all of this debugging, I got a version to work by modifying your code a bit. Here is an alternate version of the code that doesn't get bad data errors, but you will want to make the work asynchronous to avoid stalling the UI.
  Future<List> splitImage() async {
    http.Response response = await http.get(url);
    Uint8List imagebytes = response.bodyBytes;

    imglib.Image image = imglib.decodeJpg(imagebytes);

    int maxHeight = 500;

    List<imglib.Image> pieceList = <imglib.Image>[];

    int y = 0;
    while (y < image.height) {
      int h = min(image.height - y, maxHeight);
      pieceList.add(
        imglib.copyCrop(image, 0, y, image.width, h),
      );
      y += h;
    }
    List<Image> outputImageList = <Image>[];

    int i = 0;
    for (imglib.Image img in pieceList) {
      outputImageList.add(Image.memory(
        imglib.encodeJpg(img),
        fit: BoxFit.fitWidth,
      ));
    }

    return outputImageList;
  }

@flar, sorry for the long absence.
I tried your edits and it works crystal BUT I am having lags and ram spikes issue until the app crashes. I made the whole split image function work on a different isolate to avoid UI suspensions and lags so solved, as for the ram booming thing I tried clearing image cache as per this issue but it only works when the user leaves the list view with images page. While reading the story images, the ram increases as images are loaded and the list is scrolled. Any thoughts on measures I can do? By the way, I have a list view of images but when I split an image for being above 4000 pixels in height, it can be a nested list view for some children, maybe you need to know this.
Thank you for sticking up with my issues, you are a great help, thank you.

Great job on getting the technique to work asynchronously!
At this point, further issues may be easier to get feedback and help on from a community of developers rather than the github contributors. Flutter has a number of developer communities that can provide suggestions and ideas, you can find a list of them at the following URL:
https://flutter.dev/community

Is there any update ? 2 years ago and the issue still exist !!!

issue still exist?? flutter team ignoring this i dont know why !!!


Update bindings getValidator Return Type

Description
Update bindings for getValidator to return the ValidatorResponse instead of ValidatorsResponse
https://github.com/iotaledger/iota-sdk/blob/2.0/bindings/nodejs/lib/client/client.ts#L179
Motivation
Explain why this feature is needed.
Requirements
Write a list of what you want this feature to do.

Open questions (optional)
Use this section to ask any questions that are related to the feature.
Are you planning to do it yourself in a pull request?
Yes/No.

Closed by https://github.com/iotaledger/iota-sdk/pull/2059


New package: GoodGameModsLLC.Minion version 3.0

[ ] Have you signed the Contributor License Agreement?
[ ] Have you checked that there aren't other open pull requests for the same manifest update/change?
[ ] This PR only modifies one (1) manifest
[ ] Have you validated your manifest locally with winget validate --manifest <path>?
[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.6 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

This application encountered installation failure in a previous attempt, requiring user input in another pull request. Consequently, I terminated that process and initiated a new one, utilizing the "InstallModes: interactive" switch. This is currently the sole viable method to integrate this package into the winget repository.


(ArgumentError) defdelegate function is calling itself on elixir 1.14 with otp 25

Describe the bug
I upgraded otp and elixir versions in a project and I'm getting this error on compilation:
Compiling 130 files (.ex)

== Compilation error in file lib/surface/type_handler/default.ex ==
** (ArgumentError) defdelegate function is calling itself, which will lead to an infinite loop. You should either change the value of the :to option or specify the :as option
    (elixir 1.14.0-dev) lib/kernel/utils.ex:32: Kernel.Utils.defdelegate_all/3
    lib/surface/type_handler/default.ex:4: (module)
    (elixir 1.14.0-dev) lib/kernel/parallel_compiler.ex:346: anonymous fn/5 in Kernel.ParallelCompiler.spawn_workers/7
could not compile dependency :surface, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile surface", update it with "mix deps.update surface" or clean it with "mix deps.clean surface"

How to reproduce it

install elixir 1.14-dev and otp 25

The behavior you expected
Your Environment
"surface":  :surface, "0.7.4",
"phoenix_live_view": :phoenix_live_view, "0.17.10",
elixir - current main

Fixed in c2b4081c37603619e80a41eb3395b20e338129c7.

Fixed in c2b4081c37603619e80a41eb3395b20e338129c7.

@msaraiva Would it make sense to publish this change to hex under 0.7.5?

Just released 0v.7.6 with that fix.


Roll Engine from e022c9283c40 to d57fd23ab5f3 (14 revisions)

https://github.com/flutter/engine/compare/e022c9283c40...d57fd23ab5f3
2021-11-12<EMAIL_ADDRESS>Roll Skia from 7ee4dec0e5f7 to<PHONE_NUMBER>a1 (1 revision) (flutter/engine#29708)
2021-11-12<EMAIL_ADDRESS>Roll Fuchsia Mac SDK from ca-vNrmeQ... to Z6Jtle7_y... (flutter/engine#29707)
2021-11-12<EMAIL_ADDRESS>Revert "Build DisplayList directly from flutter::Canvas" (flutter/engine#29693)
2021-11-12<EMAIL_ADDRESS>Roll Skia from c7074cb7ab90 to 7ee4dec0e5f7 (3 revisions) (flutter/engine#29705)
2021-11-12<EMAIL_ADDRESS>Roll Skia from 32451cf9bc34 to c7074cb7ab90 (1 revision) (flutter/engine#29704)
2021-11-12<EMAIL_ADDRESS>Roll Skia from c0ff5a856053 to 32451cf9bc34 (1 revision) (flutter/engine#29703)
2021-11-12<EMAIL_ADDRESS>Roll Skia from f0f447c2f02c to c0ff5a856053 (1 revision) (flutter/engine#29702)
2021-11-12<EMAIL_ADDRESS>Roll Fuchsia Linux SDK from wPLQY_mp4... to 6hwlgUFn0... (flutter/engine#29701)
2021-11-12<EMAIL_ADDRESS>Roll Skia from 6d823b35fa38 to f0f447c2f02c (1 revision) (flutter/engine#29698)
2021-11-12<EMAIL_ADDRESS>Roll Dart SDK from 38e7078fa2b7 to 5eac867c44fc (23 revisions) (flutter/engine#29699)
2021-11-12<EMAIL_ADDRESS>Add test facets to test_suite.cml (flutter/engine#29697)
2021-11-11<EMAIL_ADDRESS>Roll Skia from 33c8f05bbdc1 to 6d823b35fa38 (14 revisions) (flutter/engine#29695)
2021-11-11<EMAIL_ADDRESS>Roll Fuchsia Mac SDK from qbhxap4ds... to ca-vNrmeQ... (flutter/engine#29691)
2021-11-11<EMAIL_ADDRESS>[web] move all build artifacts under web_ui/build (flutter/engine#29666)
Also rolling transitive DEPS:
fuchsia/sdk/core/linux-amd64 from wPLQY_mp4sem to 6hwlgUFn0D_l
fuchsia/sdk/core/mac-amd64 from qbhxap4ds1RX to Z6Jtle7_y2NV
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Commit queue failed; closing this roll.


docs: dfns new signer

Pull Request Checklist

[x] Did you add new tests and confirm existing tests pass? (yarn test)
[x] Did you update relevant docs? (docs are found in the site folder, and guidelines for updating/adding docs can be found in the contribution guide)
[x] Do your commits follow the Conventional Commits standard?
[x] Does your PR title also follow the Conventional Commits standard?
[x] If you have a breaking change, is it correctly reflected in your commit message? (e.g. feat!: breaking change)
[x] Did you run lint (yarn lint:check) and fix any issues? (yarn lint:write)
[x] Did you follow the contribution guidelines?

PR-Codex overview
Detailed summary

Added Dfns to the navigation menu in the Vitepress configuration.
Added imports and code related to Dfns in dfns.ts.
Added a new markdown file dfns.md with a guide for using Dfns as a signer.
Added code examples and instructions for installing Dfns SDK and creating a SmartAccountSigner in dfns.md.
Updated an example file example.ts to include the createDfnsSigner function and use it with a Light Account.

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

last few nits.
also, do you want to add them to overview.md or anything else? otherwise, feel free to ship after these last changes.

Don't think signers are added individually anywhere else? Don't see this in overview.md


docs: add TBRN in tbrn.rst

Pull Request Test Coverage Report for Build 852630841

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 80.973%

Totals

Change from base Build 850140227:
0.0%

Covered Lines:
4243

Relevant Lines:
5240

💛  - Coveralls


Changing TextArea valid prop to isValid

Fixes issue #420 :smoking:

looks good.

This closes issue #420


Change wording from "on Ethereum" to "on any EVM chain" throughout the app

Description
I believe that how we word things is extremely important. When people see the unfurl of abi ninja on twitter or check the github repo, most of them are like: "aaah it says ethereum so it must only work on ethereum."
To avoid this, let's change every "on Ethereum" to "on any EVM chain". This ensures that people do not think that abi ninja only works on Ethereum.
By making this change I think that we will be able to get more people from twitter or where they mostly see the unfurl image first.
This PR:

Changes "on Ethereum" to "on any EVM chain" throughout the app.

Related Issues
Fixes #148

Just noticed that I need to ask @andrealbiac for the thumbnail.png

Changed from "any contract" to "smart contracts" throughout the app.
Waiting for the unfurl from Andrea. As soon as that arrives, will convert this to Ready for review


More detail on dedicated submodule

Hi, I'm interested in trying out this library, it looks like a great addition to the Elixir testing landscape! I was curious about this sentence in the readme:

Note that Efx generates and implements a behavior. Thus, it is recommended, to move side effects to a dedicated submodule, e.g. MyModule.Effects, to not accidentally interfere with existing behaviors.

What would it look like to create a separate effects submodule? Is that only required/recommended if you want your module to define a behaviour?

In our project, we decided to create a submodule for effectful functions all the time. Lets assume we have the MyModule from the docs, we wouldn't move the read_file! and write_file! functions to this very module, but to MyModule.Effects. That way, we have the effects grouped and the calls (i.e. to Effects.read_file!(...)) stand out more.
That said, if you don't want to define a behaviour in MyModule, it's just taste. There is not technical reason to not implement effects directly in the same module.

I added an example to the readme. Feel free to ask more questions if something is unclear or doesn't work as expected.
I'll close the issue for now.

Ah, thank you. That's quite helpful 👍


Add support for multiple JWK Sets

The purpose of this pull request is to add support for multiple JWK Sets. This allows keyfunc to pull remote JWKS resources from multiple URLs and provide one jwt.Keyfunc to from them.
This pull request is intended to resolve https://github.com/MicahParks/keyfunc/issues/72.

I'll keep this PR open until Thursday night EST. Please let me know if any changes would be good or if it's fine as-is, @aklinkert. I'd like to hear your opinion.
Anyone else is free to comment as well.


BUG: Local item graph contains everything when user is a manager

Somehow being a "manager" of a set of samples means that the item graph renders everything, making sample page loading very slow and unhelpful.

Actually, role doesn't matter, it's only admins that it works for -- this is bad


Failed to parse most youtube videos

[ ] I'm reporting a broken site support issue
[ ] I've verified that I'm running youtube-dl version 2019.06.21
[ ] I've checked that all provided URLs are alive and playable in a browser
[ ] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[ ] I've searched the bugtracker for similar bug reports including closed ones
[x] I've read bugs section in FAQ

Verbose log
[root@6bbfc6dbc81c data]# /opt/youtube-dl/youtube-dl --extract-audio --audio-format mp3 https://www.youtube.com/watch?v=nbfjRI7-wXM -v -o test1.mp3
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'--extract-audio', u'--audio-format', u'mp3', u'https://www.youtube.com/watch?v=nbfjRI7-wXM', u'-v', u'-o', u'test1.mp3']
WARNING: Assuming --restrict-filenames since file system encoding cannot encode all characters. Set the LC_ALL environment variable to fix this.
[debug] Encodings: locale ANSI_X3.4-1968, fs ANSI_X3.4-1968, out ANSI_X3.4-1968, pref ANSI_X3.4-1968
[debug] youtube-dl version 2019.06.08
[debug] Python version 2.7.5 (CPython) - Linux-3.10.0-327.4.4.el7.centos.plus.x86_64-x86_64-with-centos-7.3.1611-Core
[debug] exe versions: ffmpeg 2.6.8, ffprobe 2.6.8
[debug] Proxy map: {}
[youtube] nbfjRI7-wXM: Downloading webpage
[youtube] nbfjRI7-wXM: Downloading video info webpage
[youtube] {18} signature length 104, html5 player vfl49f_g4
[youtube] nbfjRI7-wXM: Downloading player https://www.youtube.com/yts/jsbin/player_ias-vfl49f_g4/en_US/base.js
ERROR: Signature extraction failed: Traceback (most recent call last):
  File "/opt/youtube-dl/youtube-dl/youtube_dl/extractor/youtube.py", line 1342, in _decrypt_signature
    video_id, player_url, s
  File "/opt/youtube-dl/youtube-dl/youtube_dl/extractor/youtube.py", line 1250, in _extract_signature_function
    res = self._parse_sig_js(code)
  File "/opt/youtube-dl/youtube-dl/youtube_dl/extractor/youtube.py", line 1314, in _parse_sig_js
    jscode, 'Initial JS player signature function name', group='sig')
  File "/opt/youtube-dl/youtube-dl/youtube_dl/extractor/common.py", line 1005, in _search_regex
    raise RegexNotFoundError('Unable to extract %s' % _name)
RegexNotFoundError: Unable to extract Initial JS player signature function name; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
 (caused by RegexNotFoundError(u'Unable to extract \x1b[0;34mInitial JS player signature function name\x1b[0m; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.',)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/opt/youtube-dl/youtube-dl/youtube_dl/extractor/youtube.py", line 1342, in _decrypt_signature
    video_id, player_url, s
  File "/opt/youtube-dl/youtube-dl/youtube_dl/extractor/youtube.py", line 1250, in _extract_signature_function
    res = self._parse_sig_js(code)
  File "/opt/youtube-dl/youtube-dl/youtube_dl/extractor/youtube.py", line 1314, in _parse_sig_js
    jscode, 'Initial JS player signature function name', group='sig')
  File "/opt/youtube-dl/youtube-dl/youtube_dl/extractor/common.py", line 1005, in _search_regex
    raise RegexNotFoundError('Unable to extract %s' % _name)
RegexNotFoundError: Unable to extract Initial JS player signature function name; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/opt/youtube-dl/youtube-dl/youtube_dl/YoutubeDL.py", line 796, in extract_info
    ie_result = ie.extract(url)
  File "/opt/youtube-dl/youtube-dl/youtube_dl/extractor/common.py", line 530, in extract
    ie_result = self._real_extract(url)
  File "/opt/youtube-dl/youtube-dl/youtube_dl/extractor/youtube.py", line 1986, in _real_extract
    encrypted_sig, video_id, player_url, age_gate)
  File "/opt/youtube-dl/youtube-dl/youtube_dl/extractor/youtube.py", line 1352, in _decrypt_signature
    'Signature extraction failed: ' + tb, cause=e)
ExtractorError: Signature extraction failed: Traceback (most recent call last):
  File "/opt/youtube-dl/youtube-dl/youtube_dl/extractor/youtube.py", line 1342, in _decrypt_signature
    video_id, player_url, s
  File "/opt/youtube-dl/youtube-dl/youtube_dl/extractor/youtube.py", line 1250, in _extract_signature_function
    res = self._parse_sig_js(code)
  File "/opt/youtube-dl/youtube-dl/youtube_dl/extractor/youtube.py", line 1314, in _parse_sig_js
    jscode, 'Initial JS player signature function name', group='sig')
  File "/opt/youtube-dl/youtube-dl/youtube_dl/extractor/common.py", line 1005, in _search_regex
    raise RegexNotFoundError('Unable to extract %s' % _name)
RegexNotFoundError: Unable to extract Initial JS player signature function name; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
 (caused by RegexNotFoundError(u'Unable to extract \x1b[0;34mInitial JS player signature function name\x1b[0m; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.',)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

Description

The most videos from youtube started to fail while converting to mp3

Thanks for supporting this amazing script. Yes after the update it is working.


[Event Request] Codeunit 80 Sales-Post subsitute GLAccount in CreatePrepaymentLines

Can you please provide a publisher that we can change the GL Account for the sales prepayment account. In our solution we have to get the GL Account base upon the VAT Posting Groups of the SalesLine.
local procedure CreatePrepaymentLines(SalesHeader: Record "Sales Header"; CompleteFunctionality: Boolean)
var
  ...
begin
       ...
                if "Prepmt Amt to Deduct" <> 0 then begin
                    if ("Gen. Bus. Posting Group" <> GenPostingSetup."Gen. Bus. Posting Group") or
                       ("Gen. Prod. Posting Group" <> GenPostingSetup."Gen. Prod. Posting Group")
                    then
                        GenPostingSetup.Get("Gen. Bus. Posting Group", "Gen. Prod. Posting Group");
                    GLAcc.Get(GenPostingSetup.GetSalesPrepmtAccount());
                    // -NewEvent
                    OnAfterGetSalesPrepmtAccount(GLAcc, TempSalesLine);
                    // +NewEvent
                    TempLineFound := false;
                    if SalesHeader."Compress Prepayment" then begin
                        TempPrepmtSalesLine.SetRange("No.", GLAcc."No.");
                        TempPrepmtSalesLine.SetRange("Dimension Set ID", "Dimension Set ID");
                        OnCreatePrepaymentLinesOnAfterTempPrepmtSalesLineSetFilters(TempPrepmtSalesLine, TempSalesLine);
                        TempLineFound := TempPrepmtSalesLine.FindFirst();
                    end;
                    if TempLineFound then begin

Publisher signature
// -NewEvent
[IntegrationEvent(false, false)]
local procedure OnAfterGetSalesPrepmtAccount(var GLAccount: Record "G/L Account"; TempSalesLine: Record "Sales Line" temporary)
begin

end;
// +NewEvent

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 43560.


Requests library compatibility issue with chardet2

Any plans to update this library? I can't even install it, and I think it's a dependency compatability issue (requests and compat2?)
  Using cached https://files.pythonhosted.org/packages/fa/d1/0dd60e1146e79e7b193e7b0189d8c13ef100d55cbfe65e1825ac5f03c397/requests-0.14.2.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-n9u2f5pi/requests/setup.py", line 6, in <module>
        import requests
      File "/tmp/pip-install-n9u2f5pi/requests/requests/__init__.py", line 52, in <module>
        from . import utils
      File "/tmp/pip-install-n9u2f5pi/requests/requests/utils.py", line 22, in <module>
        from .compat import parse_http_list as _parse_list_header
      File "/tmp/pip-install-n9u2f5pi/requests/requests/compat.py", line 112, in <module>
        from .packages import chardet2 as chardet
    ImportError: cannot import name 'chardet2'

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-install-n9u2f5pi/requests/

This project appears to no longer be maintained. The readme points to flask-oauth2-login, you might have more luck with that.


429 implement platform specific multiplatform navigation interfaces

Description
Addresses issue https://github.com/bumble-tech/appyx/issues/429

Implemented PlatformBackHandler for desktop and web platforms
Implemented NodeHost convenience wrappers to simplify creating the Appyx entry point for desktop and web platforms
Created working versions of navigation demos for both desktop and web, as proof of concept

Note: DatingCardsNode demo node is unsupported as there's not currently a good multiplatform image loading solution. Coil is looking to support multiplatform image loading in 3.0 release which is in active development, so rather than hack around this issue now it makes sense to wait and revisit when support is available. Alternatively we could look at other image loading libraries in the interim.
Check list

[ ] I have updated CHANGELOG.md if required.
[ ] I have updated documentation if required.

DatingCardsNode demo node is unsupported as there's not currently a good multiplatform image loading solution

We could do it without images, the same as in https://bumble-tech.github.io/appyx/components/experimental/


How calculated robot grasp(g') and image grasp(g) relation  g'=T(RC)*(T(CI)*g).

If all elements represents matrices then what was the dimension of each elements.
as T(CI) is 3*3 by default
can you detail how you used that procedure to get transformation between robot and camera?

Hi @priyashkla
That wasn't meant to be a literal matrix equation.  In theory there's a number of ways you can do this, and depends what information you have.
Normally you would do it in two steps:

Inverse of the 3x3 projection matrix (K) and measured depth (z) to get camera coordinates

Get world (robot) coordinates using the appropriate 4x4 transform matrix (T) between camera and robot:

The intrinsic matrix and camera extrinsic matrix can also both be represented as 4x4 homogenous transforms, or a single 4x4 camera matrix which allow you to do this in a single step.
Practically speaking, what we actually did here for our ROS implementation was:

Compute the position of the point in the frame (this is equivalent to the inverse of K, but hardcoded):
https://github.com/dougsm/mvp_grasp/blob/master/ggcnn/ros_nodes/ggcnn_predict_rt.py#L95

Use tf to compute and apply the transform from the camera frame to the robot frame automatically based on our URDF:
https://github.com/dougsm/mvp_grasp/blob/master/dougsm_helpers/src/dougsm_helpers/tf_helpers.py#L35

This article also discusses the inverse projection problem quite well: https://towardsdatascience.com/inverse-projection-transformation-c866ccedef1c
Hope that helps.

For transformation from g to  g' , you included position only ? If no then how parameters have been used during transformation?position mapping is linear but orientation mapping is highly non linear because for any specific pose more than one orientation can give same result

Once you have the x, y, z component in the camera frame, you can copmute a full pose including rotation in the frame of the camera by using the grasp angle as the yaw angle , like we do here (also includes some angle wrapping), in thise case as a quaternion in the pose. https://github.com/dougsm/mvp_grasp/blob/master/ggcnn/ros_nodes/ggcnn_service.py#L109
If you want to think about this in terms of matrices, then the two position vectors in step 2 above would just become 4x4 pose matrices and the maths is the same.  In practice though, we just represent thse a ROS Pose type and convert using tf as I mentioned above.


Linking views and dependencies

1. Linking overview and detail pages, e.g., see Alfie's top-level overview screen view
a -> b -> c
or
[a] -> d
2. Min/Max

We solved Point (1), but Point (2) Min/Max is still not solved.


Update pre-release format

/cc @richlander

Hi @ericstj, I'm your friendly neighborhood .NET Foundation Pull Request Bot (You can call me DNFBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by .NET Foundation and real humans are currently evaluating your PR.
TTYL, DNFBOT;

LGTM


Game description

show a nice description of the game and its stats, like how many players required, etc. screenshots too maybe?

done in 746315d483f0eb27ead186dd10e92717d79df6eb


[FLOC-2733] Versioned configuration

Design for FLOC-2733, this PR should be closed without merging.
As per discussion with @itamarst the test infrastructure here includes configuration_vX.json files containing the actual JSON blob for a particular versioned config, as well as a corresponding .py file that is capable of generating such a versioned config. The supporting Python file references the Git commit hash for a version of Flocker itself that generates JSON configs in that version, with the generating code also provided for reference.
Migrations are performed sequentially up to the latest config version, so for example for a version 4 config where a version 1 is found when the persistence service starts, the service will sequentially upgrade 1-2, 2-3, then 3-4.

I'm mostly happy with this, given comments above, with the caveat that the important bit is testing. So I'll assign this to @exarkun to flesh out that part of the review since he has relevant experience.

More generally, can you highlight how this is different from the original proposal? Versioning in file itself, what else?

More generally, can you highlight how this is different from the original proposal? Versioning in file itself, what else?

So yeah, this introduces a Configuration model object that contains the version as part of the persisted state. We drop the .v1.json file naming and replace that with all future versions having a set filename of current_configuration.json. Downward migrations have been dropped, with migrations taking place in a single ConfigurationMigration class, which defines individual upgrade methods for Vx to Vy. These are called by a migrate_configuration method that sequentially performs upgrades from x to y (so that logic's been moved from the original proposal) and will throw a specific exception if a migration path is not defined (e.g. no v2_v3 migration method exists). The migration methods themselves will take JSON (in this design, as you pointed out, that's a JSON string but can be a dictionary of parsed JSON in the implementation) and transform it before passing their results to the existing generic serialization and deserialization methods (the wire_ methods). The differences in structure should make it easier to keep consistent configuration tests and see these tests break if we change a model (because we will no longer be able to parse previously valid configurations in to models with changed fields).
Not radically different to my first proposal, but different enough that I feel this will better accommodate further improvement for a long-term solution. I played around with a lot of different ideas in previous iterations of this branch, including versioned model classes and describing models purely as JSON schema (with the resulting PRecord derivative classes being generated on the fly). I got encouraging results playing around with the latter, but also determined a full implementation of that strategy would be quite complicated and probably out of scope for this issue.

I also looked on Friday last week at the idea of producing some kind of hashed representation of a model class's fields in the persisted state to ensure that matched up against the current model definitions in our code, but a) it was problematic to do that in any consistent, reliable and not grossly hacky way and b) it didn't really add much value to the developer experience.
Mainly we want to see a test break if some part of the persisted state changes in our code, e.g. if we add a field to a model. But we can accomplish that in this branch's implementation by exercising a greater range of model tests than we currently have. The only case I can think of where adding a field might then not automatically break a test would be a field that was not mandatory, or had an initial default value and in either of those cases, by definition those would be changes that would not break code utilising the models, so there'd be no reason for them to make existing tests fail - you'd just need new tests to exercise the new field.

I have simplified the design a bit now, using a v1_to_latest config test in the test suite. It is possible to write individual upgrade path tests for the unit testing of the ConfigurationMigration methods, which we would do in the implementation in addition to an overall "upgrade version 1 to latest" test.

Oh and this design version doesn't include logging the upgrades, but logging will be added in the implementation.

OK, so with all my comments above addressed this part of the design should work. However, Jean-Paul's point that we need way to automatically catch model changes still stands, and model hashes do seem the easiest way to do this. I'll open a separate issue for that, though.
Please pick someone to work with you on this and proceed.


Add  app.UseHttpsRedirection() if required to API and/or admin when adding native HTTPS support

The default .NET web templates use this setting:
// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{
    app.UseMigrationsEndPoint();
}
else
{
    >> app.UseHttpsRedirection();
    app.UseExceptionHandler("/Error", createScopeForErrors: true);
    app.UseHsts();
}

As of right now the docker setup only supports HTTP and expects a reverse proxy to handle the HTTPS and SSL.
The reason the app.UseHttpsRedirection(); part was removed is because it doesn't do anything when running the app in HTTP mode and throws these kind of errors in the log:
Failed to determine the https port for redirect.

TODO:
Later when adding in native HTTPS support to AliasVault the code above may be reinstated.

The current docker setup adds Nginx in front of AliasVault client and admin and enforces HTTPS by redirecting HTTP to HTTPS. So this is already resolved.


global: specific mappings for each es major version

[x] Add support for defining mappings per major ES version:

mappings/
mappings/v5/...
mappings/v6/...

[ ] Check if mapping incompatibility in ES is per major version
[ ] Templates support

WRT Check if mapping incompatibility in ES is per major version Elastic seems not to introduce any API breaking changes between minor versions. Breaking changes between minor versions affect things like the Java API, Packaging, Settings, etc (see, for example, https://www.elastic.co/guide/en/elasticsearch/reference/5.5/breaking-changes-5.2.html), so mappings and results are probably unaffected (the most "severe" change so far was introducing stricter boolean values)
API can (and probably will) break between major version, but for example some breaking changes from v2 to v5 Elastic introduced backwards compatibility: https://www.elastic.co/blog/strings-are-dead-long-live-strings (see section Backwards compatibility)


Cast numeric features from yahoo to float32

These features default to double precision floats,
casting to single precision floats to save memory.

Thanks @jeethu!


Page caching

Check https://guides.rubyonrails.org/v4.0/caching_with_rails.html#page-caching

Moved to clickup


Multiplayer/privacy concerns

Firstly, thanks for the very cool mod :smile:
The issue
Currently this mod directly downloads the image directly from the URL on a sign, which could lead to a player's IP address being leaked to other players when playing on a multiplayer server with the mod. A malicious player could create a sign such as the following:
!PS:https://my.evil.site/image.png

1:1:1:1:1.5

Which would download the image from my.evil.site and leak the player's IP to the owner when they get close enough.
Some solutions
This can be prevented by using an image proxying service such as DuckDuckGo's to download images with.
For example, there is a copy of my profile picture at https://ashisbored.github.io/assets/ash.png, and when fetched via DuckDuckGo's proxy, the URL becomes https://proxy.duckduckgo.com/iu/?u=https%3A%2F%2Fashisbored.github.io%2Fassets%2Fash.png.
This would prevent the above malicious site from seeing the player's IP, as the URL the request the client would be to proxy.duckduckgo.com rather than my.evil.site, which would only see a DuckDuckGo IP.
This proxying is common in other applications that display images from other sites directly to the user, such as Discord and GitHub.
I would also suggest adding a config option to use a custom proxy, as well as an option to disable downloading images when in multiplayer environments, combined with an allow/trustlist to only allow fetching images when on specific servers trusted by the player.

I added a feature called safe mode in 1.2.0, that only allows images to be loaded from imgur and imgbb.
Thanks for helping to make the mod more secure :)


ci: add OSSAR static analysis workflow

Introduce a new static analysis workflow (OSSAR) to check for potential problems.

Undone with push --force-with-lease, I made a mistake introducing OSSAR. It seems unmaintained since 2020.


Error trying execute sync process on electron

Seems that electron have a problem executing sync process in the rendered main process. And it's blocking the core operations of GitPie. add commit checkout init.
https://github.com/atom/electron/issues/3482
The problem not occurs if you executing the application using npm start >> electron .

Fixed


Add test using .NET Core 2.1 Pluggable Agent

:tada: This issue has been resolved in version 2.0.0-alpha8 :tada:
The release is available on:

GitHub Release
NuGet Package


How to improve the performance of allocating large memory？

I need to allocate and free 10MB-10GB of contiguous memory frequently, but the performance is poor with the default settings, usually taking several seconds. And glibc only takes a few milliseconds

test result (unit: ms)
| Single request size（Byte） | c/c++ malloc(glibc 2.28) | AppShift | TcMalloc（gperftools-2.10） | JeMalloc
-- | -- | -- | -- | -- | --
1 | 8 |   |   | 0.016916 | 0.010634
2 | 80 |   |   | 0.004606 | 0.003677
3 | 800 |   |   | 0.008979 | 0.003714
4 | 8K | 0.013724 | 0.01261 | 0.018551 | 0.013874
5 | 80K | 0.037941 | 0.035454 | 0.04619 | 0.0222
6 | 800K | 0.320546 | 0.33444 | 0.37236 | 0.354104
7 | 8M | 2.70192 | 3.95689 | 2.95356 | 5.40726
8 | 80M | 0.269538 | 83.0855 | 54.312 | 82.6039
9 | 800M | 5.61231 | 840.573 | 618.184 | 840.386
10 | 1600M | 13.3422 | 1685.31 | 1287.75 | 1718.55
11 | 2400M | 36.4314 | 2555.01 | 2182.37 | 2534.11
12 | 4000M | 64.4453 | 4230.12 | 3465.28 | 4220.24
13 | 7200M | 132.343 | 7621.62 | 6804.15 | 7594.2
test pseudocode code:
row_count_sequence: {1, 10, 100, 1 * 1024, 10 * 1024, 100 * 1024, 200 * 1024, 300 * 1024, 500 * 1024, 900 * 1024}

Test(row_count)
{
    row_count*=1024;
    for (int i = 0; i < 10; i++)
    {
        p = malloc(row_count);
        free(p);
    }
}

Consider trying with TCMALLOC_RELEASE_RATE=0 environment variable. Would make us competitive.

But you should expect there are similar tweakings available in competing mallocs. Downside to such setting is, over time, if if do those allocations over long time and they won't be fixed size, you'll see nontrivial fragmentation (ratio of memory spent to memory actually used by your program). So careful returning of memory to kernel is likely to be needed.

sorry ,my fault

But after testing, it is the tc_calloc speed is low, can this aspect continue to be optimized?

Show me your benchmark. Thing is jemalloc has one optimizaion for calloc, but it only applies whenever we're dealing with memory freshly obtained from the kernel. Which is what we're avoiding here anyways. It is reason I'm not eager to get similar optimization in gperftools.
So I suspect you get "slow" calloc because your benchmark doesn't reflect real application use case. Or not. So show me what it is that is slow and I might be able to help.

closing for inactivity


improved css + added about content. (unstyled)

I am slowly adding content to 1 page at a time. About page is done. Working on projects page.


Add allowedLocations property to registered preferences

For some preferences it doesn't make sense to allow users to store them at a specific location. Preference values that refer to asset uuids for instance, such as the list of entry points in the build view. There's no point in storing this in a workspace or globally, since other projects don't have access to these assets.

Once this is added, some of the preferences in autoRegisterPreferences.js need to be updated with this property.

Some thoughts on which approach to take
types of prefs and their potential locations

allow remote incoming connections

for security reasons, only allow "global" and "project", default to "project"

build window entry points

only allow "project" and "window - project", others don't make sense since the uuid is bound to the project

possible approaches

denylist

may not be future proof:

when a new location is added, some prefs might not support it, and will break because it didn't have a denylist before

pretty uncommon I think, prefs only seem have an allow list for security reasons, or because the prefs reference project assets. All these scenarios would already be broken if they had a missing allowlist

allowList

also may not be future proof:

suffers from the same issue as the denylist
when a new location is added, some prefs do support it, but already had an allow list with the new location missing

not that big of a problem, it won't really be a breaking change since the location was recently added. So before this change the location wasn't there anyway.

will be a pretty long list if you only want to exclude one location

presets

so far it seems like there's only two reasons to restrict locations, security, and project related preferences. Using two presets like this means we can modify the locations for presets later on.


About padding operation(迷之操作) during inference!

Feng wang:
I tried to understand padding operations during inference but failed. You should give an explanation.
Following the original CenterNet implementation, replacing the padding with CenterAffine, mAP drops to 28% compared with original 34.4% performance!
You are expected to give the reason!

code here might be helpful. During inference, image padding is applied on four side, and a new affine matrix is calculated. Did you forget such an operation?

@FateScript code aims to generate affine matrix to map the regressed box results to image size. Because the regressed boxes downsample 4 according to code, thus we need to map regressed boxes to origin image size. I still can not figure out the reason why using image padding and why the performance drops when using cv2.warpAffine to resize the original image.

Did you retrain your model since you are using a different augmentation?

@FateScript @jiangzhengkai
Hi~ I follow you guys for a very long time! It is very exciting to see you two battle~
However, I am a little confused about: Is there difference between image padding applied on four sides and only right bottom sides?

@PeizeSun Amazing to talk as here with feng wang.

Did you retrain your model since you are using a different augmentation?

When training, CenterAffine is used to do augmentation, no padding. So, why do we need to retrain the model?

Did you retrain your model since you are using a different augmentation?

When training, CenterAffine is used to do augmentation, no padding. So, why do we need to retrain the model?

Since you are using a different aug which might bring difference between training and infernce.

got it!


Projections rebuild

I wonder in case of rebuilding all projections is there an easy way for getting all aggregates and rebuild their projections. We do have repository.get_entity() no repository.get_entities().

Good point. It would be nice to have a method record_manager.get_sequence_ids() which could be used by repository.get_entities(). get_sequence_ids() could be implemented across all the library's record managers.
The problem is that unless the transaction isolation level is increased from the default ("read committed"), so-called "read skews" will occur when, concurrently with the above operation, new events are also being appended. So probably the better approach is to use upstream notification logs with downstream tracking records committed in the same atomic transaction as the projection records. That should be as reliable as database transactions.
I got a first draft of the "Process" class working this morning. It's a subclass of SimpleApplication which functions as a projection, responding to its own notification log, so you can automatically step a set of aggregates through an arbitrary sequence of state transitions. I didn't implement partitioning of notification logs, so a process can scale above the throughput limits of a single sequence, but it seems doable. I'm sure many other will already have arrived at this solution, but I can't find anything online.


[BUG] opensearch-plugin doesn't work behind a proxy

Describe the bug
The opensearch-plugin CLI doesn't work, when it's behind a HTTP proxy. This worked in Elasticsearch-OSS (6.7) and also works in Elasticsearch (8.x), so this is a bug in my opinion.
To Reproduce
Steps to reproduce the behavior:

Use a server which doesn't have a direct internet connection, and needs a HTTP proxy to reach the internet.
Try to install any plugin with opensearch-plugin install.
Wait for the installation to time out.
See exception.

Expected behavior
The plugin is downloaded immediately and installed.
Host/Environment (please complete the following information):

OS: Debian 11 Bullseye
Version 2.8.0

Additional context
# /usr/share/opensearch/bin/opensearch-plugin install repository-s3 -v
-> Installing repository-s3
Checking if url exists: https://artifacts.opensearch.org/releases/plugins/repository-s3/2.8.0/repository-s3-linux-x64-2.8.0.zip
-> Failed installing repository-s3
-> Rolling back repository-s3
-> Rolled back repository-s3
Exception in thread "main" java.net.ConnectException: Connection timed out
	at java.base/sun.nio.ch.Net.connect0(Native Method)
	at java.base/sun.nio.ch.Net.connect(Net.java:579)
	at java.base/sun.nio.ch.Net.connect(Net.java:568)
	at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:588)
	at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:327)
	at java.base/java.net.Socket.connect(Socket.java:633)
	at java.base/sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:304)
	at java.base/sun.security.ssl.BaseSSLSocketImpl.connect(BaseSSLSocketImpl.java:174)
	at java.base/sun.net.NetworkClient.doConnect(NetworkClient.java:183)
	at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:531)
	at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:636)
	at java.base/sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:266)
	at java.base/sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:380)
	at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:193)
	at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1242)
	at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1128)
	at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:179)
	at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:142)
	at org.opensearch.plugins.InstallPluginCommand.urlExists(InstallPluginCommand.java:426)
	at org.opensearch.plugins.InstallPluginCommand.getOpenSearchUrl(InstallPluginCommand.java:393)
	at org.opensearch.plugins.InstallPluginCommand.download(InstallPluginCommand.java:310)
	at org.opensearch.plugins.InstallPluginCommand.execute(InstallPluginCommand.java:273)
	at org.opensearch.plugins.InstallPluginCommand.execute(InstallPluginCommand.java:250)
	at org.opensearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:104)
	at org.opensearch.cli.Command.mainWithoutErrorHandling(Command.java:138)
	at org.opensearch.cli.MultiCommand.execute(MultiCommand.java:104)
	at org.opensearch.cli.Command.mainWithoutErrorHandling(Command.java:138)
	at org.opensearch.cli.Command.main(Command.java:101)
	at org.opensearch.plugins.PluginCli.main(PluginCli.java:60)

I've tried setting a proxy with different methods, but none of these worked:

CLI_JAVA_OPTS environment variable as used in Elasticsearch 8.x -> https://www.elastic.co/guide/en/elasticsearch/plugins/current/_other_command_line_parameters.html#_proxy_settings
ES_JAVA_OPTS environment variable (same values as CLI_JAVA_OPTS), which I've been using with Elasticsearch-OSS 6.7 until now
HTTP_PROXY, HTTPS_PROXY, http_proxy and https_proxy environment variables.

Hi @rlueckl, the java opts environment variable used by OpenSearch is OPENSEARCH_JAVA_OPTS, could you please confirm whether using this environment variable to configure the proxy connection works for you?

Hi @Xtansia ,
yes, I can confirm, that it works with OPENSEARCH_JAVA_OPTS. Thank you!

Hi ,
@rlueckl  @Xtansia Could you please let me know how you did it ? Have you passed anything inside helm chart values ?
I have opensearch which is behind proxy and its not allowing to install Prometheus exporter using GitHub url.
error 👎
opensearch-plugin install https://github.com/aiven/prometheus-exporter-plugin-for-opensearch/releases/download/<IP_ADDRESS>/prometheus-exporter-<IP_ADDRESS>.zip
-> Installing https://github.com/aiven/prometheus-exporter-plugin-for-opensearch/releases/download/<IP_ADDRESS>/prometheus-exporter-<IP_ADDRESS>.zip
-> Downloading https://github.com/aiven/prometheus-exporter-plugin-for-opensearch/releases/download/<IP_ADDRESS>/prometheus-exporter-<IP_ADDRESS>.zip
-> Failed installing https://github.com/aiven/prometheus-exporter-plugin-for-opensearch/releases/download/<IP_ADDRESS>/prometheus-exporter-<IP_ADDRESS>.zip
-> Rolling back https://github.com/aiven/prometheus-exporter-plugin-for-opensearch/releases/download/<IP_ADDRESS>/prometheus-exporter-<IP_ADDRESS>.zip
-> Rolled back https://github.com/aiven/prometheus-exporter-plugin-for-opensearch/releases/download/<IP_ADDRESS>/prometheus-exporter-<IP_ADDRESS>.zip
Exception in thread "main" java.net.UnknownHostException: github.com

Hi @ashutoshkumaranshu ,
I've used the OPENSEARCH_JAVA_OPTS as suggested by @Xtansia.
For example:
sudo OPENSEARCH_JAVA_OPTS="-Dhttp.proxyHost=host_name -Dhttp.proxyPort=port_number -Dhttps.proxyHost=host_name -Dhttps.proxyPort=https_port_number" bin/opensearch-plugin install prometheus-exporter

You can use the Elasticsearch documentation for reference, just make sure to replace CLI_JAVA_OPTS with OPENSEARCH_JAVA_OPTS:
https://www.elastic.co/guide/en/elasticsearch/plugins/current/_other_command_line_parameters.html#_proxy_settings

Hi @rlueckl ,
This is the manual process right ?
Is there any way to do it using helm chart ? As we have deployed using helm on k8's.
Thanks in advance !


assume public network is available, so remove the pip_binary image

假定可以访问外网，所以去掉了 pip_binary。

Since calico role depends on the packages role, and some operations like "add node" depend on calico role, so i think it's not convenient when we can't reach public network even if we have a proxy.

@wchaoyi How do you think about this new commit?


Basic usage question

Pardon my ignorance, I'm very new to browserify-ication; how do I use this (awesome looking) package? I'm not using Node, just a plain old vanilla apache webserver. The /example/index.html gives me an error "require is not defined", which makes sense, but I'm not sure how to proceed.
So far I've:
1.) browserify-ied index.js to a bundle.js
2.) included bundle.js in my index.html file ()
Have tried a number of things from this point on with no success. Thanks for any help and the great package

to use crypto browserify, all you need to do is browserify a node module that uses node's
crypto  module. like many of the other core node modules, browserify will insert a javascript implementation to run in the browser.
if you have something like
//index.js
var crypto = require('crypto')
//etc

then do
browserify index.js > bundle.js
that is all. if that isn't working, you are probably missing something very basic.
you might want to try stackoverflow for questions like that?

to use crypto browserify, all you need to do is browserify a node module that uses node's
crypto  module. like many of the other core node modules, browserify will insert a javascript implementation to run in the browser.
if you have something like
//index.js
var crypto = require('crypto')
//etc

then do
browserify index.js > bundle.js
that is all. if that isn't working, you are probably missing something very basic.
you might want to try stackoverflow for questions like that?

Thanks, I almost posted on stackoverflow but this seemed a bit package specific, so I thought it would be better here. I'm not using node at all. I'd like to use crypto-browserify as in the "Browser" usage example here: https://www.npmjs.com/package/simple-random
E.g. in a plain vanillla index.html file, simple-random can be used as:

Sorry if you answered this, since I've only used node a few times for small local pet projects I'm not making the connection here.

`"use strict";
/*
The node.js modules to be ported to the client must be added
to the window.myNodeObjects object.
Once bundle has been included in html page
    <script src="bundle.js"></script>
javascript calls can be made to myNodeObjects.* eg
    var hash = myNodeObjects.crypto.createHash('md5').update("plaintext").digest("hex");;

*/
// manually add required constants to crypto (not browserified)
var crypto = require('crypto');
crypto.constants = {
RSA_PKCS1_PADDING: 1
};
// update the browser's myNodeObjects object
window.myNodeObjects = {
crypto: crypto
};
`

if you browserify this package with the -s <name> flag then this package will be available under that name, you probably don't want to use crypto as the name as that's taken but you could do browserify -s bCrypto < index.js > bundle.js

Ah, thank you guys. I was under the assumption that behavior was something that package authors had to specifically code to allow. None of the browserify tutorials I read have mentioned this, and for non-node apps this is essential. Thanks for the clarification, that helps immensely

see my fork to see some hassle free examples, i think the original repo example code is too old and has many unimplmeneted functions.
use bundle3.js on my repo
https://github.com/ziyiwang/crypto-browserify

Apart from using the bundle3.js file provided by @ziyiwang, is there an "official" way to use crypto-browserify without using browserify? I don't have a Nodejs project or module at all, my only goal is to use Nodejs's crypto module in the browser because window.crypto lacks a lot of functions.


Implement wrappers for GcRule.

This is part of the fixes for #79.  Introduce wrappers for GcRule, they will be needed to implement CreateTable().  The

PTAL.


Fix prepare_create_transaction leaving data in asset

prepare_create_transaction should strip out the data from the provided asset to pass into Transaction.create().

Current coverage is 97.87% (diff: 100%)

Merging #227 into master will not change coverage

@@             master       #227   diff @@
==========================================
  Files             9          9
  Lines           188        188
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
  Hits            184        184
  Misses            4          4
  Partials          0          0

Powered by Codecov. Last update c709ddb...0e822c7


Fix inconsistency in pick_fastest, add deprecation warning for future behavior change

Reference: #472
Handle the uncaught exception. The same empty lap object will be returned regardless of the value of by_time_only

I have no idea why or rather how the tests partially failed. But I'm pretty sure that it's not your fault 😅


add http monitor tests

What does this PR do?

The PR adds a UT for the HTTP monitoring package.

The first scenario is slow response from a server with different "agent" configuration for cleaning IDLE connections.
The second scenario is requests & responses with actual bodies
The third scenario is incomplete requests, which we make sure don't deny us from capturing other requests

In the PR I had to convert 2 hard coded values into configurable values (http_map_cleaner_interval_in_s, http_idle_connection_ttl_in_s), for both of them the hard coded values have become the default values.

Motivation
Testing a complex scenario for the eBPF agent.
Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

Reviewer's Checklist

[ ] If known, an appropriate milestone has been selected; otherwise the Triage milestone is set.
[ ] Use the major_change label if your change either has a major impact on the code base, is impacting multiple teams or is changing important well-established internals of the Agent. This label will be use during QA to make sure each team pay extra attention to the changed behavior. For any customer facing change use a releasenote.
[ ] A release note has been added or the changelog/no-changelog label has been applied.
[ ] Changed code has automated tests for its functionality.
[ ] Adequate QA/testing plan information is provided if the qa/skip-qa label is not applied.
[ ] At least one team/.. label has been applied, indicating the team(s) that should QA this change.
[ ] If applicable, docs team has been notified or an issue has been opened on the documentation repo.
[ ] If applicable, the need-change/operator and need-change/helm labels have been applied.
[ ] If applicable, the k8s/<min-version> label, indicating the lowest Kubernetes version compatible with this feature.
[ ] If applicable, the config template has been updated.

Rebased to main

rebased