Operation sequences & retry policy

Question
In OMA specification is described that:
"Due to the congestion control approach used by CoAP the LwM2M Server has to wait for a response to a request before sending out the next request from the queue since [CoAP] limits the number of simultaneous outstanding interactions to 1. "
Currently Leshan is not waiting for the response from device and is possible to send next request before receiving previous response from device.
Is there some plan on Leshan side to implement this feature ?

In OMA specification is described that:

For link about LWM2M spec, please use the html version with anchor in URL.
E.g<EMAIL_ADDRESS>Queue Mode Operation

"Due to the congestion control approach used by CoAP the LwM2M Server has to wait for a response to a request before sending out the next request from the queue since [CoAP] limits the number of simultaneous outstanding interactions to 1. "

I'm not sure to understand this part of the LWM2M spec ... :thinking:
Why this is in Queue Mode chapter only ?
Why this is mention in a chapter not strongly linked to CoAP over UDP ? I'm not so sure but I don't think this is needed for coap+tcp or mqtt where congestion control is handled by tcp itself.
Why they talks about 1  simultaneous interactions and not NSTART. See  rfc7252#section-4.7 :
 In order not to cause congestion, clients (including proxies) MUST
  strictly limit the number of simultaneous outstanding interactions
  that they maintain to a given server (including proxies) to NSTART.
  An outstanding interaction is either a CON for which an ACK has not
  yet been received but is still expected (message layer) or a request
  for which neither a response nor an Acknowledgment message has yet
  been received but is still expected (which may both occur at the same
  time, counting as one outstanding interaction).  The default value of
  NSTART for this specification is 1.

OK NSTART default is 1 but could be more.  E:g. there is a LWM2M object to configure it (see Coap Config [Id 500])

Currently Leshan is not waiting for the response from device and is possible to send next request before receiving previous response from device.

This is true. There is no mechanism like this in Leshan.
But at Leshan user level, it sounds not so hard to do : just send a request and wait for response before to send another.
Note there is some code around this in Californium, I don't how much it works, See in CoapConfig :

NSTART (I'm not sure this is even used ?)
CONGESTION_CONTROL_ALGORITHM (this sounds experimental I never used it)

Maybe @boaks  could give us more hint about it ?

Is there some plan on Leshan side to implement this feature ?

There is no plan about that.
As first sight I would say this is more a CoAP feature than a LWM2M one. So maybe this should rather be  done in Californium.
My turn to ask question :slightly_smiling_face:
Why do you ask this ? Do you face a concrete issue about it ?

Thank you very much for the explanation. Colleagues from FR want to implement it - but there is a problem with Congestion Control in Cf. Today I will try to reproduce this error and I will (probably) have more information.

Please try to get the reasons why "Colleagues from FR want to implement it "  :pray:

but there is a problem with Congestion Control in Cf

It will be very important, which version of Californium you're using.
Californium 3.7.0 - CongestionControlLayer marks the implementation still as "experimental". As far as I remember, the "experimental" was for some of the algorithms. Anyway, if you have an issue with Californium 3.7.0, please open an issue with some more details.
For Californium 2.7.x it has threading issues, including dead-locks.

Why this is in Queue Mode chapter only ?

I don't use that concept of queued messages. In my personal experience, the exchanged message are better generated on the flow, considering the responses or other information from that device. So I have no knowledge, why it was defined only here.
Generally, the congestion control help a lot in "constrained networks". But many networks are not constrained and so it works in my experience also without (assuming, that the "peer" itself is also fast enough to handle it).

Then reduced to  "I have no knowledge, why it was defined only here." :-).

but there is a problem with Congestion Control in Cf

It will be very important, which version of Californium you're using.
Californium 3.7.0 - CongestionControlLayer marks the implementation still as "experimental". As far as I remember, the "experimental" was for some of the algorithms. Anyway, if you have an issue with Californium 3.7.0, please open an issue with some more details. For Californium 2.7.x it has threading issues, including dead-locks.

I  described the problem in  issue: 2093

About this specific LWM2M sentence :

"Due to the congestion control approach used by CoAP the LwM2M Server has to wait for a response to a request before sending out the next request from the queue since [CoAP] limits the number of simultaneous outstanding interactions to 1. "

I open an issue at OMA  : https://github.com/OpenMobileAlliance/OMA_LwM2M_for_Developers/issues/552
We will see if we get some answer.

Let me add:
Congestion Control is mainly used for  "constrained networks" and when sending messages to "unknown peers" in order to prevent from being misused for amplification attacks.
AFAIK, in LwM2M, the device first sends a "registration update", so in that case it seems to be no "unkown peer". The only left risc maybe then using DTLS 1.2 CID or OSCORE "relaxing/weaken the ip-address verification" on that "registration update".
The bug in  californium is caused by sending the response for the "registration update". I don't think, this is using CON. If so, then we would need to check, if onAcknowledgement is called in order to enable the application layer the send the requests on that ACK of the response.

I don't think, this is using CON

I agree. I'm pretty sure, Leshan uses piggyback for Registration Update response.

Just to let you know:
The Californium issue 2093 is fixed with Californium PR 2095 and will be included in the next Californium Release 3.8.0.
Unfortunately, the Californium Review was announced too short ahead, so that the PMC wasn't able to review.
Once that's solved, I will schedule the Californium 3.8.0 release.

@JaroslawLegierski Cf 3.8.0 is now integrated in master, should we close this issue ?

Yes of course - Thank You !


Django 1.8 Support

First step would be to add 1.8 to tox build and see what breaks.

I got this after using with Django 1.8.1:
C:\Python27\lib\site-packages\rest_framework_swagger\urlparser.py:4: RemovedInDjango19Warning: django.utils.importlib will be removed in Django 1.9.
  from django.utils.importlib import import_module

It would be nice to have Django 1.8.x support, since it is a LTS version.

No problem here running on an UAT environment.
setup:
Python 3.4.3, Django 1.8.1, Rest Framework 3.1.1 and Swagger 0.2.9

I think #246 addressed this.

Yes, this appears to has been addressed, and the issue should be closed.


Races between jobs in CI when deploying subctl

Various CI jobs try to download subctl, and this can fail when a release job is updating the corresponding download artifacts; see https://github.com/submariner-io/shipyard/runs/5788292368?check_suite_focus=true for example.
We might want to consider either retrying downloads, or using a lock so that jobs requiring subctl wouldn’t run while a conflicting release job is running (but as far as I can tell that would involve serialising all such jobs).

Downloading...
curl: (22) The requested URL returned error: 404
xz: (stdin): File format not recognized
tar: Child returned status 1
tar: Error is not recoverable: exiting now
[13:17:09.636] [shipyard]$ [cluster2] bash -c curl -Ls https://get.submariner.io | VERSION=devel DESTDIR=/go/bin bash
Installing subctl version devel
  OS detected:           linux
  Architecture detected: amd64
  Download URL:          https://github.com/submariner-io/submariner-operator/releases/download/subctl-devel/subctl-devel-linux-amd64.tar.xz

Downloading...
curl: (22) The requested URL returned error: 404

We now retry the downloads (see https://github.com/submariner-io/shipyard/pull/893).


Fix debian build

Hi,
I fixed tools/docker/debian to build debian image. FROM i386/debian causes errors, "... bullseye-security InRelease' is not signed.", so I specified :buster. I added ../ to build-container.sh and build-state.js.
One thing I'm not sure is the following statement in tools/docker/debian/Readme.md.

Go to debug.html?profile=debian to start the generated container.

I don't know how to start the built debian. I confirmed I could run the built debian, modifying examples/arch.html instead.

But anyway, this PR fixed building of debian.

Thanks!

One thing I'm not sure is the following statement in tools/docker/debian/Readme.md.

At one point in the past it was planned to release a debian profile, but it was scrapped and instead the Arch profiled was updated to Archlinux 32.

Thank you for the information!


Laboratory work #1, Maria Bukina - 22FPL2

Looking forward to get 6!

@artyomtugaryov, changes have been made :)


MessageHandlers should be able to return a web standard Response as an alternative to a RegularResponse

Similar to how Deno does it. Related to #14.

Should be closed by 81a9aef1fd5695ed45ed4af43c87353704e8bdfd


Updated voting section in README

Added information about voting window.

You have a typo on line 50
their comments, effectively >chanding< their vote.


Make configure change the defaults rather than overwriting the options

Currently calling the configure function would overwrite every xhr request with those values, rather than just being the default (I assume was the point).
Changing the ordering of the assign so that the global values configured by configure just set the defaults, but the options passed in during the request are used if passed.

Makes sense, thanks for the PR!


plugin process env limits env var runtime visibility

