Multi env refactor

Before submitting

[X] Was this discussed/approved via a Github issue? (no need for typos and docs improvements)
[X] Did you read the contributor guideline, Pull Request section?
[X] Did you make sure to update the docs?
[X] Did you write any new necessary tests?

What does this PR do?
This PR is a relatively large refactor, specifically in how the ExperienceSource works. The interface remains roughly the same as before, however, the ExperienceSource now contains a stepper() function which acts as an iterator which continuously yields new experience steps.
As well as this, the ExperienceSource has been refacfored to allow for multiple environments to be run once. This is an important feature as many algorithms require it and it allows RL models to run with a larger batch size.
Finally there are some general clean up changes to the models and tests.
Fixes # 88.
PR review
Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in Github issues there's a high chance it will not be merged.
Did you have fun?
:+1:

Hello @djbyrne! Thanks for updating this PR.

In the file pl_bolts/models/rl/dqn_model.py:

Line 198:72: E203 whitespace before ':'

In the file pl_bolts/models/rl/per_dqn_model.py:

Line 87:72: E203 whitespace before ':'

In the file pl_bolts/models/rl/reinforce_model.py:

Line 164:72: E203 whitespace before ':'

In the file pl_bolts/models/rl/vanilla_policy_gradient_model.py:

Line 134:72: E203 whitespace before ':'

In the file tests/datamodules/test_experience_sources.py:

Line 329:13: W503 line break before binary operator
Line 330:13: W503 line break before binary operator

lets merge this one, it is quite large...
@williamFalcon mind check it?

LGTM, @williamFalcon mind do final check?


Reduce dependency on global settings variable

Global variables make code less modular and therefore more difficult to test.
This PR attempts to reduce that dependency by refactoring out the usage of that variable and adding variables to the signature.  My pattern was generally this: I explicitly lay out the variables if there are at maximum two items used from the settings dictionary.  Otherwise, I present it as a kwargs argument with documentation about which inputs are used.
I would have attempted to refactor the entire file, but the PR was getting pretty big, so I'm submitting this for now to ease review.

Hi @gfyoung, sorry for the delay on this, it's been holidays in Canada.
This PR gives me errors under Python 2.7.10.
<snip>

Updating source ./extensions/gambling from https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/gambling-hosts
Updating source ./extensions/porn/clefspeare13 from https://raw.githubusercontent.com/Clefspeare13/pornhosts/master/<IP_ADDRESS>/hosts
Updating source ./extensions/porn/sinfonietta from https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/pornography-hosts
Updating source ./extensions/social from https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/social-hosts
==><IP_ADDRESS> <IP_ADDRESS><==
Traceback (most recent call last):
  File "updateHostsFile.py", line 1090, in <module>
    main()
  File "updateHostsFile.py", line 156, in main
    write_opening_header(final_file)
  File "updateHostsFile.py", line 591, in write_opening_header
    if header_params["extensions"]:
KeyError: u'extensions'
Failed to update hosts file
==><IP_ADDRESS> <IP_ADDRESS><==
Traceback (most recent call last):
  File "updateHostsFile.py", line 1090, in <module>
    main()
  File "updateHostsFile.py", line 156, in main
    write_opening_header(final_file)
  File "updateHostsFile.py", line 591, in write_opening_header
    if header_params["extensions"]:
KeyError: u'extensions'
Failed to update hosts file
==><IP_ADDRESS> <IP_ADDRESS><==
Traceback (most recent call last):
  File "updateHostsFile.py", line 1090, in <module>
    main()
  File "updateHostsFile.py", line 156, in main
    write_opening_header(final_file)
  File "updateHostsFile.py", line 591, in write_opening_header
    if header_params["extensions"]:
KeyError: u'extensions'
Failed to update hosts file
==><IP_ADDRESS> <IP_ADDRESS><==
Traceback (most recent call last):
  File "updateHostsFile.py", line 1090, in <module>
    main()
  File "updateHostsFile.py", line 156, in main
    write_opening_header(final_file)
  File "updateHostsFile.py", line 591, in write_opening_header
    if header_params["extensions"]:
KeyError: u'extensions'
Failed to update hosts file

.... and so on.

No worries, and happy belated Canada Day :)
Yikes!  That's probably me forgetting to pass in a kwarg somewhere.  Should be patched soon.

Works great!  Thank you @gfyoung !
Merging.


Page load event fired: false for the polymer 2.0 sample shopping app

I was trying to use rendertron for the polymer sample shopping app.
when I test it locally it works fine and fast.
after I deploy, and try to visit it as a bot, I got this error
10 second time budget limit reached.

PS: if you visit the page as a regular user everything is fine.
PPS: I removed all the pictures on purpose.

found the root of the problem. Since it's affecting something else, I will just make a new post for that issue.


[Question] How can I control the speed of sending requests?

For 1000 simulator users, the requests speed is not 1000resquest/second,
So how can I control the speed?

