Absolute positioning and resize

This issue is related to the choices positioning and adaptive design (like Bootstrap).
Because of absolute positioning, introduced in 61e54ee the choices are not properly rendered.
If you resize the browser or scroll window while displaying choices all the elements change their positions but choices don't.

So it should be fine if we call fixPosition on browser scroll or resize ?
It's a bit annoying I recon, but we've got to go through that to have sufficient material to convince the django dev community that the admin should move from overflow: hidden to using .clearfix to clear floats.

BTW could you make a PR for your example if you'd like to help us support this on the long run ?

I think it could work but can't say for sure, as I don't understand your event handling quite right to do it.
I made PR with my example app.

Could you try with 2.2.0rc5 please ?
Thanks !

2.2.0rc5 works ok with modal dialog but it breaks with common autocomplete input because it sets this.container equals to autocomplete input itself

Oops ! How do you suggest we improve that ? After all, we could just let
users specify the container manually but it would be better to try to
figure it automatically of course.
Le 29 mai 2015 16:57, "Tatiana"<EMAIL_ADDRESS>a écrit :

2.2.0rc5 works ok with modal dialog but it breaks with common autocomplete
input because it sets this.container equals to autocomplete input itself
—
Reply to this email directly or view it on GitHub
https://github.com/yourlabs/django-autocomplete-light/issues/431#issuecomment-106855822
.

Sorry, I didn't notice that with modal 2.2.0rc5 choices don't respond to resizes and scrolls just like before, so it doesn't help at all.
Maybe solution with resize and scroll event handling you mentioned before will do better.

What browsers do you have that won't make the input loose focus, causing
the autocomplete to hide and that problem go away ?
For scrolling, I think it's a lot better to just start from the right
container instead of re calculating the position from the wrong container
over and over again.
About that other way, there should be a branch in my fork with an example,
but I didn't like it so much.
If we can't find a right way to support this then it would make sense to
just hide the autocomplete since the user is probably not using it anymore
when resizing or scrolling what do you think ?
Le 29 mai 2015 17:07, "Tatiana"<EMAIL_ADDRESS>a écrit :

Sorry, I didn't notice that with modal 2.2.0rc5 choices don't respond to
resizes and scrolls just like before, so it doesn't help at all.
Maybe solution with resize and scroll event handling you mentioned before
will do better.
—
Reply to this email directly or view it on GitHub
https://github.com/yourlabs/django-autocomplete-light/issues/431#issuecomment-106859086
.

I have Firefox 37.0.1 and Chromium 41.0.2272.76  on Linux Mint 17.
I finally found out that rc5 solves the problem with modal dialog scrolling so we should fix just resizing and self-container problems.
What if we just use input's direct parent as a container or it'll break something?
The input loses focus while switching between maximized and normal window but saves focus during manual dragging-resize. I see that choices are in the right place when I continue typing after resize so maybe hiding autocomplete is ok.

On Fri, May 29, 2015 at 6:40 PM, Tatiana<EMAIL_ADDRESS>wrote:

I have Firefox 37.0.1 and Chromium 41.0.2272.76 on Linux Mint 17.
I finally found out that rc5 solves the problem with modal dialog
scrolling so we should fix just resizing and self-container problems.

I'm glad we're having the same results !

What if we just use input's direct parent as a container or it'll break
something?

Well if the direct parent has overflow: hidden I'm affraid it might be
hidden. We should really just append it in the right block formatting
context but it's a concept I'm still trying to completely figure out.

The input loses focus while switching between maximized and normal window
but saves focus during manual dragging-resize.

Ok, what happens exactly on resize / focus might even be specific to the
relation between the browser and the window manager.

I see that choices are in the right place when I continue typing after
resize so maybe hiding autocomplete is ok.

Here's the other way I was talking about, calling fixPosition on resize /
scroll. Calling fixPosition on resize sounds ok, but on scroll it was
really hacky.
It seemed better to let scrolling work naturally in case the user is on a
weird device where she has to scroll to see the complete list of choices.

Note that I found this.container to be empty in django admin, not equal to this.input. I wonder how you got this.container to be equal to this.input, since this.container gets calculated depending on a traversal of this.input.parents(), could you double check please ?
2.2.0rc6 fixes django admin support with 5f744a94f, simply by defaulting to <body> for container. That's why I really like the clearfix way of positioning I think I'm starting to have enough material to defend a case in Django maybe for Django 1.9 or 2.0 ^^
Could you try 2.2.0rc6 and let me know if it fixes all your open issues or if there's still a problem.
Thanks a lot for your help, really appreciated B)

Oops, this was closed by mistake.
Try 2.2.0rc7 please, I had forgotten the resize fix in 2.2.0rc6 ^^
Thanks a heap, I think we're good to go now B)

