[SOLR-17187] Add possibility to supply a custom commitPollInterval for TLOG/PULL replicas

https://issues.apache.org/jira/browse/SOLR-17187
Description
In TLOG/PULL replica setups with longer commit intervals it would be great to configure the interval to check for new commits manually to tune to your setup. Currently on the PULL replica the interval to check for new commits is
computed using the commit / soft commit settings
Solution
You can now supply a custom commitPollInterval in your updateHandler definition. If supplied, this takes precendence over the one calculated from hard/soft commit settings.
<updateHandler class="solr.DirectUpdateHandler2">

    <!-- For TLOG replicas, updateLog must be enabled -->
    <updateLog>
        <str name="dir">${solr.ulog.dir:}</str>
    </updateLog>

    <!-- custom poll interval fix -->
    <commitPollInterval>00:00:10</commitPollInterval>
</updateHandler>

Tests
None :-/
Checklist

[x] I have reviewed the guidelines for How to Contribute and my code conforms to the standards described there to the best of my ability.
[x] I have created a Jira issue and added the issue ID to my pull request title.
[ ] I have given Solr maintainers access to contribute to my PR branch. (optional but recommended)
[x] I have developed this patch against the main branch.
[x] I have run ./gradlew check.
[ ] I have added tests for my changes.
[ ] I have added documentation for the Reference Guide

Looks like some feedback @tboeghk that could be addressed and then maybe this would be ready for commit!

Does this change need a unit test?

@cpoerschke is absolutely right, I added it "the hacky way". I'll extract the config setting the proper way 👍
With that, a unit test is easy to add @epugh 👍
I'll update the docs also as soon as I'm back at my desk (after Easter)

@tboeghk  I'm still interested in this one getting in ;-).  And it's post 🐰 season!  ;-)

Finally made those changes 🙏

thanks @cpoerschke for your review on this!   Definitly a better patch!

thanks @cpoerschke for your review on this! Definitly a better patch!

So just listing out likely remaining "TODO" items in case that's helpful?

solr ref guide documentation update
merging of latest origin/main
solr/CHANGES.txt entry in the 9.8 section


No messages delivered on brokered addresses anymore

We have done some performance tests, first by sending messages on an anycast address and then on a brokered address.
During the test with the brokered address, we got some errors in the broker that the corresponding queue is full:

2018-05-22 14:37:57,324 WARN  [org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerReceiverContext] AMQ119102: Address "event/LOAD_TEST_TENANT" is full.: ActiveMQAddressFullException[errorType=ADDRESS_FULL message=AMQ119102: Address "event/LOAD_TEST_TENANT" is full.]

In the router stats, these errors correspond to rejected messages.
Now the issue:
Later messages on the brokered address don't get delivered anymore. On the sender side in Hono we get a timeout. Looking at the router stats, these new messages increment the "undelivered" counter.
Stats before:
Router Links
  type      dir  conn id  id     peer  class   addr                           phs  cap  undel  unsett  del    presett  psdrop  acc    rej  rel  mod  admin    oper
  ==================================================================================================================================================================
  endpoint  in   1        6                                                        250  0      0       26     0        0       26     0    0    0    enabled  up
  endpoint  out  1        7            local   temp.Zc9fZGY5eu8QBMf                250  0      0       26     26       0       0      0    0    0    enabled  up
  endpoint  out  15       30           mobile  event/LOAD_TEST_TENANT         0    250  0      0       2623   0        0       2623   0    0    0    enabled  up
  endpoint  out  5        31           mobile  telemetry/HEALTH_CHECK_TENANT  0    250  0      0       0      0        0       0      0    0    0    enabled  up
  endpoint  out  6        32           mobile  event/HEALTH_CHECK_TENANT      0    250  0      0       0      0        0       0      0    0    0    enabled  up
  endpoint  in   95       83                                                       250  0      0       34728  0        0       34728  0    0    0    enabled  up
  endpoint  out  95       84           local   temp.KsDwq5hpjW5bInE                250  0      0       34728  34728    0       0      0    0    0    enabled  up
  endpoint  in   169      128          mobile  event/HEALTH_CHECK_TENANT      1    250  0      0       0      0        0       0      0    0    0    enabled  up
  endpoint  out  169      129          mobile  event/HEALTH_CHECK_TENANT      0    250  0      0       0      0        0       0      0    0    0    enabled  up
  endpoint  in   170      130          mobile  event/HUB_TEAM_TENANT          1    250  0      0       0      0        0       0      0    0    0    enabled  up
  endpoint  out  170      131          mobile  event/HUB_TEAM_TENANT          0    250  0      0       0      0        0       0      0    0    0    enabled  up
  endpoint  in   171      132          mobile  event/LOAD_TEST_TENANT         1    250  0      0       15653  0        0       15653  0    0    0    enabled  up
  endpoint  out  171      133          mobile  event/LOAD_TEST_TENANT         0    250  200    0       15900  0        0       15653  247  0    0    enabled  up
  endpoint  in   172      134          mobile  event/SMOKE_TEST_TENANT        1    250  0      0       0      0        0       0      0    0    0    enabled  up
  endpoint  out  172      135          mobile  event/SMOKE_TEST_TENANT        0    250  0      0       0      0        0       0      0    0    0    enabled  up
  endpoint  in   173      136          mobile  event/PERF_TEST_TENANT         1    250  0      0       0      0        0       0      0    0    0    enabled  up
  endpoint  out  173      137          mobile  event/PERF_TEST_TENANT         0    250  0      0       0      0        0       0      0    0    0    enabled  up
  endpoint  in   33081    15620        mobile  $management                    0    250  0      0       1      0        0       1      0    0    0    enabled  up
  endpoint  out  33081    15621        local   temp.GeDiBp2KLr7VhZ+                250  0      0       0      0        0       0      0    0    0    enabled  up

Then, after having sent 7 messages on event/LOAD_TEST_TENANT:
Router Links
  type      dir  conn id  id     peer  class   addr                       phs  cap  undel  unsett  del    presett  psdrop  acc    rej  rel  mod  admin    oper
  ==============================================================================================================================================================
  endpoint  in   1        6                                                    250  0      0       26     0        0       26     0    0    0    enabled  up
  endpoint  out  1        7            local   temp.Zc9fZGY5eu8QBMf            250  0      0       26     26       0       0      0    0    0    enabled  up
  endpoint  in   95       83                                                   250  0      0       36648  0        0       36648  0    0    0    enabled  up
  endpoint  out  95       84           local   temp.KsDwq5hpjW5bInE            250  0      0       36648  36648    0       0      0    0    0    enabled  up
  endpoint  in   169      128          mobile  event/HEALTH_CHECK_TENANT  1    250  0      0       0      0        0       0      0    0    0    enabled  up
  endpoint  out  169      129          mobile  event/HEALTH_CHECK_TENANT  0    250  0      0       0      0        0       0      0    0    0    enabled  up
  endpoint  in   170      130          mobile  event/HUB_TEAM_TENANT      1    250  0      0       0      0        0       0      0    0    0    enabled  up
  endpoint  out  170      131          mobile  event/HUB_TEAM_TENANT      0    250  0      0       0      0        0       0      0    0    0    enabled  up
  endpoint  in   171      132          mobile  event/LOAD_TEST_TENANT     1    250  0      0       15653  0        0       15653  0    0    0    enabled  up
  endpoint  out  171      133          mobile  event/LOAD_TEST_TENANT     0    250  207    0       15900  0        0       15653  247  0    0    enabled  up
  endpoint  in   172      134          mobile  event/SMOKE_TEST_TENANT    1    250  0      0       0      0        0       0      0    0    0    enabled  up
  endpoint  out  172      135          mobile  event/SMOKE_TEST_TENANT    0    250  0      0       0      0        0       0      0    0    0    enabled  up
  endpoint  in   173      136          mobile  event/PERF_TEST_TENANT     1    250  0      0       0      0        0       0      0    0    0    enabled  up
  endpoint  out  173      137          mobile  event/PERF_TEST_TENANT     0    250  0      0       5      0        0       5      0    0    0    enabled  up
  endpoint  in   11       16383        mobile  event/PERF_TEST_TENANT     0    50   0      0       1      0        0       1      0    0    0    enabled  up
  endpoint  in   35814    16488        mobile  $management                0    250  0      0       1      0        0       1      0    0    0    enabled  up
  endpoint  out  35814    16489        local   temp.YPqAZFlsiDm7UT_            250  0      0       0      0        0       0      0    0    0    enabled  up

Restarting either router or broker resolves the issue.
The test is reproducible in our environment.
Router and broker are from EnMasse 0.19.
We have assembled some log output with PN_TRACE_FRM=1:

Test resulting in undelivered messages (address is event/LOAD_TEST_TENANT):
ErrorCase_LOAD_TEST_TENANT_Router.log
ErrorCase_LOAD_TEST_TENANT_Broker.log
for comparison: Test with messages that get delivered (address is event/PERF_TEST_TENANT):
OKCase_PERF_TEST_TENANT_Router.log
OKCase_PERF_TEST_TENANT_Broker.log

Concerning the above logs:
In the error case, the router log only contains one incoming transfer:
[0x7efdb8172f20]:0 <- @transfer(20) [handle=0, delivery-id=7954, delivery-tag=b"2", message-format=0] (360) "\x00Sr\xc1j\x06\xa3\x09tenant_id\xa1\x10LOAD_TEST_TENANT\xa3\x09device_id\xa1\x0emy-test-device\xa3\x08resource\xa1%event/LOAD_TEST_TENANT/my-test-device\x00Ss\xd0\x00\x00\x00E\x00\x00\x00\x07\xa1\x11EventSenderImpl-6@\xa1\x16event/LOAD_TEST_TENANT@@@\xa3\x10application/json\x00St\xc1\x94\x08\xa1\x0corig_adapter\xa1\x09hono-http\xa1\x09device_id\xa1\x0emy-test-device\xa1\x0corig_address\xa1&/event/LOAD_TEST_TENANT/my-test-device\xa1\x15JMS_AMQP_CONTENT_TYPE\xa1\x10application/json\x00Su\xa0\x0e{"Foo": "Bar"}"

