Add a way to bypass locking level check before patreon flow

Problem
Existing locking and unlock flow logic was built around posts. This doesnt allow locking any non-post content in websites. Ie, you cant lock a content shown in header, a content that comes from a meta value attached to a non locked post, a non post (or custom post) page, category listing pages or search listing pages, or forum category pages and so on.
Solution
This PR adds args to the functions that create the interface, an additional flow slug to enable non-post unlock requests, and a routing logic to check, process and send the user to patreon flow, and receive him/her back.
A developer or site owner can turn on this feature by toggling a global var in a plugin or theme's functions php, which enables this feature. This toggle helps non-technical site users from using this feature and causing more bots/crawlers to find dynamic urls and follow non-post unlock requests to Patreon API. If there is demand for it in future from many non technical users, we may introduce this toggle as an option, for now its fit to have it as something that needs to be toggled by a developer.
Now that interface generating functions can be used without being tied to a locked post id by passing various arguments to generate an interface anywhere, any site owner can lock any content anywhere. This allows locking of content inside header, footer, widgets, or, even inside post content through embedding of code. Additionally this will bypass issues like plugin not being able to lock content when a theme shows content outside the the_content filter (normal post/page main content element), or webcomic or visual plugins which show visual content outside the_content, like header, or a custom meta box and the line.
Additionally this feature allows interface generating function to be used in custom listings or interfaces by passing post ids and requesting direct unlock.
Verification
User Acceptance Testing is already done and confirmed to work at pat.codebard.com . Visuals are below.
View of a generated custom interface locking custom content inside header, in a page which has locked content itself. The new cacheable link format generated by the same functions for this interface can be seen at the bottom. It includes final redirect so devs/site owners can redirect users anywhere they want at the end.

At the end of the unlock flow, ending up with the same url that was started from. Because the user pledges $7, s/he is able to unlock both the content in header (which was set at $7), and the post content (which was set at $5). The new feature allows these content to be locked independently.

An error message is displayed if a site owner does not turn on this feature by toggling a global in a file, but still wants to use it.

Does this need tests
UAC was already done, and confirmed to work with normal post locking. There is no unit test written for this feature at this time.

I'd love to have Simon take a look at this flow to give it a product pass

If a site has not activated this feature but a user attempts to use it after the site owner inserts the needed function somewhere, that user should see that error message. So it shouldnt happen in sites of users who are not technical enough. Only technical users will know and will be able turn on this feature. And those who come to the forum with theme/plugin integration issues.

Carrying over some comments from Oz in response to some of Simons questions for reference:
- Why would we lock header content?
Any content in any location actually, not only header. I should have made it clearer in the PR sorry. But indeed, header actually does have a special mention due to some practices in WP ecosystem:
There are and or plugins which display a particular piece of content, or even the actual post content in the header, or sections appended to header, like in hero sections. Some themes give the option to do so even if they dont outright do it. The page in the dev site wasnt a good example. Now i slapped a hero section to one page below, it should demonstrate better:
http://pat.codebard.com/poetic-post-with-hero-section/
In this (sloppy) implementation of a hero section a metabox instead of the actual page's content contains the main content. This content may come from another post too.
But the thing is that such implementations bypass WordPress' the_content filter, and that prevents the plugin from locking that content.
This had been a recurring theme in the support requests we received in the forum.
One of the major examples is Alex Woolfson's (https://www.patreon.com/alexwoolfson) webcomic.
http://webcomics.amwcomics.com/wordpress/typ2/legendary-ch3-page-1/
As can be seen in their staging site, their webcomic plugin displays the comic in the header. And post content is used for a description/pitch of the comic. But they were not able to lock the header-contained content however they tried. So now there is a weird black background in the header where the comic actually is, and they put the interface somewhere at the end of post content.
This will cover all such cases.
But what's more important is that through usage of this workaround, anything anywhere can be locked independent of posts. This allows custom implementations which seem to be abundant, like what Star Talk Radio is doing:
https://archimedes.startalkradio.net/show/extended-classic-cosmic-queries-galactic-gumbo/
In this case, there is a custom player embedded in an include outside the content. Moreover, our interface needs to be inside a tab inside the interface which selects the embedded players. (All-Access Audio and All-Access Video tabs) So, with the existing locking mechanism it cannot be locked.
But with this workaround, it can be locked without any issues.
As a sidenote, Star Talk Radio (Neil deGrasse Tyson) is a creator which we very much want to get on board Patreon and the plugin. And this staging site currently uses an earlier version of the code that is in the PR, to enable our player. Ie that PR is actually the fruit of the work done to integrate their site.
To summarize; Its not only header, its any content or any element, anywhere.
- Where/how does the error message show up?
The error message shows up in the small message box the plugin had since its first incarnation. It should be in a screenshot in the PR. For this use case, it redirects to wp-login.php in case the request doesnt start from a single page/post. Normally we show the messages at wherever the request was started from.
- Why is there redundant messaging for locked content?
This error message is specific only to this use case. Thus it shouldnt be redundant. It will only appear when a creator attempts to use this feature without specifically turning it on in file, ending up with a non-unlocked post without any reason, and then generating support requests in zendesk or forum.
- What's the scope tolerance for improving our UX for the display of locked content generally for this plugin?
We are pretty, pretty free in implementing whatever we want. So anything you see fit to include in design of the interface can be integrated. Our limitations only come from constraints at the creators' sites, and compatibility concerns. Aside from that, its free.
To give an example of how we can be affected by the situation at creators' sites; The interface Scott designed is pretty neat and it compresses down to lower than 300px gracefully. But, some themes kept overriding the width/height of the button, leading to gigantic interfaces when the width was set to 100% by the theme, or height was set to 100% likewise. So i stressed it with !important with fixed width/height, hence its not responsive now. 240px for the button should cover almost all mobile devices, but still we can make the button responsive by trying other routes to fit in smaller spaces if necessary.
The interface parts are generated through server-side functions too, and we can conditionally show, hide its elements, modify them or add new ones based on any condition. So we have a pretty large tolerance as long as we make sure of compatibility.

I'll look into the changes tomorrow.
It should have been "There are themes and plugins" instead of "There
are and or plugins" in my comments. My typo, sorry.
On 8/2/18, Spencer Handley<EMAIL_ADDRESS>wrote:

Carrying over some comments from Oz in response to some of Simons questions
for reference:
- Why would we lock header content?
Any content in any location actually, not only header. I should have made it
clearer in the PR sorry. But indeed, header actually does have a special
mention due to some practices in WP ecosystem:
There are and or plugins which display a particular piece of content, or
even the actual post content in the header, or sections appended to header,
like in hero sections. Some themes give the option to do so even if they
dont outright do it. The page in the dev site wasnt a good example. Now i
slapped a hero section to one page below, it should demonstrate better:
http://pat.codebard.com/poetic-post-with-hero-section/
In this (sloppy) implementation of a hero section a metabox instead of the
actual page's content contains the main content. This content may come from
another post too.
But the thing is that such implementations bypass WordPress' the_content
filter, and that prevents the plugin from locking that content.
This had been a recurring theme in the support requests we received in the
forum.
One of the major examples is Alex Woolfson's
(https://www.patreon.com/alexwoolfson) webcomic.
http://webcomics.amwcomics.com/wordpress/typ2/legendary-ch3-page-1/
As can be seen in their staging site, their webcomic plugin displays the
comic in the header. And post content is used for a description/pitch of the
comic. But they were not able to lock the header-contained content however
they tried. So now there is a weird black background in the header where the
comic actually is, and they put the interface somewhere at the end of post
content.
This will cover all such cases.
But what's more important is that through usage of this workaround, anything
anywhere can be locked independent of posts. This allows custom
implementations which seem to be abundant, like what Star Talk Radio is
doing:
https://archimedes.startalkradio.net/show/extended-classic-cosmic-queries-galactic-gumbo/
In this case, there is a custom player embedded in an include outside the
content. Moreover, our interface needs to be inside a tab inside the
interface which selects the embedded players. (All-Access Audio and
All-Access Video tabs) So, with the existing locking mechanism it cannot be
locked.
But with this workaround, it can be locked without any issues.
As a sidenote, Star Talk Radio (Neil deGrasse Tyson) is a creator which we
very much want to get on board Patreon and the plugin. And this staging site
currently uses an earlier version of the code that is in the PR, to enable
our player. Ie that PR is actually the fruit of the work done to integrate
their site.
To summarize; Its not only header, its any content or any element,
anywhere.
- Where/how does the error message show up?
The error message shows up in the small message box the plugin had since its
first incarnation. It should be in a screenshot in the PR. For this use
case, it redirects to wp-login.php in case the request doesnt start from a
single page/post. Normally we show the messages at wherever the request was
started from.
- Why is there redundant messaging for locked content?
This error message is specific only to this use case. Thus it shouldnt be
redundant. It will only appear when a creator attempts to use this feature
without specifically turning it on in file, ending up with a non-unlocked
post without any reason, and then generating support requests in zendesk or
forum.
- What's the scope tolerance for improving our UX for the display of locked
content generally for this plugin?
We are pretty, pretty free in implementing whatever we want. So anything you
see fit to include in design of the interface can be integrated. Our
limitations only come from constraints at the creators' sites, and
compatibility concerns. Aside from that, its free.
To give an example of how we can be affected by the situation at creators'
sites; The interface Scott designed is pretty neat and it compresses down to
lower than 300px gracefully. But, some themes kept overriding the
width/height of the button, leading to gigantic interfaces when the width
was set to 100% by the theme, or height was set to 100% likewise. So i
stressed it with !important with fixed width/height, hence its not
responsive now. 240px for the button should cover almost all mobile devices,
but still we can make the button responsive by trying other routes to fit in
smaller spaces if necessary.
The interface parts are generated through server-side functions too, and we
can conditionally show, hide its elements, modify them or add new ones based
on any condition. So we have a pretty large tolerance as long as we make
sure of compatibility.
--
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/Patreon/patreon-wordpress/pull/43#issuecomment-409741841


Secrets deletion proposal

Proposal and implementation for a DELETE secret operation. It could be desirable that if a secret is removed from Vault, it is removed also from the K8s cluster which is referencing it.
Some posible behaviours:

Delete in Vault => Delete on K8s and fail if the configmap is not updated
Delete in Vault => Delete section in Configmap and delete the secret in K8s
Delete in Vault => Just fail until the configmap is updated with the secret removed
Delete in Configmap => Just do nothing as we do

Anything else?

Closing as it's fixed by #30


Problem with HTML img tag in markdown page

If I insert <img alt="text" src="./example.png" /> the image available in the same directory as the page itself is not shown. Testing the situation and adding a trailing slash per hand results in showing the image correctely on the page.
It looks as trimming the trailing slashes causes a problem with using HTML img tags in markdown pages.
I commented this issue already on commit 718d443 where an issue #190 has been resolved.

We have also noticed this with our testing of some admin plugin stuff, and I think @Gertt said he was going to look at it today perhaps.

It doesn't really have anything to do with that change as far as I can tell, that just makes sure we find pages when people add a trailing slash.
The problem here is that Grav does not add trailing slashes to links. Which causes your browser to interpret the current folder when you're on this page http://grav.dev/blog as the site root instead of the blog folder. So the browser tries to request the images from the site root.
I do not know if it was a deliberate choice to work without trailing slashes, but imho fixing this would require Grav to change the way it generates links to pages by always including the trailing slash as well as adding some logic that will 301 redirect non-backslashed requests to backslashed reqests for SEO purposes.
Sounds like a big change that could possibly introduce other issues, so I'll wait for @rhukster 's ok on this.
PS: You can also use twig to fill in the src of your image tag with an absolute url to the image. That way you don't rely on the browser to figure stuff out.

The reason not to use trailing slashes was that the urls aren't meant to be directory paths, so why to bother even pretending that they are. Trailing slash has no meaning and as such it should be removed. What comes to ./ notation and files not being found, it is another issue and should be fixed.

In that case I see two solutions:

Grav will need to manually parse all HTML manually looking for links
All themes would need to implement the base tag.

Neither of these are ideal imho. Other suggestions?

I think i'm going to look at moving the convertUrl() method out of the markdown trait so it's usable from other places, including plugins.
My advice after that would be to choose one of 3 options:

Use Markdown instead of HTML when possible
Use Twig+HTML to add the base_url in the <img> tag if you are using HTML
Create a plugin that is triggered appropriately to convert HTML url's using the convertUrl() method (when moved to appropriate location)

I'll close this now.

FYI, regarding point 3), i've moved the convertUrl() method to the Uri object so writing a plugin would be doable now.


