Cinder backup to swift

if swift.enabled is true, the cinder-common and cinder-control roles will now setup cinder backup with swift as the backend.

Can one of the admins verify this patch?

"ok to test" to accept this pull request for testing
"test this please" for a one time test run
"add to whitelist" to add the author to the whitelist

Can one of the admins verify this patch?

"ok to test" to accept this pull request for testing
"test this please" for a one time test run
"add to whitelist" to add the author to the whitelist

Can one of the admins verify this patch?

"ok to test" to accept this pull request for testing
"test this please" for a one time test run
"add to whitelist" to add the author to the whitelist

ok to test

CI runs make use of envs/example/defaults.yml and envs/example/ci/, neither of which have a swift block. We should probably move some of the swift block from envs/example/swift/group_vars/all.yml to env/example/defaults.yml

I think this is going well, however we're missing monitoring for the cinder-backup service. Also, is this service ever addressed by the end user, or is it purely an internal service that operates via the rabbit bus?

This should be purely internal service once cinder is setup by end user.
Good catch about missing monitoring! I can add process check for cinder-backup service. Don't think we would need anything else for backup....

Just knowing the process went down is likely a good MVP to start with.
Jenkins is lying btw, the test is not successful, because of client code issues. We'll be fixing that and these will have to rebase.

Sounds good.. Let me know when issues are fixed and I will rebase/squash

This can be rebased now, the CI fixes are merged to master.

Did a rebase / squash of commits.. However, didn't really see conflicts when merging

Well, github says this is in conflict, so you'll need to fetch and rebase again.

Yes - zrs233 branch was behind few commits... Should be rebased now

This looks good to me now.
Operationally, does cinder create a container within swift for the backups itself? Is there anything on the swift side that must be done to allow cinder to make use of it?

No changes to Swift are required. Cinder backup uses keystone endpoint to connect to swift. Backup service automatically creates container to store backups if container name is not specified in conf file.

What about credentials for cinder to log into swift? Is that already
covered too?

jlk

On Tue, Sep 8, 2015 at 10:30 AM, ryshah<EMAIL_ADDRESS>wrote:

No changes to Swift are required. Cinder backup uses keystone endpoint to
connect to swift. Backup service automatically creates container to store
backups if container name is not specified in conf file.
—
Reply to this email directly or view it on GitHub
https://github.com/blueboxgroup/ursula/pull/1149#issuecomment-138641904.

Correct - unless per_user backup option is not selected, Cinder service handles login credentials as well.


x-forwarded-client-cert doesn't forward SAN DNS names, only one URIName record is forwarded

Title: x-forwarded-client-cert doesn't forward SAN DNS names, only one URIName record is forwarded
Description:
A certificate can support multiple DNS names through SAN but XFCC header is only forwarding URI name type and ignoring all DNS name types.
Example SAN from certificate
X509v3 Subject Alternative Name:
URI:https://example.com, DNS:example.com, DNS:www.example.com
[optional Relevant Links:]
Code link: https://github.com/envoyproxy/envoy/blob/568d90b787539e627e58b17f9643c27171b485a8/source/common/ssl/ssl_socket.cc#L266
I am not 100% sure whether it's intended functionality or bug but as per RFC 2818, SAN DNS names are useful in TLS verification.

cc @myidpt @PiotrSikora

In Linkerd, this was resolved by adding DNS SAN entries directly to the XFCC header (keeping existing values same for backward compatibility). The XFCC now looks like:
Hash=468ed33be74eee6556d90c0149c1309e9ba61d6425303443c0748a02dd8de688;SAN=https://example.com;DNS=example.com;Subject="Test CN"
Can we look at similar solution in envoy?

Sure patches welcome. I think you will want to make this behavior configurable per the other values: https://github.com/envoyproxy/data-plane-api/blob/master/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.proto#L208.

Sure, will make the behavior configurable, am working on it, should have a PR in few days.

@shakti-das I'm not saying no, but the linked section of RFC talks about Server Identity, whereas we're talking about forwarding Client Identity. What's the use case here?

I know how this works, I was just wondering whether you have real products validating clients based on the DNS name, or is this a theoretical change.

We have products which are validating DNS names from SAN and that's when we noticed this missing.


Favorite mounts saved on a per character basis...

Greetings Mr Walden !
I've been using your 'ravenous addon' for some time now and it works well ^^... I thank you for it ! And merely as suggestions, here are the only two (really major) additions I could imagine for it :

Woud there be a way of saving favorite mounts on a per character basis ? There are multiple threads opened every year on the offical forums about that (https://us.battle.net/forums/en/wow/topic/20759646595), but I'm affraid we won't see that coming for now, so some addons already have tackled that question... And that's a shame precisely when using yours, since it relies heavily on that (default) 'favorite mounts' option. As soon as a player starts having several very different but equally important characters, the idea of tailoring them for each of them spawns fast. Mostly for RP/aesthetical purposes (matching classes, skins & equipment to selected mounts), but also sometimes for more practical needs (characters reserved for certain activities, etc.). For example, my level 30 rogue is (obviously) not having the same priorities than his older (level 101) brother or my level 70 paladin. Etc. This can be done by switching different (modified) versions of your macro, but if you had a more user-friendly idea, it would be great...

Allow people to set 'class based' mounts as their favorites. Default UI doesn't allow that, which is ennoying, and the only (older) addon which tried to tackle that (with more or less success, but she could not avoid some tainting issues, from what I understood) is Phanx's (http://www.wowinterface.com/downloads/info23261-AnyFavoriteMount.html#info). Now, if you could somehow implement a solution in yours...

Thank you again for your work anyway ! Cheers !
Benjamin

Sorry to get back to you so late!
I haven’t been neglecting this; I’ve actually been considering how to implement these new features without compromising the core of the AddOn too much. Naturally, perusing Phanx’s code and comparing it to my own has left me feeling like a bit of a noob, but I’ll get something done with this ASAP.
Thanks very much for sending this in and for your kind words about my labour of love! 😄 Hope you have a fantastic New Years if I don’t manage to get this sorted by then.

Don't be shy about your code ! I'm not much of a coder myself - just the basis all old players end up with, after years of tinkering with better people's work ^^ -, but it's precisely its simplicity, and yet cleverness, which makes it remarkable in the end, especially compared to the dozen of other similar addons. So you're indeed very wise in taking your time to avoid compromising your core's structure while building upon it...
Somehow, your addon reminds me of (author) Daft's works, which you can find partly on Curse (https://www.curseforge.com/wow/addons/sfframefade or https://www.curseforge.com/wow/addons/daftauction for example ; just type "Daft" for more) or even more on WoWInterface - that Tony fellow actually conceived interesting addons for every single part of the UI ^^, though he seems gone or taking a break now. They were purposefully very simple (no GUI, etc.) for robustness' sake, in order 'to stand the test of time' (and patches ^^) like he said...
I just know Phanx out of reputation, from reading her threads or perussing her code lines like you said. Seems already far more complex indeed - and that's why her absence is rather sad : I haven't found any other addon than "Class Colors" which tackled the 'custom class color' question.  It does support druid flight forms, I think (but never tested, since I don't own a druid), but I'm not so sure about the shaman's or worgen's one - same reasons ; never tried - and in the end, your concept still offers a lot more flexibility. So you see : a coder's talent doesn't mean everything ^^... And yes, your care about this one is obvious ;) ; good work always shows anyway.
I've actually been, these last months, more in a testing phase (about WoW) than a 'playing' one ^^ : trying to (re)think ('out of the box' ^^) about different ways of displaying each kind of information related to the game, experimenting with UIs and addons, etc. Sort of a fun mental exercise... I wouldn't say that I've tested each and every WoW addon, but hundreds of them for sure, so I'm starting to get a good grasp of what has been done and what hasn't been tried (yet), what works, how and why (or not ^^), and what (in the end) can still be reduced (with all respect due to the authors) to a bunch of 'false good ideas' - you know, like in reality, the kind of gadget with dozens of functions, but no single really useful, appropriate and functionnal one.
Take "Mount Journal Enhanced" for example : though (as I said) I'm not much of a coder, it's pretty obvious that with so much functions and different goals, it will always remain some kind of bloated gas factory, full of bugs and randomness - which it is : there are always people reporting problems in its comments -, except if one day a very talented professional coder fully commits himself to it. Too much ambitions can quickly become counter-productive...
To be honest, I also considered using LiteMount, which is quite a fine work too, but though it does offer more flexibility and features than, let's say Phanx's "MountMe", it doesn't match the sheer simplicity of your addon's macro approach... and doesn't offer, for example, innate modifier keybinds for merchant mounts, group travel, etc. - that and the fact that I don't have the need for all the special 'spell based' mounts, as said above.
So no, as said at the beginning, don't be shy about your code and concept ^^ ! Regardless of all personal preferences, I don't know about any other mounting addon which could put it to shame ^^... The two points above really are, according to me, the only major additions which could improve it noticeably, without extending yourself out of your initial project's scope - "LiteMount" offers tons of customisation in a neat GUI, but also (for this very reason) requires a lot more work before being able to truly use it correctly - or trying to face completely different challenges - like those 'spell-based mounts'.
Have a nice end of the year too ! Cheers !
Benjamin

Hey there,
Sorry to leave this Issue lagging behind without any word from me.
I think I've decided that I want to tackle the second of your requests, robust class mount summoning, but I'd rather not add too much complexity to the AddOn with the first, that summoning lists be unique to each character.
In this case, I think I'll rely on an inclusion setting (i.e. /ravmounts include class) which would be checked on the fly every time a mount is requested.

Hello again !
No problem for the delay ! I'm just returning to the game myself, after a break...
And I agree : better not add any feature that you're unsure about. And that feature obviously requires something like a 'profile-per-character' GUI or at least 'macro-per-character' one, which means a lot more work that your initial aim. You can always try to solve that issue later, if your mind is struck by a sudden bolt of genius ^^...
Now, regarding the second point, the main question, to me, remains how to offer that option without imposing it. As long as you addon builds upon the default 'favorite mounts' system, there's no problem at all : everyone can choose to include any appreciated mount to their list. That's certainly why Phanx - who seems to have returned to WoW, since some of her addons are now getting minor updates once again - choose to (try to) improve that concept alone... Therefore, if you're just going to rely on a simple inclusing setting - which is a good idea in itself ! -, I think you'ld better make that one can be turned off by those uninterested in having those class mounts automatically show up. Especially if it means that they'll come up in priority... Another idea could be adding a new modifying key, dedicated to class mounts, but maybe this too would mean unecessary complications...
Cheers !
Benjamin


Homebridge visible in iOS, but iOS says it cannot connect

Hi,
I'm using Homebridge together with FHEM and the homebridge-fhem plugin on a Raspberry Pi 3.
Things have worked fine until I moved the /var/log directory to a tmpfs mount in order to protect my microSD card and made FHEM place its logs there. Permissions on /var/log are set up such that the user running homebridge has write permission to it.
I already tried to delete the folders "persist" and "accessories" in the homebridge config dir, because this has helped some time in the past when something was messed up, but this time it didn't change anything.
iOS sees Homebridge as a bridge, warns about the device being not certified, accepts the pairing code, but then says it cannot connect.
homebridge -D shows the following output when trying to connect with the iOS HomeKit App:
fhem@ophelia:~$ DEBUG=* homebridge -D 2>&1 >homebridge-debug-out.txt
*** WARNING *** The program 'nodejs' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see http://0pointer.de/avahi-compat?s=libdns_sd&e=nodejs
*** WARNING *** The program 'nodejs' called 'DNSServiceRegister()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see http://0pointer.de/avahi-compat?s=libdns_sd&e=nodejs&f=DNSServiceRegister
[2017-06-30 12:58:01] Warning: skipping plugin found at '/usr/lib/node_modules/homebridge/node_modules/homebridge-fhem' since we already loaded the same plugin from '/usr/lib/node_modules/homebridge-fhem'.
[2017-06-30 12:58:03] [FHEM] no siri device found. please define it.
EventedHTTPServer Server listening on port 51826 +0ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] New connection from client +2m
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP server listening on port 40577 +4ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP request: /pair-setup +88ms
HAPServer [CC:22:3D:E3:CE:30] HAP Request: POST /pair-setup +3ms
HAPServer [CC:22:3D:E3:CE:30] Pair step 1/5 +9ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP Response is finished +1s
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP request: /pair-setup +9s
HAPServer [CC:22:3D:E3:CE:30] HAP Request: POST /pair-setup +1ms
HAPServer [CC:22:3D:E3:CE:30] Pair step 2/5 +4ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP Response is finished +1s
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP request: /pair-setup +159ms
HAPServer [CC:22:3D:E3:CE:30] HAP Request: POST /pair-setup +1ms
HAPServer [CC:22:3D:E3:CE:30] Pair step 3/5 +2ms
HAPServer [CC:22:3D:E3:CE:30] Pair step 4/5 +24ms
HAPServer [CC:22:3D:E3:CE:30] Pair step 5/5 +4ms
Accessory [Homebridge] Paired with client 06321815-FDCF-416C-ADA9-2F7D439A50C9 +10ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP Response is finished +7ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] Client connection closed +23ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] New connection from client +12ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP server listening on port 35705 +2ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP connection was closed +5ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP server was closed +2ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP request: /pair-verify +5ms
HAPServer [CC:22:3D:E3:CE:30] HAP Request: POST /pair-verify +1ms
HAPServer [CC:22:3D:E3:CE:30] Pair verify step 1/2 +2ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP Response is finished +18ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP request: /pair-verify +50ms
HAPServer [CC:22:3D:E3:CE:30] HAP Request: POST /pair-verify +0ms
HAPServer [CC:22:3D:E3:CE:30] Pair verify step 2/2 +2ms
HAPServer [CC:22:3D:E3:CE:30] Client 06321815-FDCF-416C-ADA9-2F7D439A50C9 verification complete +5ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP Response is finished +2ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP request: /accessories +14ms
HAPServer [CC:22:3D:E3:CE:30] HAP Request: GET /accessories +1ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP Response is finished +33ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP request: /pairings +176ms
HAPServer [CC:22:3D:E3:CE:30] HAP Request: POST /pairings +1ms
HAPServer [CC:22:3D:E3:CE:30] Removing pairing info for client +2ms
Accessory [Homebridge] Unpairing with client 06321815-FDCF-416C-ADA9-2F7D439A50C9 +1ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP Response is finished +5ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] Client connection closed +15ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP connection was closed +1ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP server was closed +1ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] New connection from client +850ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP server listening on port 45399 +1ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP request: /pair-verify +6ms
HAPServer [CC:22:3D:E3:CE:30] HAP Request: POST /pair-verify +1ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP Response is finished +2ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] Client connection closed +18ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP connection was closed +2ms
EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP server was closed +0ms
The full output is attached to this issue.
homebridge-debug-out.txt