In the OK case, there is the following log output - with outgoing transfer:
[0x7efdb81abcb0]:0 <- @attach(18) [name="auto-4", handle=0, role=false, snd-settle-mode=0, rcv-settle-mode=0, source=@source(40) [durable=0, expiry-policy=:"session-end", timeout=0, dynamic=false, outcomes=@PN_SYMBOL[:"amqp:accepted:list", :"amqp:rejected:list", :"amqp:released:list", :"amqp:modified:list"]], target=@target(41) [address="event/PERF_TEST_TENANT"], incomplete-unsettled=false, initial-delivery-count=0]
[0x7efdb81abcb0]:0 -> @attach(18) [name="auto-4", handle=0, role=true, snd-settle-mode=2, rcv-settle-mode=0, source=@source(40) [durable=0, timeout=0, dynamic=false, outcomes=@PN_SYMBOL[:"amqp:accepted:list", :"amqp:rejected:list", :"amqp:released:list", :"amqp:modified:list"]], target=@target(41) [address="event/PERF_TEST_TENANT", durable=0, timeout=0, dynamic=false], initial-delivery-count=0, max-message-size=0]
[0x7efdb81abcb0]:0 -> @flow(19) [next-incoming-id=8161, incoming-window=2147483647, next-outgoing-id=0, outgoing-window=2147483647, handle=0, delivery-count=0, link-credit=50, drain=false]
[0x7efdb81abcb0]:0 <- @transfer(20) [handle=0, delivery-id=8160, delivery-tag=b"1", message-format=0] (360) "\x00Sr\xc1j\x06\xa3\x09tenant_id\xa1\x10PERF_TEST_TENANT\xa3\x09device_id\xa1\x0emy-test-device\xa3\x08resource\xa1%event/PERF_TEST_TENANT/my-test-device\x00Ss\xd0\x00\x00\x00E\x00\x00\x00\x07\xa1\x11EventSenderImpl-8@\xa1\x16event/PERF_TEST_TENANT@@@\xa3\x10application/json\x00St\xc1\x94\x08\xa1\x0corig_adapter\xa1\x09hono-http\xa1\x09device_id\xa1\x0emy-test-device\xa1\x0corig_address\xa1&/event/PERF_TEST_TENANT/my-test-device\xa1\x15JMS_AMQP_CONTENT_TYPE\xa1\x10application/json\x00Su\xa0\x0e{"Foo": "Bar"}"
[0xdd0c40]:1 -> @transfer(20) [handle=0, delivery-id=4, delivery-tag=b"\xba\x9b\x13\x00\x00\x00\x00\x00", message-format=0, settled=false, more=false, resume=false, aborted=false, batchable=false] (366) "\x00Sr\xd1\x00\x00\x00m\x00\x00\x00\x06\xa3\x09tenant_id\xa1\x10PERF_TEST_TENANT\xa3\x09device_id\xa1\x0emy-test-device\xa3\x08resource\xa1%event/PERF_TEST_TENANT/my-test-device\x00Ss\xd0\x00\x00\x00E\x00\x00\x00\x07\xa1\x11EventSenderImpl-8@\xa1\x16event/PERF_TEST_TENANT@@@\xa3\x10application/json\x00St\xc1\x94\x08\xa1\x0corig_adapter\xa1\x09hono-http\xa1\x09device_id\xa1\x0emy-test-device\xa1\x0corig_address\xa1&/event/PERF_TEST_TENANT/my-test-device\xa1\x15JMS_AMQP_CONTENT_TYPE\xa1\x10application/json\x00Su\xa0\x0e{"Foo": "Bar"}"
[0xdd0c40]:1 <- @disposition(21) [role=true, first=4, last=4, settled=true, state=@accepted(36) []]
[0x7efdb81abcb0]:0 -> @flow(19) [next-incoming-id=8162, incoming-window=2147483647, next-outgoing-id=0, outgoing-window=2147483647, handle=0, delivery-count=1, link-credit=50, drain=false]
[0x7efdb81abcb0]:0 -> @disposition(21) [role=true, first=8160, last=8160, settled=true, state=@accepted(36) []]

@calohmn It would be interesting to know more about the state of the broker and the connector services. In 0.19 , there is one connector service per queue, so if you go to the broker console you should expected to see one entry for the event/LOAD_TEST_TENANT address. On 0.20.0, we're moving back to 1 connector service in total, so could be interesting to see if you can reproduce this issue with the latest 0.20.0 rc

Is there any more of the router log?

@grs I don't have the complete log from the test run with PN_TRACE_FRM=1. A previous test run without the flag showed no interesting output:
qdrouterd-7f7f694d74-t79gm_router_20180522_164646.log.zip
@lulf Yes, we'll repeat the test with 0.20.0 rc.

@calohmn can you still get qdmanage output? for a query of autolinks? qdmanage QUERY --type=autoLink

We have done the load test again with a build that includes the router update from PR #1227:
It also showed the error.

@calohmn yes, debug logs would help I think if we can reproduce with them on. SERVER should be fine.
Fyi, to update logs on the fly the following should work:
qdmanage update --type=log --name=log/SERVER --stdin
Then type in on the console:
{"enable":"trace+"}
Ctrl-D and it should turn that on (works for me ;-)

@grs Thanks, that helped. I've activated it on the DEFAULT module instead of SERVER (SERVER didn't seem enough).
Log output for the FAIL ("message undelivered") case ("LOAD_TEST_TENANT"):
2018-05-25 13:04:23.871966 +0000 POLICY (trace) ALLOW AMQP Attach sender link 'event/LOAD_TEST_TENANT' for user '', rhost '<IP_ADDRESS>', vhost 'hono-internal' based on link target name
2018-05-25 13:04:23.872029 +0000 ROUTER_CORE (trace) Core action 'link_first_attach'
2018-05-25 13:04:23.872052 +0000 DEFAULT (trace) Parse tree search for 'event/LOAD_TEST_TENANT'
2018-05-25 13:04:23.872060 +0000 DEFAULT (trace) Parse tree match not found
2018-05-25 13:04:23.872068 +0000 DEFAULT (trace) Parse tree search for 'event/LOAD_TEST_TENANT'
2018-05-25 13:04:23.894979 +0000 ROUTER_CORE (debug) Delivery incref:    dlv:7fc2e011ded0 rc:1 qdr_link_deliver - newly created delivery, add to action list
2018-05-25 13:04:23.895005 +0000 ROUTER_CORE (debug) Delivery incref:    dlv:7fc2e011ded0 rc:2 qdr_link_deliver - protect returned value
2018-05-25 13:04:23.895021 +0000 ROUTER_CORE (debug) Delivery incref:    dlv:7fc2e011ded0 rc:3 referenced by a pn_delivery
2018-05-25 13:04:23.895032 +0000 ROUTER_CORE (debug) Delivery decref:    dlv:7fc2e011ded0 rc:2 release protection of return from deliver
2018-05-25 13:04:23.895053 +0000 ROUTER_CORE (trace) Core action 'link_deliver'
2018-05-25 13:04:23.895071 +0000 ROUTER_CORE (debug) Delivery incref:    dlv:7fc2d82722d0 rc:1 qdr_delivery_link_peers_CT - linked to peer (1)
2018-05-25 13:04:23.895087 +0000 ROUTER_CORE (debug) Delivery incref:    dlv:7fc2e011ded0 rc:3 qdr_delivery_link_peers_CT - linked to peer (2)
2018-05-25 13:04:23.895119 +0000 ROUTER_CORE (debug) Delivery incref:    dlv:7fc2d82722d0 rc:2 qdr_forward_deliver_CT - add to undelivered list
2018-05-25 13:04:23.895134 +0000 ROUTER_CORE (debug) Delivery transfer:  dlv:7fc2e011ded0 qdr_link_forward_CT: action-list -> unsettled-list

Log output for the OK case ("PERF_TEST_TENANT"):
2018-05-25 13:08:38.773965 +0000 POLICY (trace) ALLOW AMQP Attach sender link 'event/PERF_TEST_TENANT' for user '', rhost '<IP_ADDRESS>', vhost 'hono-internal' based on link target name
2018-05-25 13:08:38.774331 +0000 ROUTER_CORE (trace) Core action 'link_first_attach'
2018-05-25 13:08:38.774418 +0000 DEFAULT (trace) Parse tree search for 'event/PERF_TEST_TENANT'
2018-05-25 13:08:38.774458 +0000 DEFAULT (trace) Parse tree match not found
2018-05-25 13:08:38.774496 +0000 DEFAULT (trace) Parse tree search for 'event/PERF_TEST_TENANT'
2018-05-25 13:08:38.798956 +0000 ROUTER_CORE (debug) Delivery incref:    dlv:7fc2d84154d0 rc:1 qdr_link_deliver - newly created delivery, add to action list
2018-05-25 13:08:38.798986 +0000 ROUTER_CORE (debug) Delivery incref:    dlv:7fc2d84154d0 rc:2 qdr_link_deliver - protect returned value
2018-05-25 13:08:38.799006 +0000 ROUTER_CORE (debug) Delivery incref:    dlv:7fc2d84154d0 rc:3 referenced by a pn_delivery
2018-05-25 13:08:38.799015 +0000 ROUTER_CORE (trace) Core action 'link_deliver'
2018-05-25 13:08:38.799059 +0000 ROUTER_CORE (debug) Delivery incref:    dlv:7fc2d8097d90 rc:1 qdr_delivery_link_peers_CT - linked to peer (1)
2018-05-25 13:08:38.799040 +0000 ROUTER_CORE (debug) Delivery decref:    dlv:7fc2d84154d0 rc:2 release protection of return from deliver
2018-05-25 13:08:38.799084 +0000 ROUTER_CORE (debug) Delivery incref:    dlv:7fc2d84154d0 rc:3 qdr_delivery_link_peers_CT - linked to peer (2)
2018-05-25 13:08:38.799112 +0000 ROUTER_CORE (debug) Delivery incref:    dlv:7fc2d8097d90 rc:2 qdr_forward_deliver_CT - add to undelivered list
2018-05-25 13:08:38.799126 +0000 ROUTER_CORE (debug) Delivery transfer:  dlv:7fc2d84154d0 qdr_link_forward_CT: action-list -> unsettled-list
2018-05-25 13:08:38.799187 +0000 ROUTER_CORE (debug) Delivery incref:    dlv:7fc2d8097d90 rc:3 referenced by a pn_delivery
2018-05-25 13:08:38.799211 +0000 ROUTER_CORE (debug) Delivery transfer:  dlv:7fc2d8097d90 qdr_link_process_deliveries: undelivered-list -> unsettled-list
2018-05-25 13:08:38.799334 +0000 ROUTER_CORE (trace) Core action 'link_flow'
2018-05-25 13:08:38.800313 +0000 ROUTER_CORE (debug) Delivery incref:    dlv:7fc2d8097d90 rc:4 qdr_delivery_update_disposition - add to action list
2018-05-25 13:08:38.800379 +0000 ROUTER_CORE (debug) Delivery decref:    dlv:7fc2d8097d90 rc:3 removed reference from pn_delivery
2018-05-25 13:08:38.800410 +0000 ROUTER_CORE (trace) Core action 'update_delivery'
2018-05-25 13:08:38.800455 +0000 ROUTER_CORE (debug) Delivery incref:    dlv:7fc2d84f2590 rc:1 qdr_link_deliver - newly created delivery, add to action list
2018-05-25 13:08:38.800450 +0000 ROUTER_CORE (debug) Delivery decref_CT: dlv:7fc2d8097d90 rc:2 qdr_delivery_unlink_peers_CT - unlinked from peer (1)
2018-05-25 13:08:38.800484 +0000 ROUTER_CORE (debug) Delivery incref:    dlv:7fc2d84f2590 rc:2 qdr_link_deliver - protect returned value
2018-05-25 13:08:38.800494 +0000 ROUTER_CORE (debug) Delivery decref_CT: dlv:7fc2d84154d0 rc:2 qdr_delivery_unlink_peers_CT - unlinked from peer (2)
2018-05-25 13:08:38.800515 +0000 ROUTER_CORE (debug) Delivery incref:    dlv:7fc2d84154d0 rc:3 qdr_delivery_push_CT - add to updated list
2018-05-25 13:08:38.800531 +0000 ROUTER_CORE (debug) Delivery decref_CT: dlv:7fc2d8097d90 rc:1 qdr_update_delivery_CT - remove from action
2018-05-25 13:08:38.800497 +0000 ROUTER_CORE (debug) Delivery incref:    dlv:7fc2d84f2590 rc:3 referenced by a pn_delivery
2018-05-25 13:08:38.800577 +0000 ROUTER_CORE (debug) Delivery decref:    dlv:7fc2d84f2590 rc:2 release protection of return from deliver
2018-05-25 13:08:38.800552 +0000 ROUTER_CORE (debug) Delivery decref_CT: dlv:7fc2d8097d90 rc:0 qdr_update_delivery_CT - removed from unsettled (1)
2018-05-25 13:08:38.801188 +0000 ROUTER_CORE (debug) Delivery decref_CT: dlv:7fc2d84154d0 rc:2 qdr_update_delivery_CT - removed from unsettled (2)
2018-05-25 13:08:38.801204 +0000 ROUTER_CORE (trace) Core action 'link_deliver'
2018-05-25 13:08:38.801212 +0000 ROUTER_CORE (debug) Delivery transfer:  dlv:7fc2d84f2590 qdr_link_forward_CT: action-list -> undelivered-list
2018-05-25 13:08:38.801422 +0000 ROUTER_CORE (debug) Delivery decref:    dlv:7fc2d84154d0 rc:1 removed reference from pn_delivery
2018-05-25 13:08:38.801446 +0000 ROUTER_CORE (debug) Delivery decref:    dlv:7fc2d84154d0 rc:0 qdr_connection_process - remove from updated list
2018-05-25 13:08:38.801509 +0000 ROUTER_CORE (trace) Core action 'delete_delivery'
2018-05-25 13:08:38.850745 +0000 ROUTER_CORE (trace) Core action 'send_to'
2018-05-25 13:08:38.850804 +0000 ROUTER_HELLO (trace) SENT: HELLO(id=Router.qdrouterd-5bbd67fd6c-6mxnz pv=1 area=0 inst=1527246341 seen=[])