chore(deps): update github.com/cilium/dns digest to d3bcb30

This PR contains the following updates:

Package
Type
Update
Change

github.com/cilium/dns
replace
digest
5b94b11 -> d3bcb30

Configuration
📅 Schedule: Branch creation - "on monday" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

⚠ Artifact update problem
Renovate failed to update artifacts related to this branch. You probably do not want to merge this PR as-is.
♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

any of the package files in this branch needs updating, or
the branch becomes conflicted, or
you click the rebase/retry checkbox if found above, or
you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:
File name: go.sum
Command failed: go mod tidy
go: finding module for package github.com/cilium/dns
go: downloading github.com/cilium/dns v1.1.50
go: found github.com/cilium/dns in github.com/cilium/dns v1.1.50
go: github.com/cilium/tetragon/pkg/cilium imports
	github.com/cilium/cilium/pkg/monitor imports
	github.com/miekg/dns tested by
	github.com/miekg/dns.test imports
	github.com/cilium/dns<EMAIL_ADDRESS>parsing go.mod:
	module declares its path as: github.com/miekg/dns
	        but was required as: github.com/cilium/dns

File name: undefined
Command failed: make codegen
/usr/local/bin/docker: line 4: .: filename argument required
.: usage: . filename [arguments]
/usr/local/bin/docker: line 4: .: filename argument required
.: usage: . filename [arguments]
#1 [internal] load build definition from Dockerfile.codegen
#1 transferring dockerfile: 40B done
#1 DONE 0.0s

#2 [internal] load .dockerignore
#2 transferring context: 35B done
#2 DONE 0.0s

#3 [internal] load metadata for quay.io/cilium/cilium-builder:832f86bb0f7c7129c1536d5620174deeec645117@sha256:6dbac9f9eba3e20f8edad4676689aa8c11b172035fe5e25b533552f42dea4e9a
#3 DONE 0.2s

#4 [1/2] FROM quay.io/cilium/cilium-builder:832f86bb0f7c7129c1536d5620174deeec645117@sha256:6dbac9f9eba3e20f8edad4676689aa8c11b172035fe5e25b533552f42dea4e9a
#4 DONE 0.0s

#5 [internal] load build context
#5 transferring context: 133.59MB 2.4s done
#5 DONE 2.6s

#4 [1/2] FROM quay.io/cilium/cilium-builder:832f86bb0f7c7129c1536d5620174deeec645117@sha256:6dbac9f9eba3e20f8edad4676689aa8c11b172035fe5e25b533552f42dea4e9a
#4 CACHED

#6 [2/2] RUN --mount=type=bind,readwrite,target=/go/src/github.com/cilium/tetragon cd /go/src/github.com/cilium/tetragon && go install ./cmd/protoc-gen-go-tetragon
#6 0.294 go: inconsistent vendoring in /go/src/github.com/cilium/tetragon:
#6 0.294 	github.com/miekg/dns: is replaced by<EMAIL_ADDRESS>in go.mod, but marked as replaced by<EMAIL_ADDRESS>in vendor/modules.txt
#6 0.294<EMAIL_ADDRESS>is marked as replaced by<EMAIL_ADDRESS>in vendor/modules.txt, but replaced by<EMAIL_ADDRESS>in go.mod
#6 0.294 	github.com/miekg/dns: is marked as replaced by<EMAIL_ADDRESS>in vendor/modules.txt, but replaced by<EMAIL_ADDRESS>in go.mod
#6 0.294
#6 0.294 	To ignore the vendor directory, use -mod=readonly or -mod=mod.
#6 0.294 	To sync the vendor directory, run:
#6 0.294 		go mod vendor
#6 ERROR: executor failed running [/bin/sh -c cd /go/src/github.com/cilium/tetragon && go install ./cmd/protoc-gen-go-tetragon]: exit code: 1
------
 > [2/2] RUN --mount=type=bind,readwrite,target=/go/src/github.com/cilium/tetragon cd /go/src/github.com/cilium/tetragon && go install ./cmd/protoc-gen-go-tetragon:
#6 0.294 go: inconsistent vendoring in /go/src/github.com/cilium/tetragon:
#6 0.294 	github.com/miekg/dns: is replaced by<EMAIL_ADDRESS>in go.mod, but marked as replaced by<EMAIL_ADDRESS>in vendor/modules.txt
#6 0.294<EMAIL_ADDRESS>is marked as replaced by<EMAIL_ADDRESS>in vendor/modules.txt, but replaced by<EMAIL_ADDRESS>in go.mod
#6 0.294 	github.com/miekg/dns: is marked as replaced by<EMAIL_ADDRESS>in vendor/modules.txt, but replaced by<EMAIL_ADDRESS>in go.mod
#6 0.294
#6 0.294 	To ignore the vendor directory, use -mod=readonly or -mod=mod.
#6 0.294 	To sync the vendor directory, run:
#6 0.294 		go mod vendor
------
ERROR: failed to solve: executor failed running [/bin/sh -c cd /go/src/github.com/cilium/tetragon && go install ./cmd/protoc-gen-go-tetragon]: exit code: 1
make: *** [Makefile:254: image-codegen] Error 1

File name: undefined
Command failed: make generate
/usr/local/bin/docker: line 4: .: filename argument required
.: usage: . filename [arguments]
/usr/local/bin/docker: line 4: .: filename argument required
.: usage: . filename [arguments]
go: finding module for package github.com/cilium/dns
go: found github.com/cilium/dns in github.com/cilium/dns v1.1.50
go: github.com/cilium/tetragon/pkg/cilium imports
	github.com/cilium/cilium/pkg/monitor imports
	github.com/miekg/dns tested by
	github.com/miekg/dns.test imports
	github.com/cilium/dns<EMAIL_ADDRESS>parsing go.mod:
	module declares its path as: github.com/miekg/dns
	        but was required as: github.com/cilium/dns
make[1]: *** [Makefile:169: vendor] Error 1
make: *** [Makefile:297: generate] Error 2

Edited/Blocked Notification
Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.
You can manually request rebase by checking the rebase/retry box above.
⚠ Warning: custom changes will be lost.

 You will not get PRs for the github.com/cilium/dns d3bcb30 update again.
If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.


how to use at jupyter notebook

Hi,
When I try to use at Jupyter Notebook , I got below error.
Could you give me some hint?
from pysqldf import SQLDF, load_meat, load_births
meat = load_meat()
births = load_births()
sqldf = SQLDF(globals())
sqldf.execute('select * from meat limit 10').head()

OperationalError                          Traceback (most recent call last)
 in ()
1 sqldf = SQLDF(globals())
----> 2 sqldf.execute('select * from meat limit 10').head()
C:\Miniconda2\envs\py27\lib\site-packages\pysqldf\sqldf.pyc in execute(self, query)
74             result = None
75         finally:
---> 76             self._del_table(tables)
77         return result
78
C:\Miniconda2\envs\py27\lib\site-packages\pysqldf\sqldf.pyc in _del_table(self, tablenames)
115     def _del_table(self, tablenames):
116         for tablename in tablenames:
--> 117             self.conn.execute("drop table " + tablename)
118         self.conn.commit()
119
OperationalError: no such table: meat

Is this a problem about specific environment of Jupyter Notebook?
Could you try same code in any other environment.

I am also facing the same error both in Jupyter and in Python console. Kindly reply back as soon as possible. Need help on this urgently. Thanks

Is Sqlite installed?