I've defined couple of plugins as follows:
 'process.env': {
          FOO: "BAR",
          SOMEOTHERTHING: true

Now process.env of my application only has those 2 keys. I can't access all other envvars that are visible via env command.
What am I doing wrong?

It looks like you just deleted our lovely crafted issue template. It was there for good reasons. Please help us solving your issue by answering the questions asked in this template. I'm closing this. Please either update the issue with the template and reopen, or open a new issue.

Also i can't understand what you want to do. You can use webpack.DefinePlugin for this case


Logo Design

Hey! I added logo design variations (high quality).

Looks great! Good on you for pushing to the right branch. Was worried you'd use master.

@spikespaz
Hey, I used 'Capriola'. You can find it here.


Docker image is broken

What happened?
NPM installation script randomly stopped working
Reposilite version
3.x
Relevant log output
Error: buildx failed with: ERROR: failed to solve: process "/bin/sh -c apt-get update; apt-get install -y curl     && curl -sL https://deb.nodesource.com/setup_18.x | bash -     && apt-get install -y nodejs     && curl -L https://www.npmjs.com/install.sh | sh" did not complete successfully: exit code: 2

It seems to be related to https://github.com/npm/cli/issues/6589

Error code 2 -> 22:
Error: buildx failed with: ERROR: failed to solve: process "/bin/sh -c apt-get update; apt-get install -y curl     && curl -sL https://deb.nodesource.com/setup_18.x | bash -     && apt-get install -y nodejs     && curl -L https://raw.githubusercontent.com/npm/npm-install-script/main/install.sh | sh" did not complete successfully: exit code: 22


Updated with Private Endpoint NSG Support

Private Endpoints now support NSGs and this is GA -> https://azure.microsoft.com/en-us/updates/general-availability-of-network-security-groups-support-for-private-endpoints

#sign-off

Due to the upcoming Ignite conference, all merging and publishing is on hold until the morning of October 12.
This PR is ready for merge on 10/12.
This repo is in lockdown for content freeze. If you need to make additional changes to these files, please submit your changes a new PR.
#label:"event-triaged-to-10AM"


Utils method for dates

Write a utils method for dates along with tests to ensure they are always in the right format

@davidcmoulton , can this PR be closed?

 Maybe he's on holiday. I'll close this but it can be re-opened if necessary.


Consider renaming / removing Zipkin starters in Edgware / Finchley

The default for Edgware is to use Zipkin 2 - then the default starter should use zipkin2 and should be called starter-zipkin.
The legacy Zipkin 1 should be called zipkin1 - since it's not the default.
In Finchley I guess we should remove zipkin1 support - that's a perfect occasion to do such a change.
cc @snicoll @adriancole @dsyer

if we rename, then we are breaking folks even if mildly. The main reason to name the new version zipkin2 was to just not conflict with the old name. Given a choice, we'd only have one zipkin (easier for start.spring.io, too)
my 2p

you can call old one zipkin-legacy (which will work until 2 years from now when zipkin2 is legacy :P)


Add a proper search results page

Right now we only hit the pelias autocomplete endpoint which doesn't perform interpolation, among other issues. Letting users press enter to see an actual search result page would give us the opportunity to hit the search endpoint and get additional address coverage that way.

Can we make it so that when the user press enter, if the first result has a high enough confidence score, the "To" is filled?
Or maybe fill it unconditionally with the first result, not sure.
It would be an effect similar to when a route search is made: select the first result and show the others below in another style.

I would prefer to show a search results page filled with all of the options returned from the Pelias search endpoint. Right now we're only using the autocomplete endpoint which leads to some problems. The search endpoint is tolerant of misspellings and is capable of doing address interpolation.
In the future though we'll also want to allow users to use the arrow keys to navigate the autocomplete suggestions, which should at least partially satisfy your request. :)


Error on copying file on Linux

Description
Trying to copy a file from one file explorer window to another on Ubuntu, i get an error.
Error opening file “/home/crtah/Desktop/Fairdrive Desktop App/Mount-point/Fairdrive/Photos/web3pc-1.png”: Input/output error
To Reproduce
Open two "Files" apps on Ubuntu, one of them with the mounted pod open, the other with the source of photos
Copy one photo to mounted pod
Expected behaviour
The copying should proceed without error.
Screenshots

Attempted Fixes
No response
Additional context
Ubuntu
Bee 1.15.0
Fairos desktop app 0.1.5

Closing it for now. Please reopen if the issue still persists.


Global CRUD firebase actions

Moved firebase actions to global module, onSnapshot can be attached/detached to any db collection needed.
CRUD operations will rarely change so it makes sense not to duplicate the actions. We could pass additional/optional data to those actions like callback actions, etc..
Does this make sense? :)
The only thing that is bothering me is the notification cb implementation. :P
Suggestions are welcome :)

Yes, it does make much sense - this is a great contribution @Aleksalje! Take a look at changes after merge @jelenamilanovic, cause this might affect your future work.
What exactly is bothering you with the notifications, help me understand better @Aleksalje ?

What exactly is bothering you with the notifications, help me understand better @Aleksalje ?
I don't like the way it's being passed to the action :D

Okay, do you have any proposal for improvement? @Aleksalje

@Aleksalje , @MilosPaunovic , we can return additional Promise from the action to the component and then call notification directly there. Another possible solution is to pass callback functions from component to action. These callbacks would define which notification to call and what message to display.

Great idea @jelenamilanovic.
I've added the callback and message  as optional parameters, If message parameter is not provided default message is displayed for different operations.
@MilosPaunovic @jelenamilanovic do you think this is a better approach?

Yes, definitely! Great work @Aleksalje; approved and merged.


Don't save info and annotations during step 2

Closes #14
Correct, no need to store both separately. This is because at first we wanted to avoid saving the entire raw recording @ step 2, to gain space. But since that steps potentially runs an interpolation on the bridges, we need to save it anyway.
And it does contain the annotations and the bads.
@ArthurNguyen If all clear for you, I'll merge.

Thanks!
Just a note that we had started on the annotations on all previous participants so far, meaning that the existing saved files may be different in step 2 for this batch vs the future ones

We should make a script to convert the old format to the new one.


Intended functionality of getActiveJoints?

getActiveJoints seems to have a bug in it. It appears as though the intent is to return just the joints that have dof > 0.

I believe that behavior is fixed in the latest version. If you are on the latest version, could you provide some code to reproduce the error?


Update resource-domain-changes.md

Updating as per CI 161612 follow up after 2203 release.
Also adding a new scenario that wasn't covered before for consideration.

@Yupiter2005 : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@Yupiter2005 If the PR is ready for merge, can you type "#sign-off" in a comment?

@simonxjx : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@Yupiter2005 The PR is merged. Thanks.


Workshop (Python) should advise about RetentionPolicy

_Originally posted by @telenieko in https://github.com/aws/aws-cdk/issues/7403
Hi,
I just got bit by #3476, it is stated that this is intentional and documented but...
Given it's a workshop, one would expect that the last step would destroy all created resources, which does not happen and there's no warning about it.
The Workshop should either:
In the Congrats page, when telling you to cdk destroy advise that the DynamoDB table will not be deleted (extra points for a link to the RetentionPolicy docs)
When creating the table, set removalPolicy: RemovalPolicy.DESTROY and explain it
Option two would be preferable as it explains something quite useful.

Duplicate of #126


CollectionWrapper: item's marginTop not being applied

Hello,
I was trying to use the marginTop property on an List item and was seen no visual impact. Applying marginBottom would work as expected.
After some debugging and digging, I ended up finding these which I believe are some ancient relics:
https://github.com/rdkcentral/Lightning-ui/blob/99a220e3e73b66693b5a3fda8596ab2b2ad1174c/src/helpers/ItemWrapper.js#L35-L36
https://github.com/rdkcentral/Lightning-ui/blob/c075a25f6236140a3c211ec0c961991bf6ee0053/src/helpers/CollectionWrapper.js#L363
https://github.com/rdkcentral/Lightning-ui/blob/c075a25f6236140a3c211ec0c961991bf6ee0053/src/helpers/CollectionWrapper.js#L368
These should be marginTop I believe, as if I change those to marginTop it starts working as expected. I'll submit a PR and merge it if it is indeed an forgotten ancient relic.

@jfboeve I believe it was you who implemented this, could you check if it sounds good?

Hey @ricardo-a-alves-alb,
Thanks for this find. It managed to elude me for quite a while!
Fix is released with version 1.3.2


very hard to find on addons

Hi
I looked for this module on addons.silverstripe.org and I found it impossible to find.

http://addons.silverstripe.org/add-ons?search=**translatable**
http://addons.silverstripe.org/add-ons?search=**translatable**&type=&sort=&start=16
http://addons.silverstripe.org/add-ons?search=**internationalisation**&type=&sort=
http://addons.silverstripe.org/add-ons?search=**i18n**&type=&sort=
- http://addons.silverstripe.org/add-ons?search=localisation&type=&sort= ... this is the only one that works....

@sunnysideup as you'll know, this is functionality is likely dictated by the terms used in composer.json which are currently:
["silverstripe", "localisation", "localization", "translation", "language", "locale", "multilingual"]

..which prob explains why "localisation" is the only term that worked.

I've taken on board your suggestions. :D


Put Dependabot in gallery on landing page and in the sidebar

What is the current behavior?

It's hard to find the documentation entrypoint for Dependabot.
This is probably what happens to newcomers to the GitHub docs:

Go to the main landing page: https://docs.github.com/en
Search on landing page for "Dependabot" in browser search (CTRL + F), no hits.
Use docs-native search with string "Dependabot", get no hits about enabling Dependabot.

What changes are you suggesting?

I think it would be great to have links/text that references Dependabot on the main landing page of the docs.

Create new item in sidebar called "Dependabot".
Create new item in "Explore by product" gallery on the homepage for the GitHub docs, called "Dependabot".

This way users can find the docs for Dependabot by viewing the sidebar, looking in the "gallery" on the homepage, or by searching in their browser for the string "Dependabot" and find the sidebar/gallery items.
Additional information

Inspired by the confusion a user had with finding Dependabot docs in issue: #5946.

cc @emilyistoofunky

Thanks @HonkingGoose for your detailed feedback! Having the steps to reproduce your experience was especially helpful in understanding the problem you’re describing.
I also want to say that going the extra mile to help someone out when they were in need is very much appreciated. This kind of helpful and cooperative attitude is what attracted me, personally, to open source in the first place and keeps me excited and hopeful about efforts like open sourcing the GitHub documentation.
Upon reviewing this with the team, we feel the real failure here is the inability to search for the information that was needed. The search experience in the GitHub Docs is not especially useful at times. This is something that we have targeted for improvement and are currently investigating how best to achieve those gains. Because we’re still scouting out alternatives with their various pros and cons, we can’t give a timeline for when we’ll be able to roll out changes, however be assured that this is a pain point that we experience as well and want to see fixed. Because this is a search issue and not something that we would change the gallery or sidebar for, we’re going to close this issue.
Thanks again for contributing to the GitHub Docs and your interest in seeing them improved! We truly appreciate your ongoing efforts and eagerness to help people 💖

I also want to say that going the extra mile to help someone out when they were in need is very much appreciated. This kind of helpful and cooperative attitude is what attracted me, personally, to open source in the first place and keeps me excited and hopeful about efforts like open sourcing the GitHub documentation.

Thank you very much for the compliment! 😄 🥳

Because this is a search issue and not something that we would change the gallery or sidebar for, we’re going to close this issue.

That's ok, at least now it on the radar. Thanks for discussing my idea with the team, and for your helpful explanation of the reason for closing the issue!

Thanks again for contributing to the GitHub Docs and your interest in seeing them improved! We truly appreciate your ongoing efforts and eagerness to help people 💖

🥳 ❤


Blogs: categories link always result "page not found" error

Bug with blog categories. Viewing a blog post, in the post info block, clicking the category link leads to not found. Seems the rewrite rule is missing, because turning off permalinks works fine.

https://www.boonex.com/forums/topic/Blog-Category-Bug-in-Dolphin-7-3-0.htm

https://www.boonex.com/forums/topic/Fix-broken-links-in-the-categories-on-the-blog-in-.htm

https://www.boonex.com/forums/topic/A-bug-in-the-blog-categories-create-a-category-do.htm

The problem is in old .htaccess file, it could happen when not all files were copied from upgrade script.
To fix the problem upload the latest .htaccess file from the package.