Here are logs and some stats:
logs_stats.zip

We have done some more tests with EnMasse 0.20.0 together with router image from PR #1227:
As the max_size_bytes Artemis address setting is not effectively set to 100kB there anymore, we didn't get the "Address [..] is full" errors in the Artemis log. As a result we also saw no messages staying "undelivered" even after Artemis address size is zero again.
To again reproduce the Artemis "Address [..] is full" errors with that setup, we have set the GLOBAL_MAX_SIZE for Artemis to 100kB.
Indeed these errors showed up again and after some time, message senders got timeouts and messages were not delivered anymore.
This time we got the complete qpid logs: logs_180529.zip
qdstat/qdmanage output: qdstat_qdmanage_180529.zip
The error state started at some point before 2018-05-29 14:24.

I can't see any interaction between the router and the broker in that latest router log. All the incoming messages seem to be management queries. Is this definitely the right router log?
The address in question is a queue (not a topic?) is that right? What should happen is that the messages delivered when the queue is full get a rejected disposition containing the error. However that should clear once the messages have been dequeued.

I did a quick test on master with 100kb global-max-size and I see expected behaviour. (i.e. messages rejected when full, but accepted again when queue is emptied).

I can't see any interaction between the router and the broker in that latest router log. All the incoming messages seem to be management queries. Is this definitely the right router log?

yes, you can see the corresponding transfer operations by doing a grep 'hono-mqtt' qdrouterd.log:
2018-05-29 14:22:51.507067 +0000 SERVER (trace) [468]:0 -> @transfer(20) [handle=0, delivery-id=0, delivery-tag=b"6\x02\x00\x00\x00\x00\x00\x00", message-format=0] (907) "\x00Sr\xd1\x00\x00\x00w\x00\x00\x00\x06\xa3\x09tenant_id\xa1\x10LOAD_TEST_TENANT\xa3\x09device_id\xa1\x13loadTestClient-8004\xa3\x08resource\xa1*event/LOAD_TEST_TENANT/loadTestClient-8004\x00Ss\xd0\x00\x00\x00R\x00\x00\x00\x07\xa1\x16EventSenderImpl-332664@\xa1\x16event/LOAD_TEST_TENANT@@@\xa3\x18application/octet-stream\x00St\xc1\xa5\x08\xa1\x0corig_adapter\xa1\x09hono-mqtt\xa1\x09device_id\xa1\x13loadTestClient-8004\xa1\x0corig_address\xa1*event/LOAD_TEST_TENANT/loadTestClient-8004\xa1\x15JMS_AMQP_CONTENT_TYPE\xa1\x18application/octet-stream\x00Su\xb0\x00\x00\x02\x00jymfccr6il2bphjnnmypmnn0gavlymwrmuyfip6ifg2mgdl0ns8ext6337q4v5btnuu8mchq7bqjmkg8pdrals8npr4nbc82t6bwe2t7gmqeaj8lxnmj6xmam3c1emf8hbnb0mj58dw2nacq567fdvchbuywqx5smh6ueooeadhuj0nnku3wf4jcnuhl1a4c28nl5iarx1taphc15woiptkt8ape10gwjw4y2tlepdv6bmiwpiqsb3fppchh2i8epv13mtrp8lml3q8smp3w0ch2nruppojtbkv0yxccsosq2cbprcbg6vuvl1mfa2opijcsck6hfmp3f1w2xc3cjcxjmbpqaw727lh8a6dgdy64p7m11p5hcg8iv2h8378mbhs4ssg5gewydyl3n26j6rpu0rltaxc76wh1s51gq7qkq2wormmii83bmtnklf2"... (truncated)
...

The last transfer is at 14:22:52.517590.
Log lines concerning the AMQP links are:
$ grep "ALLOW AMQP Attach sender link 'event/LOAD_TEST_TENANT'" qdrouterd.log
2018-05-29 14:22:51.476722 +0000 POLICY (trace) ALLOW AMQP Attach sender link 'event/LOAD_TEST_TENANT' for user '', rhost '<IP_ADDRESS>', vhost 'hono-internal' based on link target name
2018-05-29 14:22:51.487599 +0000 POLICY (trace) ALLOW AMQP Attach sender link 'event/LOAD_TEST_TENANT' for user '', rhost '<IP_ADDRESS>', vhost 'hono-internal' based on link target name
2018-05-29 14:22:51.489429 +0000 POLICY (trace) ALLOW AMQP Attach sender link 'event/LOAD_TEST_TENANT' for user '', rhost '<IP_ADDRESS>', vhost 'hono-internal' based on link target name
2018-05-29 14:22:51.606669 +0000 POLICY (trace) ALLOW AMQP Attach sender link 'event/LOAD_TEST_TENANT' for user '', rhost '<IP_ADDRESS>', vhost 'hono-internal' based on link target name
2018-05-29 14:25:08.786217 +0000 POLICY (trace) ALLOW AMQP Attach sender link 'event/LOAD_TEST_TENANT' for user '', rhost '<IP_ADDRESS>', vhost 'hono-internal' based on link target name

We have used 4 senders.

The address in question is a queue (not a topic?) is that right?

yes, a queue (event/LOAD_TEST_TENANT).

you can see the corresponding transfer operations by doing a grep 'hono-mqtt' qdrouterd.log

All the transfers I see from that are being sent out from the router to a receiving link. I don't see any log of those messages arriving to the router, which is odd.