No it was not but I just installed it (following this link: http://www.sqlitetutorial.net/download-install-sqlite/). But I am still getting the same error

What version of pandas using?

0.23.4

hi, I have the same issue,
OperationalError: no such table: meat
pandas 0.24.2
sqlite3 2.6.0

Same issue on IPython Notebook and Python console
pandas 0.24.2
pysqldf 1.2.3


ACE1x

Pulling the registry and adding ACE1pack, and afterwards ACE1x I only get 0.0.2, but I need 0.0.4. Also for ACE1 we'll need v0.11 which is not currently part of this environment.
@cortner Are things stable enough to ship ACE1pack with these newer versions of ACE1x and ACE1? I think we really need them, such that new (HAL) users get them.

@wcwitt and @gelzinyte  -- how do you feel about merging v011 and tagging it as a new minor version? My hope was to bring the new heuristics into ACE1pack first, but maybe we can just postpone that to another minor version update?

What you propose WRT ACE1pack is definitely needed, but it requires us to coordinate a bit more than is realistic this week. I think it's fine if we have two minor version updates in relatively short succession

Then I'll try to take care of this today

Are you suggesting to call ACE1x.ace_basis or are you suggesting you will update the defaults to construct the same basis directly in ACE1pack?  If the latter, then I agree with that. And I also agree to keep it simple.
I would just make sure the "stakeholders" e.g. Cas, Noam confirm that they have been happy with those new basis defaults.

Haven't thought through all the details - and open to suggestions - but right now ACE1pack is split (roughly between the json/params/fit_ace way of doing things and the acemodel/ACE1x way). If we agree the latter is the future, I want to start updating the json interface, unit tests, documentation, etc to reflect that. And I'd prefer not to preserve backwards compatibility if possible.
Tagging @bernstei, since I didn't before.

Personally I strongly prefer the acemodel interface. I think it is much more transparent for a user. It should be not problem to keep the basis interface available to powerusers. They can just create an acemodel and extract the basis from it.

@tjjarvinen  I think you should also have a view on this?

Can the acemodel interface filter out unreasonable forces?  Can it apply various weights, e.g. per atom?

If it is clear how things are done in the future, then go for it. Now is the time to drop old ways out, before publishing anything.

I dont' think this is an issue anymore. Can be reopeneing if I'm wrong.


Section skip list for RedPen validation

I would like to support skip list of the sections, to avoid the section which are checked enough and confirmed by the writing team.

This issue fixed with #650


Plugin should populate tag editor's TagList folder when new component definitions are introduced

The user currently has to type in the name of the new component. Maybe definition tables should also be able to specify icon, visualization style, etc.?

The tag editor looks like it governs its own TagList folder - it doesn't respect one that Anatta creates. :( We should see if we can make a PR to the tag editor to make the integration better here.

Will probably be addressed by #74.


MF refactoring: edits to DOS's changes

Hello,
@thomaspd and I worked on @dosumis 's branch of the MF refactoring and made further edits.
@dosumis would you please have a look, and it that works for you we'll merge this and keep on editing from there.
see
https://github.com/geneontology/go-ontology/commit/1f9572f9c4f7b8d61c57a8a38ca9848d315964c1
Thanks, Pascale

Hiya,
Do you have a link to a pull request with all changes in?
Cheers,
David

OK Got it.  I thought you'd branched again, but it seems to be on the same pull request, with commits starting from:
https://github.com/geneontology/go-ontology/pull/14226/commits/d50230177afae4da14aee3f2e34f650fe35efe08
I'll comment properly later (I was surprised to see 'role' back - as I thought we'd agreed not to use that.  MF terms are mini-processes, which are rather different from roles.)
CC @cmungall

I agree the term 'role' will cause confusion

"system component function" will be meaningless to biologist.  Do these MFs really need a grouping term other than "molecular function"?

Hi,
Perhaps we can do without these new top level classes ? Here's what the top level of MF now looks like. The term with blue background probably could be moved somewhere better. If we can remove some of these highlighted terms, then the top level is small enough that more grouping classes seem unnecessary.
Ideas:

Create 'transcription factor activity' as parent of 'nucleic acid binding transcription factor activity' (perhaps as a grouping, 'do not annotate' term'?) and 'transcription factor activity, protein binding'
Translation regulator activity will probably go, see https://github.com/geneontology/go-ontology/issues/13536
I wonder if 'nutrient reservoir activity' really is an activity (it's certainly passive!). There are only about 20 annotations. Seems like these storage proteins are the target of a storage (and later utilization) process; but do they actively mediate this ?
@tberardini would there be a better way to describe this ?
'toxin activity' also deserves to be reviewed

Thoughts @thomaspd @ValWood @cmungall @dosumis @ukemi @vanaukenk
???
Thanks, Pascale

Re: 'toxin activity', please see #12766 which documents this term's recent revival and history.

Re: 'nutrient reservoir activity'  I see this as very similar to 'structural molecule activity' in terms of it being a passive function.

I agree that we don't need terms above these, at least not for now.
Re 1 (transcription factor classes), we'd suggested a higher lever term called transcription regulator activity.'
Re 2 (translation factor) I don't think it needs to be obsoleted right away, if at all.
Re 3 and 4, I think these are OK for now. About nutrient reservoir, I can't think of a better way to describe egg proteins, or milk proteins.  About toxin activity, it's an accepted term for a protein that evolved as a secreted toxin.
Let's merge in David's changes now so we don't accrue too many conflicts before making additional changes.

I still think it is totally confusing for curators and users to need to select terms in 2 MF branches  to represent TFs fully,
a  "transcription factor"  branch
e.g.
GO:000370 transcription factor activity, sequence-specific DNA binding
and a "DNA binding"  branch
eg
GO:0000977 - RNA polymerase II regulatory region sequence-specific DNA binding
I  don't see how the "regulation of transcription branch" differs from a process, and the term names are only subtly different.
Even after a few years of using I still need to go back to look at the ontology every time I use one. I  do a consistency  check every few months to make sure our TFs are still annotated in both branches and there is usually  a little drift due to the confusion even for experienced curators.
When you look at the high level TF terms do you know which is the "DNA binding" branch and which is the "transcription factor activity" branch?
It would be much simpler if we could select a single MF (DNA or protein bindingTF term)
and
part_of  BP "transcription/regulation of transcription....."
This is one of the key terms to describe the MF of a DNA binding TF (DNA binding to a specific promoter region)
http://www.ebi.ac.uk/QuickGO/term/GO:0000978
and  it is not related to any of the "transcription factor" high level MFs (which are only describing processes).

Changes:

new classes:
-- GO:0104005 hijacked molecular function
-- GO:0140104 molecular carrier activity (under discussion in #14267)
-- New children of 'catalytic activity' (and moved terms under as appropriate)
--- GO:0140096 catalytic activity, acting on a protein
--- GO:0140097 catalytic activity, acting on DNA
--- GO:0140098 catalytic activity, acting on RNA

Just adding a note for posterity, since this term links to this ticket:
id: GO:0140096
name: catalytic activity, acting on a protein
namespace: molecular_function
def: "Catalytic activity that acts to modify a protein." [GOC:molecular_function_refactoring, GOC:pdt]
is_a: GO:0003824 ! catalytic activity

We don't have a logical definition for this, so this means terms will have to be manually classified here.
It also means we can't auto-infer annotations, if curators want to annotate to an enzyme mechanism that is acting on a protein, then either we need to instantiate protein-specific subclasses for all appropriate activities and train curators to use these subclasses OR train curators to co-annotate. We'd want to do this retrospectively to ensure reasonable annotation completeness.

Opening a whole new can of worms here three years too late, does it make sense to have top-level terms "acting on DNA / RNA / protein"? It might be better to have "acting on polypeptide / polynucleotide" with the latter having ribo- and deoxyribo- children. That would fit a lot better with the enzymology data focused on the active sites and molecular mechanisms of enzymes and indifferent to the size of the substrate molecule or whether the substrate in genome-encoded or not. This isn't an argument that enzymes don't act on whole proteins, only that such enzymes functionally are specialized children of ones that go for a peptide bond or an amino acid side chain, indifferent to how big the molecule containing it is. @ukemi @hdrabkin

Randomly, here are some terms whixh are "acting on a protein" but do not have the parentage in a file that I found on my desktop.
holocytochrome-c synthase activity (GO:0004408)
Catalysis of the reaction: holocytochrome c = apocytochrome c + heme.
deoxyhypusine monooxygenase activity (GO:0019135)
Catalysis of the reaction: protein N6-(4-aminobutyl)-L-lysine + donor-H2 + O2 = protein N6-((R)-4-amino-2-hydroxybutyl)-L-lysine + acceptor + H2O.
peptide-lysine-N-acetyltransferase activity (GO:0061733)
Catalysis of the reaction: acetyl-CoA + lysine in peptide = CoA + N-acetyl-lysine-peptide.
lipoyl(octanoyl) transferase activity (GO:0033819)
Catalysis of the reaction: octanoyl-[acyl-carrier protein] + protein = protein N6-(octanoyl)lysine + acyl-carrier protein.
dolichyl-phosphate-mannose-protein mannosyltransferase activity (GO:0004169)
Catalysis of the reaction: dolichyl phosphate D-mannose + protein = dolichyl phosphate + O-D-mannosylprotein.
ubiquitin-like modifier activating enzyme activity (GO:0008641)
Catalysis of the activation of small proteins, such as ubiquitin or ubiquitin-like proteins, through the formation of an ATP-dependent high-energy thiolester bond.

Reopening because the logical def  would fix this?

I reopened this but it can probablly close?
If it stays open it is only for a logical defs.


Create <IP_ADDRESS> Array Standard(Problem1)

Explained the relative complement of two sorted array through example and code. 📜📜
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context.
Fixes #699

Created a documentation on Array Standard Probleem. 📝

[x] Documentation (Content Creation in the form of codes or tutorials)

Domain of Contribution 📊

[x] DS#A

Checklist ✅

[x] I follow Contributing Guidelines & Code of conduct of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I'm GWOC'21 contributor

@mansisingh2803 Great work !!
Congrats on getting your PR merged.

Thnku @goelesha


Move favourite items

What feature or improvement do you think would benefit Files?
Add the posibility to move the order of the favourite items
Requirements

This proposal will accomplish a better persoalization

Files Version
2.3.12
Windows Version
Windows 10
Comments
No response

You can right click favorites to reorder the items.

Well, not very intuitive

Drag and drop is blocked by this issue https://github.com/microsoft/microsoft-ui-xaml/issues/3290


Import catalog challenge should not appear when importing a custom JAR.

Oh I didn’t know there was a difference in how the two formats are handled. I wonder if they shouldn’t be two different icons then, given that loading an adm catalog replaces everything whether loading a jar adds elements to the current catalog.

Yep I'd vote to have a separate import icon. The adm import is to reset everything to a saved state, while importing jar is just an addition to the existing library store.

I suppose they could be two different icons.  In general your "importing"  something tool-wide.  In our case it can be either an ADM catalog file or a custom JAR file.  In the  case of the custom jar nothing visible happens on the import.  They have to "enable" the class package in either the source or target panel.
There's also a smaller issue in that you get the challenge when you have no loaded ADM file at all.
There is a big semantic difference as Tomo points out - I guess I'm neutral.  If you guys think a new icon is warranted then I'd say go for it.  Will re-assign to Riccardo as he's better at picking icons than me... :)

This is now fixed.


fix: wrong if statement to install policy report CRDs.

Description
The install_crds.sh script used by updatecli to install new version of     the CRDs is missing a logic clause in the if statement to check if the  policy report CRDs should be installed. This commit fixed that by adding the missing "or" logic.

LGTM. Is it fine to have the e2e tests broken?

I think so. The updated script is not run in the e2e tests. Therefore, it's a different issue.


updated state_fidelity convention

Change the definition of state_fidelity to be consistent with IBM quantum group research papers. #278
Description
The new definition is that:

Pure states: F(|a>, |b>) = |<a|b>|^2.
Mixed states: F(rho1, rho2) = Tr[sqrt(sqrt(rho1).rho2.sqrt(rho1))] ^ 2

Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] My code follows the code style of this project.
[x] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

Probably failing because the Quantum Experience is down. This is related to #234

@jaygambetta @ajavadia It looks like the test failing here isn't to do with the quantum experience, It's that the local_qasm_simulator is sometimes timing out when running the 2-qubit process tomography test. This test involves compiling and executing 144 circuits for 2000 shots each and the default seems to timeout after 60 second.

@jaygambetta @ajavadia It looks like the test failing here isn't to do with the quantum experience, It's that the local_qasm_simulator is sometimes timing out when running the 2-qubit process tomography test. This test involves compiling and executing 144 circuits for 2000 shots each and the default seems to timeout after 60 second.

Yes, it seems to be the case - can you take the chance to increase the timeout for the test during this PR?


UniRep pretrained weights

Hi,
I would need some clarification as to what the babbler-1900 checkpoint is exactly.
Is this the actual UniRep model from the original paper, or just the UniRep architecture trained on Pfam? Internally, the LM task points to Pfam as for every other model.
Reason being I want to evaluate the perplexity of UniRep on some sequences.

This is the actual UniRep model from the original paper, not the UniRep architecture trained on Pfam. We don't have pytorch weights for the UniRep architecture trained on Pfam (although we do have tensorflow weights for that here). If you're interested, it should be possible to manually load the weights from the tensorflow save file into the pytorch model (or to use the tensorflow model directly).


Gulp plugin available

FYI The gulp plugin for tsreflect is available at https://github.com/rogierschouten/gulp-tsreflect and on NPM.

That's great. Thanks.


Demo Files ALab files don't load in nuke

Not sure if I'm doing this wrong but the files in the ALab won't load in nuke. They are greyed out or say it's not compatible.

Maybe the files aren't the full size?

Clsoing this for now since this is not a real examplefor nuke but for blender and houdini or apps which can handle such large amount of data (this is a huge USD with hi res textures, animations, fx and all - you would need to load a specific setup of the usd to actualy make it work or load just the proxies and cameras.)
This pack is around 100gb in size, so yea i dont think this is doable like so.
Try open another USD file :)
closing as not relevant to the USD files itself.


Account for microhomology and CIPOS

Many germline events have microhomology at the breakpoint. When matching an event, this should be taken into account as there are many way to report the event in VCF. Figure 9 of the VCF specifications outlines this.
Some callers report CIPOS (and in the case of GRIDSS, the non-standard HOMPOS field) which is what the caller itself thinks the extent of the homology, but others do not.
Properly matching equivalent variants can be very messy. For example, in the HG002 truth set, a sine duplication within a sine repeat (ref=SINE-SINE-SINE , var=SINE-SINE-SINE-SINE) is reported as an INS event after the 3rd SINE, but the short read callers report it as a DUP of the first sine. These calls both result in the same sequence, but they're 600bp away from each other! Events such as these are a bit extreme and difficult to handle but a basic check of homology, and/or respecting the CIPOS reported by the variant caller will result in more accurate benchmarking results.
The delta between the caller event length and the actual event length for TPs is a good indicator of how well a SV gets the length correct. You should find that, in contrast to overall average lengths, length deltra predicted by BreakDancer do not match the actual event lengths very closely - something that has the potent to change someone's choice of caller.

Thanks for bringing this up!
Varuni let's discuss this in more details a
and address in the next release of data analysis
Serghei


Chore remove unused check on count function

Proposed changes
remove unused check on count function
Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

run buildall

run buildall

run buildall

run buildall

run buildall


Added handling of access_logs for ELB

Please update specs together :bow:
:point_right: spec/lib/terraforming/resource/elb_spec.rb

@ranrub  Is there any update?

Hi Daisuke
I'm sorry but I don't have available time to write these tests. If you want
to write them I don't mind of course.
Ran
On Sat, May 28, 2016 at 8:11 PM, Daisuke Fujita<EMAIL_ADDRESS>wrote:

@ranrub https://github.com/ranrub Is there any update?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/dtan4/terraforming/pull/163#issuecomment-222335544,
or mute the thread
https://github.com/notifications/unsubscribe/AAQ-ocWamHd0_LEWAAj8VsBAlhRP4Da2ks5qGNnCgaJpZM4HPe4d
.

ELB access_logs support was implemented at https://github.com/dtan4/terraforming/pull/223.
Thank you for sending Pull Request, and please use the latest Terraforming.


RDK-38096 - Add Unit Tests for TraceControl (merge to 23Q1)

(cherry picked from commit e4c41f38adaa4f47cd83876241206fae3261e705)
RDK-38096 - Code cleanup
(cherry picked from commit 549bc9d2b6ecffb5ceae09ac7599e431f1dd76f0)
RDK-38096 - Code clean up, modified regex, removed trace buffer check
(cherry picked from commit d870231c544c6d8383cc8fedcad9647c8e415e26)
RDK-38096 - Added specific checks
(cherry picked from commit e316e68281926b8aa0e6166144a8150c08be460e)
RDK-38096 - Added mock for syslog
(cherry picked from commit 4358573e11335aae08dacd2d151a3757a2770cc0)
RDK-38096 - Added checks for specific module present
(cherry picked from commit 7535af9e220f5e6b1340a6e7090a4791af0b6424)
RDK-38096 - added __real_syslog
(cherry picked from commit 2c45a20fd29d20051f8ffddec456761f99730c84)
RDK-38096  - Corrected syslog passthrough
(cherry picked from commit c484d3db7b4469c0abb744c00d77624847bb730c)

Pls check and fix unit tests failures.


is it possible to polyfill getDisplayMedia?

the short answer is no but I'd rather have it written up here instead of discusing it over and over again.
So @alvestrand asked whether it would be possible to polyfill getDisplayMedia.
For Mozilla (and @jan-ivar please correct me if I am wrong) the answer is a "no" since getDisplayMedia does not restrict the capture surfaces while the current mediaSource API requires the application to choose etiher 'screen' or 'window'. And we do not want to polyfill with an opinion.
For Chrome its a bit more complicated. Chrome currently requires an extension to be installed.
For getDisplayMedia to work there are two things that are needed to do:

check if the extension is installed and if not either install it on-demand (note that this requires certain keys in the html head) or throw an error
manage the communication with the background extension to obtain an id to feed into getUserMedia

Both are things that are currently done by applications. this extension sample shows a way to do this (support is determined by checking a sessionStorage flag).
Including this in adapter increases the codebase considerably and will not be something that is useful for anyone that uses a different pattern to communicate with the extension.

"no" seems like a good answer.
grasping at straws: would it be feasible to polyfill the function in Chrome by having a call-out in the adapter that returned the chosen ID? This would then have to be initialized by the page owner to something that calls his private extension-comms API - which means that the page-owner would have to write code that is only useful with adapter.js, something we generally want to avoid.
The only (small) advantage to the page-owner would be that when getDisplayMedia becomes available, his page would take advantage of it at once, with the only difference being that his call-out function is no longer called.
But "no" is a perfectly reasonable answer too.

yeah, that is what I considered... bring your own function that returns a promise. But that still comes with a cost of plugging in adapter whereas its just drop-in.

@huibk FYI since you made rather uneducated statements on stage again...

In Firefox we could shim getDisplayMedia to offer window sharing only, or full-screen sharing only, but not both.

I think we should reconsider shimming getDisplayMedia in adapter.js. In Firefox, adapter could open a web dialog to ask the user to pick between full-screen or window. That's the same amount of clicks as Chrome's current dialog, as I understand it.

i'd rather not do anything opinionated or involving UX here. This is a polyfill...

done in #841


Support Actor/Threads

As projects grow in complexity and size, the ability to perform operations concurrently becomes increasingly critical. Implementing multithreading support could offer substantial benefits.

Maybe in the future when we have pipelines this is more plausible. The main problem is knowing what data is being written to and when. And for that we need systems to be aware of each other - which they aren't right now.
i kind of feel like you would need a prepared query that declares what components are being used or else I am not really sure how we would even  begin to partition which components to a specific actor VM.
However with pipelines we can implement sync points between systems and also possibly discern what- and where data is changed. And for this we want a declarative API that helps coordinate this.
But beyond the technical hurdles, synchronization itself is really expensive that I am not sure if inter-system parallelism is worth it. AFAIK no benchmarks out there has actually shown that parallelizing ECS in Luau has any performance benefits. There are however examples of the opposite.

But beyond the technical hurdles, actor synchronization itself is really expensive that I am not sure if inter-system parallelism is worth it. AFAIK no benchmarks out there has actually shown that parallelizing ECS in Luau has any performance benefits. There are however examples of the opposite.

This is the key issue in my opinion. The cost of synchronization through actors (which we currently would have to do) outweighs the benefits of parallelization in any benchmarks, tests, or prototypes I've seen.
We can easily support concurrency through pipelines if there's a valid use-case for that, but at the moment I can only conceive of a negative (losing system order determinism). If you have a use-case for system concurrency that doesn't rely on parallelism (single-threaded concurrency) for which this downside might be worth dealing with, let us know.

Marking this as externally blocked on the Roblox actor model for now.


E MediaPlayer:saveOffsetBeforeTeardown - gst_element_query_position failed

im on raspberry pi 3 model b with  Raspbian Stretch latest version
i was on sdk ver 1.6 an it was good but when i upgraded i have error
E MediaPlayer:saveOffsetBeforeTeardown - gst_element_query_position failed

i solved it by #565 and reboot then all thing fine now 💃

Thanks for updating!


Video recorded with RecordRTC can't join/merge

Hi,
I am used RecordRTC to record video files. So I am using MKVToolNix software to join/merge the video files. The video merge completed 100%. However, when i open the output_video, it display only content of the video1. The content of other video can't display on output_video. I was tried with FFMPEG, it have same problem. I don't know why? and How to fix it?
Thank you so much,
Bien

Maybe you wanna try this instead?

https://github.com/muaz-khan/RecordRTC#record-multiple-videos

Otherwise please try this ffmpeg command:

https://github.com/muaz-khan/RecordRTC/wiki/Ffmpeg#merge-screen-and-camera-into-single-webm

Thank Muaz Khan,
I am tried ffmpeg command as you help.
ffmpeg -y -i video.webm -i screen.webm -filter_complex "[0:v]setpts=PTS-STARTPTS, pad=iw:ih[bg]; [1:v]scale=320:240,setpts=PTS-STARTPTS[fg]; [bg][fg]overlay=main_w-overlay_w-10:main_h-overlay_h-10" videoPlusScreenInSingleFile.webm
This ffmpeg command work but the videos can't concatenated.
I am using ffmpeg command
ffmpeg $(printf " -i %s " *.webm) -filter_complex "[0:v:0] [0:a:0] [1:v:0] [1:a:0]concat=n=$(ls | grep .webm | wc -l):v=1:a=1 [v] [a]" -map "[v]" -map "[a]" /var/www/html/record/uploads/output_video.webm
This command worked for me. However, the quality of the output_video not good.
How to change the ffmpeg command to improve the quality of the output_video?
Thank you so much!
Bien


Grib2 Split File with read ahead?

Calling scan_grib which reads the grib file with split_file seems to be causing lots of small read requests to GCS.
It seems like I should be able to control the read ahead behavior, or it should at most be a just an abstraction away with all the tools available from fsspec and gcsfs, but I am not sure how to implement it?
Here is what I am seeing on my GCP e2-standard-16 VM. I can peg the CPU calling scan_grib across a large number of files using dask with processes. I think this is not actually the maximum rate that we could run scan_grib, especially since I am reading the whole file, with out any filters, the network througput is just way too low. ~14k/s packets for ~20mb/s seems like way to many requests. I could naively read the whole message and wrap it in a bytesIO object, but I am almost certain there is something more elegant in fsspec.

Reading the whole file first seems to help a little but not as much as I had hoped.
+def _split_file(fsf, skip=0):
+    with io.BytesIO(initial_bytes=fsf.read()) as f:
+        if hasattr(f, "size"):
+            size = f.size

If it is not already picking some reasonable size blocks to read & cache - and here my ignorance of the amazing stuff that fsspec and gcsfs already do is showing - I think it would help.

Here is the first few minutes of the same dask-scan_grib process above, but with the bytes io object and read() at the top of the split method. It reads in bursts at the beginning as all the processes are in sync, but as they spread out the curve should smooth. Not sure if the overall mb/s rate will be any better, but that is probably a good proxy for how fast we are actually processing grib files since they are all about the same size.

Dropping this - I think fsspec/kerchunk are already smarter than I am (as usual).


Migrate docker publication GitLab jobs to public-images

What does this PR do?
Migrate the GitLab jobs to publish docker images to DataDog/public-images.
Motivation
public-images will centralise all the complexity of building, pushing and signing multi-arch images on several repositories.
Additional Notes
The child job will be in charge of deploying the docker image on Docker Hub, GCR and ECR unless IMG_REGISTRIES is set to dev, in which case the image will only be published on Docker Hub.
For dev images, we want to deploy them only on Docker Hub to reduce the cost.
For all release images, we want to deploy them on all our registries.
Describe how to test your changes
Try to publish docker images and check the content of docker hub and gcr.io.

Here is an example of pipeline created with RUN_ALL_BUILDS = true.
I manually launched the docker image deployment jobs.
We can check the published multi-arch images there:

https://hub.docker.com/repository/docker/datadog/agent-dev/tags?page=1&ordering=last_updated&name=lenaic-public-images

Test pipeline: https://gitlab.ddbuild.io/DataDog/datadog-agent/-/pipelines/4870298

@albertvaka Here are the images published by the test pipeline: https://hub.docker.com/repository/docker/datadog/agent-dev/tags?page=1&ordering=last_updated&name=nightly-8d751710

New test pipeline: https://gitlab.ddbuild.io/DataDog/datadog-agent/pipelines/4877760

New test pipeline: https://gitlab.ddbuild.io/DataDog/datadog-agent/pipelines/4888964

New test pipeline: https://gitlab.ddbuild.io/DataDog/datadog-agent/pipelines/4890071

New test pipeline: https://gitlab.ddbuild.io/DataDog/datadog-agent/pipelines/4891320

New test pipeline: https://gitlab.ddbuild.io/DataDog/datadog-agent/-/pipelines/4892496

Test pipeline (skipping kitchen tests): https://gitlab.ddbuild.io/DataDog/datadog-agent/pipelines/4906046


data model

define classes / properties
create the form
upload data model (w/ labels and comments) to the triplestore -- can this be automatic?
create data model page

query LOV APIs to get labels and comments
e.g. https://lov.linkeddata.es/dataset/lov/api/v2/term/search?q=https://schema.org/keywords&type=property
(NB some URIs may be wrong, e.g. https / http )


Display Invalid Instruction

Instead of just displaying the last valid instruction if the invalid instruction could be printed as well that would be very helpful. For example if you receive "error: 11979: Id is 0" you can't tell what Id is zero based on the output because the invalid instruction is not displayed.

I believe this should now be fixed. The error messages should be outputting the correct lines at this point, if they aren't please file new issues with examples.


No IPv6?

Am I missing something or blockname does not have ipv6 support?

It's pretty difficult to fit in the currently available 40-byte limit of OP_RETURN, but since that is moving to 80 bytes in the next release it will be a lot easier to define ipv6 support from the start.


Popup doesn't animate on first click

Current Behavior
So basically when i click popup for the first time, there's no animation.
But this behavior is unseen on the consequent clicks.
Expected Behavior
Popup should animate on first click.
Steps To Reproduce

Go to https://www.skeleton.dev/utilities/popups
Click Show Popups

Link to Reproduction / Stackblitz
No response
More Information
No response

@baseplate-admin I've seen a small delay for popups when a local dev server is started, including the popups in the top app bar on the Skeleton doc site. But this goes away after a few seconds. Likewise, the behavior doesn't continue after normal browsing. And it's never been present on the final build servers from our web host in production.
Can you confirm this is happening outside of those specific conditions?

Can you confirm this is happening outside of those specific conditions?

I have seen this behavior on my production website.

This is the behavior on first click. ( See how the popup suddenly pops in? )
screen-recorder-sat-jul-22-2023-06-57-39.webm
This behavior is absent on consequent clicks
screen-recorder-sat-jul-22-2023-06-57-56.webm
The second behavior looks normal to me

FYI, as we begin prepping for the new standalone popup package, we're consolidating all known issues for popups into this new thread:

https://github.com/skeletonlabs/skeleton/issues/1916

Your post will now be closed, but has been referenced in the post linked above. Please note that by doing this, your request is being folded into this larger effort. Please feel free to monitor the linked issue if you wish to track progress on this going forward.

Sounds good


N+1

Must views have N+1 issues, I recomend using Bullet to find the out.

Hey @Dandush03, thanks for reporting! I'm aware of that, since Mission Control was designed to work with multiple adapters that are totally different (Resque vs. Solid Queue right now), it's not as straightforward to address these. If you'd like to contribute a PR with some fixes, they'd be very welcome.

In the meantime, I have disabled my controller-level N+1 detector (prosopite) so it doesn't warn/error when I'm at mission control:
Example of how using controller_path on a hook condition:
# app/controllers/application_controller.rb
if Rails.env.development?
  Prosopite.rails_logger = true
  around_action :n_plus_one_detection, unless: -> { controller_path.starts_with?("mission_control") }

  def n_plus_one_detection
    Prosopite.scan
    yield
  ensure
    Prosopite.finish
  end
end


Allocations, checksums, and Readers/Writers

Preferably, codecs involving bytes (BB, AB) would use Readers/ Writers instead of allocating new byte buffers at every stage. This is how they were originally implemented ( https://github.com/clbarnes/zarr3-rs/commit/a2757db097008beddfa0d8c4da29750320010b40 ). However, with the introduction of the CRC32C codec (and conceptually other hashsums), decoders may need to read the whole read stream (to remove the hash). This is not too much of a problem - it can read the whole stream, then present a Boxed Reader which just wraps over the read bytes. However, encoders may need to know when the write stream is finished (to append the hash). We could:

abuse Drop to write the hash, but this can't be guaranteed, especially as it's fallible
abuse flush() by assuming it will only be called at the end of the write, but that's a big assumption
wrap the writers into something with a .finalize() method which is a no-op for most writers: this could require different wrappers for different codecs, and we'd still need to pass around something like Box<CustomWriter<Box<dyn Write>>>
do what every other implementation does, don't bother with lazy IO, and just allocate new byte buffers with every codec. Pass around Bytes objects; for decoding we might get lucky and be able to use slices of them.

4 is the simplest and brings us closer in line with other implementations. Allocation reduction is probably going to be dwarfed by IO and encode/decode overhead.

4 could be ameliorated by adding a (en|de)code_into which takes a pre-allocated buffer and returns a slice. Might need a rotating buffer implementation for this?

Implemented 3 in https://github.com/clbarnes/zarr3-rs/tree/6e49070c9d5102ada684dadf660a6e50227e068c

Also implemented 4 in https://github.com/clbarnes/zarr3-rs/tree/e9aaae84d895d54cf2a1b4556dcdf76637cbdf16 , not merged


Update xla to use mlir rather than backend-specific-translations

Description
Fixes https://github.com/sail-sg/envpool/issues/313
Motivation and Context
EnvPool XLA doesn't work with Jax 0.4.29+
Types of changes
What types of changes does your code introduce? Put an x in all the boxes that apply:

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds core functionality)
[ ] New environment (non-breaking change which adds 3rd-party environment)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Documentation (update in the documentation)
[ ] Example (update in the folder of example)

@Trinkle23897 The linting error is unrelated to the PR

Testing this throws errors however there appears to be limited documentation on what the suggested change should be

After implementing the suggested changes, I encountered an error when running the XLA example with JAX 0.4.34(latest). The error reads:
TypeError: CustomCallWithLayout(): incompatible function arguments. The following argument types are supported:
    1. CustomCallWithLayout(builder: jaxlib.xla_extension.XlaBuilder, call_target_name: bytes, operands: Span[jaxlib.xla_extension.XlaOp], shape_with_layout: jaxlib.xla_extension.Shape, operand_shapes_with_layout: Span[jaxlib.xla_extension.Shape], opaque: bytes = b'', has_side_effect: bool = False, schedule: jaxlib.xla_extension.ops.CustomCallSchedule = CustomCallSchedule.SCHEDULE_NONE, api_version: jaxlib.xla_extension.ops.CustomCallApiVersion = CustomCallApiVersion.API_VERSION_ORIGINAL) -> jaxlib.xla_extension.XlaOp

Invoked with types: jax._src.interpreters.mlir.LoweringRuleContext, bytes, kwargs = { operands: tuple, operand_shapes_with_layout: tuple, shape_with_layout: jaxlib.xla_extension.Shape, opaque: bytes, has_side_effect: bool }

I installed envpool using pip install envpool and manually applied the changes as instructed. It seems there may be an issue with how the CustomCallWithLayout is invoked in the current context with the latest JAX.
Would appreciate any guidance on resolving this.


Dashboard endpoints

The dashboard endpoints will cover extracting specific data from the Middleware APIs.

The endpoint has to present information about the cloud and the edges they're currently operating in the system.
The endpoint has to return the following properties:
Last Time the location updated
Name of the Edge/Cloud
Is it online
Is it busy
Number of containers it runs
status of a cloud/edge

The endpoint has to present information about the robots and the tasks that they're currently executing.
The endpoint has to return the following properties:

Robot name/id
Task name/id
Date and Time it started
Status of a task
The date and Time finished
status of a robot

Dashboard integration proposal document
Git branch for feature: Redis interface dashboard/157

Edited issue and added link to Dashboard proposal for feature tracking.

I will continue the extra endpoints as agreed.

Added Basic cascading grid for action sequence endpoint for dashboard.

Added missing endpoints, only needs QA testing

issue #93 and #94 still under progress


Add Gitpod to simplify contributor onloading

This PR adds a Gitpod setup to the repository this will allow contributors to contribute with the push of a button with the project already build, all from within a browser
Try It Out
https://gitpod.io/#https://github.com/JesterOrNot/dockerfilelint

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


2.7.0 breaks Astro visual editing support

The visual editor is broken in Astro with 2.7.0 and also 2.6.0:

Facing the similar kind of issue.

After doing some research i found some solution related lodash package, so in vite config i added this in astro.config file

This solved my issue my visual-editing-component (overlays) worked fine but in studio i faced different issue which is
when i updated any field inside presentation tool and do some changes, it worked fine but after some seconds in console i saw these warnings

Then in presentation tool, it shows this

@DavithkbY , Yeah, i have also tried multiple older version, but there are still some kind of errors, Not sure I think these issues are causing  with some dependents/dependencies and someone also look into this package also is this related to this package @sanity/astro or not.

I think this issue is likely related to @sanity/visual-editing. If you're able to bump that dependency to its latest version and let me know if things improve that would be much appreciated!

Hi @rdunk do you mean 2.7.1? With version 2.7.1 it's still broken:

My package.json:
  "overrides": {     "vite": {       "rollup": "npm:@rollup/wasm-node"     }   },   "dependencies": {     "@astro-community/astro-embed-youtube": "^0.5.6",     "@astrojs/check": "^0.9.4",     "@astrojs/netlify": "^5.5.4",     "@astrojs/react": "^3.6.2",     "@astrojs/rss": "^4.0.9",     "@astrojs/sitemap": "^3.2.1",     "@astrojs/tailwind": "^5.1.2",     "@inlang/paraglide-astro": "^0.2.2",     "@portabletext/react": "^3.1.0",     "@portabletext/to-html": "^2.0.13",     "@sanity/astro": "^3.1.6",     "@sanity/cli": "^3.64.1",     "@sanity/client": "^6.22.2",     "@sanity/image-url": "^1.1.0",     "@sanity/visual-editing": "^2.7.1",     "@types/node": "^22.7.5",     "@types/react": "^18.3.11",     "@types/react-dom": "^18.3.0",     "astro": "^4.16.13",     "astro-embed": "^0.9.0",     "astro-portabletext": "^0.10.1",     "build": "^0.1.4",     "dotenv": "^16.4.5",     "feed": "^4.2.2",     "fs-extra": "^11.2.0",     "groq": "^3.64.1",     "npm": "^10.9.0",     "react": "^18.3.1",     "react-dom": "^18.3.1",     "rss": "^1.2.2",     "run": "^1.5.0",     "sanity": "^3.64.1",     "shelljs": "^0.8.5",     "tailwindcss": "^3.4.13",     "tailwindcss-animated": "^1.1.2",     "typescript": "^5.6.3",     "uuid": "^10.0.0",     "xml2js": "^0.6.2"   },   "devDependencies": {     "@inlang/paraglide-js": "1.11.3",     "@sanity/export": "^3.41.0",     "@tailwindcss/typography": "^0.5.15",     "@types/fs-extra": "^11.0.4",     "@types/rss": "^0.0.32",     "@types/xml2js": "^0.4.14",     "prettier": "^3.3.3",     "prettier-plugin-astro": "^0.14.1",     "prettier-plugin-tailwindcss": "^0.6.8",     "tsx": "^4.19.1",     "vite": "^5.4.11"   },   "optionalDependencies": {     "@rollup/rollup-linux-x64-gnu": "4.9.5"   }

@rdunk I tried it again and it does seem fixed now with 2.7.1 amazing!

@DavithkbY Awesome! Glad to hear it and thanks for reporting.

@rdunk it randomly stopped working locally again. Nothing changes in the codebase literally 0 lines of code very weird.
It does work on the deployed live version but not local.
This error again:

en:4942 [astro-island] Error hydrating<EMAIL_ADDRESS>SyntaxError: The requested module '/node_modules/lodash/groupBy.js?v=ad36607e' does not provide an export named 'default'

Just possibly another clue turns up.

I updated the 2.7.1 version on a test project, my blog addition to the base sanity-astro
it seems to work fine in dev
I got it going on Vercel, after much faffing as I'd forgotten best ways to get a monorepo set up there
but in addition the the monorepo config, in the end I had to align versions of sanity between portions of it, and then got errors for mismatched versions on other packages. So I cut the test repo down just to packages/sanity-astro, and apps/blog, ran ncu -u on each folder, then remove all node_modules and pnpm-lock.yaml, then instal I also had to update to tasks in the turbo.json since I use that to get the monorepo to build at this point. After all this, then a git commit-push let Vercel build with it, which succeeded.

Now. I tried this out. App -- fine. Studio on /admin -- looked fine at first. But, it failed Live Edit actually, and after a while gave the prompt you've seen that it couldn't connect, which is studio to app.
In the console.log, this is logged, along eventually with the usual heartbeat no response.
But: there is something else: an Uncaught Error: path is required....and this having to do with ResolveEditInfo, which I seem to find inside the visual-editing package code.
This looks like a bit of a hot clue, and you can see it all on the screenshot I'm attaching. Hope it helps. Once again, this occurs on Vercel, but not on dev, and with the environmental config look like it is correct. The console indication is something missing, not mis-set....

@DavithkbY  I was facing this issue, so i looked into it
en:4942 [astro-island] Error hydrating<EMAIL_ADDRESS>SyntaxError: The requested module '/node_modules/lodash/groupBy.js?v=ad36607e' does not provide an export named 'default'
I found that in nodemoules at this path<EMAIL_ADDRESS>groupby is being used as ES module

but in lodash package node_modules\lodash\groupBy.js, it is using the CommonJS

So i found out that i can use the "lodash-es" for ES module  so i installed and then configured vite in astro config
  vite: {
    resolve: {
      alias: {
        lodash : 'lodash-es'
      }
    },
  },

but not sure, it is the right solution or not but @rdunk can tell more on this.

@maazuddindenovers  Maaz, I'm suspecting your lodash problem is something to do with your app, rather than this sanity-astro issue. I see no such errors, but put in your alias to lodash-es, which seems accepted (as long as I add it to pnpm), but makes no changes I can see to the no-visual-editing problem -- but was a good thought :)
I pushed further on what appears here, by creating a Netlify-compatible config, and deploying on Netlify.
This fails to visual edit also, just as we've been seeing, and has the same logging of 'uncaught Error: path is required'. The image is this time is from Chrome latest, instead of Firefox latest, but the result is the same, as you can see below.

the errors don't appear right away on shift-loading, but when you hover the mouse over the web page frame
this fits that they are coming from visual-editing's helper running in the page, as the stack traces suggest
I looked through source, where the error seems to arise, and 'path' appears to be about missing a 'baseUrl' in the internal naming. But the only configuration for baseUrl seems to be in multi-workspace studios, and it has never been needed before.
in case it might be something else, I even tried enriching the fetch-time config, but no help from that.

Ok. I have to leave it, hopefully with more clues. The Netlify version including trial steps today is here.

OK, I felt to hit this one more time late in evening -- and now can demo the bug locally rather than on deploy serverless, so it should be much easier to troubleshoot.
This is done by using the Astro Node adapter, which allows SSR locally after a normal build. And running that way shows the same error it appears precisely, as occurs deployed -- website pane can't connect, and the 'path is required' error shows in the console, with effectively the same stack trace, when you hover mouse over it, as before.
Here's the repo branch (and all of these have sample content in the apps/blog/content folder)
The requisite screenshot, back on  Firefox this time. Other variations on using local serverless clis have been tried, none of which allowed this local error demonstration. A certain amount of LLM discussing was useful, helping along, and it finally suggested trying this Node approach, which does the trick..

@narration-sd I think you have a different problem. The solution of @maazuddindenovers by adding lodash-es does solve my problem. And I have no more errors.

Okay nevermind. Applying @maazuddindenovers his fix only fixes the issue on my local version. On Netlify I have the same 'path' error as @narration-sd

@rdunk, I hope this is all clear enough by the end for you....

the problem solidly exists, preventing Visual Editing from working with sanity-astro in latest versions
@DavithkbY knows he's having it now as well
my last comment with screenshot shows it happening with a setup that can be built and run locally, because it uses the Node adapter -- repo with even a content package given there to make all for you to work with
we first have seen it on serverless deployments, Vercel, also Netscape, also proven further above.
Thanks your efforts! and now it's late here...

Ok, I have just verified that<EMAIL_ADDRESS>allowing Vercel and Netlify deployments to do Presentation operations again properly, as well as under the Node adapter on a local build.
You can find my projects as before under my fork https://github.com/narration-sd/sanity-astro, where there are branches named for each of the deployment types, and including sample content that works with each.
The path to getting all three to work was complicated by some apparent configuration errors in the @sanity/sanity-astro repo.

in the package.json for packages/sanity-astro, there's a spurious extra definition for visual-editing, under peer dependencies. This should not be present at all, since the package under packages is where @sanity/visual-editing is actually used. Further, this peer dependency is not updated by ncu -u, which I use to assure contemporary packages are set when updating, as to the new 2.8.0.
then, there is what also looks like a bogus configuration in the root .npmrc file: auto-install-peers = true. This causes the errored peer dependency just mentioned to be used as well apparently as the direct dependency, and so there become two versions of @sanity/visual-editing present -- the old and the new. The incorrect older version gets used in building the in-monorepo package, and so whatever is in the old visual-editing continues to be used -- the broken 2.7.1 version in the present case.

I left these faults in my examples so they can be seen, but manually updated the peer dependency in order to create a working project on each branch, testing them on actual deploys, where they work normally now.
I'm not issuing @sanity/sanity-astro because the Sanity dev team would probably rather choose corrections themselves, as they appear to be a direct part of the problems worked on here.
@rdunk, let me know if you want something else, thanks.

@rdunk Rupert, et al, I've produced an issue over the @sanity/astro problem and fix for success in applying 2.8.0.


New Version 0.7.11 does not work for Julia language

Dear Julien,
Rainbow end is very useful for helping to make Julia language more visible. Unfortunately the new version does not work for Julia language but the old version works remarkably well.
Cheers,
Joseph

So sorry a 0.7.12 is coming , publication is in progress


🐞 [BUG] -Text in cards are not visible

Issue Verification

[X] I have verified that this is a new bug report.
[X] I'm interested in working on this issue
[X] I'm part of GSSOC organization

Describe the bug

Expected behavior
No response
Steps to reproduce
No response
Additional Context
@jfmartinz I would like to work on this issue

Duplicate


[DNM] Try to break the test

Intentionally make some mistakes to see if our test is effective

/run-integration-copr-test copr-test=pr/12


Split debug and release app name and icons

Code Coverage

Total Project Coverage
24.48%
:white_check_mark:


Test updates and bump to android-23

This should hopefully get the tests running successfully in the travis-ci builds.  I also purged the old, unmaintained TLS Presense tests.  I think we can do all that those tests did in JUnit style tests using services like https://badssl.com
@commonsguy

By eyeball, this seems fine. Note that raising the targetSdkVersion to 23 means that you have to deal with runtime permissions, though I am not sure that there are any dangerous permissions floating about.

Hmm, I think using netcipher only affects INTERNET permissions.  Would compiling with android-23 mean changes if this lib only needs INTERNET perms?  I thought that was automatic anyway.

Would compiling with android-23 mean changes if this lib only needs INTERNET perms?

Nope, that's fine. *_EXTERNAL_STORAGE would be a problem, for example.

I thought that was automatic anyway.

Insofar as the user isn't prompted about it from the Play Store, yes.  I thought you were using ch.boye, which will exist regardless of compileSdkVersion. Perhaps my memory is fuzzy.


AuthenticationMiddleware and dependency injection

Why does AuthenticationMiddleware take it's dependencies on the constructor and not on Invoke? Very hard to build handler with dependencies. Why would TearDownAsync be internal!?!? This prevents me from writing my own AuthentionMiddleware and using proper DI pattern for Middleware.

Yeah we are aware of the issues with the current design, we working on addressing these in the next version, you should be able implement a handler with normal dependencies on the new stack, see https://github.com/aspnet/Security/pull/1113

Closing because this is a key part of the Great Auth Redesign of 2017.

Is there a way to inject IOptions that is parsing the application settings into an AuthenticationHandler (instanciated by an AuthenticationMiddleware) in asp.net core 1.x? Or at least a workaround?

You can use the configuration extensions in options for that https://github.com/aspnet/Options/blob/dev/src/Microsoft.Extensions.Options.ConfigurationExtensions/OptionsConfigurationServiceCollectionExtensions.cs#L22 that's been around since 1.x


Add ensure_quantity helper function

A frequent source of source of grief suffered by users and developers is switching between Quantity objects offered by OpenMM vs. this project vs. other sources. The to_openmm and from_openmm functions help, but they could be made more accessible - they shift the burden of checking the type onto the user or developer. This sounds trivial, but it adds unnecessary copy+paste cruft into packages and can disrupt the flow of a scientist doing actual work in a notebook. This PR adds a brute-force function ensure_quantity that takes in a quantity from either unit package and a string identifying which type it's expected to be and returns the appropriate type, either short-circuiting or doing the appropriate conversion. This might help make some type-checkers happy, and I think it could reduce the chance that a wrong unit is passed around somewhere.
Does this sound useful @Yoshanuikabundi @j-wags? I'm neutral on the naming of the function or how type_to_ensure should be input; a string seems low-friction (i.e. compared to a boolean, since we're not sure if a third option might be allowed in the future).

