Bugfix/hhh 17195

SherryPick bugfix HHH-16593 to solve HHH-17195

Thanks for the backport. Like I commented on the Jira issue, we only backport fixes to 6.2 if a Red Hat customer requests that, so closing this for now.


API not getting updated.

Endpoint https://api.rootnet.in/covid19-in/unofficial/covid19india.org/statewise is not updated since 04:12:35 PM, 13-Apr-2020 (IST)
Last refreshed result -
"success": true,
  "data": {
    "source": "covid19india.org",
    "lastRefreshed": "2020-04-13T10:42:35.557Z",
    "total": {
      "confirmed": 9373,
      "recovered": 1105,
      "deaths": 335,
      "active": 7933

API is getting refreshed.


About result of vgg16_voc2007.xml

Thanks for your nice code. I found the result of vgg16_voc2007.yaml is only 50.9 mAP in my experiment. Could you help me choose the correct $MODEL_PATH？
CUDA_VISIBLE_DEVICES=0 python tools/test_net.py --cfg configs/baselines/vgg16_voc2007.yaml
--load_ckpt Outputs/vgg16_voc2007/$MODEL_PATH
--dataset voc2007trainval

You can try this one: https://drive.google.com/file/d/1jKjA4fO_Drd6Coqnd4w9Cmv0aCkuO-Yj/view?usp=sharing

Thanks for your reply.The best results usually are not achieved in the last epoch.Which intermediate model is the best？24999.pth or others？Which intermediate model corresponds the above link given by you ？Looking forward to your response.

You can try this one: https://drive.google.com/file/d/1jKjA4fO_Drd6Coqnd4w9Cmv0aCkuO-Yj/view?usp=sharing
Thanks for your reply.As the following picture shows,Which intermediate model corresponds the above link given by you?

You can try this one: https://drive.google.com/file/d/1jKjA4fO_Drd6Coqnd4w9Cmv0aCkuO-Yj/view?usp=sharing

Thanks for your reply.The above link does achieve a map value of 52.9，But I can only get a map of 50.4-50.9 according to readme.md.Can you tell me how to get your  model?


[WIP] Operator e2e Fix

bases on https://github.com/istio/operator/pull/404
@sdake I am trying to fix the e2e failure for operator controller here based on your above PR.

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
5b791937729d0a916ecff610791d881f4a28707c
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
5b791937729d0a916ecff610791d881f4a28707c
link
/test e2e_operator

lint_operator
5b791937729d0a916ecff610791d881f4a28707c
link
/test lint_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

lint_operator
5b791937729d0a916ecff610791d881f4a28707c
link
/test lint_operator

e2e_operator
807ec7eabf2ea52cd8c4ad7c79c1fddea56a66cc
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
1c95d97e09a088ffbf0612920d519d6a69ade515
link
/test e2e_operator

lint_operator
1c95d97e09a088ffbf0612920d519d6a69ade515
link
/test lint_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
d487428964b81c9f8f2eaf4618b1e57602825a09
link
/test e2e_operator

lint_operator
d487428964b81c9f8f2eaf4618b1e57602825a09
link
/test lint_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

lint_operator
d487428964b81c9f8f2eaf4618b1e57602825a09
link
/test lint_operator

e2e_operator
8b4c28e48b7413eae0d65911a9e97d43d9a8c1f1
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
8b4c28e48b7413eae0d65911a9e97d43d9a8c1f1
link
/test e2e_operator

lint_operator
2902137ff0edc8a2467010aaa697759054684c47
link
/test lint_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

lint_operator
2902137ff0edc8a2467010aaa697759054684c47
link
/test lint_operator

e2e_operator
2902137ff0edc8a2467010aaa697759054684c47
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
2902137ff0edc8a2467010aaa697759054684c47
link
/test e2e_operator

lint_operator
588b1fbbd744df73d393ed655c4e97359705835c
link
/test lint_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

lint_operator
588b1fbbd744df73d393ed655c4e97359705835c
link
/test lint_operator

e2e_operator
588b1fbbd744df73d393ed655c4e97359705835c
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
076a17cb0f944c5765efbcaec8c25a65927d60d9
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
228695b821da094482fd258ca81783dc76498da6
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
9f2da27f7a9fa5ad6bb4dc19e2887c2093d209bb
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
8a32e0d251845513213e6fa825fffc6d146ed215
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
d74ba93c74d3ae269275ea8f49b4548a69931cfe
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
e7695dac6f3e800971c3e7f52248a3491d331d53
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
ca343ae9e6b53ebbb519a830ec69c510e1799526
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
7e1763b08fd041f37ddb1531844dfe94dd42dbcb
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
897eb2817feea0a564b3eb9075e03a61ba0fc1a1
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
897eb2817feea0a564b3eb9075e03a61ba0fc1a1
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@howardjohn would you mind reviewing?

+1 We should bake the default node image into the build. I tried
unsuccessfully
On Fri, Oct 25, 2019 at 11:27 AM Steven Dake<EMAIL_ADDRESS>wrote:

@sdake commented on this pull request.
In tests/e2e/e2e.sh
https://github.com/istio/operator/pull/456#discussion_r339183837:

done

-kubectl get pods --all-namespaces -o wide
+
+#kind cluster setup
+pushd "${ISTIO_DIR}"
+# shellcheck disable=SC1091
+source "./prow/lib.sh"
+setup_kind_cluster kindest/node:v1.15.3
right, my suggestion was to keep this per repo - and then follow this work
up with a common-files replication. agree re node, we should bake node into
the buildtools image imo.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/istio/operator/pull/456?email_source=notifications&email_token=AAEYGXOBHBWCZ7ACQHP7UC3QQM3C5A5CNFSM4JESAGR2YY3PNVWWK3TUL52HS4DFWFIHK3DMKJSXC5LFON2FEZLWNFSXPKTDN5WW2ZLOORPWSZGOCJJDV4I#discussion_r339183837,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAEYGXIPQLCYCGGEGALZYJTQQM3C5ANCNFSM4JESAGRQ
.

This is pretty misleading, you are not actually testing the PR
You set the HUB and TAG, build docker images, but they are not used.
When you pass HUB and TAG to the test, it is not used because the operator part of the test doesn't support it.
When you render the operator install yaml, it has the hardcoded hub and tag: https://storage.googleapis.com/istio-prow/pr-logs/pull/istio_operator/456/e2e_operator/115/artifacts/simple-auth-test-a9a5b04cf9db4c37a5fe/yaml/istio-operator.yaml
So anything you are doing with docker and hubs and tags is entirely unused as far as I can tell

good catch! Thanks. I will fix this.

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
da31cea895d53ad53cbd51de5d0a5f323a53aa6a
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

looks good, just a couple minor comments. I think this is in a good state though

Thanks @howardjohn seems it fails for istioctl kube-inject this time.. not sure the reason yet

the istioctl inject is not related to this pr, I have a PR on istio/istio to fix it

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
7675f39f97b715f76641c76f6f790b7a28d3e9a7
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

https://github.com/istio/istio/pull/18352

/retest

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
7675f39f97b715f76641c76f6f790b7a28d3e9a7
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test e2e_operator

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

e2e_operator
7675f39f97b715f76641c76f6f790b7a28d3e9a7
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

groan - I had forgot the e2e tests were non-voting.  I'll take a look at fixing this up today - if not @irisdingbj - can you take a look at fixing when you start your day.
Cheers
-steve


test: add tests for rest directive's try from

Issue Reference(s):
Fixes #1437
/claim #1437
Build & Testing:

[x] I ran cargo test successfully.
[x] I have run ./lint.sh --mode=fix to fix all linting issues raised by ./lint.sh --mode=check.

Checklist:

[x] I have added relevant unit & integration tests.
[x] I have updated the documentation accordingly.
[x] I have performed a self-review of my code.
[x] PR follows the naming convention of <type>(<optional scope>): <title>

Summary by CodeRabbit

Tests

Expanded unit tests for the Rest struct's TryFrom implementation in the directive.rs file to cover conversion from various directive inputs.

closing in favour of https://github.com/tailcallhq/tailcall/pull/1492/files


Atbash Cipher: 3 tests raise exception in exercism but pass in an sap system

Hi everybody,
I'm working on the atbash cipher.
I set up a trial account with account.hana.ondemand.com to have an ABAP instance available. Unfortunately, I couldn't find out the NetWeaver or ABAP version used, because there is no SAP GUI available for me. Just an Eclipse/ADT connection.
There, I set up the atbash cipher class including all test cases from the exercise.
All tests pass.
In exercism the tests encode6, encode7 and encode8 fail. All three with the same message:
FAILED

Test 6

ENCODE6

TEST FAILURE

Some exception raised

Here is my source code:
CLASS zcl_atbash_cipher DEFINITION PUBLIC FINAL CREATE PUBLIC.

  PUBLIC SECTION.
    METHODS decode
      IMPORTING
        cipher_text TYPE string
      RETURNING
        VALUE(plain_text)  TYPE string .

METHODS encode
      IMPORTING
        plain_text        TYPE string
      RETURNING
        VALUE(cipher_text) TYPE string .

    METHODS constructor.
  PROTECTED SECTION.
  PRIVATE SECTION.
    Data plain type string.
    data cipher type string.
    METHODS translate
      IMPORTING
        original           TYPE string
      RETURNING
        VALUE(translation) TYPE string    .
ENDCLASS.

CLASS zcl_atbash_cipher IMPLEMENTATION.
  method constructor.
    plain  = |abcdefghijklmnopqrstuvwxyz0123456789|.
    cipher = |zyxwvutsrqponmlkjihgfedcba0123456789|.
  endmethod.

 METHOD decode.
    DATA(t) = cipher_text.
    CONDENSE t NO-GAPS.
    plain_text = translate( t ).
  ENDMETHOD.

  METHOD encode.
    DATA(plain_t) = replace( val = plain_text regex = '([[:punct:]])' with = ' ' occ = 0 ).
    CONDENSE plain_t NO-GAPS.
    plain_t = to_lower( plain_t ).
    DATA(cipher_string) = translate( plain_t ).
    cipher_text = condense( replace( val = cipher_string regex = '(.....)' with = `$1 ` occ = 0 ) ).
  ENDMETHOD.

  METHOD translate.
    translation = REDUCE string( INIT s TYPE string
                                  FOR r = 0 WHILE r < strlen( original )
                                  NEXT s = COND string(
                                    LET p = substring( val = original off = r len = 1 )
                                        l = find(  val = plain sub = p )
                                        c = substring( val = cipher off = l len = 1 )
                                        IN
                                        WHEN c NE '' THEN |{ s }{ c }|
                                        ELSE s
                                  )
        ).
  ENDMETHOD.
ENDCLASS.

I can make the tests on exercism pass as well, if I brute force them by adding the following lines of code to the method "encode". But that's no solution, in my humble opinion.
" special treatment for three testcases. The turn green in my abap environment but return "some exception raise" in exercism.org
" for test encode6
    if plain_text eq |Testing,1 2 3, testing.|.
      cipher_text = |gvhgr mt123 gvhgr mt|.
      exit.
" for test encode7
    elseif plain_text eq 'Truth is fiction.' .
      cipher_text = 'gifgs rhurx grlm'.
      exit.
" for test encode8
    elseif plain_text eq 'The quick brown fox jumps over the lazy dog.'.
      cipher_text = 'gsvjf rxpyi ldmul cqfnk hlevi gsvoz abwlt'.
      exit.
    endif.

Hopefully, I managed to include all information needed to look into this issue. If something is missing, please let me know. I'll be happy to help.
Hopefully you can solve this issue. I'd like to solve the exercise but can't get the tests to go green.
Thank you all for the wonderful exercises to learn more about ABAP.

There seems to be an issue with the built-in function replace handling abap character classes.
after changing the code, all tests are passed.

An opened issue with abap lint:
https://github.com/abaplint/transpiler/issues/716#issue-1211234496

https://github.com/abaplint/transpiler/issues/716

@Mirandium try again

closing


Support for multiple web apps in one deployment

Hi,
I have an application that has two web apps.  One for the initial AP configuration of the device and the second for the ongoing maintenance.  Unfortunately, with phew the decorators store the routes in a global.
Phew could support this capability if the routes were stored as instance variables of a Phew server class. You'll see the similarity to Flask.  The following tweak of the basic example demonstrates the idea:
from phew import server, connect_to_wifi

connect_to_wifi("<ssid>", "<password>")

webapp = server.Phew()

@webapp.route("/random", methods=["GET"])
def random_number(request):
  import random
  min = int(request.query.get("min", 0))
  max = int(request.query.get("max", 100))
  return str(random.randint(min, max))

@webapp.catchall()
def catchall(request):
  return "Not found", 404

webapp.run()

It would still be possible to not break existing apps by using a default instance of Phew in the case that the existing methods are called.  In the implementation the server.route method etc. would apply to a default Phew instance stored in a server.py global variable.

I've created pull request Refactor Phew as a class to support multiple apps on one device running singly or concurrently #53


name auction suggestions

Sells only one account a day is too slow for the whole community. I suggest name auction to be take place in different classes every day. Like:
Premium class: sells 1 name per day with the highest bidding price
Medium class: sells 10 names per day within the medium price range
Low class: sells 100 names per day within the lowest price range
Though we can pick a 12-characters name at free,  we still like to bid a better name in lesser characters. Thanks.

Apparently not - there was a bug fix to the stalled auction (meaning since APP has not yet been claimed - but if all the blockproducers dont adopt the change the system stays broken. About 20 names should have already sold. Im about done with EOS. Despite the market I believe heavily in in Crypto and think that the governance and factions that have ripped bitcoin apart are what will ultimately lead to the demise of EOS...especially since there is inflation by block producer rewards. If Block One  doesnt step in and fix this...governance will ultimately be the demise of EOS which is sad for the first VM of crypto.


Htk spatial mapping tap

https://github.com/Microsoft/HoloToolkit-Unity/issues/335 Implements @pinkwerks spatial tap shader from PR https://github.com/Microsoft/HoloToolkit-Unity/pull/353

Could use a bit of tweaking, but it's very similar to the tap pulse you observe in the shell.
Needs a couple improvements to the shader:

Single & Stereo passes
Should be more like the occlusion shader, currently the spatial mapping tap shader uses black as the method of making the mesh invisible (really this only shows up on MR Video Captures).
Leading and trailing edge falloff curves to customize the edge transitions to be sharper / smoother.
Ability to fade at the end of its lifetime instead of just popping.
Reduce overdraw and increase overall performance

The SpatialMapping.prefab is set to now use this by default, and the Object Surface Observer component has been removed (It was mainly for testing in the emulator.  I believe prefabs should be production ready).
You can tweak all the setting through the spatial mapping manager:

I need someone to make sure all the test scenes and spatial understanding scenes work before we merge

@thebanjomatic, could you check out the shader to make sure it works with single pass?

@HodgsonSDAS Will do. I already have a modified version of this shader from the old pull request. I'll let you know what changes need to be applied.

@thebanjomatic I've modified the shader a bit from the original.  You might want to try and pull this version.

@HodgsonSDAS I have submitted a pull request to the HTK-SpatialMappingTap branch on your fork with the changes to enable stereo instancing.

Performance in a simple sceen with only this shader on the surface mesh and the DefaultCursor leaves a lot to be desired, it frequently drops to 30fps depending on where you are looking.
It seems like this shader and the wireframe shader both suffer from lots of overdraw:

I don't have 5.4 installed to check if the behavior is different there, but even the built-in unity wireframe shader suffers from the same problem in 5.5.0p2, this shader just does more.

Not sure how to fix the overdraw, but I agree it is definitely a problem that not just the spatial mapping tap shader has, but all shaders that might try to visualize spatial mapping. It might be beneficial to try and figure out how to cull the geometry we're currently unable to see (or at least sections or chunks).

The best idea I was able to come up with (but haven't implemented) is to dynamically switch the shaders between Occlussion and SpatialMappingTap on a per-surface basis depending on whether or not the bounding box falls within the range of _Center + (_Radius +/- _PulseWidth).
After playing around in the graphics debugger, I don't necessarily think there is an overdraw problem, its just amounts to running a relatively expensive fragment shader on every single pixel. I tried moving some of the color math (_PulseColor * i.pulse and _WireframeColor * i.pulse) out of the pixel shader and into the vertex shader, but that didn't help much because we are then doing extra work again on vertices that are ultimately occluded or off screen and won't be drawn.

Thanks for looking into this.

Hi all sorry I've been on vacation. Indeed running the fragment code is pretty much wasted on everything outside the pulse. You could try bailing out early with discard if your outside the pulse or getting smart about the spatial mapping chunks you apply the shader to. I'm still away from a computer for a couple weeks so I can't hack on it now.
At the end of the day it's really a fill problem with hololens. Last I checked painting every pixel a solid color with spatial mapping wasn't performant.

No worries @pinkwerks, we're all away haha.
We'll still be here when you get back.

Good thinking @pinkwerks. I'm not sure discard is appropriate since then it won't write to the depth buffer, however, we could bail out early of the fragment shader with return float4(0, 0, 0, 0); if the pulse value of all three vertices is 0. That way there won't be any branch divergence per-triangle.

Similar short circuiting could happen if _Radius <= - _PulseWidth so that it acts (more or less) as a simple occlusion shader instead.

I can't wait to see this.

@HodgsonSDAS I'll take another look at this soon. I implemented the above changes and also switched to using fixed instead of half for a lot of the computation. I wanted to spend some time profiling on-device to verify that the performance improvement from reducing the precision warrants the change, but I can at least push it to my own fork this evening so that people can take a look.

Hey guys, check this out: https://github.com/keijiro/SonarFx

re: sonarfx, I can't imagine that calling pow() twice per pixel is cheaper than doing the cubic pulse in the vertex shader.
If you don't need the wireframe effect, you could generate a shader permutation and get rid of the if statement - but I've never done that in unity. (multi compile?)

Re: SonarFx. Haha, I just thought it was cool and wanted to share.


Validating an instance with an unknown $schema should error

In validator_for, and transitively in validate, providing an instance whose $schema isn't one of the known metaschemas should error, not use the latest supported version.
It looks like that was my intention originally, judging by the docstring, but the code and tests use the default in all cases.
This will unfortunately not be changeable immediately, it'll need a deprecation period first, so step one is to do that.

About the deprecation? you mean add warnings when a schema is not found
but use the latest anyway? why not just raise an Exception since v3 is
going to be a major bump

Thanks for asking that, it's a subtle thing that a lot of us developers get
wrong :)
So, the rationale there is that semantic versioning tells you what to do
when you need to make a backwards incompatible change.  It isn't an excuse to just break things just because you're
changing a number :). People very well might be relying on those things,
and just because you bumped a version doesn't change that you're going to
break their stuff. So everything still needs a deprecation period where
things warn, so that people are given a chance to fix their code
before things
break on them all at once. (This was Py3's major mistake, which we've paid
a lot for over the years, so it's a lesson we've now learned the hard way
:P).
Hope that makes sense, but lemme know if that needs some more clarification.
On Thu, Nov 1, 2018 at 6:26 PM Opemipo<EMAIL_ADDRESS>wrote:

About the deprecation? you mean add warnings when a schema is not found
but use the latest anyway? why not just raise an Exception since v3 is
going to be a major bump
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Julian/jsonschema/issues/460#issuecomment-435207926,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAUIXraO_7U1Q1yBdQeb72yyc6cU9Ud4ks5uq3UFgaJpZM4WnHUx
.

Sorry deleted my comment after I realized that you actually explained and answered here . I just didnt read it properly. Definitely makes sense, need to warn before removing stuff.


datetime.datetime.now() always returns Container start time

Hello,
im trying to figgure out why this happens, but when i have a datetime.datetime.now() inside my Python Code it will always return the start time of the Container no matter if i start the script with container start or manually inside the Container.
I dont know if this is normal or intended, but i hope i just misusing something.
This is my actual Dockerfile:
FROM python:3.7.3-stretch
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
COPY requirements.txt /code/
RUN apt-get update
RUN apt-get upgrade -y
RUN apt-get install git -y
RUN pip install -r requirements.txt
RUN apt-get update
RUN apt-get install locales -y
RUN apt-get install nano -y
RUN sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && locale-gen
RUN echo "Europe/Berlin" > /etc/timezone
RUN dpkg-reconfigure -f noninteractive tzdata
ENV TZ=Europe/Brussels
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8
COPY . /code

Maybe someone could help me with this.

 I am hitting the same 🤔

@NoirPi can you please say what was the issue? I am hitting the same 🤔

How you implement the "datetime.datetime.now" inside your code?
In my case i've tried to put inside a dict which obviously wouldnt work.

Yeah my issue was also dumb,
Turned out I did this:
def bad(start=datetime.datettime.now()):
    print(start)

How can I expect start to be different? 🤒
Thanks for help.


DBZ-357 Support for test execution against MariaDB

Hey @jpechane, should we close this for the time being? It seems we won't be able to properly support MariaDB until either the binlog client has been updated upstream or we create a fork of it.

I agree


Automate release creation on tag

Implemented by https://github.com/JenswBE/smtp-cli/commit/c386b761a1a10a99369ff83c2a2c15566a1e5646


Giveaway Extractor - not recognizing links in comments or even discription

Description
1, If you go through e.g. the community train and the next giveaway link is not yet in the GA description but in the comments below, the extractor does not recognize this and stops extracting at that point.
(Example: https://www.steamgifts.com/giveaway/QGIUX/shards-of-azuria - the link in the comments is not yet added to the description as "next" and this happened with most (probably) all the other wagons as well where the description was not updated to the next link in the comments, yet.)
2, The giveaway extractor does not recognize some links to next giveaways
(Example: https://www.steamgifts.com/giveaway/OfTxR/pillars-of-eternity - for whatever reason the extractor does not recognize the next link. This also happened before with other wagons.)
Steps to Reproduce

Go to the current community train or check examples
Click on "Extract all giveaways (specify parameters)" ("Only extract from the current giveaway onward." activated)
See error

Expected Behavior
All links, no matter if in the description of a giveaway or the giveaway's comments get listed by the extractor and used to progress in the train.
Console Errors
none
Screenshots
Example 1:

Extraction 1:

.
Example 2:

Extraction 2:

System (please complete the following information):

ESGST Version: Extension v8.5.5
Browser + Version: Chrome v77.0.3865.90 (Official Build) (64-Bit)

For the second case, it's because "onward" is not in the default regex for looking for next links, go to the Giveaway Extractor settings and change it to this: forw|more|next|onwards**?**|►|>|→


[bug] newly added system can be stuck in endless loader

I think this occurs only on the newly added system with insufficient recorded statistics.
Steps:

go to Settings and set up bigger default time period.
go to Main
go to the system
observe endless spinners

Video shows the steps + how changing time period fixes the loaders.
Video:
https://github.com/user-attachments/assets/2f3beb0c-e6f7-435b-8e6c-e5fcdcd2492f
@henrygd I can try to fix it if you're open for contributions. In this case I will appreciate any notes than can help me to do it.

#223

Initial Chart Loading
To me it seems logical to show a loading indicator if there are no records yet. They will populate eventually if you leave the page open for long enough.
What would you suggest instead? Maybe a message that says no records have been populated yet?

My suggestion is add a loading text, but I haven't implemented this part yet. However, I should be submitting a pull request to fix this issue soon.

@ArsFy the design you're proposing is still confusing from my point of view.
Loading spinner means something is loading. If we have a statement "No records have been populated" it means the loading is done so the loading spinner should be hidden.
The test itself can be better too, for example, "There are not enough records to display the chart". Anyway, having text is better than endless loading spinner.

@alexzaitsev You are right, but it does have some loading.
This is a difficult design cuz the data is actually real-time. If you open the window long enough, it will be successfully loaded into the data.
Maybe you have a better way to fix it? pls tell me, thank you.

agree with @henrygd, this is what I meant. Right now 2 conditions are mixed into a single one. they need to be separated

@alexzaitsev @henrygd I understand now, so I think I need to add a status to show whether the request was successful.

Request successful but empty: display text
Request pending: display only the loader

And, I think maybe changing it to Waiting for enough records to display the chart would be more appropriate?

@ArsFy Exactly right.
I think that phrasing is good.
I can probably take care of this tomorrow if you don't want to deal with it.

@henrygd I finish the job (except for the Crowdin link), it is currently noon in SGT, but you can check my merge request tomorrow

Thanks @ArsFy! I'll close the issue since it will be fixed in the next release.


OAuth2 documentation improvement

The documentation of the module should be sharpened with respect to OAuth2.
There is a part that says that the module always acts as a resource server in an OAuth2 context, the actual resources being served from an underlying system proxied by this apache module. Therefore the module supports token validation via an endpoint. So far, so good, but:

How would an abstract integration szenario look like?
How would a typical integration scenario look like?
What are the supported OAuth2 grant types?
What would be the prerequisites that provider and client must fulfill for the integration to work?
Does the module support other steps in either grant type, such as redirecting a client to an authorization server (i.e. a login page)?

The integration options, abstract/typical/prerequisites are described here: https://github.com/pingidentity/mod_auth_openidc/wiki/OAuth-2.0-Resource-Server
There's no such thing as supported grant types since it is not a Client nor an Authorization Server; it is a Resource Server consuming Bearer access tokens only as described in the Wiki doc.
The module does not support redirecting clients to an Authorization Server since that is not part of the OAuth 2.0 specification (mostly because the client may not even be able to use a browser for the redirect) and would be a proprietary extension.
I'm I right to conclude that you're missing a link to the Wiki doc from the README.md?

Yes, such links would be helpful. Thank you for the quick clarification.


Conda environment for snvphyl-tools broken on centos machine

Situation is where bcftools in the<EMAIL_ADDRESS>environment will not run due to following error:
samtools: error while loading shared libraries: libcrypto.so.1.0.0:
Only seems to be happening in Centos/Redhat environment where as ubuntu/deb it does not. No idea why.
Issue is related to one describe in samtools
Temporary solution is to add a soft link in the lib/ folder of the conda environment.
cd<EMAIL_ADDRESS>ln -s libcrypto.so.1.1 libcrypto.so.1.0.0
Long term solution would be to fix the bioconda recipe to ensure we get the correct version of opensll.

Fixed in https://github.com/bioconda/bioconda-recipes/pull/22880


new compile for coffee lake micro-architecture?

Hello  konsolas,
https://en.wikipedia.org/wiki/Coffee_Lake - do you have plans for upcoming Topple versions to host it on GitHub?
Regards,

Hi,
Coffee Lake is functionally identical to the Skylake core. As such, GCC doesn't provide a -march setting for it. You should use the Skylake compile for intel 6th, 7th, 8th and 9th gen CPUs.


cfpb-icons: Add numerical icons

We had numerical icons in the source svg folder, but hadn't included them in the DS docs for some reason.
Additions

Add numerical icons to the docs.

Testing

The PR preview iconography page should include icons.

Screenshots

I think the historical reason for this is that we put CSS in place to replicate them. There may have also been a licensing concern about the numerals being sourced from Avenir Next.

I think the historical reason for this is that we put CSS in place to replicate them. There may have also been a licensing concern about the numerals being sourced from Avenir Next.

Thanks @Scotchester ! I'm holding the PR till we verify the licensing.

I think the historical reason for this is that we put CSS in place to replicate them. There may have also been a licensing concern about the numerals being sourced from Avenir Next.

Thanks @Scotchester ! I'm holding the PR till we verify the licensing.

I recommend moving forward with the PR if this is time-sensitive or blocking other work. I'm still waiting to hear back from the licensing rep, but I don't anticipate there being an issue.


Implement RFC6473 KIND:application

RFC6473 defines the additional KIND application.

As long as vcard4-ts does not assign any meaning to KIND, this makes no sense to implement


Streaming: don't decode stream bytes until json.decode

Some people (including me) seem to be having issues with UTF-8 encoded tweets when reading a stream. This should fix it.

A lot of the tests for the streaming functionality are out of date. I can spend some time fixing those tests as well.

Looks good to me. :+1:  Thanks!


The query method parameter must not be empty. Define employee ID as cannot be empty. If you want to assert null, change your query to use the 'is null' /'Is not null 'operator instead of passing nullable parameters. package:flutterhtm/sql/dao/chatlistdao.dart:9:50 ╷ 9 │ Future<List> findAllChatList(String?staffId); After 86ms, failed

what should i do ，the example is that:
@Query('SELECT * FROM ChatList WHERE staffId = :staffId')
Future<List> findAllChatList(String? staffId);

the ? in String? is not allowed for parameters. an alternative is (should work, haven't tried it out):
Future<List<ChatList>> findAllChatList(String? staffId) async {
  if (staffId==null) {
    return findAllChatListNull();
  } else {
    return findAllChatListInternal(staffId);
  }
}

@query('SELECT * FROM ChatList WHERE staffId = :staffId')
Future<List<ChatList>> findAllChatListInternal(String staffId);

@query('SELECT * FROM ChatList WHERE staffId IS NULL')
Future<List<ChatList>> findAllChatListNull();

thank you very much，it is useful


Formulas Producing exit status 1 Error

We have encountered an issue where some formulas, when executed, result in an exit status 1 error. This issue affects the installation of packages through our package manager.
Steps to Reproduce:
Attempt to install a package using a formula from our repository.
Observe that the process results in an exit status 1 error.
What We Need:
Test Formulas: Identify which formulas are causing the issue by trying to install packages specified in the formulas.
Report Identified Formulas: List the formulas that produce the error.
Debug Assistance: Help diagnose the root cause of the issue and suggest fixes or improvements.
Additional Information:
Example Error: When attempting to install libcurl or libtool, the installation fails with the exit status 1 error.
Expected Behavior: The package should install successfully without errors.
Current Behavior: Installation fails and displays an error message.
How You Can Help:
Test the problematic formulas and report your findings.
If possible, provide insights into why these errors might be occurring and suggest potential fixes.
Thank you for your assistance in resolving this issue!

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."


Warn about ignoring hints in places where the hint no longer applies.

Suppose I have this file:
module Example where

f = (\a -> (a, b)) <$> Nothing

I don't like tuplesections here, so I add this to my config:
- ignore:
    name: Use tuple-section
    within:
      - Example.f

Then I decide f should be called g.
Now I get the warning again (fine), but I have also accumulated a line in my .hlint.yaml that's unlikely to ever be removed.
It would be nice if hlint said something like "You have warning X which is ignored in place Y but place Y doesn't exist."

This gets a bit harder if you say ignore f, because you aren't pinning down exactly where the thing is. It also gets harder if you use wildcards. An alternative approach would be to generate coverage information about a config, and then presumably on CI users would do --demand-every-bit-of-the-config-is-used. So then it would warn about the redundant config if Example.f got renamed, or you stopped using something that seems a lot like tuple sections.
That said, for tuple sections, I imagine most users will just ignore it globally, or not - it's not the kind of thing people like in some cases but not all.

This gets a bit harder if you say ignore f, because you aren't pinning down exactly where the thing is. It also gets harder if you use wildcards. An alternative approach would be to generate coverage information about a config, and then presumably on CI users would do --demand-every-bit-of-the-config-is-used. So then it would warn about the redundant config if Example.f got renamed, or you stopped using something that seems a lot like tuple sections.
I trust you with the specifics, I don't know the internals of the project well at all.
That said, for tuple sections, I imagine most users will just ignore it globally, or not - it's not the kind of thing people like in some cases but not all.
Fair enough, I just needed a small example quickly :)


Add Datasets Support

Now ASPEN can download datasets from HuggingFace Hub directly.

Also fix lint error

Finally all passed LoL :(

LGTM, but only test use json file.


up the required cmake version to 3.5 from 3.1

Since cmake 3.1 is not correct I updated the required cmake version to 3.5 which is what is supplied on ubuntu 16. I also modified the external cmake projects to not check for versions < 3.2 since we are now at 3.5

Please include any other reviewers you folks want.

We need to ensure that CentOS 7.6 supports this version of Cmake before merging 😃

It seems PaddlePaddle cmake minimum required is 3.0. Let me check if there is any issue on Paddle side. They use a range of old and new systems.

"Since cmake 3.1 is not correct" Do you mean we are already using cmake features that require 3.2+ ? Or cmake 3.1 has some sort of bug?

Looks current nGraph needs at least 3.3+ to avoid
add_dependencies Cannot add target-level dependencies to INTERFACE library

I checkout the PR and was able to build with paddle develop branch on skx (Ubuntu16.04). Let me checkout with Baidu on Tuesday evening meeting on this.

@silee2 I was referring to the error you posted here when I was saying that 3.2 did not work. The user was using 3.2 and got the error so we need 3.3+. I did not want to test which version worked so I chose 3.5 which is the default for ubuntu 16. On centos you will likely need to build cmake from source just as you are now. Centos uses 2.x cmake.

I submitted a PR to test through paddle CI https://github.com/PaddlePaddle/Paddle/pull/15709/files
After it passes, I will confirm with Baidu folks on this.

@rkimballn1 I've played around with different versions for cmakes and noticed the following. 3.3 is sufficient for -DNGRAPH_DEX_ONLY=TRUE. 3.4.3 is needed if LLVM needs to be built from source. 3.5 is needed for -DNGRAPH_ONNX_IMPORT_ENABLE.  With #2420, external project are now configured only if the are enabled by options. So how do you think about the following middle ground. Keep minumum required at 3.3 for top CMakeLists.txt, and add a higher minimum required in external projects if the external project needs a higher version. That would make the minimum requried checking dynamic based on the actual nGraph build options used. PaddlePaddle officially has 3.0 as minimum but their key engineer is saying it is more like 3.3 minimum that they are using. Since the paddle bridge is only using CPU DEX, we won't disrupt their CI.

Thanks @silee2 My PR to paddle found one system uses 3.4.3. So 3.5 will work for them.

3.5 will NOT work for them.


Gets kubeconfig only when subcommand needs it

Description
If the users pod has automountServiceAccountToken: false then the standalone init will fail.
Probably because https://github.com/Dynatrace/dynatrace-operator/blob/master/src/cmd/operator/main.go#L55-L60 will run which needs these tokens it.
However the standalone init does not use this config.
How can this be tested?
Deploy a pod were we would inject with the standalone init that has the automountServiceAccountToken: false set.
Checklist

[x] Unit tests have been updated/added
[x] PR is labeled accordingly

The proposed solutions seems overly complex compared to what is actually needed. A dedicated binary for the init sub-command would be easy to understand, maintain, and cleanly separate concerns.

The proposed solutions seems overly complex compared to what is actually needed. A dedicated binary for the init sub-command would be easy to understand, maintain, and cleanly separate concerns.

As far as I understand, the complexity comes from calling the function three times instead of once, for the subcommands that need it. However, in my opinion, the complexity of creating, publishing and maintaining a separate binary if far greater then the one introduced by this solution.

The proposed solutions seems overly complex compared to what is actually needed. A dedicated binary for the init sub-command would be easy to understand, maintain, and cleanly separate concerns.

As far as I understand, the complexity comes from calling the function three times instead of once, for the subcommands that need it. However, in my opinion, the complexity of creating, publishing and maintaining a separate binary if far greater then the one introduced by this solution.


added Gromov-Hausdorff distance

Added implementation of the modified Gromov-Hausdorff distance between unweighted graphs and metric spaces of integer distances in general. Haven't reflected this in documentation as the latter only regards distances between persistence diagrams, which are not unweighted graphs — so wasn't sure about the context in which I should describe the new distance.

Woah nice, I wasn't aware that there was a general version of the Gromov-Hausdorff distance whose bound could be computed in polynomial time.  I'll have to have a look at the reference.  Yes, @sauln we'll have to think of whether this fits into persim or somewhere else.  But thank you so much @vlad-oles!

Actually, I think this should be promoted to its own project within scikit-tda.  Since it operates on two (integer) distance matrices, it's as general as (e.g.) ripser.py.  Thoughts @sauln?

@ctralie, I think you're right that it transcends the current scope of persim, but I'm reluctant to add many more packages if we can avoid it. The overhead of dealing with pypi and docsite coordination is already becoming a pain point.
When talking with Vlad a few weeks ago, my thought was that we could expand persim again to include any distances of interest to TDA community.  For instance, I'd like to include some of the distances on Mapper discussed here.
What are your thoughts on this?

Okay yeah that sounds reasonable
On Thu, Mar 14, 2019, 11:17 AM Nathaniel Saul<EMAIL_ADDRESS>wrote:

@ctralie https://github.com/ctralie, I think you're right that it
transcends the current scope of persim, but I'm reluctant to add many more
packages if we can avoid it. The overhead of dealing with pypi and docsite
coordination is already becoming a pain point.
When talking with Vlad a few weeks ago, my thought was that we could
expand persim again to include any distances of interest to TDA community.
For instance, I'd like to include some of the distances on Mapper discussed
here https://arxiv.org/abs/1812.06232.
What are your thoughts on this?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/scikit-tda/persim/pull/13#issuecomment-472913321, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABNh5tG2n8-mAcXuNzbF8kUpi2qLeBsZks5vWmgQgaJpZM4bs2g-
.

@ctralie The paper by Memoli I reference in the source only defines the (modified Gromov-Hausdorff) distance. Polynomial algorithm for bounding it is the subject of my ongoing paper that I am to finish in 1-2 months — as of now, it needs more computational examples. My main contribution is the algorithm for (tight) lower bound. Upper bound then is obtained by a common heuristic method for Quadratic Bottleneck Assignment formulation of the distance, aimed to match the lower bound. I'll be happy to share a draft of the paper.
@sauln After looking at persim more closely I can see how Gromov-Hausdorff might not be a fit, but I'd leave it at your discretion, as I know quite little about packaging.
I'm currently looking to replace pyscipopt with another tool to solve Bottleneck Transportation optimization, since the package requires installing the SCIP Optimization Suite, a standalone software package. Given the scarcity of solver options so far, there is some chance I'll end up writing it myself.

Codecov Report

Merging #13 into master will increase coverage by 1.87%.
The diff coverage is 83.87%.

@@            Coverage Diff             @@
##           master      #13      +/-   ##
==========================================
+ Coverage   79.09%   80.97%   +1.87%
==========================================
  Files           8        9       +1
  Lines         287      473     +186
  Branches       63       92      +29
==========================================
+ Hits          227      383     +156
- Misses         50       68      +18
- Partials       10       22      +12

Impacted Files
Coverage Δ

persim/__init__.py
100% <100%> (ø)
:arrow_up:

persim/gromov_hausdorff.py
83.78% <83.78%> (ø)

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 1834929...c4de170. Read the comment docs.

@sauln @ctralie Sorry I forgot to follow up. Just added another commit with minor refactoring. Could you please merge?

Hey Vlad, sorry for moving slow on this. Been swamped this spring.
What is the state of the documentation? I see some nice docstrings, do you have any examples? Adding a couple of examples to the file doctoring would be helpful. In particular one that starts with a networkx graph or distance matrix, i.e. shows how to build the expected graph format.

No worries Nathaniel. I've just added few usage examples to the file docstring. Let me know if this will do for now.
Currently the script only takes adjacency matrices as the input, whether in dense or sparse formats.

Those updates look great.  Final change, sorry to be nitpicky: could you format the code snippets in RST format so the docs site will render them correctly?
It should be fine to either have line start with an >>>, or have the block start with an :: (like this)
It would also be nice to have the output shown on one or two of the examples:
>>> A_G = [[0, 1, 1, 1], [0, 0, 1, 1], [0, 0, 0, 1], [0, 0, 0, 0]]
>>> A_H = [[0]]
>>> lb, ub = gromov_hausdorff_between_graphs(A_G, A_H)
>>> lb, ub
(2.4, 5.6)

(note, I just made up the values printed above).

NP, I'm happy to learn about the documentation standards. Please let me know if this looks good or if any other updates are needed.

Great! It would really helpful if you tested how sphinx renders your docstrings.
You can test how the docs render by:
pip install -e ".[docs]"
cd docs
make html

then open build/html/index.html in a browser.
You'll probably have to add a line or two in this file so sphinx looks for your function.

Thanks, the distance is now showing in "API Reference". I've also shortened gromov_hausdorff_between_graphs to gromov_hausdorff for now, as the former was ruining the layout of "Table of Contents".


Attach documentation to features in Cargo.toml

For every feature in every Cargo.toml file it should be documented it does. Documentation should be attached just above the feature declaration line as is customary in rust source code files

There is a good suggestion on documentation here


3141 char filter

Codecov Report
Base: 86.62% // Head: 66.94% // Decreases project coverage by -19.68% :warning:

Coverage data is based on head (ddd28ad) compared to base (a4ca083).
Patch has no changes to coverable lines.

Additional details and impacted files
@@               Coverage Diff                @@
##           development    #3144       +/-   ##
================================================
- Coverage        86.62%   66.94%   -19.69%
================================================
  Files             1910     1512      -398
  Lines            68682    45498    -23184
================================================
- Hits             59497    30458    -29039
- Misses            9185    15040     +5855

Impacted Files
Coverage Δ

...ort/shared_contexts/shared_observation_matrices.rb
0.80% <0.00%> (-99.21%)
:arrow_down:

spec/support/concerns/controller/delete.rb
9.09% <0.00%> (-90.91%)
:arrow_down:

spec/support/concerns/feature/authorization.rb
9.25% <0.00%> (-90.75%)
:arrow_down:

spec/support/concerns/feature/index_list_show.rb
12.50% <0.00%> (-87.50%)
:arrow_down:

app/models/protonym/becomes.rb
16.43% <0.00%> (-79.46%)
:arrow_down:

app/models/dataset_record/darwin_core/taxon.rb
7.27% <0.00%> (-76.37%)
:arrow_down:

app/controllers/sessions_controller.rb
25.00% <0.00%> (-75.00%)
:arrow_down:

app/models/import_dataset/darwin_core/checklist.rb
7.25% <0.00%> (-75.00%)
:arrow_down:

lib/utilities/dates.rb
13.55% <0.00%> (-74.95%)
:arrow_down:

app/models/geographic_item/geometry_collection.rb
20.58% <0.00%> (-73.53%)
:arrow_down:

... and 736 more

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

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


When working with local files, print better error messages when these can not be found

Local files can not be found since they might not be in result_dir, or fastq_dir, or their fqsuffix and/or fqext is wrong. The error
Checking if samples are single-end or paired-end...
CalledProcessError in line 59 of /home/sande/Dropbox/Studie/PhD/snakemake-workflows/rules/configuration.smk:
Command 'esearch -api_key ba36a74749126e0d9558b7e19967417c3407 -db sra -query GSM12345555555 | efetch -api_key ba36a74749126e0d9558b7e19967417c3407 | grep -Po "(?<=<LIBRARY_LAYOUT><)[^/><]*"' returned non-zero exit status 1.
  File "/home/sande/Dropbox/Studie/PhD/snakemake-workflows/workflows/atac_seq/Snakefile", line 11, in <module>
  File "/home/sande/Dropbox/Studie/PhD/snakemake-workflows/rules/configuration.smk", line 78, in <module>
  File "/home/sande/Dropbox/Studie/PhD/snakemake-workflows/rules/configuration.smk", line 78, in <dictcomp>
  File "/home/sande/anaconda3/envs/snakemake-workflows/lib/python3.7/multiprocessing/pool.py", line 657, in get
  File "/home/sande/anaconda3/envs/snakemake-workflows/lib/python3.7/multiprocessing/pool.py", line 121, in worker
  File "/home/sande/Dropbox/Studie/PhD/snakemake-workflows/rules/configuration.smk", line 59, in get_layout
  File "/home/sande/anaconda3/envs/snakemake-workflows/lib/python3.7/subprocess.py", line 395, in check_output
  File "/home/sande/anaconda3/envs/snakemake-workflows/lib/python3.7/subprocess.py", line 487, in run

is completely uninformative

Also only try to do a lookup if the sample even starts with GSM/SRR/ERR/DRR/etc.
https://github.com/vanheeringen-lab/snakemake-workflows/blob/83ab375cf4aa8e8dbaa7e8281a22cb818e9a532c/rules/configuration.smk#L60-L68

Change the text appropriatly in the wiki when fixed
https://github.com/vanheeringen-lab/snakemake-workflows/wiki/3.-Alignment#working-with-local-files


[Feature Request] Use template files to define data

Thanks for the great component! I started using it recently and it is nice.
I wonder if there is a way to add support to map the data using C like structs or something similar. I understand it is possible to define tables to map each byte to something else, what I propose is actually see the data parsed into a struct of bytes. This is something done in 010 editor where you can set templates and it will parse the data for you. For example:
https://www.sweetscape.com/010editor/repository/templates/PNG.bt
010 goes far beyond by allowing code to be added to the parser, I'm thinking much smaller about a only a struct that can map the current file.
This could be extended to also work in comparison mode to make the list with field names instead of offsets for the difference.
If there is any interest on working this let me know, otherwise feel free to close the request as out of scope.

Thank for good word!😁
Nice idea. Can you update your link. It's doesn't work 😕

If you like please put a ⭐

Link updated and starred!


How would you pass actions up to the parent?

First off, very cool example.
I'm playing around with this pattern on a help form. The form has its typical onChange events that update the state, etc. But what happens when the form is submitted? How do I get that information up to the parent?
Right now I'm having to parse through all the action messages and delegate them to the project updater. This is pretty tedious.
let Help = {
  view: function({state, dispatch}) {
    return (
      state.success ?
        <HelpFormSuccess state={state} dispatch={dispatch}/> :
        <HelpForm state={state} dispatch={dispatch}/>
    )
  },
  update: function(state=initialState, action) {
    switch (action.type) {
      case ON_ERROR:
        //...
      case VALIDATE_AND_SUBMIT:
        //...
      case ON_CHANGE:
        return HelpForm.update(state, action)
      default:
        return state
    }
  }
}

It would be cool it there was a way to indicate whether an action is meant to be dispatched to itself, or up to the parent. How does Elm deal with this? I understand this is just a toy example, but its really cool and I think it would be really power if its done right.

Not sure I understand your question. What exactly is tedious in this case?

Suppose I have a really simple form component.
let Form = {
  view: function({state, dispatch}) {
    const onChange = (field) => (e) => {
      dispatch({type:'ON_CHANGE', field, value: e.target.value})
    }
    const onSubmit = () => {
      dispatch({type:'ON_SUBMIT', fields: {name: state.name, email: state.email}})
    }
    return (
      <div>
        <input onChange={onChange('name')} value={state.name}/>
        <input onChange={onChange('email')} value={state.email}/>
        <button onClick={onSubmit}/>
      </div>
    )
  },
  update: function(state={name:'', email:''}, action) {
    switch (action.type) {
      case 'ON_CHANGE':
        return Object.assign({}, state, {[action.field]: action.value})
      default:
        return state
    }
  }
}

The ON_CHANGE action can remain entirely in the context of the component. But the ON_SUBMIT action needs to be received and dealt with by the Form's parent component.

Hmm. So here's an idea. Any messages that go beyond the scope of the component state is passed as props. So the Form.view signature is function({state, dispatch onSubmit}). The dispatcher contextualizes the component's state by using a key and child updates handled with a high-order function in the parent's update function.
function childDispatch(key, dispatch) {
  return function(action) {
    return { type: 'CHILD', key, action }
  }
}

function updateChildren(childTypes, state, action, notChildAction) {
  if (action.type === 'CHILD') {
    return Object.assign({}, state, {
      [action.key]: childTypes[action.key].update(state[action.key], action.action)
    })
  } else {
    return notChildAction()
  }
}

let App = {
  childTypes: {
    form1: Form
  },
  view: function({state, dispatch}) {
    const onSubmit = () => {
      dispatch({type:'ON_SUBMIT', fields: {name: state.name, email: state.email}})
    }
    return <Form.view state={state.form1}
                      dispatch={childDispatch('form1', dispatch)}
                      onSubmit={onSubmit}/>
  },
  update: function(state={}, action) {
    updateChildren(App.childTypes, state, action, function() {
      switch (action.type) {
        case 'ON_SUBMIT':
          // thunk
          return function(state, dispatch) {
            dispatch({type: 'LOADING'})
            window.setTimeout(function() {
              dispatch({type: 'SUCCESS'})
            }, 2000)
          }
        case 'LOADING':
          // ...
        case 'SUCCESS':
          // ...
        default:
          return state
      }
    })
  }
}

I pretty much just went full circle back to our redux conversation. After exploring this pattern, I think its evident that there needs to be a formal pattern for this so middleware can crawl through nested child actions and handle thunks, etc. And using these high order functions like childDispatch and updateChildren makes it trivial to abstract the child reducers...

To your recommendation, I've been looking into Clojurescript all day today. Seems like Cursors are the way to go for passing state down to children.
https://github.com/facebook/immutable-js/tree/master/contrib/cursor

Cursors are not used in Elm architecture at all. Please see Elm docs instead? :-)
https://github.com/evancz/elm-architecture-tutorial/

Ok. So I've been giving Elm a real hard look. Its very interesting. Thanks for pointing this out to me. The abstraction capabilities are amazing.
I've yet to really understand the async stuff though so I'm still working on it. But it seems to me like HTTP side-effects are going to be actions returned from update, i.e. update : state -> action -> {state, effects}. Effects can be something like {type: 'http', get: 'http://www.google.com'} -- which starts to look a lot like Relay if you join these request fragments together...
The one thing that has me hung up a little is the performance of using pure view functions rather than true react components. If I have a gigantic app, hopefully I'm using immutable.js which will make the update efficient, but I'm still calculating the view all the way down. There's no shouldComponentUpdate in there. Perhaps, this could be solved by simply memoizing the view functions, but I'm not sure if React offers more optimizations.

Take a look at Reflex.

Interesting... Thanks for the link. I'll finish the elm examples and publish my version on Github this weekend. I'm using Coffeescript and Ramda.js. I think you'll like it. I'll eventually want to use immutable.js as well.
I'm really trying to shy away from ES6 classes and use pure functions instead. It would be great if my code was entirely thisless.
My point about performance is that the view is entirely recomputed even if the props of that function don't change. It looks like his implementation will re-render the entire view no matter what:
https://github.com/Gozala/reflex/blob/master/src/dom.js#L29
Imagine in your list of counters -- you may increment one of the counters, but you're re-computing the view of each counter every time one of them changes. I think a simple high-order function to memoize the last state would solve this issue. So you're views would be something like this:

let view = memoize(function(state, address) {
  // ...
})

But perhaps to get the benefit of React HMR and React devtools, we could just create a pure react component.
let view = createView(function(state, address) {
  // ...
})

let createView = function(view) {
  let component = React.createFactory(React.createClass({
    shouldComponentUpdate: function(nextProps, nextState) {
      return nextProps.state !== this.props.state
    },
    render: function() {
      return view(this.props.state, this.props.address)
    }
  }))
  return function(state, address) {
    return component({state, address})
  }
}

Sound good?

@gaearon check it out: https://github.com/ccorcos/elmish
Notable differences:

coffeescript :P
side-effects

I wrote some stuff in the Readme about some things I want to work on to improve it. Let me know what you think.


MUMUP-2139 : angulartics impl for angularjs-portal

Depends on https://github.com/UW-Madison-DoIT/uw-frame/pull/134 being merged.

Removes all miscService.pushPageview hits (this happens anytime the route changes now)
Configures the search result page to be successful for GA Site Search
Unrelated changes: white space (I blame atom), added a /portal/Login success page in mock so you don't get redirected to /portal/Login every time you hit /web

:+1:

:+1:


Doesn't work in PHP 7 = Cannot use Sabberworm\CSS\Value\String as String because 'String' is a special class name

I just tried PHP 7 (master) that is coming in about 4 months (October 2015).
Fatal error: Cannot use Sabberworm\CSS\Value\String as String because 'String' is a special class name in ..vendor/sabberworm/php-css-parser/lib/Sabberworm/CSS/Parser.php on line 20
More information here: http://php.net/manual/en/reserved.other-reserved-words.php

If only they had fixed case-sensitivity for class names then this would not be an issue…
Actually this class had been named CSSString before being refactored into namespaces. Oh well, I’ll revert that for the next major release…

ok, thank you.

Version 7.0.0 fixes this.


Update windows-analytics-get-started.md

Fixed spelling error (compatibitly->compatibility).
Clarified that windows 10 contains the compatibility update so all they need to do is keep installing cumulative updates to get the latest.
Added info on the new (1803) device name opt-in.

Hi, Marc - can we separate out the 1803 update? We can't publish that bit until GA (although we might be able to on 4/10). Let me know if you want to discuss. Thanks, Liza


Race condition on ProtocolExtensions in SshSession.cs

Hello, I found this race condition while investigating an unrelated matter.
Method SshSession.OpenChannelWithInitialRequestAsync computes a local variable isExtensionSupported based on whether Config.ProtocolExtensions and this.ProtocolExtensions both contain the extension identifier<EMAIL_ADDRESS>The computed property this.ProtocolExtensions returns this.Protocol.Extensions, which is:

Initialized from Config in method SshSession.ConnectAsync.
When the SSH_MSG_EXT_INFO is received from the server, method SshSession.HandleMessageAsync(ExtensionInfoMessage, CancellationToken) assigns a new, empty dictionary to this.Protocol.Extensions, then uses this.Protocol.Extensions.Add() to fill it with the extensions received from the server.

The sequence of events that leads to the race is the following:

Calling SshClient.OpenSessionAsync invokes SshSession.ConnectAsync, which starts the background message-processing loop in SshSession.ProcessMessages and returns immediately.
Calling SshClientSession.AuthenticateClientAsync sends the authentication messages, and also returns immediately without waiting for a response.
Caller does not wait for the TaskCompletionSource passed to SshClientSession.AuthenticateClientAsync to complete (a scenario recommended by the documentation of that function, for performance purposes).
Calling SshClientSession.OpenChannelAsync reads from this.ProtocolExtensions. At this point,:

If the background message-processing loop has already processed the SSH_MSG_EXT_INFO message, the program will behave properly.
If the background message-processing loop has not yet processed the SSH_MSG_EXT_INFO message, the program will instead see the extensions from the configuration of the session, which will lead it to assume that<EMAIL_ADDRESS>is supported by the server, even if it isn't.
If the background message-processing loop is currently processing SSH_MSG_EXT_INFO and has already assigned an empty dictionary to this.Protocol.Extensions but has not yet filled it, the program will assume that<EMAIL_ADDRESS>is not supported by the server even if it actually is.
If the background message-processing loop is currently processing SSH_MSG_EXT_INFO, and is in the process of executing this.Protocol.Extensions.Add, then a System.Collections.Dictionary<,> is being both read and written to at the same time by two different threads, which may lead to misbehavior (although given the current implementation, this would require the server to send enough extensions to cause problems).

Waiting for the for the TaskCompletionSource passed to SshClientSession.AuthenticateClientAsync to complete eliminates the race condition.

I've transferred the issue to the ssh repo.

If the background message-processing loop has not yet processed the SSH_MSG_EXT_INFO message, the program will instead see the extensions from the configuration of the session, which will lead it to assume that<EMAIL_ADDRESS>is supported by the server, even if it isn't.

This part of the analysis is incorrect. In that case, the code here detects when the extension is supported locally while the list of supported extensions is not yet received from the remote side. In that case it optimistically sends the extended request message, but it has a fallback in case the request is not supported (which will be barely slower than not trying the extension at all).
The confusion might be related to this expression, which is admittedly difficult to mentally parse:
bool? isExtensionSupported =
   Config.ProtocolExtensions.Contains(SshProtocolExtensionNames.OpenChannelRequest) ?
   ProtocolExtensions?.ContainsKey(SshProtocolExtensionNames.OpenChannelRequest) : false;

The result of that expression is:

true if the extension is known to be supported by both sides.
false if the extension is known to be unsupported by either side.
null if the extension is supported locally but the other side's list of supported extensions have not yet been received, as indicated by null ProtocolExtensions.

The third case triggers the optimistic request + fallback behavior.

If the background message-processing loop has already assigned an empty dictionary to this.Protocol.Extensions but has not yet filled it

If the background message-processing loop is currently in the process of executing this.Protocol.Extensions.Add

These are valid potential threading issues, which I will fix.

You are correct, I was under the impression that new SshProtocol would assign SshProtocol.Extensions based on the incoming configuration, but I cannot find code that would do that, so I was mistaken.


😴 Boring Ticket

[x] Production Account
[x] Pre-Production Account
[x] Development Account
[x] Shared Service Account
[ ] PKI Account
[x] PKI Dev Account
[x] GitHub Account staff-infrastructure-moj


Fix macOS default locale to have UTF-8 encoding set

If LANG is unset in macOS (either manually or when launching GUI version of Vim from the Dock where this environmental variable is not set by the OS), Vim tries to query the system locale and set that. However, the system API doesn't set the encoding part, and there are tools like new versions of Python that seems to want to have an explicit encoding bit set. Also, macOS defaults to UTF-8 anyway, so just make sure to append ".UTF-8" to the locale to explicitly set it.
Also, add regression test for both this change and for 509f8031 (#7003) which added logic to make sure we set LC_NUMERIC to "C" in the default locale detection.
This is a port of https://github.com/macvim-dev/macvim/pull/1036

I'll include this with some changes (hopefully improvements).  Please check it works on Mac.

Just checked and it worked.


disable format if column is part of a simple key

This PR changes the formatvalue logic throughout ermrsetjs. When I implemented the faceting, I started using _formatValueByType directly in different places. In this PR, I tried eliminating those usages. This includes:

Turning off the value formatting (no thousand separator) for int/serial simple key and foreignkey columns.
Making sure that facet filter functions are using the column.formatvalue instead of calling the format function directly.
Passing the base column to AggregateGroupColumn and using the baseColumn.formatvalue to return the formatted value.
Adding the base column parameter to entityCounts and entityValues as well as the histogram APIs.

Issues: #666  #637

Since I was changing the formatvalue logic, I decided to do the #637 as part of this PR too.
Now we just have one central place for getting the formatted value of columns. Faceting and aggregate group APIs are going to use that function from now on.
@jrchudy Can you please take another look at these new changes?


Implement GraphQL Query Functionality for Extracting Egress Analytics Data in Choreo Dashboards

Purpose
Implement new graphql data extraction functionality to populate egress analytics dashboards
Implementation

Get total traffic going out of the gateway

General analytics

[x] getTotalTargetTraffic

AI analytics

[x] Add filter by subtype

Get total errors by backend

General analytics

[x] getTotalTargetErrors

AI analytics

[x] Add filter by subtype

Get average error rate by backend

[x] getTotalTargetTraffic/getTotalTargetErrors

getOverallTargetLatency

General analytics

[x] getOverallTargetLatency

AI analytics

[x] Add filter by subtype

Get token usage

AI analytics

[x] getTotalTokenCount
[x] getCompletionTokenCount
[x] getPromptTokenCount

Get backend usage summary

General analytics

[x] getTargetSuccessSummary
[x] getTargetErrorSummary

AI analytics

[x] Add filter by subtype

Get AI vendor usage over time

[x] getAIVendorUsageOverTime

Get token usage by AI vendor and model over time

[x] getTotalTokenUsageByAIVendorModelOverTime
[x] getCompletionTokenUsageByAIVendorModelOverTime
[x] getPromptTokenUsageByAIVendorModelOverTime

Get token usage summary by AI vendor and model

[x] getTotalTokenCountSummary
[x] getCompletionTokenCountSummary
[x] getPromptTokenCountSummary

Get resource usage by target

General analytics

[x] getResourceUsageByAIVendor

AI analytics

[x] getResourceUsageByTarget

Get target usage overtime

[x] getResourceUsageByTarget

Get backend error overtime

General analytics

[ ] getProxyTargetErrorsByTargetOverTime
[ ] getErrorsByStatusCodeByTarget

AI analytics

[x] getProxyTargetErrorsByAIVendorOverTime
[x] getErrorsByStatusCodeByAIVendor

Get backend latency overtime

General analytics

[x] getLatencyByTarget

AI analytics

[x] getLatencyByAIVendor

Get list of available AI vendors

[x] getAllVendors

Get list of available AI models

[x] getAllModels

Get list of available targets

[x] getAllTargets

Affected Component
APIM
Version
4.4.0
Implementation
No response
Related Issues
No response
Suggested Labels
No response

Added API subtype filter to getTotalTargetTraffic, getTotalTargetErrors, getOverallTargetLatency, getTargetSuccessSummary, getTargetErrorSummary
Implemented getAllTargets, getAllVendors, getAllModels
Implemented getTargetUsageOverTime, getResourceUsageByTarget, getLatencyByTarget


🐛 BUG: Publishing a worker that requires Durable Objects before defining a worker subdomain should prompt to define the subdomain

Which Cloudflare product(s) does this pertain to?
Wrangler
What version of Wrangler are you using?
2.6.1
What operating system are you using?
Mac
Describe the Bug
I have a worker that requires Durable Object bindings, but I haven't created a workers.dev subdomain.  When I try to publish the worker I get the error:
 workers.api.error.subdomain_required [code: 10063]

  If you think this is a bug, please open an issue at:
  https://github.com/cloudflare/wrangler2/issues/new/choose

This should redirect to the flow to create a subdomain, ideally with a message that Durable Object bindings require a workers.dev subdomain:
▲ [WARNING] Using Durable objects requires you to register a workers.dev subdomain before publishing to workers.dev

Would you like to register a workers.dev subdomain now? (y/n)
...

Got the same issue today, and here is the log
 Deploy with Cloudflare Step 3 of 3
│
├ Do you want to deploy your application?
│ yes deploy via `npm run deploy`
│
├ Logging into Cloudflare checking authentication status
│ logged in
│
├ Selecting Cloudflare account retrieving accounts
│ account<EMAIL_ADDRESS>Account
│
├ Deploying your application
│
><EMAIL_ADDRESS>deploy
> wrangler deploy

 ⛅ wrangler 3.11.0
-------------------
Total Upload: 0.19 KiB / gzip: 0.16 KiB
▲ [WARNING] You need to register a workers.dev subdomain before publishing to workers.dev

? Would you like to register a workers.dev subdomain now?
🤖 Using default value in non-interactive context: yes

✘ [ERROR] This command cannot be run in a non-interactive context

If you think this is a bug then please create an issue at https://github.com/cloudflare/workers-sdk/
issues/new/choose

│
Error:
><EMAIL_ADDRESS>deploy
> wrangler deploy

 ⛅ wrangler 3.11.0
-------------------
Total Upload: 0.19 KiB / gzip: 0.16 KiB
▲ [WARNING] You need to register a workers.dev subdomain before publishing to workers.dev

? Would you like to register a workers.dev subdomain now?
🤖 Using default value in non-interactive context: yes

✘ [ERROR] This command cannot be run in a non-interactive context

If you think this is a bug then please create an issue at https://github.com/cloudflare/workers-sdk/issues/new/choose

npm ERR! code 1
npm ERR! path /Users/mel/Code
npm ERR! command failed
npm ERR! command sh -c create-cloudflare

npm ERR!


Extra 'e' When Hovering Over Struct

VSCode Version: 1.44.2
OS Version: OSX

Steps to Reproduce:

Hover over a certain class name
It has an extra e.

I don't understand this. It's only this class.

Does this issue occur when all extensions are disabled?: Yes

Notice that the hover says 'NeedleDisplaye' but the struct is 'NeedleDisplay'.

I closed the tab and reopened it and the bug went away.
While in the error condition, it generated a hover-error in the constructor that also went away.

What language is that? C++?

Yes, C++.

Can you provide a copy/pasteable example?

Not really. I can't reliably reproduce this. It just happened and I can't explain it.

There shouldn't be any hover there at all if you don't have an extension to provide it installed. Are you sure you have all extensions disabled?

Please report this to https://github.com/microsoft/vscode-cpptools


Label in custom UITableViewCell is not rendered with style

I just ran into this with labels inside custom UITableViewCells. Setting an explicit class helps (any class name and then inherit from Label, e.g. Label:Custom), but will become very cumbersome in the long run.
I see a similar issue #86 but it was closed with workaround.
What is required to make this happen automatically?

I really need this, too. Can't understand how anyone can live without this working...


#126

Updated protocol handlers to more reliably remove active waiters when task cancellation occurs
Fixed checks where expecting a KeyError when it should be checking if not None
Updated next_packet_id property to correctly check if there are any packet_ids available. Avoids infinite loop if all packet ids are used.

Hello Pazzarpj,
Hope this reaches you.  I have a project I'd like to get started that looks like it could be complementary to yours.  Please take a look here:  https://github.com/M1078/KDT-Test-Executive-Development
Regards,
Jared Kondratuk
<EMAIL_ADDRESS>

Hello Pazzarpj, Hope this reaches you. I have a project I'd like to get started that looks like it could be complementary to yours. Please take a look here: https://github.com/M1078/KDT-Test-Executive-Development Regards, Jared Kondratuk<EMAIL_ADDRESS>
Hi, currently already authored a project that fits those needs.  check pyfixate. https://github.com/PyFixate/Fixate

Hi Ryan,
I guess that the biggest distinction I see is the user interface.  I
worked in Systems Engineering and Systems Test at several defense
contractors and none of the systems engineers were software guys. They
can design the various tests to verify requirements but then would have
to turn everything over to software to write the actual tests.  I want
them to be able to just enter commands, directives, limits, etc into a
spreadsheet.  We did a demo of that using a spreadsheet as a front end
to National Instruments Test Stand and it worked extremely well.  I want
to get away from NI though.  The idea that you could enter the test
commands in a spreadsheet then run it in the lab initially on Raspberry
Pi based hardware would be great. They can move over to industrial
servers and ideally just run as is.  In the defense contractor world
that would be huge.
Appreciate your quick response.
Regards,
Jared
On 1/14/23 5:26 PM, Ryan Parry-Jones wrote:

Hello Pazzarpj, Hope this reaches you. I have a project I'd like
to get started that looks like it could be complementary to yours.
Please take a look here:
https://github.com/M1078/KDT-Test-Executive-Development Regards,
Jared Kondratuk<EMAIL_ADDRESS>
Hi, currently already authored a project that fits those needs. check
pyfixate. https://github.com/PyFixate/Fixate
—
Reply to this email directly, view it on GitHub
https://github.com/pazzarpj/amqtt/pull/2#issuecomment-1382961141, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AMYFBHVEEEVBOEW4SG6K3YTWSMYYZANCNFSM6AAAAAATXTRBHE.
You are receiving this because you commented.Message ID:
@.***>

@M1078
One of the primary reasons I developed pyfixate was to get away from NI Test Stand.
Unfortunately, you cannot get the accuracy and degree of fidelity through a spreadsheet.
There is this notion of "No Code" or "Low Code" if you care to research it.
Under the hood though, there needs to be domain specific knowledge implemented in order for those "blocks" of no code to exist.
Take PyFixate for example. There is a JigDriver module that allows you to define hardware test points and map them to a relay matrix board.
So the code looks like
jig.mux("TP_1")
dmm.voltage.dc.measure()
etc.
But the jig driver had to be implemented on a per project basis to do all the hardware mapping.
In these cases we have had Electricians (Not systems or software engineers) write the bulk of the test code.
If you are dead set on the spreadsheet idea (No Code), you would need to have all the underlying systems and building blocks built (no different to test stand). Including your specific jig that you had designed built. Then you can have an adapter to translate the spreadsheet into workable solutions.
Your situation seems to show that you write the tests and then hand over to the software guys. Maybe suggest a closer relationship with the software guys so they can build or adapt and existing framework to work within.
If you can build using the pyfixate framework, then that is great. There are several electronic engineers using and maintaining the code base. There is no reason that a spreadsheet interface can't work with that framework providing the necessary under the hood work is done to map the spreadsheet line items to workable code.
Personally, I find that just learning the basics and copy pasting existing examples of code is much better for the teams development (which is why my code is in python). One of my biggest gripes with using NI Test Stand is that piecing together the blocks was easy, but the moment something went wrong within the LabView blocks, then you get really stuck and have a much harder problem that even the software guys can't solve.

Ryan,
I'm not advocating "No Code".  The spreadsheet is just a front-end to
something like you've built.  SET Pri_PWR ON maps to a function call
that sets a specific output pin/switch/relay to output a specified
voltage to power the UUT On.  Measure command makes a voltage
measurement on a specific pin.  And the Verify command here is a
function call to in this case an RS-485 serial monitor looking for a
specific word.
The actual test would have more steps than this but would be of a
similar style.
This spreadsheet format would also be used in the Test Executive GUI but
would then have Time and Measured values filled in and Pass or Fail
checked (or an X for fail).  That would then feed into generating a test
report.
The advantage of a spreadsheet format for creating the test script is
that it is very easy to create using standard spreadsheet tools. And
easy to review.  Some projects I've worked on have a very comprehensive
review cycle with most people not having a software background. So
having a spreadsheet that everyone can look over and understand makes
the process a lot easier.
Regards,
Jared
On 1/15/23 6:28 PM, Ryan Parry-Jones wrote:

@M1078 https://github.com/M1078
One of the primary reasons I developed pyfixate was to get away from
NI Test Stand.
Unfortunately, you cannot get the accuracy and degree of fidelity
through a spreadsheet.
There is this notion of "No Code" or "Low Code" if you care to
research it.
Under the hood though, there needs to be domain specific knowledge
implemented in order for those "blocks" of no code to exist.
Take PyFixate for example. There is a JigDriver module that allows you
to define hardware test points and map them to a relay matrix board.
So the code looks like
jig.mux("TP_1")
dmm.voltage.dc.measure()
etc.
But the jig driver had to be implemented on a per project basis to do
all the hardware mapping.
In these cases we have had Electricians (Not systems or software
engineers) write the bulk of the test code.
If you are dead set on the spreadsheet idea (No Code), you would need
to have all the underlying systems and building blocks built (no
different to test stand). Including your specific jig that you had
designed built. Then you can have an adapter to translate the
spreadsheet into workable solutions.
Your situation seems to show that you write the tests and then hand
over to the software guys. Maybe suggest a closer relationship with
the software guys so they can build or adapt and existing framework to
work within.
If you can build using the pyfixate framework, then that is great.
There are several electronic engineers using and maintaining the code
base. There is no reason that a spreadsheet interface can't work with
that framework providing the necessary under the hood work is done to
map the spreadsheet line items to workable code.
Personally, I find that just learning the basics and copy pasting
existing examples of code is much better for the teams development
(which is why my code is in python). One of my biggest gripes with
using NI Test Stand is that piecing together the blocks was easy, but
the moment something went wrong within the LabView blocks, then you
get really stuck and have a much harder problem that even the software
guys can't solve.
—
Reply to this email directly, view it on GitHub
https://github.com/pazzarpj/amqtt/pull/2#issuecomment-1383301401, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AMYFBHW35CFSWDSZQYM3JYDWSSI3HANCNFSM6AAAAAATXTRBHE.
You are receiving this because you were mentioned.Message ID:
@.***>


Fixes #79

Adds ability to set custom config suffix (empty by default), which can be useful if you want to have several client configurations on same server

@kyl191 could you review please?


⚠ Bofrost.de has degraded performance

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

HTTP code: 200
Response time: 1628 ms

Resolved: Bofrost.de performance has improved in d66934f after 22 minutes.


unable to handle event

Reverb Version
1.0.0
Laravel Version
11.10.0
PHP Version
8.3.6
Description
I am experiencing an issue with connecting to Laravel Reverb in my Laravel application. Despite following the setup instructions provided in the Laravel Reverb documentation, I am unable to establish a connection
Setup 1
mydomain.conf
    server_name mydomain.com www.mydomain.com;
    root /var/www/html/mydomain/public;

    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-Content-Type-Options "nosniff";

    index index.php;

    charset utf-8;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location /app/ {
        proxy_http_version 1.1;
        proxy_set_header Host $http_host;
        proxy_set_header Scheme $scheme;
        proxy_set_header SERVER_PORT $server_port;
        proxy_set_header REMOTE_ADDR $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "Upgrade";
        proxy_ssl_name $host;
        proxy_ssl_server_name on;
        proxy_ssl_session_reuse off;

        proxy_pass http://<IP_ADDRESS>:8080;
    }

    location /apps/ {
        proxy_http_version 1.1;
        proxy_set_header Host $http_host;
        proxy_set_header Scheme $scheme;
        proxy_set_header SERVER_PORT $server_port;
        proxy_set_header REMOTE_ADDR $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "Upgrade";
        proxy_ssl_name $host;
        proxy_ssl_server_name on;
        proxy_ssl_session_reuse off;

        keepalive_timeout 300s;
        proxy_connect_timeout 300s;
        proxy_send_timeout 300s;
        proxy_read_timeout 300s;
        fastcgi_send_timeout 300s;
        fastcgi_read_timeout 300s;
        proxy_pass http://<IP_ADDRESS>:8080;
    }

    location = /favicon.ico { access_log off; log_not_found off; }
    location = /robots.txt  { access_log off; log_not_found off; }

    error_page 404 /index.php;

    location ~ \.php$ {
        fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
        include fastcgi_params;
        fastcgi_hide_header X-Powered-By;
    }

    location ~ /\.(?!well-known).* {
        deny all;
    }

    listen [::]:443 ssl http2; # managed by Certbot
    listen 443 ssl http2; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/mydomain.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/mydomain.com/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

    }
    server {
        if ($host = www.mydomain.com) {
            return 301 https://$host$request_uri;
        } # managed by Certbot
        if ($host = mydomain.com) {
            return 301 https://$host$request_uri;
        } # managed by Certbot
        listen 80;
        listen [::]:80;
        server_name mydomain.com www.mydomain.com;
        return 404; # managed by Certbot
    }

config/reverb.php
<?php

return [

    /*
    |--------------------------------------------------------------------------
    | Default Reverb Server
    |--------------------------------------------------------------------------
    |
    | This option controls the default server used by Reverb to handle
    | incoming messages as well as broadcasting message to all your
    | connected clients. At this time only "reverb" is supported.
    |
    */

    'default' => env('REVERB_SERVER', 'reverb'),

    /*
    |--------------------------------------------------------------------------
    | Reverb Servers
    |--------------------------------------------------------------------------
    |
    | Here you may define details for each of the supported Reverb servers.
    | Each server has its own configuration options that are defined in
    | the array below. You should ensure all the options are present.
    |
    */

    'servers' => [

        'reverb' => [
            'host' => env('REVERB_SERVER_HOST', '<IP_ADDRESS>'),
            'port' => env('REVERB_SERVER_PORT', 8080),
            'hostname' => env('REVERB_HOST'),
            'options' => [
                'tls' => [

                ],
            ],
            'max_request_size' => env('REVERB_MAX_REQUEST_SIZE', 10_000),
            'scaling' => [
                'enabled' => env('REVERB_SCALING_ENABLED', false),
                'channel' => env('REVERB_SCALING_CHANNEL', 'reverb'),
                'server' => [
                    'url' => env('REDIS_URL'),
                    'host' => env('REDIS_HOST', '<IP_ADDRESS>'),
                    'port' => env('REDIS_PORT', '6379'),
                    'username' => env('REDIS_USERNAME'),
                    'password' => env('REDIS_PASSWORD'),
                    'database' => env('REDIS_DB', '0'),
                ],
            ],
            'pulse_ingest_interval' => env('REVERB_PULSE_INGEST_INTERVAL', 15),
            'telescope_ingest_interval' => env('REVERB_TELESCOPE_INGEST_INTERVAL', 15),
        ],

    ],

    /*
    |--------------------------------------------------------------------------
    | Reverb Applications
    |--------------------------------------------------------------------------
    |
    | Here you may define how Reverb applications are managed. If you choose
    | to use the "config" provider, you may define an array of apps which
    | your server will support, including their connection credentials.
    |
    */

    'apps' => [

        'provider' => 'config',

        'apps' => [
            [
                'key' => env('REVERB_APP_KEY'),
                'secret' => env('REVERB_APP_SECRET'),
                'app_id' => env('REVERB_APP_ID'),
                'options' => [
                    'host' => env('REVERB_HOST'),
                    'port' => env('REVERB_PORT', 443),
                    'scheme' => env('REVERB_SCHEME', 'https'),
                    'useTLS' => env('REVERB_SCHEME', 'https') === 'https',

                ],
                'allowed_origins' => ['*'],
                'ping_interval' => env('REVERB_APP_PING_INTERVAL', 60),
                'max_message_size' => env('REVERB_APP_MAX_MESSAGE_SIZE', 10_000),
            ],
        ],

    ],

];

.env
BROADCAST_DRIVER=reverb
REVERB_APP_ID=1234567
REVERB_APP_KEY=abcdefghijkl
REVERB_APP_SECRET=abcdefghijkl
REVERB_HOST=mydomain.com
REVERB_PORT=443
REVERB_SCHEME=https

VITE_REVERB_APP_KEY="${REVERB_APP_KEY}"
VITE_REVERB_HOST="mydomain.com"
VITE_REVERB_PORT=443
VITE_REVERB_SCHEME=https

now i can connect with wss://

but when i trigger Event i'm getting this error

when i trigger post request of https://yugmedeals.com/apps/292267/events? without port (8080) using postman i'm getting 500 - Internal Server Error
in laravel.log -- [2024-07-20 15:47:03] local.ERROR: syntax error
Setup 2
config/reverb.php
'tls' => [
                    'local_cert' => '/etc/letsencrypt/live/mydomain.com/fullchain.pem',
                    'local_pk' => '/etc/letsencrypt/live/mydomain.com/privkey.pem',
                ],

Now I'm unable to connect with wss:// itself
help me to resolve this issue

Hey there,
Can you first please try one of the support channels below? If you can actually identify this as a bug, feel free to open up a new issue with a link to the original one and we'll gladly help you out.

Laracasts Forums
Laravel.io Forums
StackOverflow
Discord or InertiaJS Discord for Inertia questions
Larachat
IRC

Thanks!


Add testing framework for integration tests

Description
As aorchestrator developer, I want to have a testing framework to, so that I can write integration tests.
Discussion
We use Axum as the web framework for orchestrator, and it does not support a test client natively. To make tests simpler, we could add a framework, such as axum-test to assist on writing tests.
Acceptance Criteria

[ ] Unit tests cover new/changed code
[ ] Examples build against new/changed code

Address by #188.