Seeing the protocol trace between router and broker will I think help in diagnosing the issue. Perhaps setting PN_TRACE_FRM=1 as an env var for the qdrouterd deployment might avoid the missing log problem (it wouldn't have all the other logging, but I think at this point the protocol traces will be the most helpful if we can get them)

Here are more logs:  log_180531.zip (with PN_TRACE_FRM=1 and router log/DEFAULT trace).
In order to correlate log lines between broker and router, the string "EventSenderImpl-[counter]" in the "transfer" log lines can help. It represents the MessageID set by the Hono-MQTT-Adapter instances.
This MessageID is not unique here though: As we have used 4 Hono-MQTT-Adapter instances with independent counters, the same MessageID could appear for up to 4 different messages.

Thanks, these show the problem clearly. It appears to be a bug in the broker, whereby it is not issuing credit once space opens up on the queue: https://issues.apache.org/jira/browse/ARTEMIS-1898

@grs artemis issue is resolved, so can we close this issue as well?


MongoDB criteria support

Add Mongo criteria support to be able to use the generic graphQL filter library with MongoDB.

Added commit 086d86419c42ac1ec5ed2ae5cea52f0d49ae4f47


Focused inputs, textareas and file uploads may not have enough contrast when in the 'error' state

For the input and textarea components, we rely on the input border getting thicker in order to meet WCAG 2.1 1.4.11: Non-text Contrast.
When the text input or textarea is in the error state, it already has a thicker border, and so the border only changes from red to black (in addition to the yellow outline). The contrast between the red and the black is only 2.75:1.

Had a little look into this.
I think we can mostly solve this problem by reducing the error border width on inputs down to 2px. Fields with an error would continue to be differentiated from others by the thicker left border and bold error text. The red colour of the input border can be seen as an enhancement, same as the other elements.

Then when you focus it, the existing wider black border makes it clear that it's being focused.
On the file upload error specifically, it seems like it would work fine without another border surrounding the button anyway:

The only example where I'm not sure this works is something like a date input. Here you can have a group of related fields that share an error message, but where only one field has an error. The current styling means the errored field is differentiated from others by a thicker border. That's lost when you use a 2px border, where only the red colour makes it different:

This might not be a big problem though. In the case above the error message specifically says which field has an error, and it is the only field without any saved data in it. You could add a bit of extra emphasis to the errored field by bolding its label though:

I guess I'm saying I think I've solved it but would be good to know:

if there are things I haven't considered
any impacts you could see these changes having on other patterns  or components

@christopherthomasdesign
At the MoJ, we recently ran a batch of user testing with our errors not being highlighted at all (that is, it had the red bar and error text, but no red highlighting for the input box).  Like this:

Our user researcher found the following:

Following an error message, users put the new answer in the wrong box on multiple occasions, could be the way the error messages are designed or the fact that there is already a lot of cognitive load on the user

If we reduce the size of the box to that of a normal input box, it would make the error state jump out less - this might lead to more instances of that found in our tests - although I appreciate we tested with black boxes not red.

Hi @MalcolmVonMoJ thanks for your comment, that's really useful. Would you be able to share a screenshot of what those errored fields look like in the context of a page? Thanks!

Here is the page as it appeared when the research was done, warts and all.

As I continue to work on our error messages, a thought occurred to me.
An error-state box, when focussed could reduce the thickness of the box.  The change would be discernible through change in thickness, so the problem is solved.
This would make an error & focussed state similar thickness (minus yellow) to a non-error & non-focussed state, but you cannot go direct from one to the other, so no-one is relying on that being different.
Here are a few mockups I created to sanity-check the idea.
CSS changed from
.govuk-select--error {     border: 4px solid #d4351c; }
to
.govuk-select--error {     border: 2px solid #d4351c;     outline: 2px solid #d4351c; }
With an extra bit of CSS for error and focussed for the design with the red box.
.govuk-input--error:focus {     border: 2px solid #d4351c; }

Thanks again for your input @MalcolmVonMoJ! I've taken what you've done and looked at a number different border widths combinations to try solve this problem.
I prototyped different styles with some of the relevant components to quickly see how they'd work (username:design password:mess):

2px error outline with 4px focus highlight
4px error outline with 2px focus highlight
4px error outline with 6px focus highlight
4px error outline with 6px focus highlight in red
6px error outline with 4px focus highlight

I'll outline a few thoughts about each below.
We'll probs have a team discussion to weigh up the pros and cons but any other input or feedback would be really useful.
1. 2px error outline with 4px focus highlight
The errored input doesn't contrast enough with standard inputs when not focused.

2. 4px error outline with 2px focus highlight
(I think this is closest to the ideas above). Errors stand out visually when not focused. When focused they lose contrast with other non-focused inputs as the yellow border is the only differentiator.

3. 4px error outline with 6px focus highlight
Focus state on errors has sufficient contrast with both the errored state and regular inputs. Visually very heavy but doesn't impede readability of the data users enter (though I say this as a fully sighted person).

4. 4px error outline with 6px focus highlight in red
Same pros and cons as above. These components would be the only cases where the focus state doesn't consist only of yellow and black. Given how much work went into defining the focus states it seems not worth diverging from if option 3 works.

5. 6px error outline with 4px focus highlight
Has enough contrast between all the states. Visually the 6px input border is a little inconsistent with the 5px error border on the left.

There are probably more ways to do this but these were the simplest I could think of. I'd say number 3 is my favoured option. It's in-keeping with the 'additive' nature of how we style focus states elsewhere. BUT very much open to any drawbacks I haven't thought of or new suggestions.

I think my preference would be to avoid having a different focus state for inputs in the error state, which I think would point to option 1 or option 5. I think it's important to keep the 'rules' simple, for a couple of reasons:

For users, I'd be worried that it's not clear why the focus state is different for the field that's in the error state. Unless you're aware of the contrast requirement, it's hard to reason about why it behaves differently to the other fields.
I suspect most users wouldn't notice, but wonder if this is the sort of thing that might be distracting for users with autism for example, who need consistency. (I have a very limited understanding in this area, and definitely nothing to back it up other than intuition, so very happy to be corrected!)

For service teams that are building their own components, the simpler the rules are the easier they are to follow when implementing focus states for their own components. We've definitely seen the new focus state implemented badly, and I think we could do a better job at providing guidance for it, but I still think there's less things to 'get wrong'.

Out of the two options, I think I'd lean towards 1, because the transitional behaviour ("borders get thicker when focused") is consistent with non-error'ed fields, as well as the individual error and focus states.
As previously mentioned, this does mean that in form groups with multiple fields (like the date input) the field cannot be visually identified unless you can perceive the difference between the black and the red, but in the examples in the Design System the error message should also identify which field is problematic.
Other cases where the error message can't provide that context seem to be hypothetical at this point, and I wonder whether we can mitigate against that by:

ensuring that the guidance around the 'error state' explains its limitations and the fact that it can only ever be relied on as an enhancement alongside an error message
making it really clear what the impact of this change is in the release notes

If we do end up preferring one of the options where the focus state is different for error'ed fields, I'd like to try and do research with users with autism and/or engage with accessibility experts with a good understanding of how users with autism might be affected by the perceived inconsistency.

Had a chat with @timpaul about this and agree with your comments @36degrees. As a principle I think it makes sense to keep focus styles the same in all contexts if we can.
In light of that I've made a draft PR https://github.com/alphagov/govuk-design-system/pull/1302 that:

pulls in a branch of Frontend with 2px borders on inputs with errors
includes a couple of changes to guidance on the Date input and Error message components

Have a look at the preview here: https://deploy-preview-1302--govuk-design-system-preview.netlify.app/

Summary of team discussion 13 July 2020

Get the guidance changes checked by a content designer
Developer to pick up the Frontend branch and decide on implementation approach
Look at how the borders and box shadows affect one another between the states to avoid jumpy page behaviour
At the moment we don't think it's a breaking change so could ship these in the next release

The contrast between the red and the black is only 2.75:1.

We've realised since shipping that this feature that this is incorrect – unfortunately this is based on the contrast between the 'old' red (#b10e1e) and black (#0b0c0c) which is 2.75:1.
The contrast between the current red (#d4351c) and black (#0b0c0c) is 4.03:1.
Although 4.03:1 technically meets the 3:1 ratio required for WCAG 2.1 1.4.11: Non-text Contrast, we still think that on balance this was the right change to make, an it does significantly improve the visibility of the focus state on fields in the error state.
We have since updated the order of the colour palettes in the settings file to make similar mistakes less likely (https://github.com/alphagov/govuk-frontend/pull/1901).
I'll update the original message to reflect this.


Web - Overlay background colour is different

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Open settings on staging
Open settings on newdot
Observe the overlay color

Expected Result:
The overlay should be same as the newdot.
Actual Result:
The overlay is different from the newdot.
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[x] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: <IP_ADDRESS>
Reproducible in staging?: y
Reproducible in production?: n
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/93399543/dd3f317f-8857-4543-b5ff-48f9c8aae89e
https://github.com/Expensify/App/assets/93399543/6b439acc-db9a-4d4b-a068-85f1adf34131
Expensify/Expensify Issue URL:
Issue reported by: @Krishna2323
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1694612443986939
View all open jobs on GitHub

:wave: Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open StagingDeployCash deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:

Identify the pull request that introduced this issue and revert it.
Find someone who can quickly fix the issue.
Fix the issue yourself.

This is from @rushatgabhane @adamgrzybowski but i dont think this is a blocker

This is a regression of this PR, but it looks by intention

Yeah it seems intentional, in order to fix https://github.com/Expensify/App/issues/26405
@shawnborton can you give this a quick look to confirm what color for the overlay is expected here? You had looked at the PR, too, but not sure if your approval included the color, or just the size issue that was being fixed. Thank you!

removing the label, shouldn't block deploy and will sync with Shawn once he's in working hours

Chatting in Slack but yeah, I think we messed up and the overlay color is now incorrect. We should standardize on the correct color and update it everywhere. I'm thinking maybe using our colors.highLightBG color @ 72% opacity. Which would be background: rgba(7, 39, 31, 0.72);

cc @dannymcclain

Totally agree @shawnborton. Let's make it happen. 🚀

Proposal
Problem
Overlay background colour is different
Root Cause
No root cause, just a color change
Changes
We need to change backgroundColor to #07271FB8 and overlayCapacity to 0.72 in overlayStyles, ofc we will use the variables for color and overlay capacity.

@ishpaul777 forgive me if this is a dumb comment/if I'm misunderstanding something, but the hex code #07271FB8 includes opacity, right? So if we set that as the background color AND set the opacity to 72%, won't that give us an actual opacity of 51.84%? (72% of 72% = 51.84%)
Our Highlight BG hex code is #07271F. We want that value at 72%. Just to be clear!
Just want to make sure we don't inadvertently update this to be wrong. Again, please forgive me if I am just not understanding something. 🙈
cc @shawnborton

Hii @dannymcclain, thanks for correcting it was dumb mistake I made. Updated the Proposal.

I'm gonna add the Bug label to this so we can peruse external proposals!
Shawn and Danny - it looks like from the Slack conversation that we're going to likely want different opacities depending on the theme. Should we add that as a separate theme variable, or include it in a specific separate color variable for the overlay in the theme?

@grgia can you provide guidance on how we should handle adding a new color variable for the modal overlay BG to both dark and light themes? Or do we just get the new dark theme value merged here and we'll deal with light mode separately?

We could use a helper function to set the rgba for a hex in FE. I think I've seen that pattern in app for some of these overlays. As part of this issue, we should make sure that all overlays in App reference the same variable/method

@adamgrzybowski @rushatgabhane Would you like to handle this? As it's within the regression period of your PR. Otherwise we can assign @ishpaul777

I can raise a PR within a hour. @s77rt

@adamgrzybowski @rushatgabhane Would you like to handle this? As it's within the regression period of your PR. Otherwise we can assign @ishpaul777

Bumping this, it's probably easiest if y'all can grab this?

@s77rt I know @rushatgabhane is working on another project now so maybe we can assign @ishpaul777 for expediency's sake, as long as the proposal still sounds good to you?
@grgia I think you're referring to getBackgroundColorWithOpacityStyle, right? And so we could store both the theme color and the theme opacity in the theme somehow. Does that make sense? I'm not sure if there's anything tricky about adding to a theme or if we can just, er, add it.

@dangrous That sounds good to me.
Just I don't think we would need getBackgroundColorWithOpacityStyle we just have to change two lines:
https://github.com/Expensify/App/blob/a190e80086fcc964287cb1feb395f72eb29bb392/src/styles/styles.js#L1556
https://github.com/Expensify/App/blob/5f06b366dfa10976fe2d2aaf508099859e1da4a5/src/styles/variables.ts#L91

Just a heads up to whoever is implementing this - I think we're going to be changing the overlay color just slightly and this is a change that should happen globally, everywhere. Do we have an existing PR for this or are we still taking proposals?

@shawnborton We will use theme.overlay so we should be using whatever value is defined for the overlay (currently it's colors.darkHighlightBackground for dark theme).
I think we are just waiting for @ishpaul777 to be assigned here. cc @dangrous

Okay, the updated values:

Dark mode Overlay BG: rgba(26, 61, 50, 0.72)
Light mode Overlay BG: rgba(235, 230, 223, 0.72)

Are we supposed to change the darkHighlightBackground value in this case or create a new color?

This has nothing to do with darkHighlightBackground, so no need to touch that.

Assigned! Let's make sure any values that we update live inside the themes!

The PR that introduced the bug has been identified: https://github.com/Expensify/App/pull/26385
The offending PR has been commented on: https://github.com/Expensify/App/pull/26385#discussion_r1341733319
A discussion in #expensify-bugs has been started: I don't think this is needed here
Determine if we should create a regression test for this bug: No

Yeah this was not a bug that would have been caught by any process I don't think - we should be good!

Payment Summary:

External issue reporter @Krishna2323  - $50 - payment issued in Upwork
Contributor that fixed the issue @ishpaul777 - $500 + 50% urgency bonus = $750, payment issued in Upwork
Contributor+ that helped on the issue and/or PR - @s77rt - $500 + 50% urgency bonus = $750, payment issued in Upwork

@laurenreidexpensify The payment here should be $250 as the PR caused a regression no bonus is applicable and the total is subject to -50%.


Add IYLoginItem git url to Podfile

I'm not sure whether this is actually necessary because this is the first time I'm building anything with pod, so I might just be doing it wrong, but I kept getting the error ```[!] Unable to find a specification for IYLoginItem```` when I tried to pod install`. Adding this fixed the error.

Hum, that's weird, because the specification is there... https://github.com/CocoaPods/Specs/blob/master/Specs/IYLoginItem/0.1/IYLoginItem.podspec.json
If you run a pod search IYLoginItem you can't find it as well?

Maybe that's it... when I ran that command, the first line of output was Setting up CocoaPods master repo. I'm guessing you need to set that up before you can run a pod install.

I guess you have to run pod setup before installing the dependencies...
Did you manage to install it?

Yep, pod install runs just fine now :) I'll file a PR with a note in the README


Precision or Accuracy?

When I run the experiments, it displays as follows:
  | Task: 3/5 | training loss: 0.407 | training precision: 0.992 |: 100%|███████████████████████████████████| 2000/2000 [08:37<00:00,  3.87it/s]
On-the-fly visdom plots also show precision as y-axis but the title of the plot is average accuracy.
Can you please clarify on that? I have seen same confusion in the code of your other repo: https://github.com/GMvandeVen/continual-learning

Thanks for quick response. I understand that you have used the terms "accuracy" and "precision" interchangeably. But both have different theoritical meaning.

Accuracy = (TP+TN)/(TP+FP+FN+TN)
Precision = TP/(TP+FP)

I just want to confirm which one of accuracy or precision is used in these papers.

Thanks for pointing that out, that is very helpful. Sorry, I realise I should have been more careful with these terms.
The performance measure that is reported in this paper (and also in my other ones) is the proportion of samples classified correctly.
I just updated the code and I now only refer to this measure as accuracy. (I'll update the other repositories as well.)

Thank you so much!


disable automatic info balloons during start-up

First of all: awesome extension! Great work! 👍  💯  💪
Is there some kind of config (e.g., through the settings.json or something) that people can disable balloons like this one?

I'm creating a dockerized vscode instance with codetour and it would be great to disable that.
thanks! 🙏

There isn't currently a setting to suppress this, but we could definitely add that. Maybe something like CodeTour > Prompt for Workspace Tours? And it could be disabled in the settings.json file for a repo?
@gsmile Thoughts?

There isn't currently a setting to suppress this, but we could definitely add that. Maybe something like CodeTour > Prompt for Workspace Tours? And it could be disabled in the settings.json file for a repo?
@gsmile Thoughts?

@lostintangent
Agreed.
Something like CodeTour > Prompt for Workspace Tours for typical users (activating/deactivating this in the VSCode UI) is fine, yes.
But it's also important to have an option in the settings.json, like
"codetour.promptForWorkspaceTours": false

since that, for some use cases, is important to ship the settings.json already with the correct options. 👍

@lostintangent
Agreed.
Something like CodeTour > Prompt for Workspace Tours for typical users (activating/deactivating this in the VSCode UI) is fine, yes.
But it's also important to have an option in the settings.json, like
"codetour.promptForWorkspaceTours": false

since that, for some use cases, is important to ship the settings.json already with the correct options. 👍

@gsmachado Thank you for the suggestion. Out of curiosity, are you wanting to suppress this because it becomes annoying for people who know the codebase, or because not many people who use the codebase are new?

@gsmachado Thank you for the suggestion. Out of curiosity, are you wanting to suppress this because it becomes annoying for people who know the codebase, or because not many people who use the codebase are new?

@gsmachado Thank you for the suggestion. Out of curiosity, are you wanting to suppress this because it becomes annoying for people who know the codebase, or because not many people who use the codebase are new?

It's more about having an extension using CodeTour to extend its functionalities.
I will briefly explain my use case.
I'm developing an extension that provides a brief introduction of "code templates" in a "Welcome" markdown file. In this markdown, there's a button (using the Command URIs) where the codetour.startTour?[params] command is invoked -- specifically to the code tour of a template.
Then, imagine that once the user (developer) starts VScode, with a specific code template (i.e., git repo, with some examples), the user will see the "Welcome" markdown file with instructions (including a button to start the tour) AND, at the same time, a balloon from the CodeTour extension also advising to start the tour. This is redundant and confusing, in my humble opinion.
Adding an option to suppress this Prompt for Workspace Tour balloon (and possibly other options) would turn CodeTour way more interoperable with other extensions that depend on it.
I'm focusing here on a single option, but maybe there are other options that could be customized to a workspace. CodeTour is simply great, but maybe extensibility is also an important factor moving forward. 😄
That's my 2 cents.

@gsmachado Thank you for the suggestion. Out of curiosity, are you wanting to suppress this because it becomes annoying for people who know the codebase, or because not many people who use the codebase are new?

It's more about having an extension using CodeTour to extend its functionalities.
I will briefly explain my use case.
I'm developing an extension that provides a brief introduction of "code templates" in a "Welcome" markdown file. In this markdown, there's a button (using the Command URIs) where the codetour.startTour?[params] command is invoked -- specifically to the code tour of a template.
Then, imagine that once the user (developer) starts VScode, with a specific code template (i.e., git repo, with some examples), the user will see the "Welcome" markdown file with instructions (including a button to start the tour) AND, at the same time, a balloon from the CodeTour extension also advising to start the tour. This is redundant and confusing, in my humble opinion.
Adding an option to suppress this Prompt for Workspace Tour balloon (and possibly other options) would turn CodeTour way more interoperable with other extensions that depend on it.
I'm focusing here on a single option, but maybe there are other options that could be customized to a workspace. CodeTour is simply great, but maybe extensibility is also an important factor moving forward. 😄
That's my 2 cents.

@gsmachado Thanks for the feedback. That makes a lot of sense and I agree that it's confusing to have two toasts for the same activity.
I have a few additional questions to help us understand how you use CodeTour:

What language are the code templates written in?
Do the CodeTours typically become outdated once someone uses the template to write their own code? Does this matter to you?
Do you expect people who use CodeTours to update the template file to include their own code, or do you expect them to use the template file for reference to write their own separate code?

@lostintangent I think giving tour authors the option to suppress the toast will be a good idea for extensibility functionality.

@gsmachado Thanks for the feedback. That makes a lot of sense and I agree that it's confusing to have two toasts for the same activity.
I have a few additional questions to help us understand how you use CodeTour:

What language are the code templates written in?
Do the CodeTours typically become outdated once someone uses the template to write their own code? Does this matter to you?
Do you expect people who use CodeTours to update the template file to include their own code, or do you expect them to use the template file for reference to write their own separate code?

@lostintangent I think giving tour authors the option to suppress the toast will be a good idea for extensibility functionality.

@gsmile Yep agreed! I like the suggestion of adding a VS Code setting to suppress this toast, and then that setting could either be defined by the end-user, or included in a repo. I'll go ahead and add that setting this week 👍

@gsmile Yep agreed! I like the suggestion of adding a VS Code setting to suppress this toast, and then that setting could either be defined by the end-user, or included in a repo. I'll go ahead and add that setting this week 👍

What language are the code templates written in?

Our project is still working in progress, but it will support code templates used by many languages. Primarily, the ones supported are Java, C#, Golang, Typescript, and Python. We should add others later on.
@gsmile @lostintangent If you're interested, follow me on Twitter. Once I announce our project you will see it, try it out, and we can even DM each other to exchange some ideas. I'm working with Developer Experience in a blockchain project, and I'm keen to provide better tools based on VSCode.
I don't post much, but check it out: https://twitter.com/gsmachado

Do the CodeTours typically become outdated once someone uses the template to write their own code? Does this matter to you?

Yes, usually it gets "outdated" since the new code written by the user "messes" a bit with the code tour.

Do you expect people who use CodeTours to update the template file to include their own code, or do you expect them to use the template file for reference to write their own separate code?

Both.
Once the user chooses a code template to try it out, the VS Code environment is built and the user is redirected to it. Then one of our extensions detects which code template was chosen and it displays the "Welcome" page. On the welcome page, the user can click on the button "Start CodeTour" to effectively start, e.g., the 'Intro' Code Tour. It can vary from code template to code template, and that's why I prefer to develop a custom "Welcome" page to trigger a specific Code Tour.
Then the user can follow the code tour, go back and forth, and probably new code will be added/removed. OR, another possibility is: he will download key files from the code template and start his project from scratch (in his local machine).
So, I see value in both ways of doing things.

What language are the code templates written in?

Our project is still working in progress, but it will support code templates used by many languages. Primarily, the ones supported are Java, C#, Golang, Typescript, and Python. We should add others later on.
@gsmile @lostintangent If you're interested, follow me on Twitter. Once I announce our project you will see it, try it out, and we can even DM each other to exchange some ideas. I'm working with Developer Experience in a blockchain project, and I'm keen to provide better tools based on VSCode.
I don't post much, but check it out: https://twitter.com/gsmachado

Do the CodeTours typically become outdated once someone uses the template to write their own code? Does this matter to you?

Yes, usually it gets "outdated" since the new code written by the user "messes" a bit with the code tour.

Do you expect people who use CodeTours to update the template file to include their own code, or do you expect them to use the template file for reference to write their own separate code?

Both.
Once the user chooses a code template to try it out, the VS Code environment is built and the user is redirected to it. Then one of our extensions detects which code template was chosen and it displays the "Welcome" page. On the welcome page, the user can click on the button "Start CodeTour" to effectively start, e.g., the 'Intro' Code Tour. It can vary from code template to code template, and that's why I prefer to develop a custom "Welcome" page to trigger a specific Code Tour.
Then the user can follow the code tour, go back and forth, and probably new code will be added/removed. OR, another possibility is: he will download key files from the code template and start his project from scratch (in his local machine).
So, I see value in both ways of doing things.

This has now been resolved! The latest extension version includes a codetour.promptForWorkspaceTours setting that you can set to false in order to suppress this dialog 👍

@lostintangent cool! thanks a lot!

Let us know if you have any other feedback/issues. Also, if you end up using CodeTour in your product, we'd love to share in the excitement with you 😄


Authentication failure

When I execute the command below it returns "Authentication failure.":
./bat --threshold 60
The problem happens using root or sudo.

Which distribution are you running?

Fedora 33.
Em qui, 11 de mar de 2021 02:48, Tshaka Eric Lekholoane <
@.***> escreveu:

Which distribution are you running?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/leveson/bat/issues/4#issuecomment-796475045, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ABYA22AY6OXEAOPY5MTLES3TDBKSLANCNFSM4Y7K74YA
.

I am working on a fix to a related problem that appears on Ubuntu. When that is done, I will post the binary and then you can let me know if it fixes your problem as well? If not then perhaps we can explore it further.

Can you let me know if this fix works before I put it to release?
bat.zip

New error:
[root@fedora Downloads]# ./bat --threshold 80
panic: runtime error: index out of range [0] with length 0
goroutine 1 [running]:
main.setThreshold(0x50)
/home/lvsnxo/dev/bat/bat.go:165 +0x40c
main.main()
/home/lvsnxo/dev/bat/bat.go:219 +0x3fc

What's the manufacturer/model of your laptop?

Is a Dell Inspiron 5368.

I am afraid I don't think this will work with your laptop.
The variables that control the charging threshold are vendor specific, they even vary within different models from the same manufacturer and so far this has only been tested on ASUS machines.
I will research the problem, but your best bet might be this command-line application from Dell that can do this sort of thing and some scripts from this repository that abstract parts of the application to set the charging threshold.

Ok, thanks.

Cheers ;)

I solve my problem with:
smbios-battery-ctl --set-custom-charge-interval "low high" and smbios-battery-ctl --set-charging-mode custom

That's interesting. Did you have to install anything or did that come with your system?

I installed the smbios-utils package.

Thank you for letting me know. I think I will update the readme to redirect anyone with a Dell laptop to that package.


Select API onClose does not work

I want fire close event when select close. Here bellow my code can you please help me out.
<Select
    multiple
    value={form.roleId ? form.roleId : []}
    name="roleId"
    onChange={e => this.handleOnChange(e)}
    onClose={() => console.log('close')}
    onOpen={() => console.log('close')}
    input={<Input id="roleId" />}
    MenuProps={{
    PaperProps: {
    style: {
        maxHeight: 48 * 4.5 + 8,
        width: 200,
        },
      },
    }}
>

@mitulmarsonia Please provide a full reproduction test case. This would help a lot 👷 .
A live example would be perfect. This codesandbox.io template may be a good starting point. Thank you!

Thanks for replay.


Update to Android settings MainActivity.java --> MainApplication.java

Hi,
First of all, thanks for the most excellent Google Analytics package for React Native!
Second: since React Native v.0.29.0 the settings for Android have changed.
Previously the settings you have listed at "Register package in MainActivity.java" are now going into "MainApplication.java".
My App was crashing before I figured this out. Just thought I would let you know,

Resolved with #58


Is there a way to self-host?

Are there instructions somewhere on self-hosting issue-template?

Hey there! There are no instructions... Until now!

Fork/clone/copy the repo
Change the firebase URLs (I believe they're just here and here) to your own. Or, if you don't want to use firebase, you'll have to rework those services a little bit...
Deploy to whatever server you want that serves up static files
Profit!

Let me know if you have further questions, but I'm going to go ahead and close this issue for now.

@kentcdodds, you are awesome.  Thanks for the quick reply.
--cro
On Tue, Jun 2, 2015 at 3:33 PM, Kent C. Dodds<EMAIL_ADDRESS>wrote:

Closed #38 https://github.com/kentcdodds/issue-template/issues/38.
—
Reply to this email directly or view it on GitHub
https://github.com/kentcdodds/issue-template/issues/38#event-320522720.


File upload doesn't work on Windows in 4.15.1

Version
4.15.1
Describe the bug
Same files that used to work perfectly in the Emulator of version 4.14.1, don't get uploaded anymore in 4.15.1 - 400 error code. The bot application's endpoint doesn't even get triggered for such request. Textual messages work fine though.
To Reproduce
Steps to reproduce the behavior:

Run Bot Framework Emulator and initiate a conversation with your bot;
Click on Attach button to pick a file locally, click "Open" to try to upload it;
See error 400 for this POST request

Expected behavior
File should be sent to the bot successfully.
[bug]

Hi @ivan2428i1
Thank you very much for reporting this issue, we can repro in our side.
While we work on the fix, I'm wondering if you can switch back to the previous version.

Same, may I add that in the 4.15.1 the upload changes the endpoint
from: "directline/conversations//activities"
to "directline/conversations//upload"
Couldn't find any doc about this change...

@rido-min Thank you for the response. Yes, I temporary rolled back to 4.14.1, no problem.


Proxy Sites Dead Links

The links for Unblocked and ByPassed are both dead; Unblocked goes nowhere and Bypassed redirects to a scummy dating site

@GiveMeEstrogen did you check it on this fork
https://github.com/Shakil-Shahadat/awesome-piracy
Since this repo is mostly dead and @Shakil-Shahadat maintains a fork which accepts all PR from this.

i did not, many thanks!


Error: aggregate 'std::ostringstream oss' has incomplete type

When I compile this project, there is an error

And I fixed it by add #include <sstream> in minimalloc/src/converter.cc

I wanted to bring this to your attention so that it can be considered for improvement in future releases. Thank you for your attention to this matter.

Thank you for the bug report!  I'll fix this right away.


Add files via upload

Hi Fleur,
I think the explanation/basic documentation of the function looks clear, but probably more comments throughout the script might be helpful to understand the steps taken to develop the final product/app.
As for testing, my comments might be a bit un-useful since I haven't reached that stage myself. But good luck on the final leg!


Improve editor

Changes include:
Aesthetic/UI

[ ] Migrate to Airship for layout and components.
[ ] Font: use a monospace, à la Inside blog.

Left panel

[ ] Header + developers website
[ ] Define user
[ ] Sources

Dataset
SQL, with default query when selected

[ ] Basemaps

Dark Matter
Positron
Voyager

[ ] Examples drop-down + next/prev buttons
[ ] Share

Copy URL for the current state
Create Gist/bl.ock

Map

[ ] Matching font with the rest of the UI
[ ] Center + zoom information
[ ] Feature count information
[ ] Remove full screen mode

Viz editor

[ ] Reset current viz button
[ ] Integrate an existing code editor for better interoperability: tabs, auto-closing brackets, etc.

Examples

[ ] Remove comples examples
[ ] Include some examples from the developers' website
[ ] Default map: simple but showing relevant features

Feedback

[ ] Error feedback
[ ] Remove current debugging information

One thing that would make my life easier is the option of not using basemaps in editor. Sometimes it's hard to compare different tiles o see certain features because of the noise introduced by the basemap / basemap tags.
Should I open a different issue?

Good idea!. I think that could fit in this issue.
What do you think about a "None" option in the Basemaps, with a default white color?

Integrate an existing code editor for better interoperability:
I think we should discuss also about adding a syntax highlighter, which I guess is one of the purposes of this task. I know @IagoLast did something in December, it'd be great to integrate these rules in the Monaco Editor, a tool we've already mentioned in the past, that can be very useful for the code editor.


images: update image repositories

What type of PR is this?

/kind cleanup

What this PR does / why we need it:
As part of the efforts described in this Issue: https://github.com/kubernetes/k8s.io/issues/1525 we are trying to move away from gcp project gke-release
This PR update the images to the ones that is available in the community registry
/assign @spiffxp @saad-ali
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

NONE

/assign @lpabon @saad-ali
for the /approve

/sig storage
/wg k8s-infra

gently ping @lpabon @saad-ali

gently ping @edisonxiang @lpabon @saad-ali

This repo is not maintained anymore and in particular these files are only of history interest. I don't know whether it can be officially archived.

thanks @pohly
@nikhita looks like this repo can be deprecated, what is the process for that?

@nikhita looks like this repo can be deprecated, what is the process for that?

You can open a new issue in the k/org repo with the Repository Archival template - https://github.com/kubernetes/org/issues/new/choose

I will open the issue to archive this project
for now this PR can be closed as well
/close


Update erlc_paths for gleam v0.25.0

Fixes https://github.com/gleam-lang/mix_gleam/issues/26 but is not compatible with earlier gleam versions.

Hi there! I'm not familiar with this project or Mix, but could we specify both the old and the new path?

Totally, I don't know why I didn't think of it. I updated the branch and tested that it works with gleam 0.24.0 and 0.25.0.

Thank you, looks great!
ping @gleam-lang/elixir-team

Thank you!


brew update output too verbose

Issue guidelines checklist

[x] Confirmed this is a problem with running a brew command and not brew installing or the post-install behaviour of one or more formulae? If it's a formulae-specific problem please file this issue at https://github.com/Homebrew/homebrew-core/issues/new
[x] Ran brew update and retried your prior step?
[x] Ran brew doctor, fixed all issues and retried your prior step?
[x] Ran brew config and brew doctor and included their output with your issue?

What you were trying to do (and why)
Run brew update, like I always have in the past.

What happened (include command output)
Running brew update can result in hundreds of lines of metadata being printed to the console. I'm not sure why this started to happen.

What you expected to happen
When I used to run brew update in the past, I got minimal output in the terminal listing only the names of the Formulae that had been updated.

Step-by-step reproduction instructions (by running brew commands)
brew update

`brew update` output:
➜  brew upgrade
/usr/local/Homebrew/Library/Taps/bramstein/homebrew-webfonttools/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 578386,
  size: 112,
  blocks: 8,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T04:44:47.000Z,
  mtime: 2017-06-22T04:44:47.000Z,
  ctime: 2017-06-22T04:44:47.000Z,
  birthtime: 2017-03-15T04:49:27.000Z }
/usr/local/Homebrew/Library/Taps/caskroom/homebrew-cask/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 632428,
  size: 13077,
  blocks: 32,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T04:44:47.000Z,
  mtime: 2017-06-22T04:44:47.000Z,
  ctime: 2017-06-22T04:44:47.000Z,
  birthtime: 2017-03-15T06:08:08.000Z }
/usr/local/Homebrew/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 520543,
  size: 4818,
  blocks: 16,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T04:44:47.000Z,
  mtime: 2017-06-22T04:44:47.000Z,
  ctime: 2017-06-22T04:44:47.000Z,
  birthtime: 2017-03-15T04:26:51.000Z }
/usr/local/Homebrew/Library/Taps/caskroom/homebrew-drivers/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 5755507,
  size: 106,
  blocks: 8,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T04:44:47.000Z,
  mtime: 2017-06-22T04:44:47.000Z,
  ctime: 2017-06-22T04:44:47.000Z,
  birthtime: 2017-05-04T13:26:51.000Z }
/usr/local/Homebrew/Library/Taps/caskroom/homebrew-versions/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 632655,
  size: 13065,
  blocks: 32,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T04:44:47.000Z,
  mtime: 2017-06-22T04:44:47.000Z,
  ctime: 2017-06-22T04:44:47.000Z,
  birthtime: 2017-03-15T06:09:14.000Z }
/usr/local/Homebrew/Library/Taps/caskroom/homebrew-fonts/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 1713517,
  size: 104,
  blocks: 8,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T04:44:47.000Z,
  mtime: 2017-06-22T04:44:47.000Z,
  ctime: 2017-06-22T04:44:47.000Z,
  birthtime: 2017-03-18T13:47:54.000Z }
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-dupes/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 578389,
  size: 104,
  blocks: 8,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T04:44:47.000Z,
  mtime: 2017-06-22T04:44:47.000Z,
  ctime: 2017-06-22T04:44:47.000Z,
  birthtime: 2017-03-15T04:49:27.000Z }
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 578388,
  size: 103,
  blocks: 8,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T04:44:47.000Z,
  mtime: 2017-06-22T04:44:47.000Z,
  ctime: 2017-06-22T04:44:47.000Z,
  birthtime: 2017-03-15T04:49:27.000Z }