Here's the script I used to test, which was yoinked into a couple of unit tests:
from openff.units.openmm import ensure_quantity
from openff.units import unit
from openmm import unit as openmm_unit

x = unit.Quantity(4.0, unit.angstrom)
y = openmm_unit.Quantity(4.0, openmm_unit.angstrom)

assert ensure_quantity(x, "openmm") == ensure_quantity(y, "openmm")
assert ensure_quantity(x, "openff") == ensure_quantity(y, "openff")

assert id(ensure_quantity(x, "openff")) == id(x)
assert id(ensure_quantity(y, "openmm")) == id(y)

This leaves some functionality on the table, but I hope it can help developers dealing streamline some of their input validation:
def do_cool_thing(quantity_of_unknown_type, ...):
    quantity: openmm_unit.Quantity = ensure_quantity(quantity_of_unknown_type, "openmm")

    # Code from here on can trust that `quantity` is an OpenMM-style `Quantity` object!

which is leaner than what I currently have to do, which is more or less
def do_cool_thing(quantity_of_unknown_type, ...):
    if isinstance(quantity_of_unknown_type, openmm_unit.Quantity):
        quantity = quantity_of_unknown_type
    elif isinstance(quantity_of_unknown_type, unit.Quantity):
        from openff.units.openmm import to_openmm
        quantity = to_openmm(quantity_of_unknown_type)