Category link on the post page still don't work, for example, if you click on category in the post:
http://demo.boonex.com/blogs/entry/Dream-Of-Re-Rainforestation
Page not found error is returned:
http://demo.boonex.com/blogs/posts//category/Rainforest


rustfmt

It seems we missed rustfmt in the CI on these files?

We have added it, perhaps that PR sneaked in right before or maybe the PR Action was never rerun on the latest master branch before being merged.


Use getTitle instead of getLongTitle. Fixes #5

Fixes #5

ping @js-padavan

I don't think that it is good idea to replace getLongTitle() with getTitle(), because usually I have files with the same names in different folders and it would be difficult to distinguish them without full path.
It would be better to detect such tabs like "Settings" and use getTitle() only on them.

Good point, I changed it to getLongTitle and as fallback getTitle.


Performance problem with release 3.1.16 and 3.2.5

After upgrading from 3.1.15 to release 3.1.16 I have massive performance problems.
I did some profiling and most of the time is spent in DomainInfo.getClassInfo():

I also debugged into the code and the problem seems to occur for queries that do not return a domain object but a simple type, e.g. int or String.
For these types the Map provided to DomainInfo.getClassInfo() contains no entry and so the "slow path" via regex and stream is used to find out that there is no mapping available. And then the scalar mapping is applied in ExecuteQueriesDelegate.executeAndMap(Class<T>, String, Map<String, ?>)
I also tried the release 3.2.5 and this has also the performance problem.
I added an additional cache to the method, so that the result of "slow path" is cached and that resolved the performance problem for me, see https://github.com/torstenkuhnhenne/neo4j-ogm/commit/f55372fb65e6e23c2849ee51b5c6457ba9341062
Expected Behavior

The new releases 3.1.16 and 3.2.5 should be as fast as 3.1.15.
Current Behavior

The releases 3.1.16 and 3.2.5 are much slower than 3.1.15.
Possible Solution

Downgrade to 3.1.15
Your Environment

OGM Version used: 3.1.16 / 3.2.5
Java Version used: 11
Neo4J Version used: 3.5.14
Bolt Driver Version used (if applicable): 1.7.5 / 4.0.0
Operating System and Version: Windows 10

Thanks for your detailed report. We're gonna investigate this.

Hey @thorstenkuhnhenne could you please have a look if either https://github.com/neo4j/neo4j-ogm/pull/740 (Patch for 3.1) or https://github.com/neo4j/neo4j-ogm/pull/739 (Patch for Master / 3.2) solves this for you?

Hi @michael-simons I have tested both patches and can confirm that they solve the problem! :-)
Thank you for the quick response and the good work :-)

🙇 thank you. Expect a patch next week. I’ll see if I can address the other new issue on Monday.


[PluggableDevice] C-API Symbols not exposed

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

OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Linux Ubuntu 18.04
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device:
TensorFlow installed from (source or binary): binary (pypi)
TensorFlow version: 2.6.0.dev20210612
Python version: 3.7.8
Installed using virtualenv? pip? conda?: pip
Bazel version (if compiling from source):
GCC/Compiler version (if compiling from source):
CUDA/cuDNN version:
GPU model and memory:

Hello,
I’m getting started with building a plugin using the new PluggableDeviceAPI, and am hitting a few snags. Using this example as my starting point, my current goal is to have my own custom optimize callback function that walks the NodeDef's and prints the shapes of each of the Input/Output Tensor(s).
Version of tensorflow I’m using:
tf-nightly == 2.6.0.dev20210612
This problem reproduced on the latest tf-nightly for me too.
The c_api.cc symbols and the grappler.cc symbols are not exposed in the monolithic libtensorflow_framework.so. The header files are part of the tensorflow wheel distribution, but we get linker errors for things calling functions like TF_NewBuffer when using @local_config_tf//:tf_header_lib as a dep. When running nm -gDC libtensorflow_framework.so.2 it’s clear that these symbols aren’t exposed. Are there any known workarounds for this?
Also, what is the recommended way to use the C-API with libtensorflow_framework.so? When using the @local_config_tf provided in the BUILD files at the example linked above, I get duplicate registries / static global's when trying to link libtensorflow.so with libtensorflow_framework.so at runtime.
Cross post from the Tensorflow forum due to inactivity.
Thanks in advance!

Hi @jvishnuvardhan ,Could you please look at this issue?

@bsarden,
This post, introduces the PluggableDevice architecture which offers a plugin mechanism for registering devices with TensorFlow without the need to make changes in TensorFlow code. Thanks!


How to install?

Readme says "easy installation".  Can you please provide installation instructions?

When you open the application you will see this:

First field: Give any name you would like to give it, it won't be seen unless you have more than 1 instances

Second field: The text you see on the image is an example. If you have the Pi-hole on your local network and your device is using it as the DNS provider then just type that in what you see there, or if it's not set as the DNS server on your device, then type "http://IPADDRESS/admin/api.php" where the IPADDRESS is your Pi-hole's IP.

Third field: There's a link under it you can use that or change the pi.hole to the Pi-hole's IP.

You described the configuration needed for pihole-tray.  I was intending to ask about how to install pihole-tray from the zip file I downloaded so I can get to the configuration pages you described.
I'm not seeing an installer or anything that looks like an executable.
Thank you.

There's no installer for it, just source code and executable.
https://github.com/PinchToDebug/Pihole-Tray/releases

Thank you.  I was unable to find the pihole_tray.exe file before.


Ensure that qemu has attach_queue permissions on tun_socket

What this PR does / why we need it:
Normally libvirt labels tun devices the right way so that qemu can do
the network multiqueue setup. However in kubevirt libvirt can't do that.
In order to not get selinux denials like this:
type=AVC msg=audit(1576662638.540:8152): avc:  denied  { attach_queue } for  pid=795330 comm=43505520312F4B564D scontext=system_u:system_r:virt_launcher.process:s0:c135,c769 tcontext=system_u:system_r:virt_launcher.process:s0:c135,c769 tclass=tun_socket permissive=0

give qemu the explicit permission to do so.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
https://bugzilla.redhat.com/show_bug.cgi?id=1779931 provides more context.
Release note:
Make network multiqueue support work when selinux is enabled.

/test pull-kubevirt-e2e-okd-4.1

/test pull-kubevirt-e2e-okd-4.1

/retest

@ILpinto this would solve https://bugzilla.redhat.com/show_bug.cgi?id=1779931, but since I don't have the exact same env in CI like you people have, I can't find out if there will be other selinux errors as a follow-up.

/retest

Tested the new policy with the 4.3 provider from https://github.com/kubevirt/kubevirt/pull/2950. Without the policy fix I see the denial and the test fails because the VMI crashes. With the policy fix the VMI works as expected and no other denials appear.

/approve
Anyone here to LGTM the PR?

LGTM

/lgtm

/override pull-kubevirt-e2e-kind-k8s-sriov-1.14.2
sriov lane is still broken.

/override pull-kubevirt-e2e-okd-4.1
certificates are still expired on the test cluster

/override pull-kubevirt-e2e-kind-k8s-sriov-1.14.2

/override pull-kubevirt-e2e-kind-k8s-sriov-1.14.2

/retest

/cherrypick release-0.24

/cherrypick release-0.23


[Month View] fix end date in slot selection

For end date in month-view slot-selection increase day by 1.
Fixes: #1909

@croraf you mentioned in the issue you also applied the fix for Week view but this PR has only changes for month, do you want to push more changes?

@pietrofxq The change I did in src/TimeGrid.js file handles that case. The problem for week was only when the selection of entire day (in the topmost row) happens.

The same is in Day view for the whole day selection:


allow overriding of the runit process state

This commit will allow the definition of the user(s) and group(s) for the jenkins runit process.
This is very helpful in order to manage Ruby versions installed via RVM.
runit: {
  sv_timeout: 240,
  user: 'jenkins:rvm',
  group: 'jenkins:jenkins:rvm'
}

Hi. I am an automated pull request bot named Curry. There are commits in this pull request whose authors are not yet authorized to contribute to Chef Software, Inc. projects or are using a non-GitHub verified email address. To become authorized to contribute, you will need to sign the Contributor License Agreement (CLA) as an individual or on behalf of your company. You can read more on Chef's blog.
Non-GitHub Verified Committers
There are 1 commit author(s) whose commits are authored by a non-GitHub verified email address. Chef will have to manually verify that they are authorized to contribute.
Please sign the CLA here.

Should do the same for all the other runit controlled processes, i.e. jnlp etc...

I'm going to close this out at this point since it's diverged from master quite a bit and we never got a response to the CLA process. If you're still interested in this change you can open the PR again and sign the commit for the DCO.


Automatically convert äöüß in entity ids

DONT'T DELETE THIS.
Is your feature request related to a problem? Please describe.
No, only partially. Extra work.
Describe the solution you'd like
Entity IDs should are automatically generated. But something like "Türkontakt" gets converted to "turkontakt".
It would be nice to see äöüß (and maybe other special chars) to be converted automatically wenn devices are added.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

We don't generate entity_ids we only generate names.
So when HA core generated entity_ids it slugifies the name to get an entity_id.

Hmm, ok. So name gets taken over with äöü but HA squashes to aou. So nothing to do on your side. If this is the case. Feel free to close.


PR conventions draft.

Is it the right document to talk about running validation tests on platforms not supported by the CI like iOS?

Can we merge this?


feat(43): Add max swipe prop

Closes #43

Codecov Report
Patch coverage: 92.85% and project coverage change: +0.03% :tada:

Comparison is base (16e680f) 90.34% compared to head (e4c2727) 90.37%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #45      +/-   ##
==========================================
+ Coverage   90.34%   90.37%   +0.03%
==========================================
  Files           5        5
  Lines         466      478      +12
  Branches      169      175       +6
==========================================
+ Hits          421      432      +11
- Misses         45       46       +1

Files Changed
Coverage Δ

src/SwipeableListItem.js
90.17% <92.85%> (+0.04%)
:arrow_up:

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Fix probe restore cannot match - issue.

Please provide a description of this PR:
The app probe restore will fail if the app name contains dash -, like hello-api or user-api etc.
I fix this issue by modifying the regex expression, please review.
And the unit test result:
go test -timeout 30s -run ^TestKubeUninject$ istio.io/istio/istioctl/cmd
ok      istio.io/istio/istioctl/cmd     1.200s

To help us figure out who should review this PR, please put an X in all the areas that this PR affects.

[ ] Configuration Infrastructure
[ ] Docs
[X] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure

Please check any characteristics that apply to this pull request.

[ ] Does not have any user-facing changes. This may include CLI changes, API changes, behavior changes, performance improvements, etc.