/usr/local/Homebrew/Library/Taps/neovim/homebrew-neovim/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 3573768,
  size: 103,
  blocks: 8,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T04:44:47.000Z,
  mtime: 2017-06-22T04:44:47.000Z,
  ctime: 2017-06-22T04:44:47.000Z,
  birthtime: 2017-04-12T08:41:58.000Z }
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-versions/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 578390,
  size: 107,
  blocks: 8,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T04:44:47.000Z,
  mtime: 2017-06-22T04:44:47.000Z,
  ctime: 2017-06-22T04:44:47.000Z,
  birthtime: 2017-03-15T04:49:27.000Z }

`brew config`
➜  brew config
HOMEBREW_VERSION: 1.2.3
ORIGIN: https://github.com/Homebrew/brew
HEAD: ed9942fbd1ec4243f0a92ab8f9b2411c8b1fb091
Last commit: 10 days ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: 356ebfefe869ab3464076a2057e4b100940ed35e
Core tap last commit: 2 hours ago
HOMEBREW_PREFIX: /usr/local
HOMEBREW_REPOSITORY: /usr/local/Homebrew
HOMEBREW_CELLAR: /usr/local/Cellar
HOMEBREW_BOTTLE_DOMAIN: https://homebrew.bintray.com
CPU: octa-core 64-bit haswell
Homebrew Ruby: 2.0.0-p648
Clang: 8.1 build 802
Git: 2.13.1 => /usr/local/bin/git
Perl: /usr/bin/perl
Python: /Users/thiago/.pyenv/shims/python => /Users/thiago/.pyenv/versions/2.7.13/bin/python2.7
Ruby: /Users/thiago/.rbenv/shims/ruby => /Users/thiago/.rbenv/versions/2.4.0/bin/ruby
Java: 1.6.0_65-b14-468
macOS: 10.12.5-x86_64
Xcode: 8.3.3
CLT: <IP_ADDRESS>.1.1492020469
X11: N/A