The same goes for a scientist experimenting in a notebook, i.e.
molecule = Molecule.from_file("molecule.sdf")

charges = ensure_quantity(
    magically_perfect_electrostatics_method(molecule, ...),
    "openff",
)

molecule.partial_charges = charges

Other stuff that could be done
I'd like to find a way to slide this into a decorator, i.e.
@ensure_openmm("arg1")
def do_cool_thing(
    arg1: Union[Quantity, "openmm_unit.Quantity"],
    ...
):
    # No input validation needed!

but I don't know how to do that at the moment and it feels like a dangerous rabbit hole to slip into.
Something un-handled at the moment is other Pint-based registries, like what QCArchive uses. That can probably be added here if it's sought, but I haven't received any feedback that it is.

I like this, it would be really helpful with https://github.com/openmm/openmmforcefields/pull/237

a string seems low-friction

I think that is best!

Codecov Report

Merging #44 (a09ed37) into main (ba3d5b9) will decrease coverage by 54.65%.
The diff coverage is 0.00%.

Additional details and impacted files

Thanks @j-wags and @mikemhenry! I'll cut a release that includes this soon.


Implement a thread cache for GC allocations.

A very common mechanism to speedup a GC or an allocator in general is to add a thread cache, as to avoid complex operations on most allocations.
When a piece of memory is freed by a thread, it goes into the thread local cache. As far as most of the allocator is concerned, the memory is never freed. If the cache grows past a certain size, several allocation are freed in bulk to the arena.
When allocating, the allocator first snoop into the cache and if there is a slot available, returns it immediately. If no slot is available, then many slots are allocated in bulk all at once from the arena.
The size of the cache can be managed automatically from the workload of the thread.
Both tcmalloc and jemalloc implement such a mechanism (in fact, the tc in tcmalloc stands for thread cache). Some useful references from jemalloc:
Allocation from the cache: https://github.com/jemalloc/jemalloc/blob/5832ef658975d5f2da2bdfddf55712d9fa343e30/include/jemalloc/internal/cache_bin.h#L337-L381
Refill the cache: https://github.com/jemalloc/jemalloc/blob/5832ef658975d5f2da2bdfddf55712d9fa343e30/src/arena.c#L929-L1055
Deallocation from the cache: https://github.com/jemalloc/jemalloc/blob/5832ef658975d5f2da2bdfddf55712d9fa343e30/include/jemalloc/internal/cache_bin.h#L448-L467
Flush the cache: https://github.com/jemalloc/jemalloc/blob/5832ef658975d5f2da2bdfddf55712d9fa343e30/src/tcache.c#L308-L503