I moved from my Linux at work to Windows  home machine and testing on it. For rc7 everything is ok except for scroll in modal dialog (maybe it's just for Windows). Resize part is working great now.

Unfortunately I won't see my CSS friends before the 15th so if anybody
could share a fix until then it'd rock.
Thanks a heap for your time
Le 29 mai 2015 20:42, "Tatiana"<EMAIL_ADDRESS>a écrit :

I moved from my Linux at work to Windows home machine and testing on it.
For rc7 everything is ok except for scroll in modal dialog (maybe it's just
for Windows). Resize part is working great now.
—
Reply to this email directly or view it on GitHub
https://github.com/yourlabs/django-autocomplete-light/issues/431#issuecomment-106912817
.

Could you tell what browser version you tested it with in windows ? In issue #438 please which is the followup.


[DO NOT MERGE] Map URL to Email Alert API style matching hash

This is dependant on: https://github.com/alphagov/gds-api-adapters/pull/684
Convert generated URL into hash syntax for sending to email
alert api for the pending data migration. This code will also
be used the front-end to support signup to both govuk delivery
and email alert api during the migration period.
The output of running the rake task (after doing the actual migration)
can be seen here https://gist.github.com/dwhenry/4904b7e8e9b2741399629dd97b3568de
https://trello.com/c/5yVMib2f/124-2-add-support-for-whitehall-topics-in-new-email-stack

The rake task isn't doing the work any more - we really need more tests covering this. It's just printing out all the URLs - it appears to think that everything has a missing lookup.


(🎁) new rule: unconditional-break/unconditional-continue within loop

for a in [1, 2, 3]:
    print(a)
    break  # error: unconditional-break

The break here is completely invalid and is most certainly a developer mistake.

It makes sense, though my concern is that the rule may have low precision. It's probably not a very common error, and when it does appear in code, I can see situations in which it may be intentional. For example:
for a in some_list():
  use_the_first_element(a)
  break

I guess you could do this by slicing, or with next, but I'm worried that we'll find other such patterns that won't outweigh the usefulness.

For reference this is covered by FURB133 in Refurb (see #1348). FURB133 only covers continue though, whereas this would cover break as well. I'd agree that break changes the control flow (and may be intentional), whereas continue is harmless to remove.
I would say that a single continue at the end of a short for loop is not very useful to detect. But, if there is an if/else statement at the end of a for loop, the continue might go unnoticed. The test data for FURB133 gives some examples of continue statements that may go unnoticed.


Add min heap and max heap

Add min heap and max heap implementation in Java and comment properly in code.

I'm ready to do it


feat(prometheus): add secret management to export library

Original code review here: https://github.com/GoogleCloudPlatform/prometheus/pull/130
Prometheus change here: https://github.com/GoogleCloudPlatform/prometheus/pull/135

Thanks for the review, @macxamin! Let me know if there's anything else that isn't clear that I could add comments to.


BlackFM Online

assets/images/help/repository/hidden-comment.png

Why:
Closes [issue link]

What's being changed:

Check off the following:

[ ] I have reviewed my changes in staging (look for the latest deployment event in your pull request's timeline, then click View deployment).
[ ] For content changes, I have completed the self-review checklist.

Writer impact (This section is for GitHub staff members only):

[ ] This pull request impacts the contribution experience

[ ] I have added the 'writer impact' label
[ ] I have added a description and/or a video demo of the changes below (e.g. a "before and after video")

[ ]

](url)[


textDocument/didOpen leads to empty file contents

I'm trying out a new edition of the emacs-lsp extension (https://github.com/sourcegraph/emacs-lsp/pull/9) and am encountering a scenario where a textDocument/didOpen notification seems to lead to the Go langserver to store empty contents for a file.
Repro steps:

Install the version of the emacs-lsp plugin at https://github.com/sourcegraph/emacs-lsp/pull/9.
Run go-langserver -addr :4445 -trace -mode tcp
Open emacs to your local copy of github.com/gorilla/mux
Run M-x lsp-mode-init-conn setting host to "localhost" and port to 4445
Run M-x lsp-mode-symbol and issue "newrouter" as your query.
This yields the following trace in the LS:

--> request #991207229632190845: initialize: {"rootPath":"/home/beyang/src/github.com/gorilla/mux/"}
<-- result #991207229632190845: initialize: {"capabilities":{"textDocumentSync":1,"hoverProvider":true,"signatureHelpProvider":{"triggerCharacters":["(",","]},"definitionProvider":true,"referencesProvider":true,"documentSymbolProvider":true,"workspaceSymbolProvider":true,"documentFormattingProvider":true,"xworkspaceReferencesProvider":true,"xdefinitionProvider":true,"xworkspaceSymbolByProperties":true}}
--> request #503727145293595937: textDocument/didOpen: {"textDocument":{"uri":"file:///home/beyang/src/github.com/gorilla/mux/route.go"}}
<-- result #503727145293595937: textDocument/didOpen: null
--> request #278696121372792140: workspace/symbol: {"query":"newrouter"}
<-- result #278696121372792140: workspace/symbol: []

Additional printfing shows the error that causes the subsequent symbol request to return the empty list is err: /home/beyang/src/github.com/gorilla/mux/route.go:1:1: expected 'package', found 'EOF'

My best guess is that it tries to relativize the textDocument/didOpen URI (file:///home/beyang/src/github.com/gorilla/mux/route.go) against the workspace rootPath (/home/beyang/src/github.com/gorilla/mux/route.go), but that yields a non-existent file like /home/beyang/src/github.com/gorilla/mux/route.go/home/beyang/src/github.com/gorilla/mux/route.go. It takes this to mean the file contents are now empty, so on the subsequent workspace/symbol request, it finds an empty file.

didOpen seems to be sending an invalid notification. You are missing most of the fields as described in TextDocumentItem (notably the content of the document). The spec doesn't seem to indicate the field as optional, although in practice maybe we can make it optional? cc my favourite LSP person @felixfbecker
FYI when we are unmarshalling your TextDocumentItem, text is set as the empty string.

The whole point of the didOpen notification is to initialise in-memory file content so it can be modified with subsequent didChange notifications. The behaviour of the Go LS seems correct here.


[MQTT-2.1.2-1] QoS must be 1 on PUBREL

During implementation of a full broker, paho interoperability tests reveals this problem.
Info: http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/csprd01/mqtt-v3.1.1-csprd01.html
section "2.1.2 Flags".

you are right. Just merged ! Thanks !


What to add to Vagrantfile to be able to have higher resolutions

I notice that there is a setting in there to set the RAM, so I wonder, is there something similar for the resolution?

config.vm.provider "virtualbox" do |vb|
    # set resolution on OSX:
    # 0,1,2,3,4,5 :: 640x480, 800x600, 1024x768, 1280x1024, 1440x900, 1920x1200
    vb.customize ["setextradata", :id, "VBoxInternal2/EfiGopMode", "5"]
    # see https://www.virtualbox.org/manual/ch03.html#efividmode for more info
end

Man that's awesome, thx!


Cacheing

How memory intensive the app is as the _cachedSongs _cachedFiles get large?

32,576k with 4 songs in lib
switching dirs
spiked to 600,000k
still switching
UI locked up
file system initialization needs to happen on a different thread
this is bad
still locked up
hovering around 40,000k
65,248k with 2438 songs in lib
doubled in size for +2434 songs. For comparison, Zune.exe is at 93,280k at the same directory, and it isnt locking up as much

The alternative is file I/O whenever we do anything

Your first comment is a little chaotic - to clarify:
Open to 4-song library: 33MB
Switch library: 600 MB
Settled in 2438-song library: 65 MB
Is that accurate? Sounds like the problem is just inefficiency while switching.

hah sorry, i kept writing comments as I waited. Yes, that's accurate, but it should also be noted that that spike was very brief. I can test it real quick on my async init branch.

spike still exists. can one of you verify on win10 that this is still an issue, once you can build? Or bust out that MSOE laptop and build on there

Are we okay with this? Has this been resolved?

I am still active on this, I now have it building on Win10 but am receiving visual glitches that prohibit me from accessing settings (and thus makes it hard for me to change libraries).  Will look further into this and Win10.

Do you think this is a result of our filesystem cache or something else? This Issue was to check if the cache causes the app size to balloon, I thought


Do not support Android?

Do not support Android? Why can't Android display normally, IOS is normal?

I saw big problems on Android when this widget is put inside of a react-native-navigation tab navigator.  Apparently it is because they both use ViewPagerAndroid and that object shouldn't be nested.  I was able to get it to work by setting animationEnabled={false} and swipeEnabled={false} on the tab navigator.


Release 3.0.0

Pull Request

[x] I looked for similar pull requests
[x] I looked for upcoming updates

What does this change?

[x] Documentation (only API, not internal)
[x] Code
[x] Repository README
[ ] Other: _____

Description
V3 - Multiple changes.

I think JTA 3.0 is ready for merging. I will mark the pull request as ready for review.


The slack link in README.md is broken

Clicking it (https://bento-starter.slack.com/join/shared_invite/enQtNjE5OTI5MzQyMTE3LTVjYjM3YjMzMGQ4NjgzYzY5YWMwNDkyY2VmMzg4ODg0OTkwZDRhMzg3OWU0MGY1MGYwMmVjYThiMmU2YzBjODY)  yields "This invite link is no longer active."

Fixed! Thanks for the report


Add health checks to OS components

See: https://github.com/johscheuer/kubernetes-on-openstack/blob/master/scripts/master.cfg.tpl#L437

Since the repo will be archived this won't be fixed.


chore: update GitHub Actions dependencies

update-github-actions-dependencies

:dog: RedRover

Currently reviewing new changes in this PR...

Commits
Files that changed from the base of the PR and between 54b59d828a9b126d8b03ae1b212886efe62cc472 and 09b6281a09dfac1278b135d50f751bd6a2394e1f commits.

Files selected (1)

.github/workflows/redrover_generate_standards.yml (1)


lot of errors "multiple definition of mqttPASSWORD" etc. from arduino_secrets.h

Hi there,
this seems to be a great project! Unfortunately, platformIO refuses to compile the code throwing a lot of variants of the above mentionned messages. Compiling is ending up in "collect2: error: ld returned 1 exit status".
Environment: Kubuntu 20.04, atom, PlatformIO Core version 6.1.3.
As prerequisites,

in platform.ini file lib_deps for eZtime had to be changed to<EMAIL_ADDRESS>and
a single file arduino_secrets.h in folder "include" has been added containing my personal credentials as described in the respective .template file. The respective .cpp is not added (any longer).

Compile run seems to start fine, but will end up with the mentionned error.
Tried also with the cpp-credential file, changed #includes for the credentials from <> to "" syntax etc., added both under the "lib"-path, no luck with any of that either...
Most likely I missed something essential?
For the deeper understandig: I managed to get some other smaller projects compiled with pio@atom some time ago, but I'm far from beeing experienced user in these tools.
So any tipp for getting that done is highly appreciated.
EDIT: OK, after disabling all referencies to the secrets-file and filling in the credentials directly into the files mqtt.cpp and wifi_config.cpp, there's finaly a firmware ready to flash...

Will come back in case of further issues...

Thanks for letting know.
I will update my tooling and check if i can reproduce the issues.

Thanks a lot for your answer.
The changed referency for ezTime had been already mentionned in Mikrocontroler-forum as well.
Wrt. to the wifi settings, I had some older libs laying around in my "Arduino" folder causing trouble in another project as well. I'll double-check that as well.
Besides that: Yesterday evening my Junkers got switched off by MQTT command, BIG THANKS - a long time dream came true!


fix(card): fix card styling to follow mobile-first approach

Fix card styling so that it follows mobile-first approach (i.e. uses min-width instead of max-width media queries)

:tada: This PR is included in version 3.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Reduce Boilerplate

The last refactoring improved the performance a lot, but it also introduced a necessary boilerplate.
This PR tries to address that problem by introducing a horrid macro, that while pretty ugly, makes the intent of the code pretty clear and makes adding new ops very straightforward.

@agibsonccc @raver119 Please merge ASAP if tested and works fine for everything...

I hadn't run test with it, but this merge is NOT critical in any sense. It's just boilerplate reduction, so we can merge it next minute you build release, just not to break pre-release code freeze. I have two other branches, that won't be merged into current release too.
Code freeze lesson from rc3.9 learned.

Right. This is just plain boilerplate cleanup. There is no need to merge it before the next release.


UWP programs from the store do not run using a command line alias.

Microsoft PowerToys version
0.73.0
Installation method
PowerToys auto-update, Other (please specify in "Steps to Reproduce")
Running as admin
None
Area(s) with issue?
PowerToys Run
Steps to reproduce
Type the name of the alias in the launcher bar. Press Enter.
✔ Expected Behavior
I was expecting to see a program window.
❌ Actual Behavior
You will get a browser window with a search page.
Depending on the alias, you may be able to run a completely different program.
Other Software
No response

For experiments you can use, for example, the program Data for Last.FM with the alias lafm.exe.

There's a trial period

It turned out that the incorrect behavior was caused by the installed Last.fm Scrobbler program - https://www.last.fm/about/trackmymusic.

The updated version of the program gives a slightly different picture.

Of course, it is possible to get to the desired program, but it is still wrong.
The command line launches the desired program without any tricks.


Emergency Maintenance

Due to current network conditions locally, I am being forced to complete a full network reboot. Expected downtime is about half an hour at the most, everything but N1 and N2 are going offline.

The reboot has concluded and I'm observing all services online and fully functional. I'm declaring the downtime concluded.


Enable MutationObserver polyfill for all versions of Opera Mini

https://caniuse.com/#feat=mutationobserver

Hi @ctjhoa, have you had a look through our contribution documentation with regards to serving a polyfill to a new browser? https://polyfill.io/v2/docs/contributing/common-scenarios#adding-browsers
We would be really grateful if you could take a screenshot of the browser running the test suite for this polyfill. The url to run the tests with the polyfills is https://polyfill.io/test/tests?feature=MutationObserver&mode=all


Temporary work around for issue #7490

This is a suggested temporary work around for #7490
There seems to be an unresolved issue in nuget client.
This fix suggested here should hopefully stop the CI failures from reoccuring.

@chidozieononiwu looks like the link to the suggest workaround also points to the code, from the code I cannot easily tell that what you changed here will help or not. Did you intend to link to an issue/conversation?

@chidozieononiwu Dozie Ononiwu FTE looks like the link to the suggest workaround also points to the code, from the code I cannot easily tell that what you changed here will help or not. Did you intend to link to an issue/conversation?

You are right I have updated the link


refactor(docusaurus-init): cleanup

Motivation
(Write your motivation here.)
Have you read the Contributing Guidelines on pull requests?
I have followed all contributing guidelines and signed the CLA accordingly.
Test Plan
The primary changes made are not functionality, but rather performance
improvements and code refactoring. I have verified these changes pass all
available tests and both used the refactored CLI myself and used yarn start
to ensure the site templates build and render correctly. This should require no
additional jest tests.
Related PRs
There is no changed functionality involved with this PR, merely improvements
over existing functionality. I am not currently aware of PRs that involve the
aforementioned functionality but I will link to them if I find them.

@Foxeye-Rinx I could, but I was under the assumption the commits would get squashed upon merge. I'll do it now either way, though.

Hi and thanks for your contribution.
I'm sorry but I'm going to close this PR for a few reasons:

This PR does not provide value but refactors the code: there's always a risk with that kind of refactor, so there should be a clearer documented benefit. You mention performance improvements but it's not clear to me how the code your refactor improves performance in any way, unless you provide benchmark. In case the performance gain is not significant or the code more readable, it may not be worth it to do a change.
This PR tries to do too much at once: if we agree we want a refactor, it's unlikely we'll agree on all of them: you'd better split the PR in multiple smaller PRs with a smaller refactor scope and more details about your motivations

If you want to contribute by refactoring, the best way could be to first discuss about the refactors you plan to do, or contact me on discord to know if the refactors you plan to do are welcome

This PR does not provide value

Code quality and cleanliness is incredibly valuable.

it's not clear to me how the code your refactor improves performance in any way

Many, many, many ways. Boolean expression optimization, use of opendir for Dirent as opposed to just readdirSync which uses fewer syscalls and allows for less hacky template type detection, et cetera. It's quite clear to see depending on how familiar with Node you are.

or the code more readable

That was a lot of the intention of the cleanup.

This PR tries to do too much at once

If a relatively small single-package cleanup is too much for a single PR, I'm not entirely sure how Facebook manages to work at any efficient pace, but congratulations to you all for pulling that off.

to know if the refactors you plan to do are welcome

That's what PR discussions and code review is for - I can refactor, discuss the changes I made, and then alter it depending on the achieved conclusion prior to merge. Better for everyone.

Code quality and cleanliness is incredibly valuable.

Agree

Many, many, many ways. Boolean expression optimization, use of opendir for Dirent as opposed to just readdirSync which uses fewer syscalls and allows for less hacky template type detection, et cetera. It's quite clear to see depending on how familiar with Node you are.

I see some of these are decent micro-optimizations to performance problems we don't have in the first place, in a critical flow of the Docusaurus experience that does not change often and is currently not covered by tests. Is this really necessary to do these changes? If we do, shouldn't we add tests at the same time to ensure the behavior before/after is the same?

If a relatively small single-package cleanup is too much for a single PR, I'm not entirely sure how Facebook manages to work at any efficient pace, but congratulations to you all for pulling that off.

That does not feel very constructive.

That's what PR discussions and code review is for - I can refactor, discuss the changes I made, and then alter it depending on the achieved conclusion prior to merge. Better for everyone.

Then let's do that and move on: you have my review, feel free to handle it or not.

Just to help you understand better my perspective:

I have limited time and should focus on more important things
You add work to my work queue that I was not willing to do in the first place
Reviewing and merging this PR is time consuming, requires discussions, assessing the risk/reward of each refactor to ensure the next release is not broken

Refactors are welcome, but please:

make your PR less time-consuming to review and easier to merge
don't do too many things at once, do the hard work of risk assessment and document correctly the perf benefits, and the potential risks of the changes

Examples PRs:

Migrate every package to colorette, document correctly the benefits, show benchmarks, explain why this change is not risky, provide official external links to backup your claims (because otherwise, I'll have to do that job myself)
Add tests to an existing package, as you plan to refactor it later
Replace sync code with async code, make sure tests still pass

Those 3 PRs would be much easier to merge for me


release(versioning): update version to 1.2.1

Automated PR to bump the version pre-release.

:tada: This PR is included in version 1.2.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Getting connection throws exception on iOS 6

I am using MvvmCross and since the upgrade to this sqlite package I am getting an exception when trying to get a connection to the database on iOS 6.
I raised an issue there (https://github.com/MvvmCross/MvvmCross-Plugins/issues/133) and was pointed here as they just wrap this plugin apparently.
I understand this is an old OS but I was wondering if there was any way to get it running as our client insists we support iOS 6. I have attached the exception log.
sqlite.error.txt

This is the method I am calling which is wrapping your code I believe:
`public SQLiteConnection GetConnection(string databaseName, bool prefixPlatformPath = true)
{
var config = new SqLiteConfig(databaseName);
var databasePath = GetConnectionString(config, prefixPlatformPath);
        return new SQLiteConnection(databasePath, config.OpenFlags, config.StoreDateTimeAsTicks);
    }`

I think it might be because apparently sqlite3_close_v2 was only added in sqlite 3.7.14 and iOS 6 runs 3.7.13
ref:
http://stackoverflow.com/questions/14288128/what-version-of-sqlite-does-ios-provide
aspnet/EntityFramework#3870

Yep.  That's what I was guessing as well.
If this were to be fixed in the sqlite-net code itself, we could change that call to sqlite3_close().
An alternative would be to use a bundled SQLite library instead of the one provided by iOS.  But the PCL form of sqlite-net is configured to use SQLitePCL.bundle_green, which is a packaging that specifically prefers the use of the iOS system sqlite.
Changing either of the above would be @praeclarum 's decision.
BTW, another problem with bundling a SQLite is that SQLitePCL.raw (the package I maintain, and which is a dependency of sqlite-net-pcl) bundles iOS libraries which are not built for compatibility with iOS 6.  But I could probably fix that.
Anyway, if I fixed that issue, one option would be for you to include the sqlite-net source code yourself (instead of using the PCL nuget package), compile it for SQLitePCL.raw, and add the appropriate nuget packages for bundling a SQLite (which I can explain how to do if you chose that path).

Thanks dude, that's been a great help :)

Hey guys - I got my hands on an iPhone 4 today running iOS 7 and i'm getting the same problem :/ I will try a separate test project to check it's nothing else causing it, but it is fine on iOS 8 and 9. Very strange. I am guessing that you would consider iOS 7 support still kind of relevant? (genuine question)

I upgraded XCode and Xamarin and the crash seemed to disappear. I'll close this, Cheers for all the help.


New method User#private_maps_enabled? #3404

Remove details about accounts that should not be the concern of the
user model.
@Kartones can you please review? I finally opted for removing the account types stuff out of the user model, we shouldn't have that code there. I know it might cause some trouble (not bigger than what we have now) but it should be fixed in the flags instead.
cc/ @viddo (edit: fixes #3404 to close automatically when merged)

Frontend tests were OK :+1: (details)

:+1: but we need to combine this with changes in central + maybe a migration to set those users that might have wrongly the private_maps_flag...

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)


Disable animation on start

Library version: 1.8.2
AppCompat version: 25.3.1
When navigating to my MaterialAboutFragment subclass, it shows a short animation.
I do not have such animations for any other of my sections and thus it looks inconsistent.
Might it be possible to implement some kind of setting for disabling the animation?

Hi, I'll work on this soon. Thanks.

Sorry, been inundated with other work recently. I'm always up for pull requests, or you can fork the repo and easily remove the animation.


Does linkis have a special interface? Isn't it just Eureka

Search before asking

[X] I searched the issues and found no similar issues.

Linkis Component
linkis-commons
What happened + What you expected to happen
Does linkis have a special interface? Isn't it just Eureka
Relevent platform
.
Reproduction script
.
Anything else
This question comes from the QA documentation of the Linkis community
Are you willing to submit a PR?

[X] Yes I am willing to submit a PR!

A: Linkis is a middleware that provides rest interface and websocket interface services. At present, there is no special interface. It is usually used with DSS to execute scripts and processes defined by DSS. You can also develop your own big data scheduling platform, and the underlying layer adopts linkis to realize unified script or task execution.


Log information about a client when they open the site

On the old site right now, I am logging the public IP addresses to a file whenever people load the website with the following code:
Frontend
const req = new XMLHttpRequest();
req.open('POST', 'https://api.michaelzhao.xyz/log');
req.setRequestHeader('Content-Type', 'application/json;charset=UTF-8');
req.setRequestHeader('Access-Control-Allow-Origin', '*');
req.send(JSON.stringify({ dir: 'tams.club' }));
req.onload = () => {
    console.log(req.response);
};

Backend
// router on route /log
router.post('/', function (req, res, next) {
    res.header('Access-Control-Allow-Origin','*');
    if (!req.body.dir) {
        res.status(400);
        res.send({
            status: 400,
            error: "Missing 'dir' in request body",
        });
    }
    // Need to add to nginx config:
    // proxy_set_header X-Real-IP $remote_addr;
    var ip = req.header('X-Real-IP') || req.connection.remoteAddress;
    fs.appendFile(path.join(__dirname, 'files', 'logging', req.body.dir), `[${now()}] ${ip}\n`, () => {});
    res.sendStatus(200);
});

Output Log File:
[2020-12-22T22:15:30.808Z] <IP_ADDRESS>
[2020-12-23T08:58:05.465Z] <IP_ADDRESS>
[2020-12-23T21:50:59.926Z] <IP_ADDRESS>
[2020-12-26T21:55:59.112Z] <IP_ADDRESS>
[2020-12-28T12:27:24.617Z] <IP_ADDRESS>
[2020-12-30T01:09:30.780Z] <IP_ADDRESS>
[2020-12-31T07:18:27.931Z] <IP_ADDRESS>
[2021-01-01T20:18:45.280Z] <IP_ADDRESS>
[2021-01-04T02:36:34.453Z] <IP_ADDRESS>
[2021-01-04T03:41:57.790Z] <IP_ADDRESS>
[2021-01-04T04:10:13.699Z] <IP_ADDRESS>
...

I want to create a logging file of some sort as well, except it will log as a csv file. This is only for when a user goes onto the site. It is seperate from the backend log files in issue #66.

We should log the user-agent field and the ip address (not shown below) from req.headers:
{
    "host": "localhost:8082",
    "user-agent": "Mozilla/5.0 (X11; Linux x86_64; rv:84.0) Gecko/20100101 Firefox/84.0",
    "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
    "accept-language": "en-US,en;q=0.5",
    "accept-encoding": "gzip, deflate",
    "connection": "keep-alive",
    "upgrade-insecure-requests": "1",
    "if-none-match": "W/\"2-nOO9QiTIwXgNtWtBJezz8kv3SLc\"",
    "cache-control": "max-age=0"
}

We should log the user-agent field and the ip address (not shown below) from req.headers:
{
    "host": "localhost:8082",
    "user-agent": "Mozilla/5.0 (X11; Linux x86_64; rv:84.0) Gecko/20100101 Firefox/84.0",
    "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
    "accept-language": "en-US,en;q=0.5",
    "accept-encoding": "gzip, deflate",
    "connection": "keep-alive",
    "upgrade-insecure-requests": "1",
    "if-none-match": "W/\"2-nOO9QiTIwXgNtWtBJezz8kv3SLc\"",
    "cache-control": "max-age=0"
}


Build fail on ubuntu 18.04

Issue Description
I'm trying to build current master commit, but the build fails on ubuntu 18.04
Environment
ubuntu 18.04

tag or commit hash on which this occured
master
OS version: ubuntu 18.04

Here is the log of error occured:
FAILED: CMakeFiles/openr_bin.dir/openr/Main.cpp.o
/usr/bin/c++  -DFMT_LOCALE -DGFLAGS_IS_A_DLL=0 -I/tmp/fbcode_builder_getdeps-ZhomeZgdZopenrZbuildZfbcode_builder-root/repos/github.com-facebook-openr.git -I. -I/opt/facebook/re2-R1XCc2L15ALpkvbjVjkfoidVsPXjnGDG8ksFNARmizg/include -I/opt/facebook/libzmq-gn41ovlpYK63VEDWeg8M5sN4AzFJ0EHgoPkopuC08xg/include -isystem /opt/facebook/boost-kf4CALElOoOKdW_BQsSQtGGcsC3cmMDVBiSadJjAZcg/include -isystem /opt/facebook/fb303/include -isystem /opt/facebook/fbthrift/include -isystem /opt/facebook/folly/include -isystem /opt/facebook/double-conversion-KLOVP3MnqGD8CD6qyfSC0qHCLmWDTKUoRj7Xcv04GmM/include -isystem /opt/facebook/gflags-g8dDnqiYSWFBaA_iYwWmTKAicuNWJFWlVjc_qg0r_fk/include -isystem /opt/facebook/glog-DTjFLpvzyLWAKieaA0sAmyG_0SAz9UiDDjVwrJd89gY/include -isystem /opt/facebook/libevent-dtvP7TYdtYOXDTe3ViqRte8nkh5lY4Vqlie7VuYh4t0/include -isystem /opt/facebook/lz4-pLcX6qg17fAUJPqu4uMOosm5bDBAzrIAkRHj7pvAChQ/include -isystem /opt/facebook/zstd-QygZdEo2zXEVfOies4NwfhQujMEfr8oqifCnROwOfTg/include -isystem /opt/facebook/snappy-AYUfcUBRL4cdpKGcrmGt2LooExv9g8tFqPGuDnUBpvA/include -isystem /opt/facebook/fmt-DBfEjW6zLIyb73B3PSGPqFxW9p4DUksf1YMevoyi4OA/include -isystem /opt/facebook/wangle/include -isystem /opt/facebook/fizz/include -isystem /opt/facebook/libsodium-rCcHBB4cTz8S0Nei9c62IYlQKKNORHyZszYGt8wChdM/include -isystem /opt/facebook/fbzmq/include -Wall -Wextra -Wno-noexcept-type -Wno-maybe-uninitialized -Wno-deprecated-declarations -O2 -g -DNDEBUG   -std=gnu++1z -MD -MT CMakeFiles/openr_bin.dir/openr/Main.cpp.o -MF CMakeFiles/openr_bin.dir/openr/Main.cpp.o.d -o CMakeFiles/openr_bin.dir/openr/Main.cpp.o -c /tmp/fbcode_builder_getdeps-ZhomeZgdZopenrZbuildZfbcode_builder-root/repos/github.com-facebook-openr.git/openr/Main.cpp
/tmp/fbcode_builder_getdeps-ZhomeZgdZopenrZbuildZfbcode_builder-root/repos/github.com-facebook-openr.git/openr/Main.cpp:62:10: fatal error: folly/experimental/exception_tracer/ExceptionTracer.h: No such file or directory
 #include <folly/experimental/exception_tracer/ExceptionTracer.h>

It seems folly include dir do not have this header file? any suggestions?

Hi Sir,
This is known (and is why CI is failing). Just haven’t got a fix as internally we have this header file (not sure why it’s not Open Source yet).
We feel here we should do something similar to the way folly has a configure file that generates a cpp header (only way to get the macro into the translation unit). This allows you to have arbitrary CMake logic to define or unset a macro and ultimately have a #define VAR or #undef VAR:
Configure_file docs: https://cmake.org/cmake/help/latest/command/configure_file.html
We should be able to build without using Folly’s exception_tracer.

Thanks for your reply @cooperlees ! I also found a pull request from folly, https://github.com/facebook/folly/pull/1484
I'll give a try now.


padding

Hi, how to solve the image padding operation?

Hi @icvplayer ,
You can see issue #15 for more info on padding.


Exclude file from recursive search

cfn-lint version:  v0.10.2
I have plenty of CF template files in iac folder. I would like them to be recursively linting:
templates:
- iac/CloudFormation/**/*.yaml

But I would like also to ignore some files from directory. Do you support something like:
ignore-templates:
- iac/CloudFormation/notCfTempl.yaml

A second vote for this. Particularly frustrating that I can't exclude my buildspec.yml (for AWS CodeBuild) so that I can run from the root directory of my repository. It can be avoided by specifying and retaining all CloudFormation files in a particular directory. Would be a nice enhancement to see for an otherwise great little tool!

Released with v0.16.0


[Bug]

Describe the bug
Gap showing at the top of some apps (eg Mail) when using classic status bar
Screenshots

Please complete the following information:

Device: 6s
iOS Version: 12.4

Additional context
Using X style bar fixes the issue

We will release an update later today to fix this issue

This issue has bee fixed.


Completes transition to internal packaging

We formerly used historical conventions for project layout. After
summarizing earlier that the code here is only for use in CLI, we
started to move code under the internal package here
https://github.com/tetratelabs/getenvoy/pull/222#pullrequestreview-661637691
This completes the work, only leaving "e2e" and "main.go" exposed. We
have some other thinking to do about "e2e", but for now it should be ok
to leave as a separate dir.
See https://dave.cheney.net/2019/10/06/use-internal-packages-to-reduce-your-public-api-surface
See https://github.com/hashicorp/terraform/pull/28723

thanks again @mathetake!


The showDialog() call in stock_menu.dart does nothing

If you open the drop-down menu (top right) in the stocks app, then pick "Refresh", it should show a dialog. It does not. I've no idea why. I've tried tracing it in the debugger and the call definitely gets made.

I recommend we resolve this by deleting the stocks demo: https://github.com/flutter/flutter/issues/8374

Closing as this seems to work now.


[wip] docs: stacking guide updates for most recent pox implementation

@yknl is working on a stacking library that would invalidate this work. the new tutorial would be much simpler. closing in favor of the new lib docs updates in the future


Suggestion: Change output folder

Make it so you can change the output folder

This is for the video recorder plugins,

I don't think I can do that, as the .runelite folder is the only place where write permissions have not caused any issues for the RuneLite developers on different OSes.


BUG: Provide an API for SpatialObjectProperties that works with python

The dictionary used by SpatialObjectProperties is queried using a function that returns the dictionary value in a variable that is passed by reference: https://itk.org/Doxygen/html/classitk_1_1SpatialObjectProperty.html#aff2b1c659a8e77bdb6afeef0bab037fb
bool itk::SpatialObjectProperty::GetTagScalarValue ( const std::string & tag, double & value ) const

This function is not correctly wrapped by SWIG, and cannot be used from within python.
Here is a snippet of code that demonstrates the issue:
In [1]: import itk
In [2]: so = itk.TubeSpatialObject[3].New()
In [3]: so.GetProperty().SetTagScalarValue("foo",1) In [4]: ret = 0.0
In [5]: so.GetProperty().GetTagScalarValue("foo",ret)
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
Cell In[5], line 1
----> 1 so.GetProperty().GetTagScalarValue("foo",ret)
TypeError: in method 'itkSpatialObjectProperty_GetTagScalarValue', argument 3 of type 'double &'

This commit adds new functions that can be correctly wrapped.  Old functions are unmodified to preserve backward compatibility.

Thanks for your pull request @aylward It would be very disappointing if SWIG would still not support pass by reference or return by reference. I still hope that it can be enabled somehow. For pass by reference, StackOverflow Swig: How to wrap double& (double passed by reference)? suggested %include <typemaps.i> and some  %apply statement. Did you already try that out?

@N-Dekker - I saw the same stackoverflow post, but I didn't pursue it because it changes the signature of the function when wrapping - causing the wrapped API to not match the C++ API.   I didn't care for that break in philosophy compared to the rest of ITK's wrapping.
I am going to close this pull request and make another that contains only changes for the necessary Get statements.  This pull request had other changes to make a consistent API (offering non-get versions of every function, even if the original wrapped as-is).   Instead I'll reduce to the minimal changes for simplicity.   I'll also mark the non-standard return by reference as functions to be deprecated.   Stay tuned...


API endpoints handle last_modified field

Is your feature request related to a problem? Please describe.
We've changed the expected format of last_modified to try to be consistent, it is now: datetime.now(tz=timezone.utc).isoformat().replace("+00:00", "Z")
I think it would be preferable to enforce this through the API and not expect developers/users to remember to update the field when pushing updates.
Describe the solution you'd like
All endpoints automatically update last_modified with the correct format.

Possible duplicate of https://github.com/AllenNeuralDynamics/aind-lambda-functions/issues/130


Some unit test updates

to test restore reconcile - previously there could be a timing issue (see PR:
https://github.com/stolostron/cluster-backup-operator/pull/547)

Before the above PR, this test would fail approximately 4 out of 5 attempts

/test all

/test all

/test all


npm install -g webpack fails on docker container

Do you want to request a feature or report a bug?
Bug

What is the current behavior?
Command npm install -g webpack fails in a fresh ubuntu docker container. Please note npm install -g<EMAIL_ADDRESS>worked
Error log:
root@1ee245bf5bd9:# npm install -g webpack
/root/.nvm/versions/node/v7.4.0/bin/webpack -> /root/.nvm/versions/node/v7.4.0/lib/node_modules/webpack/bin/webpack.js

><EMAIL_ADDRESS>postinstall /root/.nvm/versions/node/v7.4.0/lib/node_modules/webpack/node_modules/uglifyjs-webpack-plugin
> node lib/post_install.js

sh: 1: node: Permission denied
/root/.nvm/versions/node/v7.4.0/lib
`-- (empty)

npm WARN optional SKIPPING OPTIONAL DEPENDENCY<EMAIL_ADDRESS>(node_modules/webpack/node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for<EMAIL_ADDRESS>wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm ERR! Linux 4.9.4-moby
npm ERR! argv "/root/.nvm/versions/node/v7.4.0/bin/node" "/root/.nvm/versions/node/v7.4.0/bin/npm" "install" "-g" "webpack"
npm ERR! node v7.4.0
npm ERR! npm  v4.0.5
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn

npm ERR<EMAIL_ADDRESS>postinstall: `node lib/post_install.js`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>postinstall script 'node lib/post_install.js'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the uglifyjs-webpack-plugin package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node lib/post_install.js
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs uglifyjs-webpack-plugin
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls uglifyjs-webpack-plugin
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /src/trimtool/ui/static/app/npm-debug.log

If the current behavior is a bug, please provide the steps to reproduce.
Do npm install -g webpack in a ubuntu docker container.

What is the expected behavior?
The webpack module should be installed.
Please mention other relevant information such as the browser version, Node.js version, webpack version and Operating System.
System Information :
Ubuntu
root@1ee245bf5bd9:# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 14.04.5 LTS
Release:        14.04
Codename:       trusty

NPM
root@1ee245bf5bd9:# npm --version
4.0.5

Node
root@1ee245bf5bd9:# node --version
v7.4.0

I feel like you're quiet a few feet deep in tech, and peeling off a bunch of those layers will help debug your particular situation.  The following info is probably really helpful:

Can you provide the exact container you're trying to run this in?  Is this one of the official docker images anyone can get from Docker Hub?
Could you also detail how you're running the docker container, including a dockerfile if you're using one, or the command line you're using?
I surmise you've installed nvm on your container, and are using that to install your node version.  From my own experience, using nvm isn't always straightforward, since there's a number of security considerations.  To eliminate nvm, are you able to run webpack using the official Docker node image?

@webpack-bot move to webpack-contrib/uglifyjs-webpack-plugin


The work on animation will be continued, but this will be after the summer holidays.


[5.9.12] Large bundle size (no tree shaking)

Describe the bug
I use rxjs@6 in my app (react-static 5.9.12). After the build process every operator is in the bundle what makes it quite large.
I think it's related to: https://github.com/ReactiveX/rxjs/issues/3765
As far as I understood, there is babel-preset-env package which transforms es6 module syntax to commonjs and it makes tree-shaking impossible. I've tried set babel-preset-env modules option to false but instead I got the following error on build:
  Error: /projects/repro/static.config.js:1
  (function (exports, require, module, __filename, __dirname) { import _regeneratorRuntime from 'babel-runtime/regenerator';

To Reproduce

react-static create & select basic template
yarn add rxjs
add some rxjs code to the app, eg.:

import { interval } from 'rxjs';
import { sample } from 'rxjs/operators';

const source = interval(1000);
const example = source.pipe(sample(interval(2000)));
const subscribe = example.subscribe(val => console.log(val));

yarn build
run webpack-bundle-analzyer dist/client-stats.json dist (must have webpack-bundle-analzyer installed globally)

Expected behavior
Bundle should contain only used rxjs operators.
Screenshots

How to deal with this? Please help 😢
Thanks

Hmm to be fair, not sure this is an RS-specific issue, more of a babel issue. There are quite a few modules that don't play well with tree shaking as I've noticed.

This is caused by a few things.
Some architectural challenges of RS5, the limitations of older Webpack, some limitations of my own software at the time.
Unfortunately the old aggressive code splitting plugin available in Webpack 2,3 is not compatible with the versions of m software that support Webpack 2,3
RS6 does a better job, and some of its underlying codebase which I own, now supports more aggressive and advanced code splitting


ci: add sanitization checks

Summary
Add CI Sanitization checks.
Invoked at build with cmake -DUNIT_TEST=ON -DENABLE_SANITIZERS=ON ..
Checklist

[x] Ready to be merged

Codecov Report

Merging #230 (77d4c54) into develop (6171bef) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           develop      #230   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           49        49
  Lines         1169      1169
=========================================
  Hits          1169      1169

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 6171bef...77d4c54. Read the comment docs.

Codecov Report

Merging #230 (77d4c54) into develop (6171bef) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           develop      #230   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           49        49
  Lines         1169      1169
=========================================
  Hits          1169      1169

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 6171bef...77d4c54. Read the comment docs.

platformio build failures: resolved in #233
windows build failures: resolved in #232

platformio build failures: resolved in #233
windows build failures: resolved in #232


⚠ ClamAV has degraded performance

In 5de7177, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 71 ms

Resolved: ClamAV performance has improved in a034616 after 8 minutes.


WorkerV2 - Cloud Run V2 API

New: Add support for Cloud Run API v2 (Worker)
Still ToDo:

Add in force parameter option for deleting jobs in future whenever that is fixed on GCPs end

https://github.com/googleapis/google-api-python-client/issues/2250

Overview

Add support for Cloud Run API v2 (Worker)

more features are available, for example longer timeouts

Closes https://github.com/PrefectHQ/prefect-gcp/issues/199

How to Test Locally:

Example

Anonymous Block example:

CloudRunJobV2(
    credentials=gcp_credentials_block,  # GCPCredentials Block
    image=(
        f"us-central1-docker.pkg.dev/{variables.GCP_PROJECT_ID}/prefect-flows/flows:"
        f"{variables.IMAGE_TAG}"
    ),
    region="us-central1",
    cpu=1,
    memory=512,
    memory_unit="Mi",
    env=variables.GCP_BLOCK_ENV,  # environment variables object
    keep_job=False,
    timeout=86400,  # 24 hours
    launch_stage="BETA",
    max_retries=1,
)

Screenshots

Starting Deployment/Flow

Starting in Cloud Run Jobs via Cloud Run API V2

Full 1 day timeout being used in example

Cancelling Example (currently delete all executions by hand instead of using Force parameter until GCP fixes that error in above issue)

Thank you, let me know of any/all questions/comments/feedback, happy to have worked on this.
Checklist

[X] References any related issue by including "Closes #" or "Closes ".

If no issue exists and your change is not a small fix, please create an issue first.

[X] Includes tests or only affects documentation.
[X] Passes pre-commit checks.

Run pre-commit install && pre-commit run --all locally for formatting and linting.

[X] Includes screenshots of documentation updates.

Run mkdocs serve view documentation locally.

[X] Summarizes PR's changes in CHANGELOG.md

hey @japerry911 - thank you so much for the work here!
I've done a quick run through the v2 worker in particular and have a few comments / questions 🙂

this is looking really good so far! we really appreciate thorough PRs like this - especially a more complex implementation like a worker 💙
would you be willing to copy the infra block implementation to a separate PR? i think it would be good for future reference if they were separate - plus we'll have to think a little about the ambiguity of Cloud Run v2 vs Cloud Run v2 Worker in the docs / collection registry. a related nit, could we update this PR name to be "{verb} {feature}" like "Add v2 Cloud Run API worker" (if that sounds good to you)?
i am wondering if there are some places we are using Optional where its simply a field having a default value, whose value should generally not be None (left comment on at least one of them)

I will review the tests and the rest as soon as I can, and take it for a spin :) ! feel free to reach out with any questions

@zzstoatzz  All this sounds great, thank you for diving in!
Good idea, I'll break it out into two branches over the next few days (can probably get it done by Friday morning). Should I open PR for just Cloud Run v2 Block first, then the worker after that merges, or what's the best way to go about it?
I left some comments/questions on a few of the modifications. Lemme know what you think, and I will make all of those updates. And lastly, I'll take a deeper look at "i am wondering if there are some places we are using Optional where its simply a field having a default value, whose value should generally not be None (left comment on at least one of them)".
Thanks again for review @zzstoatzz ! Looking forward to getting these PRs into the repo.

Good idea, I'll break it out into two branches over the next few days (can probably get it done by Friday morning). Should I open PR for just Cloud Run v2 Block first, then the worker after that merges, or what's the best way to go about it?

i think the worker is a good place to start if that sounds alright, since the worker implementations should be a little more up to date with our best practices in core and could inspire some updates to the infra block implementation.
thanks for the quick updates :)

Good idea, I'll break it out into two branches over the next few days (can probably get it done by Friday morning). Should I open PR for just Cloud Run v2 Block first, then the worker after that merges, or what's the best way to go about it?

i think the worker is a good place to start if that sounds alright, since the worker implementations should be a little more up to date with our best practices in core and could inspire some updates to the infra block implementation.
thanks for the quick updates :)

The worker uses these imports from the Block though:
from prefect_gcp.cloud_run_v2 import CloudRunJobV2Result, ExecutionV2, JobV2

That's why I went about merging them into 1 PR, since the block would only run with Agent 😿 .

Oh I see, I probably should just build those classes that are imported and keep the others out for a separate PR?

@zzstoatzz , hey Nate, I made the modifications we spoke about and tested them as well.
Let me know what you think!
Thank you!

hey @japerry911 - the code is looking great to me 🙂
I will QA this as soon as possible, then come back for a once over :)

hey @japerry911 - things are looking great!
I am going to discuss with the rest of the team on how exactly we should differentiate (if anything additional) this in the UI and then include this in a metadata scrape - I'll keep this open for the moment while I get that feedback.
I just want to thank you again for this super high quality contribution - thank you so much 💙.


Commands should output valid JSON to stdout

By default, all CLI commands should output JSON to stdout.
Currently, we have some commands that don't output valid json,
eg:
$ dce leases create ...
Lease created: {
        "accountId": "123456789012",
       ...
}

Other commands print valid JSON, but to stderr, for example, dce leases list

I would like to see some standardization around CLI output formatting.
Ideally, we'd have support for both JSON (computer-readable) and column/text (human-readable) formats.
Users could configure the output format via a --output=json CLI flag, or with a output: json config value in dce.yml
See how AWS controls CLI output formatting:
https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-output.html

Resolved in v0.5.0
We do not yet have custom formatters, but all commands should be printing valid JSON to stdout


Decorators in Babel6

How can I enable decorators in Babel >= 6?
This code works in babel5 repl
function Hack(classTarget) {
  classTarget.prototype.method = function() {
    console.log("Echo:", this.echo);
  }
}

@Hack
class Random {
  constructor() {
    this.echo = "Entropy";
  }
}

let obj = new Random();
obj.method();

But in version 6 i have:

Babel version: 6.3.13 (babel-core 6.3.13)
Installed: babel, babel-cli
Node version: 4.2.1
OS: OS X 10.11

This is the babel website repo - actually babel issues would be reported in phabracator (https://phabricator.babeljs.io/T2645).  There is also https://www.npmjs.com/package/babel-plugin-transform-decorators-legacy now.


[FOUNDATIONAL] Facilitate small atomic enhancements

This is a brief issue to possibly start discussion and so we do not forget.
Attn @tsalo  @satra
ATM, to accomplish the job, many BEPs need to introduce changes to

BIDS common principles (e.g. "Indexable metadata" of BEP001)
add new "entities" (_keys) (#367).

Quite often those changes are of interest for multiple BEPs, (e.g. _part for BEP001 (multiple contrasts) and BEP004 (SWI)), or even could be argued to be applicable to existing "raw" BIDS itself (e.g. bids dataset provenance, #369).
But being introduced in dedicated specialized BEPs they

lack proper review by wider BIDS community, and thus have more potential to introduce conceptual inconsistencies within BIDS
make BEPs development/review/acceptance stagnate
make more difficult for support tools (validator, pybids) to review/adopt them

I would propose or us to

improve contributing guide, in particular for BEPs, to RECOMMEND (if not REQUIRE) introducing any such changes as separate PRs against BIDS, with references to existing (or proposed) BEPs
work between/with existing BEPs to identify such atomic changes and propose them as separate PRs
for PRs add labels for each BEP (BEP001, ...) so we could see which PRs would be of use for which PR

@bids-standard/bep_leads @bids-standard/derivatives - I would value your input on this proposal

I would welcome this. The BEP guideline seems not to have been updated for quite some time, is not that easy to find, and might not be that well known to current BEP contributors.
A change in style of working that I realize we went through while extending MRI->MEG->EEG+iEEG, and time-wise somewhere between MEG and EEG+iEEG switching from google docs to github for managing the specification, is that the extension process now expects diffs/PRs, whereas it initially it was more like writing a (partially copied) specification that would be merged manually. Quite some older BEPs are still in the old style (full spec), whereas some of the newer BEPs seem to skip google docs (and thereby risk loosing part of the audience/stakeholders) and only do diffs/PRs.
Wrt the github process: each issue/PR is treated by github (the website) on its own. That causes confusion between the dependencies of issues/PRs (e.g. there is still a mix-up between common-derivatives and imaging-derivatives). Bugzilla and Jira have explicit mechanisms for  this. Adding "BEPxxx" to the name and colored tags is a step in the right direction, but still relatively poor (although possibly the best that we can do within github limits).
We might also consider github projects to structure the relation between, and work on issues/PRs. E.g. one project per BEP.
And/or we might consider to more explicitly use branches under the main bids-specification repo, e.g. by having BEP-draft branches (which could also be rendered on RTD). PRs that are specific to a BEP could initially be merged in the BEP specific branch.

work between/with existing BEPs to identify such atomic changes and propose them as separate PRs

I'm a strong +1 on this.
An immediate example is one @jasmainak and I discovered a while back  -- the concerns in BEP21 on re-annotating electrophysiological data strongly relate to concerns with re-annotating naturalistic stimuli for features of interest (such as used in @adelavega 's NeuroScout ) and I think corresponding to BEP02.
I completely agree with @yarikoptic that there's a strong danger of individual BEP leaders not realizing these connections (simply because it would require keeping all of the other BEPs in mind !) and therefore adopting different approaches to the same problem. Personally, I think this would be an ideal role for the steering committee, though I wonder what @robertoostenveld thinks.

Pinging @bids-standard/steering for opinions on this point:

agree with @yarikoptic that there's a strong danger of individual BEP leaders not realizing these connections (simply because it would require keeping all of the other BEPs in mind !) and therefore adopting different approaches to the same problem. Personally, I think this would be an ideal role for the steering committee

and any thoughts on how to actualize it :smile_cat:

and any thoughts on how to actualize it

I would have continued along "I would propose or us to" lines in the original description.  May be make  them a bit more specific with rules such as

any new _key-value pair (entity) should be submitted as a separate PR open for discussion (we could add a specific template for such PRs)

And then act on those few cases I have already identified (e.g., _part) and submit them as PRs, referencing corresponding BEPs.

Sorry @yarikoptic, I meant to ask specifically about how BIDS Steering could help with identifying cross-BEP points of convergence going forward. But yes, I think your suggestions make sense !

Thanks, actually I could need some help with the PR structure!
BW, Henk

On 14 Jan 2020, at 16:15, Yaroslav Halchenko<EMAIL_ADDRESS>wrote:
and any thoughts on how to actualize it
I would have continued along "I would propose or us to" lines in the original description. May be make them a bit more specific with rules such as
any new _key-value pair (entity) should be submitted as a separate PR open for discussion (we could add a specific template for such PRs)
And then act on those few cases I have already identified (e.g., _part) and submit them as PRs, referencing corresponding BEPs.
—
You are receiving this because you are on a team that was mentioned.
Reply to this email directly, view it on GitHub https://github.com/bids-standard/bids-specification/issues/371?email_source=notifications&email_token=AGT42LTTIOLVBXQJ23H7FP3Q5XJJRA5CNFSM4JM677LKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEI47BYI#issuecomment-574222561, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGT42LUNVF7XV3RNLUGJ6ALQ5XJJRANCNFSM4JM677LA.


updated http logger coverage

Coverage increased (+5.9%) to 52.799% when pulling 222ead5ab897c0726a6c8ff7bc13295e88574309 on coverage-increase into a231d43f7cc07e0c9771a4189e559b89d0f4c80b on develop.


Android SVG.toDataURL Rendering results in indexOutOfBoundsException

Greetings,
When I attempt to render a hidden SVG using toDataURL I fairly consistently end up with an java.lang.IndexOutOfBoundsException.  However, I do not encounter it at the same index consistently.
I have narrowed the exception down to being involved in GlyphContext.popContext every time.  However, I'm uncertain how the ArrayLists that are involved are getting out of sync with the mTop variable.
I have collected a few stack traces for when it has occurred:
Here are my relevant versions:
react-native-cli: 2.0.1
react-native: 0.58.4
react-native-svg: 9.2.4

The Device I am running this on is a Pixel 3 XL Running Android Pie (Android 9) Build Number PQ1A.190105.004
The SVG Element I am rendering has the following structure after I perform an auto-text sizing pass on it.  I am attempting to invoke the toDataURL method after a callback from onLayout being passed to the Svg element (not shown).
Here is the following structure.
  <Svg width={1000} height={720} fill="#ffff" style={{ width: 1000, height: 720 }}>
    <Group width={1000} height={720} scale={scale}>
      <Group x={46} y={46} width={908} height={628}>
        <Group x={0} y={0} width={908} height={380}>
          <G x={0} y={0} width={908} height={380}>
            <Rect
              width={908}
              height={380}
              fill="#fff0"
            />
            <Text
              lengthAdjust="spacingAndGlyphs"
              fill="#000"
              fontFamily="sans-serif"
              textAnchor="middle"
              alignmentBaseline="central"
              fontWeight="800"
            >
              {[{
                ax: 908 * 0.5,
                ay: 180 * 0.5
                text: "given",
                fontSize: 140
              }].map((line, index) => {
                return (
                  <TSpan
                    key={index}
                    x={line.ax}
                    y={line.ay}
                    fontSize={line.fontSize}
                  >
                    {line.text}
                  </TSpan>
                );
              })}
            </Text>
          </G>
          <G x={0} y={180} width={908} height={140}>
            <Rect
              width={908}
              height={140}
              fill="#fff0"
            />
            <Text
              lengthAdjust="spacingAndGlyphs"
              fill="#000"
              fontFamily="sans-serif"
              textAnchor="middle"
              alignmentBaseline="central"
              fontWeight="600"
            >
              {[{
                ax: 908 * 0.5,
                ay: 140 * 0.5
                text: "family",
                fontSize: 90
              }].map((line, index) => {
                return (
                  <TSpan
                    key={index}
                    x={line.ax}
                    y={line.ay}
                    fontSize={line.fontSize}
                  >
                    {line.text}
                  </TSpan>
                );
              })}
            </Text>
          </G>
          <G x={0} y={320} width={908} height={60}>
            <Rect
              width={908}
              height={60}
              fill="#fff0"
            />
            <Text
              lengthAdjust="spacingAndGlyphs"
              fill="#000"
              fontFamily="sans-serif"
              textAnchor="middle"
              alignmentBaseline="central"
              fontWeight="300"
            >
              {[{
                ax: 908 * 0.5,
                ay: 60 * 0.5
                text: "company",
                fontSize: 60
              }].map((line, index) => {
                return (
                  <TSpan
                    key={index}
                    x={line.ax}
                    y={line.ay}
                    fontSize={line.fontSize}
                  >
                    {line.text}
                  </TSpan>
                );
              })}
            </Text>
          </G>
        </Group>
        <Group x={0} y={380} width={908} height={248}>
          <Group y={0} width={908} height={208}>
            {badgeImageData && <Image width={908} height={188} href={{ uri: badgeImageData }} />}
          </Group>
          <G x={0} y={320} width={908} height={40}>
            <Rect
              width={908}
              height={40}
              fill="#fff0"
            />
            <Text
              lengthAdjust="spacingAndGlyphs"
              fill="#000"
              fontFamily="sans-serif"
              textAnchor="middle"
              alignmentBaseline="central"
              fontWeight="300"
            >
              {[{
                ax: 908 * 0.5,
                ay: 40 * 0.5
                text: "tag",
                fontSize: 40
              }].map((line, index) => {
                return (
                  <TSpan
                    key={index}
                    x={line.ax}
                    y={line.ay}
                    fontSize={line.fontSize}
                  >
                    {line.text}
                  </TSpan>
                );
              })}
            </Text>
          </G>
        </Group>
      </Group>
    </Group>
  </Svg>

Here are some of the stack traces I have collected:
D/AndroidRuntime: Shutting down VM
E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.app.my, PID: 20441
    java.lang.IndexOutOfBoundsException: Index: 2, Size: 2
        at java.util.ArrayList.remove(ArrayList.java:503)
        at com.horcrux.svg.GlyphContext.popContext(GlyphContext.java:264)
        at com.horcrux.svg.GroupView.popGlyphContext(GroupView.java:74)
        at com.horcrux.svg.TSpanView.getPath(TSpanView.java:104)
        at com.horcrux.svg.GroupView.getPath(GroupView.java:148)
        at com.horcrux.svg.TextView.getGroupPath(TextView.java:199)
        at com.horcrux.svg.TextView.draw(TextView.java:136)
        at com.horcrux.svg.RenderableView.render(RenderableView.java:311)
        at com.horcrux.svg.GroupView.drawGroup(GroupView.java:102)
        at com.horcrux.svg.GroupView.draw(GroupView.java:81)
        at com.horcrux.svg.RenderableView.render(RenderableView.java:311)
        at com.horcrux.svg.GroupView.drawGroup(GroupView.java:102)
        at com.horcrux.svg.GroupView.draw(GroupView.java:81)
        at com.horcrux.svg.RenderableView.render(RenderableView.java:311)
        at com.horcrux.svg.GroupView.drawGroup(GroupView.java:102)
        at com.horcrux.svg.GroupView.draw(GroupView.java:81)
        at com.horcrux.svg.RenderableView.render(RenderableView.java:311)
        at com.horcrux.svg.GroupView.drawGroup(GroupView.java:102)
        at com.horcrux.svg.GroupView.draw(GroupView.java:81)
        at com.horcrux.svg.RenderableView.render(RenderableView.java:311)
        at com.horcrux.svg.GroupView.drawGroup(GroupView.java:102)
        at com.horcrux.svg.GroupView.draw(GroupView.java:81)
        at com.horcrux.svg.RenderableView.render(RenderableView.java:311)
        at com.horcrux.svg.SvgView.drawChildren(SvgView.java:281)
        at com.horcrux.svg.SvgView.drawOutput(SvgView.java:233)
        at com.horcrux.svg.SvgView.onDraw(SvgView.java:102)
        at android.view.View.draw(View.java:20207)
        at android.view.View.updateDisplayListIfDirty(View.java:19082)
        at android.view.View.draw(View.java:19935)
        at android.view.ViewGroup.drawChild(ViewGroup.java:4333)
        at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4112)
        at com.facebook.react.views.view.ReactViewGroup.dispatchDraw(ReactViewGroup.java:672)
        at android.view.View.updateDisplayListIfDirty(View.java:19073)
        at android.view.View.draw(View.java:19935)
        at android.view.ViewGroup.drawChild(ViewGroup.java:4333)
        at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4112)
        at com.facebook.react.ReactRootView.dispatchDraw(ReactRootView.java:225)
        at android.view.View.updateDisplayListIfDirty(View.java:19073)
        at android.view.View.draw(View.java:19935)
        at android.view.ViewGroup.drawChild(ViewGroup.java:4333)
        at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4112)
        at android.view.View.updateDisplayListIfDirty(View.java:19073)
        at android.view.View.draw(View.java:19935)
        at android.view.ViewGroup.drawChild(ViewGroup.java:4333)
        at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4112)
        at android.view.View.updateDisplayListIfDirty(View.java:19073)
        at android.view.View.draw(View.java:19935)
        at android.view.ViewGroup.drawChild(ViewGroup.java:4333)
        at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4112)
        at android.view.View.draw(View.java:20210)
        at com.android.internal.policy.DecorView.draw(DecorView.java:780)
        at android.view.View.updateDisplayListIfDirty(View.java:19082)
        at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:686)
        at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:692)
        at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:801)
        at android.view.ViewRootImpl.draw(ViewRootImpl.java:3311)
        at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:3115)
        at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2484)
        at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1460)
        at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7183)
        at android.view.Choreographer$CallbackRecord.run(Choreographer.java:949)
        at android.view.Choreographer.doCallbacks(Choreographer.java:761)
        at android.view.Choreographer.doFrame(Choreographer.java:696)
E/AndroidRuntime:     at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:935)
        at android.os.Handler.handleCallback(Handler.java:873)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:193)
        at android.app.ActivityThread.main(ActivityThread.java:6718)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)

E/unknown:ReactNative: Exception in native call
    java.lang.ArrayIndexOutOfBoundsException: length=10; index=-1
        at java.util.ArrayList.get(ArrayList.java:439)
        at com.horcrux.svg.GlyphContext.popContext(GlyphContext.java:279)
        at com.horcrux.svg.GroupView.popGlyphContext(GroupView.java:74)
        at com.horcrux.svg.GroupView.drawGroup(GroupView.java:126)
        at com.horcrux.svg.GroupView.draw(GroupView.java:81)
        at com.horcrux.svg.RenderableView.render(RenderableView.java:311)
        at com.horcrux.svg.GroupView.drawGroup(GroupView.java:102)
        at com.horcrux.svg.GroupView.draw(GroupView.java:81)
        at com.horcrux.svg.RenderableView.render(RenderableView.java:311)
        at com.horcrux.svg.GroupView.drawGroup(GroupView.java:102)
        at com.horcrux.svg.GroupView.draw(GroupView.java:81)
        at com.horcrux.svg.RenderableView.render(RenderableView.java:311)
        at com.horcrux.svg.GroupView.drawGroup(GroupView.java:102)
        at com.horcrux.svg.GroupView.draw(GroupView.java:81)
        at com.horcrux.svg.RenderableView.render(RenderableView.java:311)
        at com.horcrux.svg.GroupView.drawGroup(GroupView.java:102)
        at com.horcrux.svg.GroupView.draw(GroupView.java:81)
        at com.horcrux.svg.RenderableView.render(RenderableView.java:311)
        at com.horcrux.svg.SvgView.drawChildren(SvgView.java:281)
        at com.horcrux.svg.SvgView.toDataURL(SvgView.java:315)
        at com.horcrux.svg.SvgViewModule.toDataURL(SvgViewModule.java:44)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.facebook.react.bridge.JavaMethodWrapper.invoke(JavaMethodWrapper.java:372)
        at com.facebook.react.bridge.JavaModuleWrapper.invoke(JavaModuleWrapper.java:158)
        at com.facebook.react.bridge.queue.NativeRunnable.run(Native Method)
        at android.os.Handler.handleCallback(Handler.java:873)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:29)
        at android.os.Looper.loop(Looper.java:193)
        at com.facebook.react.bridge.queue.MessageQueueThreadImpl$3.run(MessageQueueThreadImpl.java:192)
        at java.lang.Thread.run(Thread.java:764)

E/unknown:ReactNative: Exception in native call
    java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
        at java.util.ArrayList.get(ArrayList.java:437)
        at com.horcrux.svg.GlyphContext.popContext(GlyphContext.java:282)
        at com.horcrux.svg.GroupView.popGlyphContext(GroupView.java:74)
        at com.horcrux.svg.TextView.getGroupPath(TextView.java:200)
        at com.horcrux.svg.TextView.draw(TextView.java:136)
        at com.horcrux.svg.RenderableView.render(RenderableView.java:311)
        at com.horcrux.svg.GroupView.drawGroup(GroupView.java:102)
        at com.horcrux.svg.GroupView.draw(GroupView.java:81)
        at com.horcrux.svg.RenderableView.render(RenderableView.java:311)
        at com.horcrux.svg.GroupView.drawGroup(GroupView.java:102)
        at com.horcrux.svg.GroupView.draw(GroupView.java:81)
        at com.horcrux.svg.RenderableView.render(RenderableView.java:311)
        at com.horcrux.svg.GroupView.drawGroup(GroupView.java:102)
        at com.horcrux.svg.GroupView.draw(GroupView.java:81)
        at com.horcrux.svg.RenderableView.render(RenderableView.java:311)
        at com.horcrux.svg.GroupView.drawGroup(GroupView.java:102)
        at com.horcrux.svg.GroupView.draw(GroupView.java:81)
        at com.horcrux.svg.RenderableView.render(RenderableView.java:311)
        at com.horcrux.svg.GroupView.drawGroup(GroupView.java:102)
        at com.horcrux.svg.GroupView.draw(GroupView.java:81)
        at com.horcrux.svg.RenderableView.render(RenderableView.java:311)
        at com.horcrux.svg.SvgView.drawChildren(SvgView.java:281)
        at com.horcrux.svg.SvgView.toDataURL(SvgView.java:315)
        at com.horcrux.svg.SvgViewModule.toDataURL(SvgViewModule.java:44)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.facebook.react.bridge.JavaMethodWrapper.invoke(JavaMethodWrapper.java:372)
        at com.facebook.react.bridge.JavaModuleWrapper.invoke(JavaModuleWrapper.java:158)
        at com.facebook.react.bridge.queue.NativeRunnable.run(Native Method)
        at android.os.Handler.handleCallback(Handler.java:873)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:29)
        at android.os.Looper.loop(Looper.java:193)
        at com.facebook.react.bridge.queue.MessageQueueThreadImpl$3.run(MessageQueueThreadImpl.java:192)
        at java.lang.Thread.run(Thread.java:764)

I apologize for the long post, but I wanted to provide enough information to potentially identify where the issue may be.  As I stated before, it seems odd that the structures would become out-of-sync with the mTop variable, but that's what it seems like is occurring to me.
As a last note, this is the correct version of the plugin, but I did merge the fork to allow for the toDataURL calls to allow for a specified height and width, in order to rasterize a smaller image size.  However, it doesn't seem like it should affect anything.
Please let me know if you have any questions,
Thanks,
~ Ayiga

Very interesting. I wonder if it's being render twice at the same time, once by the normal view hierarchy, and once by the toDataUrl call. Could you try doing the call in the ref callback, like this:
        <Svg
          ref={ele => {
            ele.toDataURL(
              base64Image => {
                console.log(base64Image);
              }
            );
          }}

Alternatively, try doing the rendering a bit later using a setTimeout. I'll try running the code later. If you find any way to trigger it reliably, please let me know.

@msand I just woke up this morning, and I came to the conclusion that it must be executing the same code at the same time, as you suggested.  Once to draw the element in the hidden view, and another time to try and render the element as a string.
It would also explain the other errors that some people are getting on Android, as I have also been encountering them.
https://github.com/react-native-community/react-native-svg/issues/489 is caused by the resetProperties call in VirtualView.  But that's just when the issue becomes apparent.  The real reason is due to the iteration in VirtualView.mergeProperties.  Because two things could be running the mergeProperties code at roughly the same time, it causes the mOriginProperties to be populated by more things than are expected by  mLastMergedList.  This can be solved by writing to a temporary ArrayList inside the for loop and assigning to the private member mOriginProperties afterwards.
Ultimately, however, the crux of the issue is storing parts of the render state within the Objects that are representing the Elements themselves.  If the parts of the code that hold the render state could be moved out of those objects, the issue would go away entirely.  However, that would require re-writing much of the render / draw code to accept a passed GlyphContext around, and may be a bit of work.

I guess making a Lock on the root svg element and acquiring it in the root render and the toDataUrl method should ensure that only one render pass is active at any one time.
https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/locks/Lock.html

Or, just making SvgView.drawChildren synchronized

@Ayiga can you try with https://github.com/react-native-community/react-native-svg/commit/fdd8f93dac675263c1aed741f0d137345cdc1498

@msand So with fdd8f93 I end up getting an error from react-native upon invoking toDataURL.  It looks like react-native doesn't much appreciate method overloading as the Error states: RNSVGSvgViewManager.toDataURL got 2 arguments, expected 3.
If I rename the toDataURL method that allows for the options to something like, toDataURLWithOptions, and then modify the Svg.js file accordingly, I no longer receive that crash.
It looks like I can get a single SVG to compute, but if I queue them up back-to-back I end up with a width and height must be > 0 error.
I should also note, that I did attempt the toDataURL call with the specified width and height, and the resulting image is the correct size, but the contents are still rendered at the scaled resolution, meaning the contents gets cut off on my Pixel 3 XL. (I know this is referencing another issue, but I figured I'd let you know, either way).

@Ayiga I suspect there will still be concurrency issue in your patch, the drawChildren method will need to be synchronized at the very least, but the toDataUrl method which has a custom size on the canvas will also need to be synchronized, and, it will need to call
        clearChildCache();

As the first and the last thing it does. Otherwise, any paths which have % units dependant on the width, height or diagonal, will render incorrectly.

Also, if the GlyphContext pop is called a different number of times than push, then it's a bug and it should certainly throw an exception.

@msand there may be concurrency issues.  To be honest I wrote the patch just to get things working and I committed it after the fact, so it doesn't have the changes from the patches you were working on.
Also, to be fair my patch still gets the width and height issue occasionally as well, so in an attempt to counteract that issue, I added a small delay before retrieving the data URL.  However, since I'm waiting a static amount of time, there's still no real guarantee that it will resolve the width and `height issues.
the GlyphContext.push and GlyphContext.pop appear to be balanced in all places that call them, which is why the issue was confusing to me in the first place.  The ultimate cause of the issue comes down to two different rendering processes being called at once, and the GlyphContext being replaced in the Group element itself.  The patch I wrote avoids this by not storing the GlyphContext on the Group, so it must be passed almost everywhere.  In doing this, there's no way for the GlyphContext on a Group to be replaced, so the push and pop calls seem to remain balanced.  But I do agree, that poping more times than pushing is an error, and perhaps that should be handled appropriately.
I would imagine that perhaps your original path with the synchronized keyword addition may also solve the problem, but I haven't tested it thoroughly to be absolutely certain.  Since I was already moving forward with the patch I had written and I had a deadline, I didn't have the time to give it it's proper due-diligence yet.  Although it still needs to be modified to fix the method Overloading issue.  Based on your patch, while renaming the overloaded methods to avoid the error, it does appear that the crash due to a different number of push and pops being called is no longer occurring, so that is definitely one way to solve that problem.
When it comes to width and height of the rendered output and the devicePixelRatio of the device, I find this somewhat problematic.  The toDataURL call does.  As an example, consider the SVG output from my example.  (In my debug versions I add a dashed line around certain elements to help me with layout).
When submitting through the non-height and width overrides, I get the following results:

And then, when using the width and height overrides, I see the following:

Now this is due in large part, I suspect, to using the default density supplied by Virtual View and having no way to override it.  It seems, to me, that the width and height should always be multiplied by this density scale, and in order to make the width and height aspects work like this, they would need to be multiplied by the desired density.  Ultimately it means that the target density may need to be another field that is passed in, and it would default to the device's.  On iOS this is much easier as the ImageContext that is created can automatically be given a scale.  Using this information, it may be better, or even necessary, to have the width, height, and density live on the GlyphContext itself (It already stores the width and height).
Please let me know if you have any questions,
Thanks,
~ Ayiga

Can you try with the develop branch, I've made some fixes to toDataUrl and am hoping it would resolve your issues as well.

I got the same error, which stable version i can use ... toDataURL() was working perfectly, and now through this error:
RNSVGSvgViewManager.toDataURL got 2 arguments, expected 3 .

Can you try with v9.2.5 ?
This seems to work fine at least:
import React, { Component } from 'react';
import { View, Image, StyleSheet } from 'react-native';
import Svg, { Path } from 'react-native-svg';

class SvgComponent extends Component {
  state = {};
  onRef = ref => {
    if (ref) {
      this.ref = ref;
    }
  };
  onLayout = () => {
    this.ref.toDataURL(base64 => {
      this.setState({ base64 });
    });
  };
  render() {
    return (
      <View style={{ flex: 1 }}>
        <Svg
          ref={this.onRef}
          onLayout={this.onLayout}
          viewBox="0 0 400 400"
          width="100%"
          {...this.props}
          height="250"
        >
          <Path fill="none" stroke="#00f" d="M1 1h398v398H1z" />
          <Path
            d="M100 100h200L200 300z"
            fill="red"
            stroke="#00f"
            strokeWidth={3}
          />
        </Svg>
        <View
          style={{
            width: '100%',
            flex: 1,
            marginTop: 5,
            borderWidth: 1,
            alignItems: 'center',
            justifyContent: 'center',
          }}
        >
          {this.state.base64 && (
            <Image
              source={{ uri: `data:image/png;base64,${this.state.base64}` }}
              style={{ width: 250, height: 250 }}
            />
          )}
        </View>
      </View>
    );
  }
}
export default class App extends React.Component {
  render() {
    return (
      <View style={styles.container}>
        <SvgComponent />
      </View>
    );
  }
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    paddingTop: 50,
    backgroundColor: '#ecf0f1',
    padding: 8,
  },
});

Thank you :) ... I tried with v 9.2.3 as well, and it works perfectly like before


Add import CoreFoundation for CFBooleanGetTypeID and CFGetTypeID

This supersedes #428. See https://github.com/thoughtbot/Argo/pull/428#issuecomment-258727596.
I confirmed this makes the library buildable on Linux.

Closing as per the comment: https://github.com/thoughtbot/Argo/pull/428#issuecomment-258846778


Deeplink for guests is not working

When opening a deeplink to a chat with a guest user, teams cannot start the conversation properly.

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

ID: 45541337-ecd7-5cf6-cbe4-3f0d2f39aa79
Version Independent ID: 6b4203f0-2844-06c9-eaa3-9cc03e6f76c0
Content: Create deep links to content - Teams
Content Source: msteams-platform/concepts/build-and-test/deep-links.md
Product: msteams
GitHub Login: @laujan
Microsoft Alias: lajanuar

@SantiCuinas - Could you please confirm if your issue has resolved or still looking for any help?


Users not getting updates from old hbagdi/deck homebrew tap

I didn't realize there were some new recent releases to decK because my homebrew was using the old hbagdi/deck tap. I'm sure I'm not the only one. :)
Can we look into ways to help get users onto the new kong/deck tap?
Thanks!

I just pushed the an update to hbagdi/deck tap as well. I'll continue to do this as newer versions of decK are released.
Hope that solves the issue. Please re-open if not.


Desktop version of Playground removes extensions object when using tracing

This issue pertains to:

[ ] GraphQL Playground - Electron App
[x] GraphQL Playground
[ ] GraphQL Playground Middleware

What OS and OS version are you experiencing the issue(s) on?
Mac OS X Sierra 10.12.6
What version of graphql-playground(-electron/-middleware) are you experience the issue(s) on?

Connecting to a GraphQL API that has implemented Apollo Tracing.
https://www.npmjs.com/package/apollo-tracing
When running a query, expect to see tracing data in the Tracing panel, and data and extensions objects in the response panel.
What is the actual behavior?
Connecting to a GraphQL API that has implemented Apollo Tracing.
When running a query, we now get the Playground tracing panel data (awesome), but the GraphQL response itself no longer includes the extensions object, just the data object.
What steps may we take to reproduce the behavior?
If needed, I can provide a link to our API.
Screenshots of response for the same query in GraphiQL and GraphQL Playground MacOS v1.3.0

Seems to happen here: https://github.com/graphcool/graphql-playground/blob/master/packages/graphql-playground/src/components/Playground/GraphQLEditor.tsx#L904

This is not really a bug but something that should be configurable. I suggest the following setting: ```json
{ "tracing.hideExtensionsResponse": true }

It's important to note that the current implementation deletes the entire extensions key. Even if this was configurable, it should only remove tracing from extensions, not everything that's in there!

I'll tackle this tomorrow morning


Scala Common Enrich: use sbt-buildinfo (closes #3625)

Seems like Travis failed with apt-get update.   Is there a way I could trigger the build again?
Using Scala 2.11.12
3.34s$ sudo apt-get -qq update
W: http://ppa.launchpad.net/couchdb/stable/ubuntu/dists/trusty/Release.gpg: Signature by key 15866BAFD9BCC4F3C1E0DFC7D69548E1C17EAB57 uses weak digest algorithm (SHA1)
W: GPG error: https://packagecloud.io/github/git-lfs/ubuntu trusty InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 6B05F25D762E3157
W: The repository 'https://packagecloud.io/github/git-lfs/ubuntu trusty InRelease' is not signed.
W: There is no public key available for the following key IDs:
6B05F25D762E3157
E: Failed to fetch http://security.ubuntu.com/ubuntu/dists/trusty-security/main/source/Sources.gz  Hash Sum mismatch
E: Failed to fetch http://security.ubuntu.com/ubuntu/dists/trusty-security/main/binary-amd64/Packages.gz  Hash Sum mismatch
E: Some index files failed to download. They have been ignored, or old ones used instead.
The command "sudo apt-get -qq update" failed and exited with 100 during .
Your build has been stopped.

Triggered it for you @arunma

Incorporated into #3965 , thanks a lot! :+1:


Go Live

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

File
Status
Preview URL
Details

.openpublishing.redirection.json
:white_check_mark:Succeeded

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


fail to add devices on my adapter (nanoleaf NL08_0800)

Hi,
I created a new adapter based on the base adapter for the Nanoleaf smart ivy NL08_0800 (supported by Zigbee2Mqtt) and took the following stepos:
created folder "nanoleaf" in "adapters"
copied "base_adaper.py" and renamed to "NL08_0800.py"
from adapters.base_adapter import Adapter
from devices.dimmer_switch import DimmerSwitch

class NL08_0800(Adapter):
    def __init__(self, devices):
        super().__init__(devices)
        self.devices.append(DimmerSwitch(devices, 'dimmer', 'brightness'))

next, I updated 'plugin.py':
from adapters.nanoleaf.NL08_0800 import NL08_0800
onStart method:
      self.adapter_by_model = {
           'NL08-0800': NL08_0800,  # Nanoleaf Ivy smart bulb

Then, I create the hardware in Domoticz (logging to 'debug'). I see the messages coming in from MQTT with the (in my case 3) bulbs in the device list:
2018-10-16 21:53:55.583 (Zigbee2MQTT) MQTT message: zigbee2mqtt/bridge/log {'message': [{'type': 'EndDevice', 'friendly_name': 'Bar1', 'model': 'NL08-0800', 'ieeeAddr': '0x000d6f000b4ab0c5'}, {'type': 'EndDevice', 'friendly_name': 'Bar2', 'model': 'NL08-0800', 'ieeeAddr': '0x000d6f000b49be9a'}, {'type': 'EndDevice', 'friendly_name': 'Bar3', 'model': 'NL08-0800', 'ieeeAddr': '0x000d6f000b49880c'}], 'type': 'devices'}
But no devices are being created. What am I doing wrong?
I obviously copied all files to the correct location. I'm running Domoticz v4.10051 on a Raspberry Pi 3. I updated Raspian yesterday.

Plugin creates devices when it receives the mqtt message with device status for the first time. Have you received any other messsages apart of /bridge/log?

I attached a file with logging, I started to update the device with the plugin as I made it.
Secondly, I updated the self.adapter_by_model set to have the model of my bulbs point to one of the existing adapters. It still doesn't work, no devices added to domoticz.
On further inspection of the code, I do not find a call to create_device (except in _create_device) or _create_device in any of the classes. Where is this supposed to happen?
Any advice welcome.....

Hi,
I do not know of any way to trigger such a message. In the mean time, I did the following:

went out to buy a set of IKEA TRADFRI LED bulb E27 600 lumen model LED1624G9
paired them, works fine (added them to adapter_by_model set)
used power cycles on both the IKEA and Nanoleaf bulbs

None of them gave any other then the initial message. I noticeds that the devices you have now, are all sensor style/input devices, no actuators/outputs like the lights. I did not study the Zigbee protocol, but could it be they do not send regular status updates (although it surprises me the do not send some sort of notification on power on)?
Later today (central european time) I'll try to force the devices into domoticz to see if I can actually control them. Any suggestion on where to create these? I'll give it a go in 'onStart' of the plugin.

Hi,
I've got it (roughly) working. I updated the following:

the plugin's onMQTTPublish method (moved the part to handle the message which creates the device to create them on the log message)
the device.py's handle_message method to handle state changes (on top of brightness)

and some more minor stuff. Shall I create a pull request?

@JanJaapKo yes, sure, feel free to create a PR if it adds support for new devices

Hi @stas-demydiuk  I've got it working so far:
both lights switch on/off
both lights can be dimmed
still working on the color setting of the IKEA's
But I'd like to merge this. However, I can't create a branch. Probably a rights issue. Can you grant me the rights to do so?
Thanks and looking forward to your review comments

@JanJaapKo you need to fork this repo, push to your local copy and then you'll be able to create pull-request