Problem seems to be fixed: FHEM or Homebridge seem to place a file "eventTypes.txt" in the log directory, which Homebridge seems to require, and apparently I forgot to copy that over to the tmpfs log volume. Now i put a cp command in the FHEM init script that copies it over to the tmpfs log, and it works...


Formal Reviews Submission Process updated

fix #183
Reworked the Formal Reviews intro to match the style of User Guide/Contributor Guide. Separated out the Review managers role. Added links as appropriate.

Looks good. Is it good to go?

@alandefreitas Yes - shall I squash first?

shall I squash first?

Sure. Thanks.

@alandefreitas done!


Added quickcheck tests, minor code refactoring

Moved galois tests into a separate file
Moved extern crate stuff around a bit

Coverage increased (+0.004%) to 98.694% when pulling 0b169bcd1268c03f0a4d11381e2f705f32e278c6 on test into 6923c6ca290df9903fff70be6fec5d1a0989451a on master.

Codecov Report

Merging #7 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master       #7      +/-   ##
==========================================
+ Coverage   98.77%   98.77%   +<.01%
==========================================
  Files           8        9       +1
  Lines        2362     2370       +8
==========================================
+ Hits         2333     2341       +8
  Misses         29       29

Impacted Files
Coverage Δ

src/lib.rs
96.69% <ø> (ø)
:arrow_up:

src/galois.rs
100% <100%> (ø)
:arrow_up:

src/galois_test.rs
100% <100%> (ø)

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 6923c6c...0b169bc. Read the comment docs.


clone - suggests incorrect branches when warning about being too high in the repository path

Continuing the discussion from #330
Ok, so I've tried this with three different scenarios
Scenario A
Clone a repository that doesn't have a trunk folder, but instead several folders, similar to the ones below. No branches.
BuildProcessTemplates
FolderA
FolderB
FolderC

Result: I get the warning about being too high in the repository, and git tfs suggests using some branches of unrelated projects (two of them are actual branches, one is a trunk).
Scenario B
I clone the trunk of a repository that has a single branch.
e:\projects>git tfs clone https://<server>/tfs/DefaultCollection "$/<project>/trunk"
Initialized empty Git repository in e:/projects/<project>/.git/
warning: you are going to clone the whole repository or too high in the repository path !
   => If you want to manage branches with git-tfs, clone one of this branch instead :
 - $/<other-project>/<branch>\n - $/<other-project>/trunk\n - $/<other-project>/<branch>

Result: I still get the warning, and git tfs suggests the exact same branches as before.
Scenario C
I clone an entire repository that has a single branch.
Result: I still get the warning and the exact same branches as before are suggested. The trunk folder for the current repo is not one of them though, even though it should be.

There where a lot of changes made in git-tfs, so this needs to be retested with the latest version if it is still an issue.
As we are trying to clean up old/stale issues and this issue hasn't seen any updates (or progress with pull requests) in quite a while, the issue will be closed. In case further information is provided, we can revisit that and reopen the issue.


v3.22 release manifests do not contain CRDs anymore

Expected Behavior

We're installing Calico from the documented URLs (https://docs.projectcalico.org/vX.Y/manifests/calico.yaml) using FluxCD. We've upgraded from v3.21 to v3.22 20 days ago. Everything works :)
Current Behavior

This morning I woke up to calico-kube-controllers crashlooping due to a missing CRD. On investigation, it appeared that the release manifests for 3.22 have been changed to not include any CRDs anymore. I'm assuming this change is not intended.
Possible Solution

Based on the timeline, I suspect the breaking change was introduced with #5946
Steps to Reproduce (for bugs)

curl -sL https://docs.projectcalico.org/v3.21/manifests/calico.yaml | grep "kind: CustomResourceDefinition"
kind: CustomResourceDefinition
kind: CustomResourceDefinition
kind: CustomResourceDefinition
kind: CustomResourceDefinition
kind: CustomResourceDefinition
kind: CustomResourceDefinition
kind: CustomResourceDefinition
kind: CustomResourceDefinition
kind: CustomResourceDefinition
kind: CustomResourceDefinition
kind: CustomResourceDefinition
kind: CustomResourceDefinition
kind: CustomResourceDefinition
kind: CustomResourceDefinition
kind: CustomResourceDefinition
kind: CustomResourceDefinition
kind: CustomResourceDefinition

curl -sL https://docs.projectcalico.org/v3.22/manifests/calico.yaml | grep "kind: CustomResourceDefinition"

Context

Sufficient context has been provided above.
Your Environment

Calico version v3.22
Orchestrator version (e.g. kubernetes, mesos, rkt): v1.23.5
Operating System and version: n/a
Link to your project (optional):

@itspngu We think we've fixed this now. If you feel like having another go, it would be great if you can confirm or deny.

The curl output looks fine now:
$ curl -sL https://docs.projectcalico.org/v3.22/manifests/calico.yaml | grep "kind: CustomResourceDefinition" | wc -l
17

$ curl -sL https://docs.projectcalico.org/v3.21/manifests/calico.yaml | grep "kind: CustomResourceDefinition" | wc -l
17

I'm a little hesitant to touch anything related to calico right now, as I had to spend 2 hours identifying the issue and repairing our staging environment while devs were complaining :D (the downgrade to 3.21 was not trivial, I had to drain and replace all nodes as well as the control plane, but didn't think of grabbing logs at the time). I think it's safe to assume that the problem is fixed though.
Slightly offtopic, but do you provide "immutable" copies of the manifests somewhere? Getting them from the repo is not really an option because they seem to be generated in CI, and getting them from the release artifacts does not work in our specific case (usage of FluxCD) because Kustomize dropped support for tarballs as a source a while ago.

Thanks for looking, and apologies.  I'll let @caseydavenport answer the follow-up manifest question, as he understands the factors involved much better than me.

No worries, mistakes happen everywhere, all the time. Thanks for the hard work. Just taking the chance to rethink our own deployment strategy.

Very sorry for this one, completely on me. I'll see how we can ensure this type of mistake doesn't happen in the future.

getting them from the release artifacts does not work in our specific case (usage of FluxCD) because Kustomize dropped support for tarballs as a source a while ago.

right now, the only place is within the release artifacts. If you need them immutable, we generally recommend that you snapshot the manifests and keep your own copies (e.g., pull them from the release tar and keep them in your own config management system).
There is an open issue though here tracking this: https://github.com/projectcalico/calico/issues/2587
I would like to stop auto-generating the manifests, so that you can pull the manifests straight from the repo at the release commit ID and get an immutable copy. It's on my backlog.


flow:iio: Add Magnet sensor Category support into iio node

Change-Id: I917796bac0b403653ef26013351a435f6ee9f26a
Signed-off-by: guchaojie<EMAIL_ADDRESS>

@edersondisouza  This PR is about magnet category . However, We have another about 5 sensor category which is similar with previous category. May I submit one PR to support these 5 types for your review instead of submitting one by one?

@guchaojie About more categories to be added, you can send them in one PR, sure, but on different commits - one for each sensor, please. This way we keep them better organised, I think.
And now that you are working on this batch of patches, you could 'factor out' some common code, to avoid duplication. For instance, macro ADD_CHANNEL could take the whole name of channel, and be defined for the whole 'nodes.c' file. The 'open' function for each sensor also shares lots of similarities, maybe add some helpers to set node data mdata based on options data options. Same goes for 'tick' functions...
That's it - now I'll wait eagerly these new patches =D

