[pylint] add PLR2044 empty_comment

Summary
Part of #970.
This adds Pylint's R0244 empty_comment lint as well as an always-safe fix.
Test Plan
The included snapshot verifies the following:

A line containing only a non-empty comment is not changed
A line containing leading whitespace before a non-empty comment is not changed
A line containing only an empty comment has its content deleted
A line containing only leading whitespace before an empty comment has its content deleted
A line containing only leading and trailing whitespace on an empty comment has its content deleted
A line containing trailing whitespace after a non-empty comment is not changed
A line containing only a single newline character (i.e. a blank line) is not changed
A line containing code followed by a non-empty comment is not changed
A line containing code followed by an empty comment has its content deleted after the last non-whitespace character
Lines containing code and no comments are not changed

Looks like the ecosystem checks found some edge cases not currently covered:

"empty comment" lines within block comments, which add vertical whitespace for clarity, especially common as header comments for files
lines containing a trailing # character in multi-line comments, which should not be considered empty comments

Nice, thanks for kicking this off! Agreed on the edge cases described above.

[ ] Account for comment style with trailing # at end of comment, e.g. https://github.com/rotki/rotki/blob/63302ca6d67ab928fd6cac7b6137c41df416416c/rotkehlchen/chain/ethereum/modules/l2/loopring.py#L527:

# -- Methods following the EthereumModule interface -- #

[ ] Account for comment style with multiple # symbols on a single line (tying in with the above comment, probably best to just lint when a comment consists of only a single # symbol followed by only whitespace through the end of the line.

[ ] Add comparison to Pylint R2044

Pylint doesn't ignore empty comments in block comments commonly used for visual spacing; I decided these were fine in this implementation since many projects use these and likely do not want them removed.

I agree, we shouldn't flag these.

Pylint detects "empty comments" within the triple-quoted section at the bottom of the file, which is arguably a bug in the Pylint implementation since these are not truly comments. These are ignored by this implementation.

I agree, flagging empty comments within a multi-line string seems like a bug to me.

Noting that I might've missed an edge case where two empty comments exist on consecutive lines forming a "block" comment.

we want to avoid using physical lines when possible

Out of curiosity, why?

Out of curiosity, why?

Primarily because physical line-based approaches tend to be slower, since we need to run the rule over every line. This rule is actually a good example: we already know the locations of all comments in the file (via CommentRanges), so iterating over every line, then checking if the line intersects with the comment ranges, is wasteful as compared to merely iterating over the comment ranges directly. In general, we often have information we've already computed and/or can exploit to limit the search space vs. iterating over the physical lines.


Fix test truncation test for Julia 1.7