Hi @ErikXu. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
Once the patch is verified, the new status will be reflected by the ok-to-test label.
I understand the commands that are listed here.

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.

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

Test name
Commit
Details
Required
Rerun command

release-notes_istio
be2b649327f97fb7140759af073cc9e99c6e5c54
link
true
/test release-notes_istio

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.

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

Test name
Commit
Details
Required
Rerun command

release-notes_istio
be2b649327f97fb7140759af073cc9e99c6e5c54
link
true
/test release-notes_istio

unit-tests_istio
be2b649327f97fb7140759af073cc9e99c6e5c54
link
true
/test unit-tests_istio

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.


lyne-timetable-park-and-rail

state: in progress
figma: ???
dev: https://lyne.sbb.ch/components/lyne-timetable-park-and-rail
ux quality-check
code quality-check
refactoring (optionaly)
testing

Feature Description
We want to review/refactor the lyne-timetable-park-and-rail implementation.
https://lyne.sbb.ch/components/lyne-timetable-park-and-rail
Figma Spec

dev: https://lyne.sbb.ch/components/lyne-timetable-park-and-rail

References

Design Spec
Technical Spec

Definition of Done

[ ]  ux quality-check
[ ]  code quality-check
[ ]  refactoring (optionaly)
[ ]  testing
[ ]  Component is implemented
[ ]  Tests are implemented
[ ]  E2E Tests are implemented
[ ]  Storybook stories are implemented
[ ]  Navigation via keyboard is tested
[ ]  Screen reader output is tested
[ ]  High-contrast is tested
[ ]  Remaining accessibility is tested
[ ]  UX approved

Will be tracked/decided in #1901


lambd@edge function are not working

we just clone this repo and we have created the individual lambda functions and associate with cloudfront.
Brief description:
we have created the cloudfront and S3 bucket. we are able to access the site using cloudfront URL
we have added the A record in route53 for cloudfront URL. we are able to access the site using custom domain
now we have cloned this repo to create the lambda@edge functions (we are not using Serverless function).
we have created the lambda functions with the appropriate source_uri (mentioned in template.yaml file)
we have associated the lambda@function with cloudfront. now we are not able to access the site
More info:
when lambda created through cloudformation or SAM configuration.json & bundle.js files are created in lambda function but configuration.jon & bundle.js files is not available when created though manually.
we are actually trying to complete this setup using terraform.

configuration.jon & bundle.js files is not available when created though manually.

Right, configuration.json is injected by a CloudFormation custom resource.
bundle.js should be created by running npm run build. You need to run webpack to get them.

Sounds like you're having quite a different/custom setup, so it might be hard to support you.

Where npm built is happening in template file.????
If I take a copy of src directory and run npm build manually can I get rendered code for 5 lambda@edge functions????
How do I can get the code alone to reuse ???
I am deploying this through terraform setup, so if you could provide the code in zip file will be helpful.
I think only 5 lambda function is enough to complete the setup am I right..???? Bcoz other lambda functions are code update functions.  If I manually create the lambda functions with rendered code in zip file I don't need that code update functions am I right???
Can you please provide the code for reuse

Closing for now, as the required support is beyond the scope of this sample repo.
If there's any concrete and specific questions that cannot be answered by README.md or exploration of this repo, let me know.


the definition of Assumption should be updated

Description of the issue
Assumption is defined as:  "An assumption is a statement about a property of a system or process that is considered to be true."
Which is first of all not aristotelean.
Classified as information content entity.
@jannahastings wrote:

This one is tricky. The assumption class gives mainly (only?) political / social assumptions as examples. And the relation definition refers to an assumption that is needed for the execution of a "transformation". It is difficult for me to imagine the sorts of transformations that are meant. Don't assumptions apply to whole models, or modelling processes, rather than just transformations? Either way, I agree that the relation can be deleted. I just wonder if we should think a bit more about the way that assumptions are used.

@l-emele wrote:

Maybe we should discuss assumption first? The current definition is rather weird: An assumption is a statement about a property of a system or process that is considered to be true.
To me an assumption does not have to be true as you often have scenarios (e.g. business-as-usual scenarios) where you use counterfactual assumptions.

Ideas of solution
Workflow checklist

[ ] I discussed the issue with someone else than me before working on a solution
[ ] I already read the latest version of the workflow for this repository
[x] I added this issue to the Project 'Issues'. If suitable, I add it to further Projects.
[ ] The goal of this ontology is clear to me

I am aware that

[ ] every entry in the ontology should have a definition
[ ] classes should arise from concepts rather than from words

hmm, first milestone?

Maybe the term Assumption is ambiguous. Would Premise be any better?

To me the word premise is even more ambiguous.

Assumption is an essential part of scenario description. What about "An assumption is an information content entity determining a part of possible reality in a certain scenario."
Anyway, I'd say this is not necessarily part of the first release.

I would leave out words like true or reality in the context of scenarios as scenarios are not predictions.
What about: An assumption is an information content entity determining a part of possible development in a certain scenario.
I am okay with the idea of leaving the definition out for the first release.

I like the beginning of the definition and also think the term "reality" should be avoided. To me development isn't ideal either though. I understand what is meant. The development can be understood as how scenario is characterized over time or how it plays out from one calculating step to another. To me it feels however as though a scenario just is and doesn't develop. But you may convince me otherwise. At any rate, here's another suggestion (or 3 suggestions disguised as one):
An assumption is an information content entity that functions as a determinant/parameter/influential factor in a scenario's characteristics.

All of these definitions, I just realized, seem to be missing the "assuming" part. This would make the definition quite long, but it may make sense to add something in the similar to "value or cause-effect relationship that is mutable and cannot be precisely determined in advance".

An assumption is not necessarily something related to the future. It can be timely independent or refer to something current that cannot be quantified or is just simplified.

Just to provide the context, here is the def of scenario: A scenario is an information content entity that contains statements about a possible future development based on a coherent and internally consistent set of assumptions and their motivation.
They should be related like this: scenario has part some assumption.

Proposal for a definition by @stap-m  and me: An assumption is an information content entity about a property of a system or process. It determines a part of a scenario content.

Looks good to me

So I think we are ready for implementation. Who wants to do that?

I can do that.


ResourceExhaustedError: OOM when allocating tensor with shape

I've run successfully every script and can run the test-scripts with pre-trained models. But I constantly fail to execute the Training scripts, because I'll get a resouceexhausted error and don't know why, i.e. what to do and to overcome it.
my Environment: ubuntu 16.04, GTX 970, python 3.5
details see attached stdout
abalata_triviaqa_errors.zip

Its look like the GTX 970 only has 4gb of RAM, and that was simply not sufficient to train the network on.
The best way to fix this would be to get a GPU with more RAM. Otherwise you could lower the batch size, or possibly the paragraph size, by altering the train script. I can help you do that if needed, the batch size is a parameter in either the ClusteredBatcher objects or in the StratifyParagraphSetsBuilder objects, depending on what mode you are running in.

Hi,
I'm also facing OOM issues using this code on a different dataset than TriviaQA / Squad. I would like to limit the maximum paragraph size of the passages. Can you please point me to where in the code I can change this, and what is the default value?
Thanks,
Bhuwan

I am running the paragraph mode for Squad dataset.

Thank you, Chris - for the (retrospectively quite obvious) hint!
I cut the batch size for both functions by 50% and now training's running since hours ...
2nd question to you out of interest/"benchmarking": What environment (OS, HW/CPU/GPU) are you using?
KR Eric

@bdhingra In general you would have to build your own TrainingData object, and then make sure that you truncate the passages before you feed them into the model. If you happen to be using the squad.DocumentQaTrainingData you could, for example, override the preprocess method and do the truncating there.
For us, the default value in SQuAD is to just use the entire paragraph as found in the SQuAD source data. For TriviaQA we use the MergeParagraphs class, which both merges small paragraphs together and truncates paragraphs to a maximum size depending on the max_tokens parameter.

Thanks @chrisc36. I ended up preprocessing the dataset itself, since that seemed to be the easiest path.

Everything seems to be covered so I am closing this issue


Added optional backgroundColor and textStyle to bakeToast

Added optional backgroundColor and textStyle to bakeToast and fixed some lint errors

Thanks @toniremi  - it still showing some stupid errors. Ignore it. merging the commit
@all-contributors please add @toniremi for code


Add feature to configure favicon (or probably just correct my lack of understanding)

Hello,
I wanted to configure the favicon that displayed in the portal and the only way I could think of to do this was to copy in the templates and inject a bit of HTML into the header.
Is there something I could do on my end to make this less hacky? Perhaps just reroute the asset paths in Caddy? Just use injected javascript to write the tags?
Or if this is something you would like to support natively and feel like giving me a few pointers on how to go about this, I can attempt a PR for this feature. I think I've learned enough golang for basic templating at this point, so I wouldn't mind giving it a try.
Cheers, and thank you for your time!

@drkstr101 , I think I would need to add “custom header” Caddyfile directive.
Additionally, I need to make it such that css/js/header could be selectively applied to portal’s pages.
Next, I need to add a directive to add files to static assets, e.g.
addon asset <uri_path> <content_type> <filesystem_path>
This way you can inject your favicons via the plugin.

@drkstr101 , I will find time next week to address this issue.