Just the small ones.


Get rid of npm install warnings

We need to figure out which packages gives us update warnings and update them.
@AndreyBelym Can you take care of this, please?

ping @AndreyBelym


nodejs-12_x: 12.4.0 -> 12.5.0

Motivation for this change
Changelog: https://github.com/nodejs/node/releases/tag/v12.5.0
Things done

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

[ ] NixOS
[X] macOS
[ ] other Linux distributions

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

I just noticed this regression in 12.5.0, but not sure if anyone else is affected: https://github.com/nodejs/node/pull/24260#issuecomment-506922414

fyi, it was fixed in upstream which is included in the v12.6.0 release

node 12.6.0 is still broken w.r.t. my bug (SIGTTOU hang on exit) that I haven't properly reported, they fixed something else


on version 0.72.0 Qubino ZMHTDx smart meter switches does not reflect status and it's impossible to switch off.

 on version 0.72.0 Qubino ZMHTDx smart meter switches does not reflect status and it's impossible to switch off. Switch turns ON but status is not updated also unable to switch off.
Home Assistant release with the issue:
hassio version 1.3.1
Last working Home Assistant release (if known):
Operating environment (Hass.io/Docker/Windows/etc.):
 Hass.io on Raspberry Pi3
Component/platform:

Description of problem:
on version 0.72.0 Qubino ZMHTDx smart meter switches does not reflect status and it's impossible to switch off. Switch turns ON but status is not updated also unable to switch off.
Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):

Traceback (if applicable):

**Additional information:**
OZW_Log.txt attached.
NODE009 is the ZMHTDx smart meter
OZW_Log.txt

Issue raised with log attached.
@turbokongen @MartinHjelmare

The log show that the device does not respond to the command its being Sent. You send an on command, and after a while, the device respons and ozw compares the old and new value, and both are false(off).  Check the device's config parameters. There must be something to activate the endpoints.

@turbokongen you are absolutely right! I've reset the device configuration and it's working!
Thanks


Failure percentage based outlier detection time does not increase on successive ejections

Title: Failure percentage based outlier detection time does not increase on successive ejections
Description:
In a cluster configured to detect outliers based on failure percentage, when a host gets ejected multiple times in a row, envoy  does not properly increase the time of ejection.
Here is an example of what the membership_healthy looks like over time in my setup.
In this case, interval is 30s, baseEjectionTime is 60s and maxEjectionTime is 300s.