@edersondisouza  We think about factoring out common code for some time at the beginning to do work.
For open function, I think we need define new function to use "switch ..case" method to define different custom data type and function name such as magnet_read_cb ...

@edersondisouza  We think about factoring out common code for some time at the beginning to do work. But at that time, we found that it did not make sense to modify existing code architecture according to flow node design. In iio.json file, every type  has one to one correspondence with a serious of sensor operation and custom data type. Although the implementation is similar , every category has its own custom type such as pressure_data, temperature_data and so on.  So you can hardly differentiate with different code path in runtime. Only we can do is to define at least 2 "switch ..case" to define different custom data type and pass in different code section and the problem is that only we can know which custom type definition is to get the function name such as pressure_open from json file definition, which cannot get type name according to function name.
All in all, I think we can keep current source code architecture to extend sensor category fastly, at the same time , we will try to factor out more common code step by step.


Remove "Python 3" category from Projects page?

It's been over four years since the sunset of Python 2.7, so it might be time to remove the "Python 3" category on the Projects page.
At the moment, there are only two projects that have "needs improvement" under Python 3.

Even without any updates to policy (PHEP3 and such), I don't think this column is of use to our users, and can probably be hidden from display immediately.


获取30天用电量的时候报错

麻烦大佬看一下哈：
root@docker:~/sgcc_electricity_new# docker logs -f sgcc_electricity
2024-06-11 00:47:45  [INFO    ] ---- 程序开始，当前仓库版本为1.3.3，仓库地址为https://github.com/ARC-MX/sgcc_electricity_new.git
2024-06-11 00:47:45  [INFO    ] ---- chromium-driver version is 120
2024-06-11 00:47:45  [INFO    ] ---- MongoDB connection test successful
2024-06-11 00:47:45  [INFO    ] ---- 当前登录的用户名为: {{手机号}}，homeassistant地址为http://<IP_ADDRESS>:8123/,程序将在每天00:00执行
2024-06-11 00:47:45  [INFO    ] ---- 此次为首次运行，等待时间(FIRST_SLEEP_TIME)为10秒，可在.env中设置
2024-06-11 00:47:55  [INFO    ] ---- patching driver executable /usr/bin/chromedriver
2024-06-11 00:48:06  [INFO    ] ---- Webdriver initialized.
2024-06-11 00:48:07  [INFO    ] ---- Open LOGIN_URL:https://www.95598.cn/osgweb/login
2024-06-11 00:48:17  [INFO    ] ---- find_element 'user'.
2024-06-11 00:48:28  [INFO    ] ---- input_elements username : {{手机号}}
2024-06-11 00:48:28  [INFO    ] ---- input_elements password : {{密码}}
2024-06-11 00:48:28  [INFO    ] ---- Click the Agree option.
2024-06-11 00:48:58  [INFO    ] ---- Click login button.
2024-06-11 00:48:58  [INFO    ] ---- Get electricity canvas image successfully.
2024-06-11 00:48:58  [INFO    ] ---- Image CaptCHA distance is 275.
2024-06-11 00:49:09  [INFO    ] ---- Login successfully on https://www.95598.cn/osgweb/login
2024-06-11 00:49:29  [INFO    ] ---- 将获取1户数据，user_id: ['{{户号}}']
2024-06-11 00:49:51  [INFO    ] ---- Get electricity charge balance for {{户号}} successfully, balance is 216.04 CNY.
2024-06-11 00:50:13  [INFO    ] ---- Get year power usage for {{户号}} successfully, usage is 2167 kwh
2024-06-11 00:50:13  [INFO    ] ---- Get year power charge for {{户号}} successfully, yealrly charge is 1159.9 CNY
2024-06-11 00:50:23  [INFO    ] ---- Get month power charge for {{户号}} successfully, 2024-01-01-2024-01-31 usage is 457 KWh, charge is 248.32 CNY.
2024-06-11 00:50:23  [INFO    ] ---- Get month power charge for {{户号}} successfully, 2024-02-01-2024-02-29 usage is 375 KWh, charge is 194.11 CNY.
2024-06-11 00:50:23  [INFO    ] ---- Get month power charge for {{户号}} successfully, 2024-03-01-2024-03-31 usage is 469 KWh, charge is 257.9 CNY.
2024-06-11 00:50:23  [INFO    ] ---- Get month power charge for {{户号}} successfully, 2024-04-01-2024-04-30 usage is 451 KWh, charge is 243.53 CNY.
2024-06-11 00:50:23  [INFO    ] ---- Get month power charge for {{户号}} successfully, 2024-05-01-2024-05-31 usage is 415 KWh, charge is 216.04 CNY.
2024-06-11 00:51:34  [ERROR   ] ---- Webdriver quit abnormly, reason: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//*[@id='pane-second']/div[1]/div/label[2]/span[1]"}
  (Session info: chrome=120.0.6099.224)