`brew doctor`
➜  brew doctor
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry and just ignore them. Thanks!

Warning: "config" scripts exist outside your system or Homebrew directories.
`./configure` scripts often look for *-config scripts to determine if
software packages are installed, and what additional flags to use when
compiling and linking.

Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew provided
script of the same name. We found the following "config" scripts:
  /Users/thiago/.pyenv/shims/python-config
  /Users/thiago/.pyenv/shims/python2-config
  /Users/thiago/.pyenv/shims/python2.7-config
  /Users/thiago/.pyenv/shims/python3-config
  /Users/thiago/.pyenv/shims/python3.6-config
  /Users/thiago/.pyenv/shims/python3.6m-config

You typed brew upgrade. It seems extremely likely this is a local Git setting you've configured. Try to move/edit your .gitconfigs.

@MikeMcQuaid sorry it was a typo. I get the same with brew update:

`brew update`
➜  brew update
/usr/local/Homebrew/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 520543,
  size: 4818,
  blocks: 16,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T08:24:30.000Z,
  mtime: 2017-06-22T08:24:30.000Z,
  ctime: 2017-06-22T08:24:30.000Z,
  birthtime: 2017-03-15T04:26:51.000Z }
/usr/local/Homebrew/Library/Taps/caskroom/homebrew-drivers/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 5755507,
  size: 106,
  blocks: 8,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T08:24:30.000Z,
  mtime: 2017-06-22T08:24:30.000Z,
  ctime: 2017-06-22T08:24:30.000Z,
  birthtime: 2017-05-04T13:26:51.000Z }