Repro steps:
Set up a cluster with a host that only sends back 500 codes, and configure the outlier detection to use failure percentage. Then put some load for a few minutes and observe as the host is ejected and un-ejected at a regular pace.
Config:
       {
        "version_info": "2023-04-14T14:54:23Z/1608",
        "cluster": {
         "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster",
         "name": "outbound|80|ivts-31677c-piv|egressgateway.istio-gateways.svc.cluster.local",
         "type": "EDS",
         "eds_cluster_config": {
          "eds_config": {
           "ads": {},
           "initial_fetch_timeout": "0s",
           "resource_api_version": "V3"
          },
          "service_name": "outbound|80|ivts-31677c-piv|egressgateway.istio-gateways.svc.cluster.local"
         },
         ...
         "outlier_detection": {
          "consecutive_5xx": 5,
          "interval": "30s",
          "base_ejection_time": "60s",
          "max_ejection_percent": 100,
          "enforcing_consecutive_5xx": 0,
          "enforcing_success_rate": 0,
          "enforcing_consecutive_gateway_failure": 0,
          "failure_percentage_threshold": 25,
          "enforcing_failure_percentage": 100,
          "enforcing_failure_percentage_local_origin": 100,
          "failure_percentage_minimum_hosts": 0,
          "failure_percentage_request_volume": 50,
          "max_ejection_time": "300s",
          "max_ejection_time_jitter": "0s"
         },
         ...
       }

Version:
I am using envoy in an istio 1.15.1 setup, this is the version of envoy that I could retrieve - "94bd57194ed66b70e231dbf22a7771a9e9e43a74/1.23.2-dev/Clean/RELEASE/BoringSSL"

I am not very familiar with the code base, but I would say that the issue lies around here
https://github.com/envoyproxy/envoy/blob/e15b814095c59ae6f195575369b9300846eed47d/source/common/upstream/outlier_detection_impl.cc#L742-L760
Because checkHostForUneject decreases ejectTimeBackoff() before the ejection that will happen in processSuccessRateEjections.

Still planning to fix it!


Editing Docs

Hello! I just spent some time reading through the Lifelines Documentation to better understand the library. Fixed some small spelling errors, and hopefully can contribute more at the source level later on.

This is great, thanks for helping out!
Ah, tests fail for unrelated reasons. This is okay to merge!


Bug with vm deployment

This is autogenerated. Please review and update as needed.
Describe the bug
Command Name
az vm create
Errors:
error retrieving default location: Resource group 'myResourceGroup' could not be found.

To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

Put any pre-requisite steps here...
az vm create --resource-group {} --name {} --image {} --admin-username {} --ssh-key-values {}

Expected Behavior
Environment Summary
Linux-5.4.0-1046-azure-x86_64-with-debian-10.2 (Cloud Shell)
Python 3.6.10
Installer: DEB

azure-cli 2.23.0

Extensions:
ai-examples 0.2.5
ssh 0.1.5

Additional Context

Hi @MudassarAbdul , you may need to create the resource group first if it doesn't already exist.

Thanks , I created it and was able to resolve the problem .
Thanks for your response ,please close the case as resolved.
From: James Flynn @.>
Sent: Friday, May 14, 2021 5:12 PM
To: Azure/azure-cli @.>
Cc: Mudassar Abdul @.>; Mention @.>
Subject: Re: [Azure/azure-cli] Bug with vm deployment (#18097)
[External email]
Hi @MudassarAbdulhttps://protect2.fireeye.com/v1/url?k=1f3adc10-40a1e4c1-1f3b63c3-867e61ab5887-6058aa603701875c&q=1&e=d30d9257-7936-48b3-ab3a-bd1eae313382&u=https%3A%2F%2Fgithub.com%2FMudassarAbdul , you may need to create the resource group first if it doesn't already exist.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://protect2.fireeye.com/v1/url?k=9703a3ef-c8989b3e-97021c3c-867e61ab5887-da43dd2f00bc8c8c&q=1&e=d30d9257-7936-48b3-ab3a-bd1eae313382&u=https%3A%2F%2Fgithub.com%2FAzure%2Fazure-cli%2Fissues%2F18097%23issuecomment-841505729, or unsubscribehttps://protect2.fireeye.com/v1/url?k=40a27699-1f394e48-40a3c94a-867e61ab5887-5ecefee3bd04d052&q=1&e=d30d9257-7936-48b3-ab3a-bd1eae313382&u=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FATZQFWAS5ATJ2GYURMKOYJDTNWGZVANCNFSM445BRFYA.


Query Lichess masters db in parallel to engine search

Lichess master db query can sometimes take a bit of time. To speed up processing, we should do something like this:

Launch engine analysis
Query Lichess masters db
Wait for engine
Process the engine and Lichess master db stats as usual

Changing this from "Query Lichess masters db in parallel to engine search" to "Query Lichess masters db before engine search"
The Lichess masters db has shown to have low latency. Doing the query before the analysis can help save a round of engine analysis after the cutoff.
Especially with low book positions cutoffs, the final round is often on a position that is not in the database, which results in all suggestions being marked as novelties.


Implementing subscribe to sendgrid PHP example function

Implementing subscribe to sendgrid PHP example function #1915

Created a function in project

Execute function with email as input

On successful execution message is printed to console

Please attach screenshots of a successful execution along with the console output

please address one last comment and we can merge this 😄
Awesome work !

@christyjacob4 Done, we can merge now. Thanks :)

Awesome work @Shylajhaa  👏

THANK YOU! All changes merged 🥳
Please reach out to me on our Discord server if you would like to claim your Appwrite swags! As a way of saying thank you, we would also love to invite you to join the Appwrite organization on GitHub. Please share your GitHub username with us on Discord.
You can accept the invite by visiting https://github.com/orgs/appwrite/invitation. By joining our team, you will officially be an Appwrite maintainer on GitHub.
You can change your membership visibility settings, so your new Appwrite team membership badge will show up on your personal GitHub profile.
Please feel free to look for more PRs you might be interested in helping with on our long list of Hacktoberfest friendly issues and help make Appwrite better :)


how toadd tp-70 loei please

I use a translator, but I would like to know how I can add the "tp-70 loei" which is for Juanfi tickets. I hope someone guides me and for the others... greetings
Paano maidaragdag ang TP-7 Loei sa Juanfi. Marami silang hinihiling sa akin na magbayad gamit ang mga bill at sa gayon ay magdagdag ng mas maraming oras, mas madali at mas mabilis, nang walang opsyon na ibalik ang pagbabago.
at sa gayon ay mabibigyan ng plus si juanfi at magiging kumpleto siya

s

Actually that's the same with how you wired up your coinslot. Those acceptors  output pulse. Also check the datasheet of the said device.
BTW there's and option on admin panel on where to hook up the signal pin if you're using Bill acceptors.


cargo: bump secrecy to 0.8

Just a single version bump!

Urgh, looks like secrecy 0.8 uses const generics. I can bump the MSRV if you'd like, otherwise I'll close this until a later point.

Codecov Report

Merging #5 (89a27f1) into master (ed6eb79) will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master      #5   +/-   ##
======================================
  Coverage    0.00%   0.00%
======================================
  Files           3       3
  Lines         214     214
======================================
  Misses        214     214

Continue to review full report at Codecov.

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

I'm fine with bumping MSRV to 1.51.0.

Done in #6.


Update SDK to preview 8

https://github.com/aspnet/AspNetCore-Internal/issues/2979

Win7 Helix failures looked unrelated


Indication of correct answer not working in Path P2B

See
https://piazza.com/class/jg1gbtzfzh816w?cid=88

Fixed by #329. Thank you for helping us track this issue!


Faucet wrongly says "Requester has reached their daily quota"

Faucet Type
Matrix
Problem
Here's the message
https://matrix.to/#/!cJFtAIkwxuofiSYkPN:matrix.org/$7_BbTZM6dQjRtExC9EQ_ZJdTf03maGZQynzlSReoudg?via=parity.io&via=matrix.org&via=web3.foundation
Can't find requests from this user or address in logs.
Address
5ECro2Szgee3YLDpDQYRAti3zJ6CnxmdvLAgmfDNoeBuaHMc
Network ID
Westend Relay Chain
Relevant log output
No response

fixed in https://github.com/paritytech/polkadot-testnet-faucet/pull/343


Clarify support for sslmode=allow,prefer

Requested by @mberhault  in https://github.com/cockroachdb/docs/pull/2853#issuecomment-379309528

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

LGTM. Thanks.

This change is

Thanks for this, @knz and @mberhault!


Update EOLs after moban EOL fix

moban has changed its EOL handling
https://github.com/chfw/moban/pull/4

(This is the set of changes needed after the EOL handling has changed, if it changes)


Question regarding pair trading

Hello,
This is a general question but what happens if you are running the script twice? One on BTC/USDT and then another on ETH/USDT. Would the script know how to handle new funds hitting USDT from the other pairing? Would it just move between the three based on what ever trade happens first? Are there any steps you can take to make sure the script knows that X amount of USDT is assigned to BTC trading and another is assigned to ETH?
Thanks

Hey,

Would it just move between the three based on what ever trade happens first?

Yes, it would unfortunately.

there any steps you can take to make sure the script knows that X amount of USDT is assigned to BTC trading and another is assigned to ETH?

Not at the moment, but there are a few issues open where people are thinking about solutions. See #826 for example.

A solution to this is currently not available but is being investigated :) A temporary workaround is using different exchange accounts per gekko instance.


isVisible triggers on opacity 0

The current isVisible considers elements with opacity: 0 to be visible.
This seems wrong.

see https://github.com/simplabs/qunit-dom/blob/master/API.md#isvisible

The current implementation of isVisible is based on jquery's :visible pseudo-selector which states the following:
Elements are considered visible if they consume space in the document. Visible elements have a width or height that is greater than zero.

Elements with visibility: hidden or opacity: 0 are considered visible, since they still consume space in the layout.

source
I can see definite utility in altering isVisible (or introducing a new assertion) to also check for opacity: 0 and visibility: hidden (maybe other properties I'm not thinking of).

the problem is that there are soooo many ways to make an element invisible that it's not really viable to support all of them. it's correct that the current implementation is based on the jQuery implementation, but apparently that is not quite sufficient. I'm open to adjusting the logic, but that would most likely have to be a breaking change then.

We could also consider having options to isVisible, whereby you'd specify that you want to also assert on additional properties (opacity: 0, visibility: hidden). Or, we could have a completely separate assertion that is for CSS visibility:
isCSSVisible - passes if opacity !== 0 and visibility !== 'hidden'
isNotCSSVisible - passes if opacity === 0 or `visibility === 'hidden'

Just stumbled upon this. I was also expected opacity to be taken into account.

Elements with visibility: hidden or opacity: 0 are considered visible, since they still consume space in the layout.

Tbh, that definition of visibility totally contradicts my "common sense" understanding of what visible is! If a button consumes space, but I cannot see it nor read its text, I would certainly not consider it visible! 😆
But let's not bike shed about this...
I did however remember that Selenium/Webdriver based solutions handle visibility in a IMHO smarter way. Quick google found this: https://github.com/thefrontside/element-is-visible. Maybe we can defer the decision what visible means to this (quite elaborate) util, which seems to mimic the Selenium semantics!?

I have just been bitten by this as well (visibility: hidden;on my element, yetisVisible() / isNotVisible()` thinks it is visible)
My 2c; I think that the current implementation of isVisible() / isNotVisible() is very misleading, no matter how good the docs are, and definitely leads to invalid tests being written where isVisible() will always succeed, especially in applications that do not use jquery. If not implemented to cover the obvious scenarios (opacity & visiblity styles), then it should probably be removed or at least deprecated.. force the dev to check visibility with other assertion methods like hasClass.