@drkstr101 , would having custom_html_head_path help? (similar to https://github.com/greenpau/caddy-auth-portal#custom-css-styles). This would inject that the code in path/to/head.html into an existing HTML page.
custom_html_head_path path/to/head.html

@drkstr101 , this is not available in v1.3.2. Please see here.


Namespace Models

This pull request includes changes for namespacing models under App\Models. Feel free to commit any additional changes to the shift-37439 branch.
Before merging, you need to:

Checkout the shift-37439 branch
Review all pull request comments for additional changes
Thoroughly test your application

:warning: While Shift updated model references within your application code, you may reference models outside the code. Be sure to review your environment configuration, database, and queues for additional references.

:warning: Shift detected polymorphic relationships within your application. Unless you created custom polymorphic types using morphMap, you will need to update the fully qualified names in the related model table.
Shift found potential instances of polymorphic relationships in:

[ ] app/Models/Attendance.php
[ ] app/Models/DuesTransaction.php
[ ] app/Models/Event.php
[ ] app/Models/Payment.php
[ ] app/Models/Team.php


Home URL overwritten by RefTS code

The GUID that was stomped overtop of the URL value for “home” was  1173171ea834460d8bc5f57ded5aea50.
Home’s URL should always be “/“, and it is being written over somehow when the ref_ts resource is being created.
This is the same GUID as found in the SNOTELBevansCabin resource

Tested after creating a new refts resource and the site remains up.


Smart Guides Not Working with transform.

Smart Guides is working fine with jquery draggable. But If I add   transform:scale(1.5); to parent div it is not working, plz help.
Here is link without scale: http://jsfiddle.net/47zcLga4/2/
and with scale: http://jsfiddle.net/47zcLga4/3/

Unfortunately I can't fix it, it's a jQuery problem. Snap doesn't work properly with transform.
You can check it here http://jsfiddle.net/47zcLga4/6/


Update on list

Certain platforms listed as active are not active anymore. I have removed those from the first list and placed them at the bottom of the page along with the others.

Thanks!


Poor handling of missing data

in reference to: /geo/los-lagos-10/maullin-169#health

[ ] render 2nd chart only if there is (good) data (@palamago / @cnavarreteliz)
[ ] render stats only if there is data for the current year (@palamago / @cnavarreteliz)
[ ] when only one of two charts is rendered in a two column layout, make it one column
[x] move stats above clarification text

From Cesar's ppt:

The plot thickens. The problem isn't that there is no data, but no data for the most recent year. Makes things more tricky than it appears.

@perpetualgrimace d3plus should be displaying a "No Data Available" message. The [noDataHTML](http://d3plus.org/docs/#Viz.noDataHTML) method lets you change the HTML in that message, and the [noDataMessage](http://d3plus.org/docs/#Viz.noDataMessage) boolean lets you toggle it's visibility.

@davelandry The problem isn't that there is no data, but no data for the most recent year. 😉

Or, there's literally one death, or zero deaths. This is actually a good chart! They cut down infant mortality by 100%, to 0


Support for empty URL; minor cleanup; more tests

This PR adds support for empty URLs without breaking any existing test and keeping coverage at 100%.
I did not update the package version. Please do it if you merge this PR and feel it's needed.

List of other minor things done:

refactor the request not found log error and add a better wording for Django ≥ 1.8 (seems to address #20 at least partially)
minor pythonicity improvements
some typos in the docs/setup.py (eg. support for Bootstrap 4)

Coverage decreased (-0.8%) to 99.187% when pulling 7fbc1080cacad02a8bc9278df111af3374c6c4ef on Zopieux:master into b77d7a16bdd4d0ceeca0fc3a84197958be2d28d1 on prymitive:master.

Coverage remained the same at 100.0% when pulling 290e9acc707e3d92f1e01bb1a8d27f18394bb68e on Zopieux:master into b77d7a16bdd4d0ceeca0fc3a84197958be2d28d1 on prymitive:master.

Coverage remained the same at 100.0% when pulling 290e9acc707e3d92f1e01bb1a8d27f18394bb68e on Zopieux:master into b77d7a16bdd4d0ceeca0fc3a84197958be2d28d1 on prymitive:master.

Coverage remained the same at 100.0% when pulling 290e9acc707e3d92f1e01bb1a8d27f18394bb68e on Zopieux:master into b77d7a16bdd4d0ceeca0fc3a84197958be2d28d1 on prymitive:master.

wow, thanks!
Seems like six should be added to requirements.txt
Care to add yourself to the contributors list? (docs/index.rst)

Coverage remained the same at 100.0% when pulling 56d8afbdd2437cb66092f460a679f9e90c64eb6f on Zopieux:master into b77d7a16bdd4d0ceeca0fc3a84197958be2d28d1 on prymitive:master.

Indeed, forgot about six. I added myself to the contributor list. Thanks for your quick reply!

Released 0.8 with your changes, thanks!


Incorrect implementation of tuple.SplitObject

Checklist

[X] I have looked into the README and have not found a suitable solution or answer.
[X] I have looked into the documentation and have not found a suitable solution or answer.
[X] I have searched the issues and have not found a suitable solution or answer.
[X] I have upgraded to the latest version of OpenFGA and the issue still persists.
[X] I have searched the OpenFGA Community and have not found a suitable solution or answer.
[X] I agree to the terms within the OpenFGA Code of Conduct.

Description
It seems to me that tuple.SplitObject(obj) is incorrectly implemented.

it supports an input such as group#member:fga, which is invalid.
for a valid input group:fga#member it returns group, fga#member . It should be group, member, fga.

Luckily, when we pass a userset as input, we always discard the second return value, so this doesn't manifest in any bugs.
Expectation

tuple.SplitObject should accept correctly formatted usersets as inputs.
If it's possible, I recommend changing the return types from (typeAndRelation, id) to (type, relation, id) and deprecate SplitObjectRelation. These two functions almost always are called together, which is a code smell.

Reproduction
n/a
Store data
No response
OpenFGA version
1.5.7
How are you running OpenFGA?
As a binary
What datastore are you using?
In-Memory
OpenFGA Flags
none
Logs
No response

Hey @miparnisari , I've been looking for a good issue to start contributing and I saw this one referenced in https://github.com/openfga/openfga/pull/1615#discussion_r1747483797.
Do you think it's an appropriate time for me to pick this one up since it has a bunch of references throughout the code?

Hey @Jguer! You can try to do it, but i'm honestly not sure if it will be an easy first task since like you said it's being referenced in a bunch of places. You will likely experience unit test failures. I recommend timeboxing the refactor to half an hour and then publish a PR, and we can take it from there if you wish.

@miparnisari just a sidenote: group:fga#member is an invalid object, I don't think it should return group, member, fga.
Unless you want a SplitUserset


Support index expressions and partial indexes in upserts

Today upserts only support giving columns and constraint names in :conflict_target. Postgres also supports giving direct index expressions and index predicates.

The biggest question is how we would specify those in a way it denotes it is safe and that escaping should be disabled.

Do we quote and escape the constraint name today or how do we ensure that it's safe?

Not sure. Probably both.
José Valimwww.plataformatec.com.br
http://www.plataformatec.com.br/Founder and Director of R&D

I don't see how we can make it safe without making conflict handling part of the compile time query.

@ericmj we can provide something like {:unsafe, ...} but if we go down this route we would need to do it consistently in other places too... and that's the main issue.

What other places do you have in mind?

I know it is not the first time this issue arises but I can't recall the other scenarios from memory.

Actually this is supported already since 2.2: https://github.com/elixir-ecto/ecto/commit/2df88c12f4f8a9578ee09143b70419e0e28899e6

Actually this is supported already since 2.2: 2df88c1

The features are not equivalent since constraints and indexes are different.

Oh. I guess then we at least now how to support it, we introduce {:index, string}.


bug([MatSidenav]): [Slow animation speed on Safari]

Reproduction
https://stackblitz.com/edit/angular-uasem8?file=src/app/sidenav-open-close-example.ts
^ This is a direct fork of the example from https://material.angular.io/components/sidenav/overview#opening-and-closing-a-sidenav
Steps to reproduce:

Open the stackblitz on Safari (desktop or mobile)
Click the toggle box to open/close the sidenav
Compare the speed of the animation to the speed on another browser (Chrome)

Expected Behavior
Animation speed should be the same across browsers
Actual Behavior
Animation speed is noticeably slower in Safari
Environment

Angular: 9.0.0
CDK/Material: 9.0.0
Browser(s): Safari 13.1
Operating System (e.g. Windows, macOS, Ubuntu): MacOS

Same issue detected. Slow animation of Sidenav component in Safari browser.

Confirmed that the animation is having issues on Safari. Might be a regression, since I don't remember seeing this in the past.

Just noticed this today on my customer's app. Thought I was going crazy first.

I can confirm this happens with Angular 7.1.1 in
MacOS 10.15.5 Safari 13.1.1
iPadOS 13.5 Safari
iOS 13.5 Safari

I confirm the exact same problem. The sidenav is slower in Safari. Expected speed is the same as chrome

I noticed that this is resolved in Safari on iOS 14.0 Developer Preview with Angular 9. Wondering what changes to Safari fixed it...

Seeing the same issue with the latest version of Angular and Angular Material on the latest version of Safari. Does anyone have a lead on a solution?

I just came here, after noticing how painfully slow nav-bar animation is in Safari on my latest 2023 Macbook Pro and Macbook Air. It is totally inconsistent with how it works elsewhere.
And I am using Angular v15.2.7. So, 3 years later, the issue and the issue hasn't been addressed. How come?

Same in Angular 17.3.3 on macOS Safari 17.3.1. But sidenav on iOS Safari working well.


german and romanian translation

All the commits from #318 and my commit pushing romanian to single files, so that it doesn't get lost in the mess my force-push to ecxod/master created :((

I am sorry for the created mess.

latest force-push

removed badge as it points to site needing credentials
removed merged sources
fixed white-space and typos
squashed commits

Docker image deployment and sonar cloud can be ignored (duplication expected for translations)


Remove UnionFind in favor of disjoint-sets crate

Initially suggested in #236
This replaces the current implementation of UnionFind with the use of the disjoint-sets crate.
Note that there will be a performance hit since the current implementation uses unchecked access while the new one uses checked access.
I haven't been able to run the benchs to measure the actual hit since nightly seems to be broken for now. I'll update the description once I've run them.

I'm against this change since we have a good well tested and battle tested implementation, and as you say, this is a performance regression. It's easier to sell changes if it's just about positive changes.

I suggest to put these changes on hold and open an issue in the https://github.com/tov/disjoint-sets-rs

I was able to run some benchmarks on my laptop which is running rustc 1.36.0-nightly (73a3a90d2 2019-05-17).
I benchmarked the following tests, which use UnionFind:
#[bench]
fn connected_components_praust_undir_bench(bench: &mut test::Bencher) {
    let a: Graph<(), (), $dir> = parse_graph($graph_a);
    let b: Graph<(), (), $dir> = parse_graph($graph_b);

    bench.iter(|| {
        (connected_components(&a), connected_components(&b))
    });
}

#[bench]
fn is_cyclic_undirected_praust_undir_bench(bench: &mut test::Bencher) {
    let a: Graph<(), (), $dir> = parse_graph($graph_a);
    let b: Graph<(), (), $dir> = parse_graph($graph_b);

    bench.iter(|| {
        (is_cyclic_undirected(&a), is_cyclic_undirected(&b))
    });
}

#[bench]
fn min_spanning_tree_praust_undir_bench(bench: &mut test::Bencher) {
    let a: Graph<(), (), $dir> = parse_graph($graph_a);
    let b: Graph<(), (), $dir> = parse_graph($graph_b);

    bench.iter(|| {
        (min_spanning_tree(&a), min_spanning_tree(&b))
    });
}

$graph being one of PRAUST, FULL, PETERSEN, taken from the isomorphism benchmarks
$direction being one of Directed, Undirected

The benches are submitted here, if you want to run them yourself.
Here are the results:

test
before
after
diff

connected_components_full_dir_bench
1890
924
-966

connected_components_full_undir_bench
994
581
-413

connected_components_petersen_dir_bench
646
400
-246

connected_components_petersen_undir_bench
398
300
-98

connected_components_praust_dir_bench
1951
1018
-933

connected_components_praust_undir_bench
1064
610
-454

is_cyclic_undirected_full_dir_bench
86
89
3

is_cyclic_undirected_full_undir_bench
86
89
3

is_cyclic_undirected_petersen_dir_bench
175
134
-41

is_cyclic_undirected_petersen_undir_bench
210
149
-61

is_cyclic_undirected_praust_dir_bench
161
131
-30

is_cyclic_undirected_praust_undir_bench
166
132
-34

min_spanning_tree_full_dir_bench
441
437
-4

min_spanning_tree_full_undir_bench
293
299
6

min_spanning_tree_petersen_dir_bench
219
225
6

min_spanning_tree_petersen_undir_bench
169
175
6

min_spanning_tree_praust_dir_bench
438
446
8

min_spanning_tree_praust_undir_bench
284
290
6

"before" column is taken from a recent head of master (minus the semicolon fix)
"after" column is taken from the current head of remove-unionfind

For completeness, my laptop's CPU is a Intel Core i5-7200U @ 2.50GHz, and has 8 GB of DDR4 RAM.
I ran the benchmarks a few times and the results seem to be consistent, showing a major gain for connected_components, and a barely noticeable impact on is_cyclic_undirected / min_spanning_tree.
I haven't looked too much into the graphs themselves too understand if these benchmarks are really representative. Another thing that needs to be looked into is the impact for other types of graphs, though I don't believe we'll see anything surprising there.

Thanks for the benchmarks! I checked also the repository - seems like the project is abandoned - no updates for a year, which is a bad sign.

Nice benchmarks. I had to look at it and see why the difference was so big. I'd like to just fix it on our side: #278  That would mean we are learning from their implementation which seems to be of high quality.
The IndexType dependency we have is one thing I'd use as another argument against removing our UnionFind. With that said, right now we don't actually use IndexType in an interesting way -- all the algorithms use usize, not the respective graphs' index types.

I've merged the "status quo"ish prs that keep unionfind in-crate. I think we don't really gain so much by picking up a dependency here, but we could revisit the decision.
You're clearly right that an outside crate could have good implementation quality. The performance improvement in #278 shows that. On the whole, our implementation is well tested though — we have used it in petgraph for years.

I'm ok with closing this since the crate I suggested doesn't seem actively maintained. I'll open a PR to add the benchmarks.


Generically support 'not', 'and', 'or'

I need to assert the following:
Assert::string($value) || Assert::isInstanceOf($value, ClassA::class);

Maybe it's not the kind of problem this lib wants to solve. But it would be really great to have something like an or to chain multiple assertions.
Any opinion about it? Or maybe it's already possible I didn't got it yet?
Something like this would solve it:
try {
    Assert::string($value);
} catch (InvalidArgumentException $e) {
    Assert::isInstanceOf($value, ClassA::class);
}

but that's definitely not the way to go, right? 😅
Something like this would be nice:
Assert::isInstanceOfAny($value, [Type::string(), Type::object(ClassA::class)]);

I'd love a way to  'generically' support 'not', 'or' and even 'and'  types of assertions, but thats currently not possible with this package. I'd love to see ideas that would make this possible though.

I could hack it like this:
Assert::oneOf(
  function () use ($value) {
    Assert::string($value)
  },
  function () use ($value) {
    Assert::isInstanceOf($value, ClassA::class));
  }
);

class Assert
{
  public static function oneOf(...$asserts): void
  {
    $exceptionCount = 0;

    foreach ($asserts as $assert) {
      try {
        $assert();
      } catch (Exception $e) {
        ++$exceptionCount;
      }
    }

    if (count($asserts) === $exceptionCount) {
      throw new InvalidArgumentException('Value passed no asserts');
    }
  }
}

Related: https://github.com/webmozart/assert/issues/129

Related: #129, #169 , #173
In #173, @BackEndTea gave a proposed implementation where the checks were (presumably) moved to a separate class that just returns booleans. Then the Assert class can throw exceptions based on those return values.
This also allows supporting not, and and or as the checks can be executed without throwing an Exception.
Also, this would grant @ribeiropaulor's wish (in #129) to have a class that just returns booleans.
This should be possible without breaking BC.


Move some custom rules from the extension to the shared config

I think someone suggested this before but I can't find it. Maybe it was just me?
I don’t think any of these rules is extension-specific, so it can be shared with other repos
https://github.com/pixiebrix/pixiebrix-extension/blob/main/eslint-local-rules/
    "local-rules/noNullRtkQueryArgs": "error",
    "local-rules/noInvalidDataTestId": "error",
    "local-rules/noExpressionLiterals": "error",
    "local-rules/notBothLabelAndLockableProps": "error",
    "local-rules/preferNullish": "warn",
    "local-rules/preferNullishable": "warn",

Only persistBackgroundData and noCrossBoundaryImports are really specific to the extension I think.
cc @grahamlangford  @fungairino
Related

https://github.com/pixiebrix/eslint-config-pixiebrix/issues/186

I'm curious why we have our own version of https://github.com/testing-library/eslint-plugin-testing-library/blob/main/docs/rules/consistent-data-testid.md

cc @BLoe for https://github.com/pixiebrix/pixiebrix-extension/pull/5466
Probably because we hadn't added the Testing Library ESLint plugin yet

Yeah we either didn't know a rule existed already or we just had not added that plugin yet 🤷♂


chore: remove lodash usage

Motivation
This is fix for the issue "Remove lodash usage #6489"
Description
Replace the lodash.pick for original pick function
Closes  #6489
Steps to test or reproduce
yarn build
yarn test:unit

-->

Looks like you need to run lint:fix, see output of GitHub checks.

Sure, did it and pushed. Please review it if anytime you have.

Looks like you need to run lint:fix, see output of GitHub checks.

@HiroyukiNaito please run this command

Please run yarn check-types too, one of the checks is failing.

@lodestar/beacon-node: $ tsc
@lodestar/beacon-node: test/unit/eth1/utils/eth1Data.test.ts:109:77 - error TS2345: Argument of type 'string[]' is not assignable to parameter of type '("depositRoot" | "depositCount" | keyof Eth1Block)[]'.
@lodestar/beacon-node:   Type 'string' is not assignable to type '"depositRoot" | "depositCount" | keyof Eth1Block'.
@lodestar/beacon-node: 109         const eth1DatasPartial = eth1Datas.map((eth1Data) => pick(eth1Data, Object.keys(expectedEth1Data[0])));
@lodestar/beacon-node:                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@lodestar/beacon-node: Found 1 error in test/unit/eth1/utils/eth1Data.test.ts:109

Please run yarn check-types too, one of the checks is failing.

According to the Error. Changed  string[] assignable in args.

Thanks @HiroyukiNaito for the effort!

Thanks for the dedicated support! I return the favor in the another issue.

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


Update PopoutForIncomingPstnCalls and PopoutAppPathForIncomingPstnCalls descriptions

Updating the descriptions for the PopoutForIncomingPstnCalls and PopoutAppPathForIncomingPstnCalls parameters.

Learn Build status updates of commit c46877b:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

skype/skype-ps/skype/Set-CsTeamsCallingPolicy.md
:white_check_mark:Succeeded
View (skype-ps)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Learn Build status updates of commit 2a44615:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

skype/skype-ps/skype/New-CsTeamsCallingPolicy.md
:white_check_mark:Succeeded
View (skype-ps)

skype/skype-ps/skype/Set-CsTeamsCallingPolicy.md
:white_check_mark:Succeeded
View (skype-ps)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

@microsoft-github-policy-service agree [company="Microsoft"]

@microsoft-github-policy-service agree company="Microsoft"

I see the PR is still draft, is it ready for review? @noramicrosoft @yogkumgit

I see the PR is still draft, is it ready for review? @noramicrosoft @yogkumgit

Not yet. I'll publish when it's ready.

@JohanFreelancer9

@yogkumgit, I'll edit the PR when it is ready for review.

@get-itips @JohanFreelancer9 it's ready for review now, but not ready to merge

Learn Build status updates of commit 6780560:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

skype/skype-ps/skype/New-CsTeamsCallingPolicy.md
:white_check_mark:Succeeded
View (skype-ps)

skype/skype-ps/skype/Set-CsTeamsCallingPolicy.md
:white_check_mark:Succeeded
View (skype-ps)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Copy review - @noramicrosoft, kindly commit the few minor suggested changes. Many thanks.

Thanks for the comments. Updated the PR.

Learn Build status updates of commit a7b3c55:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

skype/skype-ps/skype/New-CsTeamsCallingPolicy.md
:white_check_mark:Succeeded
View (skype-ps)

skype/skype-ps/skype/Set-CsTeamsCallingPolicy.md
:white_check_mark:Succeeded
View (skype-ps)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

@tiburd Please merge this PR. Thanks


Implement Debug, PartialEq, Eq and Clone for StringBuffer

Hi, thanks for the PR! The clone implementation looks good, the other two need to account for a few more complex cases, see the comments inline.

The Debug representation now looks like StringBuffer["foo", "bar", "quux"], displaying the String of each node separately.

Awesome, thanks for the changes!


./scripts/build-subctl failed since it runs git outside repo directory

This issue is related to bug: https://github.com/submariner-io/submariner/issues/576
SCRIPTS_DIR=./scripts ./scripts/build-subctl
[submariner-operator]$ source ./scripts/lib/version
[submariner-operator]$ git status --porcelain --untracked-files=no
[submariner-operator]$ export COMMIT=a357c14
[submariner-operator]$ git rev-parse --short HEAD
[submariner-operator]$ export GIT_TAG=
[submariner-operator]$ git tag -l --contains HEAD
[submariner-operator]$ head -n 1
[submariner-operator]$ export VERSION=dev
[submariner-operator]$ cd
[jenkins]$ go env GOOS
[jenkins]$ go env GOARCH
Building subctl version dev for linux/amd64
[jenkins]$ GIT_REF=
[jenkins]$ git describe --tags
fatal: Not a git repository (or any of the parent directories): .git

You need to set DAPPER_SOURCE.

Can we change:
https://github.com/submariner-io/submariner-operator/blob/9f39a35c95a6227162c7a3aaa4250e5f2aaf975a/Dockerfile.dapper#L6
So instead of:
DAPPER_SOURCE=/go/src/github.com/submariner-io/submariner-operator
It will be:
DAPPER_SOURCE=$(git rev-parse --show-toplevel)

Why do you want to change it?

I could resolve current issue by running before the build, inside the submariner-operator path:
export DAPPER_SOURCE=$(git rev-parse --show-toplevel)
On a side note, I think you can change above line in Dockerfile.dapper, so it will have a general path for DAPPER_SOURCE, instead of hardcoded "/go/src/..."

I know why you’re suggesting git rev-parse ..., but I don’t understand why you want to change the definition in the container construction.

We don't support building outside of dapper, let's look for other solutions.


Resolves part of #84

Will continue Discord caches soon because of the many paths: Discord, Discord PTB, Discord Canary, Discord Development, etc.

Time to update README.MD!

Done :3

Eyyy pog! Thanks :3

Also in addition to that, a new release has been created!
https://twitter.com/fwartner/status/1417895040890798081
Thank you!

Big poggers! Looking forward to contributing more ^W^

(yes this is foreshadowing)

Contributions are always welcome!
I probably do a re-write of this soon.
Also, if you like this tool and it helps you throughout the day, consider sponsor my work :)

:)