/usr/local/Homebrew/Library/Taps/caskroom/homebrew-cask/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 632428,
  size: 13077,
  blocks: 32,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T08:24:30.000Z,
  mtime: 2017-06-22T08:24:30.000Z,
  ctime: 2017-06-22T08:24:30.000Z,
  birthtime: 2017-03-15T06:08:08.000Z }
/usr/local/Homebrew/Library/Taps/bramstein/homebrew-webfonttools/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 578386,
  size: 112,
  blocks: 8,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T08:24:30.000Z,
  mtime: 2017-06-22T08:24:30.000Z,
  ctime: 2017-06-22T08:24:30.000Z,
  birthtime: 2017-03-15T04:49:27.000Z }
/usr/local/Homebrew/Library/Taps/caskroom/homebrew-fonts/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 1713517,
  size: 104,
  blocks: 8,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T08:24:30.000Z,
  mtime: 2017-06-22T08:24:30.000Z,
  ctime: 2017-06-22T08:24:30.000Z,
  birthtime: 2017-03-18T13:47:54.000Z }
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-dupes/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 578389,
  size: 104,
  blocks: 8,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T08:24:30.000Z,
  mtime: 2017-06-22T08:24:30.000Z,
  ctime: 2017-06-22T08:24:30.000Z,
  birthtime: 2017-03-15T04:49:27.000Z }
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 578388,
  size: 103,
  blocks: 8,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T08:24:30.000Z,
  mtime: 2017-06-22T08:24:30.000Z,
  ctime: 2017-06-22T08:24:30.000Z,
  birthtime: 2017-03-15T04:49:27.000Z }
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-versions/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 578390,
  size: 107,
  blocks: 8,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T08:24:30.000Z,
  mtime: 2017-06-22T08:24:30.000Z,
  ctime: 2017-06-22T08:24:30.000Z,
  birthtime: 2017-03-15T04:49:27.000Z }
/usr/local/Homebrew/Library/Taps/neovim/homebrew-neovim/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 3573768,
  size: 103,
  blocks: 8,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T08:24:30.000Z,
  mtime: 2017-06-22T08:24:30.000Z,
  ctime: 2017-06-22T08:24:30.000Z,
  birthtime: 2017-04-12T08:41:58.000Z }
/usr/local/Homebrew/Library/Taps/caskroom/homebrew-versions/.git/FETCH_HEAD Stats {
  dev: 16777222,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 80,
  rdev: 0,
  blksize: 4096,
  ino: 632655,
  size: 13065,
  blocks: 32,
  atimeMs:<PHONE_NUMBER>000,
  mtimeMs:<PHONE_NUMBER>000,
  ctimeMs:<PHONE_NUMBER>000,
  birthtimeMs:<PHONE_NUMBER>000,
  atime: 2017-06-22T08:24:30.000Z,
  mtime: 2017-06-22T08:24:30.000Z,
  ctime: 2017-06-22T08:24:30.000Z,
  birthtime: 2017-03-15T06:09:14.000Z }
Updated 2 taps (caskroom/cask, homebrew/core).
==> Updated Formulae
amazon-ecs-cli      appscale-tools      awscli ✔            fsql                influxdb            libhttpseverywhere  packer              pdf-redact-tools    teleport
ansiweather         aws-sdk-cpp         csmith              gjs                 leaps               macvim              paket               pdftoedn

I'll check my global .gitconfig, thanks @MikeMcQuaid

@thiagodebastos did you ever figure out what was causing this?

I have figured out what was causing the issue: I installed the node@6 package because I didn't want to use the latest version. The output of brew info node@6 is this:
$ brew info node@6
node@6: stable 6.11.1 (bottled), HEAD [keg-only]
Platform built on V8 to build network applications
https://nodejs.org/
<EMAIL_ADDRESS>(3,845 files, 45.3MB)
  Poured from bottle on 2017-07-13 at 09:22:08
From<EMAIL_ADDRESS>==> Dependencies
Build: pkg-config ✔
Optional: openssl ✔
==> Options
--with-debug
	Build with debugger hooks
--with-full-icu
	Build with full-icu (all locales) instead of small-icu (English only)
--with-openssl
	Build against Homebrew's OpenSSL instead of the bundled OpenSSL
--without-completion
	npm bash completion will not be installed
--without-npm
	npm will not be installed
--HEAD
	Install HEAD version
==> Caveats
Please note by default only English locale support is provided. If you need
full locale support you should either rebuild with full icu:
  `brew reinstall node --with-full-icu`
or add full icu data at runtime following:
  https://github.com/nodejs/node/wiki/Intl#using-and-customizing-the-small-icu-build

This formula is keg-only, which means it was not symlinked into /usr/local,
because this is an alternate version of another formula.

If you need to have this software first in your PATH run:
  echo 'export PATH="/usr/local/opt/node@6/bin:$PATH"' >> ~/.zshrc

For compilers to find this software you may need to set:
    LDFLAGS:  -L/usr/local/opt/node@6/lib
    CPPFLAGS: -I/usr/local/opt/node@6/include

Bash completion has been installed to:
  /usr/local/etc/bash_completion.d

The following lines are causing the issue:
If you need to have this software first in your PATH run:
  echo 'export PATH="/usr/local/opt/node@6/bin:$PATH"' >> ~/.zshrc

Somehow when either upgrading to npm version 5 or globally installing<EMAIL_ADDRESS>an executable named touch was installed into the /usr/local/opt/node@6/bin folder, therefor taking precedence over the normal touch command. This alternative touch was printing the extra lines of stats.


Replace SingleObjectFactory with mocking object and improve test design

Fixes POOL-400
Description
Replace test class SingleObjectFactory by mocking object created by Mockito.

Key changed/added classes in this PR

Create mocking object to replace test subclass SingleObjectFactory, decouple test from production code.
Extract the AtomicBoolean attribute and use the extracted attribute in test case to check method created() invocation status.
Make test logic more clear by using method stub instead of method overriding.
Introduce Mockito dependency

Coverage decreased (-0.06%) to 84.892% when pulling 30ba8e17cd961074963462ee4702fd2bba80871e on wx930910:refactor-TestGenericObjectPoolFactoryCreateFailure into 5ffbba589df84c948d171f015e6c3ce90dc0dc8f on apache:master.

This PR looks to me a lot harder to follow than the comparatively simple subclass. What do others think?

Agreed. I don't see what benefit we are getting for the added complexity.

Closing per our comments.


Running pytest

Hi team! Just pushed my unit tests/some sample images to feat-read-img-m2 branch. The tests pass when I run them individually but I'm having trouble running pytest properly - getting the error importlib.metadata.PackageNotFoundError: hexdropper. Let me know if anyone else runs into this please!

Joey helped with this over slack! Copying his response here for reference:
The issue is  init.py file inside the src/hexdropper directory, it’s trying to use importlib.metadata.version to get the version of a package that is not installed. If hexdropper is just a Python file and not an installed package, this approach won’t work. So, I change the version = "0.1.0" in  init.py file, and it works.

Just a quick update on this after running into this issue initially myself - the version in the __init__.py file should remain as is (i.e., we shouldn't be changing the version number manually as that should get updated in the project's toml file. Tiffany had mentioned this in lecture 3). What seemed to be the issue was that the package dependencies were not updated in the toml file.
To get around this issue, I ran the following:

poetry add [package name]
poetry add --group dev pytest
poetry install
pytest tests/

I'm stuck with the poetry add hexdropper , it report an error saying 'Could not find a matching version of package hexdropper'. I will go check tiff's video and see if it will work. But I did merge py file with manual changes to main, do I need to change it back? @monazhu

