Prune list of music players

This extension should support only the most popular players, and support them reliably.
There are many players currently supported that are like #300,000 on alexa.com. For example, http://www.alexa.com/siteinfo/phishtracks.com.
For less popular sites like these, propose a spec along the lines of http://smus.com/remote-controls-web-media/. The extension can parse the page for these salient control elements and synthesize click events on them.

:+1: (even though I wrote the support for phishtracks :smile: )

Actually, I'd like to propose an alternative approach here. Getting the host site to make modifications to support this extension seems unlikely until there is a well defined spec in place.
However, we could allow end users to write/install adapters for any arbitrary site they'd like. This would be similar to a developer submitting an adapter to this repo, but would not require the core extension to maintain them all.
One downside would be that we'd have to open the extension manifest to allow access to ALL URLs rather than the whitelist we use currently.

Alternatively, what about a website providing a selectable list of music players. Depending on the music players you selected it will generate a .crx with your players. But I am not sure if that would work because of chrome forcing every .crx to come from the chrome web store.

Generating a crx is out of the question. I think the right approach is the
one that Valera is currently taking in
https://github.com/borismus/keysocket/pull/122
On Thu, May 7, 2015, 8:00 AM Scarwolf<EMAIL_ADDRESS>wrote:

Alternatively, what about a website providing a selectable list of music
players. Depending on the music players you selected it will generate a
.crx with your players. But I am not sure if that would work because of
chrome forcing every .crx to come from the chrome web store.
—
Reply to this email directly or view it on GitHub
https://github.com/borismus/keysocket/issues/111#issuecomment-99899907.

This does require checking every site for a meta tag, but I think it's
still worth it.
On Thu, May 7, 2015, 8:17 AM Boris Smus<EMAIL_ADDRESS>wrote:

Generating a crx is out of the question. I think the right approach is the
one that Valera is currently taking in
https://github.com/borismus/keysocket/pull/122
On Thu, May 7, 2015, 8:00 AM Scarwolf<EMAIL_ADDRESS>wrote:

Alternatively, what about a website providing a selectable list of music
players. Depending on the music players you selected it will generate a
.crx with your players. But I am not sure if that would work because of
chrome forcing every .crx to come from the chrome web store.
—
Reply to this email directly or view it on GitHub
https://github.com/borismus/keysocket/issues/111#issuecomment-99899907.

Good luck convincing Spotify & Co. to use meta Tags like these. ATM, the don't.

Of course they won't. But many of the smaller players might. Some of the
players will need to be hard coded but this change would support the long
tail.
On Thu, May 7, 2015, 8:20 AM Scarwolf<EMAIL_ADDRESS>wrote:

Good luck convincing Spotify & Co. to use meta Tags like these. ATM, the
don't.
—
Reply to this email directly or view it on GitHub
https://github.com/borismus/keysocket/issues/111#issuecomment-99907735.

I know this is a really old issue, but honestly, I feel that pruning support for sites is an event that will push users away from Keysocket.  I feel this extension is intended to provide support where sites don't (or can't), including the biggest sites, but also the smaller ones, and to remove support for anything is something that always dissuades users from sticking with the extension.  While it's harder to maintain each and every site, we can also designate specific contributors to different websites (preferably ones they use if possible), and it shouldn't be too challenging to, if needed, update sites with simple players when someone reports an issue!

I propose this policy:

Currently, as user can't add site for him by his own, we should merge all PR's provided the support to keep the extension single in store. If we skip RP's, users intended to push their own clones, what is not good for all.
A little bit later we should provide support to add player on per-user level. We need some king of plug-in system, which is common for the kind of software like Key Socket extension.


Cannot list account packages

Packages are listed for other frameworks fine
e.g. for psake we have https://www.nuget.org/packages/psake
but when I try the same for expand it fails
https://www.nuget.org/packages/expand

@apobekiaris ,
https://www.nuget.org/packages/psake points to a package called 'psake'
since there's no package called 'expand' a similar link will not work.


querySelector cannot find elements based on properties set from code

Add this code to any Polymer element (and add iron-icons and paper-icon-button links):
  attached() {
    var el = document.createElement('paper-icon-button');
    el.icon = 'cloud';
    Polymer.dom(this.root).appendChild(el);
    Polymer.dom.flush();
    console.log(Polymer.dom(this.root).querySelector('paper-icon-button').icon);
    console.log(Polymer.dom(this.root).querySelector('paper-icon-button[icon=cloud]'));
  },

The code works - I can see a cloud icon in the component. The first console.log() prints cloud, as expected. The second one prints null - it can't find the element based on this property, and that's the problem. I expect querySelector to be able to find elements based on properties set from code.
As a workaround, if I do el.setAttribute('icon','cloud'), then the second console.log() also works. But I can guess reflecting properties like this into the DOM is not always scalable. Also this code is much uglier, I'd rather do querySelectorAll().filter(), but I'd really love a proper solution instead.

@fejesjoco If I am not mistaken, the value of an attribute in a querySelector must be escaped. E.g. console.log(Polymer.dom(this.root).querySelector('paper-icon-button[icon="cloud"]'));

Escaping is not needed, you can see it works with my workaround. I tried this anyway but it didn't change the outcome.

you're right that the second selector Polymer.dom(this.root).querySelector('paper-icon-button[icon=cloud]') doesn't work because the icon attribute is not reflected to the attributes.
Just out of interest, is there a specific reason why you imperatively create the paper-icon-button and then inject it, instead of constructing your dom in the elements template? If you did the latter, you could easily create a dom with attributes that was easy to select. Also, maybe you can elaborate what you'd use that selector for?

I'm using a framework that creates a toolbar with buttons and expects to create its own DOM. My code just implements an interface where I tell it to create paper-icon-button's. And then I need to query these buttons for unit tests only.
My expectation is that if Polymer accepts both properties and attributes when setting the icon of the paper-icon-button, it should also work the same way when using querySelector to find it.

@fejesjoco I think your original message sums the situation up well.

querySelector doesn't select properties, only attributes. This is a part of the DOM API, and we have no control over it.

Properties don't reflect to attributes automatically because it's an extra runtime cost that's often unnecessary and frequently (in the case of object and array properties, for example) pretty much meaningless.

If you want to be able to style based on a property or select it using querySelector, you need to either use reflectToAttribute: true or set the attribute directly (for example, using attribute bindings. In your case, setting the attribute manually is the way to go.

Closing per above comment and the fact that Polymer.dom has been deprecated.


Add CHIPageControl to Activity Indicator

Project URL
https://github.com/ChiliLabs/CHIPageControl
Description
Add CHIPageControl to Activity Indicator
Why it should be included to awesome-ios (optional)
it's awesome :)
Checklist

[x] Only one project/change is in this pull request
[x] Addition in chronological order (bottom of category)
[x] Supports iOS 9 / tvOS 10 or later
[x] Supports Swift 3
[x] Has a commit from less than 2 years ago
[x] Has a clear README in English

          1 Error

:no_entry_sign:
Found 1 link issue

Link issue by awesome_bot

Line
Status
Link

2209
Error
http://alcatraz.io/  getaddrinfo: Name or service not known

  Generated by :no_entry_sign: Danger

Hi there!
Awesome indeed! I'm in love with this component and will probably use it on my next project.
I just need you to move it to a more suiting category, which in the case of CHIPageControl would be UI. We'll get this merged ASAP after you move it.
Thank you! 🙌

@chili-ios Nice lib 👌

@chili-ios thanks for contributing to awesome-ios 🎉


Uninstall during extension upgrade prompts with errors

Testing https://github.com/Microsoft/vscode/issues/52811

Manually install a version of an extension that is earlier than what is in the marketplace. For example, I built a version of the vscode-docker extension that is version 0.0.25 and installed it with code-insiders --install-extension ...
Open VS Code, open extension viewlet and see that there is a prompt to upgrade to 0.0.27. Click on the update button in the editor (not in the extension viewlet)
Notice how in the editor view the button changes to Uninstall. Click on that while installing
Result is a Failed to update: 'peterjausovec.vscode-docker'. notification
Now, in the editor view the button is back to Update to 0.0.27, click on it
Result: Nothing happens
Click again, get another error prompt.
Reload window, the extension is no longer installed

Editor should not show Uninstall action while the extension is being installed. It should show Installing Action


interpolation fails when original string has an ampersand

using a fork of the codepen in #211 I tested strings with ampersands, for example for html entities.
it basically ignores the translation
related to #178 but checks that < >work at least for a simple case
http://codepen.io/anon/pen/zGXGMN
markup
<p translate>Nothing here…</p>

the catalog:
gettextCatalog.setStrings("nl", {
      "Nothing here": "Niets hier",
      "yet": "nog",
      "Nothing here…": "Niets hier",
});

Looks like duplicate


Creating Stargazer's illusions creates Spectre's illusions

Not confirmed. It creates Stargazer's illusions. Perhaps you meant a bug with Dota's illusion abilities (e.g., Shadow Demon's Disruption), which is not fixable without it's rewrite. In that case create another issue.


Adds external plugins to the bundle dockerfile

Adds known drivers to molecule Dockerfile image and adds a minimal verification.

This awaits a next release, right? I see https://quay.io/repository/ansible/molecule?tab=tags has 3.0.4.


Accessiblity support (like caniuse)

1-3 rating scale:
1 = no accessibility support
2 = partial support
3 = full support
for each demo

Any reason to even have demos that can't reach 3 without JS? If you can't reach 3 without JS, then you absolutely need JS.

Yeah, i think its still a good demonstration of the powers of CSS (the point of this project is a showcase of "you can do things without JS that you may not have realized", which allow developers to be inspired by/build off of and learn new concepts. I think this is good for experimentation and learning purposes. It also doesn't mean there isn't a way for it to be fully a11y-compliant necessarily, but it means that we haven't found a way to make it a 3 yet, which I think would counteract the spirit of the project.

I like the idea; it definitely hinges on the "you MIGHT" need JS part. And more information is better than none.
That said, part of me is afraid people will take even more accessibility shortcuts than they already do. But I think my fears about that have already been expressed elsewhere :)

Nice idea!
I fiddled with the below mockups:

Thoughts please? :)

Nice @shadeed :) I was thinking it could also open up with more info

Also a thought, maybe accessibility support should be written out:

Accessibility Support: none
Accessibility Support: partial
Accessibility Support: compliant

With links to relevant content


make error

Hi, nate. When compile:
make[2]: *** No rule to make target 'src/googletest-build/googlemock/gtest/libgtest.a', needed by 'deeplcd-test'。 停止。
CMakeFiles/Makefile2:211: recipe for target 'CMakeFiles/deeplcd-test.dir/all' failed
make[1]: *** [CMakeFiles/deeplcd-test.dir/all] Error 2
Makefile:94: recipe for target 'all' failed
make: *** [all] Error 2
Do you know how to deal with this issue??

Yes the gtest repo changed their code so that my method of compiling against the current repo fails. I do not have a good fix for this yet, but all of the code besides the unit tests will still work. If you do not want to see the error simply set the BUILD_TESTS cmake option to off when compiling for now until I can fix the unit test compiling.

Yes the gtest repo changed their code so that my method of compiling against the current repo fails. I do not have a good fix for this yet, but all of the code besides the unit tests will still work. If you do not want to see the error simply set the BUILD_TESTS cmake option to off when compiling for now until I can fix the unit test compiling.

Thanks a lot ! Nate, have a nice day :D

I fixed it by forking an older gtest.


Removing images not used by any file and which are SFI hits

I saved local copies of the images, just in case.


OIDC compatibility — Self-Issued OpenID Provider

Apologies if I’ve made faulty connections, but the way tdw is described seems to align very well with this:
https://openid.net/specs/openid-connect-self-issued-v2-1_0.html
https://medium.com/decentralized-identity/where-to-begin-with-oidc-and-siop-7dd186c89796
In other words, could tdw be used as a [7.2.3.] Decentralized Identifier in a Self-Issued OpenID Provider?
I guess I’m looking for a modern sequel to the discontinued did-siop, which I see some of you here co-authored 💖
The exact fit of SOIP v2 notwithstanding, I think OIDC compatibility makes a lot of sense for an optional (and equally  web-native) ID management layer on top of tdw, or something functionally similar to it.
Further reading:

https://github.com/sebadob/rauthy (very light OIDC server)
https://socialhub.activitypub.rocks/t/autonomous-identity-for-the-pluriverse-based-on-oauth-oidc/3675?u=erlend_sh
https://blog.erlend.sh/weird-netizens

Yes, that is correct. I would guess that any SIOP deployments using DIDs are using did:web and any use of did:web can be improved by transitioning to did:tdw.
Interesting stuff!


Android 12: VDEX file version 027 - Invalid Vdex header

Sample VDEX
https://transfer.sh/wcqO6o/boot.img
Magic header
[18:06 edu@xps boot] >  r2 boot.vdex
 -- Order pizza for $12.48? [Y/n]
[0x00000000]> pm
0x00000000 1 Android VDEX file version 027
[0x00000000]>

Vdextractor log
18:05 edu@xps boot] >  /tmp/vdexExtractor -i boot.vdex
[INFO] Processing 1 file(s) from boot.vdex
[ERROR] Unsupported Vdex version
[WARNING] Invalid Vdex header - skipping 'boot.vdex'
[INFO] 0 out of 0 Vdex files have been processed
[INFO] 0 Dex files have been extracted in total
[INFO] Extracted Dex files are available in '.'

+1

have you fix this?

Same problem for Android 13 - did anyone ever get to the bottom of this?

Has anyone solved it yet? It happened to me

https://github.com/ice-black-tea/archives/releases/tag/vdexExtractor-20240430


 Switch to ruff to simplify the config on this repo.

[x] Remove unused .bumpversion.cfg file
[x] Remove unused Makefile file
[x] Adopt ruff
[x] Use a couple of ignore rules for now, which could be revisited later
[x] Clean up pre-commit config
[x] Run black
[x] Lint the code base
[x] Add check-release workflow to potentially be able to use the releaser later on

nice thanks!


TestWatchCancelRunning leaking goroutines