Problems with installing Google Cloud SDK

When I was executing deploy.sh I encountered a problem with Google Cloud SDK installation. Below is the warning message:
.GoogleCloud/google-cloud-sdk/install.sh
Welcome to the Google Cloud CLI!
.GoogleCloud/google-cloud-sdk/install.sh: line 32: /c/Users/AppData/Local/Microsoft/WindowsApps/python3: Permission denied
.GoogleCloud/google-cloud-sdk/install.sh: line 32: /c/Users/AppData/Local/Microsoft/WindowsApps/python: Permission denied
.GoogleCloud/google-cloud-sdk/install.sh: line 200: /c/Users/AppData/Local/Microsoft/WindowsApps/python: Permission denied
Unable to install Google Cloud!

After that, the installation process abruptly ended.
Then I tried to install Google Cloud SDK using an installer, it worked perfectly. So I wonder what's the solution for this?

When I was executing deploy.sh I encountered a problem with Google Cloud SDK installation. Below is the warning message:
.GoogleCloud/google-cloud-sdk/install.sh
Welcome to the Google Cloud CLI!
.GoogleCloud/google-cloud-sdk/install.sh: line 32: /c/Users/AppData/Local/Microsoft/WindowsApps/python3: Permission denied
.GoogleCloud/google-cloud-sdk/install.sh: line 32: /c/Users/AppData/Local/Microsoft/WindowsApps/python: Permission denied
.GoogleCloud/google-cloud-sdk/install.sh: line 200: /c/Users/AppData/Local/Microsoft/WindowsApps/python: Permission denied
Unable to install Google Cloud!