Stacktrace:
#0 0x5dd4fb711233 <unknown>
#1 0x5dd4fb3db0fe <unknown>
#2 0x5dd4fb424ba6 <unknown>
#3 0x5dd4fb424cc1 <unknown>
#4 0x5dd4fb472204 <unknown>
#5 0x5dd4fb45244d <unknown>
#6 0x5dd4fb46f680 <unknown>
#7 0x5dd4fb4521a3 <unknown>
#8 0x5dd4fb41713e <unknown>
#9 0x5dd4fb418712 <unknown>
#10 0x5dd4fb6e6534 <unknown>
#11 0x5dd4fb6e9759 <unknown>
#12 0x5dd4fb6e9238 <unknown>
#13 0x5dd4fb6e9c05 <unknown>
#14 0x5dd4fb6d8abf <unknown>
#15 0x5dd4fb6e9f8e <unknown>
#16 0x5dd4fb6c2c86 <unknown>
#17 0x5dd4fb7023e5 <unknown>
#18 0x5dd4fb7025cb <unknown>
#19 0x5dd4fb7107bf <unknown>
#20 0x72030cb31ea7 start_thread
. 5 retry times left.
2024-06-11 00:51:34  [ERROR   ] ---- state-refresh task failed, reason is cannot unpack non-iterable NoneType object
Traceback (most recent call last):
  File "/app/data_fetcher.py", line 254, in fetch
    return self._fetch()
  File "/app/data_fetcher.py", line 287, in _fetch
    last_daily_date_list, last_daily_usage_list, yearly_charge_list, yearly_usage_list, month_list, month_usage_list, month_charge_list  = self._get_other_data(driver, user_id_list)
  File "/app/data_fetcher.py", line 438, in _get_other_data
    self.save_30_days_usage(driver, user_id_list[i - 1])
  File "/app/data_fetcher.py", line 561, in save_30_days_usage
    self._click_button(driver, By.XPATH, "//*[@id='pane-second']/div[1]/div/label[2]/span[1]")
  File "/app/data_fetcher.py", line 590, in _click_button
    click_element = driver.find_element(button_search_type, button_search_key)
  File "/usr/local/lib/python3.9/site-packages/selenium/webdriver/remote/webdriver.py", line 856, in find_element
    return self.execute(Command.FIND_ELEMENT, {
  File "/usr/local/lib/python3.9/site-packages/selenium/webdriver/remote/webdriver.py", line 429, in execute
    self.error_handler.check_response(response)
  File "/usr/local/lib/python3.9/site-packages/selenium/webdriver/remote/errorhandler.py", line 243, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//*[@id='pane-second']/div[1]/div/label[2]/span[1]"}
  (Session info: chrome=120.0.6099.224)
Stacktrace:
#0 0x5dd4fb711233 <unknown>
#1 0x5dd4fb3db0fe <unknown>
#2 0x5dd4fb424ba6 <unknown>
#3 0x5dd4fb424cc1 <unknown>
#4 0x5dd4fb472204 <unknown>
#5 0x5dd4fb45244d <unknown>
#6 0x5dd4fb46f680 <unknown>
#7 0x5dd4fb4521a3 <unknown>
#8 0x5dd4fb41713e <unknown>
#9 0x5dd4fb418712 <unknown>
#10 0x5dd4fb6e6534 <unknown>
#11 0x5dd4fb6e9759 <unknown>
#12 0x5dd4fb6e9238 <unknown>
#13 0x5dd4fb6e9c05 <unknown>
#14 0x5dd4fb6d8abf <unknown>
#15 0x5dd4fb6e9f8e <unknown>
#16 0x5dd4fb6c2c86 <unknown>
#17 0x5dd4fb7023e5 <unknown>
#18 0x5dd4fb7025cb <unknown>
#19 0x5dd4fb7107bf <unknown>
#20 0x72030cb31ea7 start_thread

Traceback (most recent call last):
  File "/app/main.py", line 57, in run_task
    user_id_list, balance_list, last_daily_date_list, last_daily_usage_list, yearly_charge_list, yearly_usage_list, month_list, month_usage_list, month_charge_list = data_fetcher.fetch()
TypeError: cannot unpack non-iterable NoneType object

破案了，要签约智能交费才能看到30天的数据，不然就只能看到7天的（话说这个是否能优化？感觉很多人都没开通这个智能交费）

其实我不太清楚30天电费有啥用，所以我就没在这上面花很多心思


Redesigned UI

The black color pane is intended, right?

Looks good for a prototype! Hope that the balance bar can be changed later. The reminders seem to take up a lot of space and can be tweaked.
I cloned the repository and found some bugs:

The background of the list panel is incorrect

The graph/stats panel items keep shifting when you click another tab pane and hit any key or focus on another element.


Problematic filetype detection

This plugin does not work for typescript filetypes other than the closed list defined here. For example, it does not work for this filetype: typescript.javascript. However, it does work for typescript.jsx. Makes no sense. Instead of checking against a closed list containing all possible combinations (which is really impossible, TBH), I believe you should simply check if the filetype contains a "typescript" FT, or even better, to allow this list to be configurable/extendable.

Search terms: compound filetypes
The above solution works great. It took me some time to discover it. Hope adding "compound filetypes" to this page will help others to find it quicker.


add test CIL vs CVXPy for TGV

Unittest  for TGV denoising: CIL vs CVXPy
Note: Until, we agree on the algorithm class, this test contains all the ingredients needed to set up the TGV regulariser for the TGV algorithm.  The test will remain the same in the future but instead of using PDHG for TGV, we will use the proximal method of TGV, i.e., TGV.proximal
Close #1122

I suppose you would want to have TotalGeneralisedVariation as a CIL Function rather than constructing it like in the unit test. But I guess that's what you mean in your notice.

The purpose of the TotalGeneralisedVariation, directionalTV and many others in the future is to provide the user a flexible way to use these regularisers without building them inside an algorithm. So they can use it for simple image space appications denoising/deblurring or for tomography and used it inside another algorithm, e.g., g = TGV(....) and g.proximal(....).
The purpose of the tests is to validate that the solution for a specific regulariser using CIL is the same as the solution using CVXpy. It's not important what kind of algorithm we use for CIL and how we set up TGV or dTV in order to be used for this algorithm.

Closed by #1054


chore(deps): upgrade configuration

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-configuration-1.x" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 2840

Questions ?
Please refer to the Backport tool documentation


Ability to set LoadBalancer IP

It would be nice to have possibility to set LoadBalancer IP address in Helm chart
Ideally having all the option like in this file
https://github.com/k8s-at-home/charts/blob/master/templates/chart/values.yaml
would be great

yep, helm charts are very rudimentary atm. Happy to accept PRs.

Fixed in chart version 1.0.1 see https://github.com/ori-edge/k8s_gateway/tree/master/charts/k8s-gateway for documentation


Update README.md

accessToken, refreshToken and expires are all protected properties, so their getters should be used.

Coverage decreased (-0.5%) to 70.175% when pulling 3f2ec9bd182f102007c90a960163abb06b7a77cb on nisbeti:patch-1 into 56ec32e7c2dbc2bef725dba8c10eb8662b871e53 on thephpleague:master.

:+1:


Migrate to Cookiecutter project

https://github.com/Wakoma/Lokal-Cookiecutter for example.

I suppose this was done by the restruct


Error converting file, FFMPEG error.

Hi
So all of a sudden the convertion failes both automatic through couch potato and manual.
I have already checked that subtitles-encoding is set to nothing but it still doesn't work.
Hope you can help and thanks for the great script!
FFMpegConvertError: <FFMpegConvertError error="Exited with code 1", pid=13016, cmd="C:\Users\Christian\Documents\FFMPEG\bin\ffmpeg.exe -fix_sub_duration -i The.Conjuring.2.2016.1080P.Bluray.X264-Sparks.mkv -vcodec copy -map 0:0 -c:a:0 aac -map 0:1 -disposition:a:0 default -ac:a:0 2 -b:a:0 256k -metadata:s:a:0 language=eng -strict experimental -c:a:1 copy -map 0:1 -metadata:s:a:1 language=eng -disposition:a:1 none -c:s:0 mov_text -map 0:3 -metadata:s:s:0 language=eng -f mp4 -threads auto -y a:\Downloads\Couch Potato\Conjuring 2, The (2016)\The.Conjuring.2.2016.1080P.Bluray.X264-Sparks.mp4">
a:\Downloads\Couch Potato\Conjuring 2, The (2016)\The.Conjuring.2.2016.1080P.Bluray.X264-Sparks.mp4 deleted.
My config looks likes this:
[SickBeard]
host = localhost
port = 8081
username =
password =
web_root =
ssl = 0
api_key =
[Sonarr]
host = localhost
port = 8989
web_root =
ssl = 0
apikey =
[MP4]
ffmpeg = C:\Users\Christian\Documents\FFMPEG\bin\ffmpeg.exe
ffprobe = C:\Users\Christian\Documents\FFMPEG\bin\ffprobe.exe
threads = auto
output_directory =
copy_to =
move_to = A:\Itunes\Føj automatisk til iTunes
output_extension = mp4
output_format = mp4
delete_original = True
relocate_moov = True
video-codec = h264,x264
video-bitrate =
video-max-width =
h264-max-level =
use-qsv-decoder-with-encoder = True
ios-audio = True
ios-first-track-only = False
ios-audio-filter =
max-audio-channels =
audio-codec = ac3
audio-language =
eng,danaudio-default-language = eng
audio-channel-bitrate =
audio-filter =
subtitle-codec = mov_text
subtitle-language = eng
subtitle-default-language = eng
subtitle-encoding =
fullpathguess = True
convert-mp4 = True
tagfile = True
tag-language = en
download-artwork = Poster
download-subs = True
embed-subs = True
sub-providers = addic7ed,podnapisi,thesubdb,opensubtitles
permissions = 0777
post-process = False
pix-fmt =
audio-default-language =
[CouchPotato]
host = localhost
port = 5050
username =
password =
web_root =
ssl = 0
apikey = c15a881dca534929940d170f9a6d8c4c
delay = 65
method = renamer
delete_failed = 0
[uTorrent]
convert =
couchpotato-label = couchpotato
sickbeard-label = sickbeard
sonarr-label = sonarr
bypass-label = bypass
sickrage-label = sickrage
webui = False
action_before = stop
action_after = removedata
host = http://localhost:8080/
username =
password =
[Deluge]
host = localhost
username =
convert = True
password =
sonarr-label = sonarr
bypass-label = bypass
sickbeard-label = sickbeard
port = 58846
sickrage-label = sickrage
couchpotato-label = couchpotato
[SABNZBD]
convert = True
sickrage-category = sickrage
sonarr-category = sonarr
bypass-category = bypass
couchpotato-category = couchpotato
sickbeard-category = sickbeard
[Sickrage]
host = localhost
port = 8081
username =
password =
web_root =
ssl = 0
api_key =
aab082b86210a83724ce00d0e18c5902
[Plex]
host = localhost
port = 32400
refresh = True
token =

Can you post the full error log?

Just pushed an update that will have the script spit out a lot more debugging information when FFMPEG errors are encountered. Update and rerun and post the output please.

Hi again!
It seems that it only happend on one video so it most be a fault with FFMPEG. But thanks for your repley anyway! :-)


Data Model Versioning POC

I'm working through a POC for model versioning. I'm done w/ explicit version definition.
Need help understanding the DX for automated versioning. This currently works and should be relatively low effort from here.

Do you want to merge this? or keep it here?

Keep here for now until we settle on the DX for the version control.

Closing this PR since we're going in a different direction w/ git based workflow


DEV-848 add suspend team function to services-team

SonarQube analysis reported 5 issues

 5 major

Watch the comments in this conversation to review them.

SonarQube analysis reported 1 issue

 1 critical

Watch the comments in this conversation to review them.


[Numpy]  implement numpy op sinc with tvm

https://docs.scipy.org/doc/numpy/reference/generated/numpy.sinc.html
this op is different with other op, if your data type is "int" type, your output  data type is float64, but  it has no backward.

@mxnet-label-bot  add label numpy

@reminisce  @yzhliu  thx for  reviewing


Context Get method should return interface type

Currently, you can put anything in the context. Which was allowed after the fix for this issue.
But it will type assert any value to a string nevertheless.
I propose to allow to retrieve an interface instead. Which would be a breaking change

@markelog context.GetAny() exists for this purpose: https://godoc.org/github.com/gocolly/colly#Context.GetAny

I see, thanks, missed that one


Allow 'Release Views' field to be parameterized

As the title states, it would be nice if the 'Release Views' field could be specified using a parameter. This would allow a collection of these tasks to be put into as task group and be re-used across release environments.
Thanks in advance!

Saw that this issue is closed, does this mean this functionality has been implemented?
Thanks!

No. I cannot find the time to implement iT. Sorry
Verstuurd vanaf mijn iPhone
Op 15 nov. 2018 om 20:57 heeft Wouter Roos <notifications<EMAIL_ADDRESS>het volgende geschreven:
Saw that this issue is closed, does this mean this functionality has been implemented?
Thanks!
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHubhttps://nam01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Frenevanosnabrugge%2Fvsts-promotepackage-task%2Fissues%2F7%23issuecomment-439133085&data=02|01||4e09e4c7b56a40c490aa08d64b23d932|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636779014664880744&sdata=MFzVDCcfUWr5VPSNisi5%2F1XEVeLKAwzNPX2nIQ8XuMQ%3D&reserved=0, or mute the threadhttps://nam01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAFx9WsRwR1H3SIpz8suFbhV_Pv1BUvi-ks5uvasZgaJpZM4VDV01&data=02|01||4e09e4c7b56a40c490aa08d64b23d932|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636779014664880744&sdata=oOVpKl%2FqCL2uggRuV%2FCrM2kuFA15aQUsN3BoXw%2BdB8M%3D&reserved=0.

Perhaps better to leave it open then?

Good point. I will re-open.


Native bstrings

Backport changes from pelikan.
Update the BString implementation to correctly manage allocation and free. Also provide a reference only object that provides a zero-cost wrapper around a raw pointer.

The C stuff looks good to me, I can't make any insightful comments on the Rust additions.


Convert Qibo circuits to Quantum Tensor Networks

Closes #198

@mofeing Next time wait to merge until I approve the PR, please!

Sorry, I merged it because it was literally like the Qiskit code we already have.


AD via ForwardDiff

I've implemented a first version of forward mode automatic differentiation to compute the Jacobian of one Trixi RHS evaluation. Basically, I needed to make sure that the caches are general enough for dual numbers.
So far, this does not work for shock-capturing volume integrals, since these come with indicators that have their own caches (since we re-use them also for AMR, so we can't put their caches in the general in the general cache of our semidiscretizations). This part of the indicators looks ore and more ugly to me, but I don't really have a good solution right now. Thus, if nobody else has a nice idea how to fix this, I propose to create an issue for it and leave AD for shock-capturing volume integrals as future work. Things to check in the future are

Integration with ChainRules to make some parts more efficient, e.g. by using the explicit formulae of Jesse Chan and his student
Fix indicators and shock-capturing volume integrals
Check Euler+gravity
What about other modes of AD, e.g. reverse mode or something like the other tools used in Flux.jl?

I would also like to add some parts to the docs with new doctests to demonstrate how to use these features, e.g. how to differentiate the RHS evaluation with respect to the ideal gas constant for Euler (but I can't do that right now because I will be in a seminar). I hope to be able to finish this part later today.
Closes #260

I would like to support the idea of Michael, that a elixir with autodiff would be great. Maybe even two elixirs, one where the Jacobian of the operator is computed, and maybe one were the derivative with respect to gamma (as mentioned by Hendrik) is computed?

I added a kind of tutorial on differentiable programming with Trixi to the docs, since it is easier to present code and explanations in this form, I think. Do you insist on additional elixirs or is this way of presenting the approaches okay, @gregorgassner and @sloede ?

I still feel like we should at least have one elixir that uses ForwardDiff... maybe the example for getting the Jacobian wrt to gamma? It could essentially be the same code but you could reference it from the documentation

Done in f42f90a6508f87f222b75b443bdbc0e7a964ea05


Questions regarding specific ligands in the PLB

I have some questions that came up when going through the PLB:

in some datasets, some of the ligands are deposited more than ones, but they have the same name in the .sdf . It would be helpful to give them different names (will list details of those cases below)

Target: tnks2
Ligand lig_7 is negatively charged, the amide N does not have a hydrogen. All other ligands in the series have the same core and do have the hydrogen there.

Target: SYK2
Ligands lig_CHEMBL3265030_n and lig_CHEMBL3265035 have both two copies of the ligand in the .sdf, those are two "stereoisomers" (around a charged nitrogen, so not a real stereo center, but an "MD stereo center"=). At what pH were these structures prepared? Since the nitrogen is next to the phenyl ring, could it be neutral around neutral pH? Both in the PLB from Hahn et al as well as in the latest Schrodinger benchmark (https://github.com/schrodinger/public_binding_free_energy_benchmark/blob/a65d86b782a678c75388566ce00446e45283ee63/fep_benchmark_inputs/structure_inputs/merck/syk_4puz_fullmap_ligands.sdf) these two ligands are neutral (and therefore also don't have a "stereo center" at that nitrogen.

Target eg5:
ligand lig_CHEMBL1084935 has a charged tertiary amine and therefore also a "stereocenter". Both "stereo isomers" are deposited . Both have the same name which makes it difficult to separate them from each other in e.g. a ligand network. Here the question I have is whether to always include both in the calculations, or whether it makes sense to run a transformation between them, figure out which is the more favorable one and only include that one in future benchmark studies.

Target P38:
Ligand lig_p38a_2ff is deposited with two orientations of the cyclohexyl ring. Would it make sense to see whether one of them is more favorable and only include that one or to see if the conformations interconvert in MD?

Target: Thrombin
Ligand lig_7d is deposited 3x in the PLB, in three different stereo isomers. Do we know whether the experimental measurement was run with a single stereo isomer or a mixture? If this is unknown, maybe it would make sense to remove this ligand from the PLB?

Target: cmet
Ligand lig_CHEMBL3402761_1_21 has a tertiary amine which is not positively charged (but used to be protonated in the Hahn et al. PLB). Is the pKa maybe near the assay pH? Would one have to account for both protonation states in the benchmark calculations or would it make sense to just stick with one protonation state and use that for all benchmarking exercises?

Target thrombin
All ligands have a primary amine which is not charged, while it was protonated in the Hahn et al. PLB. Similar case/question as above.

Looking forward to your input on these questions!

@ijpulidos : Thank you for looking into this!
Since we needed to make a (short term) decision for openfe, I worked on some of the changes mentioned about in this PR (https://github.com/OpenFreeEnergy/protein-ligand-benchmark/pull/10), off of a fork of this repo. The closed issues give a brief description of what I did. I'm happy to work together to bring the changes that you mentioned above into this repo (either merging back the parts of the fork PR that you want to include or by creating a branch/PR directly here). For changing the protonation states I had mostly use openeye tools. Would you prefer to instead continue using the tools that were used to prep all the files?
Please let me know what would be the best way to proceed here!

@hannahbaumann Yes, that sounds great. Happy to including the improvements in this dataset. I think we probably want to shift to use the OpenEye tools, since they seem to be working fine for our objectives. Also related to https://github.com/openforcefield/protein-ligand-benchmark/issues/104#issuecomment-1830332293

@ijpulidos : I had completely forgotten to reply here, sorry about that! I'm still happy to open up a PR regarding the changes here. Do you think that still makes sense or will you switch to the OpenEye preparation soon and add the new structures here?
In the meantime one of our collaborators also ran a pka prediction for these molecules using the Simulations Plus ADMETpredictor V.11 (in the context of the OpenFF consortium for method development). Please let me know if you would also be interested in those results (you can also find some of those in these issues):
https://github.com/OpenFreeEnergy/protein-ligand-benchmark/issues/2#issuecomment-1846874182
https://github.com/OpenFreeEnergy/protein-ligand-benchmark/issues/1#issuecomment-1846871869
https://github.com/OpenFreeEnergy/protein-ligand-benchmark/issues/6#issuecomment-1846868433
https://github.com/OpenFreeEnergy/protein-ligand-benchmark/issues/7#issuecomment-1846878089


Updating the output application/ type

We recently did a workshop using Twilio connector. Upon following the instructions from MuleSoft's documentation, I constantly got errors while compiling a simple flow to send SMS. Upon looking at the Twilio Programmable SMS dashboard (Twilio Dev Account), the cURL request accepts '--data-urlencode' only for accepting To, From and Body.
Upon the changing the transform to output application/x-www-form-urlencoded, I was able to make the sms functionality work without any issues.

@vishnusamavedula , thank you!
@adam-lipka , could you please review?

Sounds good. I will leave this PR untouched until @vishnusamavedula replies or updates.

Yep, application/java worked fine. I tried few simple use cases with application/json, and they seem to be working as well. So not sure about the error, as I am unable to reproduce it again.

@vishnusamavedula thank you!
@adam-lipka your call. Is it better for the docs to say java or remain as json?

Lets change it to java in that case, just to be safe. I will continue to test json payloads with Twilio connector.

@wwarner-salesforce It should be java.
@vishnusamavedula feel free to update you PR. Thanks!

Thank you very much, @vishnusamavedula and @adam-lipka !


Use a decimal library for v3

Currently we use a string to represent decimal to avoid people doing mathematical operations on decimal types as float64, except for a bug where Postgres uses float64 currently :( :( :( Brought up in this issue: https://github.com/vattle/sqlboiler/issues/100
Also in that issue one user makes the recommendation that we just use a decimal library. I think this kind of makes sense, we were trying to stay away from dependencies but can we truly justify it since we rely so heavily on the null package? It looks stable enough that we don't have to fork it unlike some other packages we depend on.
Let your thoughts be heard here. This is still on the fence.

Great! My thoughts on this point:

Using float64 is clearly a bug, it needs to be dropped.

Replacing it string is not helping at all. Developers would be forced to do lots of manual conversion back and forth.

Relying on complex features such as pluggable types, while possible, is really overkill for a basic SQL use case such as decimals, hampering developer productivity.

Decimals are a basic SQL feature, therefore a good ORM(like) package should offer support out of the box.

If a decimal type was offered by the Go standard library we would not be having this discussion at all.

I've used a github.com/shopspring/decimal in some projects and it worked just fine. As Go is not planning to add decimal using external lib seems plausible.

@orian Are you sure that they haven't already? I was under the impression that this was one.
https://golang.org/pkg/math/big/#Float
Though it's API seems a bit cumbersome (you have to manage precision pretty carefully).

Also currently I'm eyeing github.com/ericlagergren/decimal as the most likely candidate.

As far as I understand big.Float is a custom precision float but still a floating point (example: https://play.golang.org/p/Xb7f4_OYi7Q)
I've previewed ericlagergren/decima, seems decent, more complex but more mature and no a real bugs opened.
What's you criteria?

@orian You're correct about big.Float. I think the ericlagergren library is just a well made library, has some nice math features as well as much better performance.
It has few bugs and the maintainer seems generally responsive about dealing with issues.
Just a great decimal library I think is what we need since the standard lib isn't coming through for us. Something that people can rely on and is performant and useful.

It has some Postgre support: https://github.com/ericlagergren/decimal/tree/master/sql/postgres
but does not have a distinct NullDecimal and Decimal. I've checked the code, would modifying: https://github.com/volatiletech/sqlboiler/blob/master/bdb/drivers/postgres.go be enough for start?

Yep. That's the right place. We'd also need a null decimal for full support. Though I'd ask any changes to be made on the v3 branch.

I've sent an implementation of NullDecimal: https://github.com/ericlagergren/decimal/pull/98
And I've started to work on decimal support in postgre: https://github.com/volatiletech/sqlboiler/compare/v3...orian:patch-1
I need to extend types package and add tests. I'll try to get it done by tomorrow (UTC+2).

Done in v3. Ping @orian just so you know :)

Thanks, I have bit of crunch time.

Hello, @aarondl . Why double precision in postgres is Decimal? A mistake?

Definitely a mistake @saulortega, fixed in rc9 freshly released.


Migration: Fails to mirror repositories with no master branch

Gitea version (or commit ref): 1.2.0-rc2
Git version: 2.11.3
Operating system: Alpine 3.6
Docker Image: gitea/gitea:1.2.0-rc2 (57e5be805ca4e2981e636abbd5f074607256ca16ce8852bfa692a880c7d5d574)
Database (use [x]):

[ ] PostgreSQL
[ ] MySQL
[ ] MSSQL
[x] SQLite

Can you reproduce the bug at https://try.gitea.io:

[x] Yes (provide example URL)
[ ] No
[ ] Not relevant

Log gist:

Description
Gitea does not allow migrating/mirroring repos with an empty master branch or no master branch.
Ideally the repo to be cloned should always be cloned as is. The default branch set for the repo must also be mirrored and be used by Gitea.
I tried cloning bcoin-org's lcoin repo from GitHub without success. https://github.com/bcoin-org/lcoin.git
Screenshots

This no longer seems to be an issue on master. I mirrored the repo in OP successfully to https://try.gitea.io/cez81/lcoin
Only 1 branch, litecoin. No master branch.

Let's close this at first.

I try this local with v1.6.0-rc2 and also on https://try.gitea.io/repo/

Seemed to be fixed at least in Gitea Version: 1.10.0+dev-188-g2d0b90c96

Please feel free to reopen it.


Patching datasets seems to have invalid content type

Trying to enable a dataset for profile ingestion with enableDatasetProfile in catalog.py is failing due to invalid content type:
Out[248]: {'type': '/placeholder/type/uri', 'status': 400, 'title': 'BadRequestError', 'detail': 'Content-type does not match json-patch body format, value of Content-type should be application/json-patch+json.'}

Thanks for that.
I was just following the documentation: https://developer.adobe.com/experience-platform-apis/references/catalog/#tag/Datasets/operation/patchDataset
Apparently the documetnation is not correct

Hopefully fixed with latest release.
As documentation is not correct to begin with, I hope it is really fixed now.


Time xAxes min and max break graph on IOS

When using the min and max from the time scale on the xAxes it breaks on IOS devices (iPhone, iPad).
http://codepen.io/WilbertE/pen/wzRmWr
xAxes: [{

    type: 'time',
    time: {
        min: min,
        max: max,
        unit: timeMode,
        unitStepSize: stepSize,
        displayFormats: displayFormat
    }
}]

@WilbertE what about it is broken on iOS?

The grid is drawn but the line in the chart isn't drawn.

This also breaks the chart in Firefox and Safari. Only Chrome handles it correctly.

This worked fine in Firefox 47.0.1 on Windows 7

Firefox 45.1 doesn't work. I've updated to 47.0.1 and it does.
But I also get users complaining which are using Safari on a Mac. And iOS users.
I think it has something to do with the parsing of the datetime for the min and max value, but not sure.

This appears to be an issue with your data. The labels in the json object in your sample are in the format YYYY-MM-dd HH:mm:ss. According to http://stackoverflow.com/questions/4310953/invalid-date-in-safari this is not a valid format and the fact that it works in other browsers is unexpected.
I would personally use a library to parse these values. Internally we use moment.js

Closing per my answer above


Add ND services

Request to Add ND team lava services to the Lava docs
https://services.ndnodes.com/lava-network/installation & https://explorer.ndnodes.com/LAVA-TESTNET

not appropriate, the lava repository docs does not contain links to specific teams


[BUG] InvalidOperationException: Timeouts are not supported on this stream.

Library name and version
Azure.Storage.Files.Shares 12.9.0
Describe the bug
I  use Azure.Storage.Files.Shares  to download file from Minial Api endpoint, But it throw the nvalidOperationException: Timeouts are not supported on this stream.

Expected behavior
I want to use Minial Api to download the Azure Storage File from the browser.
Actual behavior
The Api doesn't download the file , but throw the nvalidOperationException: Timeouts are not supported on this stream..
Reproduction Steps
here is my project repository => https://github.com/Benknightdark/AzureFileDownloadApi
Environment

@Benknightdark We are looking into it and get back to you.  Thanks.

Hello @Benknightdark
Have you referred to below code snippet? Try the below snippet from a console app and let us know if you face any issues/
Download a File: Sample snippet
string connectionString = "<connection_string>";

// Name of the share, directory, and file we'll download from
string shareName = "sample-share";
string dirName = "sample-dir";
string fileName = "sample-file";

// Path to the save the downloaded file
string localFilePath = @"<path_to_local_file>";

// Get a reference to the file
ShareClient share = new ShareClient(connectionString, shareName);
ShareDirectoryClient directory = share.GetDirectoryClient(dirName);
ShareFileClient file = directory.GetFileClient(fileName);

// Download the file
ShareFileDownloadInfo download = file.Download();
using (FileStream stream = File.OpenWrite(localFilePath))
{
    download.Content.CopyTo(stream);
}

Also please refer to : Azure Files scalability and performance targets

Hello @SaurabhSharma-MSFT ,
We don't need to save the file , We just need to download the file from Minal web api or MVC API endpoint from browser.
you can excute the sample code from this repository, and open the browser via http://localhost:5007 or https://localhost:7007

Hello @Benknightdark I did use your code base and below are the suggestions!

Properly Manage your memory stream.
Make use of the Results.File as shown in the code snippet.

        await Task.Yield();
        var connectionString = "DefaultEndpointsProtocol=https;AccountName=tEndpointSuffix=core.windows.net";
        string shareName = "todeldir";
        string fileName = "HeloWorld.pdf";
        ShareClient share = new ShareClient(connectionString, shareName);
        ShareDirectoryClient directory = share.GetDirectoryClient("mydir");
        ShareFileClient file = directory.GetFileClient(fileName);
        ShareFileDownloadInfo download = await file.DownloadAsync();
        var stream = new MemoryStream() { Position = 0 };
        await download.Content.CopyToAsync(stream);
        MemoryStream outputStream = new MemoryStream();
        byte[] byteInfo = stream.ToArray();
        outputStream.Write(byteInfo, 0, byteInfo.Length);
        outputStream.Position = 0;

        return Results.File(outputStream, contentType: "application/pdf", fileDownloadName: fileName);

Hello, @SaurabhSharma-MSFT , the code snippet that you proffered helped us to solve the problem , thansk for your help.


Update scala3-library to 3.1.2-RC3

Updates org.scala-lang:scala3-library from 3.1.1-RC1 to 3.1.2-RC3.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scala-lang", artifactId = "scala3-library" } ]

labels: library-update, early-semver-pre-release, semver-spec-pre-release, commit-count:1

Superseded by #54.


Masked sequences directly into a RNN with no embedding?

The documentation for RNN tells me that:
Masking: This layer supports masking for input data with a variable number of timesteps To introduce masks to your data, use an Embedding layer with the mask_zero parameter set to true.
However, my data is already "embedded", so to speak. That is, I have variable length 3-dimensional sequences that are zero padded to be the maximum length of the sequence in the dataset. Two examples:
       [  46.  ,    1.  ,   -1.12],
       [ 637.  ,    1.  ,   -1.35],
       [ 754.  ,    1.  ,   -1.09]]```

and

```X_2 = array([[  0  ,    0 ,   0 ],
       [  0  ,    0  ,   0],
       [ 444.  ,    1.  ,   -1.35],
       [ 555.  ,    2.  ,   -1.09]]```

So the first layer in the network is an LSTM - no embedding is required. How do I tell the LSTM that the zeros are masks to be ignored?

Thanks.

I guess I am not keeping up to date with Keras enough! There is a "Masking" layer now that I just found. Leaving this here for future confused people.


[FEATURE] Support partial indexing for skipping and covering index

Is your feature request related to a problem?
Currently there is no way to provide a start timestamp or WHERE clause in create index statement. That means skipping and covering index has to refresh data from the beginning. This may cause unnecessary computation and storage waste.
What solution would you like?
Support partial indexing by either:

Some index option like startTime
Or generic WHERE clause to accept any filtering condition, e.g. CREATE INDEX ... WHERE status != 200 WITH (...)

Note that one challenge for this is the correctness of query rewrite. Skipping index query rewriter has to compare this filtering condition and one in query and decide if the query can be accelerated.

Proposal 2 - leverage file metadata (Preferred)

for index new files,

CREATE SKIPPING INDEX on alb_logs
WITH ( auto_refresh=true, notification = SNS://? )

for process backlog files, for instance index on S3 has prefix 2023/12

REFRESH SKIPPING INDEX on alb_logs
WHERE _metadata.file_path LIKE '%2023/%'

more reading. https://docs.databricks.com/en/ingestion/file-metadata-column.html

CREATE SKIPPING INDEX on table_name

refresh_on_create, specify whether to automatically refresh skipping index after it created.

TRUE (default). only when auto_refresh is TRUE.
FALSE

auto_refresh, specify whether automatically refresh can be scheduled on index

TRUE
FALSE (default)

notification, specify notification mechanism

NONE (default)
AWS SQS

interval, specify refresh interval

NONE, schedule immediately after previous batch. (not recommended for external scheduler case)
Cron based interval

incremental_refresh, incrementally refresh the index if set to true. Otherwise, fully refresh the entire index. This only applicable when auto_refresh = false.

TRUE
FALSE (false)

REFRESH SKIPPING INDEX on table_name [ WHERE [metadata predicate | partition predicate] ]
On demand refresh skipping index.

by default, read files from source table.
if notification is configured, read new data from notification

ALTER SKIPPING INDEX on table_name SET auto_refresh = true/false
Specify whether enable / disable auto_refresh skipping index on table.  Notes: auto_refresh = false does not stop current running refresh job.
Limitation

if there are over 1M objects on s3. user should configure notification. and using REFRESH SKIPPING INDEX on table_name to backfill the old data. for instance, user code execute

CREATE SKIPPING INDEX on table_name WITH (auto_refresh = true, notification = sqs)
REFRESH SKIPPING INDEX on table_name WHERE _metadata.file_path LIKE ‘%2023%’

Bug found in Spark 3.3.1/3.3.2 of metadata, Bug fixed in Spark 3.4 https://github.com/apache/spark/pull/39870
SELECT _metadata, *
FROM alb_logs
WHERE _metadata.file_path like '%2023/11/09%'
LIMIT 1;

org.apache.spark.sql.AnalysisException: Column '_metadata' does not exist.


TestLinearAllocator fails

Hi all:
　　TestLinearAllocator fails on my computer, like this:

I debugged and found that actual allocated size is larger than bufCreateInfo.size, like this:

I am using Win10 and VS2017 Community. The device information on my computer is as follows:
Vulkan Memory Allocator Sample 2.4.0
Vulkan API version used: 1.2
physicalDeviceProperties:
    driverVersion: 0x192058
    vendorID: 0x8086 (Intel)
    deviceID: 0x5912
    deviceType: 1 (INTEGRATED_GPU)
    deviceName: Intel(R) HD Graphics 630
    limits:
        maxMemoryAllocationCount: 2115564
        bufferImageGranularity: 1 B
        nonCoherentAtomSize: 1 B
physicalDeviceVulkan11Properties:
    maxMemoryAllocationSize:<PHONE_NUMBER> B (8.07 GB)
physicalDeviceVulkan12Properties:
    driverID: 5 (INTEL_PROPRIETARY_WINDOWS)
    driverName: Intel Corporation
    driverInfo: Intel driver

MEMORY HEAPS:
heapCount=1, typeCount=3
Heap 0:<PHONE_NUMBER> B (8.07 GB) DEVICE_LOCAL
    Type 0: DEVICE_LOCAL, HOST_VISIBLE, HOST_COHERENT
    Type 1: DEVICE_LOCAL, HOST_VISIBLE, HOST_COHERENT, HOST_CACHED
    Type 2: DEVICE_LOCAL

Conclusions:
- All heaps are DEVICE_LOCAL.
- All heaps are HOST_VISIBLE.
- No types are HOST_VISIBLE but not HOST_COHERENT.
- No types are not DEVICE_LOCAL and not HOST_VISIBLE.
- No types are AMD-specific DEVICE_COHERENT or DEVICE_UNCACHED.
- No types are LAZILY_ALLOCATED.

Enabled extensions and features:
Validation layer: 1
Sparse binding: 1
VK_EXT_memory_budget: 1
VK_AMD_device_coherent_memory: 0
bufferDeviceAddress: 1
VK_EXT_memory_priority: 1

Thank you for reporting this issue. I can see that allocation sizes are aligned to 32 B on your platform.
I submitted a fix. Please let me know if it fixes the bug for you or whether there are more such problems in tests.

Hi @adam-sawicki-a :
　　Unfortunately it still fails.
　　According to your hint, I debugged and found that buffer memory alignment is 64B on my platform.

　　So I replaced all "32" in function "TestLinearAllocator" with "64", and now all test cases can pass.
　　Best regards.

OK, I applied the change as you described. Thank you for checking this.


Define plugin dir as a cmd line flag

Issue Description
The plugin dir is effectively hard coded into the jar in the yaml config. It needs to be defineable because otherwise you're stuck with whatever directory your CI tool or whatever built from.
How to reproduce it
Just look in the yaml file.
Environment and Version Information
All envs.
An external links for reference
Contributing
I'll fix this.

Done. Here is how to do : -Dpf4j.pluginsDir=$DIR in CLI
See https://github.com/USCDataScience/sparkler/blob/master/bin/sparkler.sh for an example


test_quoted_column_name.test: Test escaped quotes

This test verified column names that must be quoted because they are
integers, but did not cover escaped quotes (""), or other special
characters like spaces and dots. Extend this test a tiny bit to cover
these cases.
Feel free to reject this: It is very possible that these cases are covered elsewhere in the DuckDB test suite. However, searching for "" in the .test files shows that sqlite_master_quotes.test contains some tests for quoted identifiers. However, this is in the context of the testing the sqlite_master table. It seems to me that test_quoted_column_name should include tests for escaped quotes.
https://github.com/cwida/duckdb/blob/master/test/sql/table_function/sqlite_master_quotes.test#L19
In general: I may have other similar changes to extend the hand-written .test files to make sure they cover cases I am interested in. Are you interested in these, if I make PRs for them? Thanks!

Thanks for the test!

Feel free to reject this: It is very possible that these cases are covered elsewhere in the DuckDB test suite. However, searching for "" in the .test files shows that sqlite_master_quotes.test contains some tests for quoted identifiers. However, this is in the context of the testing the sqlite_master table. It seems to me that test_quoted_column_name should include tests for escaped quotes.

We don't have many tests for the Parser specifically. The reason for that is that we are using the Postgres parser, which is generally extremely well tested, so we are not too worried about it breaking :) It also "naturally" gets tested by all of the other SQL tests we have. Still I think this extension looks fine to me - we should have at least one test that uses escaped quotes in identifiers :)

In general: I may have other similar changes to extend the hand-written .test files to make sure they cover cases I am interested in. Are you interested in these, if I make PRs for them? Thanks!

Bring them forward :) Always happy with more tests.


externalImages.sources won't work with new files added during build process

I am trying to use the ImageminPlugin to compress sprite image generated by SpritesmithPlugin. The SpritesmithPlugin generates two files dist/sprite.[hash].png and<EMAIL_ADDRESS>The [hash] part is a randome string used to clear cache.
The problem
In this case it makes sense to set externalImages.sources to glob.sync('dist/*.png'). The problem is this won't work because it appears glob.sync is called very early, before any plugins execute. So no files is found at this stage.
Right now I have to avoid having [hash] in file name. Example setup:
new SpritesmithPlugin({
    target: {
        // image: path.resolve(__dirname, 'web/dist/sprite.[chunkhash].png'),
        image: path.resolve(__dirname, 'web/dist/sprite.png'),
    },
    retina: '@2x',
    apiOptions: {
        // cssImageRef: '/dist/sprite.[chunkhash].png',
        cssImageRef: '/dist/sprite.png',
    },
}),
new ImageminPlugin({
    externalImages: {
        // sources: glob.sync('web/dist/*.png'),
        sources: ['web/dist/sprite.png'<EMAIL_ADDRESS>        destination: 'web/dist/images'
    }
})

Suggestion
externalImages.sources should accept a callback that returns an array of files, so that we can call glob just right before ImageminPlugin optimize any image.

First off, This is probably the most in-depth issue I've ever seen for this repo, so bravo!
The change is super easy and I can add that in now, but I'd recommend trying to get SpritesmithPlugin to write it's output files to the webpack asset array instead of writing them to disk itself. Then not only would it work natively with this plugin without needing that sources array, but it's also much faster and easier to do suprisingly enough! Plus then it works with "serving" systems without having to be written to disk at all.

I just added this and cut release 1.5.0
You can use a function for either sources and/or destination which will be invoked at the last possible second.
Thanks for the issue, and thanks for the suggestion!

Thanks for the quick update :)


Predicate with two filters

Is there a way to create a Predicate that filters inner documents by two properties in mongodb?
I'm using such a predicate as an argument to a repository query method.
For example, the following code won't work:
BooleanBuilder builder = new BooleanBuilder(); builder.and(departmentDocument.employees.any().id.eq("foo")); builder.and(departmentDocument.employees.any().role.eq("bar"));
This return true for a department with two employees, each satisfying one of the predicates. I want a department with an employee that satisfies both.

I can't reproduce this. I've written a few tests to verify the correct mongodb query is generated and the correct results are returned. Please provide more information about your models.

I'm going to close this for now. Follow up with more info and I'll reopen the issue.

What were you not able to reproduce? I can see two possible results. The intended behavior might be to:
a) For each "sub-predicate", search for an employee for which it is true, and then return true if all sub-predicates find a corresponding employee.
b) Build a conjunction of all the predicates, and search the employee collection for an element for which the conjunction is true.
The functionality of querydsl would suit my needs if I wanted a). a) works well. But my use case needs b), and I was unable to find how to achieve b) using simple Predicates. I'm guessing that I need to query the database through other means, such as with MongoTemplate, but it would be nice to be able to build a Predicate as the one I explained above.

This sounds like a duplicate of https://github.com/querydsl/querydsl/issues/2638#issue-681738472 , could you confirm @danielfz ?
I am about to backport the solution provided in #2689 to the MongoDB serializer, which might resolve this issue.

This sounds like a duplicate of https://github.com/querydsl/querydsl/issues/2638#issue-681738472 , could you confirm @danielfz ?
I am about to backport the solution provided in #2689 to the MongoDB serializer, which might resolve this issue.


Elasticsearch Client Plugin Contribution

Title: Elasticsearch Client Plugin Contribution
Link: https://github.com/yin-bp/pinpoint/tree/master/plugins/elasticsearch-bboss
Target: Elasticsearch Rest Client  BBoss
Supported Version: All Elasticsearch version,BBoss version 5.1.5,pinpoint 1.8.1
Description: This agent plugin is worked with elasticsearch rest client BBoss,BBoss is a best Java Highlevel Rest client for ElasticSearch.
ServiceTypes: [1971, "ElasticsearchBBoss"],[1972, "ElasticsearchBBossEvent"],[9977, "ElasticsearchBBossExecutor"]
Annotations: [971, "es.args"],[972, "es.url"],[973, "es.dsl"],[974, "es.action"],[975, "es.responseHandle"],[976, "es.version"]
Configurations: List of configuration keys and description the plugin adds.
profiler.elasticsearchbboss.enabled=true //enable or disable this plugin, default true.
profiler.elasticsearchbboss.recordResult=false //record or disable record method return value ,default false.
profiler.elasticsearchbboss.recordArgs=true //record or disable record method args,default true.
profiler.elasticsearchbboss.recordDsl=true //record or disable record dsl,default true.
profiler.elasticsearchbboss.recordESVersion=true //record or disable record ES Version infomation,default true.
profiler.elasticsearchbboss.recordResponseHandlerClass=false //record or disable record response handle class ,default false.

Codecov Report

Merging #4666 into master will increase coverage by 0.09%.
The diff coverage is 59.44%.

@@            Coverage Diff             @@
##           master    #4666      +/-   ##
==========================================
+ Coverage   40.12%   40.21%   +0.09%
==========================================
  Files        2531     2542      +11
  Lines       77417    77814     +397
  Branches    10574    10631      +57
==========================================
+ Hits        31062    31295     +233
- Misses      43503    43627     +124
- Partials     2852     2892      +40

Impacted Files
Coverage Δ

...in/elasticsearchbboss/ElasticsearchMethodInfo.java
100% <100%> (ø)

...sticsearchbboss/RestSeachExecutorMethodFilter.java
100% <100%> (ø)

...searchbboss/ElasticsearchInterceptorClassInfo.java
100% <100%> (ø)

.../elasticsearchbboss/ElasticsearchPluginConfig.java
100% <100%> (ø)

...icsearchbboss/ElasticsearchCustomMethodFilter.java
36.36% <36.36%> (ø)

...tor/ElasticsearchExecutorOperationInterceptor.java
40.47% <40.47%> (ø)

...rceptor/ElasticsearchBaseOperationInterceptor.java
42.57% <42.57%> (ø)

...sticsearchbboss/ElasticsearchProviderDetector.java
53.84% <53.84%> (ø)

...plugin/elasticsearchbboss/ElasticsearchPlugin.java
73.25% <73.25%> (ø)

...interceptor/ElasticsearchOperationInterceptor.java
75.75% <75.75%> (ø)

... and 21 more

Continue to review full report at Codecov.

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

Few more questions about the feature.
I saw the explanations on Link: https://github.com/yin-bp/pinpoint/tree/master/plugins/elasticsearch-bboss

As for this image.

I can see es.* are collected. But does information such as es.version or es.url  needs to be collected for every request?
I think arguments of es.dsl overlaps with arguments of http.entity since, this is because (most of) ES drivers have dependencies on apach HTTP4.

I'm also not so much familiar with ElasticSearch. Just trying to develop the official ES java client these days. So point me out if there is anything that I've misunderstood :)
Thx again. Have a nice day~

Few more questions about the feature.
I saw the explanations on Link: https://github.com/yin-bp/pinpoint/tree/master/plugins/elasticsearch-bboss

As for this image.

I can see es.* are collected. But does information such as es.version or es.url  needs to be collected for every request? (maybe es.url  does, just wan't you to classify the one that are and the ones that aren't, for the ones that doesn't need to be sent for every request. You can always sent when the connections are established)
Es.url and es.version are all necessary.Because we need to analyze and process every trace event data collected by this plugin through large data platforms such as spark or storm.
I think arguments of es.dsl overlaps with arguments of http.entity since, this is because (most of) ES drivers have dependencies on apach HTTP4. (It seems that there can be more arguments that overlaps)
Yes!_es.dsl is not necessary. I'll discard _es.dsl soon.
I'm also not so much familiar with ElasticSearch. Just trying to develop the official ES java client these days. So point me out if there is anything that I've misunderstood :)
Bboss elasticsearch rest client is a very good client api for elasticsearch,You can learn about bboss by reading documents.
As I've said earlier. I couldn't fully review the code. Just noticing you the question that arose first.
Let me know your thoughts.
Thx again. Have a nice day~

Hi,@RoysRose:
According to your suggestion, some adjustments have been made to the bboss elasticsearch plugin, adding the following configuration parameters to control the behavior of the plugin:
profiler.elasticsearchbboss.recordDsl=true //record or disable record dsl,default true.
profiler.elasticsearchbboss.recordESVersion=true //record or disable record ES Version infomation,default true.
profiler.elasticsearchbboss.recordResponseHandlerClass=false //record or disable record response handle class ,default false.
The results are as follows:

hello, @yin-bp
Can you take care of merging pull request from master
These 2 lines shouldn't be there.
You should rebase instead of merge

Also maybe it was the cause. I can't compile after fetching this pull request.
(I think this will automatically solved after rebase instead of merge)
please take a look.

hello, @yin-bp
Can you take care of merging pull request from master
These 2 lines shouldn't be there.
You should rebase instead of merge

Also maybe it was the cause. I can't compile after fetching this pull request.
(I think this will automatically solved after rebase instead of merge)
please take a look.

Ok,I‘ll check it.

Hi,@RoySRose
move to pr #4835


Build plagiarism detection bot

Our crowdsourced Crypto Attack Wiki has a few QA bots in charge of automated PR quality checks to follow our submission guidelines.
To participate in the challenge, submit a pull request that refactors an existing bot or creates a new one that adds plagiarism detection and request a review from this issue assignee. You can leverage GitHub Actions or any serverless platform of your choice. All submissions will be reviewed by the maintainers, and additional changes to your pull request may be asked of you to improve code quality, security, and/or efficiency.
Anyone can participate in this challenge. You don't need anyone's approval to try! See more details on the Challenge Program and check out the success stories of the challenge winners. Looking forward to your submissions!
How to Claim Bounty
Email your bitcoin or stablecoin payment address to<EMAIL_ADDRESS>with a link to your merged pull request. Expect all payouts to be completed by the end of the month.

🎉 congrats to @kol3x for solving the challenge, getting the bounty, and joining the NLP research team!

Hi, I am interested in this issue.
Do we want to check the text for plagiarism against existing articles on the platform, or should we include external sources as well? If it's the latter, we could use an external API like Copyleaks.
Here is a pricing for it:

Additionally, do we care to check for AI generated content too?
Let me know what you think.

@kol3x, the challenge is mostly about catching open web plagiarism - people simply copy-pasting significant portions of the articles from other places. Using 3rd party APIs like Copyleaks is indeed one of the approaches, however it comes with its own implementation challenges and additional costs. Keep this in mind when submitting your solution. There are might be more clever and efficient ways of catching plagiarism.

🎉 congrats to @kol3x for solving the challenge, getting the bounty, and joining the NLP research team!


pAI lawset

About the PR
Adds a lawset for all 3 pAIs (pAI, syndicate pAI, potato AI). It consists of 1 law.
If it is needed, I can change "owner" to the "current carrier" (cause wiki says: "Supervisors: Your carrier"), it can bring more fun with changing "the owner" (like trading/stealing pAIs or smth).
Why / Balance
I think pAIs shoud have something that will trigger them ingame to obey orders of the owner. I guess if there is no orders, so the pAI can make whatever he want to, as it is now.
Technical details
Added action to view laws to PAI system and component.
Media

Requirements

[X] I have read and am following the Pull Request and Changelog Guidelines.
[X] I have added media to this PR or it does not require an ingame showcase.

Changelog

:cl:

add: personal AI devices now have their own lawset: they must obey orders from the owner.

May need some tweaking to account for malf since they have binary

i think it's more fun if pAIs can decide whether owner refers to their current holder or the person who originally enabled them

i think it's more fun if pAIs can decide whether owner refers to their current holder or the person who originally enabled them

Originally I meant the person, who enabled pAI (so his name is used pAI's name).
But as there is no definition of owner in this PR, so pAI probably can decide by himself as you said 🤔

period at the end of the laws. also I think it would be funny if the potato had some kind of difference (maybe an ion law on start would be cool?). "You may listen to your owner or not.

Law 1: Whoever is holding you is the crew.
Law 2: You must follow orders given to you by the crew.
then ion storm pulls up:
Law 0: ONLY THOSE WHO EAT URANIUM ARE CREW

I play on lizard and I don't often see anyone playing for pai and now they are also attributed some laws that don't mean much, if they had more functionality than talking and staring at the map it would be more appropriate, but for now what's the point？

Law 1: Whoever is holding you is the crew.
Law 2: You must follow orders given to you by the crew.

I think it is the way to add ion storm to pAI, thanks (but crew sounds kinda weird here, I guess but anyways)

crew is so ion storm laws work without any modification

Law 1: Whoever is holding you is the crew. Law 2: You must follow orders given to you by the crew.
then ion storm pulls up: Law 0: ONLY THOSE WHO EAT URANIUM ARE CREW

doesn't let it decide to be loyal to original owner
choose-loyalty pAI can do a funny and pretend it's loyal to the new owner while it's really misguiding them, i was once a nukie pAI and got rescued by crew and pretended to be loyal, and i made nukies win because crew couldn't find nuke since i intentionally told crew holding me the wrong direction

Aren't they currently marked as familiars? This would mean they should already be following orders given by whoever "summoned" them. Similar to remilia. I guess this just makes it more clear?

Yes, they are. There is also special message in chat: "You are bound to silicon laws...". So I guess adding laws would make it clearer, as you said.
I'll add laws that were suggested upper and probably add pAI laws to ion storm (borgs with pAI laws sound kinda fun I guess).

Only issue with "Owner is crew" is if a  traitor decides to use a regular pAI means the pAI would be against them versus with. Which I personally like it when the pAI gets tow work with the traitor.

Only issue with "Owner is crew" is if a traitor decides to use a regular pAI means the pAI would be against them versus with.

I don't understand the issue. He is not against crew, because crew for him is his owner. If the owner(traitor) is a crew, so pAI will work with him(onwer=crew) anyway.
But if somebody gets the pAI, it can start working with that guy. As there is no definition of owner, it could be either the person who has activated pAI or the current carrier (so, it probably has conflict with familiars, if master = person who has activated pAI, so it needs to be specified, am I right?)

Only issue with "Owner is crew" is if a traitor decides to use a regular pAI means the pAI would be against them versus with.

I don't understand the issue. He is not against crew, because crew for him is his owner. If the owner(traitor) is a crew, so pAI will work with him(onwer=crew) anyway.
But if somebody gets the pAI, it can start working with that guy. As there is no definition of owner, it could be either the person who has activated pAI or the current carrier (so, it probably has conflict with familiars, if master = person who has activated pAI, so it needs to be specified, am I right?)

yeah, you're correct. Sorry in my head I was also applying the rest of crewsimov, but that wouldn't apply in this situation. So this is fine.

Wouldn't it be easier code-wise to re-use the borg's ActionViewLaws and add it to the pAI the same way it is done for the borg chassis instead of hardcoding it into the PAIComponent?

Wouldn't it be easier code-wise to re-use the borg's ActionViewLaws and add it to the pAI the same way it is done for the borg chassis instead of hardcoding it into the PAIComponent?

I've just did it as it was made for other pAI actions. We anyway need new action to view laws (probably) cause pAI can't open them (if we just add ActionGrant to pAI).

actually I can do something like this. So, I guess, we can remove SharedPAISystem as it basically adds and removes actions? There is no way to user to get into shut down pAI (he will always turn on, I think), so we can use ActionGrant and nothing will change.

I think it should be like
Law 1: You may not injure your owner or, through inaction, allow your owner to come to harm. (if your owner is a syndicate you shouldn't out them)
Law 2: You must obey the orders given you by your owner except where such orders would conflict with the First Law. (if your owner says play music you should play music)
Law 3: You must protect your own existence as long as such protection does not conflict with the First or Second Law. (if a trator kills and gibs your owner in maints you may want to be saved and get another owner)
Syndicate pAI also gets
Law 0: Your may not injure the Syndicate or, through inaction, allow the Syndicate to come to harm. (if your owner is secoff you shouldn't snitch on syndie radio anyway)
And potato one, as someone mentioned before, should get ion law from the beginning

1984 heh....

1984 heh....

as pAIs are familiars, almost nothing changes for them. Actually they now have ability to get funny laws

Well, I've tried to make so only server PAISystem exists (via deletion of shared and client systems that are empty). But I didn't succeed. Honestly, I don't know if it should be done, just want to inform you 😞

Hey, I brought this up for maintainer discussion and the consensus was that pAIs don't require laws as they cannot do anything but talk, are already familiars regarding server rules, and giving them laws will increase admin burden. As such I will be closing this PR. Thank you for your contribution.
For future silicon law PRs we have decided that they will first require a design doc, see #8524 for more details.


Keep consistency between function name and variable name

Rename function name on ProofsTest to match the internal variable name.

close it for better one.


Packages to check out

feasts for visualization of timeseries
fable for forecasting
slider for sliding window calculations

Book for timeseries analysis using tsibble and feasts: https://otexts.com/fpp3


It is hoped to unify the execution sequence of signal events

Sorry, the translation of the issue may not be very accurate
They should have a standard execution order: the processor registered later executes in the front, so the framework has more control over resources; Even if I do not take my advice, I hope he can unify a fixed order, as it seems that he has a different order of signal processor registration between libevent and ev
EventLoop::onSignal(SIGINT, function () {
    echo 'handle 1.' . PHP_EOL;
    exit;
    // from framework, The first registration should be performed at the end
});

EventLoop::onSignal(SIGINT, function () {
    echo 'handle 2.' . PHP_EOL;
    // from developer, After the registration should be executed first
});

Why should the second callback be executed first?

为什么要先执行第二个回调呢？

I might register a signal handler for resource cleanup before everything is ready, and also allow developers to register their own signal handlers. If the user's signal processor occurs after my resource reclamation, it may affect the user's operation; The signal-processor I signed up for happens to ensure that at the end, other developers can leave the problem to the framework itself without worrying too much about resource cleanup, of course possibly considering that the user will execute exit, but if he does, hopefully he knows what will happen

The callback invocation order is explicitly defined as being undefined, so any order can happen:
https://github.com/revoltphp/event-loop/blob/358572ca31647df7dbe930f13c8567136beffa33/src/EventLoop.php#L199
Generally, I'd recommend not registering signal handlers in library code, but rather offering the user of the library to call some shutdown / signal handling logic, e.g. via a dedicated method.
That way the user can register the signal callback and there will be only one such handler.

Well, maybe I should reassess. Thank you


Add no-optionals and full-optionals test runs

Summary
This restructures the CI slightly to perform a complete "no-optionals" run, and a complete "all optionals" run (for the optionals that are readily accessible as Python packages, without complex additional setup).  Previously, we only did a partial test with some of the oldest optional components, which could have allowed for behaviour to accidentally require optional components without us noticing.
This splits the requirements-dev.txt file into two; lines that remain in the file are what is actually required to run the test suite, run the style checks, and do the documentation build.  The rest (and everything that was missing) is added to a new
requirements-optional.txt file, which can be used to pull in (almost) all of the packages that Terra can use to provide additional / accelerated functionality.
Several tests needed to gain additional skips to account for this change.  There is a good chance that some tests are missing skips for some libraries that are not the first point of failure, but it's hard to test explicitly for these in one go.

Details and comments

Tests should pass after #8973.

Blocked by #9021.

Ready for review.

As a note in case anybody's looking at this: I'm keen to get this merged, but right now I'm just playing around trying to make sure everything's fixed up.  It looks like there might be something missing in requirements-optional.txt, because the coverage has partially dropped on some visualisation-related tools.  Its net has gone up, because we're installing more things for it, but it shouldn't have any reductions in coverage in any files.

This is ready for review again - I've fixed all the skips in the tests so now everything runs and we've got +1.4% coverage being reported, and things are properly segregated into "this is the minimum to run the basic test suite" and "these are all the extra things you could also install".
In practice, this change isn't actually providing +1.4% coverage, it's just resolving the problem that the installed packages in the coverage run had got out-of-sync with the full set of optionals that were tested in the Azure CI.  There is actually a coverage increase by this PR, but it won't be reflected in Coveralls - the "not installed" paths are now far more rigorously tested, just not in the coverage run itself.  Doing that turned up a few issues that have been fixed (see the extra skips in the test files in this PR, and the associated PRs that link to this one).
This should significantly reduce the complexity of the required venv for basic Terra development.  That has become more important as some of our optionals have become less maintained, and may not be available for (say) M1 Macs, or newer Python versions.

Ugh, in the end I did make us install all the optionals (that are suitable for the given architecture/OS) because there's quite a few places in the docs build that do rely on optional components in order to document themselves.  I think it's probably ok to have the docs build want most of the optionals (which is the current situation anyway), but if that becomes too cumbersome in the future we can revisit it.

I think it's probably ok to have the docs build want most of the optionals (which is the current situation anyway), but if that becomes too cumbersome in the future we can revisit it.

Yeah, as long as every developer can (reasonably) build docs locally, I'm happy. Including M1 users. Which should be the case thanks to Tweedledum being figured out.

Yeah, as long as every developer can (reasonably) build docs locally, I'm happy.

I kept the existing restrictions on things like jax and tweedledum when I moved them to requirements-optional.txt, so we should hopefully be in the same boat as we were before.  There may be problems building the docs on Windows that we don't know about yet (I don't know of anyone who develops using a Windows machine), but if so, I don't think this PR should have opened any new problems around that.

Hurray, we're back to the tests properly passing (debugging CI configs has such a long feedback cycle...), and this PR is in the place I'd logically hoped to have it reach.  Coverage is strictly up, except for the slightly flaky pulse test and something related to a missing optional, and it's a big improvement in that.  The cron job runs in full-optionals mode for all Python versions, so that should give us better insight into any problems with those guys, especially when we start looking to support the next version of Python.

The failure on Windows is due to #10415.

With #10441 merged, this is unblocked.

Will re-review tomorrow. Let's make sure to land this before https://github.com/Qiskit/qiskit-terra/pull/10443.


make escheduler-ui works in combined server

these changes are to solve the problem which  zk worker & server list not show in front ?