Use the min_waitand max_waitattributes of the Locust or TaskSet classes.
(See http://docs.locust.io/en/latest/writing-a-locustfile.html#the-min-wait-and-max-wait-attributes).
The idea with Locust is that you implement user behaviour using code, and then you choose how many users you want to simulate. Therefore there isn't a way of saying "I want to start my test with X number of requests/second".

@heyman Is it that every task will be executed once for every user in a second?

If you set both min_wait and max_wait to 1000, the wait time between the execution of two tasks will be 1 second, for each user. I you set min_wait and max_wait to 10000 and 40000, the average wait time between tasks, for each user, will be 25 seconds.

Understood. How can I compare locust with jmeter, may I compare the time for sending same number requests with jmeter and locust?

@heyman It seems locust use gevent to send requests, and gevent can not work with multi-core CPU(as 4-core CPU). Am I right?  In my test locust take more time than jmeter with large number of requests. If locust can solve the multi-core problem on this, it will be more powerful than other load testing tool as jmeter, I think. ~~

Yeah, to utilize multiple cores you should run Locust distributed (See: http://docs.locust.io/en/latest/running-locust-distributed.html)

@heyman Can I set the min_wait and max_wait to 0? If this, the time between executing is 0 also?

@yisake Yes

Many thanks！~~

@heyman I've done a test with locust and jmeter. In my test I simulate 800 users. And I capture the request with wireshark as below. Locust rps is 530rps, jmeter is 824.3KB/sec. From the speed for each. Jmeter is faster than locust, why this happended?

It doesn't make sense to compare RPS to KB/s. However I can see a number of reasons for why you might achieve higher throughput with JMeter in your set up. JMeter uses java threads for their "users" which let's them utilize all CPU cores (while using up a lot more memory). To utilize multiple CPU cores with Locust you must run it distributed with one master and multiple slave processes.
Overall Locust and JMeter take a quite different approach when it comes to load testing, and you should really use the one that suits your need best. If you want a framework for defining real user behaviour in code, and then simulating very large amounts of these users, I think Locust would be a good choice. If you just want to achieve a high RPS throughput to a few URL endpoints, you're probably better off with JMeter or even Apache Bench.

1.I agree with your point with the CPU cores difference between jmeter and locust.
2.My question is that as I simulate 800 users but why the packages/sec is just 473.607 as below? Is it should be 800packages/sec?

should be 800packages/sec

package != packet != request

@cgoldberg I've filter with http&&tcp.dstport==8000(as my server port is 8000), so the filter result is the speed for client sending requests.

@cgoldberg If the simuate user is 800.  The packet rate is almost 1000packets/sec.
So my result is that there's a limit load testing ability for 1 core. With multiple CPU cores, the packets rate for Locust will increase linearly. Right?

@yisake I really don't understand your questions or your use of english.  sorry.

@cgoldberg I'm sorry my english is not good. My question is that why the packet rate is different between 1 CPU-core and 2 CPU-core (1 slave and 2 slaves) with the same simulate user count ?  The RPS with 2 slaves(1096reps/sec) is higher than 1 slave (647reps/sec),

@cgoldberg How can I set different host(http://www.google.com/index and http://www.baidu.com/index) in one locust file ?

How can I set different host(http://www.google.com/index and http://www.baidu.com/index) in one locust file ?

You can specify a full URL (with hostname) when you make requests using the Locust client.
Please don't use the Locust Github issues unless you have real indication that there are actually real issues with Locust. This isn't the right forum to raise pure support questions. Especially if it's questions that has clear answers in the documentation.

@heyman Sorry for that, where can I ask for support, mail or any other tool ? Do you have any idea?

@yisake You could use StackOverflow. Personally I don't really have time to answer pure support requests.

@yisake  大兄弟，辛苦了。。


Multilanguage in ES doesn't work anymore

Since ArkOS V1.5 (12152020), no matter which language you select in the ES ADVANCED OPTIONS, the language remains in English.

All languages seem to work on my end except for DE and ES so those will need to be looked at and corrected.

With a fresh image, I see the issue you're experiencing.  it seems to be related to not having a timezone set which causes the ES to reboot anytime a new language is set.  I will be creating a new image later today and will force a timezone to minimize on the occurrence of that issue.

This has been addressed in the new 1.5 image available for download.

It's working now with the V15 (12162020) update like a charm. Thanks for the good work! :)


Fixing broken JS

Removing bad JS code.
Signed-off-by: Joe Talerico (rook<EMAIL_ADDRESS>

Don't have merge perms @jtaleric ;)

should be all set on permissions, lemmeknow @rsevilla87


Fix Typos across Bootstrap repository

Fix Typos across Bootstrap
bootstrap/js/tests/unit/collapse.js:770:74: "collaspe" is a misspelling of "collapse"
bootstrap/site/content/docs/4.3/getting-started/webpack.md:29:10: "dependends" is a misspelling of "depended"
bootstrap/site/content/docs/4.3/utilities/flex.md:448:0: "Additionaly" is a misspelling of "Additionally"

Thanks for these fixes, @killthekitten! Did you use a tool to detect these typos?

Thanks for these fixes, @killthekitten! Did you use a tool to detect these typos?

@MartijnCuppens Thanks! I use Go Spellchecker :smile_cat:


Package update 19 06 23

Description
Updated all modules highlighted by npm outdated (Except node version as 18 has LTS)
One change was breaking - express-validator major version - changed what's returned as part of the flash data for errors.
Current npm audit warning for - @aws-sdk/client/sqs doesn't have a fix, only recommends rolling back the version.
Changed the formError type definition and the implementation of findError and errorSummaryList to accomodate the express-validator changes

@hutcheonb-moj was going to suggest leaving the validator upgrade out of a general update as it's a major update. That way you know all changes are related to that update. Plus it'll need manual flow checks to test the validation all still works properly really.


Adding functionality for loading resources from S3 buckets

Attempting to resolve #188 .
Note that S3 credentials should be already be set in core-site.xml for this to work.
Refer to  https://wiki.apache.org/hadoop/AmazonS3 for more details

Merging as per OpenWayback call, 2015-01-28.


Update sbt to 1.5.7

Updates org.scala-sbt:sbt from 1.5.5 to 1.5.7.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scala-sbt", artifactId = "sbt" } ]

labels: library-update, early-semver-patch, semver-spec-patch

Codecov Report

Merging #213 (b093314) into main (836af86) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##              main      #213   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           51        51
  Lines         1680      1680
  Branches        84        84
=========================================
  Hits          1680      1680

Continue to review full report at Codecov.

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


Make 32bit incremental builds on linux not use free channel

As title

looks good.

hmm, CI failing though.

Passed AzureCI


[Request] A darker theme which match Tomorrow Colorscheme

Hi @oivva,
Thank you for great theme. As you can see from the title, could you pls add another theme which match Tomorrow's color? The current dark version #2 is great but it is still low contrast for me.
Many thanks!

Hi @babygau,
Thanks for your request. Unfortunately I have no plans to add more themes, but I'm open to add new options to existing ones. Can you explain me how should it look like?

@oivva,
Thank you for your response. Could you please take reference from this Cyanide Theme. By saying darker color, I meant black color actually. Please look at sidebar, tabs, and panel, they all match with black color.
I'm really looking forward to it! Many thanks in advance

I'll add darker version in the 2.1.0 version. You will need to use next options:
"theme": "Boxy Tomorrow.sublime-theme",
"theme_darker": true,

As for now I close this issue as duplicate of #25.


[CELEBORN-1250][FOLLOWUP] Fix license issues

What changes were proposed in this pull request?
Fix license issues.
Why are the changes needed?
Does this PR introduce any user-facing change?
NO.
How was this patch tested?
GA.

Merged into branch-0.4(v0.4.0)


Kirby requested edits to Paint pages and DAA instructions

-added verbage in the DAA PI section to specify more stringent conditions for who a PI signee can  and cannot be.
-added a section to more clearly exposure to the user instructions for advanced customization for GenomePaint
-added a section to more clearly exposure to the user instructions for advanced customization for ProteinPaint

@mtreadwa do you think the last sentence should say "Typically the PI signee is the faculty-level supervisor on the project, but it is not a requirement."?


Auth service unit tests

Fixes
#1717
Checks

[x] Ran yarn test-build
[x] Updated relevant documentations
[x] Updated matching config options in altair-static

Changes proposed in this pull request:
Added unit tests for all public method of altair-api/AuthService that is not a proxy call.
Change the Altair API jest config to only measure coverage for the source folder and ignore data holder files (DTO, input, module, strategy) and configs.

@imolorhe I prepared a different PR that covers the remainder of the auth module with tests. Built on this one. Probably it is easier to review the two sequentially.
Would you like me to open the two combined or wait until this is merged and then point that on your repo?

One at a time is fine


Datashader + Bokeh callback not working in Jupyter Lab when using Holoviews layout

Plotting data in Holoviews + Datashader + Bokeh works fine both in Jupyter Notebook and Jupyter Lab when rendering a single plot with a single or multiple overlaid datasets.
However, when constructing a layout (e.g. (datashade(x) + datashade(y)).cols(1) ), Datashader no longer updates the plots correctly. It looks like the callback to update the image as a function of zoom level is no longer functional. This issue only occurs in Jupyter Lab.
I got Jupyter Lab to show Bokeh output in the first place with:
conda install -c bokeh/label/dev bokeh
conda install -c ioam/label/dev holoview

Relevant conda packages:
bokeh v0.12.15rc2
datashader v0.6.5
holoviews v1.10.0a2
jupyterlab v0.31.12
Relevant Jupyter Lab extensions:
pyviz/jupyterlab_holoviews v0.3.2
jupyterlab_bokeh v0.4.0

Opened the corresponding issue in holoviews and submitted a PR to fix it here: https://github.com/ioam/holoviews/pull/2511


PlotWindow: add an option to get tape measure

Changelog:
add tape measure action
screenshot

Sounds good to me.
And to answer to your message about displaying or not start and end points, i think it is not needed, and it's counter intuitive to display them. If you want to mesure something, just display the measure. If you need coords, you already have the tooltip or the status bar.
For other stuffs like coef or ndigits, this can be handled by overwrite of method.
You just have to provide the default behaviour.
class Ruler:
    ...

    # One can easely override that to change the digits, the scale, the unit
    def getLabelFromDeltaPixels(self, dx: float, dy: float):
        return f"{sqrt(x*x + y*y):0.2f} px"

If you provide such component, that's something i will integrate directly in flint.

About the code

I would not add it by default in the plots, that's a tool you can integrate yourself
I would split what is about the toolbutton and what is about the ruler behaviour itself (but i am fine with it for now, it's easier to override with a single class)
I would create an even minimalistic icon, else it will not be readable (i.e. https://www.creativefabrica.com/fr/product/ruler-icon-2/ with even less detail) tell me if you want i can do the stuff.

thanks, don't worry I can do it all.

I haven't cheak the interaction, i have not much time but if think:

format_distance -> formatDistance
format_distance must not be a class method, else it's pointless i can't override it
you should cut the ruler icon by 3, there is no need to have realistic image -> only 2 or 3 tick is enough -> as result you can have a larger ruler for readability

I also would like to tune the line style, but i could try to do it later
I also think it's not the best idea to use a ROI here, because you need a dedicated roi manager for a single roi, but if it does the job, it's fine.

I think format_distance should have dx and dy as argument, you can't expect the coefficient is the same for x and y. But well, this can be considered as another use case.

Having 'format_distance' not being a 'staticmethod' is not that straightforward sadly.
using RulerROI with the roi manager is 'breaking' the link between the RulerToolButton and the RulerROI.
So we can change the roi manager to allow providing other parameters or avoid using manager (as you suggested on a previous command). But in this case we need to redo all the management of interaction.
An alternative to avoid having heavy modifications is the commit '917ff73fb'. This is not very elegant but it will do the job and should allow us to extend the class as we wish. Else I guess we can also do something with metaclasses but again it will be against readability.

Thanks for the fix.
Looks good to me.


added possibility to use Bareos subscription repos

With this PR one can use the Bareos paid subscription repo by activating it with the following parameters:
class { '::bareos':
    repo_subscription => true,
    repo_username     =><EMAIL_ADDRESS>    repo_password     => 'stangelookingpassword',
}

closes #56

Grrr the yumrepo Resource <5.5 does not have the parameters username and password

rebased and fixed

For us this change is still relevant, I will test it once more on our servers tomorrow

thanks for the review. worked through your comments.

@benibr thanks for the updates. Can you add a unit test?

@bastelfreak I added a basic rspec test for the repo class and 2 specifics for the user/password repo

apt auth file is still missing: https://forge.puppet.com/puppetlabs/apt

Got a bit more complex than I thought.
Apt auth conf can only be set by calling the class apt and setting the array which I don't want to avoid conflicts.
I don't know why the apt auth conf cannot be filled with a defined type...
So I fumbled my way around this using user:pass@ in the URI

I tested on CentOS and Ubuntu 18. Looks good to me

thanks for the huge amount of work! I will do some inline comments

I took out some changes and I will move them to seperate PRs.

Since there is nothing else objected, I guess we can merge?

@benibr @bastelfreak had a small change to the spec test. Other than it, it seems good to merge.


PR & Unit tests

If your flow would involve a pull request including unit tests that have to pass before merging and than publishing a package I would think it is possible to determine quality before releasing. Any build that fails would never result in a merge and would mean will never be released.
Would views still give any added value in such a workflow?

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

ID: 1a891e9b-bf26-ea09-1da3-ebe3e57b7e26
Version Independent ID: bf53c51c-c1c1-1931-44ef-81433746e5ec
Content: Views on Azure DevOps Services feeds
Content Source: docs/artifacts/concepts/views.md
Product: devops
GitHub Login: @elbatk
Microsoft Alias: elbatk

@michaelw85 I had a similar thought.
TLDR: Views seem to be another tool beyond package Semver suffixes and both can be used together but might be overkill for your use-case.
My current release pipeline uses a build artifact that is the build output of dotnet build. A NuGet package is created during the stages of my release pipeline.
The first stage creates a NuGet package which applies a build suffix of ci-<build-number> to the package version.
This package is published to the @local view.
The next stage requires a manual approval of the previous stage (dev goes into DevOps and clicks "approve" on the release stage). This helps to affirm that the quality of the package is sufficient to move to the next view.
The 2nd stage promotes the previously created package to the @beta view.
To move past this stage requires the same manual approval as moving past stage 1 does.
The 3rd stage re-packages the build artifact without the ci-<build_number> suffix, publishes the package to the @local view and then promotes it to the @release view.
The @release view is considered to be the view that hosts packages which can be integrated for production use.
@local means the build artifact built and passed tests successfully but hasn't been tested for integration into a codebase.
@beta means the package has been tested being integrated but needs final sign-off before being approved for production use.
All that said... I could probably get away with using only the @local view and doing the re-package w/o the ci- suffix and publishing of the package as my 2nd stage. The first stage would be the creation of the ci- suffixed package pushed to @local.

@seangwright Thanks for sharing. I will keep this in mind, it's similar to something I was thinking about but it is overkill for me (us). It sounds like overhead that does not necessarily add to drastic quality improvements.
In my case our packages are for internal use only and the product consuming them will have it's own ci/cd DTAP release flow. I think gated check-ins would "guarantee" enough quality for us before consuming the package in development, any issues can be addressed quite quickly and the consuming product will not automatically update to latest anyway. The product will be build and than moved through the DTAP stages, nothing changes apart from config input so new package versions can continue to be released at all times without impacting existing releases of a product that consumes such a package.

@seangwright
I like your setup, but I am curious how you would handle the scenario for multiple NuGet packages. For example, let's say ProjA depends on ProjB, which in turn depends on ProjC. They are all in separate repositories with dissimilar version numbers, but a new version of each is being developed simultaneously.
ProjA = 1.6.0-beta0003
ProjB = 1.4.0-beta0004
ProjC = 1.2.0-beta0001
So, clearly ProjC has to be deployed first, which puts it at version 1.2.0, so what sort of logic do you have to make sure that ProjB gets 1.4.0 as its version number and its package reference to ProjC gets updated to 1.2.0 from its beta counterpart (or wildcard)?
Also, are you using .nuspec files to repackage, or have you found a way to take advantage of the .csproj PackageReferences and NuGet metadata properties to repackage the files?

@michaelw85 I think it depends on what the scope of validation is to you. For us the validation part is not only technical unittest but we also want to validate the consume to see if we didn't break anything functional before exposing it to the other consumers.

Hi all. Thank you for the feedback, questions, and input. I'm going to be closing this issue for now. There will be some updates to view usage and other related content. If you have any more questions or issues with the documentation, feel free to create a new issue!


go_1_18: backport cl417615

This backports the the revert from upstream CL411617, CL417615 to the go_1_18 expression itself (to fix it for all go builds potentially also affected by this), and reverts the gopass-specific workaround from https://github.com/NixOS/nixpkgs/pull/182784.
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.11 Release Notes (or backporting 22.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

1.18.5 is in staging so reverting this in https://github.com/NixOS/nixpkgs/pull/184644


Add the Unigine topic

Thank you for contributing! Please confirm this pull request meets the following requirements:

[x] I followed the contributing guidelines: https://github.com/github/explore/blob/master/CONTRIBUTING.md
[x] I have no affiliation with the project I am suggesting (as a maintainer, creator, contractor, or employee).

Which change are you proposing?

[ ] Suggesting edits to an existing topic or collection
[x] Curating a new topic or collection

Curating a new topic or collection

[x] I've formatted my changes as a new folder directory, named for the topic or collection as it appears in the URL on GitHub (e.g. https://github.com/topics/[NAME] or https://github.com/collections/[NAME])
[x] My folder contains a *.png image (if applicable) and index.md
[x] All required fields in my index.md conform to the Style Guide and API docs: https://github.com/github/explore/tree/master/docs

Unigine is a popular game engine that recently got the Community edition with the support of C# and C++ languages for enthusiasts across the globe.

Please note: we will close your PR without comment if you do not check the boxes above and provide ALL requested information.

Should be okay now.

Hi,
Thanks for your contribution. However, curated topics are meant to be used for heavily used topics and this topic is only used on 7 public repositories.

I re-read our contribution guidelines and think this falls into the second criteria from this sentence, so I am reopening this.

Valuable topics, for example, include those that are already widely used by repositories, or a topic that currently lacks important information.

Can you merge master into your branch and update, once that's done we can get this merged in.

@kenyonj Done.

However, curated topics are meant to be used for heavily used topics and this topic is only used on 7 public repositories.

Only tagged - yes, but non-tagged repositories, source code, and data are scattered across GitHub, see. The problem is that people are rarely tagging their repositories themselves.


General or Primary box for direct_threads()

Opportunity to choose box (general or primary) to get threads from (only applies to business accs). Not passing a parameter does not affect behavior for non-business accounts.

@Yessirskiy thanks!


monitoring UI does not display the function name for response payload headings when polling

The monitoring UI could be much more useful for demo and debugging purposes were it to show the response payload with a heading of the contract API (e.g. readRecentStates) that generated it. You can switch on polling and it will execute it again every time there is a new block, which is an amazing feature. But if you close the headings, they all look alike, with an asset name of null with no indication of what the command was in the first place.

The new look:


send_split_delay invalid in config?

Version information:
Home Assistant 2022.11.5
Supervisor 2022.11.2
Operating System 9.3
Frontend 20221108.0 - latest
Adaptive Lighting 1.2.1
Description:
I've had trouble some minor trouble with some IKEA GU10 lightbulbs, so I wanted to try out separate_turn_on_commands and send_split_delay. The first one works, but adding the latter to my config throws an error when trying to restart HA:
Config (snippet):
  - name: Bathroom Lights
    initial_transition: 0
    transition: 0
    sleep_transition: 0
    separate_turn_on_commands: true
    send_split_delay: 100
    lights:
      - light.bathroom_lights

Error:
The system cannot restart because the configuration is not valid: Invalid config for [adaptive_lighting]: [send_split_delay] is an invalid option for [adaptive_lighting]. Check: adaptive_lighting->adaptive_lighting->1->send_split_delay. (See /config/configuration.yaml, line 216).

I just released 1.3.0.
Thanks for mentioning this.


[tracy] Add Tracy profiler and capture tools using CMake

Describe the pull request

What does your PR fix?

Adds capture and profiler features to tracy ports to be able to build its tools.

Which triplets are supported/not supported?

I am still working on this PR
If you are still working on the PR, open it as a Draft: https://github.blog/2019-02-14-introducing-draft-pull-requests/

Closing as supersed by #24091
I feel that using own project files is better and more maintainable that reimplementing all that logic as CMake

Closing as supersed by #24091
I feel that using own project files is better and more maintainable that reimplementing all that logic as CMake


byteswap optimization

use builtins for gcc and ms
see
github
Cyan4973
xxHash
issues
227

also add byteswap to namespace k13


proxy: don't follow redirects for user provided JWKS urls + set custom user agent

partially fixes https://github.com/neondatabase/cloud/issues/19249

I think I need to re-create this PR from non-fork repo


enhanced user selection (low priority)

on reservation#new the user should be searchable by name, spire, etc.

it's actually on rental#new now


Use spec version from tuf/api/metadata in examples

Description of the changes being introduced by the pull request:
Replace the hardcoded specification version with the one defined inside
tuf/api/metadata.py that way we would have one source of truth about the
specification version.
Signed-off-by: Martin Vrachev<EMAIL_ADDRESS>Please verify and check that the pull request fulfills the following
requirements:

[ ] The code follows the Code Style Guidelines
[ ] Tests have been added for the bug fix or new feature
[ ] Docs have been added for the bug fix or new feature

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

2 of 2 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 98.311%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1178

Relevant Lines:
1194

💛  - Coveralls


usb-c: Add Source Power Delivery macros

These macros are needed to implement a USB-C Source device
Signed-off-by: Sam Hurst<EMAIL_ADDRESS>

In general, where you have constants for the minimum and maximum values of a parameter, what is the code supposed to do with that information? How is it supposed to use these intervals?
In our downstream TCPM, we sporadically run into issues where we wait for a correct amount of time to do something, but then the latency of the task pushes us outside the allowed interval by 1 ms or something. Is there any kind of general thing we can do in the code structure to avoid this, rather than fixing these kinds of things one at a time when they come up?

In general, where you have constants for the minimum and maximum values of a parameter, what is the code supposed to do > with that information? How is it supposed to use these intervals?
In our downstream TCPM, we sporadically run into issues where we wait for a correct amount of time to do something, but
then the latency of the task pushes us outside the allowed interval by 1 ms or something. Is there any kind of general thing
we can do in the code structure to avoid this, rather than fixing these kinds of things one at a time when they come up?

@alevkoy Good question. I think tuning the state machine timing would depend on the hardware it's running on, so maybe we could create a config or device tree option to add or subtract a delta from the timer values. WDYT

I think tuning the state machine timing would depend on the hardware it's running on, so maybe we could create a config or device tree option to add or subtract a delta from the timer values. WDYT

@sambhurst I think that's a reasonable approach to getting timers to actually expire when we intended them to. If we could abstract away the latency, it seems reasonable to set the timers using constants that have the nominal values from the spec, as opposed to tweaking the individual values like we sometimes do downstream. The limit values in this header might be more usable as a single value with comment specifying the limits and why we're using the particular value if it isn't the nominal value (maybe to improve interop in some way).
But that's not a blocking request. This seems fine for now.


ENV for path to pro packages

centos7-pro.dockerfile sets ENV for GCC_VER
https://github.com/smanders/buildpro/blob/21.09/image/centos7-pro.dockerfile#L44
which makes it available to other dockerfiles that inherit from centos7-pro, and also available in a container (echo $GCC_VER)
cmake is used to find the installed pro packages (externpro, internpro, webpro) but it would be useful for scripts or other things that want to avoid cmake to have in the container ENV the path to the installed pro packages that are in the image
perhaps /opt/extern should also be set once and all the dockerfiles use it (similar to GCC_VER)

completed with commits referenced above
in container
smanders@bpbldlatest:/bpvol
$ echo $EXTERN_DIR
/opt/extern

smanders@bpbldlatest:/bpvol
$ echo $EXTERNPRO_PATH
/opt/extern/externpro-21.04-gcc731-64-Linux

smanders@bpbldlatest:/bpvol
$ echo $INTERNPRO_PATH
/opt/extern/internpro-21.03-gcc731-64-Linux

smanders@bpbldlatest:/bpvol
$ echo $WEBPRO_PATH
/opt/extern/webpro--gcc731-64-Linux

NOTE: webpro doesn't show version because this image (for PluginSDK) doesn't install webpro


cp, mv --progress doesn't show progress on a single big file

maybe we could do it only when a file is bigger than X mb?
cc @zacchiro

About when it makes sense to start displaying a progress bar: it should probably be time-based. You start copying and if it takes "a while" (more than a few seconds?) you start displaying a progress bar.
Other than that, the way of doing this that I suggested yesterday was based on this concept by @dspinellis. But given in coreutils you control the implementation yourself you can probably avoid fiddling with /proc, you'll just know at what point of the copy you are in general.

An interesting approach for progress reporting is to tie it to a signal, such as the FreeBSD SIGINFO (status request from keyboard), which is in turn tied to Ctrl-T. This allows users to control exactly when to get a signal report without requiring them to specify a flag (as is the case here) or burdening them by default with unneeded progress information (as is done by curl). Also, the status report can be requested via kill(1) even if a command runs in the background.

Hi @sylvestre @zacchiro - I would like to work on this. Any suggestions on starting point in the code?

There's been some fixes to the progress bar in the meantime. Maybe we can start by reproducing the problem? The code for cp is here:
https://github.com/uutils/coreutils/blob/main/src/uu/cp/src/cp.rs

Noted @teresy - Will try and reproduce the problem and share my observations here. Thanks!

I tried the cp command and tried two scenarios @tertsdiepraam :

Copied one large file ~ 7 GB in size with -g option
The progress bar was showing but there was no intermediate progress. It shot from 0 to 100 in one go.
Copied two large files, each ~7 GB  in size with -g option
The progress bar was showing but it shot from 0 to 50 for one file and 51 to 100 for the second one. Again, no intermediate progress.

I am assuming intermediate progress is what we are looking for as part of this ticket.

In addition to above, till the time file is copied, the elapsed timer on the progress bar stays at 00:00:00. Once the file is copied, both the progress bar and the elapsed timer on it progresses in one go.

@tertsdiepraam - Here is something that I tried for cp:

Open the source file to read.
Open another file at destination for writing.
Use a buffer to read into.
Use the same buffer to write.
Maintain the amount of bytes written and increment the progress bar with that.

The solution uses std::fs from rust and here are some observations:

Buffer Size (Bytes)
File Size (GB)
Time Taken (s)

100
7.7
257.08

1000
7.7
34.66

10000
7.7
10.82

15000
7.7
10.29

20000
7.7
9.79

25000
7.7
9.90

30000
7.7
11.75

The current uutils/coreutils/cp stats:

Buffer Size (Bytes)
File Size (GB)
Time Taken (s)

unknown
7.7
16

Can we implement something like this for single file copy?

Interesting, so you improved over regular performance with an additional buffer?

@tertsdiepraam So, the motivation was to be able to show intermediate progress. The functions that are used in current implementation only returned number of bytes copied/written after the file was successfully copied. This is the reason progress bar seems to progress in one shot.
What I simply did was to read bytes from the source file and then write them into a new destination file in a loop. Now, since the buffer needs to be a constant, we know how many bytes are being written at once and can use that to increment the progress bar. To answer your question, I won't call it an additional buffer. Just one buffer to hold the bytes that I read from source and then write from it into the destination, in a loop, till all the bytes are read and written.

@tertsdiepraam - Any suggestions/inputs? Shall I try and integrate this solution in cp.rs for a single file?

It's certainly interesting and I'd love to try it out. However, I can't guarantee that it would get merged, because it might introduce some problems, complicate the code too much, or turn out to be significantly slower on some systems.

Hmm! In that case, I will try and do a feasibility check first. I will document my analysis here so that we can make a decision.

Btw, I was curious about the benchmarks, what kind of storage do you have? Is it SSD or HDD?

I have SSD @tertsdiepraam
Yes. I will try and open a PR soon.
I checked the source for xcp. It directly uses file_descriptors from libc package. I am not very knowledgeable when it comes to the kernel level(or low level) stuff but from what I can gather, it effectively uses the same method (read and write in chunks) I used in my solution, with the exception that xcp goes one level lower when it comes to implementation.

We could have some heuristic to change the copy method.
For example:

use this copy method only when the option is enabled
only use it when a file is bigger than X
etc

@sylvestre I have used the second option.
@tertsdiepraam @sylvestre - Suggestions/comments are welcome!
I wasn't sure how to write the unit test for this. I would probably need some guidance if there is a way to do this, given that we have a condition for size.


404 when running in server mode

Hi
Just wondering if there any other specific config that needs to be done to send the webhook to this when running in server mode. I've set it up as per the documentation, but I'm getting 404's when I curl localhost as well as from github.

Hi, I had the same problem. Did you solve it? @davejrt


Speech to text output not working

I am trying to run run the STT method on my local machine but for some reason its not picking up my audio - Ive enabled everything on my end to allow the mic to pick up sound but its not getting picked up.
The button is present:

When I inspect the page, I get the following error message in my console:
  File ".../venv/lib/python3.9/site-packages/streamlit/web/server/component_request_handler.py", line 55, in get
    with open(abspath, "rb") as file:
FileNotFoundError: [Errno 2] No such file or directory: '.../venv/lib/python3.9/site-packages/streamlit_mic_recorder/frontend/build/bootstrap.min.css.map'

Any thoughts you have would be helpful!

Hello,
You're the first one reporting this issue. Seems to work fine for other people.
Difficult to tell what's going wrong without knowing more about your setting.
What browser are you using ?
Is the mic on which you'd like to record the default one in your audio settings ?
First make sure you use the latest version of the package:
$ pip install streamlit_mic_recorder --upgrade
or uninstall and reinstall to start with a fresh install.
Have you tried using only the mic_recorder function ? (Idk, maybe the problem comes from the additional layer of speech recognition introduced in the speech_to_text function)
Try running locally this simple test script and tell me the outcome:
import streamlit as st
from streamlit_mic_recorder import mic_recorder

audio=mic_recorder()
if audio:
    st.audio(audio['bytes'])

Also, make sure you allow the app to record sound from the mic. (your browser should ask for permission to record sound the first time you use the component)

The mic works and I am able to record my voice but when it tries to convert it to text, it looks like nothing is being recorded?

I even tried using the speech_recognition package directly, but that did't work either. Maybe this could be the issue?

Weird...
Just tried running the test, all works fine for me.
If the audio gets recorded and comes out of the component, the issue must have to do with the speech_recognition module indeed.
Maybe try with a fresh install of the speech_recognition module, or change version ?
Do you get any warning in the terminal from the recognize_google function ?

I've tried uprading to the latest version of SpeechRecognition, no problem encountered.
Maybe there is something preventing the package to work correctly on your setup.
You could try creating a virtual environment, installing the required packages afresh and run similar tests there.
If it works in the venv it probably means there is a package conflict of some sort in your python setup.

Closing the issue as it doesn't seem to be related to the widget itself.

I'd like to reopen this. It seems others get this error too in similar issues. I don't have a complete grasp on the bug, but I have a feeling it stems from a dependency of some sort being taken for granted.
The reason being that this plugin works great if I install it on my PC. But... If I spin up a server somewhere like runpod and do a fresh venv install. I get this same error with no verbosity other than that hard to troubleshoot error. At the very least it might help if the root cause of this bug can be discovered and a way to prevent it is documented.

@B4PT0R


[standard] Parsing error: Unexpected token =

What version of standard?
11.0.1
What operating system, Node.js, and npm version?
OSX
6.1.0
10.3.0
What did you expect to happen?
standard --fix to fix arrow functions.
What actually happened?
Get a parsing error on arrow functions and standard --fix does not fix them.

All other rules appear to format ok
standard configs in package.json
  "standard": {
    "parser": "babel-eslint",
    "ignore": [
      "src/utils/epubjs/**/*.js"
    ],
    "globals": [
      "jest",
      "expect",
      "test",
      "describe",
      "it",
      "beforeEach",
      "beforeAll",
      "afterAll",
      "shallow",
      "snapshot",
      "localStorage",
      "FileReader",
      "FormData",
      "location",
      "all",
      "history",
      "mount"
    ]
  }

devDeps
    "babel-eslint": "^8.2.6",
    "babel-jest": "22.4.3",
    "babel-loader": "7.1.4",
    "babel-plugin-react-component-data-attribute": "^0.5.0",
    "babel-plugin-syntax-async-functions": "^6.13.0",
    "babel-plugin-syntax-dynamic-import": "^6.18.0",
    "babel-plugin-transform-async-to-generator": "6.24.1",
    "babel-plugin-transform-class-properties": "6.24.1",
    "babel-plugin-transform-do-expressions": "^6.22.0",
    "babel-plugin-transform-export-extensions": "^6.22.0",
    "babel-plugin-transform-function-bind": "^6.22.0",
    "babel-plugin-transform-object-rest-spread": "^6.26.0",
    "babel-plugin-transform-react-jsx": "^6.24.1",
    "babel-plugin-transform-regenerator": "^6.26.0",

babelrc
  "presets": [
    ["env"]
  ],
  "plugins": [
    "transform-class-properties",
    "transform-decorators",
    "transform-react-constant-elements",
    "transform-react-inline-elements",
    "transform-object-rest-spread",
    "transform-function-bind",
    "transform-do-expressions",
    "transform-react-jsx",
    "transform-export-extensions",
    "syntax-dynamic-import",
    "syntax-async-functions",
    "transform-regenerator"
  ]
}

I'm also having this issue with the latest Create React App boilerplate. Usually adding "parser": "babel-eslint" would fix it.

@CodeDraken i have the same issue but using the babel-eslint parser just change the error to

for this code
componentDidMount = async() => {             const response = await getUserData()             localStorage.setItem('user', JSON.stringify(response)) }
are there any additional settings you have made for the default to ignore this rule?

@CodeDraken i have the same issue but using the babel-eslint parser just change the error to

for this code
componentDidMount = async() => { const response = await getUserData() localStorage.setItem('user', JSON.stringify(response)) }
are there any additional settings you have made for the default to ignore this rule?

No there shouldn't be anything else required... but like I said I'm also having this issue, I think it's a conflict with Create-React-App.

@CodeDraken i have the same issue but using the babel-eslint parser just change the error to

for this code
componentDidMount = async() => { const response = await getUserData() localStorage.setItem('user', JSON.stringify(response)) }
are there any additional settings you have made for the default to ignore this rule?

No there shouldn't be anything else required... but like I said I'm also having this issue, I think it's a conflict with Create-React-App.

:/

I'm seeing this. If using JSX I'm also seeing the / in a closing tag be an unrecognized token. Not sure if it's the same issue.

Seeing same issue when writing this (including in the online demo):
class MyClass {
  x = () => 'Test'
}

It looks like my issue was solved by using the babel-eslint parser.
https://github.com/standard/standard#how-do-i-use-experimental-javascript-es-next-features
This seems odd. Are the class issues caused in @donald-cme's example not standard ECMAScript yet?

Seeing the same issue as well. Oddly when I run the standard --verbose --fix command directly from the command line, instead of via npm run fix (which is configured to do exactly the same) the errors do not occur, and the subsequent running of npm run fix succeeds. I've checked to see whether any content within the project directory has changed, and I can see nothing at all different!!

Same for me.
standard --verbose --fix still produces the error in my case

when i replace with standard(standard) with standardx(3.0.1), i encountered the same issue.

Is there any update? I'm still having this issue.

It appears to be something to do with class level assignments (perhaps tied to React).  It happens for me with both:
class Whatever extends Component {
  state = {}
}
class Whatever extends Component {
  myFunc = async (e) => {
  }
}

In any case, it's the first = /within the class/ -- other equal signs either outside of the class or in other functions are fine.

@ThomasGoehringer, @srevenant are you using babel-eslint as the parser?

@ThomasGoehringer, @srevenant are you using babel-eslint as the parser?

Yes.  If there is guidance for something else, I'm game to try.

I'm wanting to use standard for the first time, and this is the error I'm getting. Seems to be problematic with fat arrow functions, like
showOverlay = () => {
...
}

I get Parsing error: Unexpected token = for the above.

Yes, me too.

Also getting this issue. I don't want to have to use babel-eslint as the parser to make this lint'ing false positive go away...

Hi everyone!
A couple things to try:

Please try out the prerelease version of standard 13 by running npm install standard@next and see if that fixes your issue.

Please share the output of running npm ls eslint as well as npm ls eslint-config-standard.

Lastly, the most helpful thing would be if someone could share a minimal GitHub repository that I can clone to see the issue in action.

Thanks!

Prerelease version doesn't work either.
Here's the output of npm ls ...:
└─┬<EMAIL_ADDRESS>  └──<EMAIL_ADDRESS>
└─┬<EMAIL_ADDRESS>  └──<EMAIL_ADDRESS>
And here's a link to a repo where I'm having this problem: https://github.com/ThomasGoehringer/react-course-2-expensify-app
Have a look on src/components/AddExpensePage.js for example.

Running standard as I would, but on version 13, received a TB the first time, but the second time it ran without error.  The TB:

Error: Failed to load plugin 'node' declared in '--config » eslint-config-standard': Cannot find module 'eslint-plugin-node'
Require stack:
- /Users/brandon/share/git/protos/perform/perform-frontend/src/__placeholder__.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:623:15)
    at Function.resolve (internal/modules/cjs/helpers.js:21:19)
    at Object.resolve (/Users/brandon/share/git/protos/perform/perform-frontend/node_modules/standard/node_modules/eslint/lib/shared/relative-module-resolver.js:44:50)
    at ConfigArrayFactory._loadPlugin (/Users/brandon/share/git/protos/perform/perform-frontend/node_modules/standard/node_modules/eslint/lib/cli-engine/config-array-factory.js:841:39)
    at /Users/brandon/share/git/protos/perform/perform-frontend/node_modules/standard/node_modules/eslint/lib/cli-engine/config-array-factory.js:730:33
    at Array.reduce (<anonymous>)
    at ConfigArrayFactory._loadPlugins (/Users/brandon/share/git/protos/perform/perform-frontend/node_modules/standard/node_modules/eslint/lib/cli-engine/config-array-factory.js:726:22)
    at ConfigArrayFactory._normalizeObjectConfigDataBody (/Users/brandon/share/git/protos/perform/perform-frontend/node_modules/standard/node_modules/eslint/lib/cli-engine/config-array-factory.js:552:32)
    at _normalizeObjectConfigDataBody.next (<anonymous>)
    at ConfigArrayFactory._normalizeObjectConfigData (/Users/brandon/share/git/protos/perform/perform-frontend/node_modules/standard/node_modules/eslint/lib/cli-engine/config-array-factory.js:491:20)

If you think this is a bug in `standard`, open an issue: https://github.com/standard/standard/issues```

$ `npm ls eslint`

├─┬<EMAIL_ADDRESS>│ └──<EMAIL_ADDRESS>└─┬<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>

@ThomasGoehringer What do you mean by "doesn't work"? I cloned the repo you linked to, ran npm install (which installs v12.0.1), and then added a "lint" script to package.json like this:
  "scripts": {
    ...
    "lint": "standard",
    ...
}

And it worked just fine, outputting the following errors:
standard: Use JavaScript Standard Style (https://standardjs.com)
standard: Run `standard --fix` to automatically fix some problems.
  /Users/feross/code/test/react-course-2-expensify-app/src/components/AddExpensePage.js:11:9: Missing space before function parentheses.
  /Users/feross/code/test/react-course-2-expensify-app/src/components/EditExpensePage.js:15:9: Missing space before function parentheses.
  /Users/feross/code/test/react-course-2-expensify-app/src/components/ExpenseForm.js:34:29: Irregular whitespace not allowed.
  /Users/feross/code/test/react-course-2-expensify-app/src/components/ExpenseListFilters.js:2:19: Irregular whitespace not allowed.
  /Users/feross/code/test/react-course-2-expensify-app/src/components/ExpenseListFilters.js:3:27: Irregular whitespace not allowed.
  /Users/feross/code/test/react-course-2-expensify-app/src/components/ExpenseListFilters.js:27:9: Missing space before function parentheses.
  /Users/feross/code/test/react-course-2-expensify-app/src/components/ExpenseListFilters.js:57:15: Value must be omitted for boolean attributes
  /Users/feross/code/test/react-course-2-expensify-app/src/playground/hoc.js:32:7: 'AdminInfo' is assigned a value but never used.
  /Users/feross/code/test/react-course-2-expensify-app/src/playground/hoc.js:36:27: Value must be omitted for boolean attributes
  /Users/feross/code/test/react-course-2-expensify-app/src/playground/promises.js:7:5: Expected the Promise rejection reason to be an Error.
  /Users/feross/code/test/react-course-2-expensify-app/src/playground/redux-101.js:49:7: 'unsubscribe' is assigned a value but never used.
  /Users/feross/code/test/react-course-2-expensify-app/src/playground/redux-expensify.js:24:7: 'removeExpense' is assigned a value but never used.
  /Users/feross/code/test/react-course-2-expensify-app/src/playground/redux-expensify.js:30:7: 'editExpense' is assigned a value but never used.
  /Users/feross/code/test/react-course-2-expensify-app/src/playground/redux-expensify.js:37:7: 'setTextFilter' is assigned a value but never used.
  /Users/feross/code/test/react-course-2-expensify-app/src/playground/redux-expensify.js:43:7: 'sortByDate' is assigned a value but never used.
  /Users/feross/code/test/react-course-2-expensify-app/src/playground/redux-expensify.js:53:7: 'setStartDate' is assigned a value but never used.
  /Users/feross/code/test/react-course-2-expensify-app/src/playground/redux-expensify.js:59:7: 'setEndDate' is assigned a value but never used.
  /Users/feross/code/test/react-course-2-expensify-app/src/playground/redux-expensify.js:166:7: 'expenseOne' is assigned a value but never used.
  /Users/feross/code/test/react-course-2-expensify-app/src/playground/redux-expensify.js:167:7: 'expenseTwo' is assigned a value but never used.
  /Users/feross/code/test/react-course-2-expensify-app/src/playground/redux-expensify.js:182:7: 'demoState' is assigned a value but never used.
  /Users/feross/code/test/react-course-2-expensify-app/src/routers/PublicRoute.js:4:8: 'Header' is defined but never used.
  /Users/feross/code/test/react-course-2-expensify-app/src/selectors/expenses.js:20:2: Newline required at end of file but not found.

When upgrading to v13.0.1, it also works just fine.
Perhaps you have an old version of standard which is installed globally that you are running instead of the up-to-date local copy? Can you try running sudo npm rm standard --global to remove the global copy (if one exists)?
Then run add a script to package.json, like I did, and run it with npm run <script-name>

@srevenant I believe that your issue is a duplicate of https://github.com/standard/standard/issues/1329

I wasn't running standard via script gut with the VS Code plugin. So the issue is at another place. Thanks.

I wasn't running standard via script but with the VS Code plugin. So the issue is at another place. Thanks.

I solved the problem with two steps
First, install babel-eslint
yarn add -D babel-eslint

Second, add these two lines on my package.json
{
  // ...
  "standard": {
    "parser": "babel-eslint"
  }
}

@linxuyalun myself and many other future travelers thank you profusely.

I wasn't running standard via script but with the VS Code plugin. So the issue is at another place. Thanks.

I solved the problem by adding these three lines on my package.json
{
  // ...
  "standard": {
    "parser": "babel-eslint"
  }
}

@linxuyalun -- this fixed my issue. THANK YOU SO VERY MUCH!

See https://standardjs.com/#how-do-i-use-experimental-javascript-es-next-features

See https://standardjs.com/#how-do-i-use-experimental-javascript-es-next-features

I got it running worked after spending some time trying out different options. Hope this helps anyone else getting stuck.
.eslintrc.json (in root project folder):
{
    "env": {
        "browser": true,
        "es2021": true,
        "jest/globals": true
    },
    "extends": [
        "standard",
        "plugin:jest/all"
    ],
    "parser": "@babel/eslint-parser",
    "parserOptions": {
        "ecmaVersion": 12,
        "sourceType": "module"
    },
    "rules": {
        "jest/no-hooks": [
            "error",
            {
                "allow": [
                    "afterEach",
                    "beforeEach"
                ]
            }
        ]
    },
    "plugins": [
        "jest"
    ]
}

Empty .babelrc (in root project folder):
{}

.package.json (in root project folder):
{
  "scripts": {
    "test": "jest",
    "lint": "npx eslint --format=table .",
    "lintfix": "npx eslint --fix ."
  },
  "devDependencies": {
    "@babel/core": "^7.15.0",
    "@babel/eslint-parser": "^7.15.0",
    "aws-sdk-mock": "^5.2.1",
    "eslint": "^7.32.0",
    "eslint-config-standard": "^16.0.3",
    "eslint-plugin-import": "^2.24.0",
    "eslint-plugin-jest": "^24.4.0",
    "eslint-plugin-node": "^11.1.0",
    "eslint-plugin-promise": "^5.1.0",
    "jest": "^27.0.6"
  }
}

VS Code settings.xml (editor configuration: enables auto fix on save + babel parser):
    "eslint.alwaysShowStatus": true,
    "eslint.format.enable": true,
    "eslint.lintTask.enable": true,
    "eslint.options": {
        "parser": "@babel/eslint-parser"
    },
    "editor.codeActionsOnSave": {
        "source.fixAll.eslint": true
    },
    "eslint.validate": [
        "javascript"
    ]

@linxuyalun myself and many other future travelers thank you profusely.

time traveler here from 2021! i'm so grateful!


GetPlayer returns response with Status Code 102

I'm using the 0.33.0 patched APK that you posted in [1] on a Samsung Galaxy S4. I booted up example.logTraffic.coffee just to verify that I had everything setup correctly with my proxy configuration. I've verified by going to various HTTPS websites that the certificates presented are signed by the MITM CA [2]. When I launch the app, it makes a few requests to unity and so on, but the first call to the GetPlayer API fails. The log looks like the below snippet (I added lines starting with [_]). This other project [3] seems to suggest this response code corresponds to an invalid auth token. Any idea what might be going on here?
Edit: I turned off the network proxy, removed the CA cert, and rebooted the phone. It looks like I just plain can't log in. This makes me think there is a problem with the patched APK.
[_] Connecting pgorelease.nianticlabs.com:443
[+++] Request to /plfe/rpc
[+] Request for action GetPlayer:
{}
[<-] Request for GetPlayer  {}

[+] Waiting for response...
[_] Recived a response chunk
[_] Response received
[_] Raw Response { status_code: 102,
  unknown6: [],
  returns: [],
  : [] }

[1] https://github.com/rastapasta/pokemon-go-mitm/issues/69#issuecomment-238457389
[2] I've noticed that sometimes, just after visiting a unique domain, the certificate generated is not yet valid on the phone due to clock skew. I'll open an issue with your dependency to generate them 5 minutes in the past. I've account for this before cutting this issue.
[3] https://github.com/AeonLucid/POGOLib/blob/master/POGOLib/Net/RPCClient.cs#L373

That's normal when the auth ticket or token in the request has expired; the app will retry the same request ID with a fresh SSO token (and get an auth ticket in the successful response).

Hmm, I've left it go for nearly an hour with no change in behavior

So the app gets stuck instead of retrying the GetPlayer request? Are you using a PTC or Google account? AFAIK either should work with the cert installed (the cert unpinning patch does not affect the connections used for auth, but they're not pinned either).

Using a Google Account.
This is very strange. I mentioned in my edit above that I had removed the ca cert, disabled the network proxy and rebooted to verify that I couldn't log in. So I went and installed the Xposed framework and then rebooted to finish that installation. I had not yet installed the pokemon-mitm Xposed module when I saw your last response. So I figured I would verify one more time. I installed the CA cert, turned on the network proxy settings, and opened chrome to verify that www.google.com was signed by the mitm CA. It was, but chrome was not trusting it. I had to reboot before chrome would accept the mitm CA signed cert for google.com. After that, I was able to log right in to pokemon go with no issue.
Super strange.
I verified before I opened this issue that chrome was showing google.com as trusted and signed by the mitm CA. Other than installing the Xposed framework (not the module) and rebooting a few times, I don't know what changed.

I guess this issue is resolved then. My suggestion to anyone who finds this in the future is to reboot a few times after installing the CA cert to be really, really certain that all applications are aware of the updated list of trusted CAs

Glad to hear it worked out. I'll add the tip to the troubleshooting instructions, thanks!


[IOTDB-2541] Enhance /ping API to liveness probe

See JIRA: https://issues.apache.org/jira/browse/IOTDB-2541

@SteveYurongSu @CloudWise-Lukemiao PTAL

Coverage increased (+0.02%) to 67.698% when pulling f965834734fa0c25a2043dba065d3b75fb4e574d on ericpai:feature/iotdb-2541 into 5a7adb5a3eb5132611256f87b1093626124f7272 on apache:master.

Thanks for your contribution :D
I will take a look ASAP.

@SteveYurongSu is there any other questions?

@SteveYurongSu is there any other questions?

Sorry for the late reply. The PR looks great :D


NextJS server side rendering example, flash of unstyled content on first load with material-ui alpha 4.0.0

For the new alpha 4 version of material-ui, the SSR guides on the website are out of date and github nextjs-next example doesn't work properly either. In the example implementation of SSR in NextJS, there is flash of unstyled content on first load and on every full page refresh, server side rendering of styles doesn't work.
Not sure if there is a problem with Material-ui side, JSS or just the example implementation should be different. More info and a possible workaround in the Context section below.

[x] This is not a v0.x issue.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Expected Behavior 🤔

When I load the page, all styles should already be fully rendered on the server side and no flash of unstyled components should happen.
Current Behavior 😯

When I load the page, there is unstyled content for a moment and then the styles are loaded on clientside. The server-side rendered style tag is just empty.
in examples/nextjs-next/pages/_document.js
if (pageContext) {
    css = pageContext.sheetsRegistry.toString();
}

Here the css variable should have the server side rendered styles, but it is just an empty string.
Steps to Reproduce 🕹

Clone/download the example from https://github.com/mui-org/material-ui/tree/next/examples/nextjs-next

Install and run according to the README.md (npm install && npm run dev)
Open in browser (localhost:3000)
see flash of unstyled content every time you reload the page

Context 🔦 / More info

I don't know if the the sheetsRegistry.toString() in jss library has changed or what, but it seems that if we remove the filtering of attached sheets, it works:
here's the SheetsRegistry implementation in the jss code:
toString(options?: ToCssOptions): string {
   return this.registry
     .filter(sheet => sheet.attached) // <--- this causes it to return empty string
     .map(sheet => sheet.toString(options))
     .join('\n')
 }

So when I changed the pageContext.sheetsRegistry.toString() in the material ui next js example _document.js so that it skips this toString method and instead calls each toString manually like this:

css = pageContext.sheetsRegistry.registry
    .map(sheet => sheet.toString())
    .join("\n");

The styles are rendered properly on the server and the css var is no longer empty.
I'm not familiar with JSS so that I don't know what it means for a sheet to be attached and what to do with it, but to me the problem looks like that the sheets are not attached and because of that they are not converted to css string.
This workaround might not be a good final solution as it might break if the SheetsRegistry implementation changes, but for now, it works for me.
Your Environment 🌎

Tech
Version

Material-UI
v4.0.0-alpha.3

React
16.8.3

Jss
next (10.0.0-alpha)

Browser
Chrome

NextJS
8.x latest

Ah, there's already issue with this same problem. I checked yesterday, but only got around to post this today. Sorry about that.
#14887
I will leave this open for now as I have some more info here, but feel free to close if necessary.

@ssypi Thank, I'm closing as a duplicate of #14887.


[AP-3039] use net_housing_costs instead of gross_housing_costs

What
Replace monthly equivalent housing costs with net_housing_costs
Link to story
The monthly outgoing equivalents use gross_housing_costs
which does not take thresholds and other factors into account.
Checklist
Before you ask people to review this PR:

Tests and rubocop should be passing: bundle exec rake
Github should not be reporting conflicts; you should have recently run git rebase main.
There should be no unnecessary whitespace changes. These make diffs harder to read and conflicts more likely.
The PR description should say what you changed and why, with a link to the JIRA story.
You should have looked at the diff against main and ensured that nothing unexpected is included in your changes.
You should have checked that the commit messages say why the change was made.

see simpler change https://github.com/ministryofjustice/laa-apply-for-legal-aid/pull/3760


Port map test - IPv4 only please

When checking from loopback addresses, only IPv4 addresses work because no route_localnet flag is available for IPv6.
This is for cases that do not use a user land proxy for port mapping but use SNAT/DNAT rules e.g. cni portmap
/cc @mrunalp

Tested that this works fine! :+1:

+1

@rajatchopra LGTM. Thanks.


Only works when window is in the top left corner. Right aligned windows do not work

I think I borked the width/height calculations. Should switch to X1Y1 X2Y2 and just calculate everything from there...

Fixed in bdd1da6d05bca964bc690e46b7a34e6652dc8451


Multivalue VOI window attributes in presentation states

GSPS creation fails with some images that have value multiplicity > 1 for WindowWidth, WindowCenter and/or WindowCenterWidthExplanation, which is allowed in the standard but is fairly rare. This is because the code to copy the VOI from the source images was not designed to deal with these
This fix addresses this and should make it possible to correctly copy the VOI LUT transformation from source images with multiple values.
Resolves #210

Hi, I tested this (#211) and it fixes the issue! I ran it on 2 test DICOM that were giving errors before when I tried to create GSPS.

I should have done more thorough testing before declaring victory.. I ran on a 3rd dicom and ran into a new error. See:  https://github.com/ImagingDataCommons/highdicom/issues/210#issuecomment-1367454424

Got it working on a third DICOM now after fixing a problem on my end. Looks good.


Problem in submitting an event in edit_event route

While we submit an event in localhost:3000/#/edit_event route then it is redirected to another event page.

#Success
The problem was that the edit-event.js file was hard coded with the link of an event that's why the page keeps redirecting to the same event. I have changed it to load the event's id dynamically when it got saved to database.


Enable to Search Tabs in Dashboard

Description

I want

Some features can be inspired from Session Buddy.
Session Buddy

Thank you for letting me know!


support remote cache for driver

Image layers that have already been converted should be cached to avoid being converted twice to speed up acceleration.
We can implement an LRU hash table that records the relationship from the digest of the source image layer to the digest of
acceleration image layer, and store that hash table at some location (for example image manifest).

I am glad to undertake it. @imeoer

Has been finished by @PerseidMeteor, thanks.


Removing myself as a maintainer

Motivation for this change
I haven't used Nix or NixOS in a while. <3 :wave:
Things done

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

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

Can you remove yourself from the packages you maintain as well?
pkgs/development/python-modules/aws-sam-translator/default.nix
33:    maintainers = [ lib.maintainers.andreabedini ];

pkgs/development/tools/aws-sam-cli/default.nix
99:    maintainers = with maintainers; [ andreabedini lo1tuma ];

@lovesegfault thanks for the quick reply. I just removed myself from the two packages. There are not other maintainers for aws-sam-translator is that going to be a problem? Thanks

Commit messages need to adhere to a common style. They would be:
aws-sam-cli: remove andreabedini from maintainers
aws-sam-translator: andreabedini from maintainers
maintainers: remove andreabedini

The order here is important too, since you can only remove yourself from the maintainer list once you are no longer listed in any pkgs.

There are not other maintainers for aws-sam-translator is that going to be a problem?

Not really, all that means is that if it ever breaks and no one wants to deal with the breakage the package will be removed. Not an issue :)

Cheers!


Invalid attributes keys in static imports should be a resolution/loading error and not a parsing error

import "x" with { unknownAttr: "y" }

Should parse successfully, and fail trying to load the imported module.
This is not currently observable within ECMA-262, but it affects how errors are reported for code that contains an actual syntax error:
import "x" with { unknownAttr: "y" }

a b c

Reporting the parsing error at the attribute rather than at the missing semicolon after a is very awkward.

This has been fixed.

I'm reopening this because I noticed that this change caused an assertion in HTML to be invalid (step 9 of https://html.spec.whatwg.org/#creating-a-javascript-module-script).
Right now, ignoring that assertion, when loading a module this is what happens:

(HTML) Fetch the module source code (this might throw)
(ECMA-262) Parse the module (this might throw)
(HTML) For each import of the module,

(HTML) Resolve the URL (this might throw)
(HTML) Check that it has a valid type attribute, if any (this might throw)

(ECMA-262) For each imported module,

(ECMA-262) Check that it does not have any unknown attribute (this might throw)
(HTML) Resolve the URL
Re-run all these steps for the new module

We have two options:

Duplicate step 4.1 in 3, similarly to how 4.2 is already duplicated to report resolution errors early
Just remove the assertion, which doesn't add any value to the "create a JavaScript module script" algorithm. Note that the assertion in https://html.spec.whatwg.org/#fetch-a-single-imported-module-script would still hold, because it happens in 4.3.

I'm implementing this in chromium, and the complexity of doing 1 vs 2 is the same. I have a slight preference for duplicating the check, to align it with modules URL resolution.
cc @domenic

Doing (2) also has the benefit of aligning static and dynamic imports.
Given this code:
await Promise.all([
    import("https://example.com/x", { with: { type: "foo" } }).catch(e => e.message),
    import("x", { with: { type: "foo" } }).catch(e => e.message),
    import("https://example.com/x", { with: { invalid: "foo" } }).catch(e => e.message),
    import("x", { with: { invalid: "foo" } }).catch(e => e.message),
    import('data:text/javascript, import "https://example.com/x" with { type: "foo" }').catch(e => e.message),
    import('data:text/javascript, import "x" with { type: "foo" }').catch(e => e.message),
    import('data:text/javascript, import "https://example.com/x" with { invalid: "foo" }').catch(e => e.message),
    import('data:text/javascript, import "x" with { invalid: "foo" }').catch(e => e.message),
]);

with (1) it would print
[
  "\"foo\" is not a valid module type.",
  "Failed to resolve module specifier 'x'",
  "Invalid attribute key \"invalid\".",
  "Invalid attribute key \"invalid\".",
  "\"foo\" is not a valid module type.",
  "Failed to resolve module specifier \"x\".",
  "Invalid attribute key \"invalid\".",
  "Failed to resolve module specifier \"x\".",
]

while with (2) it would print
[
  "\"foo\" is not a valid module type.",
  "Failed to resolve module specifier 'x'",
  "Invalid attribute key \"invalid\".",
  "Invalid attribute key \"invalid\".",
  "\"foo\" is not a valid module type.",
  "Failed to resolve module specifier \"x\".",
  "Invalid attribute key \"invalid\".",
  "Invalid attribute key \"invalid\"."
]

I don't think I have strong feelings here but all else being equal, aligning dynamic and static imports seems nice.
The assert in step 9 does seem pretty inconsequential to me so removing it from HTML doesn't seem like a big deal.

Fixed in https://github.com/whatwg/html/pull/9599


Add Carthage support

Would be a great alternative to CocoaPods and manual installation.

This is a great idea. Im on it

Added in 2.2.1


sphinx issues

sphinx-build -b html ~/Documents/GitHub/f5-digital-customer-engagement-center/ ~/Desktop/dcec/
Running Sphinx v4.1.2
loading pickled environment... done
building [mo]: targets for 0 po files that are out of date
building [html]: targets for 3 source files that are out of date
updating environment: 0 added, 6 changed, 0 removed
reading sources... [100%] index
/Users/calalang/Documents/GitHub/f5-digital-customer-engagement-center/docs/solutions/security/kic-nap/labSetupAWS.rst:279: WARNING: image file not readable: docs/solutions/security/kic-nap/images/image15.png
/Users/calalang/Documents/GitHub/f5-digital-customer-engagement-center/docs/solutions/security/kic-nap/labSetupAWS.rst:279: WARNING: image file not readable: docs/solutions/security/kic-nap/images/image15.png
/Users/calalang/Documents/GitHub/f5-digital-customer-engagement-center/docs/solutions/security/kic-nap/labSetupAZURE.rst:277: WARNING: image file not readable: docs/solutions/security/kic-nap/images/image15.png
/Users/calalang/Documents/GitHub/f5-digital-customer-engagement-center/index.rst:33: WARNING: toctree contains reference to nonexisting document 'modules/modules_by_category'
looking for now-outdated files... none found
pickling environment... done
checking consistency... /Users/calalang/Documents/GitHub/f5-digital-customer-engagement-center/docs/contributions/contributions.rst: WARNING: document isn't included in any toctree
/Users/calalang/Documents/GitHub/f5-digital-customer-engagement-center/docs/development/module-guidelines.rst: WARNING: document isn't included in any toctree
/Users/calalang/Documents/GitHub/f5-digital-customer-engagement-center/docs/development/securing-sensitive-information.rst: WARNING: document isn't included in any toctree
/Users/calalang/Documents/GitHub/f5-digital-customer-engagement-center/docs/development/upstreaming.rst: WARNING: document isn't included in any toctree
done
preparing documents... done
writing output... [100%] index
generating indices... genindex done
writing additional pages... search done
copying images... [100%] docs/solutions/security/kic-nap/images/image00.png
copying static files... done
copying extra files... done
dumping search index in English (code: en)... done
dumping object inventory... done
build succeeded, 8 warnings.

The HTML pages are in Desktop/dcec.

This looks like its failing on some hidden docs, which we should probably expose
also some KIC image missing

@vinnie357 for the hidden docs, thoughts?


Error on card - only when car is not connected

I have an easee home configured with the card filled with full template from the main instruction page.
When a car is connected by cable I have the stop, resume and override schedule icons at the bottom of the card.
But when the car is not connected i get an error instead of these 3 icons.
2022-05-24 11:07:36 ERROR (MainThread) [frontend.js.latest.202205041] http://homeassistant:8123/hacsfiles/charger-card/charger-card.js?hacstag=308752409011:7113:24 Uncaught TypeError: Cannot read properties of null (reading 'entity_id') and it shows a single (?) icon.
I'm completely new to home assistant - still finding my way around like an  elephant in a porcelain store :-)

I've just verified that my my config is identical to the full advanced configuration as shown on https://github.com/tmjo/charger-card (Did a diff of  my config vs the online one)
I've also verified that all the entity_id are available and active.
The only thing that comes to my mind is that the CHARGERID and CHARGERNAME is the same for me. But have not tried to look below the surface .... (yet)

Hmmm, thats's kindof good. I see that if I simulate 'disconnected' as status I also get a icon '?' showing null. Do you get the error only when clicking the button, or all the time?
Seems like deleting the section
    default:
      - {}
    disconnected:
      - {}

solves it, then you get an empty toolbar. Or you could add something that makes sense while disconnected (although I couldn't really find anything).

@AMajland; sorry for the delay, but if you don't mind, please check latest version just released to see if this bug is solved.

Thankyou for the update.
The stop button is now shown when the car is disconnected. Pressing the stop button gives the error shown here.
 - But since it is disconnected there is nothing to stop :-)
But got this error in the settings after pressing the stop button:

Well, yes, two things: Stop doesn't work when car is disconnected, and the second error message is a deprecation of some services that has been changed in the Easee integration (will be added to card soon). But the original problem was that
    default:
      - {}
    disconnected:
      - {}

gave errors, right? And the workaround was to add a button (hence the stop-button).

Closing this as I believe it has been solved. Please re-open if this is not the case.


intel-compute-runtime: can't find libstdc++.so.6

Describe the bug
I've installed intel-compute-runtime but clinfo nor opencl-info can't find any opencl platform. I've found both applications are looking for icd files in /run/opengl-driver/etc/OpenCL/vendors directory, but /run/opengl-driver directory is empty, so I've created link
ln -s /nix/store/sx0m6kqj8j7vkpw4vhy4bb02d7r5jnmc-intel-compute-runtime-19.34.13959/etc/ /run/opengl-driver/etc

Now opencl-info started to work, but clinfo still couldn't find any opencl platform.  In strace log I've found libstdc++.so.6 library can't be opened.
openat(AT_FDCWD, "/nix/store/nx4x0nmr6mdfx47i5anpqiq9kaq4339n-intel-gmmlib-19.3.2/lib/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/lbh8acqx1j23dkmrdh84f9zn359lw6mh-intel-graphics-compiler-1.0.10/lib/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/n1hpvcp70z4bxfr57vgxkpj6mwhp9b5d-libva-2.5.0/lib/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/pnd2kl27sag76h23wa5kl95a76n3k9i3-glibc-2.27/lib/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)

I've checked ldd command on libigdrcl.so library, and it confirmed problem with missing libstdc++.so.6
find /nix/store/ -name libigdrcl.so
/nix/store/sx0m6kqj8j7vkpw4vhy4bb02d7r5jnmc-intel-compute-runtime-19.34.13959/lib/intel-opencl/libigdrcl.so
ldd /nix/store/sx0m6kqj8j7vkpw4vhy4bb02d7r5jnmc-intel-compute-runtime-19.34.13959/lib/intel-opencl/libigdrcl.so
        linux-vdso.so.1 (0x00007ffdcfab4000)
        libdl.so.2 => /nix/store/pnd2kl27sag76h23wa5kl95a76n3k9i3-glibc-2.27/lib/libdl.so.2 (0x00007f4a9f344000)
        libpthread.so.0 => /nix/store/pnd2kl27sag76h23wa5kl95a76n3k9i3-glibc-2.27/lib/libpthread.so.0 (0x00007f4a9f323000)
        libstdc++.so.6 => not found
        libm.so.6 => /nix/store/pnd2kl27sag76h23wa5kl95a76n3k9i3-glibc-2.27/lib/libm.so.6 (0x00007f4a9f18d000)
        libgcc_s.so.1 => /nix/store/pnd2kl27sag76h23wa5kl95a76n3k9i3-glibc-2.27/lib/libgcc_s.so.1 (0x00007f4a9ef77000)
        libc.so.6 => /nix/store/pnd2kl27sag76h23wa5kl95a76n3k9i3-glibc-2.27/lib/libc.so.6 (0x00007f4a9edbf000)
        /nix/store/pnd2kl27sag76h23wa5kl95a76n3k9i3-glibc-2.27/lib64/ld-linux-x86-64.so.2 (0x00007f4a9f695000)

I've executed  ldd on opencl-info and clinfo, and it looks like opencl-info was linked with libstdc++.so.6 library and can find it, but clinfo was not linked with libstdc++.so.6
ldd `which opencl-info`
        linux-vdso.so.1 (0x00007ffc3439f000)
        libOpenCL.so.1 => /nix/store/17zkrcamc566r8agsazq1r3i6vb58821-ocl-icd-2.2.10/lib/libOpenCL.so.1 (0x00007f943bb51000)
        libstdc++.so.6 => /nix/store/4l35nqpaiwzhfafrpby1xf7kfik7ai7c-gcc-8.3.0-lib/lib/libstdc++.so.6 (0x00007f943b9c6000)
        libm.so.6 => /nix/store/pnd2kl27sag76h23wa5kl95a76n3k9i3-glibc-2.27/lib/libm.so.6 (0x00007f943b830000)
        libgcc_s.so.1 => /nix/store/pnd2kl27sag76h23wa5kl95a76n3k9i3-glibc-2.27/lib/libgcc_s.so.1 (0x00007f943b61a000)
        libc.so.6 => /nix/store/pnd2kl27sag76h23wa5kl95a76n3k9i3-glibc-2.27/lib/libc.so.6 (0x00007f943b464000)
        libdl.so.2 => /nix/store/pnd2kl27sag76h23wa5kl95a76n3k9i3-glibc-2.27/lib/libdl.so.2 (0x00007f943b45f000)
        /nix/store/pnd2kl27sag76h23wa5kl95a76n3k9i3-glibc-2.27/lib/ld-linux-x86-64.so.2 => /nix/store/pnd2kl27sag76h23wa5kl95a76n3k9i3-glibc-2.27/lib64/ld-linux-x86-64.so.2 (0x00007f943bb75000)

ldd `which clinfo`
        linux-vdso.so.1 (0x00007ffd457e2000)
        libOpenCL.so.1 => /nix/store/17zkrcamc566r8agsazq1r3i6vb58821-ocl-icd-2.2.10/lib/libOpenCL.so.1 (0x00007f466e6d7000)
        libdl.so.2 => /nix/store/pnd2kl27sag76h23wa5kl95a76n3k9i3-glibc-2.27/lib/libdl.so.2 (0x00007f466e6d2000)
        libc.so.6 => /nix/store/pnd2kl27sag76h23wa5kl95a76n3k9i3-glibc-2.27/lib/libc.so.6 (0x00007f466e51c000)
        /nix/store/pnd2kl27sag76h23wa5kl95a76n3k9i3-glibc-2.27/lib/ld-linux-x86-64.so.2 => /nix/store/pnd2kl27sag76h23wa5kl95a76n3k9i3-glibc-2.27/lib64/ld-linux-x86-64.so.2 (0x00007f466e6fb000)

So I think opencl-info works because libstdc++.so.6 library was already loaded so libigdrcl.so shouldn't load it. As clinfo was not linked with libstdc++.so.6, liigdrcl.so library need to load it, but can't find it.
When I set LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/nix/store/ddkfn28jz1xhn7czbxrliiq3ap4m5mln-gcc-8.3.0-lib/lib/

clinfo works as expected.
Is it a problem with my config or how intel-compute-runtime was built?
To Reproduce
Steps to reproduce the behavior:

Install intel-compute-runtime

nix-channel --add https://nixos.org/channels/nixpkgs-unstable
nix-channel --update
nix-env -i intel-compute-runtime

Make link to intel-neo.icd file
Run clinfo

Expected behavior
clinfo should load libigdrcl.so with correctly linked libstdc++.so.6 library
Metadata
nix run nixpkgs.nix-info -c nix-info -m
[1 copied, 0.0 MiB DL]
 - system: `"x86_64-linux"`
 - host os: `Linux 5.2.17-200.fc30.x86_64, NixOS, 19.09.1019.c5aabb0d603 (Loris)`
 - multi-user?: `yes`
 - sandbox: `no`
 - version: `nix-env (Nix) 2.3`
 - channels(root): `"nixos-19.09.1019.c5aabb0d603, nixpkgs-20.03pre199995.895874d2145"`
 - nixpkgs: `/root/.nix-defexpr/channels/nixpkgs`

Is it still relevant?

Assuming this was an issue with not installing intel-compute-runtime properly
https://nixos.org/manual/nixos/stable/#sec-gpu-accel-opencl-intel


questions about VQA

Hi, could you share the VQAv2 result fine-tuning with image resolution of 384, the result implemented by me is 76.52 and it is based on your checkpoint pretrained on COCO, SBU, VG, CC3M.

Hi, we didn't save this checkpoint. What are your training/testing commands and can you reproduce the result of our model with the image resolution of 576?

python3 run.py with \     data_root=vqa_arrows \     num_gpus=8 \     num_nodes=1 \     task_finetune_vqa_clip_bert \     per_gpu_batchsize=16 \     load_path=meter_clip16_288_roberta_pretrain.ckpt \     clip16 \     text_roberta \     image_size=384 \     log_dir="finetune_vqa_384/"

I will try to reproduce the vqa result of your model with the image resolution of 576 today,  I will tell you if when the result is reproduced.

Thanks! Could you try adding clip_randaug to the command?

I'm pretty sure clip_randaug is already adding to the training commands, the previous comment was wrong.

ok I'm testing the code on my end. just to confirm, are you testing the checkpoint checkpoint_last.ckpt in your result directory, and can you reproduce the score using the provided VQA-finetuned checkpoint?

I have reproduced the right vqa socre, which is 77.67, when using the VQA-fintuned checkpoint. And the testing checkpoint is the checkpoint_last.ckpt, since the best checkpoint is also the 'checkpoint_last.ckpt'.

Hi, I am also trying to reproduce the VQA results.
Can you please tell me which GPU did you use, and how long did the fine-tuning take? I get around ~15 hours per epoch with 8 RTX 3090 for the command in the README (image_size=576).

Hi, I am also trying to reproduce the results on VQA.
Can you please share which GPUs are you using, what are the values for per_gpu_batchsize and image_size, and how long does training take?

Hi, I am also trying to reproduce the results on VQA. Can you please share which GPUs are you using, what are the values for per_gpu_batchsize and image_size, and how long does training take?

I am using A100 to reproduce the results. and the 'per_gpu_batchsize' is 4 when 'image_size' is 576, but if the 'image_size' is set to 384, 'per_gpu_batchsize' can be set to 16.

Hi @Henry9805, I just ran the command
python run.py with data_root=$DATA_DIR num_gpus=8 num_nodes=1 task_finetune_vqa_clip_bert per_gpu_batchsize=8 clip16 text_roberta image_size=384 clip_randaug load_path=meter_clip16_288_roberta_pretrain.ckpt and got a VQA score of 77.43 on test-dev.
Right now the only difference I could see is the difference in per_gpu_batchsize. Could you set it to 8 and see if it would help?

@zdou0830 thanks, I notice that the 'val_check_interval' is also different I set it to 1.0, and could you please share the 'vqa' arrows?  i'm afraid that there is some difference between the data. it will be better if you can share 'snli' and 'nlvr' arrows.

'val_check_interval' shouldn't matter as I tested the last checkpoint. I'll see if I could share the data files.

@zdou0830 hi, I just noticed my VQAv2 label size is 3128, and it does not match the size you mention in your config file. I have tried to remake these arrows, but the size is still 3128.  is it right?

It is right and this is an issue in ViLT (https://github.com/dandelin/ViLT/issues/39).

thanks, I tried different settings. the results seem same as before. I want to check whether the data is broken in my end. please share some data arrows if you are convenient

I uploaded the VQA data files here: https://drive.google.com/file/d/1qT7YWHpLg-fAL43daKlOsYx2EbbQk--d/view?usp=sharing.

I uploaded the VQA data files here: https://drive.google.com/file/d/1qT7YWHpLg-fAL43daKlOsYx2EbbQk--d/view?usp=sharing.

thank you very much, the data seems no different from mine. and the results is also same as before. I will try other settings.

thank you very much, the data seems no different from mine. and the results is also same as before. I will try other settings.

@Henry9805 Hello, have you solved the problems you encountered before?

@mactavish91 I haven't solve this problem in the end and I have replaced my baseline model with another model

@mactavish91 I haven't solve this problem in the end and I have replaced my baseline model with another model

@Henry9805 It seems that you set the resolution to 384 when fine-tuning and achieved an accuracy rate of 76.52. Did you improve the experimental results after raising the resolution to 576? It will definitely be improved according to common sense.