After that, the installation process abruptly ended.
Then I tried to install Google Cloud SDK using an installer, it worked perfectly. So I wonder what's the solution for this?

Hi @rameliaz, I'm sorry to see that you've run into problems! It appears that your current installation of Python3 cannot be accessed during installation (i.e., it can't run /c/Users/AppData/Local/Microsoft/WindowsApps/python3). This can be caused if your user account doesn't have permission to run python3, or it could be caused by other security managers on your computer.
The Google Cloud SDK installer may include its own installation of Python to avoid these types of issues. Ironically, this is also the reason that we install our own installation of Google Cloud SDK.
I can see a couple of options that may help you to run the deployment script:

Change the permissions of the program /c/Users/AppData/Local/Microsoft/WindowsApps/python3 to allow you to run it. This is quite specific to your own computer, so I'm afraid I can't give too much help with this. However, you may be able to find some help on Google (e.g., https://stackoverflow.com/questions/56974927/permission-denied-trying-to-run-python-on-windows-10). Hopefully, that will solve the issue.

I will add a command-line option for deploy.sh to skip the installation of Google Cloud SDK, and to use your local installation instead. This can cause other issues, so I won't make it the default, but it may work in your case. However, I'm not sure when I'll get around to this.

If anyone in the future is curious about reproducing this bug, you can point the CLOUDSDK_PYTHON environment variable to a missing installation to get a similar error.
> CLOUDSDK_PYTHON=/missing-python3 ./deploy.sh

.GoogleCloud/google-cloud-sdk/install.sh
Welcome to the Google Cloud CLI!
.GoogleCloud/google-cloud-sdk/install.sh: line 200: /missing-python3: No such file or directory
Unable to install Google Cloud!

Hi Padraig,
Thanks so much for looking into this!
I'm trying to reinstall python and ran npm config set python c:/users/pathto/Python 3.11 just in case. I double-checked to make sure that my workable version of python was on the path. But then I got another error, and it seems that it fails to rebuild node-gyp.

<EMAIL_ADDRESS>preinstall D:\MisinformationGame\node_modules\node
node installArchSpecificPackage

<EMAIL_ADDRESS>added 1 package in 7.909s
found 0 vulnerabilities

<EMAIL_ADDRESS>postinstall D:\MisinformationGame\node_modules\protobufjs
node scripts/postinstall

<EMAIL_ADDRESS>postinstall D:\MisinformationGame\node_modules@grpc\grpc-js\node_modules\protobufjs
node scripts/postinstall

<EMAIL_ADDRESS>install D:\MisinformationGame\node_modules\metrohash
node-gyp rebuild

D:\MisinformationGame\node_modules\metrohash>if not defined npm_config_node_gyp (node "C:\Users\AppData\Roaming\npm\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin\....\node_modules\node-gyp\bin\node-gyp.js" rebuild )  else (node "C:\Users\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" rebuild )
gyp ERR! UNCAUGHT EXCEPTION
gyp ERR! stack TypeError: Cannot assign to read only property 'cflags' of object '#'
gyp ERR! stack     at createConfigFile (C:\Users\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\configure.js:118:21)
gyp ERR! stack     at process.processTicksAndRejections (node:internal/process/task_queues:77:11)
gyp ERR! System Windows_NT 10.0.19045
gyp ERR! command "D:\MisinformationGame\node_modules\node\bin\node.exe" "C:\Users\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "rebuild"
gyp ERR! cwd D:\MisinformationGame\node_modules\metrohash
gyp ERR! node -v v19.4.0
gyp ERR! node-gyp -v v5.1.0
gyp ERR! This is a bug in node-gyp.
gyp ERR! Try to update node-gyp and file an Issue if it does not help:
gyp ERR!     https://github.com/nodejs/node-gyp/issues
npm ERR! code ELIFECYCLE
npm ERR! errno 7
npm ERR<EMAIL_ADDRESS>install: node-gyp rebuild
npm ERR! Exit status 7
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR!      C:\Users\AppData\Roaming\npm-cache_logs\2023-02-21T21_18_31_275Z-debug.log
Installing dependencies failed!

the log is here.
Is this somewhat related to my previous problem (or no)?

Hi Padraig,
Thanks so much for looking into this!
I'm trying to reinstall python and ran npm config set python c:/users/pathto/Python 3.11 just in case. I double-checked to make sure that my workable version of python was on the path. But then I got another error (below), and it seems that it fails to rebuild node-gyp.
the log is here.
Is this somewhat related to my previous problem (or no)?

<EMAIL_ADDRESS>preinstall D:\MisinformationGame\node_modules\node
node installArchSpecificPackage

<EMAIL_ADDRESS>added 1 package in 7.909s
found 0 vulnerabilities

<EMAIL_ADDRESS>postinstall D:\MisinformationGame\node_modules\protobufjs
node scripts/postinstall

<EMAIL_ADDRESS>postinstall D:\MisinformationGame\node_modules@grpc\grpc-js\node_modules\protobufjs
node scripts/postinstall

<EMAIL_ADDRESS>install D:\MisinformationGame\node_modules\metrohash
node-gyp rebuild

D:\MisinformationGame\node_modules\metrohash>if not defined npm_config_node_gyp (node "C:\Users\AppData\Roaming\npm\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin....\node_modules\node-gyp\bin\node-gyp.js" rebuild )  else (node "C:\Users\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" rebuild )
gyp ERR! UNCAUGHT EXCEPTION
gyp ERR! stack TypeError: Cannot assign to read only property 'cflags' of object '#'
gyp ERR! stack     at createConfigFile (C:\Users\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\configure.js:118:21)
gyp ERR! stack     at process.processTicksAndRejections (node:internal/process/task_queues:77:11)
gyp ERR! System Windows_NT 10.0.19045
gyp ERR! command "D:\MisinformationGame\node_modules\node\bin\node.exe" "C:\Users\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "rebuild"
gyp ERR! cwd D:\MisinformationGame\node_modules\metrohash
gyp ERR! node -v v19.4.0
gyp ERR! node-gyp -v v5.1.0
gyp ERR! This is a bug in node-gyp.
gyp ERR! Try to update node-gyp and file an Issue if it does not help:
gyp ERR!     https://github.com/nodejs/node-gyp/issues
npm ERR! code ELIFECYCLE
npm ERR! errno 7
npm ERR<EMAIL_ADDRESS>install: node-gyp rebuild
npm ERR! Exit status 7
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR!      C:\Users\AppData\Roaming\npm-cache_logs\2023-02-21T21_18_31_275Z-debug.log
Installing dependencies failed!

Hi @rameliaz,
It looks like you are having issues with the installation of dependencies. I'm not sure why this would fail, sorry. I don't have any experience with node-gyp.
However, I have recently updated the deployment script to skip the installation of the Google Cloud SDK if you already have it installed. Hopefully, this should fix your initial issue.
This works by first checking if the gcloud and gsutil commands are available in your command-line. If they are, then it will use those instead of trying to install the Google Cloud SDK itself.
I hope this helps! Let me know if you run into any more issues.

Hi @rameliaz,
I have also now removed some dependencies that could have been causing some issues with the installation. I hope this helps.
Thanks,
~ Paddy

I am closing this issue due to inactivity


Enable Component Governance Dependency Analyzer

Component Governance is an internal DevOps feature which scans your code to find all dependencies, and issues reports if dependencies have legal or security issues.  It should be enabled for all packages in all supported languages.  Some of the service SDK teams (e.g. IoT) are already using Component Governance as part of their builds.
Getting Started
https://aka.ms/cgdemovideo
https://aka.ms/cgdocs
https://aka.ms/cgapidocs
Work Items

[x] Enable CG in all repos
[ ] Ensure team is alerted when CG fails. Failing the build would be best, but may be impossible if CG performs some tasks asynchronously.  Next best would be to pass the build but send email when CG fails.
[ ] Understand what types of issues CG does and doesn't detect
[ ] Review existing CG reports for accuract and remaining work

Mike is going to create a few more issues around additional tasks for CG.

As a follow-up we need to do the following:

Understand what CG does and doesn't do
Review existing CG reports for accuracy and remaining work
Ensure we receive an alert when CG fails

Ensure team is alerted when CG fails. Failing the build would be best, but may be impossible if CG performs some tasks asynchronously.  Next best would be to pass the build but send email when CG fails.

There isn't any way currently to fail the build based on CG reports as the detectors are done asynchronously by another service and a lot of time some additional information is needed to evaluate issues. Instead I've setup a weekly alert email that will send email to myself (they don't support email alias but feature request has been sent) and I will monitor the issues.

Understand what types of issues CG does and doesn't detect

There are a number of different detectors but there are primarily 2. One that detects known security vulnerabilities in dependency components, it uses a service to check names ans versions of dependencies and will flag any dependencies with known issues. The other checks for legal issues around licenses to ensure you are adhering to the licences of the components you are depending on.

Review existing CG reports for accuract and remaining work

All the existing components have been reviewed for all repos and any additional licensing information questions have been provided. Everything is currently clean with a handful alerts for the Java repo that I'll be filing separate issues to address.


Process queue at specified time

It would be great if we can process tasks at a certain time, so the queue won't execute right away but on a specified timestamp. A similar solution would be the fire-task-queue but it is using an outdated version of firebase. This would be useful to schedule tasks that we don't want to execute immediately like refreshing a signed asset url before it expires. I sent you an email @drtriumph, thanks for this amazing repo!

Dup of #35. See also #79 and #89. Thanks for adding your vote!


Update to version 1.0.1

Hi boopt2,
Thanks for submitting this pull request!
Please add a comment with a DCO1.1 Signed-off-by statement in order to allow us to process your pull request.
dco-bot


Resurrect asyncio.timeout() context manager

In https://mail.python.org/pipermail/async-sig/2016-June/000033.html Ben Darnell asked for asyncio.timeout() removing.
I understand the problem (hopefully).
But the timeout context manager is very important.
It's really user friendly.
Also it produces very small overhead.
In opposite calling wait_for(f(), timeout=1) is expensive thanks to new task creation.
@1st1 can confirm it.
He had significant performance degradation when worked on https://github.com/MagicStack/asyncpg by using naive wait_for calls for adding timeouts.
From my understanding the main @bdarnell objection was using with asyncio.timeout(...) but async with asyncio.timeout(...) solves his problem.
If it's the only objection I can rewrite the code to use async context manager, if the change make code more portable.
It's easy task.
At very early version of aiohttp.Timeout() we used async with but figured out than just with was enough for our purposes.
@bdarnell, does switching to async context manager solve compatibility problem with Tornado?

Switching to async with doesn't solve the problem on its own; you need to use the asynchronous capabilities in a to-be-determined protocol to communicate with the coroutine runner (instead of assuming that it can find an asyncio.Task in a thread-specific global). There are two options that I would consider acceptable, although I don't really like either of them:

Keep the thread-specific global, but remove the assumptions about asyncio.Task: Add methods {push,peek,pop}_coroutine_runner to the asyncio module and define the methods that a coroutine runner must implement (in this case, set_timeout). tornado.gen.Runner could then implement set_timeout and push/pop itself onto the stack whenever it runs.

Define a new type of objects that may be yielded in coroutines (in addition to Futures), use async with asyncio.timeout, and use these objects to communicate directly with the current coroutine runner. Untested:

class timeout(object):
    def __init__(self, timeout):
        self.timeout = timeout

    def __aenter__(self):
        yield SetTimeout(self.timeout)

    def __aexit__(self, *args):
        yield ClearTimeout()
        return False

Either way, the problem is one of defining a protocol that all coroutine runners will have to implement, so it probably needs a PEP. (Or, as I said in the linked message, we could abandon the idea of supporting multiple coroutine runners in the ecosystem and make asyncio.Task the one true coroutine runner. However, it would need some enhancements before I would consider that a good outcome)

I thinks first option ({push,peek,pop}_coroutine_runner) is better than allowing to yield non-futures from async methods.
But anyway I would to stress that async PEP mention Task class many times (but doesn't specify a Task interface as the pep does it for Future and other classes).
De-facto every coroutine in asyncio world is executed inside a task, so Task.current_task() always work correctly. Only callbacks like protocol methods and delayed calls have no task context.
About multiple coroutine runners idea -- I have no personal opinion.
I don't know how Tornado and Twisted supports async def coroutines to make decision about the need for multiple runners.

The asyncio PEP defines two separate things: support for interoperability between asynchronous frameworks (mainly defined in terms of the event loop interface and Futures), and a specific asynchronous framework (using transports, protocols, etc). Tasks are part of the latter framework; the PEP specifically says that "For interoperability... the scheduler defines a Task class that behaves like a Future". That is, it is the Future-like parts of the Task interface that matter for other frameworks.
Prior to the introduction of asyncio.timeout, it was possible to interoperate with asyncio without knowing anything about Tasks. This is an important property since the Task interface is unspecified.

De-facto every coroutine in asyncio world is executed inside a task

That depends on how you define the "asyncio world". Tornado interoperates with asyncio so that coroutines that use asyncio functionality can be run under tornado.gen.coroutine instead of asyncio.Task (so it's possible to use asyncpg from a Tornado app).

I've found this implementation on pypi : https://github.com/aio-libs/async-timeout/blob/master/async_timeout/init.py
If I understand this thread correctly, this is a valid implementation but based on an assumption : that it can find an asyncio.Task in a thread-specific global ?

Yes, that async_timeout package requires that it can find an asyncio.Task in a thread-specific global (I think it's the same as what was briefly in the standard library). It works in a pure-asyncio world but is incompatible with Tornado/asyncio integration (I'm trying to make this better in Tornado 5.0)


feat: support multiple chains in a single process

Description
High-level overview of changes in this PR:

Change config format to support multiple chains. All config settings except for the Port are moved at the chain level.
Create a separate object graph for each chain.
Register per-chain handlers into the ServeMux at /<chain_name>.
Add an X-Upstream-ID header. This is useful so that clients know which upstream a given request went to. In particular, I'm using it to verify the end-to-end test is behaving as expected.
Enable logging in tests. I was hitting some panics that we have logging for, but zap uses a no-op logger by default. I changed it to a WARN logger.

Type of change

[ ] 🐛 Bug fix (non-breaking change which fixes an issue)
[x] 😎 New feature (non-breaking change which adds functionality)
[ ] ⁉ Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] ⚒ Refactor (no functional changes)
[ ] 📖 Documentation (updating or adding docs)

How Has This Been Tested?
Added end-to-end test with two chains configured and verified that requests go to the correct object graph - both by checking the new X-Upstream-ID header, and by manually checking the logs.

Appreciate splitting the changes up in multiple PRs! Hope it wasn't too burdensome 😓


Fixes #1389

Fixes #1389

#1389

Checking in on this PR before upcoming CL release.
No description, no action for a month and referenced ticket is already closed.
Can this PR be merged or closed?

The change in this PR is not relevant to the CL release.

@dosumis, can this be merged and closed?


exocyst localization  GO:0051601

This  term appears to be used occasionally to describe
vesicle tethering involved in exocytosis (i.e exocyst subunits)
See for example S.c  EXO70
http://www.yeastgenome.org/locus/YJL085W/overview#go
pombe  sec3
http://preview.pombase.org/gene/SPAC17G8.12
but
vesicle tethering involved in exocytosis
is not related to  exocyst localization  GO:0051601
(I wonder if  exocyst localization is even required?)

9 EXP annotations
http://www.ebi.ac.uk/QuickGO-Old/GTerm?id=GO:0051601#term=annotation
6 SGD
2 dictybase
2 Flybase
1 PomBase
All pombe and  SGD are exocyts complex, tethering would be better?
The fly and dicty look like they might be "regulators of exocytosis" more generally

@ValWood
Looking at some of the references that have been used for the 'exocyst localization' annotations, I am wondering if some of the annotations were made with the idea of capturing the effects that loss of specific subunits of the exocyst has on polarized localization of the complex.  At least in one case, Sec6p, it looked like the complex still assembled but polarized localization didn't occur.
I don't know how well understood the processes of exocyst assembly and localization are and whether it's possible to tease out what subunits might actually have an active role in localization vs whether loss of specific subunits just result in complex destabilization and subsequent loss of proper localization.
We could ask curators to review their annotations with this in mind.  What do you think?

"The tethering of the secretory vesicles prior to docking and fusion with the plasma membrane is mediated by the exocyst, a phylogenetically conserved and stable octameric protein complex (4,5). The two exocyst members Sec3 and Exo70 interact with phosphatidylinositol (4,5)-bisphosphate at the plasma membrane and assemble the rest of the exocyst complex, which is trafficked to the cell surface on vesicles in an actin-dependent manner (6-10)."
from intro of PMID:28765280
A schematic (googled, not from the paper)

So, since the  sec3/Exo70 are a necessary part of the octomeric complex, the exocyst does not exist until after the tethering step.... exocyst localization therefore seems to be a different way of interpreting the "tethering" step. I don't think I would have called this localization, because there is no  mechanism (attachment) step of the extant complex. It is created in the correct place by the "tethering" step.
GO:0090522 - vesicle tethering involved in exocytosis
this might be better  if worded "exoxyst-mediated vesicle tethering", and the def could be tweaked to mention exocyst (it's a very generic vesicle tethering definition)..... This term is also very under-annotated.
and if the localization step is required  this could then be placed under "vesicle localization" and "exocyst localization"

@ValWood
How would you like to proceed with this one?  This sounds like an annotation review is needed.  Should we create a ticket there and link to this one?

10 EXP annotation
Action obsolete (with children)  and recommend  "exocyst tethering" or other suitable term

I think tethering is part of localization. We don't have an "exocyst tethering (to plasma membrane)" term, which may be added as a narrow synonym for GO:0051601 exocyst localization.
Exocysts are involved in processes other than exocytosis, PMID:22420621.
And, there may be other ways to tether vesicles, PMID:29668350.


Move tests outside of package

This avoids installing tests to the users site-packages directory upon
install from pip. For end users, these files are unnecessary on their
production systems and only result in additional code installed.
The tests will continue remain in the project at the top-level. They can
still be run with one of:
$ tox
$ python3 setup.py test
$ python3 -m unittest

Tests are still distributed with the sdist through the user of
MANIFEST.in to allow distro packagers to run the tests.
As the package is no longer nested, can replace find_package() in
setup.py.

Yes, this is an improvement. Many thanks!