One of the truncation tests was failing on Julia 1.7 because the RNG changed (https://github.com/JuliaLang/julia/blob/v1.7.0-beta1/NEWS.md#random) and the new one lead to an accidental degeneracy in the singular value spectrum, leading to an extra singular value being truncated. This fixes the tests accounting for that change.

Codecov Report

Merging #755 (374c2a2) into main (1e44c0c) will decrease coverage by 44.14%.
The diff coverage is 0.00%.

:exclamation: Current head 374c2a2 differs from pull request most recent head d6dab27. Consider uploading reports for the commit d6dab27 to get more accurate results

@@             Coverage Diff             @@
##             main     #755       +/-   ##
===========================================
- Coverage   76.34%   32.19%   -44.15%
===========================================
  Files          84       83        -1
  Lines        9951     9823      -128
===========================================
- Hits         7597     3163     -4434
- Misses       2354     6660     +4306

Impacted Files
Coverage Δ

src/mps/mps.jl
14.51% <0.00%> (-79.22%)
:arrow_down:

src/NDTensors/octavian.jl
0.00% <0.00%> (-100.00%)
:arrow_down:

src/physics/site_types/boson.jl
0.00% <0.00%> (-100.00%)
:arrow_down:

src/physics/site_types/fermion.jl
0.00% <0.00%> (-98.39%)
:arrow_down:

src/physics/site_types/qudit.jl
0.00% <0.00%> (-97.30%)
:arrow_down:

...c/ContractionSequenceOptimization/three_tensors.jl
0.00% <0.00%> (-96.16%)
:arrow_down:

src/mps/observer.jl
7.14% <0.00%> (-92.86%)
:arrow_down:

src/iterativesolvers.jl
0.00% <0.00%> (-89.62%)
:arrow_down:

src/mps/projmps.jl
0.00% <0.00%> (-88.38%)
:arrow_down:

src/mps/diskprojmpo.jl
0.00% <0.00%> (-83.34%)
:arrow_down:

... and 63 more

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 1e44c0c...d6dab27. Read the comment docs.

Great. I’ll go ahead and tag a new version after this, since this (from a developer side) and the other PR were pretty serious bugs.


Remove gap shim

Closes
✅ Pull Request Checklist:

[ ] Included link to corresponding React Spectrum GitHub Issue.
[ ] Added/updated unit tests and storybook for this change (for new code or code which already has tests).
[ ] Filled out test instructions.
[ ] Updated documentation (if it already exists for this component).
[ ] Looked at the Accessibility Practices for this feature - Aria Practices

📝 Test Instructions:

🧢 Your Project:

We should update the docs to reflect this I guess


Fixing travis tests

Summary
Due to the use of gamification gem some tests errors appeared

Changes Unknown when pulling ab07c9856ff5928f52f4f14b483c2b34f0630e86 on marceloperini:master into ** on gorails:master**.


Dependency Conflicts

This project seemed to conflict with my other Composer projects, so I tried making a new Composer directory, but I still got the same error:

Problem 1
- fillup/walmart-partner-api-sdk-php 1.0.2 requires guzzlehttp/guzzle-services dev-master -> satisfiable by guzzlehttp/guzzle-services[dev-master] but these conflict with your requirements or minimum-stability.
- fillup/walmart-partner-api-sdk-php 1.0.1 requires guzzlehttp/guzzle-services dev-master -> satisfiable by guzzlehttp/guzzle-services[dev-master] but these conflict with your requirements or minimum-stability.
- fillup/walmart-partner-api-sdk-php 1.0.0 requires guzzlehttp/guzzle-services dev-master -> satisfiable by guzzlehttp/guzzle-services[dev-master] but these conflict with your requirements or minimum-stability.
- Installation request for fillup/walmart-partner-api-sdk-php ^1.0 -> satisfiable by fillup/walmart-partner-api-sdk-php[1.0.0, 1.0.1, 1.0.2].

I tried installing guzzlehttp/guzzle-services:dev-master first and got this:

Problem 1
- fillup/walmart-partner-api-sdk-php 1.0.2 requires roave/security-advisories dev-master -> satisfiable by roave/security-advisories[dev-master] but these conflict with your requirements or minimum-stability.
- fillup/walmart-partner-api-sdk-php 1.0.1 requires roave/security-advisories dev-master -> satisfiable by roave/security-advisories[dev-master] but these conflict with your requirements or minimum-stability.
- fillup/walmart-partner-api-sdk-php 1.0.0 requires roave/security-advisories dev-master -> satisfiable by roave/security-advisories[dev-master] but these conflict with your requirements or minimum-stability.
- Installation request for fillup/walmart-partner-api-sdk-php ^1.0 -> satisfiable by fillup/walmart-partner-api-sdk-php[1.0.0, 1.0.1, 1.0.2].

So I installed roave/security-advisories:dev-master and that worked; I was able to install this project to the new directory.
However, I now have 2 composer folders, and I'm not sure why this was an issue after I did a clean install.
Clean install directory structure:
-Composer2
--vendor [empty folder]
--.gitignore
--composer.phar
The requirements for my original Composer dir:
"twig/twig": "^1.0",
"kunalvarma05/dropbox-php-sdk": "^0.1.0",
"phpmailer/phpmailer": "^5.2"

Hi @compujosh, the problem is I depend on guzzlehttp/guzzle-services: dev-master which is not considered stable. I need to use dev-master because it includes a couple fixes that never got a release tag. To fix the stability issue, in your composer.json file, add the dependency for "guzzlehttp/guzzle-services": "dev-master". Composer is fine if you directly include non-stable packages because you defined them yourself, but it will complain if a dependency of yours has non-stable dependencies. Does that make sense?
So in your composer.json you should have:
  "guzzlehttp/guzzle-services": "dev-master",
  "fillup/walmart-partner-api-sdk-php": "^1.0.2"

Let me know if that resolves your issue.

Yeah I think I got it. I guess the second Composer directory is the best way to handle it for now. Thanks

@compujosh what do you mean by a second composer directory? I would only expect you to have the one composer.json, one composer.lock, and a single vendor/ directory.

Another project requires a stable version of guzzlehttp/guzzle-services, so I just copied composer to a new directory


Igv clin position

fixed igv modal positioning inside Clin

quarantest build successful. Demo link at
http://ecc22a3fbb80b656f7d7c112c8660f40212ddb30.quarantest.iobio.io

quarantest build successful. Demo link at
http://ecc22a3fbb80b656f7d7c112c8660f40212ddb30.quarantest.iobio.io

quarantest build successful. Demo link at
http://ecc22a3f.quarantest.iobio.io

To test this commit, you will need to launch gene from inside clin.  I'm not sure how this would work with the quarentest build, so I recommend cloning this branch locally, and running a local version of gene and clin.  When igv is launched from inside clin, the igv popup should appear near the top of the page, and you should not have to scroll down to view igv


configure.ac: enable successful compile with gettext 0.20

fixes
*** error: gettext infrastructure mismatch: using a Makefile.in.in from gettext version 0.18 but the autoconf macros are from gettext version 0.20
support compiling if gettext 0.20 or later is found
AM_GNU_GETTEXT_REQUIRE_VERSION overwrites AM_GNU_GETTEXT_VERSION if autoreconf supports it, so legacy systems are still supported

Interesting, I had no idea this could happen!  I crawled the web a bit and ran into this https://github.com/GNOME/libgsf/commit/91027d3447666c6f13c31b4b5984e1a8212983da which indicates we might need to bump the minimum required version as well.

This also bumps the version requirement on gettext to 0.19.6 because
AM_GNU_GETTEXT_REQUIRE_VERSION was added in this version.

Any comments?

Interesting, I had no idea this could happen!  I crawled the web a bit and ran into this https://github.com/GNOME/libgsf/commit/91027d3447666c6f13c31b4b5984e1a8212983da which indicates we might need to bump the minimum required version as well.

This also bumps the version requirement on gettext to 0.19.6 because
AM_GNU_GETTEXT_REQUIRE_VERSION was added in this version.

Any comments?

I think you might be right. We have been assuming that we could leave it alone, but as you have discovered AM_GNU_GETTEXT_REQUIRE_VERSION is 0.19.6.
the compile error actually happened on the bump to 0.21
LibreELEC.tv$ git ls | grep gettext | head
a5c75f1969 minidlna: fix build for gettext 0.20 or newer [CvH]
2294589cb3 gettext: update to 0.21 [heitbaum]
993efe01a6 gettext: update to 0.20.2 [Matthias Reichl] - 7 Sep 2020
0423df400a gettext: update to gettext-0.20.1 [MilhouseVH]
8c4c45b27b gettext: update to <IP_ADDRESS> [Lukas Rusak]
088a608b69 gettext: update to gettext-0.19.7 [Stephan Raue]
ae98e8e669 gettext-update to gettext-0.19.6 [Stephan Raue] - 12 Sep 2015
49b2714465 gettext: update to gettext-<IP_ADDRESS> [Stephan Raue]
a4ed580181 gettext: update to gettext-0.19.5 [Stephan Raue]
6dc65b89b5 gettext: update to gettext-0.19.4 [Stephan Raue]
1b186a7bb4 gettext: update to gettext-0.19.3 [Stephan Raue]

I think you might be right. We have been assuming that we could leave it alone, but as you have discovered AM_GNU_GETTEXT_REQUIRE_VERSION is 0.19.6.
the compile error actually happened on the bump to 0.21
LibreELEC.tv$ git ls | grep gettext | head
a5c75f1969 minidlna: fix build for gettext 0.20 or newer [CvH]
2294589cb3 gettext: update to 0.21 [heitbaum]
993efe01a6 gettext: update to 0.20.2 [Matthias Reichl] - 7 Sep 2020
0423df400a gettext: update to gettext-0.20.1 [MilhouseVH]
8c4c45b27b gettext: update to <IP_ADDRESS> [Lukas Rusak]
088a608b69 gettext: update to gettext-0.19.7 [Stephan Raue]
ae98e8e669 gettext-update to gettext-0.19.6 [Stephan Raue] - 12 Sep 2015
49b2714465 gettext: update to gettext-<IP_ADDRESS> [Stephan Raue]
a4ed580181 gettext: update to gettext-0.19.5 [Stephan Raue]
6dc65b89b5 gettext: update to gettext-0.19.4 [Stephan Raue]
1b186a7bb4 gettext: update to gettext-0.19.3 [Stephan Raue]

I’d be happy to redo the PR if you would like? It does keen limiting libconfuse to 2015-09-10 version of gettext. Where as 0.18 is 2010-05-09. https://ftp.gnu.org/gnu/gettext/

I’d be happy to redo the PR if you would like? It does keen limiting libconfuse to 2015-09-10 version of gettext. Where as 0.18 is 2010-05-09. https://ftp.gnu.org/gnu/gettext/

Yeah, i think the main reason serve tried to keep it to the lowest possible version is to be compatible with older RHEL. If that comes up well just have to recommend an earlier release for them.
You can just force push to your branch, that's quicker.

Yeah, i think the main reason serve tried to keep it to the lowest possible version is to be compatible with older RHEL. If that comes up well just have to recommend an earlier release for them.
You can just force push to your branch, that's quicker.

Yeah, i think the main reason serve tried to keep it to the lowest possible version is to be compatible with older RHEL. If that comes up well just have to recommend an earlier release for them.
You can just force push to your branch, that's quicker.

Done - and updated the commentary. Only Debian.Jessie and Ubuntu 14.04 got dropped off by this PR, RHEL7 and Centos7 had patched to 0.19.8.

Yeah, i think the main reason serve tried to keep it to the lowest possible version is to be compatible with older RHEL. If that comes up well just have to recommend an earlier release for them.
You can just force push to your branch, that's quicker.

Done - and updated the commentary. Only Debian.Jessie and Ubuntu 14.04 got dropped off by this PR, RHEL7 and Centos7 had patched to 0.19.8.

Awesome, thank you for taking the time to investigate the impact as well! <3

Awesome, thank you for taking the time to investigate the impact as well! <3

Interesting, I had no idea this could happen! I crawled the web a bit and ran into this GNOME/libgsf@91027d3 which indicates we might need to bump the minimum required version as well.

just saying the source of that commit is the same commit you mentioned from gnome (:
I discovered the same and advised @heitbaum in that direction
but looks working for other projects too so likely good workaround 👍

Interesting, I had no idea this could happen! I crawled the web a bit and ran into this GNOME/libgsf@91027d3 which indicates we might need to bump the minimum required version as well.

just saying the source of that commit is the same commit you mentioned from gnome (:
I discovered the same and advised @heitbaum in that direction
but looks working for other projects too so likely good workaround 👍


Create a registration wall for Intake catalogs

We turned on requester pays on our intake catalogs because we didn't want to get hit with unexpected egress fees. We don't love this because it requires the user to set up a GCP project and billing account.
The good folks over at openaddresses recommended we use a registration wall so we can block folks who are abusing our data. They created their own frontend that requires people to register before downloading their data. Creating something like this will be trickier for us because intake is a programmatic tool.

How can we register people via intake requests? Does intake support something like this? Can we have a front end that registers the user and adds them as a Storage User of the intake buckets?
If we need to create a front end, is there an out-of-the-box tool we can use? Google OAuth?
Even if we have a registration wall there will be a lag in our ability to block them. How can we rate limit the egress? Ian at OpenAddresses recommended Bunny CDN which offers bandwidth limiting.

We no longer support the intake catalogs and distribute data via an s3 bucket. The costs are covered by AWS.


Add support for SQS

@marcingrzejszczak can you elaborate a bit on this? Have you looked at: https://github.com/SmartThingsOSS/smartthings-brave/tree/master/brave-sqs if you are considering the propagation. Or are you thinking more along the lines of native integration with spring-cloud-aws-messaging. I've been working through this exact thing the last couple weeks so I'm interested in the approach and how I can make our apps less custom

Have you looked at: https://github.com/SmartThingsOSS/smartthings-brave/tree/master/brave-sqs if you are considering the propagation

I haven't. Thanks for pointing it out!

Or are you thinking more along the lines of native integration with spring-cloud-aws-messaging.

I was also thinking about it. I wanted to make sure that it's actually working. spring-cloud-aws-messaging is using Spring messaging under the hood, so I wanted to double check if it maybe works out of the box right now (by any chance).

I've been working through this exact thing the last couple weeks so I'm interested in the approach and how I can make our apps less custom.

I'd love to join forces then. Whatever works, we can autoconfigure it in Sleuth.

@marcingrzejszczak I spiked an attempt in #1218


Support profiling methods that take blocks.

You're on fire! Thank you! Just released 1.1.0 with your changes.


[CI Test] Update localrest & re-enable ManyValidators test

It looks like we still have performance issues:
2020-10-04 04:21:25,432 Trace [agora.network.NetworkClient] - Request 'getBlockHeight' to Validator #1 (GDB22QJ4NHOHPOGWZG2Y5IFXKW6DCBEFX6QNBR6NSCT6E7CYU66IDGJJ) failed: Request timed-out
2020-10-04 04:21:25,432 Trace [agora.network.NetworkClient] - Request 'getNodeInfo' to Validator #7 (GDH22SK6XFL6ZETRGFHYHIYXHPRSFR2RWT4RZYU5YNYIF6BIHCRKPSEI) failed: Request timed-out
2020-10-04 04:21:25,432 Trace [agora.network.NetworkClient] - Request 'receivePreimage' to Validator #3 (GDD22H4TGRGS5ENN3DHBGMMCSZELKORKEZT4SZKTKHZESTVQMONREB2D) failed: Request timed-out

So I will remove the second commit for the time being.


[Improvement][Configure Cluster] When assigning nodes to components, reduce user operations and improve user experience.

Search before asking

[X] I had searched in the issues and found no similar feature requirement.

Description
在部署 Hadoop 组件，分配角色时，在 agent 节点中按照硬件资源，随机选中组件所需的节点数量，减少用户的操作，提升用户体验。

Are you willing to submit a PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

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

Thank you for your suggestion. The DataSophon community will carefully consider your suggestion


Updated deprecated Buffer calls fixing #1062

Updated deprecated Buffer calls fixing #1062

Awesome! Thanks for double checking. Please do.

Merged manually. Thanks!


ERROR:dronekit:Exception in message handler for HEARTBEAT

Hi there,
I connected my PixHawk Cube orange to a Jetson Xavier NX. The connection works, I recevie messages about the battery voltage, ecc ecc.
In the terminal the following error appears:
ERROR:dronekit:Exception in message handler for HEARTBEAT
Traceback (most recent call last):
  File "/home/cecilia/ceciliaEnv/lib/python3.8/site-packages/dronekit/__init__.py", line 1531, in notify_message_listeners
    fn(self, name, msg)
  File "/home/cecilia/ceciliaEnv/lib/python3.8/site-packages/dronekit/__init__.py", line 1223, in listener
    raise APIException("mode (%s, %s) not available on mavlink definition" % (m.custom_mode, m.base_mode))
dronekit.APIException: mode (0, 4) not available on mavlink definition
Connection to Cecilia Succesful!
Mode: GUIDED
ERROR:dronekit:Exception in message handler for HEARTBEAT
Traceback (most recent call last):
  File "/home/cecilia/ceciliaEnv/lib/python3.8/site-packages/dronekit/__init__.py", line 1531, in notify_message_listeners
    fn(self, name, msg)
  File "/home/cecilia/ceciliaEnv/lib/python3.8/site-packages/dronekit/__init__.py", line 1223, in listener
    raise APIException("mode (%s, %s) not available on mavlink definition" % (m.custom_mode, m.base_mode))
dronekit.APIException: mode (0, 4) not available on mavlink definition
ERROR:dronekit:Exception in message handler for HEARTBEAT
Traceback (most recent call last):
  File "/home/cecilia/ceciliaEnv/lib/python3.8/site-packages/dronekit/__init__.py", line 1531, in notify_message_listeners
    fn(self, name, msg)
  File "/home/cecilia/ceciliaEnv/lib/python3.8/site-packages/dronekit/__init__.py", line 1223, in listener
    raise APIException("mode (%s, %s) not available on mavlink definition" % (m.custom_mode, m.base_mode))
dronekit.AP

My code:
# cecilia connect

# Import DroneKit-Python
from dronekit import connect
import time

# Connect to the Vehicle (in this case a UDP endpoint)

vehicle = connect('/dev/serial/by-id/usb-Hex_ProfiCNC_CubeOrange_220040000F51303438373832-if00')

#vehicle = connect('/dev/ttyAMA0', wait_ready=True, baud=57600)
print("Connection to Cecilia Succesful!")
print("Mode: %s" % vehicle.mode.name)
time.sleep(2)
# Close vehicle object before exiting script
vehicle.close()

print("Completed")

After different trys i found a working solution (with the help of this issue)
I changed the "Serial Protocol 5" setting value to -1 (aka None). To make this change I connected the Cube Orange via USB to Mission Planner, searched for SERIAL5_PROTOCOL and changed the value. (Remember to write your parameters!!!)
:)


Remove path prefix from activity and workflow type names

This is current name of a workflow:
go.temporal.io/temporal/internal.splitJoinActivityWorkflow
This make moving workflows between directories hard and forces specifying string name for every workflow.
The proposal is to change it to splitJoinActivityWorkflow

Add capitalization of first letter.  Already fixed.  Verify and close.


ASTDemangler: Fix reconstruction of opaque result type defined in a constrained extension

The mangling includes all generic parameters, even non-canonical ones.
Fixes rdar://problem/67949286.

@swift-ci Please smoke test

Thanks!


fix change boost thirdparty url to offical archives.boost.io

Proposed changes
Issue Number: close #xxx
The old url https://boostorg.jfrog.io/artifactory/main/release/1.81.0/source/boost_1_81_0.tar.gz is no longer available.
Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

master pr: #29401

Hi @xiaokang , it seems that the URL is available.

Hi @xiaokang , it seems that the URL is available.

It's really strange. I tried it now and it works, but it does not work this morning. Maybe the official url is more stable.

#29401


How to define origins, sources, metrics?

Hi,
After setting up facette, reading all the documentation, I can't find how to add the above.
I see them in the browse page, but selecting any of these 3 doesn't show the add '+' like the one in collections, graphs, etc.
Reading old documentation I see there was a "provider settings" file, which should have the information I'm trying to add.
Just defining the information on the graphs doesn't seem to have any effect: no data is actually plotted, nothing is added to the origins/sources/metrics sections... and I'm not even sure what the format should be, i.e. what's the relation btw the actual file path (in my case collectd + rrd files), and the values used (it makes more sense to put the detail in the configuration, not the name).
The only one I was able to add is providers (rrd in my case), with a pattern that does show where the files are (in combination with the base directory.

More info I failed to see before:
The log does show that there's a problem with my configuration, I get (why is the time in GMT?):
2017/11/26 22:21:57.529510 ERROR: poller[rrdtool]: string "Envoy/Inverter3/power.rrd" does not match ""Envoy/(?P[^/])/(?P.).rrd"" pattern
No idea where the extra quotes came from.
Similar error from changing the graph definition:
2017/11/26 22:13:55.352692 WARNING: http: unable to find series metric: {Name: "Inverter3/power", Origin: "collectd", Source: "Envoy", Metric: "Inverter3/power"}
This one is missing the rrd (on the path).  But even after adding that:
2017/11/26 22:31:44.135740 WARNING: http: unable to find series metric: {Name: "Envoy/Inverter0/power", Origin: "collectd", Source: "rrd", Metric: "Envoy/Inverter0/power"}
or even:
2017/11/26 22:33:56.605592 WARNING: http: unable to find series metric: {Name: "Inverter0/power", Origin: "collectd/rrd", Source: "Envoy", Metric: "Inverter0/power"}

Hi @rb07,
You are right: the origins, sources and metrics come from the data found by the providers.
Did you configure the RRD provider base_directory using an absolute path?

Yes, the path in "provider definition" (if we are talking about the web interface: providers, then select the one, go into configuration, base directory) is an absolute path.

The extra quotes in the match pattern were put by me, sorry for the noise, still w/o the quotes (or any wildcards, or quoted dots):
2017/11/27 16:57:36.008496 ERROR: poller[rrdtool]: string "Envoy/Inverter3/power.rrd" does not match "Envoy/(?P<source>)/(?P<metric>).rrd" pattern
Seems to me "source", and "metric" has to be defined elsewhere, not in the graph, because those are literally correct (from the graph) and still get the "doesn't match" error.

Did you try with Envoy/(?P<source>[^/]+)/(?P<metric>.+)\.rrd?
As in the log message you pasted above Envoy/(?P<source>)/(?P<metric>)\.rrd misses some expressions in named groups source and metric.

Yes I did... but when I had it in quotes.
Trying it again it works!
I also changed the name of the provider to "collectd".
Now in the graphs I'm getting completion when I enter origin/source/power.  Success!
Thank you!

You're welcome. Great to hear that it works.


[Help] Example build is failling

Info

GFX version: 0.1.0
Host OS: WSL (Windows 10 subsystem for Linux, Ubuntu)
Target OS: Windows

Log
$ cargo build --bin compute --target=x86_64-pc-windows-gnu --features
 dx12
   Compiling spirv_cross v0.10.0
   Compiling derivative v1.0.0
error: failed to run custom build command for `spirv_cross v0.10.0`
process didn't exit successfully: `/home/hydroper/OuterRustLibs/gfx/target/debug/build/spirv_cross-fd643e8ea6600941/build-script-build` (exit code: 101)
--- stdout
OPT_LEVEL = Some("0")
TARGET = Some("x86_64-pc-windows-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
TARGET = Some("x86_64-pc-windows-gnu")
TARGET = Some("x86_64-pc-windows-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CXX_x86_64-pc-windows-gnu = None
CXX_x86_64_pc_windows_gnu = None
TARGET_CXX = None
CXX = None
HOST = Some("x86_64-unknown-linux-gnu")
CROSS_COMPILE = None
TARGET = Some("x86_64-pc-windows-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CXXFLAGS_x86_64-pc-windows-gnu = None
CXXFLAGS_x86_64_pc_windows_gnu = None
TARGET_CXXFLAGS = None
CXXFLAGS = None
DEBUG = Some("true")
TARGET = Some("x86_64-pc-windows-gnu")
OPT_LEVEL = Some("0")
TARGET = Some("x86_64-pc-windows-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
TARGET = Some("x86_64-pc-windows-gnu")
TARGET = Some("x86_64-pc-windows-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CXX_x86_64-pc-windows-gnu = None
CXX_x86_64_pc_windows_gnu = None
TARGET_CXX = None
CXX = None
HOST = Some("x86_64-unknown-linux-gnu")
CROSS_COMPILE = None
TARGET = Some("x86_64-pc-windows-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CXXFLAGS_x86_64-pc-windows-gnu = None
CXXFLAGS_x86_64_pc_windows_gnu = None
TARGET_CXXFLAGS = None
CXXFLAGS = None
DEBUG = Some("true")
TARGET = Some("x86_64-pc-windows-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CXX_x86_64-pc-windows-gnu = None
CXX_x86_64_pc_windows_gnu = None
TARGET_CXX = None
CXX = None
CROSS_COMPILE = None
CXXFLAGS_x86_64-pc-windows-gnu = None
CXXFLAGS_x86_64_pc_windows_gnu = None
TARGET_CXXFLAGS = None
CXXFLAGS = None
running: "x86_64-w64-mingw32-g++" "-O0" "-ffunction-sections" "-fdata-sections" "-g" "-fno-omit-frame-pointer" "-m64" "-Wall" "-Wextra" "-std=c++14" "-o" "/home/hydroper/OuterRustLibs/gfx/target/x86_64-pc-windows-gnu/debug/build/spirv_cross-b8390a4acfedb89c/out/src/wrapper.o" "-c" "src/wrapper.cpp"
exit code: 127

--- stderr
thread 'main' panicked at '

Internal error occurred: Command "x86_64-w64-mingw32-g++" "-O0" "-ffunction-sections" "-fdata-sections" "-g" "-fno-omit-frame-pointer" "-m64" "-Wall" "-Wextra" "-std=c++14" "-o" "/home/hydroper/OuterRustLibs/gfx/target/x86_64-pc-windows-gnu/debug/build/spirv_cross-b8390a4acfedb89c/out/src/wrapper.o" "-c" "src/wrapper.cpp" with args "x86_64-w64-mingw32-g++" did not execute successfully (status code exit code: 127).

', /home/hydroper/.cargo/registry/src/github.com-1ecc6299db9ec823/cc-1.0.22/src/lib.rs:2242:5
note: Run with `RUST_BACKTRACE=1` for a backtrace.

warning: build failed, waiting for other jobs to finish...
error: build failed

This failure is related to my MinGW btw, but...


Co-management link at top takes you to generic docs home page

I suspect that either it shouldn't be an active link or it should link to somewhere other than https://docs.microsoft.com/en-us/

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

ID: f24ae716-bf27-7d45-cb15-0bc6eea64374
Version Independent ID: f444ef64-9b7d-999f-3fb3-6ac6cda3ef88
Content: Co-management for Windows 10 devices - Configuration Manager
Content Source: sccm/comanage/overview.md
Product: configuration-manager
Technology: configmgr-client
GitHub Login: @aczechowski
Microsoft Alias: aaroncz

Thanks @texasgirl for the feedback. We recently changed the TOC format to support better accessibility, along with some fundamental platform changes. This behavior is the same across other nodes, e.g., core, osd, app, etc. We'll investigate what's happening - that's not the intended behavior.


https://jira.agora.io/browse/CSD-11353

Test in broadcasting mode:

Preview(Local)
Subscribe(Remote)

initial: arrow-up
initial: arrow-right

clockwise rotation
contrarotate

We'd better have a discussion before refactoring these code.


Repo cloning error

I've been working on refactoring my Concourse pipeline, and at some point in the process the get step to clone the repo started failing with this:
Initialized empty Git repository in /tmp/build/get/.git/
Switched to a new branch 'master'
2019/10/20 20:50:14 get failed: clone failed: exit status 1

Everything I've tried to this point hasn't fixed the problem, including reverting the pipeline config and going back to the last known working version.
I came across issue-65, which lead me to hijacking the container where it's failing and manually clone the repo with:
git pull<EMAIL_ADDRESS>master

The above worked just fine.
Per that issue, I also attempted to set the skip_ssl_verification flag to true, but that didn't help either.
I'm at a loss at why this is failing. The fact that even reverting to the last working version of the pipeline config fails in the same way seems to suggest that it could be an auth issue, but the fact that I can hijack the container and successfully run the command that the resource would run shows that's it's not an issue with the access token.
Any suggestions? Any help is much appreciated!
Thanks,
Tim

In an effort to get the failure to reproduce, can you try submitting a json payload to the binary when hijacking?

You mean to the /opt/resource/in binary? what should be in the payload? does it need to be all the fields specified here:
https://github.com/telia-oss/github-pr-resource/blob/master/in.go#L66

Closing, this was human error: somehow I managed to add a trailing space to the github token in the fly set-pipeline command that I couldn't see. Sorry for the noise.


Generate sample HTTP calls?

Should the stylesheet generate sample HTTP calls for methods?  Several people have requested this.
If we do so, should we obscure the URI do discourage people from coding to it, or is that being too paternalistic?

Seems like a duplicate of #4.

I don't think so.
#4 requires a chain of calls, and I'm not sure that it's feasible, because we would have to ensure that the messages in each step of the chain are consistent with each other.  I'd like to see a proof of concept for that.  But generating an individual message is probably quite straightforward.

Generating an individual message is something that makes sense for "pragmatic" REST APIs. For hypermedia-driven APIs, you'll need the response of the previous request to know what your next request looks like, so you always need at least two chained requests.
So I still believe this is a duplicate of #4.
RADL contains all the information to "ensure that the messages in each step of the chain are consistent with each other". We just have to start at some state (either the start state or some previously bookmarked state) and follow a couple of transitions.


Image stretched on IE

How it should look:

How it looks on IE:

This is as a result of IE (and Edge as well, apparently) not supporting object-fit. It's under consideration for Edge, but won't be supported in IE11. Not sure if this means we wait until it's supported (and ignore IE11 because who cares), or polyfill it...

Seems like this has been solved... somehow. Closing as images look fine now in IE.


Inserted background tasks post migration will not be executed

Problem
I have recurring tasks in my project which will be created post migration. I created an example that is  able to reproduce the bug.
The task will be inserted into the background_task table. But the runner is not executing the code via python manage.py process_tasks.
I did try to debug:
when the Runner is in method DBTaskRunner.get_task_to_run:
The correct Task is fetched in the database but later filtered in the list-comprehension.
available_tasks = [task for task in Task.objects.find_available(queue)
                               if task.task_name in tasks._tasks][:5]

tasks._tasks ={} - an empty dict so that when task = {Task} test it will not be added into the list.
So this might either be a problem of understanding or a bug.
I did not fully understand how the dict Tasks._tasks is used.
Package-Versions:
Django==3.0.3
django-background-tasks==1.2.5
Structure
root/
| -- __init__.py
| -- example/
      | -- __init__.py
      | -- app1/
             | -- __init__.py
             | -- apps.py
             | -- background_jobs/
                   | -- __init__.py
                   | -- recurring_tasks.py
      | -- settings/
             | -- __init__.py
             | -- base.py
             | -- development.py
      | -- urls.py
      | -- asgi.py
      | -- wsgi.py
| -- db.sqlite3
| -- manage.py

This is a default django-project, I'd prefer to insert my apps inside the project folder. Moreover I split the settings in a base, development and production.
manage.py
def main():
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'example.settings.development')
...

example/settings/base.py
...
INSTALLED_APPS = [
    "django.contrib.admin",
    "django.contrib.auth",
    "django.contrib.contenttypes",
    "django.contrib.sessions",
    "django.contrib.messages",
    "django.contrib.staticfiles",
    # installed custom
    "background_task",
    "example.app1.apps.App1Config"
]
...

example/settings/development.py
from .base import *

DEBUG = True

example/app1/apps.py
from django.apps import AppConfig
from django.db.models.signals import post_migrate
from django.dispatch import receiver

class App1Config(AppConfig):
    name = 'example.app1'

    def ready(self):
        post_migrate.connect(
            init_tasks, sender=self
        )

@receiver(
    post_migrate, sender=App1Config
)
def init_tasks(sender, **kwargs):
    from example.app1.background_jobs.recurring_tasks import test_method

    print("> init task")
    test_method(verbose_name="test")

example/app1/background_jobs/recurring_tasks.py
from background_task import background

@background
def test_method():
    print("> run")
    for i in range(5):
        print(i)

I did not fully understand how the dict Tasks._tasks is used.

AFAIK - It's used to store the function proxies to call, when a corresponding background task is seen in the database.
We ran into a frozen background tasks state - when we removed @background decorator from one of the functions which still had a lot of pending tasks in the database. Similarly tasks from Task.objects.find_available() got filtered due to _tasks.
This was also because all our tasks had the same priority.
I wonder if it makes sense to pass these _tasks when finding available tasks.
e.g. Task.objects.filter(task_name__in=_tasks.keys()).find_available()
So that the dead / deprecated background tasks are skipped instead of blocking the whole queue.


Add runfiles demo project for upcoming blog post

Requested by @laszlocsomor during review of the upcoming EngFlow blog post: "Migrating to Bazel Modules (a.k.a. Bzlmod) - Repo Names and Runfiles".

I won't get to this today, sorry. Could you maybe add another reviewer or two?

I won't get to this today, sorry. Could you maybe add another reviewer or two?

Sure, no problem. Done!

@laszlocsomor I ported the runfiles/engflow/BUILD comments you suggested in the blog post review into this PR before merging. Thanks!


Always get CRC error using bitbangio

I am running on rpi zero w using Adafruit-Blinka 6.4.0 and adafruit-circuitpython-lc709203f 2.0.2 and adafruit-circuitpython-bitbangio 1.2.4 on raspbian buster python 3.7.
I am trying to use bitbangio as I also have an SSD1306 on the normal H/W I2C ports (and it won't work with the clock stretching needed with the lc7).
If I run the lc7 on the H/W I2C ports with clock stretching set to 10KHz it mostly works (I do get occasional CRC errors). However when trying to use the bitbangio I always get the CRC error, no matter what frequency I set for it. (I tried everything from 10KHz down to 100Hz).
The only change to the simple test is using i2c from bitbangio. I have tried multiple GPIO pin combinations (D23,D24 and D20, D21).
LC709203F simple test
Make sure LiPoly battery is plugged into the board!
Traceback (most recent call last):
  File "test-batmon-bitbang.py", line 17, in <module>
    print("IC version:", hex(sensor.ic_version))
  File "/home/pi/.local/lib/python3.7/site-packages/adafruit_lc709203f.py", line 127, in ic_version
    return self._read_word(LC709203F_CMD_ICVERSION)
  File "/home/pi/.local/lib/python3.7/site-packages/adafruit_lc709203f.py", line 187, in _read_word
    raise RuntimeError("CRC failure on reading word")
RuntimeError: CRC failure on reading word

I have read that this CRC error is quite common on different platforms, and I wonder if there are any hints as to how to make this work.

I think this maybe an issue with bitbangio on rpi, as a logic analyzer trace of the exchange looks completely wrong to me.

never mind, I think I need a pullup on SDA pin, but also I think ,maybe it is too much to expect linux/rpizero to be able to bitbang I2C. I think thi shas nothign to do with this driver at any rate. Sorry for the noise.

Let us know if you get it working.

The pull up made no difference, and looking closely at the logic trace I now suspect the bitbangio is missing sending a final clock after the data where the ack should come in. This confuses my logic analyser (it says missing ack even though there is one clearly visible), and probably confuses the chip too.
I'll study this and see if there is a bug in the bitbangio routines, and if so I'll file an issue on that library.
Thanks

FYI this turned out to be multiple bugs in the bitbangio I2C library that you have to use on blinka. I fixed them as best I could here https://github.com/adafruit/Adafruit_CircuitPython_BitbangIO/pull/18
It now works some of the time with this chip at around a frequency of 200Hz.
However the chip will still get confused and return CRC errors, which it also does when running at 10KHz from the H/W I2C.
I am still looking into that, I am not sure if it is a bug in this library or another bug in the bitbangio library.
I have logic traces when this happens on the bitbang i2c, but I also need to capture it on the h/w i2c and see if the issue is the same.


POLIO-1092: use new lqas endpoints

Use endpoints generated by open hexa pipelines to fetch lqas data in order to (vastly!) improve loading time for LQAS map
Related JIRA tickets :  POLIO-1006, POLIO-1092
⚠Depends on https://github.com/BLSQ/iaso-pipelines/pull/2⚠ => HAS BEEN MERGED
Self proofreading checklist

[X] Did I use eslint and black formatters
[X] Is my code clear enough and well documented
[ ] Are my typescript files well typed
[ ] New translations have been added or updated if new strings have been introduced in the frontend
[ ] My migrations file are included
[ ] Are there enough tests
[ ] Documentation has been included (for new feature)

Changes

Change the lqas url for useLqasIm Api hook
fix render bug with the map (probably a side effect of the leaflet upgrade)
update copy_datastore.py to make a PUT request if the datastore endpoint already exists locally

How to test

Get lqas endpoints by running scripts/copy_datastore.py if you don't have any datastore in your DB
go to LQAS and select any country

Print screen / video
https://github.com/BLSQ/iaso/assets/38907762/1f9610b6-3a79-4197-ac04-49264adb07d5
Notes
⚠Depends on https://github.com/BLSQ/iaso-pipelines/pull/2⚠ => HAS BEEN MERGED

This seems good to me. A part of a bug when the country selected is not available in lqas, I think we should display a bug message to show to the user. But this should be for an other ticket.

Actually, we should do the opposite: remove from the dropdown the countries for which we have no config/data


Added tests for layer.style.boxShadow propagation

In response to https://www.facebook.com/groups/760188533992744/permalink/1493404717337785/?comment_id=1493538680657722&reply_comment_id=1493999860611604&comment_tracking=%7B%22tn%22%3A%22R%22%7D
@nvh

I also use it to draw multiple outlines or inter lines. Sometimes a center line.
That's the nice part about using a string is you can apply multiple just like in CSS.

Git bisect shows that this is the first commit that broke this: https://github.com/koenbok/Framer/commit/f0f2c9f2bbf084e6f8f5617e862b458b14179e50
@koenbok do you have any idea what's going on?

@marckrenn - Any thoughts on being able to do multiple shadows?
All this time I thought, primarily because in the docs it's listed next to all the other CSS filters, that the shadow stuff was actually dropShadow: https://css-tricks.com/almanac/properties/f/filter/#article-header-id-10
Here's an actual use case for what I'm doing...
templateBorder_over = "inset 0 0 0 1px #fff, inset 0 0 0 3px #ff435e, inset 0 0 0 1px #e5e6e9, inset 0 0 0 4px #fff, inset 0 0 0 5px #f6f7f8, 0 1px 4px #e5e6e9"

Maybe it makes sense to allow you to add an array of objects to something like
layer.shadow = [
  {inset:true, x: 3, y: 5, blur: 1, spread: 2, color: "#fff"},
  {inset:false, x: 0, y: 0, blur: 0, spread: 2, color: "#000"}
]

That could mess up animation however... So I'm not entirely sure if that makes sense.

I don't think they should support multiple shadows like that (using an array), for a bunch of reasons – breaking animation being one of them.
Maybe they should just revert to the previous, working state? Idk

Yeah I think so... I doubt we want to match what comes in from that style property and map it to something like that... especially if it would ruin the ability to do multiple shadows.


⚠ Bofrost.lu has degraded performance

In e10b002, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1226 ms

Resolved: Bofrost.lu performance has improved in ebcaecf.


DASK SQL <-> Spark Coalesce

Is your feature request related to a problem? Please describe.
I wish I could use dask-sql to do the equivalent of Spark coalesce function:
https://spark.apache.org/docs/latest/api/python/reference/api/pyspark.sql.functions.coalesce.html
select coalesce(col1,colb) as VALUE_NOT_NULL from TABLE
Describe the solution you'd like
What is the equivalent in Dask SQL to this Code Snippet from Spark?
cDf = spark.createDataFrame([(None, None), (1, None), (None, 2)], ("a", "b"))
cDf.show()
+----+----+
|   a|   b|
+----+----+
|null|null|
|   1|null|
|null|   2|
+----+----+

cDf.select(coalesce(cDf["a"], cDf["b"])).show()
+--------------+
|coalesce(a, b)|
+--------------+
|          null|
|             1|
|             2|
+--------------+

cDf.select('*', coalesce(cDf["a"], lit(0.0))).show()
+----+----+----------------+
|   a|   b|coalesce(a, 0.0)|
+----+----+----------------+
|null|null|             0.0|
|   1|null|             1.0|
|null|   2|             0.0|
+----+----+----------------+

Describe alternatives you've considered

Using temporary tables and joins

Additional context
Add any other context, code examples, or references to existing implementations about the feature request here.

Perhaps relevant for the GPU side: https://github.com/rapidsai/cudf/issues/10180

yes Iabsolutely: https://github.com/rapidsai/cudf/issues/6759 is also asking for coalesce in dask sql.

this works for me, many thanks!


Interface for specifying ports

The current interface for specifying ports is a bit unintuitive. I often find myself using helper functions to make my code easier to follow. See below for an example.
function pconnect!(model,t1,t2)
    (c1,p1) = port_info(t1)
    (c2,p2) = port_info(t2)
    connect!(model,c1,c2,srcportindex=p1,dstportindex=p2)
end
port_info(t::AbstractNode) = (t,BondGraphs.nextfreeport(t))
port_info(t::Tuple) = t

Should be fixed with #66
The new syntax is similar to your helper function where nodes can optionally be provided with a port index or label.
# All valid syntax assuming dst has 2 ports
connect!(model, src,  dst)
connect!(model, src, (dst, 2))
connect!(model, (src, 1), (dst, 2))


Implement Memory::relocate value

Implement Memory::relocate_value
Description
This PR implements temporary segments. Following issue #480.
Checklist

[x] Linked to Github Issue
[x] Unit tests added
[ ] Integration tests added.
[x] This change requires new documentation.

[x] Documentation has been added/updated.

Codecov Report

Merging #484 (135583e) into main (c74b6e0) will increase coverage by 0.06%.
The diff coverage is 92.83%.

@@            Coverage Diff             @@
##             main     #484      +/-   ##
==========================================
+ Coverage   91.33%   91.40%   +0.06%
==========================================
  Files          47       47
  Lines        2955     3070     +115
==========================================
+ Hits         2699     2806     +107
- Misses        256      264       +8

Impacted Files
Coverage Δ

...cessor/builtin_hint_processor/memcpy_hint_utils.rs
100.00% <ø> (ø)

...t_processor/builtin_hint_processor/memset_utils.rs
100.00% <ø> (ø)

src/hint_processor/builtin_hint_processor/set.rs
100.00% <ø> (ø)

src/vm/decoding/decoder.rs
98.66% <ø> (ø)

src/vm/vm_memory/memory_segments.rs
95.74% <ø> (ø)

src/hint_processor/hint_processor_utils.rs
64.44% <25.00%> (+0.80%)
:arrow_up:

...int_processor/builtin_hint_processor/hint_utils.rs
90.32% <50.00%> (ø)

...uiltin_hint_processor/cairo_keccak/keccak_hints.rs
93.33% <66.66%> (-2.97%)
:arrow_down:

src/vm/runners/builtin_runner/range_check.rs
96.29% <85.71%> (-3.71%)
:arrow_down:

...cessor/builtin_hint_processor/find_element_hint.rs
92.30% <88.88%> (ø)

... and 19 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

 add implementation of relocate_values for support Temporary Segments


[DO NOT MERGE YET] Improve rendering performance by chunking layout

This patch adds content-visibility: auto as described here:

https://web.dev/content-visibility/
https://www.youtube.com/watch?v=FFA-v-CIxJQ

Demo:

Before: https://mathiasbynens.github.io/ecma262-layout-chunking/before.html
After: https://mathiasbynens.github.io/ecma262-layout-chunking/after.html

This is supposed to improve load-time performance by only requiring layout for the visible top-level emu-clauses where applicable, in browsers that support content-visibility. While recording traces to quantify the improvement I bumped into https://bugs.chromium.org/p/chromium/issues/detail?id=1138128, which we’ll probably want to have fixed upstream before landing this.
cc @una @surma @jakearchibald

@mathiasbynens I see a bit of flickering when scrolling through the after.html demo, at least while it's loading - is this expected?

Lol I completely broke it. Here I just scrolled around and stopped in a single position and I'm not doing anything anymore, but it just keeps flickering: https://drive.google.com/file/d/1DlZSMBaztjISBtetL3FCmj_w2IjVxrGa/view?usp=sharing

@RReverser Not sure what you're referring to exactly. Some brief "white flashes" while scrolling are expected when you scroll to a new area that hasn't gone through layout yet, but "flickering" definitely sounds unexpected/bad. Could you please file a crbug? (I did file https://bugs.chromium.org/p/chromium/issues/detail?id=1138128 for the issue I described above.)

Not sure what you're referring to exactly. Some brief "white flashes" while scrolling are expected when you scroll to a new area that hasn't gone through layout yet, but "flickering" definitely sounds unexpected/bad.

Yeah sorry, just updated with a video to demonstrate.

@RReverser Oh wow, thanks for providing that video. I had not run into that! Please file a crbug!

Done: https://bugs.chromium.org/p/chromium/issues/detail?id=1138233

The issue @RReverser reported is now addressed as part of this patch!

I notice that this makes the scrollbar jump around as you scroll, since the browser doesn't know how big the document actually is. I wonder if it would be practical to do better (not necessarily before landing this PR) - e.g. as part of the build we could render the document without this property, open it in a browser, compute the actual sizes for each section, and then write those down in the CSS. Still wouldn't be perfect, but it would be a lot better.

It seems bad if the scrollbar jumps around - bad enough to make the feature itself not worth it at all, imo. If it eventually (like, the 20-30s that loading would normally take) computed the correct scrollbar size, that seems reasonable, but the scrollbar is a progress bar, and a progress bar that jumps around randomly thus becomes useless.

In particular, if you drag the scroll thumb with the mouse, it stops being attached to the cursor as you scroll - it looks really broken, and I'm very confused how this is acceptable to Chrome itself from a UX perspective :-/

One thing we can do is to make content-visibility a mobile-only style to aid Android readers, where the scrollbar discontinuity is less jarring.

Note that the scrollbar jumping around already happens on mobile platforms even without this patch. IMHO it's a small price to pay for the massive load time improvements.

e.g. as part of the build we could render the document without this property, open it in a browser, compute the actual sizes for each section, and then write those down in the CSS. Still wouldn't be perfect, but it would be a lot better.

The "actual sizes" depend on viewport width, whatever values we hardcode at build time still wouldn't be perfect indeed — we’d be optimizing for 1 particular viewport size.

Destroying the usefulness of the scrollbar on desktop does not seem a worthy price to pay to me. That mobile platforms already have broken scrollbars means those should be fixed - not that desktops should be treated to the same broken experience.

Note that the scrollbar jumping around already happens on mobile platforms even without this patch.

Hm, I can get that to happen occasionally on my Android phone, but it's way more dramatic after this patch. Before it's jumping by perhaps a couple percent of the height of the scrollbar; after it's jumping more like 30% - enough that I lose track of the thumb while scrolling. It makes the scrollbar pretty much unusable while scrolling on my phone, instead of being an approximation with a very small amount of jitter. TBH it seems pretty misleading for that video to gloss this effect as "already happening"; I don't think the two behaviors are really comparable.

IMHO it's a small price to pay for the massive load time improvements.

I agree it might be worth it, but it does make scrolling really jarring, especially on desktop. Particularly the thing where, if you click and drag on the thumb and cross a section boundary, it jumps out from under your cursor. Breaking a part of the browser's UI seems like a pretty high cost to me.

The "actual sizes" depend on viewport width, whatever values we hardcode at build time still wouldn't be perfect indeed — we’d be optimizing for 1 particular viewport size.

True, but we could compute a few and interpolate with calc (assuming that's legal). It would be an improvement, at least.

(Drive by comment: You could even grab these heights via puppeteer at a bunch of different screen widths and set them accordingly with media queries)

(Drive by comment: You could even grab these heights via puppeteer at a bunch of different screen widths and set them accordingly with media queries)

I thought the problem was also that the ecma262 clauses are all very different sizes. What's the rough workaround there, bucket the clause classes by size?

I thought the problem was also that the ecma262 clauses are all very different sizes. What's the rough workaround there, bucket the clause classes by size?

If we're using automation to compute sizes, we can just assign a different intrinsic size to each individual clause.

I thought the problem was also that the ecma262 clauses are all very different sizes. What's the rough workaround there, bucket the clause classes by size?

I thought you’d set the intrinsic size per element via inline styles.

I talked to a few frontend devs of my acquaintance, all of whom expressed severe reservations about the damage to the scrollbar: people are used to large pages loading slowly, but pages where the scrollbar doesn't work as expected stand out as broken. As such, I'd be really hesitant to accept this as-is.
I'm still interested in exploring ways of making this work, such as those suggested above. But that said, I am not convinced this feature will see adoption in its current state: I suspect that most devs responsible for the large documents for which this is relevant will find the performance benefit not to be worth the cost of breaking part of the browser's UI. So I'm curious if Chrome or the CSS working group is looking into tweaking the design so that the benefit can be had without that cost, or if the expectation is that devs will need to try to patch over the scrollbar issues with client-side JS or other tricks.

In this post Alex Russell describes using an intersection observer to keep things marked as visible once they've ever been within the viewport, which could be an improvement - the scrollbar would still jump around while moving to new content, but at least if you scroll back to a part you've already been to it'll stay put.
Though it would come at the cost making resizing the page slow again once you'd loaded enough sections.

(cc @slightlyoff given https://github.com/tc39/ecmarkup/pull/263#issuecomment-739142690)

One option I've considered (but haven't implemented) is a placeholder element that grow in height as one accumulates visible sections. The IntersectionObserver would allow this to be modified after layout, preventing another reflow as you scroll, and letting you keep content-visibility: auto on the content itself. Window resizing is trickier, and if you were to grow the window in width, I presume you'd want to remove the scroll tentpole element and start over, but I think it's possible to make things feel stable post-resize. Maybe I'l play with this approach a little.

Ok, I've been playing with a solution for my blog that's better in the face of resizing and the like. Here's the rough code, where the document structure of the elements I'd like to make cheaply available is:

...

...

...

      ...

And here's the bit of script that targets those articles for efficient painting:

Basically, this sets up intersection and resize observers to create "set aside" space on each of the elements in question. and updates that geometry on resize so that if/when they scroll offscreen, their contents won't continue to get layout/paint passes applied until they "snap back". Have verified that this works as intended in Chrome.

Is perhaps all this code something that a standardized api for “efficiently paint this selector” might be warranted, since it seems the currrenr solution in the PR requires a bit of effort to avoid footguns?

This is 50 non-comment lines, including the CSS, so while I think there might be space for a "please reserve the last seen space for this element" attribute value for contain-intrinsic-size, I'm sure it's something folks like @tabatkins and @chrishtr are collecting examples like this to figure out what to add next. In the mean time, this appears to work well and I'd love feedback to see if it makes things feel snappier on your document.

Thanks, @slightlyoff!
@mathiasbynens, would you be up for dropping that snippet into your demo page so we can see how it feels?
(Incidentally I suspect we'll end up wanting to put this in the ecma262-specific CSS, rather than ecmarkup itself, since it's aimed at larger documents rather than stuff like proposals, but we can keep iterating on it here for now.)

@slightlyoff Nice!

@mathiasbynens, would you be up for dropping that snippet into your demo page so we can see how it feels?

Done. In particular, check the deep link demo:

Before: https://mathiasbynens.github.io/ecma262-layout-chunking/before.html#sec-string.prototype.replaceall
After: https://mathiasbynens.github.io/ecma262-layout-chunking/after.html#sec-string.prototype.replaceall

Hm, on Chrome 87 on Mac I don't get a scrollbar at all anymore in the after (https://mathiasbynens.github.io/ecma262-layout-chunking/after.html#sec-string.prototype.replaceall) version. Is that supposed to be the case?

On Chrome 86.0.4240.193 the infinite loading behavior still happens, and the scrollbar never shows up, and on Canary (89.0.4349.2) the page hangs outright, so I can't assess it properly. (The hangs on Canary seem to happen on the "before" page as well, so it's probably a bug in Chrome rather than your code.)
I'll wait a bit for a new version of Chrome, I guess.

There was at least one Chrome bug (on Android) discovered in the snippet I posted above, and so I've updated it in a blog post about this approach:
https://infrequently.org/2020/12/resize-resilient-deferred-rendering/
For Chrome bugs, tagging in Vlad (who I pinged out of band).

There was at least one Chrome bug (on Android) discovered in the snippet I posted above, and so I've updated it in a blog post about this approach

Thanks — demo pages updated accordingly. The trace looks 🔥🔥🔥 !

On Chrome 86.0.4240.193 the infinite loading behavior still happens, and the scrollbar never shows up, and on Canary (89.0.4349.2) the page hangs outright, so I can't assess it properly. (The hangs on Canary seem to happen on the "before" page as well, so it's probably a bug in Chrome rather than your code.)
I'll wait a bit for a new version of Chrome, I guess.

I tested on the exact same Canary version (89.0.4349.2) on macOS, with a clean browser profile, and couldn't reproduce any hangs on either page. Are you sure you're not accidentally using some browser extension that interferes with the result somehow?

Hm, on Chrome 87 on Mac I don't get a scrollbar at all anymore in the after (https://mathiasbynens.github.io/ecma262-layout-chunking/after.html#sec-string.prototype.replaceall) version. Is that supposed to be the case?

@syg That's definitely not the intention! I still get a scrollbar on 87.0.4280.88 on macOS. If you can reproduce this reliably, could you please file a crbug?

@bakkot I tested on the exact same Canary version (89.0.4349.2) on macOS, with a clean browser profile, and couldn't reproduce any hangs on either page. Are you sure you're not accidentally using some browser extension that interferes with the result somehow?

Yup, it's a completely clean profile. Opening the demo page pegs the CPU (in fact it pegs two cores) for at least a minute (at which point I just killed it).
I'm on macOS 10.14; maybe that's the diifference?

@bakkot: can you perhaps copy/paste the full contents of chrome://version here if you're comfortable sharing that?

@slightlyoff Sure:

Google Chrome
89.0.4352.0 (Official Build) canary (x86_64)

Revision
06b48a5d4f933139737b0d981a6e34a580eaf21c-refs/branch-heads/4352@{#1}

OS
macOS Version 10.14.6 (Build 18G6032)

JavaScript
V8 8.9.129

User Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4352.0 Safari/537.36

Command Line
/Applications/Google Chrome Canary.app/Contents/MacOS/Google Chrome Canary --flag-switches-begin --javascript-harmony --flag-switches-end

Executable Path
/Applications/Google Chrome Canary.app/Contents/MacOS/Google Chrome Canary

Profile Path
/Users/kevin/Library/Application Support/Google/Chrome Canary/Default

Variations
583720e7-d7c239a84085631-377be55a90a7075b-6eac6d016b16054-f23d1deab0f75187-48df420d91f8f623-f23d1dea59b6f412-cf05fe7d60d4b352-30821c4482b62ecf-e7d7ef40da89714-b419121e1d52c63e-ca7d8d8055c044d3-f23d1dea95b880ad-3f4a17df8ae424bf-62410d2b9d6a857b-af856b8d3c98d047-3f4a17df74f8fa8f-b947d8e64d2d969c-847083536025934e-3f4a17df4d936449-5419e7bd6d6d60a5-dec406248950ab95-f23d1dea1298fecf-404338159e604a08-ca7d8d8041e765a5-f23d1dea8e44abde-3f4a17dfdc742ded-dec406246f212d51-f23d1dea8f83697a-642f01308f000ce6-ca7d8d80dbf7a8af-dd20d31bf2cb61f-3f4a17df8470b833-673c39a2195288ce-f23d1deaa6baf2da-e24c5b3065570806-a70dca942cff698a-548d881a345a470a-58845760a582a1b8-ad75ce171d606bb5-3de9d90b247004c0-f23d1dea3042ad4b-a0e56f74e4a357e9-79b0fbfd10bea3af-bb72e3e93fd33f16-41ecb1b913200569-b4779eec676784ca-f66697fabebfb376-ad9079c72729b628-a048438e5252c71-ca7d8d806a116980-763f0222fab3c74d-3f4a17dff6456a4a-78f82395142e58d7-6f77aaeca168b3cd-f23d1dea3ee82fb3-3a447918fa6aa590-ca7d8d80c992f345-ca7d8d80f403643c-ca7d8d8028114f9b-629cd37d8155c77d-ca7d8d80d8692482-ca7d8d80a042f0b2-f23d1dea638e38ae-dfb2c5907a911e9f-ca7d8d8038fb2686-ca7d8d80bdbcc4a1-5f02e174f8870c0a-3f4a17dfe153f4cb-6cf79a792f990be4-10fdb82f1c1d6a98-3f4a17df3487aa71-26bbc51953c99a5a-3f4a17dfd3566fbd-eac2fe9dae85586a-3f4a17df4ea303a6-d5247c3a7048821f-ede3dfe41ec777c-ca7d8d80a5c209bc-ca7d8d805213bf1c-ca7d8d80f48aee36-3f4a17dfe4e7724d-3f4a17df2ce51440-f23d1dead6f4076c-29c53a54fff8ec0-f23d1dea58cac63b-95af196178063874-f23d1dead0ff70be-ee63ae02a375a87b-3f4a17df7760b5b2-6bb234491625732c-e0bf8cdd9ca8521a-993b9ffd39baae47-d63ec99c931c5f72-bf5a489397f5b53e-f23d1dea494d8760-52325d433ac60855-486e2a9c63dcb6a3-1185807ee706e746-4a95e4f1f296190c-f9f7acb54442aae2-4ad60575f690cf64-4ad60575ed1d377-e1cc0f1475f0f0a0-4ad60575e2b18481-3a9ae350e7e71889-e1cc0f14b1ceb06f-51f64ec2e1368496-3f4a17df27435f03-41ecb1b9a5fa7f3a-efad1e7fcddbdd4e-f23d1deadd4eb913-3f4a17dffb50494f-3d47f4f48db2e42f-d34b6455e31bb48-8924bcae3ed25c66-f23d1deadd82d379-75a79c4b1fadabdc-4a2705f0


App devs can refer to samples for implementing quote providers for handling PCK certs, CRLs and TCBInfo

Lower priority sample to illustrate how to implement custom handling of quote generation artifacts (PCK cert chain) and quote revocation artifacts (CRL and TCBInfo). This is primarily useful for individuals who want to roll their own management infrastructure outside of Azure (niche scenario) and as a fallback if there is no default Intel quote provider available for use outside of Azure.

Closing this issue as it overlaps with potential future work.


Fix "Permission overview" heading in Fedora guide

So that it is linkable and visible in side TOC.

regate


Generic Wayland Icon on Exported Apps

Install method (Flatpak/Binary/Other)
BoxBuddy is part of the distro image.
Distrobox Version
<IP_ADDRESS>
Your Host OS
Bazzite, an immutable Fedora 39 Kinoite (KDE) distro.
Describe your Issue
I installed two applications in a Fedora 39 container using dnf, Krusader and TexWorks. Then I exported the apps to the host menu using BoxBuddy. Both of them work, but the dock and titlebar icons are the generic "Wayland" icons.

Probably a Distrobox issue as BoxBuddy does instructs distrobox to do it.
Does manually exporting the apps give you icons?
distrobox enter your-box
distrobox-export -a app-name

Hello, I suggest filing this issue upstream with Distrobox: https://github.com/89luca89/distrobox/issues
I would recommend you try a reboot or log-out first, as that usually fixes icon issues with Plasma for me.


wasmprinter: improve formatting of instantiation from exports

From bytecodealliance/wit-bindgen#183, wasmprinter currently prints this for instaniation from exports:
(instance (;3;) core (export "$imports" (table 0)) (export "a" (func 16)) (export "b" (func 17)) (export "c" (func 18)) (export "d" (func 19)) (export "e" (func 20)) (export "f" (func 21)) (export "g" (func 22)) (export "h" (func 23)) (export "i" (func 24)) (export "j" (func 25)) (export "k" (func 26)) (export "l" (func 27)) (export "m" (func 28)) (export "n" (func 29)) (export "o" (func 30)) (export "p" (func 31)))

This would be better formatted as:
(instance (;3;) core
  (export "$imports" (table 0))
  (export "a" (func 16))
  (export "b" (func 17))
  (export "c" (func 18))
  (export "d" (func 19))
  (export "e" (func 20))
  (export "f" (func 21))
  (export "g" (func 22))
  (export "h" (func 23))
  (export "i" (func 24))
  (export "j" (func 25))
  (export "k" (func 26))
  (export "l" (func 27))
  (export "m" (func 28))
  (export "n" (func 29))
  (export "o" (func 30))
  (export "p" (func 31))
)

@peterhuene I'll get started with this one! Let me know if you (or anyone else) have started on this, to avoid duplicating efforts.

@saulecabrera I'm not aware of anyone working on this, so that would be great if you could take this one on! Thanks!


Prod inconsistency in explosives recipes

Mod source
Factorio Mod Portal
Which mod are you having an issue with?

[X] pyalienlife
[ ] pyalternativeenergy
[ ] pycoalprocessing
[ ] pyfusionenergy
[ ] pyhightech
[ ] pyindustry
[ ] pypetroleumhandling
[ ] pypostprocessing
[ ] pyrawores

Operating system

=Windows 10

What kind of issue is this?

[ ] Compatibility
[ ] Locale (names, descriptions, unknown keys)
[ ] Graphical
[ ] Crash
[ ] Progression
[X] Balance
[ ] Pypostprocessing failure
[ ] Other

What is the problem?
The base recipe for explosives permits prod modules, but the guano-derived second recipe added by Biofluid Network Stage 2 does not.
Steps to reproduce
No response
Additional context
No response
Log file
No response

Thanks for the report. Fixed: https://github.com/pyanodon/pyalienlife/commit/a8a3940b3e97fa31bb387a43b8a95404ddbea8af


Update galley to convert authentication policy to use labels.

The annotation part in converter.go is not needed and could just be removed after #11293 is landed.
Signed-off-by: Yangmin Zhu<EMAIL_ADDRESS>

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: yangminzhu
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: geeknoid
If they are not already assigned, you can assign the PR to them by writing /assign @geeknoid in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

galley/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@yangminzhu: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests-cni.sh
5e967d6caba8afa32548227797e71204aced74ee
link
/test e2e-simpleTests-cni

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

@yangminzhu: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests-cni.sh
5e967d6caba8afa32548227797e71204aced74ee
link
/test e2e-simpleTests-cni

prow/istio-integ-k8s-tests.sh
5e967d6caba8afa32548227797e71204aced74ee
link
/test istio-integ-k8s-tests

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

@yangminzhu: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests-cni.sh
5e967d6caba8afa32548227797e71204aced74ee
link
/test e2e-simpleTests-cni

prow/istio-integ-k8s-tests.sh
5e967d6caba8afa32548227797e71204aced74ee
link
/test istio-integ-k8s-tests

prow/e2e_pilotv2_auth_sds.sh
5e967d6caba8afa32548227797e71204aced74ee
link
/test istio_auth_sds_e2e

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

@yangminzhu: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests-cni.sh
5e967d6caba8afa32548227797e71204aced74ee
link
/test e2e-simpleTests-cni

prow/istio-integ-k8s-tests.sh
5e967d6caba8afa32548227797e71204aced74ee
link
/test istio-integ-k8s-tests

prow/e2e_pilotv2_auth_sds.sh
5e967d6caba8afa32548227797e71204aced74ee
link
/test istio_auth_sds_e2e

prow/istio-pilot-multicluster-e2e.sh
5e967d6caba8afa32548227797e71204aced74ee
link
/test istio-pilot-multicluster-e2e

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

@yangminzhu: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-k8s-tests.sh
5e967d6caba8afa32548227797e71204aced74ee
link
/test istio-integ-k8s-tests

prow/e2e_pilotv2_auth_sds.sh
5e967d6caba8afa32548227797e71204aced74ee
link
/test istio_auth_sds_e2e

prow/istio-pilot-multicluster-e2e.sh
5e967d6caba8afa32548227797e71204aced74ee
link
/test istio-pilot-multicluster-e2e

prow/e2e-simpleTests-cni.sh
defcf3035375b3a6234dd79f61291b89f900c5ce
link
/test e2e-simpleTests-cni

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

@yangminzhu: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e_pilotv2_auth_sds.sh
5e967d6caba8afa32548227797e71204aced74ee
link
/test istio_auth_sds_e2e

prow/istio-pilot-multicluster-e2e.sh
5e967d6caba8afa32548227797e71204aced74ee
link
/test istio-pilot-multicluster-e2e

prow/e2e-simpleTests-cni.sh
defcf3035375b3a6234dd79f61291b89f900c5ce
link
/test e2e-simpleTests-cni

prow/istio-integ-k8s-tests.sh
defcf3035375b3a6234dd79f61291b89f900c5ce
link
/test istio-integ-k8s-tests

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

@yangminzhu: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests-cni.sh
defcf3035375b3a6234dd79f61291b89f900c5ce
link
/test e2e-simpleTests-cni

prow/istio-integ-k8s-tests.sh
defcf3035375b3a6234dd79f61291b89f900c5ce
link
/test istio-integ-k8s-tests

prow/istio-pilot-multicluster-e2e.sh
defcf3035375b3a6234dd79f61291b89f900c5ce
link
/test istio-pilot-multicluster-e2e

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

@yangminzhu: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-k8s-tests.sh
defcf3035375b3a6234dd79f61291b89f900c5ce
link
/test istio-integ-k8s-tests

prow/istio-pilot-multicluster-e2e.sh
defcf3035375b3a6234dd79f61291b89f900c5ce
link
/test istio-pilot-multicluster-e2e

prow/e2e-simpleTests-cni.sh
9614292c54e919773ae0298fc3a2d04529e754ae
link
/test e2e-simpleTests-cni

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

@yangminzhu: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-pilot-multicluster-e2e.sh
defcf3035375b3a6234dd79f61291b89f900c5ce
link
/test istio-pilot-multicluster-e2e

prow/e2e-simpleTests-cni.sh
9614292c54e919773ae0298fc3a2d04529e754ae
link
/test e2e-simpleTests-cni

prow/istio-integ-k8s-tests.sh
9614292c54e919773ae0298fc3a2d04529e754ae
link
/test istio-integ-k8s-tests

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

@yangminzhu: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests-cni.sh
9614292c54e919773ae0298fc3a2d04529e754ae
link
/test e2e-simpleTests-cni

prow/istio-integ-k8s-tests.sh
9614292c54e919773ae0298fc3a2d04529e754ae
link
/test istio-integ-k8s-tests

prow/istio-pilot-multicluster-e2e.sh
9614292c54e919773ae0298fc3a2d04529e754ae
link
/test istio-pilot-multicluster-e2e

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

@yangminzhu: PR needs rebase.

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

Discussed with @ozevren , @diemtvu and @pitlv2109 . We're waiting for some large refactor in Galley from Oz. This PR is blocked by the refactor for now.


CrudJoin not working

CrudJoin not working.
Even mapping my sub-entity, the query trigged in  GetMany does not include the join parameters, so it's not loading the subentities.

Works now


images, containers: converge metadata API conventions

The primary feature we get with this PR is support for filters and
labels on the image metadata store. In the process of doing this, the
conventions for the API have been converged between containers and
images, providing a model for other services.
With images, Put (renamed to Update briefly) has been split into a
Create and Update, allowing one to control the behavior around these
operations. Update now includes support for masking fields at the
datastore-level across both the containers and image service. Filters
are now just string values to interpreted directly within the data
store. This should allow for some interesting future use cases in which
the datastore might use the syntax for more efficient query paths.
The containers service has been updated to follow these conventions as
closely as possible.
Signed-off-by: Stephen J Day<EMAIL_ADDRESS>

Codecov Report

Merging #1151 into master will decrease coverage by 0.1%.
The diff coverage is 0%.

@@            Coverage Diff             @@
##           master    #1151      +/-   ##
==========================================
- Coverage   31.88%   31.78%   -0.11%
==========================================
  Files          27       27
  Lines        2161     2168       +7
==========================================
  Hits          689      689
- Misses       1324     1331       +7
  Partials      148      148

Impacted Files
Coverage Δ

client.go
2.6% <0%> (-0.07%)
:arrow_down:

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 3707703...10d045e. Read the comment docs.

@mlaventure Thanks for the review!

LGTM

LGTM
Going to merge this one now, I would still like to discuss updated = image and that pattern in general, but this should get merged I can base the content work on it.


Submitting  test version 1.0.0.yaml

[ ] Have you signed the Contributor License Agreement?
[ ] Have you checked that there aren't other open pull requests for the same manifest update/change?
[ ] Have you validated your manifest locally with winget validate <manifest>, where <manifest> is the name of the manifest you're submitting?
[ ] Have you tested your manifest locally with winget install -m <manifest>?

Microsoft Reviewers: Open in CodeFlow

In addition to failing install, this does not appear to be a real submission.  Looks like this is just a test.

In addition to failing install, this does not appear to be a real submission.  Looks like this is just a test.


Add code editor to the new NextJS app

Related to #725

Hey @Amzani

Closing this for now! as studio will need a complete revamp/rewrite with the new DX Working group direction.


Update links

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @gnzlbg (or someone else) soon.
If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.
Please see the contribution instructions for more information.

@bors: r+

:pushpin: Commit ed757a82a3868bdb75aa1981ed5368e4b0eb7f6d has been approved by gnzlbg

:hourglass: Testing commit ed757a82a3868bdb75aa1981ed5368e4b0eb7f6d with merge d4f02c8ac6eb2b5e6ad3e084fdaf15ee00899a6f...

:broken_heart: Test failed - checks-cirrus-freebsd-12

@bors: r+

:pushpin: Commit 803cf6494fb12795959d6ac7c0f0e95343b16e3f has been approved by gnzlbg

:hourglass: Testing commit 803cf6494fb12795959d6ac7c0f0e95343b16e3f with merge d7907c00e1a5061b4701e3d4aefca0ce4a181974...

:sunny: Test successful - checks-cirrus-freebsd-11, checks-cirrus-freebsd-12, status-azure
Approved by: gnzlbg
Pushing d7907c00e1a5061b4701e3d4aefca0ce4a181974 to master...


Highlight new features

Description
Highlight new features in the options page for 10 days after opening the settings window, per https://github.com/sindresorhus/refined-github/issues/2664#issuecomment-570794975.
Screenshot

Closes
Closes #2664

@jerone would it make sense to allow searching for the word new?

@yakov116 commented on Jan 5, 2020, 8:59 PM GMT+1:

@jerone would it make sense to allow searching for the word new?

I rather see some sorting/filtering being introduced.

Good call. I included an timespan of 10 days. This will start after opening the settings window.

Also I just loaded the extension and all of them were marked as NEW (Firefox)

@jerone would it make sense to allow searching for the word new?

new already shows about 10 features. is:new works with this change in the filter:
- .replace(/\W/g, ' ')
+ .replace(/[^\w:]/g, ' ')

@fregante commented on Jan 7, 2020, 8:21 AM GMT+1:

Also I just loaded the extension and all of them were marked as NEW (Firefox)

Did you load the extension as Developer? Because then the extension version is 0.0.0.

What version do you expect this to work correctly on?

@fregante commented on Jan 7, 2020, 9:48 AM GMT+1:

What version do you expect this to work correctly on?

Before merging this PR, the version number here needs to be altered to the next extension version. This is the first version introducing highlighting.
Thinking about it, I can probably work-around that.

the version number here

That's not a good strategy; this expects the user to open the Options page exactly on that version and not a digit later

Agree. Will implement another strategy.

Implemented browser.storage.local. It will detect if the key featuresAlreadySeen is present. If not, this means the user visits the options page for the first time. This solves https://github.com/sindresorhus/refined-github/pull/2668#issuecomment-571468059.
If you want to test this feature, add the following code on line 79:
delete featuresAlreadySeen['add-tag-to-commits'];

Do you think you can merge the two loops using only select.all?
for feature in checkboxes
  if not in list
    add it

  if not first visit and not within 10 days
    mark as new

Do you think you can merge the two loops using only select.all?

Done ✅

Looking good, thank you!
This is still welcome https://github.com/sindresorhus/refined-github/pull/2668#issuecomment-571469995


Fix tests with default repository

I currently have 6 tests failing with the default repository and these few changes are attempting to fix that.

default NODE_ENV to 'test' when testing

It's a good practice and it's needed to make sure the API key is required (process.env.NODE_ENV !== 'development' in server/routes.js)

load configuration from config/test.json

Now that we have, a 'test' environment, we can define its own configuration there. We can then remove the environment tweaks from test/setup.js.

don't load dotEnv anymore

The current default .env would overload NODE_ENV and we don't want that (alternative would be to stop overloading NODE_ENV there by default)

rely on mocha.opts for configuration

That let us remove these configuration parameters from the scripts section in package.json. We can now simply write npx mocha test/my.test.js to run an individual test.

remove eslint-plugin-mocha from dependencies

It's already in devDependencies and npm is warning about that.
I'm not sure about api_key and secret in test.json, should we create new values?

That's not working well with nyc for now, looking at it.

Tests passing: https://travis-ci.org/znarf/opencollective-api/builds/357427912


alphabet rangoli usng python

please accept my pr. assign me if any changes required

@khushicoder123 ....I have already merged you pr ont his issue.. you can close this pr


Use locking around handle creation

I ran into some cases where parallel execution caused incorrect results. I believe the problem is that parallel calls to make-handle could associate multiple handles to a single key. Locking around make-handle resolves the issue.

Looks good to me. There's probably some more efficient approach with CASes and synchronized tables we can explore in the future.

@stylewarning CASes?

Compare and swap, I think. @notmgsk
https://en.wikipedia.org/wiki/Compare-and-swap

The handle table is already synchronized. I think the race condition might be around accessing the fill pointer in the vector (the 2nd element), so some atomic operation there (atomic incf) is probably enough.


[BUG] Cant sign dlls exes inside my MSIX when creating a published package to microsfot store

Hi,
I dont want to unpack the package, repack everything after signing. it doesnt feel natural.... Whats the proper way to sign DLLs and Exes inside my msix package...
Is there a easy way  to do it while building the package?
thanks
Jorge Costa

I don't think you can sign the DLLs and EXEs at the same time you sign the whole package. You have to sign the files before you create the package with makeappx (which you may not be calling directly).
There may be ways to avoid having to unpack and repack depending on how you are building the package. For example, if you are using MSBuild (projects defined in .vcxproj or .csproj), you can add a post-build "target" to your project to sign the files after compiling them, but before it gets to the target that creates the package.

+1

@florelis that can work at the moment, because we still have a certificate around and we can use sign tool. But very soon those certificates will no longer be issued by authorities... and we need to send the files to some server to get signed... I dont think its a good idea to hold the build process to send tons of dlls over network to be signed. Generally it would be better if this would be provided by Microsoft store.  But maybe thats another side question.
Thanks for the tip.


Update store value in array in array bug

It seems like the view-state is not being updating when the value is being updated in an array in an array of a store.
playground example:
https://playground.solidjs.com/?hash=458727804&version=1.0.7
Then click cell 1,1 and press the delete key. You'll see the new table data being logged to the console (updated by the setState function returned by createStore). Yet the view showing the data did not update.
This could just be my miss-understanding of stores, do I need to reconstruct a new array for the row for the change to be tracked?

Also on line 267 in that example:
If I change:
>{data()}
to:
>{state.data[rowIdx][colIdx]}
Then it works. Am I meant to access the data from the root state object in the view render code?

My bad. No bug here. The outer use of Index already unwrapped the store so that the inner use of Index losses it's reactivity.

Hmm.. an interesting scenario. I see what's going on but I almost never use Index with Store's so I never hit this. Essentially Index uses its own signals to move things around but doesn't actually access the store under a tracking context. And just sets the value in the signal. This is fine in the shallow case since setting a value in an array triggers the parent. But when nested Index the parent is also not from the store. In so nothing actually subscribes the store itself, so when you set the store it gets missed.
This makes me think I should rethink the approach for <Index>.

I discovered the mistake i made. All good.

Yeah I mean it's fine but I also think it's not the most obvious behavior. May be worth at least considering doing something different. But glad we found the issue.


See detailed description in the commit message.

I am reverting this because there was an issue with the e2e tests where the health check would intermittently fail during provisioning.


fix: use ContextCompat instead of PermissionChecker

ref: https://github.com/permissions-dispatcher/PermissionsDispatcher/issues/756

obviously. BTW I have noticed it's kinda hard to maintain test module...we shall move on to E2E test or like that!


Position camera off image properly and apply it as app background image source

Match camera_off slot size and aspect to canvas
Attach app background image source

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Thanks for the review @bclymer! @uldiszz I can confirm that the screen sharing issue is fixed for me now with your latest changes. Will merge and close this PR.


[BUG] WBTC Squeeze Bot Fails to show created bot on Mybots Page

Bot created https://etherscan.io/tx/0xc3825d26add73aa948013a6c70e5d367076332235f34942cdf65bf951a21b1e0 does not show up on MyBots Page after contract upgrades. Most likely bot is missing from API.

This has been resolved


Added Segment Folder for Audience Manager Extension

Segment Folder helps in organization of segment definitions.
This XDM entity will help external segment definition providers define hierarchy.

@prabhum2 Please review.


Shopping List [Gssoc'23]

Title and Issue number
Shopping List #4439
Close #4439

Checklist:

[X] I have mentioned the issue number in my Pull Request.
[X] I have commented my code, particularly in hard-to-understand areas
[X] I have created a helpful and easy to understand README.md

@MohitGupta121 @TusharKesarwani @pranjay-poddar Please review my PR under Gssoc'23. @MohitGupta121 @TusharKesarwani

@MohitGupta121 @TusharKesarwani @pranjay-poddar Please merge this PR sir under gssoc'23

@pranjay-poddar Please merge this PR. Thanks