@joeywwwu I don't think you can add hexdropper just yet because we haven't built the actual package (we'll need to do this at the very end). by #2 I just meant say, if you used matplotlib, then you need to include poetry add matplotlib

Were you able to run pytest tests/ without any errors before pushing your changes through? If so, I think that's all that matters

Okay, I see what you mean. I will run pytest tests/ and see how it goes.

I ran pytest tests/, it raises PackageNotFoundError, but the package that is not found is hexdropper. It is still the same error as before.

Can you tell me what you did before running pytest tests/? Also - did you pull the changes from the remote repo with the updated poetry.lock file as well as pyproject.toml file? I'm just trying to understand how to reproduce your steps

@joeywwwu I think I see what the issue is. I just pulled the repo with your updated functions and tests and it worked on my end. Here's what I did:

in the __init__.py file, switch back to using __version__ = version("hexdropper")
ran poetry install
ran pytest tests/

this is my output:

I see, thanks a lot @monazhu ! I will do as you suggest!

were you able to run poetry install okay? You should get a message saying the following:

Yes, I do.

okay this is a long shot - but did you save your __init__.py file after making the changes?

yes

hmm... okay I'm kind of at a loss right now. I think it's a little hard to try and debug the issue remotely without seeing your files - would you be okay jumping on a quick videocall later today over slack and I can try and debug then?

In the mean time I'm just going to update the __init__.py file on main to fix the issue with version

@juliaeveritt Hey Julia, I found that there is a KeyError in test_read_image.py on my end, when running the pytest tests/. It seems like there is a slash issue with the file path on line 9 and 10. \\ may not work on Mac, but it works when I change it to /. Mona had tested using / on her windows, and it works. I wondering if / will work on your end. If it works for both Mac and windows, would you mind changing \\ to /?
This is my changes on my local repo:

I could push my changes to the remote repo too, if you'd like! Thanks!

Final communication on this was done on slack - we did change \\ to /. Closing issue!


34

Fix #34

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


rtcm_msgs: 1.0.0-1 in 'noetic/distribution.yaml' [bloom]

Increasing version of package(s) in repository rtcm_msgs to 1.0.0-1:

upstream repository: https://github.com/tilk/rtcm_msgs.git
release repository: https://github.com/nobleo/rtcm_msgs-release.git
distro file: noetic/distribution.yaml
bloom version: 0.10.7
previous version for package: null

Noetic sync is done and LICENSE file has been added.


Rendering pipeline

I'd like a review of how I'm handling instance creation inside of the device class. relevant commit is a13d01e72d861eb3b5d63cd5b4d0472a183d0366

Also light review of the vkHelpers is also fine

Why are all checks consistently failing?

The title of the PR is misleading, this work sets up a Vulkan instance, no pipelines or rendering.

This PR is a draft that was originally meant to be reviewed for the entire rendering pipeline but since I’ve brought the work load to have more reviews it is no longer correct. I just reused it instead of closing the PR and opening a new one though I likely should of just closed and restarted it.

Why are all checks consistently failing?

No PCH issues. My bad on my part forgot to test without PCH. Will correct all of those issues before re-review!


Revamp

This PR completely revamps a project

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@077d6fb). Click here to learn what that means.
The diff coverage is n/a.

@@          Coverage Diff          @@
##             master   #9   +/-   ##
=====================================
  Coverage          ?    0
=====================================
  Files             ?    0
  Lines             ?    0
  Branches          ?    0
=====================================
  Hits              ?    0
  Misses            ?    0
  Partials          ?    0

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 077d6fb...7467350. Read the comment docs.


[OSD-11085] Remove workaround for KMS tests.

The way tests work with the new changes, don't need to break during
account creation, because only a claim is created for the test.
With the workaround the other tests fail, because the credentials are
not yet valid, when the test_secrets.sh script tries to validate them.

/lgtm


Close #7: Set environment variables

An example of setting env var:
[run]
init_cmds = [
	["GOOS=windows", "GOARCH=amd64", "go", "build", "-o", "foobar.exe", "./foobar.go"],
	["GOOS=linux", "GOARCH=arm", "go", "build", "-o", "foobar_arm", "./foobar.go"],
	["go", "build", "-o", "foobar"],
	["echo", "answer=42"],
	["./foobar"]
]									# Commands run in start
watch_all = true					# Watch all sub-directories
watch_dirs = []						# Directories to watch
watch_exts = [".go"]				# Extensions to watch
ignore = [".git", "node_modules"] 	# Directories to exclude from watching
ignore_files = []					# Regexps for ignoring specific notifies
build_delay = 1500					# Minimal interval to Trigger build event
interrupt_timout = 15				# Time to wait until force kill
cmds = [
	["GOOS=windows", "GOARCH=amd64", "go", "build", "-o", "foobar.exe", "./foobar.go"],
	["GOOS=linux", "GOARCH=arm", "go", "build", "-o", "foobar_arm", "./foobar.go"],
	["go", "build", "-o", "foobar"],
	["echo", "answer=42"],
	["./foobar"]
]									# Commands to run

[sync]
listen_addr = ":5050"
remote_addr = ":5050"

Thanks!
Comments are made to improve this PR.

If exec.Command.Env is not nil, it will initialize an environment  just contain command.Env, not inherit the current environment. Adding os.Environ to command.Env is necessary:
env, cmd := splitEnvCmd(args)
command := exec.Command(cmd[0], cmd[1:]...)
if len(env) > 0 {
	for _, e := range os.Environ() {
		command.Env = append(command.Env, e)
	}
	for _, e := range env {
		command.Env = append(command.Env, e)
	}
}

Since length of os.Environ is very long in most cases, I prefer the saving/restoring env vars way.

I see. But it can be optimized:

Does not care env vars when no such need, just like the way currently works.
Only setting env vars for needed cases and cache that slice, so only first time would be slow.

If you feel confused, leave it to me to implement 🤓

@Unknwon Looking forward for implement. Caching entire command looks good.


Old scrapers

Note I haven't changed .travis so flake8 runs on it, and the tests aren't copied. Given that we should not be developing this code, that seemed ok?


Show some stats like total amount of packages, version etc.

Users might want to know some general info about their BaGetter instance from the web UI. For instance, they might want to quickly look up its version. Or they might have uploaded an initial bunch of packages and want to check if the amount from their upload directory matches the amount of packages that landed on their server instance.
Solution
I think it'd be useful to have a place for showing some general stats of the BaGetter instance, like:

current version
services being used/configured
total amount of package IDs
total amount of packages (package IDs and versions)

Thank you for this great suggestion.
I really like the idea of seeing some stats of the BaGetter instance.
I am on board with the follwing stats:

Current version
Total amount of package
Total amount of packages versions
Services being used
Disk usage (Folder size - Is this possible on S3?)


Inform about the issue that GPU instances cannot be unshelved

GPU instances are typically not able to unshelve after being unshelved. This is due to technicalities in the (non-)virtualisation of GPUs. Users should be informed about this in this documentation.

Is this the correct project for such documentation?

Nope, sorry I meant Strato...


[BUG] SAML Login Button is not shown

Description
Third party authentication button is not shown. IOS shows the SAML button, Android does not. How shall Android users login?
Devices and Versions
Your Rocket.Chat.Android version: 2.4.0
Your Rocket.Chat Server version: 0.65.1
Mobile device model and OS version: any (I guess?)
Steps to reproduce
Setup SAML. Open Android app. Enter server Url with activated SAML auth method. No third party button is shown.

So SAML support is added w/ https://github.com/RocketChat/Rocket.Chat.Android/pull/1326 and it is due for version 2.5.0 :  https://github.com/RocketChat/Rocket.Chat.Android/milestone/21


fix: z-index inside attachment preview

🎯 Goal
This PR affects both Angular and React (I tested with the React vite example app).
Issue: the delete and retry icons had higher z-index than the channel list menu, causing a visual glitch

Is there ever a case when something from the channel should overlay something from the channel list? If not, maybe we can make the whole channel its own stacking context with z-index below channel list?
I understand if that's too scary of a change, so this PR works for me too 🐸

This issue can also cause problems inside the channel, because the icons could disappear above the floating message menu (at least for Angular), so we still need this as well.
Still, your suggestion makes sense, but yes, it's scary.


Check HTTP status code for contract deploy

This also revealed that it's not necessary to separately call
RegisterContract if DeployContract was already called on the node with
registeredName (it returns 409 since the contract was already registered).
Signed-off-by: Andrew Richardson<EMAIL_ADDRESS>

Verified that firefly E2E tests pass with this version of the CLI.


Proposal: maybe we should rename app.rag.knowledge_base to app.rag.graphrag

why?

graphrag is a more well-known concept than knowledge_base

@sykp241095

graphrag is a more well-known concept than knowledge_base

typo knowledge_base -> knowledge_graph
Concepts to be clarify:

Knowledge Graph in autoflow is a index method for indexing document chunks.
Knowledge Graph Index is an component of autoflow and could be used independently. (e.g. Searching documents from knowlede graph.)
GraphRAG is a flow including building knowledge graph, searching knowledge graph and generating by the search results.

Knowledge Graph and GraphRAG should be different concepts in autoflow.


Intents.from_list() added

Summary

Checklist

[ ] If code changes were made then they have been tested.

[ ] I have updated the documentation to reflect the changes.

[ ] This PR fixes an issue.
[ ] This PR adds something new (e.g. new method or parameters).
[ ] This PR is a breaking change (e.g. methods or parameters removed/renamed)
[ ] This PR is not a code change (e.g. documentation, README, ...)

This design seems rather contrived. The constructor already allows similar passing of flags.
This also won't work as expected as you're modifying the list while iterating over it.
Some optimisations could also be made, namely only traversing the list once.

I don't see a valid usecase for this that can't be done through the constructor.
Thanks for the PR


JENKINS-39762 Update application header

Squashed commit of the following:
josh/JENKINS-39762-new-headers * Remove placholder input_required result state, replace with pause. Fix pause colours in less
josh/JENKINS-39762-new-headers * lint
Update brand-unknown
josh/JENKINS-39762-new-headers * Use the proper TabLink component in story
josh/JENKINS-39762-new-headers * New version of PageTabs
josh/JENKINS-39762-new-headers Styles for new tab components
josh/JENKINS-39762-new-headers * Header and site nav links
josh/JENKINS-39762-new-headers * Rename subnav => headerdetails
josh/JENKINS-39762-new-headers * Flow
josh/JENKINS-39762-new-headers * Long-overdue commit of new headers
Description

See JENKINS-39763.

Submitter checklist

[X] Link to JIRA ticket in description, if appropriate.
[X] Change is code complete and matches issue description
[X] Appropriate unit or acceptance tests or explanation to why this change has no tests

Reviewer checklist

[ ] Run the changes and verified the change matches the issue description
[ ] Reviewed the code
[ ] Verified that the appropriate tests have been written or valid explanation given

@reviewbybees

JDL part of this ticket

This pull request originates from a CloudBees employee. At CloudBees, we require that all pull requests be reviewed by other CloudBees employees before we seek to have the change accepted. If you want to learn more about our process please see this explanation.

LGTM when I tried it via storybook - awaiting @i386 to bless

Keeping in mind this is just the JDL side, the rest will be in a PR for blueocean

Giving this a spin now 💿

💯  LGTM


Fix pathing issue + Allure diff screenshot fix + fix warnings

Fixed pathing issue where when codecept is started from directory other than test root, baseFolder would not be found
Replace fs.writeFile with fs.writeFileSync to ensure the diff image is written before attached to allure.
Fix JSDoc warnings
Fix "err" scoping warning
Change undefined checks to check if element is either null or undefined
Remove unused parameter
Add check to ensure size is populated
fix overcomplicated ternary statement

hey, did a last minute push to update variable names and error message for mismatching image sizes so that feedback is easier to work with

@ashiots2 try the new version and let me know if you find any issues 1.8.0

Hi @puneet0191 , @ashiots2
I ran into the same issue, the diff image can't be added in the allure report. Could you please help to suggest what I can do if i want to see the diff in allure report? Please help to suggest. thanks.

Below is my package.json

hey @gtycherry, I am a bit confused, under the "I see visual diff" step (that failed), I can see it has 3 attachments as expected (base, actual and diff). Therefore you should be able to see it once you expand that step in allure. Does that make sense or have I misunderstood your problem?

Hi @ashiots2  Yes, My fault, there are 3 screenshot attached. thanks.


Add a Project Name to the Agents if you want to.

I apologise it should be one pull request not two... its very basic though.
Basically allows you to run multiple projects... and have different agents.
npm run start 2 gpt-3.5-turbo ProjectName and it will create Agent Ids: ProjectName-1

This is missing the changes from the other PR that would make it work...