Appears to be a separate issue from #4388
=== RUN   TestWatchCancelRunning
2016-02-12 02:35:35.592553 I | etcdserver: name = node4916347055179006085
2016-02-12 02:35:35.592699 I | etcdserver: data dir = /tmp/etcd738258171
2016-02-12 02:35:35.592748 I | etcdserver: member dir = /tmp/etcd738258171/member
2016-02-12 02:35:35.592794 I | etcdserver: heartbeat = 10ms
2016-02-12 02:35:35.592833 I | etcdserver: election = 100ms
2016-02-12 02:35:35.592876 I | etcdserver: snapshot count = 0
2016-02-12 02:35:35.592923 I | etcdserver: advertise client URLs = http://<IP_ADDRESS>:20432
2016-02-12 02:35:35.592973 I | etcdserver: initial advertise peer URLs = http://<IP_ADDRESS>:20431
2016-02-12 02:35:35.593012 I | etcdserver: initial cluster = node2422633343769195722=http://<IP_ADDRESS>:20427,node4916347055179006085=http://<IP_ADDRESS>:20431,node7272623383804356993=http://<IP_ADDRESS>:20429
2016-02-12 02:35:35.593295 I | etcdserver: starting member 7f8b30875bee3a52 in cluster 2425d6eaf12d4a88
2016-02-12 02:35:35.593357 I | raft: 7f8b30875bee3a52 became follower at term 0
2016-02-12 02:35:35.593423 I | raft: newRaft 7f8b30875bee3a52 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
2016-02-12 02:35:35.593470 I | raft: 7f8b30875bee3a52 became follower at term 1
2016-02-12 02:35:35.605940 I | etcdserver: name = node7272623383804356993
2016-02-12 02:35:35.607874 I | etcdserver: data dir = /tmp/etcd368743180
2016-02-12 02:35:35.607935 I | etcdserver: member dir = /tmp/etcd368743180/member
2016-02-12 02:35:35.607986 I | etcdserver: heartbeat = 10ms
2016-02-12 02:35:35.608032 I | etcdserver: election = 100ms
2016-02-12 02:35:35.608079 I | etcdserver: snapshot count = 0
2016-02-12 02:35:35.608131 I | etcdserver: advertise client URLs = http://<IP_ADDRESS>:20430
2016-02-12 02:35:35.608183 I | etcdserver: initial advertise peer URLs = http://<IP_ADDRESS>:20429
2016-02-12 02:35:35.608228 I | etcdserver: initial cluster = node2422633343769195722=http://<IP_ADDRESS>:20427,node4916347055179006085=http://<IP_ADDRESS>:20431,node7272623383804356993=http://<IP_ADDRESS>:20429
2016-02-12 02:35:35.608512 I | etcdserver: starting member 6da8c910de8e68c3 in cluster 2425d6eaf12d4a88
2016-02-12 02:35:35.608573 I | raft: 6da8c910de8e68c3 became follower at term 0
2016-02-12 02:35:35.608637 I | raft: newRaft 6da8c910de8e68c3 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
2016-02-12 02:35:35.608690 I | raft: 6da8c910de8e68c3 became follower at term 1
2016-02-12 02:35:35.609054 I | etcdserver: set snapshot count to default 10000
2016-02-12 02:35:35.609165 I | etcdserver: starting server... [version: 2.3.0-alpha.0+git, cluster version: to_be_decided]
2016-02-12 02:35:35.609488 I | etcdserver: name = node2422633343769195722
2016-02-12 02:35:35.609551 I | etcdserver: data dir = /tmp/etcd808808993
2016-02-12 02:35:35.609588 I | etcdserver: member dir = /tmp/etcd808808993/member
2016-02-12 02:35:35.609618 I | etcdserver: heartbeat = 10ms
2016-02-12 02:35:35.609647 I | etcdserver: election = 100ms
2016-02-12 02:35:35.609675 I | etcdserver: snapshot count = 0
2016-02-12 02:35:35.609708 I | etcdserver: advertise client URLs = http://<IP_ADDRESS>:20428
2016-02-12 02:35:35.609739 I | etcdserver: initial advertise peer URLs = http://<IP_ADDRESS>:20427
2016-02-12 02:35:35.609778 I | etcdserver: initial cluster = node2422633343769195722=http://<IP_ADDRESS>:20427,node4916347055179006085=http://<IP_ADDRESS>:20431,node7272623383804356993=http://<IP_ADDRESS>:20429
2016-02-12 02:35:35.610187 I | etcdserver: starting member f998a84977832b45 in cluster 2425d6eaf12d4a88
2016-02-12 02:35:35.610253 I | raft: f998a84977832b45 became follower at term 0
2016-02-12 02:35:35.610289 I | raft: newRaft f998a84977832b45 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
2016-02-12 02:35:35.610322 I | raft: f998a84977832b45 became follower at term 1
2016-02-12 02:35:35.610737 I | etcdserver: set snapshot count to default 10000
2016-02-12 02:35:35.610771 I | etcdserver: starting server... [version: 2.3.0-alpha.0+git, cluster version: to_be_decided]
2016-02-12 02:35:35.630893 N | etcdserver: added local member 6da8c910de8e68c3 [http://<IP_ADDRESS>:20429] to cluster 2425d6eaf12d4a88
2016-02-12 02:35:35.631113 N | etcdserver: added member 7f8b30875bee3a52 [http://<IP_ADDRESS>:20431] to cluster 2425d6eaf12d4a88
2016-02-12 02:35:35.631281 N | etcdserver: added member f998a84977832b45 [http://<IP_ADDRESS>:20427] to cluster 2425d6eaf12d4a88
2016-02-12 02:35:35.632900 I | rafthttp: the connection with 6da8c910de8e68c3 became active
2016-02-12 02:35:35.640041 I | rafthttp: the connection with 7f8b30875bee3a52 became active
2016-02-12 02:35:35.643845 N | etcdserver: added member 6da8c910de8e68c3 [http://<IP_ADDRESS>:20429] to cluster 2425d6eaf12d4a88
2016-02-12 02:35:35.643935 N | etcdserver: added local member 7f8b30875bee3a52 [http://<IP_ADDRESS>:20431] to cluster 2425d6eaf12d4a88
2016-02-12 02:35:35.644004 N | etcdserver: added member f998a84977832b45 [http://<IP_ADDRESS>:20427] to cluster 2425d6eaf12d4a88
2016-02-12 02:35:35.644221 I | rafthttp: the connection with f998a84977832b45 became active
2016-02-12 02:35:35.644410 I | etcdserver: set snapshot count to default 10000
2016-02-12 02:35:35.644558 I | etcdserver: starting server... [version: 2.3.0-alpha.0+git, cluster version: to_be_decided]
2016-02-12 02:35:35.645015 I | rafthttp: the connection with 6da8c910de8e68c3 became active
2016-02-12 02:35:35.645220 I | rafthttp: the connection with f998a84977832b45 became active
2016-02-12 02:35:35.645499 I | rafthttp: the connection with 7f8b30875bee3a52 became active
2016-02-12 02:35:35.646291 N | etcdserver: added member 6da8c910de8e68c3 [http://<IP_ADDRESS>:20429] to cluster 2425d6eaf12d4a88
2016-02-12 02:35:35.646574 N | etcdserver: added member 7f8b30875bee3a52 [http://<IP_ADDRESS>:20431] to cluster 2425d6eaf12d4a88
2016-02-12 02:35:35.646653 N | etcdserver: added local member f998a84977832b45 [http://<IP_ADDRESS>:20427] to cluster 2425d6eaf12d4a88
2016-02-12 02:35:35.648918 I | raft: 6da8c910de8e68c3 is starting a new election at term 1
2016-02-12 02:35:35.649108 I | raft: 6da8c910de8e68c3 became candidate at term 2
2016-02-12 02:35:35.649172 I | raft: 6da8c910de8e68c3 received vote from 6da8c910de8e68c3 at term 2
2016-02-12 02:35:35.649230 I | raft: 6da8c910de8e68c3 [logterm: 1, index: 3] sent vote request to 7f8b30875bee3a52 at term 2
2016-02-12 02:35:35.649282 I | raft: 6da8c910de8e68c3 [logterm: 1, index: 3] sent vote request to f998a84977832b45 at term 2
2016-02-12 02:35:35.649545 I | raft: f998a84977832b45 [term: 1] received a MsgVote message with higher term from 6da8c910de8e68c3 [term: 2]
2016-02-12 02:35:35.649603 I | raft: f998a84977832b45 became follower at term 2
2016-02-12 02:35:35.649681 I | raft: f998a84977832b45 [logterm: 1, index: 3, vote: 0] voted for 6da8c910de8e68c3 [logterm: 1, index: 3] at term 2
2016-02-12 02:35:35.649771 I | raft: 7f8b30875bee3a52 [term: 1] received a MsgVote message with higher term from 6da8c910de8e68c3 [term: 2]
2016-02-12 02:35:35.649843 I | raft: 7f8b30875bee3a52 became follower at term 2
2016-02-12 02:35:35.649907 I | raft: 7f8b30875bee3a52 [logterm: 1, index: 3, vote: 0] voted for 6da8c910de8e68c3 [logterm: 1, index: 3] at term 2
2016-02-12 02:35:35.650066 I | raft: 6da8c910de8e68c3 received vote from f998a84977832b45 at term 2
2016-02-12 02:35:35.650087 I | raft: 6da8c910de8e68c3 [quorum:2] has received 2 votes and 0 vote rejections
2016-02-12 02:35:35.650107 I | raft: 6da8c910de8e68c3 became leader at term 2
2016-02-12 02:35:35.650123 I | raft: raft.node: 6da8c910de8e68c3 elected leader 6da8c910de8e68c3 at term 2
2016-02-12 02:35:35.650247 I | raft: raft.node: 7f8b30875bee3a52 elected leader 6da8c910de8e68c3 at term 2
2016-02-12 02:35:35.650327 I | raft: raft.node: f998a84977832b45 elected leader 6da8c910de8e68c3 at term 2
2016-02-12 02:35:35.650847 I | etcdserver: published {Name:node7272623383804356993 ClientURLs:[http://<IP_ADDRESS>:20430]} to cluster 2425d6eaf12d4a88
2016-02-12 02:35:35.651396 I | etcdserver: published {Name:node4916347055179006085 ClientURLs:[http://<IP_ADDRESS>:20432]} to cluster 2425d6eaf12d4a88
2016-02-12 02:35:35.651651 I | etcdserver: published {Name:node2422633343769195722 ClientURLs:[http://<IP_ADDRESS>:20428]} to cluster 2425d6eaf12d4a88
2016-02-12 02:35:35.652133 I | etcdserver: setting up the initial cluster version to 2.3
2016-02-12 02:35:35.652440 N | etcdserver: set the initial cluster version to 2.3
2016-02-12 02:35:35.652536 N | etcdserver: set the initial cluster version to 2.3
2016-02-12 02:35:35.652624 N | etcdserver: set the initial cluster version to 2.3
2016-02-12 02:35:35.661249 E | rafthttp: failed to read 6da8c910de8e68c3 on stream Message (net/http: request canceled)
2016-02-12 02:35:35.661280 I | rafthttp: the connection with 6da8c910de8e68c3 became inactive
2016-02-12 02:35:35.661798 E | rafthttp: failed to read 7f8b30875bee3a52 on stream MsgApp v2 (net/http: request canceled)
2016-02-12 02:35:35.661819 I | rafthttp: the connection with 7f8b30875bee3a52 became inactive
2016-02-12 02:35:35.663262 E | rafthttp: failed to read 7f8b30875bee3a52 on stream MsgApp v2 (net/http: request canceled)
2016-02-12 02:35:35.663291 I | rafthttp: the connection with 7f8b30875bee3a52 became inactive
--- PASS: TestWatchCancelRunning (0.15s)
PASS
Too many goroutines running after all test(s).
2 instances of:
github.com/coreos/etcd/rafthttp.(*streamWriter).run(...)
	/home/runner/workspace/src/github.com/coreos/etcd/gopath/src/github.com/coreos/etcd/rafthttp/stream.go:140 +0xe33
created by github.com/coreos/etcd/rafthttp.startStreamWriter
	/home/runner/workspace/src/github.com/coreos/etcd/gopath/src/github.com/coreos/etcd/rafthttp/stream.go:127 +0x1c8
1 instances of:
github.com/coreos/etcd/rafthttp.monitorProbingStatus(...)
	/home/runner/workspace/src/github.com/coreos/etcd/gopath/src/github.com/coreos/etcd/rafthttp/probing_status.go:48 +0x4df
created by github.com/coreos/etcd/rafthttp.addPeerToProber
	/home/runner/workspace/src/github.com/coreos/etcd/gopath/src/github.com/coreos/etcd/rafthttp/probing_status.go:42 +0x37a
1 instances of:
github.com/coreos/etcd/rafthttp.startPeer.func1(...)
	/home/runner/workspace/src/github.com/coreos/etcd/gopath/src/github.com/coreos/etcd/rafthttp/peer.go:149 +0x29e
created by github.com/coreos/etcd/rafthttp.startPeer
	/home/runner/workspace/src/github.com/coreos/etcd/gopath/src/github.com/coreos/etcd/rafthttp/peer.go:158 +0x853
1 instances of:
github.com/coreos/etcd/rafthttp.startPeer.func2(...)
	/home/runner/workspace/src/github.com/coreos/etcd/gopath/src/github.com/coreos/etcd/rafthttp/peer.go:165 +0xbac
created by github.com/coreos/etcd/rafthttp.startPeer
	/home/runner/workspace/src/github.com/coreos/etcd/gopath/src/github.com/coreos/etcd/rafthttp/peer.go:205 +0x9ff
1 instances of:
github.com/coreos/etcd/Godeps/_workspace/src/github.com/xiang90/probing.(*prober).AddHTTP.func1(...)
	/home/runner/workspace/src/github.com/coreos/etcd/gopath/src/github.com/coreos/etcd/Godeps/_workspace/src/github.com/xiang90/probing/prober.go:55 +0x4cd
created by github.com/coreos/etcd/Godeps/_workspace/src/github.com/xiang90/probing.(*prober).AddHTTP
	/home/runner/workspace/src/github.com/coreos/etcd/gopath/src/github.com/coreos/etcd/Godeps/_workspace/src/github.com/xiang90/probing/prober.go:85 +0x239
4 instances of:
github.com/coreos/etcd/rafthttp.(*pipeline).handle(...)
	/home/runner/workspace/src/github.com/coreos/etcd/gopath/src/github.com/coreos/etcd/rafthttp/pipeline.go:90 +0x615
created by github.com/coreos/etcd/rafthttp.newPipeline
	/home/runner/workspace/src/github.com/coreos/etcd/gopath/src/github.com/coreos/etcd/rafthttp/pipeline.go:76 +0x1f9
2 instances of:
github.com/coreos/etcd/rafthttp.(*streamReader).run(...)
	/home/runner/workspace/src/github.com/coreos/etcd/gopath/src/github.com/coreos/etcd/rafthttp/stream.go:285 +0x1c5
created by github.com/coreos/etcd/rafthttp.startStreamReader
	/home/runner/workspace/src/github.com/coreos/etcd/gopath/src/github.com/coreos/etcd/rafthttp/stream.go:261 +0x1d6
exit status 1

@heyitsanthony I do not feel this is a problem that we should solve. We do not ensure we do gracefully shutdown all the time (wait for all the routines it creates to shutdown before return from Stop). It is simly too much work and we do not control a lot of them.
In the test, we waits for sometime to ensure there is no more routines. https://github.com/coreos/etcd/blob/master/pkg/testutil/leak.go#L99
The wait was not enough only because travis was slow and failed to shutdown some routines in time.
If this happens a lot, we can make the timeout longer.

Sure. No strong opinion on this one, just documenting it.

I am closing this for now. Will try to "fix" it if it happens a lot.


Add per-measurement level filtering of metrics

This configuration has existed previously, and still exists in metrics-reporter-config.
This commit provides support for it again within the GraphiteReporter.
ref: https://github.com/addthis/metrics-reporter-config/pull/2

And submit this Java 8 version as a separate PR to master

done in https://github.com/dropwizard/metrics/pull/1041

After a little bit of thought, I believe I can't merge the pull requests to the 3.2.* branch, because it breaks backward compatibility. Custom MetricFilter implementations will become incompatible after the update to 3.2, because they will be forced to implement a new method. @phauer started to work on the same feature in #1008, which, I believe, is a better way to address the problem. The implementation doesn't use MetricFilter, but rather a set of disabled metric types. I would like to close this pull requests in favour of #1008. Thank you for your time and effort on this pull request.


Resource Quota system-critical-quota is not prefixed with dapr

In what area(s)?
/area Helm Chart
What version of Dapr?

1.14+

Expected Behavior
It is more distinct to have dapr resources be prefixed with dapr, and the name system-critical-quota is very general and people could use it for some other things and if we want to set restrictive RBACs with a given resource name having this prefix helps to not overlap with customer resources.
Actual Behavior
Current name is the general system-critical-quota
Steps to Reproduce the Problem

Release Note

RELEASE NOTE:

/assign


feat(productImport): split query into chunks that dont exceed the query limit

@butenkor @panshul007 @emmenko @hajoeichler
closes #5

:+1:

Will be good to move the new query processing methods into a separate file. to reduce clutter in the product import file.

Well this really only works for this special use case, so I wonder if it makes sense to move it into a separate file..


Can't start Homeassistant container

Hi,
I’m having issues with a new install of hassio I’m using the install script (installer) to install on an Intel-NUC with Ubuntu 18.03 LTS. The hassio_supervisor and hassio_dns are running fine. The homeassistant container is created but during starting procedure from the supervisor I get the following issue:

19-09-30 12:36:30 ERROR (SyncWorker_5) [hassio.docker] Can’t start homeassistant: 500 Server Error: Internal Server Error (“OCI runtime create failed: sysctl “kernel.domainname” is not in a separate kernel namespace: unknown”),
19-09-30 12:36:30 ERROR (MainThread) [hassio.homeassistant] Can’t start Home Assistant!

Error: Internal Server Error (“OCI runtime create failed: sysctl “kernel.domainname” is not in a separate kernel namespace: unknown”),

There is an issue with your kernel configs and docker setup


Lettering font color

I'm surprised nobody is interested in extracting the font color. This feature would be great.

Sounds like still no interest here, but PRs welcome


Transpose

There is a commit comment relating to files which should have been in their own branch, but I worked on master first, and then realised that to make a second PR, I should have used a separate branch... Hopefully that's not a problem!

@RobinCsl no worries at all about working on master-- since you're on your own fork, it's not a problem.  I'll review.

I updated the README and used the spread operator (it's really cool indeed!). I tried briefly to think about rewriting the example in a purely functional way, but to no avail at the moment.

Looks fine to me!  Mind squashing the commits?

It seems I somehow managed on this one. I'll try to replicate the steps. (But there might be other conflicts since each exercise implementation modifies config.json)

@matthewmorgan approved changes, commits squased, no conflicts,... merging.

@RobinCsl The expected test result in the last test ("test many lines") is different from the expected test result in https://github.com/exercism/problem-specifications/blob/master/exercises/transpose/canonical-data.json
So either the canonical test-data is wrong or this PR is wrong.

@shybyte good catch! @RobinCsl I need to remove this exercise for the time being.  Please have a look and let me know if I can help resolving the issue.

I had a look for the last hour. I had copy-pasted the code from the old repository and converted it to ES6, but you're right @shybyte, there is an issue with the algorithm. I will work more on that.

Maybe my code for solving the original testcases is helpful:
function trimTrailingUndefined(array) {
  const trailingUndefinedCount = [...array].reverse().findIndex(x => x !== undefined);
  return array.slice(0, array.length - trailingUndefinedCount);
}

export default function transpose(input) {
  const maxCol = Math.max(0, ...(input.map(row => row.length)));
  return [...Array(maxCol).keys()].map(col =>
    trimTrailingUndefined(input.map((_v, row) => input[row][col]))
      .map(charOrUndefined => charOrUndefined || ' ')
      .join('')
  );
}


Deprecate DNS/UDP over Tor

Can anyone merge please?

Hey @ppopth. Sorry about the late reply. We're still working out some things. Not merging for now. Thanks!

Closing this as it's out of sync with the docs. Feel free to reopen from a newer branch if you feel that it makes sense. Thanks


about r2_mean issue

guys you have to add the two function by manual .which in the data fold. r2_mean and pearson_mean

can you say more details? Please

I added this codes in line 510, it work.
def pearson_mean(data1, data2):
sum_pearson_1 = 0
sum_pearson_2 = 0
for i in range(data1.shape[0]):
pearsonr_ = pearsonr(data1[i], data2[i])
sum_pearson_1 += pearsonr_[0]
sum_pearson_2 += pearsonr_[1]
return sum_pearson_1/data1.shape[0], sum_pearson_2/data1.shape[0]
def r2_mean(data1, data2):
sum_r2_1 = 0
for i in range(data1.shape[0]):
r2_score_ = r2_score(data1[i], data2[i])
sum_r2_1 += r2_score_
return sum_r2_1/data1.shape[0]

We have recently updated the GitHub repository to address some missing functions in the code. Please pull the latest version, which should resolve these issues.


new features for codeparrot training script

What does this PR do?
This PR adds some features to CodeParrot training script.

Add TFLOPS to logging
Use Accelerate checkpointing and tracking for Wandb and Tensorborad
Fix gradient accumulation for DDP (https://github.com/huggingface/accelerate/pull/106)
Scale loss approprietly for the last batch
Fix typo in the README

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


Preferences window is empty

I tried the demo code but the opened preferences window is just empty. No errors shown.
Code:
app.on('ready', createWindow);

function createWindow() {

    [... create window and stuff]

    const pref = loadPreferences();
    console.log(pref);
    pref.show();
}

function loadPreferences() {
    return new ElectronPreferences({
        /**
         * Where should preferences be saved?
         */
        'dataStore': path.resolve(app.getPath('userData'), 'preferences.json'),
        /**
         * Default values.
         */
        'defaults': {
            'notes': {
                'folder': path.resolve(os.homedir(), 'Notes')
            },
            'markdown': {
                'auto_format_links': true,
                'show_gutter': false
            },
            'preview': {
                'show': true
            },
            'drawer': {
                'show': true
            }
        },
        /**
         * If the `onLoad` method is specified, this function will be called immediately after
         * preferences are loaded for the first time. The return value of this method will be stored as the
         * preferences object.
         */
        'onLoad': (preferences) => {
            // ...
            return preferences;
        },
        /**
         * The preferences window is divided into sections. Each section has a label, an icon, and one or
         * more fields associated with it. Each section should also be given a unique ID.
         */
        'sections': [
            {
                'id': 'about',
                'label': 'About You',
                /**
                 * See the list of available icons below.
                 */
                'icon': 'single-01',
                'form': {
                    'groups': [
                        {
                            /**
                             * Group heading is optional.
                             */
                            'label': 'About You',
                            'fields': [
                                {
                                    'label': 'First Name',
                                    'key': 'first_name',
                                    'type': 'text',
                                    /**
                                     * Optional text to be displayed beneath the field.
                                     */
                                    'help': 'What is your first name?'
                                },
                                {
                                    'label': 'Last Name',
                                    'key': 'last_name',
                                    'type': 'text',
                                    'help': 'What is your last name?'
                                },
                                {
                                    'label': 'Gender',
                                    'key': 'gender',
                                    'type': 'dropdown',
                                    'options': [
                                        {'label': 'Male', 'value': 'male'},
                                        {'label': 'Female', 'value': 'female'},
                                        {'label': 'Unspecified', 'value': 'unspecified'},
                                    ],
                                    'help': 'What is your gender?'
                                },
                                {
                                    'label': 'Which of the following foods do you like?',
                                    'key': 'foods',
                                    'type': 'checkbox',
                                    'options': [
                                        {'label': 'Ice Cream', 'value': 'ice_cream'},
                                        {'label': 'Carrots', 'value': 'carrots'},
                                        {'label': 'Cake', 'value': 'cake'},
                                        {'label': 'Spinach', 'value': 'spinach'}
                                    ],
                                    'help': 'Select one or more foods that you like.'
                                },
                                {
                                    'label': 'Coolness',
                                    'key': 'coolness',
                                    'type': 'slider',
                                    'min': 0,
                                    'max': 9001
                                },
                                {
                                    'label': 'Eye Color',
                                    'key': 'eye_color',
                                    'type': 'color',
                                    'format': 'hex', // can be hex, hsl or rgb
                                    'help': 'Your eye color'
                                },
                                {
                                    'label': 'Hair Color',
                                    'key': 'hair_color',
                                    'type': 'color',
                                    'format': 'rgb',
                                    'help': 'Your hair color'
                                }
                            ]
                        }
                    ]
                }
            },
            {
                'id': 'notes',
                'label': 'Notes',
                'icon': 'folder-15',
                'form': {
                    'groups': [
                        {
                            'label': 'Stuff',
                            'fields': [
                                {
                                    'label': 'Read notes from folder',
                                    'key': 'folder',
                                    'type': 'directory',
                                    'help': 'The location where your notes will be stored.'
                                },
                                {
                                    'heading': 'Important Message',
                                    'content': '
The quick brown fox jumps over the long white fence. The quick brown fox jumps over the long white fence. The quick brown fox jumps over the long white fence. The quick brown fox jumps over the long white fence.
',
                                    'type': 'message',
                                }
                            ]
                        }
                    ]
                }
            },
            {
                'id': 'space',
                'label': 'Other Settings',
                'icon': 'spaceship',
                'form': {
                    'groups': [
                        {
                            'label': 'Other Settings',
                            'fields': [
                                {
                                    'label': 'Phone Number',
                                    'key': 'phone_number',
                                    'type': 'text',
                                    'help': 'What is your phone number?'
                                },
                                {
                                    'label': "Foo or Bar?",
                                    'key': 'foobar',
                                    'type': 'radio',
                                    'options': [
                                        {'label': 'Foo', 'value': 'foo'},
                                        {'label': 'Bar', 'value': 'bar'},
                                        {'label': 'FooBar', 'value': 'foobar'},
                                    ],
                                    'help': 'Foo? Bar?'
                                }
                            ]
                        }
                    ]
                }
            }
        ]
    });
};

The console.log(pref); shows the correct preferences output.
What am I missing?

Same here

➜  electron-preferences git:(master) npm -v
6.9.0
➜  electron-preferences git:(master) node -v
v10.16.3

using https://github.com/tkambler/electron-preferences/tree/9ef2c58a39ddd9df9a254d369fb2d08fdceee18e

did you find any solution for this?

Not really. I found a project which it still worked on. It uses an older version of electron and such, so I don't think thats really a solution. It works for me internally so I use it in the meantime.

Ok so in case this helps anyone my problem was with my webpack config, since electron-preferences uses a template for the layout which is located on the build folder, we need to import that folder into our webpack build. I used a combination of a loader and a plugin, not sure if this is the best way but it works:
For my rules I have
  {
    test: /\.(m?js|node)$/,
    parser: { amd: false },
    use: {
      loader: '@marshallofsound/webpack-asset-relocator-loader',
      options: {
        debugLog: false,
      },
    },
  },

This will bring the electron-preferences/build/index.html into our build folder and it will also rename any references to this route correctly, so instead of calling electron-preferences/build/index.html it will call whatever your build route is + index.html
Now until this point I get a blank window with a bunch of errors in the console because the files index.html uses cannot be found
So I installed the copy-webpack-plugin to copy all of the build folder which has all the needed assets
  plugins: [
    new CopyPlugin([{ from: 'node_modules/electron-preferences/build', to: '.' }]),
  ]

And it works.
I'm using
node: 12.6.0
npm: 6.9.0
electron: 6.0.3

This is kind of a pain, im using Electron 9. Surely there has to be an easier way to make this automatic? That HTML is so small, you would think we could just bake it right into the JS and not deal with custom loaders.

@McLive I think the initial issue was due to the 'onLoad': (preferences) => { } inside your JSON.
Electron doesn't allow serialization of functions anymore with their new serializer.
@VictorioBerra The build folder should be available. It has the index.html, as well as all the styling and the icons.
Closing this issue, as the initial isssue is fixed. If you have a suggestion for your issue, please feel free to create a new issue.

Closing this issue, as the initial isssue is fixed. If you have a suggestion for your issue, please feel free to create a new issue.

I don't understand, what exactly was the fix?  I still have this issue.

Hi @thehans
Initial issue was due to new security constraints of electron. Where IPC calls can't contain functions anymore. Only primitive objects.
If you encounter an issue with the same symptoms, please create a new issue and provide all the details of your setup and the error you receive.


Multiblob support (on twojs experimental branch)

I kludged in multi-blob support.  It needs a bit of work, but it works if you would like to pull this branch and check it out.
You spawn with two blobs at the moment to test it out.  I'll refactor to handle everything a bit more sanely shortly.  At the moment, I haven't written the remerge logic, so the blobs just bounce off of each other.
I'm finishing up a fairly pressing project this week, but starting next week I'll have a lot more time to devote to cleaning this up and polishing it.

I wan't to try it but I can't get it to work :/ .

what errors are you getting?
On Thu, Jun 11, 2015 at 5:53 PM, Buskcoin<EMAIL_ADDRESS>wrote:

I wan't to try it but I can't get it to work :/ .
—
Reply to this email directly or view it on GitHub
https://github.com/huytd/agar.io-clone/pull/202#issuecomment-111324017.

When I run npm install:

/agar/server/server.js: line 73, col 16, You might be leaking a variable (xMax) here. (W120)
/agar/server/server.js: line 74, col 16, You might be leaking a variable (yMax) here. (W120)
2 errors
[07:04:31] Finished 'build-server' after 180 ms
[07:04:31] Finished 'move-client' after 302 ms
[07:04:31] Starting 'build-client'...
/agar/client/js/app.js: line 45, col 20, ['webgl'] is better written in dot notation. (W069)
/agar/client/js/app.js: line 60, col 2, Missing semicolon. (W033)
/agar/client/js/app.js: line 88, col 22, Expected an assignment or function call and instead saw an expression. (W030)
/agar/client/js/app.js: line 301, col 2, Unnecessary semicolon. (W032)
/agar/client/js/app.js: line 427, col 23, 'i' is already defined. (W004)
/agar/client/js/app.js: line 551, col 23, 'a' is already defined. (W004)
/agar/client/js/app.js: line 560, col 23, 'a' is already defined. (W004)
/agar/client/js/app.js: line 568, col 23, 'a' is already defined. (W004)
/agar/client/js/app.js: line 604, col 15, 'a' is already defined. (W004)
9 errors

When i run node server/server.js:

module.js:340
throw err;
^
Error: Cannot find module 'MD5'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object. (home/agar/server/server.js:7:11)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)

That's only one error, the rest are warnings...
Fix it by doing:
npm install -s MD5

@JoeMattie please add md5 package to package.json.


[sw/silicon_creator] flash_ctrl changes

This PR includes some flash_ctrl changes that don't depend on #9015 (split into multiple commits):

Move static_asserts out of transaction_start(),
Remove check_errors() from flash_ctrl.c since we can use OP_STATUS.ERR that we already read,
Rename some enums and parameters for consistency,
Improve transaction_start() interface by introducing a transaction_params_t struct (also modifies the values of flash_ctrl_partition_t constants),
Add missing comments for fifo_push() and fifo_read() (skipped is_busy() because I think we should remove it, will be addressed in another PR).
Simplify flash_ctrl_prog() loop by moving the word_count calculation for the first write out of the loop.

Rebased on master. Closing and reopening didn't work because CI job uses the artifacts of the last run for FPGA tests.


do not set ContentLength to NaN

As requested within #707, PR for v3 branch.
The underlying "right" thing may be for users of FormData to not have to rely on NaN, but for FormData to support streams of unknowable length out of the box, but it can't hurt for node-fetch to check for NaN in the meantime.
See further discussion (hopefully!) at form-data/form-data#394.

The problem is you're using form-data via request.
AFAIR form-data itself is accepting any falsy value passed in the right way, but for request to not add another incorrect content lenght it had to be NaN
A change in request would be necessary

Via node-fetch, which calls getLengthSync and gets incorrect content length.
Why shouldn't FormData just figure out that some streams have unknowable lengths and start returning null or undefined from getLengthSync. I achieved that in a class extending FormData at the link but could be integrated within base FormData package.

@yaacovCR I don't remember exactly anymore, but there was one more issue with getting request and form-data to cooperate correctly in that case.
If lenght if the stream is unknown you not only need to avoid setting content lenght on the multipart section but also the header on the request and there was something wrong with the assumptions there as well.
But I don't remember enough details to tell whether fixing that function would solve both

https://github.com/request/request/issues/1402
Not hanging with my contrived graphql example for node-fetch. You do have to set the content Type.


[Event Hubs] Modernize IoT Hub Sample

Summary
The focus of these changes is to update the IoT Hub connection string translation sample to reference an up to date version of the Event Hubs package and to shift the target platform to .NET 6, given the upcoming end-of-life for .NET Core 3.1.

Merging; the Core timeout is unrelated to this PR.


Inference with the MoE based GPT model trained by ds_pretrain_gpt_345M_MoE128.sh [BUG]

The existing scripts failed to  inference with the MoE based GPT model. The MoE policy provided in the source code https://github.com/microsoft/DeepSpeed/blob/master/deepspeed/module_inject/containers/megatron_gpt_moe.py can't handle the MoE model at all. Is there a quick way to fix this problem?

The link appears to be broken. Please open a new issue if it persists.


Fixed type error

Codecov Report

Merging #199 into rc-ng4-upgrade will not change coverage.
The diff coverage is n/a.

@@              Coverage Diff              @@
##           rc-ng4-upgrade   #199   +/-   ##
=============================================
  Coverage             100%   100%
=============================================
  Files                  39     39
  Lines                 947    947
  Branches              144    144
=============================================
  Hits                  947    947

Flag
Coverage Δ

#builder
100% <ø> (ø)
:arrow_up:

#runtime
100% <ø> (ø)
:arrow_up:

#srcapp
100% <ø> (ø)
:arrow_up:

Impacted Files
Coverage Δ

runtime/auth-http.ts
100% <ø> (ø)
:arrow_up:

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 b9f8688...b80f308. Read the comment docs.

Just as a point of clarification, we originally defined our return type incorrectly as it's always been Observable<Response> from the Http request method.  https://github.com/angular/angular/blame/3e51a1998304ab6a15e5bea6bc66e7a8c636a8ad/packages/http/src/http.ts#L112
An upgrade to a stricter type-checking caught this.


merge package template from arlac77/npm-package-template

package.json

chore(devDependencies): update<EMAIL_ADDRESS>from template

Codecov Report

Merging #150 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #150   +/-   ##
=======================================
  Coverage   69.79%   69.79%
=======================================
  Files           2        2
  Lines          96       96
=======================================
  Hits           67       67
  Misses         29       29

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 545c731...c2f506c. Read the comment docs.

Coverage remained the same at 69.388% when pulling c2f506c767fe0e4c0cd422c492964be31a8fb142 on template-sync-1 into 545c7315241b5e3e92433d02b8b1ab991628155a on master.

Coverage remained the same at 69.388% when pulling c2f506c767fe0e4c0cd422c492964be31a8fb142 on template-sync-1 into 545c7315241b5e3e92433d02b8b1ab991628155a on master.


remove remote/distributed classes

moving the remote/distributed TestNG classes to separate project.
basically, this is prototype how we can remote distributed testng out.
see supplementary PR here: https://github.com/testng-team/testng-remote/pull/14

ping @cbeust , @juherr

That's a huge change. If you're telling me it's mostly files being moved around, I'll take your work and I'll merge it (pending @juherr's approval).

yes, most of them just being moved.
the 'distributed testng' function was moved out of TestNG as well, it's available in testng-remote DistributedTestNG

Everything seems good if we don't miss to transfert some files ;)
But merging this PR will have 1 big side effect: https://github.com/testng-team/testng-remote/issues/1 will have to be closed before the next TestNG release. Without it, we won't have workarround for the removed features.

Check: Except 2 classes, I found all others.

thanks @juherr
i just added the two missing classes here:
https://github.com/testng-team/testng-remote/blob/rm_distributed_classes/remote/remote/src/main/java/org/testng/xml/ResultXMLParser.java
https://github.com/testng-team/testng-remote/blob/rm_distributed_classes/remote/remote/src/main/java/org/testng/xml/ResultContentHandler.java
note, for compatibility purpose, i modified ResultXMLParser.java to call parse method with reflection.
i'm wondering is ResultXMLParser still in used? i don't see any reference to it, @cbeust

Looks like we're ready to merge, @missedone can you do a rebase? If not I'll merge manually.

hi @cbeust
PR rebased
thanks


⚠ Bofrost.de has degraded performance

In d9eaa70, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1207 ms

Resolved: Bofrost.de performance has improved in 21c27df.


Make hidden files viewable/editable in the hub

Summary
In wanting to make edits to a .gitignore file, it seems that being able to view and edit the file in the hub requires changing the name of the file to remove the . in the terminal, editing the file, and then changing the name back. This isn't difficult, and all files can be identified using ls -a in the terminal, but it would be nice to maybe be able to choose to show all hidden files by default for admins.
User Stories

As a repo admin, it enables me to more easily edit hidden files, namely the .gitignore.

Acceptance criteria
Users can toggle to reveal hidden files on or off.
Important information
Appears this is possible in sagemaker? https://stackoverflow.com/questions/52222461/how-to-edit-gitignore-in-jupyter-lab

More details available here: https://github.com/jupyterlab/jupyterlab/issues/2049.
It seems there is a way to set up the config to show hidden files BUT there is not a toggleable option to show/hidden on the fly.

I wonder if https://github.com/jupyterlab/jupyterlab/pull/9687 would also provide a solution for this...

Maybe... but that still feels like a workaround, IMHO.

definitely a workaround, but at least then it would be possible. Currently I don't know of any way to edit hidden files/folders in JupyterLab which is (IMO) super annoying

This is enabled now!


add support for parsing parameters with scientific notation for OpenSCENARI…

Description
Line number 105 in openscenario_parser.py has been changed.
This change will add support of parsing parameters with scientific notation for OpenSCENARIO files.
Fixes #927
Where has this been tested?

Platform(s): Ubuntu 20.04
Python version(s): 3.8.10
Unreal Engine version(s): 4.26
CARLA version: 0.9.13

This change is

Can you please rebase your commits. Thank you.

Can you please rebase your commits. Thank you.

yes, I rebased my commits.

I believe this is fixed with this merge

Approved, but a couple of comments about the pattern.
First of all, while the one added by @haabe already implemented the scientific notation, this only worked for lower case e.
Secondly, this pattern does not accept any symbols between the number and the e / E (which is the example provided by the issue #927.
In summary, the accepted types are, for example,

17254
3583E+6
3583E-6
476e+5
476e-5


[Bug report] Open paimon catalog edit page,"jdbc-user","jdbc-password" are not filled, details page either.

Version
main branch
Describe what's wrong

Error message and/or stacktrace
N/A
How to reproduce

Create a paimon catalog with jdbc backend
Open edit page
Open details page

Additional context
No response

@LauraXia123 Can you check this issue ?

request send the `jdbc-user` and `jdbc-password`

response miss the two properties

@FANNG1 Can you help check this issue ?

It's not proper we export the password and AKSK in catalog properties

Should Gravitino export the security information though catalog properties in the short term?  @jerryshao @yuqi1129 @jerqi @mchades @diqiu50 WDYT?

Should Gravitino export the security information though catalog properties in the short term?

It must be, otherwise Trino connector can not work


Remove acknowledgement from release notes template

Contributors are shown by github, no extra section needed

Contributers are shown but what they did isn't. Usually this contains "thanks Dom for the drain fixed, thanks a18n for the docs update" etc.

@peanball , what do you think about the new commit?

Looks good. Let's see how we do it later when we have automated RN generation.


Experiment with different UI placements

Currently, the plugin UI elements are located in VIEW3D section, which is a toolbar on the right. We could experiment with other locations and see what works best

Current one works the best


Fix types export when imported from a recent CJS system

Currently it fails when importing from a commonjs typescript project with module: "NodeNext" and moduleResolution: "nodenext" in the tsconfig.json file.
See https://arethetypeswrong.github.io/?p=time2fa%401.4.0
Explanations: https://github.com/arethetypeswrong/arethetypeswrong.github.io/blob/main/docs/problems/FalseESM.md
Alternative fix is to remove the "types" field in the "." export, it should work too. (as explained in the link above)

Nice! https://arethetypeswrong.github.io/?p=time2fa%401.4.2


cmake: TIFF is only used for WIN32

Signed-off-by: Stefan Weil<EMAIL_ADDRESS>

This avoids another cmake build issue on MacOS with Homebrew.


upgraded cryptography to version 1.5.2

What is the context of this PR?
Upgraded cryptography to latest version

Have you deployed this to AWS to test the ElasticBeanstalk changes?

Yeh, all deploys on AWS


Fix/pipeline parse err

Replaces #812
Fixes #811
Screenshots:

Also fixes to handle restart of such jobs

Codecov Report

Merging #1066 (8fdbb51) into master (550aefe) will not change coverage.
The diff coverage is 50.00%.

@@           Coverage Diff           @@
##           master    #1066   +/-   ##
=======================================
  Coverage   50.58%   50.58%
=======================================
  Files          82       82
  Lines        6271     6271
=======================================
  Hits         3172     3172
  Misses       2916     2916
  Partials      183      183

Impacted Files
Coverage Δ

server/shared/procBuilder.go
86.34% <50.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

Added to display error in UI if no pipeline config file is found

please merge master into


Feature suggestion: repo collection folders

I guess many people keep check-outs organized in few folders, like a "source" one, a "websites" one, a "papers" one etc. If you could register these folders with the tool, finding the regular repos would be much quicker than scanning the whole machine. Maybe you also have weird/read-only checkouts somewhere that you do not want the tool to show to make it less messy.

I am not sure I fully understand the feature suggestion... What I understand, this is a suggestion to add settings to the scan dialog, default search folders, exclude folders, ... maybe a second button to quickly scan this preconfiguration.
Right?
Please clarify.


Create config for generator version.

For ruby (and other languages I think) the version of the gapic code generator is hard coded in. Lets get this moved into it's own config file.

This issue may no longer be relevant. Feel free to re-open.


The invitation link generated by the bot does not take effect immediately

group,_:=bot.ChatByID(Id)
inviteLink,_:=bot.GetInviteLink(group)

When the bot sends the invitation link to others, the link is invalid, but after a while, you can enter it again

it has nothing to do with telebot, not even botapi.
user-generated links are also delayed in such way.


R-group RXN V2000 reaction handling

Hello,
while working with MarvinJS RXN exports I was surprised by how RDKit handles R groups.
I prepared a few simple amide coupling examples to illustate:
Using R-group with atom mapping

R group with no mapping or atom label

R group with atom label and atom mapping

R group with atom label

Surprisingly only the RXN export with R group with atom label and atom mapping work correctly and gives the expected products. I have attached code to illustrate this behavior. I am not quite sure if this is actually the correct expected behavior or a bug?
Please note that atom mapping information is lost on re-importing RXN files (that contain atom labels and atom mappings) to MarvinJS.
Best,
Jacob
import rdkit
import os
import numpy as np
from pathlib import Path
from rdkit import Chem
from rdkit.Chem import AllChem
from rdkit.Chem.rdchem import Mol
from dataclasses import dataclass, fields

from rdkit.Chem.rdmolops import FastFindRings
from rdkit.Chem.rdChemReactions import PreprocessReaction
from rdkit.Chem.rdChemReactions import ReactionFromRxnBlock, ReactionFromRxnFile, ReactionFromSmarts, ReactionToSmarts
from rdkit.Chem.Draw import IPythonConsole
from rdkit.Chem.Draw.MolDrawing import MolDrawing, DrawingOptions

def create_reaction_from_rxn(rxn_content):
    return ReactionFromRxnBlock(rxn_content)

def create_reaction_from_rxn_file(reaction_path):
    rxn_content = open(reaction_path).read()
    return create_reaction_from_rxn(rxn_content)

def create_reaction_from_smarts_file(reaction_path):
    reaction_pattern = open(reaction_path).read()
    return ReactionFromSmarts(reaction_pattern)

def render_smiles(smiles):
    display(Chem.MolFromSmiles(smiles))

def render(molobj):
    display(molobj)

def mol_to_smiles(molobj):
    return Chem.MolToSmiles(molobj, isomericSmiles=True)

def smiles_to_mol(smiles):
    return Chem.MolFromSmiles(smiles)

rxn_r_map4 = """$RXN

      Mrv1902<PHONE_NUMBER>31

  2  1
$MOL

  Mrv1902<PHONE_NUMBER>2D

  3  2  0  0  0  0            999 V2000
   -4.5670   -0.2063    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
   -5.2815    0.2062    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
   -3.8525    0.2063    0.0000 O   0  0  0  2  0  0  0  0  0  0  0  0
  1  2  2  0  0  0  0
  1  3  1  0  0  0  0
M  MRV SMA   3 [#8H1]
M  END
$MOL

  Mrv1902<PHONE_NUMBER>2D

  2  1  0  0  0  0            999 V2000
   -1.1418    0.0687    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
   -1.9668    0.0687    0.0000 R   0  0  0  0  0  0  0  0  0  4  0  0
  1  2  1  0  0  0  0
M  END
$MOL

  Mrv1902<PHONE_NUMBER>2D

  4  3  0  0  0  0            999 V2000
    4.4565   -0.3572    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
    5.2815   -0.3572    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
    4.0439    0.3572    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
    3.2190    0.3572    0.0000 R   0  0  0  0  0  0  0  0  0  4  0  0
  1  2  2  0  0  0  0
  1  3  1  0  0  0  0
  3  4  1  0  0  0  0
M  END
"""

rxn_r_no_map = """$RXN

      Mrv1902<PHONE_NUMBER>36

  2  1
$MOL

  Mrv1902<PHONE_NUMBER>2D

  3  2  0  0  0  0            999 V2000
   -4.5670   -0.2063    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
   -5.2815    0.2062    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
   -3.8525    0.2063    0.0000 O   0  0  0  2  0  0  0  0  0  0  0  0
  1  2  2  0  0  0  0
  1  3  1  0  0  0  0
M  MRV SMA   3 [#8H1]
M  END
$MOL

  Mrv1902<PHONE_NUMBER>2D

  2  1  0  0  0  0            999 V2000
   -1.1418    0.0687    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
   -1.9668    0.0687    0.0000 R   0  0  0  0  0  0  0  0  0  0  0  0
  1  2  1  0  0  0  0
M  END
$MOL

  Mrv1902<PHONE_NUMBER>2D

  4  3  0  0  0  0            999 V2000
    4.4565   -0.3572    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
    5.2815   -0.3572    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
    4.0439    0.3572    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
    3.2190    0.3572    0.0000 R   0  0  0  0  0  0  0  0  0  0  0  0
  1  2  2  0  0  0  0
  1  3  1  0  0  0  0
  3  4  1  0  0  0  0
M  END
"""

rxn_r4_map4 = """$RXN

      Mrv1902<PHONE_NUMBER>39

  2  1
$MOL

  Mrv1902<PHONE_NUMBER>2D

  3  2  0  0  0  0            999 V2000
   -4.5670   -0.2063    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
   -5.2815    0.2062    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
   -3.8525    0.2063    0.0000 O   0  0  0  2  0  0  0  0  0  0  0  0
  1  2  2  0  0  0  0
  1  3  1  0  0  0  0
M  MRV SMA   3 [#8H1]
M  END
$MOL

  Mrv1902<PHONE_NUMBER>2D

  2  1  0  0  0  0            999 V2000
   -1.1418    0.0687    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
   -1.9668    0.0687    0.0000 R#  0  0  0  0  0  0  0  0  0  4  0  0
  1  2  1  0  0  0  0
M  RGP  1   2   4
M  END
$MOL

  Mrv1902<PHONE_NUMBER>2D

  4  3  0  0  0  0            999 V2000
    4.4565   -0.3572    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
    5.2815   -0.3572    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
    4.0439    0.3572    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
    3.2190    0.3572    0.0000 R#  0  0  0  0  0  0  0  0  0  4  0  0
  1  2  2  0  0  0  0
  1  3  1  0  0  0  0
  3  4  1  0  0  0  0
M  RGP  1   4   4
M  END
"""

rxn_r4 = """$RXN

      Mrv1902<PHONE_NUMBER>40

  2  1
$MOL

  Mrv1902<PHONE_NUMBER>2D

  3  2  0  0  0  0            999 V2000
   -4.5670   -0.2063    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
   -5.2815    0.2062    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
   -3.8525    0.2063    0.0000 O   0  0  0  2  0  0  0  0  0  0  0  0
  1  2  2  0  0  0  0
  1  3  1  0  0  0  0
M  MRV SMA   3 [#8H1]
M  END
$MOL

  Mrv1902<PHONE_NUMBER>2D

  2  1  0  0  0  0            999 V2000
   -1.1418    0.0687    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
   -1.9668    0.0687    0.0000 R#  0  0  0  0  0  0  0  0  0  0  0  0
  1  2  1  0  0  0  0
M  RGP  1   2   4
M  END
$MOL

  Mrv1902<PHONE_NUMBER>2D

  4  3  0  0  0  0            999 V2000
    4.4565   -0.3572    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
    5.2815   -0.3572    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
    4.0439    0.3572    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
    3.2190    0.3572    0.0000 R#  0  0  0  0  0  0  0  0  0  0  0  0
  1  2  2  0  0  0  0
  1  3  1  0  0  0  0
  3  4  1  0  0  0  0
M  RGP  1   4   4
M  END
"""

aminoacetamide_smiles = 'NCC(N)=O'
aminoacetamide_molobj = smiles_to_mol(carboxylic_acid_smiles)

cbz_2_hydroxy_proline = 'C1C(CN(C1C(=O)O)C(=O)OCC2=CC=CC=C2)O'
cbz_2_hydroxy_proline_molobj = smiles_to_mol(cbz_2_hydroxy_proline)

render(carboxylic_acid_molobj)
render(cbz_2_hydroxy_proline_molobj)

args = (cbz_2_hydroxy_proline_molobj, aminoacetamide_molobj)

rxn_reactions = {
    'rxn_r_map4': rxn_r_map4,
    'rxn_r_no_map': rxn_r_no_map,
    'rxn_r4_map4': rxn_r4_map4,
    'rxn_r4': rxn_r4
}

for rxn_name, rxn_content in rxn_reactions.items():
    reaction = create_reaction_from_rxn(rxn_content)

    reaction.Initialize()
    n_warnings, n_errors, n_reactants, n_products, labels = PreprocessReaction(reaction)
    if n_errors != 0:
        print(f'reaction initialization failed: {rxn_name}')
        continue

    product = reaction.RunReactants(args)

    print(f'reaction: {rxn_name}')
    render(reaction)
    if len(product):
        for molobj in np.ravel(product):
            render(molobj)

Out of curiosity, could you try SanitizeRxn on these examples?  There are a
plethora of different reaction types in the wild and we standardize on the
MDL definition.
In fact, this should really always be done unless you are using Smarts
based reactions as kekule structures are not aromatized without this.
Cheers,
Brian
On Wed, Jul 3, 2019 at 2:44 PM goraj<EMAIL_ADDRESS>wrote:

Hello,
while working with MarvinJS RXN exports I was surprised by how RDKit
handles R groups.
I prepared a few simple amide coupling examples to illustate:
Using R-group with atom mapping
[image: rxn_r_map4]
https://user-images.githubusercontent.com/28098212/60616337-353c0e80-9d9f-11e9-8350-b047ec284883.png
R group with no mapping or atom label
[image: rxn_r_no_map]
https://user-images.githubusercontent.com/28098212/60616455-84823f00-9d9f-11e9-9b13-4d9cd5a4a467.png
R group with atom label and atom mapping
[image: rxn_r4_map4]
https://user-images.githubusercontent.com/28098212/60616471-8ba94d00-9d9f-11e9-917a-ccd3d733a0aa.png
R group with atom label
[image: rxn_r4]
https://user-images.githubusercontent.com/28098212/60616459-877d2f80-9d9f-11e9-8b73-5a6b7c4f2de1.png
Surprisingly only the RXN export with R group with atom label and atom
mapping work correctly. I have attached code to illustrate this behavior.
I am not quite sure if this is actually the correct expected behavior or a
bug?
Please note that atom mapping information is lost on re-importing RXN
files (that contain atom labels and atom mappings) to MarvinJS.
Best,
Jacob
import rdkit
import os
import numpy as np
from pathlib import Path
from rdkit import Chem
from rdkit.Chem import AllChem
from rdkit.Chem.rdchem import Mol
from dataclasses import dataclass, fields
from rdkit.Chem.rdmolops import FastFindRings
from rdkit.Chem.rdChemReactions import PreprocessReaction
from rdkit.Chem.rdChemReactions import ReactionFromRxnBlock, ReactionFromRxnFile, ReactionFromSmarts, ReactionToSmarts
from rdkit.Chem.Draw import IPythonConsole
from rdkit.Chem.Draw.MolDrawing import MolDrawing, DrawingOptions
def create_reaction_from_rxn(rxn_content):
return ReactionFromRxnBlock(rxn_content)
def create_reaction_from_rxn_file(reaction_path):
rxn_content = open(reaction_path).read()
return create_reaction_from_rxn(rxn_content)
def create_reaction_from_smarts_file(reaction_path):
reaction_pattern = open(reaction_path).read()
return ReactionFromSmarts(reaction_pattern)
def render_smiles(smiles):
display(Chem.MolFromSmiles(smiles))
def render(molobj):
display(molobj)
def mol_to_smiles(molobj):
return Chem.MolToSmiles(molobj, isomericSmiles=True)
def smiles_to_mol(smiles):
return Chem.MolFromSmiles(smiles)
rxn_r_map4 = """$RXN
  Mrv1902<PHONE_NUMBER>31

2  1
$MOL
Mrv1902<PHONE_NUMBER>2D
3  2  0  0  0  0            999 V2000
-4.5670   -0.2063    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
-5.2815    0.2062    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
-3.8525    0.2063    0.0000 O   0  0  0  2  0  0  0  0  0  0  0  0
1  2  2  0  0  0  0
1  3  1  0  0  0  0
M  MRV SMA   3 [#8H1]
M  END
$MOL
Mrv1902<PHONE_NUMBER>2D
2  1  0  0  0  0            999 V2000
-1.1418    0.0687    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
-1.9668    0.0687    0.0000 R   0  0  0  0  0  0  0  0  0  4  0  0
1  2  1  0  0  0  0
M  END
$MOL
Mrv1902<PHONE_NUMBER>2D
4  3  0  0  0  0            999 V2000
4.4565   -0.3572    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
5.2815   -0.3572    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
4.0439    0.3572    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
3.2190    0.3572    0.0000 R   0  0  0  0  0  0  0  0  0  4  0  0
1  2  2  0  0  0  0
1  3  1  0  0  0  0
3  4  1  0  0  0  0
M  END
"""
rxn_r_no_map = """$RXN
  Mrv1902<PHONE_NUMBER>36

2  1
$MOL
Mrv1902<PHONE_NUMBER>2D
3  2  0  0  0  0            999 V2000
-4.5670   -0.2063    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
-5.2815    0.2062    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
-3.8525    0.2063    0.0000 O   0  0  0  2  0  0  0  0  0  0  0  0
1  2  2  0  0  0  0
1  3  1  0  0  0  0
M  MRV SMA   3 [#8H1]
M  END
$MOL
Mrv1902<PHONE_NUMBER>2D
2  1  0  0  0  0            999 V2000
-1.1418    0.0687    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
-1.9668    0.0687    0.0000 R   0  0  0  0  0  0  0  0  0  0  0  0
1  2  1  0  0  0  0
M  END
$MOL
Mrv1902<PHONE_NUMBER>2D
4  3  0  0  0  0            999 V2000
4.4565   -0.3572    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
5.2815   -0.3572    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
4.0439    0.3572    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
3.2190    0.3572    0.0000 R   0  0  0  0  0  0  0  0  0  0  0  0
1  2  2  0  0  0  0
1  3  1  0  0  0  0
3  4  1  0  0  0  0
M  END
"""
rxn_r4_map4 = """$RXN
  Mrv1902<PHONE_NUMBER>39

2  1
$MOL
Mrv1902<PHONE_NUMBER>2D
3  2  0  0  0  0            999 V2000
-4.5670   -0.2063    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
-5.2815    0.2062    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
-3.8525    0.2063    0.0000 O   0  0  0  2  0  0  0  0  0  0  0  0
1  2  2  0  0  0  0
1  3  1  0  0  0  0
M  MRV SMA   3 [#8H1]
M  END
$MOL
Mrv1902<PHONE_NUMBER>2D
2  1  0  0  0  0            999 V2000
-1.1418    0.0687    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
-1.9668    0.0687    0.0000 R#  0  0  0  0  0  0  0  0  0  4  0  0
1  2  1  0  0  0  0
M  RGP  1   2   4
M  END
$MOL
Mrv1902<PHONE_NUMBER>2D
4  3  0  0  0  0            999 V2000
4.4565   -0.3572    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
5.2815   -0.3572    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
4.0439    0.3572    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
3.2190    0.3572    0.0000 R#  0  0  0  0  0  0  0  0  0  4  0  0
1  2  2  0  0  0  0
1  3  1  0  0  0  0
3  4  1  0  0  0  0
M  RGP  1   4   4
M  END
"""
rxn_r4 = """$RXN
  Mrv1902<PHONE_NUMBER>40

2  1
$MOL
Mrv1902<PHONE_NUMBER>2D
3  2  0  0  0  0            999 V2000
-4.5670   -0.2063    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
-5.2815    0.2062    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
-3.8525    0.2063    0.0000 O   0  0  0  2  0  0  0  0  0  0  0  0
1  2  2  0  0  0  0
1  3  1  0  0  0  0
M  MRV SMA   3 [#8H1]
M  END
$MOL
Mrv1902<PHONE_NUMBER>2D
2  1  0  0  0  0            999 V2000
-1.1418    0.0687    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
-1.9668    0.0687    0.0000 R#  0  0  0  0  0  0  0  0  0  0  0  0
1  2  1  0  0  0  0
M  RGP  1   2   4
M  END
$MOL
Mrv1902<PHONE_NUMBER>2D
4  3  0  0  0  0            999 V2000
4.4565   -0.3572    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
5.2815   -0.3572    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
4.0439    0.3572    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
3.2190    0.3572    0.0000 R#  0  0  0  0  0  0  0  0  0  0  0  0
1  2  2  0  0  0  0
1  3  1  0  0  0  0
3  4  1  0  0  0  0
M  RGP  1   4   4
M  END
"""
carboxylic_acid_smiles = 'NCC(N)=O'
carboxylic_acid_molobj = smiles_to_mol(carboxylic_acid_smiles)
cbz_2_hydroxy_proline = 'C1C(CN(C1C(=O)O)C(=O)OCC2=CC=CC=C2)O'
cbz_2_hydroxy_proline_molobj = smiles_to_mol(cbz_2_hydroxy_proline)
render(carboxylic_acid_molobj)
render(cbz_2_hydroxy_proline_molobj)
args = (cbz_2_hydroxy_proline_molobj, carboxylic_acid_molobj)
rxn_reactions = {
'rxn_r_map4': rxn_r_map4,
'rxn_r_no_map': rxn_r_no_map,
'rxn_r4_map4': rxn_r4_map4,
'rxn_r4': rxn_r4
}
for rxn_name, rxn_content in rxn_reactions.items():
reaction = create_reaction_from_rxn(rxn_content)
reaction.Initialize()
n_warnings, n_errors, n_reactants, n_products, labels = PreprocessReaction(reaction)
if n_errors != 0:
    print(f'reaction initialization failed: {rxn_name}')
    continue

product = reaction.RunReactants(args)

print(f'reaction: {rxn_name}')
render(reaction)
if len(product):
    for molobj in np.ravel(product):
        render(molobj)

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/rdkit/rdkit/issues/2527?email_source=notifications&email_token=ACLOFIGBUC4TVQ2URXFBHH3P5TXQNA5CNFSM4H5ITZ22YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4G5GSNUA,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACLOFICJHR6EBO5OXAZPWVLP5TXQNANCNFSM4H5ITZ2Q
.

This fixes #2 (AllChem.SanitizeRxn)
#1 is odd, but I won't get a chance to look at it properly until this
weekend.
On Wed, Jul 3, 2019 at 3:00 PM Brian Kelley<EMAIL_ADDRESS>wrote:

Out of curiosity, could you try SanitizeRxn on these examples?  There are
a plethora of different reaction types in the wild and we standardize on
the MDL definition.
In fact, this should really always be done unless you are using Smarts
based reactions as kekule structures are not aromatized without this.
Cheers,
Brian
On Wed, Jul 3, 2019 at 2:44 PM goraj<EMAIL_ADDRESS>wrote:

Hello,
while working with MarvinJS RXN exports I was surprised by how RDKit
handles R groups.
I prepared a few simple amide coupling examples to illustate:
Using R-group with atom mapping
[image: rxn_r_map4]
https://user-images.githubusercontent.com/28098212/60616337-353c0e80-9d9f-11e9-8350-b047ec284883.png
R group with no mapping or atom label
[image: rxn_r_no_map]
https://user-images.githubusercontent.com/28098212/60616455-84823f00-9d9f-11e9-9b13-4d9cd5a4a467.png
R group with atom label and atom mapping
[image: rxn_r4_map4]
https://user-images.githubusercontent.com/28098212/60616471-8ba94d00-9d9f-11e9-917a-ccd3d733a0aa.png
R group with atom label
[image: rxn_r4]
https://user-images.githubusercontent.com/28098212/60616459-877d2f80-9d9f-11e9-8b73-5a6b7c4f2de1.png
Surprisingly only the RXN export with R group with atom label and atom
mapping work correctly. I have attached code to illustrate this
behavior. I am not quite sure if this is actually the correct expected
behavior or a bug?
Please note that atom mapping information is lost on re-importing RXN
files (that contain atom labels and atom mappings) to MarvinJS.
Best,
Jacob
import rdkit
import os
import numpy as np
from pathlib import Path
from rdkit import Chem
from rdkit.Chem import AllChem
from rdkit.Chem.rdchem import Mol
from dataclasses import dataclass, fields
from rdkit.Chem.rdmolops import FastFindRings
from rdkit.Chem.rdChemReactions import PreprocessReaction
from rdkit.Chem.rdChemReactions import ReactionFromRxnBlock, ReactionFromRxnFile, ReactionFromSmarts, ReactionToSmarts
from rdkit.Chem.Draw import IPythonConsole
from rdkit.Chem.Draw.MolDrawing import MolDrawing, DrawingOptions
def create_reaction_from_rxn(rxn_content):
return ReactionFromRxnBlock(rxn_content)
def create_reaction_from_rxn_file(reaction_path):
rxn_content = open(reaction_path).read()
return create_reaction_from_rxn(rxn_content)
def create_reaction_from_smarts_file(reaction_path):
reaction_pattern = open(reaction_path).read()
return ReactionFromSmarts(reaction_pattern)
def render_smiles(smiles):
display(Chem.MolFromSmiles(smiles))
def render(molobj):
display(molobj)
def mol_to_smiles(molobj):
return Chem.MolToSmiles(molobj, isomericSmiles=True)
def smiles_to_mol(smiles):
return Chem.MolFromSmiles(smiles)
rxn_r_map4 = """$RXN
  Mrv1902<PHONE_NUMBER>31

2  1
$MOL
Mrv1902<PHONE_NUMBER>2D
3  2  0  0  0  0            999 V2000
-4.5670   -0.2063    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
-5.2815    0.2062    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
-3.8525    0.2063    0.0000 O   0  0  0  2  0  0  0  0  0  0  0  0
1  2  2  0  0  0  0
1  3  1  0  0  0  0
M  MRV SMA   3 [#8H1]
M  END
$MOL
Mrv1902<PHONE_NUMBER>2D
2  1  0  0  0  0            999 V2000
-1.1418    0.0687    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
-1.9668    0.0687    0.0000 R   0  0  0  0  0  0  0  0  0  4  0  0
1  2  1  0  0  0  0
M  END
$MOL
Mrv1902<PHONE_NUMBER>2D
4  3  0  0  0  0            999 V2000
4.4565   -0.3572    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
5.2815   -0.3572    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
4.0439    0.3572    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
3.2190    0.3572    0.0000 R   0  0  0  0  0  0  0  0  0  4  0  0
1  2  2  0  0  0  0
1  3  1  0  0  0  0
3  4  1  0  0  0  0
M  END
"""
rxn_r_no_map = """$RXN
  Mrv1902<PHONE_NUMBER>36

2  1
$MOL
Mrv1902<PHONE_NUMBER>2D
3  2  0  0  0  0            999 V2000
-4.5670   -0.2063    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
-5.2815    0.2062    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
-3.8525    0.2063    0.0000 O   0  0  0  2  0  0  0  0  0  0  0  0
1  2  2  0  0  0  0
1  3  1  0  0  0  0
M  MRV SMA   3 [#8H1]
M  END
$MOL
Mrv1902<PHONE_NUMBER>2D
2  1  0  0  0  0            999 V2000
-1.1418    0.0687    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
-1.9668    0.0687    0.0000 R   0  0  0  0  0  0  0  0  0  0  0  0
1  2  1  0  0  0  0
M  END
$MOL
Mrv1902<PHONE_NUMBER>2D
4  3  0  0  0  0            999 V2000
4.4565   -0.3572    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
5.2815   -0.3572    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
4.0439    0.3572    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
3.2190    0.3572    0.0000 R   0  0  0  0  0  0  0  0  0  0  0  0
1  2  2  0  0  0  0
1  3  1  0  0  0  0
3  4  1  0  0  0  0
M  END
"""
rxn_r4_map4 = """$RXN
  Mrv1902<PHONE_NUMBER>39

2  1
$MOL
Mrv1902<PHONE_NUMBER>2D
3  2  0  0  0  0            999 V2000
-4.5670   -0.2063    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
-5.2815    0.2062    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
-3.8525    0.2063    0.0000 O   0  0  0  2  0  0  0  0  0  0  0  0
1  2  2  0  0  0  0
1  3  1  0  0  0  0
M  MRV SMA   3 [#8H1]
M  END
$MOL
Mrv1902<PHONE_NUMBER>2D
2  1  0  0  0  0            999 V2000
-1.1418    0.0687    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
-1.9668    0.0687    0.0000 R#  0  0  0  0  0  0  0  0  0  4  0  0
1  2  1  0  0  0  0
M  RGP  1   2   4
M  END
$MOL
Mrv1902<PHONE_NUMBER>2D
4  3  0  0  0  0            999 V2000
4.4565   -0.3572    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
5.2815   -0.3572    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
4.0439    0.3572    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
3.2190    0.3572    0.0000 R#  0  0  0  0  0  0  0  0  0  4  0  0
1  2  2  0  0  0  0
1  3  1  0  0  0  0
3  4  1  0  0  0  0
M  RGP  1   4   4
M  END
"""
rxn_r4 = """$RXN
  Mrv1902<PHONE_NUMBER>40

2  1
$MOL
Mrv1902<PHONE_NUMBER>2D
3  2  0  0  0  0            999 V2000
-4.5670   -0.2063    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
-5.2815    0.2062    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
-3.8525    0.2063    0.0000 O   0  0  0  2  0  0  0  0  0  0  0  0
1  2  2  0  0  0  0
1  3  1  0  0  0  0
M  MRV SMA   3 [#8H1]
M  END
$MOL
Mrv1902<PHONE_NUMBER>2D
2  1  0  0  0  0            999 V2000
-1.1418    0.0687    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
-1.9668    0.0687    0.0000 R#  0  0  0  0  0  0  0  0  0  0  0  0
1  2  1  0  0  0  0
M  RGP  1   2   4
M  END
$MOL
Mrv1902<PHONE_NUMBER>2D
4  3  0  0  0  0            999 V2000
4.4565   -0.3572    0.0000 C   0  0  0  0  0  0  0  0  0  2  0  0
5.2815   -0.3572    0.0000 O   0  0  0  0  0  0  0  0  0  1  0  0
4.0439    0.3572    0.0000 N   0  0  0  0  0  0  0  0  0  3  0  0
3.2190    0.3572    0.0000 R#  0  0  0  0  0  0  0  0  0  0  0  0
1  2  2  0  0  0  0
1  3  1  0  0  0  0
3  4  1  0  0  0  0
M  RGP  1   4   4
M  END
"""
carboxylic_acid_smiles = 'NCC(N)=O'
carboxylic_acid_molobj = smiles_to_mol(carboxylic_acid_smiles)
cbz_2_hydroxy_proline = 'C1C(CN(C1C(=O)O)C(=O)OCC2=CC=CC=C2)O'
cbz_2_hydroxy_proline_molobj = smiles_to_mol(cbz_2_hydroxy_proline)
render(carboxylic_acid_molobj)
render(cbz_2_hydroxy_proline_molobj)
args = (cbz_2_hydroxy_proline_molobj, carboxylic_acid_molobj)
rxn_reactions = {
'rxn_r_map4': rxn_r_map4,
'rxn_r_no_map': rxn_r_no_map,
'rxn_r4_map4': rxn_r4_map4,
'rxn_r4': rxn_r4
}
for rxn_name, rxn_content in rxn_reactions.items():
reaction = create_reaction_from_rxn(rxn_content)
reaction.Initialize()
n_warnings, n_errors, n_reactants, n_products, labels = PreprocessReaction(reaction)
if n_errors != 0:
    print(f'reaction initialization failed: {rxn_name}')
    continue

product = reaction.RunReactants(args)

print(f'reaction: {rxn_name}')
render(reaction)
if len(product):
    for molobj in np.ravel(product):
        render(molobj)

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/rdkit/rdkit/issues/2527?email_source=notifications&email_token=ACLOFIGBUC4TVQ2URXFBHH3P5TXQNA5CNFSM4H5ITZ22YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4G5GSNUA,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACLOFICJHR6EBO5OXAZPWVLP5TXQNANCNFSM4H5ITZ2Q
.

Hey Brian,
This fixed the issue for every reaction except the one without any R mapping/atom label.
    reaction = create_reaction_from_rxn(rxn_content)
    SanitizeRxn(reaction)
    reaction.Initialize()

    n_warnings, n_errors, n_reactants, n_products, labels = PreprocessReaction(reaction)

Thanks!

Here's what's going on for the case without any R-mapping/atom labels:
When the RDKit encounters an R as an atomic symbol in a Mol block it creates a query atom that matches dummy atoms (i.e. a query for atomic number=0). This, of course, doesn't match anything in your reactants.
Since R isn't described in the CTAB spec, but it does appear frequently in mol/rxn files, I just made up a behavior for it. In this case that behavior isn't leading to what you would expect to see. If you replace R with * you get an AtomNullQuery() and everything works fine.
If you provide an R# and the M  RGP line later, the dummy-query atom is replaced with an AtomNullQuery(), which matches anything, and everything works fine.
I think there's a case to be made here for changing the way that the symbol R in a mol block is handled and treating it the same as a * atom. It changes behavior, but leads to something that is, I believe, closer to what the user likely intends. It would have the side effect of making it difficult/impossible to express a query that matches only dummy atoms in a mol block, but I don't think this is likely to be that much of a problem. What do you think @bp-kelley?

(sorry, I made an earlier comment that was incorrect... deleted that and trying it again)
For some reason I haven't tracked down yet, the reactants that come from the RXN parser have had the R atoms converted into query atoms that only match dummies (i.e. they are querying for atoms with atomic number 0). The default behavior of the Mol file parser is to have R atoms actually be dummy atoms (i.e. the atomic number is zero, but they don't have a query). Once I figure out why this is happening, we can think about solutions.

Ok, here's the block of code that's doing this:
https://github.com/rdkit/rdkit/blob/master/Code/GraphMol/ChemReactions/MDLParser.cpp#L340
At the core the problem is the way the atom symbol R is handled. Since R isn't described in the CTAB spec, but it does appear frequently in mol/rxn files, I just made up a behavior for it. So the Mol file parser adds an atom with atomic number 0. The RXN parser then converts that to a query for an atom with atomic number 0. That's leading to the strange results you are seeing. If you replace R with * you get an AtomNullQuery() from the beginning and everything works fine.
Similarly, if you provide an R# and the M RGP line later, the dummy-query atom is replaced with an AtomNullQuery(), which matches anything, and everything works fine.
I think there's a case to be made here for changing the way that the symbol R in a mol block is handled and treating it the same as a * atom. It changes behavior, but leads to something that is, I believe, closer to what the user likely intends. It would have the side effect of making it difficult/impossible to express a query that matches only dummy atoms in a mol block, but I don't think this is likely to be that much of a problem. What do you think @bp-kelley?

We had a separate discussion about this issue that was resolved in the merge above.


Encodes back query params after sorting them.

When sorting query params, they were being decoded but not encoded back. So if the params included special characters, the end URL would not have them encoded, like in this example, where the normalized URLs includes apostrophes and whitespace.
iex(1)> NormalizeUrl.normalize_url("google.com?b=foo's+bar&a=joe+smith")
"http://google.com?a=joe smith&b=foo's bar"

With the fix on this PR, the params are encoded back:
iex(1)> NormalizeUrl.normalize_url("google.com?b=foo's+bar&a=joe+smith")
"http://google.com?a=joe+smith&b=foo%27s+bar"

Also, URI.encode_query/1 takes care of ordering the params, so there's no need to manually order the params.

Thanks!

Published as 0.3.0.


[communication] upgrade dependency @azure/abort-controller to v2

API change check
API changes are not detected in this pull request.


restarting the rs_aligned_depth.launch creates issues

Hi,
I am using an Intel Realsense D415 camera with ROS and when I close a rs_aligned_depth.launch file process using keyboard interrupt and start it again, I get empty frames received error. Can you please provide a solution. Below is the output of my process in the terminal
[ INFO] [1522976513.064863759]: RGB Camera was found.
[ INFO] [1522976513.065003992]: (Fisheye, 0) sensor isn't supported by current device! -- Skipping...
[ INFO] [1522976513.065031280]: (Gyro, 0) sensor isn't supported by current device! -- Skipping...
[ INFO] [1522976513.065041558]: (Accel, 0) sensor isn't supported by current device! -- Skipping...
[ INFO] [1522976513.065063718]: setupPublishers...
[ INFO] [1522976513.222014094]: setupStreams...
[ INFO] [1522976513.229681868]: depth stream is enabled - width: 640, height: 480, fps: 60
[ INFO] [1522976513.230202205]: infra1 stream is enabled - width: 640, height: 480, fps: 60
[ INFO] [1522976513.230667241]: infra2 stream is enabled - width: 640, height: 480, fps: 60
[ INFO] [1522976513.240178910]: color stream is enabled - width: 640, height: 480, fps: 60
05/04 18:01:53,304 WARNING [139643227035392] (backend-v4l2.cpp:808) Empty frame has arrived.
05/04 18:01:53,304 WARNING [139643227035392] (backend-v4l2.cpp:808) Empty frame has arrived.
05/04 18:01:53,304 WARNING [139643227035392] (backend-v4l2.cpp:808) Empty frame has arrived.
05/04 18:01:53,304 WARNING [139643227035392] (backend-v4l2.cpp:808) Empty frame has arrived.
[ INFO] [1522976513.308964484]: publishStaticTransforms...
[ INFO] [1522976513.309395300]: RealSense Node Is Up!
05/04 18:01:53,309 WARNING [139643144107776] (backend-v4l2.cpp:808) Empty frame has arrived.
05/04 18:01:53,309 WARNING [139643144107776] (backend-v4l2.cpp:808) Empty frame has arrived.
05/04 18:01:53,309 WARNING [139643144107776] (backend-v4l2.cpp:808) Empty frame has arrived.
05/04 18:01:53,309 WARNING [139643144107776] (backend-v4l2.cpp:808) Empty frame has arrived.

I believe that this is caused by this: https://github.com/IntelRealSense/librealsense/issues/1086
which also appears to be DSO-8665 here: https://www.intel.com/content/dam/support/us/en/documents/emerging-technologies/intel-realsense-technology/RealSense-D400-Series-Spec-Update.pdf
There's a workaround branch by icarpis here that resets the camera on startup:
https://github.com/icarpis/realsense/tree/reset_dev

My setup is ROS Kinetic on Ubuntu 16.04 with RealSense ROS v2.0.3, LibRealSense v2.10.3 and D435 device with <IP_ADDRESS> firmware.
I'm having the same issue every time I relaunch roslaunch realsense2_camera rs_camera.launch after interrupting it with usual CTRL+C.
I noted also that, after the ROS launch failed, this problem is not resolved neither by the official realsense-viewer, the streams are empty and these are the error messages on the console:
WARNING [140482218329856] (types.cpp:57) get_xu(id=11) failed! Last Error: Input/output error
WARNING [140482218329856] (types.cpp:57) get_xu(id=11) failed! Last Error: Input/output error
WARNING [140482218329856] (sensor.cpp:315) Unregistered Media formats : [ UYVY ]; Supported: [ ]
WARNING [140482218329856] (types.cpp:57) set_pu(id=3) failed! Last Error: Input/output error
WARNING [140482218329856] (sensor.cpp:694) Exception was thrown when inspecting properties of a sensor
WARNING [140482218329856] (types.cpp:57) set_pu(id=9) failed! Last Error: Input/output error
WARNING [140482218329856] (sensor.cpp:694) Exception was thrown when inspecting properties of a sensor

and this is shown in the graphical interface:
Invalid Value in rs2_get_option(options:0x7fc48c005250, option:Enable Auto Exposure):
get_xu(id=11) failed! Last Error: Input/output error

The only solution I found so far is disconnect and replug the device, which is a bit annoying since I use D435 only with ROS and my current working project involves starting/stopping capture many times.
Is this unofficial branch the only solution or Intel is working on an official update on firmware or ROS package?
Thanks,
Best regards

Just a small update on realsense-viewer.
Launching the tool with the camera just replugged (a fresh start, like it was launched for the first time), streams are working fine, but I always receive these warnings... is this a normal behavior, too?
WARNING (sensor.cpp:315) Unregistered Media formats : [ UYVY ]; Supported: [ ]
WARNING (types.cpp:57) set_pu(id=3) failed! Last Error: Input/output error
WARNING (sensor.cpp:694) Exception was thrown when inspecting properties of a sensor
WARNING (types.cpp:57) set_pu(id=9) failed! Last Error: Input/output error
WARNING (sensor.cpp:694) Exception was thrown when inspecting properties of a sensor

Additionally, comparing them with the ones received after the the ROS launch was interrupted (see my previous comment), it seems that the problem occurs when get_xu(id=11).
Hope this can be of any help in solving this.

@josephduchesne  I will look into the links you mentioned. I have been using realsense with ROS package for the last 2 months and I suddenly started getting an error message if I run the ros wrapper for real-sense. Here is the error:
[camera/realsense2_camera_manager-1] process has died [pid 5159, exit code -11, cmd /opt/ros/kinetic/lib/nodelet/nodelet manager __name:=realsense2_camera_manager __log:=/home/rajath/.ros/log/12fc3a60-4338-11e8-9d35-b827ebf080fe/camera-realsense2_camera_manager-1.log].
It starts normally at first publishing the topics and ends up in this error after 30 seconds. Does anyone know the solution to this??

@RajathSwaroop How did you fix the problem using the camera over the network? My camera stop publishing after 30 seconds when I run using multiple computers.

@caiofis  Yes my issue got resolved. Most likely if you look into the error log file you might find a connection refused error. Check if you are able to ping the ROS master from all the other computers that need the feed. If you are able to ping then check for rostopic list (if it shows up all good). If you get to communicate to the ROS master and get the topic list then check if you have set ROS IP correct on the machine that you use to start the realsense ros node. Either you wont be able to ping across one machine or its ROS MASTER URI is not set correct (for the machine running realsense node) or ROS IP is not set correct.

[Please Ignore - RealSense system comment]

Close this issue for lack of activity. Please feel free to reopen if the issue is still relevant.


Add support for sendStringParametersAsUnicode property

This property is supported by the JDBC driver, allowing massive performance improvements in some cases.

Happy to review a pull request to accelerate this enhancement. Right now, we need to investigate what drivers are doing differently on TDS level.

StringCodec sends all Character payloads using 2-byte Unicode encoding with NVARCHAR/NCHAR. ClobCodec uses the database collation encoding.
This is due to the lack of type information when to use VARCHAR vs. NVARCHAR. So you should consider the mentioned option always to be true.

true is indeed the current value (assuming the option should exist). The fact that this option is not supported yet is a dealbreaker for our project, as the constructed queries cannot use the existing indexes 😢 .
I will try to work on it but the timing is a bit off for my schedule 😞 .
Thanks for your help !

Introducing sendStringParametersAsUnicode with the support of false requires minor changes to StringCodec to use the proper charset for encoding and sending the data as binary instead of TdsDataType.NVARCHAR/TdsDataType.NTEXT.
RpcParameterContext.in(…) accepts an optional collation. If the collation is set for CharSequence values, then we could take this as an indicator how to encode the String. ParametrizedMssqlStatement has access to ConnectionOptions which seems a good place to transport the config option.


fix: New version of semantic release is bugging out. Pin the version

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