vault-operator pod error: User "system:serviceaccount:vault:vault-operator" cannot list vaults.vault.banzaicloud.com at the cluster scope

Describe the bug
vault-operator pod is reporting a cluster scope error. Is there additional RBAC required?
Error
# kubectl logs vault-operator-65844d4cfd-lfqnq -n vault
...
ERROR: logging before flag.Parse: E0803 01:39:18.267963       1 reflector.go:205] github.com/banzaicloud/bank-vaults/vendor/github.com/operator-framework/operator-sdk/pkg/sdk/informer/informer.go:80: Failed to list *unstructured.Unstructured: vaults.vault.banzaicloud.com is forbidden: User "system:serviceaccount:vault:vault-operator" cannot list vaults.vault.banzaicloud.com at the cluster scope: User "system:serviceaccount:vault:vault-operator" cannot list all vaults.vault.banzaicloud.com in the cluster

RBAC
# kubectl get role vault-operator -n vault -o yaml
apiVersion: authorization.openshift.io/v1
kind: Role
metadata:
  annotations:
  creationTimestamp: 2018-08-03T01:33:53Z
  name: vault-operator
  namespace: vault
  resourceVersion: "387485671"
  selfLink: /apis/authorization.openshift.io/v1/namespaces/vault/roles/vault-operator
  uid: 4802647c-96bd-11e8-8799-12d3ba54a54b
rules:
- apiGroups:
  - etcd.database.coreos.com
  attributeRestrictions: null
  resources:
  - etcdbackups
  - etcdclusters
  - etcdrestores
  verbs:
  - '*'
- apiGroups:
  - vault.banzaicloud.com
  attributeRestrictions: null
  resources:
  - '*'
  verbs:
  - '*'
- apiGroups:
  - ""
  attributeRestrictions: null
  resources:
  - configmaps
  - endpoints
  - events
  - persistentvolumeclaims
  - pods
  - secrets
  - services
  verbs:
  - '*'
- apiGroups:
  - apps
  attributeRestrictions: null
  resources:
  - daemonsets
  - deployments
  - replicasets
  - statefulsets
  verbs:
  - '*'

Policy ('list' only allowed in 'vault' namespace, not cluster-wide)
# oc policy who-can list vaults.vault.banzaicloud.com
Namespace: vault
Verb:      list
Resource:  vaults.vault.banzaicloud.com

Users:  system:admin
        system:serviceaccount:vault:vault-operator

Groups: system:cluster-admins
        system:masters

Deploy
# oc get deploy vault-operator -n vault -o yaml
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  annotations:
    deployment.kubernetes.io/revision: "1"
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"apps/v1","kind":"Deployment","metadata":{"annotations":{},"name":"vault-operator","namespace":"vault"},"spec":{"replicas":1,"selector":{"matchLabels":{"name":"vault-operator"}},"template":{"metadata":{"labels":{"name":"vault-operator"}},"spec":{"containers":[{"command":["vault-operator"],"image":"banzaicloud/vault-operator:latest","imagePullPolicy":"IfNotPresent","name":"vault-operator"}],"serviceAccount":"vault-operator"}}}}
  creationTimestamp: 2018-08-03T01:35:21Z
  generation: 1
  labels:
    name: vault-operator
  name: vault-operator
  namespace: vault
  resourceVersion: "387485998"
  selfLink: /apis/extensions/v1beta1/namespaces/vault/deployments/vault-operator
  uid: 7c38927f-96bd-11e8-8799-12d3ba54a54b
spec:
  progressDeadlineSeconds: 600
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      name: vault-operator
  strategy:
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable: 25%
    type: RollingUpdate
  template:
    metadata:
      creationTimestamp: null
      labels:
        name: vault-operator
    spec:
      containers:
      - command:
        - vault-operator
        image: banzaicloud/vault-operator:latest
        imagePullPolicy: IfNotPresent
        name: vault-operator
        resources: {}
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
      dnsPolicy: ClusterFirst
      restartPolicy: Always
      schedulerName: default-scheduler
      securityContext: {}
      serviceAccount: vault-operator
      serviceAccountName: vault-operator
      terminationGracePeriodSeconds: 30
status:
  availableReplicas: 1
  conditions:
  - lastTransitionTime: 2018-08-03T01:35:24Z
    lastUpdateTime: 2018-08-03T01:35:24Z
    message: Deployment has minimum availability.
    reason: MinimumReplicasAvailable
    status: "True"
    type: Available
  - lastTransitionTime: 2018-08-03T01:35:21Z
    lastUpdateTime: 2018-08-03T01:35:24Z
    message: ReplicaSet "vault-operator-65844d4cfd" has successfully progressed.
    reason: NewReplicaSetAvailable
    status: "True"
    type: Progressing
  observedGeneration: 1
  readyReplicas: 1
  replicas: 1
  updatedReplicas: 1

To Reproduce
Deployed using etcd storage examples in operator/deploy dir
Expected behavior
I don't expect vault-operator to need cluster scope priv
Additional context
OpenShift environment
# kubectl version
Client Version: version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.1+a0ce1bc657", GitCommit:"a0ce1bc", GitTreeState:"clean", BuildDate:"2018-06-12T04:59:18Z", GoVersion:"go1.9.4", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.1+a0ce1bc657", GitCommit:"a0ce1bc", GitTreeState:"clean", BuildDate:"2018-06-12T04:59:18Z", GoVersion:"go1.9.4", Compiler:"gc", Platform:"linux/amd64"}

Workaround
Add cluster capability
oc create clusterrole vault-operator --verb=list --resource=vaults.vault.banzaicloud.com
oc adm policy add-cluster-role-to-user vault-operator system:serviceaccount:vault:vault-operator

Hi @aweiteka, you can configure the namespace which the operator should watch: https://github.com/banzaicloud/bank-vaults/blob/master/operator/cmd/vault-operator/main.go#L15
If you don't specify it, all namespaces are watched. I will extend the example deployments with this block.

@bonifaido that was it. Thanks for the quick response and updated sample!

You're welcome @aweiteka .


angular-breadcrumb integration

Hi!
I am trying to use angular-breadcrumb with this starter, but I am stuck trying to use $ctrl.attributes from the controller in the config block:
https://github.com/ncuillery/angular-breadcrumb/wiki/API-Reference#state-options
Any help is welcome. Thanks!

More info:
https://github.com/ncuillery/angular-breadcrumb/issues/170


How do I add weight parameters in Lightgbm

There seems to be no 'scale_pos_weight' parameter in synapse.ml. Lightgbm. How do I set weight parameters?
AB#1960925

If there is a lightgbm parameter that SynapseMl has not explicitly exposed with a setter, you can use the generic setPassThroughArgs() to set your own values to pass directly to LightGBM.  Does this help?
https://github.com/microsoft/SynapseML/blob/8d552746951ab4190e82dda1d4f04699fc46c69f/lightgbm/src/main/scala/com/microsoft/azure/synapse/ml/lightgbm/params/LightGBMParams.scala#L16

note that for python this is passThroughArgs="scale_pos_weight=x".
closing this issue for now.  if you have further questions please reopen it or a new one.


February Recovery Endgame

[x] Build stable for all platforms endgame master
[x] Make rpm signing request @tyriar
[x] Sanity check of installable bits

[x] Windows 64

[x] signed installer @kieferrm
[x] zip @kieferrm

[x] Windows 32

[x] signed installer @ramya-rao-a
[x] zip @ramya-rao-a

[x] OS X - @tyriar
[x] Linux

[x] deb package 64-bit @RMacfarlane
[x] deb package 32-bit @RMacfarlane
[x] rpm package 64-bit @roblourens
[x] rpm package 32-bit @tyriar
[x] archive 64-bit @kieferrm
[x] archive 32-bit @tyriar

[x] Update release notes with milestone link @gregvanl
[x] Publish website @gregvanl
[x] Publish to stable @kieferrm
[ ] Publish deb @tyriar
[ ] Publish rpm @tyriar
[x] Add version with symbols to HockeyApp @tyriar
[x] Add a git tag to HEAD of release/<x.y> in format x.y.z @tyriar

rpm and debs are still not published, closing in favor of https://github.com/Microsoft/vscode/issues/45868


Close controller with drag swipe

It would be very cool if you add the ability to close the controller by strongly swiping down.
Thx for great library)

Hi @fixique I got what you're talking about and we have a very similar check that maybe we could improve.
Basically here if the user is scrolling "fast" we skip to the next sticky point. https://github.com/MarioIannotta/PullUpController/blob/50027c5848cca1a895bc27800489cda237f6470b/PullUpController/PullUpController.swift#L230
Everything should work fine if there're only 3 sticky points because if i'm at number 3 and I'm scrolling fast the pull up controller's view will be moved to the first sticky point. We could have some problems when the number of sticky points is > 3.
A solution could be

let the developer customize the "fast scrolling threshold" so we can remove that very ugly hardcoded 700
let the developer specify a "faster scrolling threshold", beyond which the pull up controller's view will be fully contracted (if the user is scrolling down) or expanded (if the user is scrolling up)

What do you think?
Is that going to solve your problem?

Hi @MarioIannotta sorry for really long replay. I think you didn't quite understand what I meant. I meant the opportunity to remove PullUpController from parent view controller by strong swipe down.
Now I can only present PullUpController and swipe down to some sticky point.
I solve my problem with some not beautiful code. I show it below:

First of all add 3 sticky points for present PullUpController.
a. 0.0 point
b. some first preview point (example 150.0)
c. some full preview point (example 350.0)
I am use didMoveToStickyPoint completion block for detect if we goes to 0.0 point and now PullUpController should be remove from parentViewController.
I am call method         self.parentViewController.removePullUpController(self, animated: false)

But I think that will be great if you add some ability for just turn on this feature by default.
Thank you for you replay. Maybe I will create pull request with this ability later, if you do not mind)

Ok, your issue is clear now.
I think part of the previous solution is still valid, I can expose a "dismissDragThresholdVelocity" beyond which the controller's view will be hidden and removed from the superview.
What do you think?

Yes, I think this will be great. If you give me a chance I can try to do this. What do you think?)

Enjoy ;)

From: Vlad Krupenko<EMAIL_ADDRESS>Sent: Sunday, October 14, 2018 11:36:28 PM
To: MarioIannotta/PullUpController
Cc: Mario Iannotta; Mention
Subject: Re: [MarioIannotta/PullUpController] Close controller with drag swipe (#24)
Yes, I think this will be great. If you give me a chance I can try to do this. What do you think?)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/MarioIannotta/PullUpController/issues/24#issuecomment-429665290, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AFhRgJyjogwxD7AhJ5h4F0bVTxlqeWanks5uk65cgaJpZM4WgPnX.


[FEA] Add Spark 3.3.3-SNAPSHOT to shims

We add Spark 3.3.3-SNAPSHOT to shims given that Spark 3.3.2 is released. Fixes https://github.com/NVIDIA/spark-rapids/issues/7784.

build

build


Remove  underline from Problem Statement title

Your pdf will look better without the underline.

Done.

@PeaWagon, a good habit to get in is to include a link to the commit that closes the issue.   You can just include the hash of the commit to automatically create a link: e5e856f16e6b200574ae0d1c8baad1a657970f82


Flexible database service name

This ensures that anything that any service in VCAP that has a credentials -> uri string that contains postgres will be accepted as a database, so we don't have to hard code service names in the code anymore.


How to compile code with cmake

Dear friends:
I want to use CUB to conduct reduction in my cuda project. My project is compiled with kdevelop5.2 cmake.
Could you please give me some information about how to compile cub function with cmake.
Regards

This is what I do to wrap CUB for easy inclusion in subprojects
excerpts from a root CMakeLists.txt:
# ...
set(CTX "root")
set(MY_PROJECT_VERSION 0.1.0)
message("[${CTX}] MY_PROJECT_VERSION ${MY_PROJECT_VERSION}")
# ...
set(CUB_LIBRARY_ROOT /path/to/local/cub/git/repo)
if (NOT EXISTS ${CUB_LIBRARY_ROOT})
  message(WARNING "[${CTX}] CANNOT FIND CUB LIBRARY - MAKE ENTRY IN ROOT CMakeLists.txt")
else()
  message("[${CTX}] CUB_LIBRARY_ROOT ${CUB_LIBRARY_ROOT}")
endif()
# make CLion happy - NOTE: must be before add_subdirectory calls!
include_directories(
  ${CMAKE_CUDA_TOOLKIT_INCLUDE_DIRECTORIES}
  ${CUB_LIBRARY_ROOT}
  # ...
)
# ...
add_library(cub INTERFACE IMPORTED)
target_include_directories(cub INTERFACE
  ${CUB_LIBRARY_ROOT}
  # ...
)
set_target_properties(cub PROPERTIES
  INTERFACE_INCLUDE_DIRECTORIES ${CUB_LIBRARY_ROOT}
  # ...
)
# ...

And then reference it in any subproject's CMakeLists.txt:
# ...
project(my-subproject
  VERSION ${MY_PROJECT_VERSION}
  LANGUAGES CUDA CXX)
set(CTX ${PROJECT_NAME})
# ...
target_link_libraries(${PROJECT_NAME}
    PRIVATE
        cub
        # ...
)
# ...

There's no reason that CUB couldn't ship with an existing CMakeLists.txt file that could create a proper versioned package of this.

Same question here... How to compile, build and install CUB?
Cheers
Pei

CUB is simply a collection of header files to be incorporated by any CUDA application, and is agnostic of any particular OS platform, compiler chain, and build/make framework.  There are no shared objects or libraries to build/redistribute, so there's no need to for CUB to "lock into" any one specific build/make framework.

it seems we ONLY need to copy and paste the header files

Yes, basically.  To incorporate CUB into a project, you simply adjust your particular build framework's include-path (i.e., whatever is necessary to produce the -I<cub-dir> flag to nvcc) and #include the relevant CUB header files into application source.

If technically possible, it maybe worth thinking about a single-header version of CUB. Tools like pcpp might be of help here: https://github.com/ned14/pcpp
IIRC, catch and catch2 uses similar approaches. Just a thought.

CUB is simply a collection of header files to be incorporated by any CUDA application, and is agnostic of any particular OS platform, compiler chain, and build/make framework. There are no shared objects or libraries to build/redistribute, so there's no need to for CUB to "lock into" any one specific build/make framework.

it seems we ONLY need to copy and paste the header files

Yes, basically. To incorporate CUB into a project, you simply adjust your particular build framework's include-path (i.e., whatever is necessary to produce the -I<cub-dir> flag to nvcc) and #include the relevant CUB header files into application source.

Using CMAKE to package those headers will not lock you into any specific build system or OS.
Example use cases:
(1) A user clones CUB from github
(2) A user installs CUB to their system (windows/linux/whatever it's agnostic)
(3) The user can start using CUB in their modern build system:
`
Locate installed CUB package on system
find_package(CUB 1.1.4 REQUIRED)
Use CUB for my APP
target_link_libraries(myApp PRIVATE CUB)
Or the user may include CUB in their source tree (ex as a submodule):
Locate CUB module in source
add_subdirectory(CUB)
Use CUB for my APP
target_link_libraries(myApp PRIVATE CUB)
`
This is all completely independent of OS or underlying build system, it's a method of handling modular dependencies in source code.
In my fork of CUB I've added CMakeLists.txt with ~5 lines of code to achieve most of this behaviour. Plus some additional files to create install-able DEB/RPM/tar.gz/.. packages.
Modern CMAKE support is slowly becoming an expected standard in C++ projects, so much that the CMAKE architects encourage people to file a bug report if CMAKE support is missing :)
Highly recommed this:
https://www.slideshare.net/DanielPfeifer1/effective-cmake


Update order routing templates for API version 2024-01

Closes https://github.com/Shopify/shopify/issues/467224
Note that templates for delivery_customizations are separately being updated in #439

This pull request introduced wrong Schema.graphql file to the order-routing function examples.

This pull request introduced wrong Schema.graphql file to the order-routing function examples.

Hi @kvmsc, thanks for pointing that out. It should have been fixed now by https://github.com/Shopify/function-examples/pull/506


Vive Ros connection problem

[ ] I am at the right place and my issue is directly related to ROS#. General technical questions I would post e.g. at ROS Answers or Stack Overflow. For library-specific questions I would look for help in the corresponding library forums.

I have a question!

[x] I searched the Wiki, open and closed issues for an answer. I tried my best to find the answer by myself without success. I believe that the discussion we will have in this issue, and the solutions we might find, will help me, and likely other community members who have a similar problem.

Here is my question:
I'm using Ros# in my unity project trying to connect HTC Vive Focus with Ros.
It worked all fine when I connect Unity with Ros but when i build it as an app and put it into Vive, it won't publish to the Ros topic . I found it's similar to #287 and #235 so I tried the settings mentioned there by changing the serializer-protocol to Microsoft-Websocket sharp but the result remains.
The debug log shows: NullReferenceException: Object reference not set to an instance of an object  at RosSharp.RosBridgeClient.TwistedPublisher.UpdateMessage () [0x00000] in <00000000000000000000000000000000>:0
Is there anything I missed or doing wrong

My OS is: Windows 10
My Unity Version is: 2019.3.6f1
My ROS Distribution is: Kinectic
My Build Target Platform is: HTC Vive Focus

Hello @Reim6118,
Unfortunately I do not have HTC Vive Focus so I cannot reproduce this issue by myself. According to the error log that you mentioned, probably the error is raised when Publish(msg) is called inside the publisher script. If we have a look at the corresponding script, I can guess that either rosConnector is null or ,with a higher chance, publicationId is null due to missing advertisement.
I can only suggest that you include the entire source code of RosBridgeClient into Unity3D/Assets, and run the application in debug mode to see at which point the error occurs.

I have a similar issue. I'm using:

HTC Vive
Unity 2019.1.9

When I build the application, I cannot subscribe to /joint_states topic using JointStateSubscriber.
I checked the UnitySubsciber and the rosConnector is connected but it fails during the subscription. The method rosConnector.RosSocket.Subscribe returns an empty string (or it keeps stuck, not sure) instead of returning the topic name.
In Editor mode, everything works fine.

I have a similar issue too.
-> [Play (Preview mode )] can subscribe topic, but [Build And Run] mode cannot subscribe topic.
I found a workaround and wrote it at #346
Please refer to it.

outdated / closing due to inactivity


added click as dependency (closes #87)

Summary 📝
Fixes # 87
Proposed Changes 👷

added click as dependency

Type of Change 🏷

Bug fix (non breaking change which fixes an issue)

Checklist ✅

no tests added

Thank you! I don't know how i missed that.


Allow to display more than 2 months at once in mobile view

Is your feature request related to a problem? Please describe.
I would like to have a way to specify number of months the calendar can display in mobile view. Currently maximum of two months can be displayed at once, but I would like to have an option to increase it.
Describe the solution you'd like
Passing a prop with the number of months to be displayed at once in mobile view.

This would be very helpful in being able to craft a responsive UI! We're trying to be able to allow users to scroll vertically on mobile devices, as opposed to relying on the left/right pagination through months.
If we stack the months vertically but we're limited to 2 months, users would still need to paginate left and right.

Will be added 👍.

Included in the v2.5.0


Followup PR for #5591

Please add a meaningful description for your change here

Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

It will help us expedite review of your Pull Request if you tag someone (e.g. @username) to look at it.

R: @jkff @robertwb

LGTM, lmk when it's green and I'll merge.

Ping: All checks are green :)


CodeLens isn't properly rendering html elements anymore

VSCode Version: Version 1.7.0-insider (1.7.0-insider) 5dd716eaedc5a239379013863568c7f7dea708a5
OS Version: macOS Sierra 10.12 (16A323)

In 1.7:

in 1.6:

That was done on purpose to fix an issue that would allow arbitrary code execution via code lens (https://github.com/Microsoft/vscode/issues/13242)
Sorry, for forgetting to release note that. May the unicode arrow table can help you: http://unicode-table.com/en/sets/arrows-symbols/


[wip] next: Collected changes for the v2016.03 release

I am declaring that next is now a release candidate for the v2016.03 release. I plan to focus on testing and stability and have it in good shape on March 1st for potential merge by @eugeneia onto master. I leave the [wip] tag for the next few days so that we have a chance to test.

@eugeneia I want to thoroughly benchmark the next branch against the current master. The challenge is that I have never been able to get all of the make benchmarks running on the NixOS lab servers. The nearest I have come is #744 which runs everything but the iperf tests.
Can you possibly have a look and see if you can get them running on e.g. one of the lugano servers? @domenkozar can help with NixOS questions but I think it is more of a docker/test-env challenge. Probably there is some obvious problem and I simply failed to find the relevant log message.
I wrote up a related issue on snabblab/snabblab-nixos#13.

... I suppose that I can run in the fully dockerized environment to avoid this problem. That is probably the best solution for now. I will try it.

@lukego Outside of docker you will be missing ~/.test_env, the hacky solution is to copy /root/.test_env from the docker image to your $HOME. I should talk to @domenkozar  about installing these files for each user by default.

@eugeneia I'll take a look at this tomorrow

@domenkozar You would need to add a NixOS package for https://github.com/eugeneia/snabbswitch-docker (see $(VM_TARBALL) task in the Makefile) that adds the contents of the created tarball into /etc/.skel/.test_env/.

Thus spake the wise man:

A little knowledge is a dangerous thing.

I have taken @sleinen's bait and started learning R for making sense of test results. Bear with me, I am surely doing it all wrong. Here is a first visualization of around 200 test results from lugano-1: comparing master and next by running the DPDK packet forwarding benchmark with a DPDK 1.7 guest and three different packet sizes (64, 128, 256):

This seems to be telling us an encouraging message: that 256-byte consistently  hits line rate (~4.4 Mpps), that 128 and 64 byte both exceed this, that variance is low, and that master and next are much the same. If this is indeed the message then this seems like a valuable kind of test to run (and particularly on release candidates).
There is one outlier with next and 64-byte packets: it would be interesting to make that dot into a hyperlink to the relevant log file (which I know can be done in R using SVG output).
I also found the function aov (analysis of variance) and that seems to basically work:
> summary(aov(dat17.mpps ~ dat17.branch * dat17.packetsize, data=df17))
                               Df Sum Sq Mean Sq   F value Pr(>F)
dat17.branch                    1   0.00    0.00     3.244 0.0732 .
dat17.packetsize                2  75.22   37.61 33379.059 <2e-16 ***
dat17.branch:dat17.packetsize   2   0.00    0.00     1.469 0.2328
Residuals                     195   0.22    0.00
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

If I am reading this correctly (massive "if") then it is saying that different packet sizes have a major impact on performance (as expected) but different branches do not (as desired i.e. same perf from head and next).
I like the fact that with R this is all scripted and so analysis like this could easily be integrated into the CI.
End braindump. Can be that we look back on this post and chuckle at how I managed to completely misinterpret every aspect of R on my first day trying to use it. But that is then and this is now so I am feeling quite proud for the moment :).

(The cool thing about the analysis of variance is that it can tell you both how much effect a variable has and how likely that is to really be caused by random background noise. I am really keen to explore looking for relationships between multiple factors in the context of #755 e.g. how sensitive are memcpy/checksum to alignment and how much does that depend on which level of the cache hierarchy they are hitting.)

cc @domenkozar could be that we could have Hydra run these kinds of analysis and make the results available for every PR.

Here is a picture of the same test above but with the DPDK 2.1 version of l2fwd:

On the one hand it is good for the v2016.03 release that master and next have consistent performance. On the other hand we see both lower performance overall (#665) and surprisingly lower results for 128-byte packets compared with 256-byte packets.
I am excited to press ahead with parallel efforts of measurement and optimization. These are both really valuable and mutually beneficial activities. There is a lot that can be done in both areas and for more applications. (I am focusing on the NFV application here only because it is the one that has upstream performance tests available: going forward I see this activity as encompassing all programs.)
Onward! One step at a time...

@mwiget mentioned seeing lower performance (~10%) when leaving an application idle for a while before starting to process traffic. This is likely some JIT behavior that we need to understand and correct (following @wingo's fine example with #707). The way forward that I see would be to define a test case where the waiting time before processing traffic can be controlled so that we can measure its impact and see which code changes successfully reduce variance.
This is all extremely interesting from my perspective :-)

I can believe that.  I feel like sometimes if we start taking too many side traces, LuaJIT doesn't react appropriately, and if you do a jit.flush() things get back to good performance.  Something to look at in the future.

Hey wow cool awesome!
I asked R to do an analysis of variance with the branch, the packet size, and the container (DPDK version) and here is what it says:
> summary(aov(dat.mpps ~ dat.branch * dat.packetsize * dat.container, data=df))
                                         Df Sum Sq Mean Sq   F value Pr(>F)
dat.branch                                1   0.01    0.01     1.857  0.174
dat.packetsize                            2  54.59   27.30  7321.203 <2e-16 ***
dat.container                             1 271.85  271.85 72912.023 <2e-16 ***
dat.branch:dat.packetsize                 2   0.01    0.00     0.734  0.481
dat.branch:dat.container                  1   0.00    0.00     0.001  0.970
dat.packetsize:dat.container              2  29.06   14.53  3897.513 <2e-16 ***
dat.branch:dat.packetsize:dat.container   2   0.00    0.00     0.037  0.964
Residuals                               390   1.45    0.00
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

and if I am interpreting this correctly then it is really providing valuable information:

Switching branches (master/next) does not make a difference.
Switching packet size does make a difference.
Switching containers also makes a difference.
The differences caused by the packet size and the container are dependent on each other: packet size impacts each container differently (128-byte is faster with DPDK 1.7 and slower with DPDK 2.1).

This starts to look like exactly the thing I was looking for in #755 as a means to search for interactions between data alignment (src/dst/len) and memory hierarchy for different functions. And we already have the data in a CSV file to try this out with!

Charging ahead with R and surely making a generous helping of mistakes...
Post hoc analysis with Tukey's test is another way to use the ANOVA results. This can be easier to interpret because it tells us how much the average changes between groups of results: the best estimate and the +/- range that can be predicted with 95% confidence.
Here is what Tukey's test says about the effect on Mpps of branch
(master vs next):
> TukeyHSD(aov(mpps ~ branch, data=df), ordered=TRUE)
  Tukey multiple comparisons of means
    95% family-wise confidence level
    factor levels have been ordered

Fit: aov(formula = mpps ~ branch, data = df)

$branch
                   diff        lwr       upr     p adj
master-next 0.008300208 -0.1769718 0.1935722 0.9298626

This says that the estimated difference is 0.0083 Mpps (i.e. very small) and we predict with 95% confidence that if we reran the test the effect would be within -0.177 and +0.194 of that value (i.e. not clear that there is a positive or negative difference overall).
Here is the same analysis but with instead comparing the DPDK/L2FWD version in the guest:
> TukeyHSD(aov(mpps ~ dpdk, data=df), ordered=TRUE)
  Tukey multiple comparisons of means
    95% family-wise confidence level
    factor levels have been ordered

Fit: aov(formula = mpps ~ dpdk, data = df)

$dpdk
                    diff      lwr     upr p adj
dpdk1.7-dpdk2.1 1.644667 1.554203 1.73513     0

This estimates that DPDK 1.7 shows +1.64 Mpps in this dataset and we can say with 95% confidence that the real difference is between +1.55 and +1.74 Mpps.
Cool information!
Just for another angle, maybe pointlessly fancy, we can also look at the effect of branch and DPDK version in combination:
> TukeyHSD(aov(mpps ~ branch * dpdk, data=df), ordered=TRUE)
  Tukey multiple comparisons of means
    95% family-wise confidence level
    factor levels have been ordered

Fit: aov(formula = mpps ~ branch * dpdk, data = df)

[... clipped redundant info ...]

$`branch:dpdk`
                                     diff        lwr       upr     p adj
master:dpdk2.1-next:dpdk2.1   0.008071301 -0.1602539 0.1763965 0.9993226
next:dpdk1.7-next:dpdk2.1     1.644434343  1.4748576 1.8140111 0.0000000
master:dpdk1.7-next:dpdk2.1   1.652963458  1.4846382 1.8212887 0.0000000
next:dpdk1.7-master:dpdk2.1   1.636363042  1.4680378 1.8046883 0.0000000
master:dpdk1.7-master:dpdk2.1 1.644892157  1.4778278 1.8119565 0.0000000
master:dpdk1.7-next:dpdk1.7   0.008529115 -0.1597961 0.1768543 0.9992013

which makes it look like the effects are independent: same results with same DPDK version, consistent 1.6Mpps boost with DPDK 1.7 vs 2.1.

(FYI: My mum tells me that this use and interpretation of Tukey's test is right.)

@eugeneia ship'able from my perspective.


update files on master branch

Hi,
I pulled my branch from master so there shouldn't be a merge conflict!

Docs Build status updates of commit f193d1d:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/MoodleInstructions.md
:white_check_mark:Succeeded

msteams-platform/concepts/connectors/connectors-creating.md
:white_check_mark:Succeeded

msteams-platform/publishing/apps-publish.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


fixes the immediate fallout from v0.8.0 build tarball change

shall we delete the install.sh then? :)

Exactly!


Use ::libc::c_char as the character type

On AArch64 the C char type is u8 not i8, resulting in compilation errors
such as:
error[E0308]: mismatched types
--> weld/src/codegen/llvm2/mod.rs:89:9
|
89  |         concat!($s, "\0").as_ptr() as *const i8
|         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected u8, found
i8
...
930 |             c_str!(""),
|             ---------- in this macro invocation
|
= note: expected type *const u8
found type *const i8

This seems like it can have much greater implications; do tests still pass with such change? What about the Python wrapper?

This seems okay since this macro is just used to pass arguments into the LLVM functions (it doesn't change types in the ABI), and the argument to those functions uses ibc::c_char anyways -- thanks for the patch!

The concern about passing tests is valid -- the tests keep passing on intel but fail on missing hash implementation on arm (weld/src/codegen/llvm2/hash.rs:122). I'll look into how the hashing works later.

Hashing currently relies on a CRC32 intrinsic found in most (all?) recent
Intel processors -- if those intrinsics aren't found on the machine, there
is currently an unimplemented error that is thrown. It would be great to
add something here! Hashing is implemented by providing a hash function
from various integer widths to either a 32- or 64-bit integer, as defined
here:
https://github.com/weld-project/weld/blob/83c0b7a783657d5408b5eb4ed8c5938126f1ecc6/weld/src/codegen/llvm2/hash.rs#L144.
To support ARM, we'd need to add an implementation of these functions that
don't use the SSE 4.2 intrinsics.
On Mon, Sep 30, 2019 at 12:41 AM Filip Andres<EMAIL_ADDRESS>wrote:

The concern about passing tests is valid -- the tests keep passing on
intel but fail on missing hash implementation on arm
(weld/src/codegen/llvm2/hash.rs:122). I'll look into how the hashing
works later.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/weld-project/weld/pull/484?email_source=notifications&email_token=AAKMEY3EUKO3JUDYBJFBX2DQMD4WFA5CNFSM4I3KOIJ2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD734MEA#issuecomment-536331792,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAKMEY3POQ3YZIWNXNRVAZ3QMD4WFANCNFSM4I3KOIJQ
.

--
Shoumik


Restrict the number of tags added by newtag command

Minor nits regarding the extra spaces, should ensure they are removed before merge. Otherwise, LGTM,


replace nodeunit with mocha

Nodeunit is no longer maintained and officially deprecated.
Replaced with mocha. Why mocha? The choice is arbitrary (my preference) and of little consequence since most of the decent test runner libraries are drop in replacements with/for mocha.

Why does it matter that nodeunit is maintained or not? It's not a runtime dependency bugs in which could have consequences, and it's also not going to ever disappear.

Why does it matter that nodeunit is maintained or not?

Because as they say in the deprecation message, it's going to stop working in future versions of node.js and they aren't going to fix it.


add basic cli skeleton with flags

Adds basic cli skeleton using Cobra, with all the flags from the design wiki.

can we get this in a src folder

lgtm


Add Combat UI

Another PR looking to address the Combat issue.
The following PR adds combat UI elements, including:

Damage/"Miss" labels on action impact
A turn bar to display Battler turn order in real-time
A list of player Battlers

As before, much of the work is derived from the 2D Secrets course. I don't think there's anything terribly surprising here, though I tried to simplify the BattlerAnim class before implementing these changes.
Note - There is a second half to the combat UI to be updated: This PR does not yet allow for the players to select actions, simply because that is (just a little) more involved and could have its own PR or be implemented prior to merging this PR. Finally, combat results screens will be another necessary update to the combat UI before moving to other game components.
Also a Note - I keep updating Dialogic which then includes thousands of changes in each PR. I'm not sure if that's helpful or not.

Thank you! No need to update dialogic. Generally, if there are no bugs or needed new features, it's fine to keep a plugin or dependency locked to its current version in a software project.
Merging now and I'll add minor refactoring changes to main afterwards as I can't directly push changes to your repository. Please be sure to update to the latest commit afterwards.


Save `.ulg' failed with POSIX and MAVROS?

I tried to use current master version to test the my algorithms by .ulg log file using
 roslaunch px4 mavros_posix_sitl.launch

The system worked well as follwoing
... logging to /home/amax/.ros/log/04bea1e2-cf0b-11e6-a4ea-002590fdcfd7/roslaunch-amax-X10DRi-10770.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://amax-X10DRi:49418/

SUMMARY
========

CLEAR PARAMETERS
 * /mavros/

PARAMETERS
 * /mavros/cmd/use_comp_id_system_control: False
 * /mavros/conn/heartbeat_rate: 1.0
 * /mavros/conn/system_time_rate: 1.0
 * /mavros/conn/timeout: 10.0
 * /mavros/conn/timesync_rate: 10.0
 * /mavros/distance_sensor/hrlv_ez4_pub/field_of_view: 0.0
 * /mavros/distance_sensor/hrlv_ez4_pub/frame_id: hrlv_ez4_sonar
 * /mavros/distance_sensor/hrlv_ez4_pub/id: 0
 * /mavros/distance_sensor/hrlv_ez4_pub/orientation: ROLL_180
 * /mavros/distance_sensor/hrlv_ez4_pub/send_tf: True
 * /mavros/distance_sensor/hrlv_ez4_pub/sensor_position/x: 0.0
 * /mavros/distance_sensor/hrlv_ez4_pub/sensor_position/y: 0.0
 * /mavros/distance_sensor/hrlv_ez4_pub/sensor_position/z: -0.1
 * /mavros/distance_sensor/laser_1_sub/id: 3
 * /mavros/distance_sensor/laser_1_sub/orientation: ROLL_180
 * /mavros/distance_sensor/laser_1_sub/subscriber: True
 * /mavros/distance_sensor/lidarlite_pub/field_of_view: 0.0
 * /mavros/distance_sensor/lidarlite_pub/frame_id: lidarlite_laser
 * /mavros/distance_sensor/lidarlite_pub/id: 1
 * /mavros/distance_sensor/lidarlite_pub/orientation: ROLL_180
 * /mavros/distance_sensor/lidarlite_pub/send_tf: True
 * /mavros/distance_sensor/lidarlite_pub/sensor_position/x: 0.0
 * /mavros/distance_sensor/lidarlite_pub/sensor_position/y: 0.0
 * /mavros/distance_sensor/lidarlite_pub/sensor_position/z: -0.1
 * /mavros/distance_sensor/sonar_1_sub/id: 2
 * /mavros/distance_sensor/sonar_1_sub/orientation: ROLL_180
 * /mavros/distance_sensor/sonar_1_sub/subscriber: True
 * /mavros/fcu_url<EMAIL_ADDRESS> * /mavros/gcs_url:
 * /mavros/global_position/frame_id: fcu
 * /mavros/global_position/rot_covariance: 99999.0
 * /mavros/global_position/tf/child_frame_id: fcu_utm
 * /mavros/global_position/tf/frame_id: local_origin
 * /mavros/global_position/tf/send: False
 * /mavros/image/frame_id: px4flow
 * /mavros/imu/angular_velocity_stdev: 0.000349065850399
 * /mavros/imu/frame_id: fcu
 * /mavros/imu/linear_acceleration_stdev: 0.0003
 * /mavros/imu/magnetic_stdev: 0.0
 * /mavros/imu/orientation_stdev: 1.0
 * /mavros/local_position/frame_id: fcu
 * /mavros/local_position/tf/child_frame_id: fcu
 * /mavros/local_position/tf/frame_id: local_origin
 * /mavros/local_position/tf/send: False
 * /mavros/local_position/tf/send_fcu: False
 * /mavros/mission/pull_after_gcs: True
 * /mavros/mocap/use_pose: True
 * /mavros/mocap/use_tf: False
 * /mavros/plugin_blacklist: ['safety_area', '...
 * /mavros/plugin_whitelist: []
 * /mavros/px4flow/frame_id: px4flow
 * /mavros/px4flow/ranger_fov: 0.0
 * /mavros/px4flow/ranger_max_range: 5.0
 * /mavros/px4flow/ranger_min_range: 0.3
 * /mavros/safety_area/p1/x: 1.0
 * /mavros/safety_area/p1/y: 1.0
 * /mavros/safety_area/p1/z: 1.0
 * /mavros/safety_area/p2/x: -1.0
 * /mavros/safety_area/p2/y: -1.0
 * /mavros/safety_area/p2/z: -1.0
 * /mavros/setpoint_accel/send_force: False
 * /mavros/setpoint_attitude/reverse_throttle: False
 * /mavros/setpoint_attitude/tf/child_frame_id: attitude
 * /mavros/setpoint_attitude/tf/frame_id: local_origin
 * /mavros/setpoint_attitude/tf/listen: False
 * /mavros/setpoint_attitude/tf/rate_limit: 10.0
 * /mavros/setpoint_position/tf/child_frame_id: setpoint
 * /mavros/setpoint_position/tf/frame_id: local_origin
 * /mavros/setpoint_position/tf/listen: False
 * /mavros/setpoint_position/tf/rate_limit: 50.0
 * /mavros/startup_px4_usb_quirk: True
 * /mavros/sys/disable_diag: False
 * /mavros/sys/min_voltage: 10.0
 * /mavros/target_component_id: 1
 * /mavros/target_system_id: 1
 * /mavros/tdr_radio/low_rssi: 40
 * /mavros/time/time_ref_source: fcu
 * /mavros/time/timesync_avg_alpha: 0.6
 * /mavros/vibration/frame_id: vibration
 * /mavros/vision_pose/tf/child_frame_id: vision
 * /mavros/vision_pose/tf/frame_id: local_origin
 * /mavros/vision_pose/tf/listen: False
 * /mavros/vision_pose/tf/rate_limit: 10.0
 * /mavros/vision_speed/listen_twist: False
 * /rosdistro: jade
 * /rosversion: 1.11.20
 * /use_sim_time: True

NODES
  /
    gazebo (gazebo_ros/gzserver)
    gazebo_gui (gazebo_ros/gzclient)
    mavros (mavros/mavros_node)
    sitl (px4/px4)
    vehicle_spawn_amax_X10DRi_10770_1154193950404211463 (gazebo_ros/spawn_model)

auto-starting new master
process[master]: started with pid [10782]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to 04bea1e2-cf0b-11e6-a4ea-002590fdcfd7
process[rosout-1]: started with pid [10795]
started core service [/rosout]
process[sitl-2]: started with pid [10820]
node name: sitl
data path: /home/amax/Workspace/53.PX4_New/Firmware
commands file: /home/amax/Workspace/53.PX4_New/Firmware/posix-configs/SITL/init/lpe/iris
18446744073709551392 WARNING: setRealtimeSched failed (not run as root?)

______  __   __    ___
| ___ \ \ \ / /   /   |
| |_/ /  \ V /   / /| |
|  __/   /   \  / /_| |
| |     / /^\ \ \___  |
\_|     \/   \/     |_/

px4 starting.

process[gazebo-3]: started with pid [10828]
process[gazebo_gui-4]: started with pid [10831]
process[vehicle_spawn_amax_X10DRi_10770_1154193950404211463-5]: started with pid [10836]
process[mavros-6]: started with pid [10839]
INFO  [dataman] Unkown restart, data manager file 'rootfs/fs/microsd/dataman' size is 47640 bytes
[ INFO] [1483155692.278406439]: FCU URL: udp://:14540@localhost:14557
[ INFO] [1483155692.278922479]: udp0: Bind address: <IP_ADDRESS>:14540
[ INFO] [1483155692.279089922]: udp0: Remote address: <IP_ADDRESS>:14557
[ INFO] [1483155692.279306405]: GCS bridge disabled
INFO  [platforms__posix__drivers__ledsim] LED::init
INFO  [platforms__posix__drivers__ledsim] LED::init
INFO  [simulator] Waiting for initial data on UDP port 14560. Please start the flight simulator to proceed..
[ INFO] [1483155692.342393042]: Plugin 3dr_radio loaded and initialized
[ INFO] [1483155692.348086037]: Plugin actuator_control loaded and initialized
[ INFO] [1483155692.350135519]: Plugin altitude loaded and initialized
[ INFO] [1483155692.461397073]: Plugin cam_imu_sync loaded and initialized
[ INFO] [1483155692.467270520]: Plugin command loaded and initialized
[ INFO] [1483155692.467314458]: Plugin distance_sensor blacklisted
[ INFO] [1483155692.476227104]: Plugin ftp loaded and initialized
[ INFO] [1483155692.486664018]: Plugin global_position loaded and initialized
[ INFO] [1483155692.487514362]: Plugin hil_controls loaded and initialized
[ INFO] [1483155692.487554525]: Plugin image_pub blacklisted
spawn_model script started
[ INFO] [1483155692.498628542]: Plugin imu_pub loaded and initialized
[ INFO] [1483155692.507418612]: Plugin local_position loaded and initialized
[ INFO] [1483155692.508392040]: Plugin manual_control loaded and initialized
[ INFO] [1483155692.515014496]: Plugin mocap_pose_estimate loaded and initialized
[ INFO] [1483155692.518759158]: Plugin param loaded and initialized
[ INFO] [1483155692.526743464]: Plugin px4flow loaded and initialized
[ INFO] [1483155692.532242434]: Plugin rc_io loaded and initialized
[ INFO] [1483155692.532306129]: Plugin safety_area blacklisted
[ INFO] [1483155692.537567768]: Plugin setpoint_accel loaded and initialized
[ INFO] [1483155692.561851942]: Finished loading Gazebo ROS API Plugin.
[ INFO] [1483155692.562557715]: waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting...
[ INFO] [1483155692.567761856]: Plugin setpoint_attitude loaded and initialized
[ INFO] [1483155692.575395397]: Plugin setpoint_position loaded and initialized
[ INFO] [1483155692.586759065]: Plugin setpoint_raw loaded and initialized
[ INFO] [1483155692.590020774]: Plugin setpoint_velocity loaded and initialized
[ INFO] [1483155692.603734059]: Plugin sys_status loaded and initialized
[ INFO] [1483155692.607945444]: Plugin sys_time loaded and initialized
[ INFO] [1483155692.610123206]: Plugin vfr_hud loaded and initialized
[ INFO] [1483155692.610197737]: Plugin vibration blacklisted
[ INFO] [1483155692.621481833]: Plugin vision_pose_estimate loaded and initialized
[ INFO] [1483155692.627647296]: Plugin vision_speed_estimate loaded and initialized
[ INFO] [1483155692.632283480]: Plugin waypoint loaded and initialized
[ INFO] [1483155692.632344925]: Autostarting mavlink via USB on PX4
[ INFO] [1483155692.632390186]: Built-in SIMD instructions: SSE, SSE2
[ INFO] [1483155692.632415080]: Built-in MAVLink package version: 2016.5.20
[ INFO] [1483155692.632440960]: Built-in MAVLink dialect: ardupilotmega
[ INFO] [1483155692.632544473]: MAVROS started. MY ID 1.240, TARGET ID 1.1
[INFO] [WallTime:<PHONE_NUMBER>.654845] [0.000000] Loading model xml from file
[INFO] [WallTime:<PHONE_NUMBER>.655222] [0.000000] Waiting for service /gazebo/spawn_sdf_model
[ INFO] [1483155693.718176397, 0.022000000]: waitForService: Service [/gazebo/set_physics_properties] is now available.
[ INFO] [1483155693.769787941, 0.074000000]: Physics dynamic reconfigure ready.
[INFO] [WallTime:<PHONE_NUMBER>.865014] [0.166000] Calling service /gazebo/spawn_sdf_model
[INFO] [WallTime:<PHONE_NUMBER>.112686] [0.322000] Spawn status: SpawnModel: Successfully spawned model
[vehicle_spawn_amax_X10DRi_10770_1154193950404211463-5] process has finished cleanly
log file: /home/amax/.ros/log/04bea1e2-cf0b-11e6-a4ea-002590fdcfd7/vehicle_spawn_amax_X10DRi_10770_1154193950404211463-5*.log
INFO  [simulator] Got initial simuation data, running sim..
INFO  [pwm_out_sim] MODE_8PWM
Sleeping for 1 s; (1000000 us).
[lpe] fuse gps: 1, flow: 1, vis_pos: 1, vis_yaw: 0, land: 1, pub_agl_z: 1, flow_gyro: 1
INFO  [mavlink] mode: Normal, data rate: 4000000 B/s on udp port 14556 remote port 14550
INFO  [mavlink] mode: Onboard, data rate: 4000000 B/s on udp port 14557 remote port 14540
INFO  [mavlink] MAVLink only on localhost (set param MAV_BROADCAST = 1 to enable network)
INFO  [logger] logger started (mode=all)
pxh> INFO  [logger] Start file log
INFO  [logger] Opened log file: rootfs/fs/microsd/log/2016-12-31/03_41_36.ulg
[ INFO] [1483155696.300781006, 2.484000000]: udp0: Remote address: <IP_ADDRESS>:14557
[ INFO] [1483155696.309178099, 2.494000000]: IMU: High resolution IMU detected!
INFO  [local_position_estimator] [lpe] land init
INFO  [mavlink] partner IP: <IP_ADDRESS>
[ INFO] [1483155696.349248369, 2.534000000]: FCU: [lpe] land init
WARN  [mavlink] [timesync] Hard setting offset.
INFO  [tone_alarm] startup
[ INFO] [1483155697.247928005, 3.428000000]: CON: Got HEARTBEAT, connected. FCU: PX4
[ INFO] [1483155697.248249319, 3.428000000]: IMU: High resolution IMU detected!
[ INFO] [1483155698.252710250, 4.430000000]: VER: 1.1: Capabilities 0x00000000000024ef
[ INFO] [1483155698.252813343, 4.430000000]: VER: 1.1: Flight software:     01050200 (0205492a247faa05)
[ INFO] [1483155698.252855850, 4.430000000]: VER: 1.1: Middleware software: 01050200 (0205492a247faa05)
[ INFO] [1483155698.252890316, 4.430000000]: VER: 1.1: OS software:         010600ff<PHONE_NUMBER>000000)
[ INFO] [1483155698.252940128, 4.430000000]: VER: 1.1: Board hardware:      00000001
[ INFO] [1483155698.252967365, 4.430000000]: VER: 1.1: VID/PID: 0000:0000
[ INFO] [1483155698.252996197, 4.430000000]: VER: 1.1: UID:<PHONE_NUMBER>000002
INFO  [local_position_estimator] [lpe] gps init lat  47.40 lon   8.55 alt 488.1 m
INFO  [local_position_estimator] [lpe] baro init 0 m std 7 cm
INFO  [commander] home: 47.3977432, 8.5455942, 0.11
INFO  [tone_alarm] home_set
[ INFO] [1483155698.597933064, 4.776000000]: FCU: [lpe] baro init 0 m std 7 cm
INFO  [tone_alarm] neutral
[ INFO] [1483155712.272610543, 18.428000000]: WP: mission received
INFO  [commander] home: 47.3977420, 8.5455937, 0.11
INFO  [tone_alarm] positive
INFO  [commander] home: 47.3977420, 8.5455937, 0.11
INFO  [commander] no RC
WARN  [commander] failsafe mode on
INFO  [tone_alarm] arming
[ WARN] [1483155746.913537643, 53.012000000]: CMD: Unexpected command 400, result 0
WARN  [navigator] Already landed, not executing RTL
[ INFO] [1483155746.948893842, 53.046000000]: FCU: ARMED by arm/disarm component command
[ INFO] [1483155746.998971780, 53.096000000]: FCU: no RC
[ERROR] [1483155747.049096529, 53.146000000]: FCU: failsafe mode on
[ERROR] [1483155747.099086137, 53.198000000]: FCU: Already landed, not executing RTL
[ INFO] [1483155747.149208432, 53.248000000]: FCU: RTL: completed, landed
INFO  [local_position_estimator] [lpe] land timeout
[ INFO] [1483155748.147902309, 54.244000000]: FCU: [lpe] land timeout
INFO  [tone_alarm] positive
WARN  [commander] failsafe mode off
[ERROR] [1483155748.349170067, 54.446000000]: FCU: failsafe mode off
INFO  [commander] Takeoff detected
[ INFO] [1483155751.347595790, 57.438000000]: FCU: Takeoff detected
INFO  [tone_alarm] positive
INFO  [tone_alarm] neutral
[ WARN] [1483155763.333991619, 69.406000000]: CMD: Unexpected command 400, result 0
INFO  [logger] closed logfile, bytes written: 4357056
[ INFO] [1483155763.348739377, 69.420000000]: FCU: DISARMED by arm/disarm component command
INFO  [local_position_estimator] [lpe] land init
[ INFO] [1483155763.898135845, 69.968000000]: FCU: [lpe] land init
INFO  [commander] Landing detected
[ INFO] [1483155765.399206218, 71.468000000]: FCU: Landing detected

I could ARM and DISARM correctly through MAVROS, but the system did not save the log file correctly even though the terminal told me
INFO  [logger] Opened log file: rootfs/fs/microsd/log/2016-12-31/03_41_36.ulg

I checked that the folder Firmware/build_posix_sitl_default/tmp/rootfs/fs/microsd/log/2016-12-31 was clean. Also, I searched the whole Fimware folder by
✔<EMAIL_ADDRESS>[master|✚ ]
11:43:21 $ find . -name "*ulg*"
✔<EMAIL_ADDRESS>[master|✚ ]
11:43:24 $

but got nothing.

I don't have ROS installed, so I cannot test it. It seems ROS uses $ROS_HOME as working directory, so you can start to look in there if you find an .ulg file.

@bkueng Thank you for your reply.
In my opinion, the $ROS_HOME folder only recorded the related terminal feedback. I tried and checked the folder, but there are
✔<EMAIL_ADDRESS>07:55:34 $ ls
keyboard-1-stdout.log
master.log
roslaunch-amax-X10DRi-10770.log
roslaunch-amax-X10DRi-11634.log
rosout-1-stdout.log
rosout.log
vehicle_spawn_amax_X10DRi_10770_1154193950404211463-5.log

In previous tests, without MAVROS, such as running make posix_sitl_default gazebo instead of  roslaunch px4 mavros_posix_sitl.launch,  the .px4log and .ulg saved correctly in the  build_posix_sitl_default/rootfs/fs/microsd/log/ folder whith is independent of $ROS_HOME folder.

Please reopen if this is still an issue. It works fine for me locally.

@weiweikong or @mhkabir
I am facing the same Issue. I am running my simulation with mavros and .ulg is not saved correctly. If I instead make posix_sitl_default gazebo then it stores the log files correctly. How did you solve the problem?
Best Nils


Mapping rules visibility to improve re-use and consistency of applying mappings

As mappings are non-disclosive, we need a way for uses to see the mappings from different data sets that have previously been applied. This will allow them to see a history of the decisions that have been made and chose whether to also apply the same logic to their mappings. It could allow them to also 'import' these rules to their own project for application to their data which is helpful when similar questionnaire's etc are used.

Great idea, perhaps linked to #627. Would need to consider the format for sharing, plus implement how to import them, and whether that has to be at time of the upload of the SR or afterwards.


Move enum validation and serialization to Rust

Change Summary
Sequel to https://github.com/pydantic/pydantic-core/pull/1235, should give a 4x+ speedup to enum validation.
This will fail until we make a new pydantic-core release.
Checklist

[x] The pull request title is a good summary of the changes - it will be used in the changelog
[x] Unit tests for the changes exist
[x] Tests pass on CI
[x] Documentation reflects the changes where applicable
[ ] My PR is ready to review, please add a comment including the phrase "please review" to assign reviewers

The only failing fastapi test is due to a msg changing re an enum member error, and our version policy states that we can indeed expect msg changes in minor versions, so I think this is ok (https://docs.pydantic.dev/latest/version-policy/).
Perhaps we could just open a heads up with a test fix on the fastapi end?

The only failing fastapi test is due to a msg changing re an enum member error, and our version policy states that we can indeed expect msg changes in minor versions, so I think this is ok (https://docs.pydantic.dev/latest/version-policy/).

Update, the issue is with the url being included now, which we can fix with a simple one liner PR where we add match_pydantic_error_url to the failing test. For now, we're skipping said failing test.


How to import wasm module to another project

go get -u -x -v github.com/CosmWasm/wasmd/x/wasmd
Here my import code. My go version 1.18.
go: module github.com/CosmWasm/wasmd@upgrade found (v1.0.0), but does not contain package github.com/CosmWasm/wasmd/x/wasmd
Also when i try to import root project (go get -u -x -v github.com/CosmWasm/wasmd );
# get https://proxy.golang.org/github.com/@v/list
# get https://proxy.golang.org/github.com/%21cosm%21wasm/wasmd/x/@v/list
# get https://proxy.golang.org/github.com/%21cosm%21wasm/wasmd/x/wasmd/@v/list
# get https://proxy.golang.org/github.com/%21cosm%21wasm/@v/list
# get https://proxy.golang.org/github.com/%21cosm%21wasm/wasmd/@v/list
# get https://proxy.golang.org/github.com/%21cosm%21wasm/@v/list: 410 Gone (0.194s)
# get https://proxy.golang.org/github.com/%21cosm%21wasm/wasmd/@v/list: 200 OK (0.194s)
# get https://proxy.golang.org/github.com/@v/list: 410 Gone (0.195s)
# get https://proxy.golang.org/github.com/%21cosm%21wasm/wasmd/x/@v/list: 410 Gone (0.298s)
# get https://proxy.golang.org/github.com/%21cosm%21wasm/wasmd/x/wasmd/@v/list: 410 Gone (2.837s)
go: module github.com/CosmWasm/wasmd@upgrade found (v1.0.0), but does not contain package github.com/CosmWasm/wasmd/x/wasmd

So, how can i import as a external module?

What about simply go get github.com/CosmWasm/wasmd?
Or go get<EMAIL_ADDRESS>There is no v1.0.0, which makes module github.com/CosmWasm/wasmd@upgrade found (v1.0.0) confusing and a likely symptom of a confusion in the go build system

Closing this now. If you have more questions, please join our discord server


Update FAQ

Based on FAQ doc in Team Drive. With this PR, the team drive doc will then be marked as obsolete.

PTAL. Updated to refine some of the auth sections.

Thanks for the review!


Add docs to explain inbound/outbound

Resolves #138.

Ok, addressed.

It was me which was hitting this, we talked about it in the Slack. I think those comments are buried too deep and this somehow belongs into the main README or some other document. (Now that I think I understood it, I consider writing a blog entry about it.)
What Inbound and Outbound is, is not obvious to someone who didn't do Netty before (actually I think the naming in general is not particularly good, no offence!)
I (and I suspect many will) originally mapped "Inbound" to the concept of "ReadStream" and "Outbound" to the concept of a "WriteStream". But this is not at all what is going on here. I'm not yet sure how to describe it easily, but the way I understand it Outbound is like a "perform action" and Inbound is like "did perform action". It decouples the emitter from the result handler (in a pretty "distant" way).
(and a thing which makes this harder to understand is autoRead :-) )

@helje5 I am happy for other naming suggestions. We used ChannelUpstreamHandler and ChannelDownstreamHandler in netty 3 which was even more confusing to people. Honestly most people in netty land like the inbound / outbound naming, but maybe its just because the old names were even worse 🤣

You are right, I shouldn't complain w/o providing decent alternatives ;->
I'm not sure yet, I don't fully understand yet why you do some things the way you do them. Maybe I come back to you on this later.
For this particular issue, it would be cool to get some more prominent mention of this on the main README or design document (actually I recommend making the README smaller, and put the current stuff in a DESIGN.md or sth).

@normanmaurer happy with this?

@weissi yep... missed that @Lukasa did address my comment. Let me merge FTW!


French translation

Thanks so much for the translation!  More of the site will be available to translate later today


Add NeonEVM Mainnet and contracts

Issue: https://github.com/safe-global/safe-deployments/issues/267
Safe-deployments PR: https://github.com/safe-global/safe-deployments/pull/268

@nick8319 can you solve the conflicts?

Hello @moisses89!
Conflicts are solved :heavy_check_mark:
Please, merge this PR asap.
Thank you! Have a nice day and week ahead!


Fix IGuestSession.execute() on Python 3 where stdout and stderr are of type MemoryView

So in Python 3 when running IGuestSession.execute() you receive '<memory [address]>' because the execute() function converts the memory view into a literal str rather than the proper bytes (same as str on Python 3). This fixes that behavior.

Fantastic!  I haven't made the complete move to py3 yet, when I added the original py3 support vboxapi was not yet available for py3.  I'm super happy that you're giving it a workout!

I'm definitely giving it a workout. It's the most important dependency in this project. All Python versions and all platforms. Will continue to report all of the bugs I find upstream. :)


fix log format output

Pull Request Test Coverage Report for Build<PHONE_NUMBER>8
Details

0 of 4 (0.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 6.165%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/lib.rs
0
4
0.0%

Totals

Change from base Build<PHONE_NUMBER>5:
0.0%

Covered Lines:
59

Relevant Lines:
957

💛  - Coveralls


Scroll option locks up Forge

When the beta scroll text option is selected, after re-load of screen, Forge hangs with a "your system is taking a long time to load" error that never seems to resolve.
System: FFG Star Wars 1.801
Forge: 10.291

@Lyinggod
I apologize for the incredibly long reply, I have not been able to replicate the problem, but just in case, I have changed the way this setting is set up.
It might be working now. I would appreciate it if you could check if this is still relevant :(


pin urllib2 again

coverage: 88.635%. remained the same when pulling fcc836e4726485f138eb701c1dd1056989bcc21c on pin-urllib2-1 into 4253ca239bad94621d0876aa06aab094b0637f33 on main.


as_() method from configuration provider

First of all, I would like to thank you for creating such a great tool, which is already a worthy alternative to python-dependency-injector.
I am currently trying to migrate my old configurations from python-dependency-injector, but I’m missing the functionality of the configuration provider, specifically the .as_() method.
Perhaps you could suggest a straightforward approach or a workaround to achieve the desired behavior. Here’s what I’m trying to do:
I have a microservice architecture application built on FastAPI, where I manage the routing for the services via the servers and root_path parameters. One service may have root_path set to /service1, another to /service2, making the services available via the following links:

api.domain.com/service1
api.domain.com/service2

At the same time, I want to retain the ability to specify an empty string for root_path, which is necessary for projects that use a more monolithic approach. The desired behavior could be achieved in python-dependency-injector by properly combining the servers and root_path parameters.
Here’s how I implemented this using python-dependency-injector:
env = providers.Configuration(strict=True, pydantic_settings=[env_secrets])

servers = providers.List(
    providers.Dict(
        url=env.API_ROOT_PATH.as_(lambda x: x or '/'),
        description=env.ENV,
    ),
)

app_factory = providers.Factory(
    FastAPI,
    root_path=env.API_ROOT_PATH,
    servers=servers,
    # other parameters
)

As you can see, these two parameters are linked through one environment variable.
If the library requires improvements, I am willing to contribute. However, I would first like to confirm that there is no standard way to achieve this behavior and would appreciate any advice on implementation.

@Pentusha Hi) I'm glad that this project is useful not only for my projects:)
I think, is quite challenging task to achieve the same behaviour because there is another approach on types in that-depends. For us it's like we don't have any proxy object for configuration management
I think it's better to create some property on pydantic settings model, which returns default value, if it's empty:
import pydantic_settings
from that_depends import BaseContainer, providers

class Settings(pydantic_settings.BaseSettings):
    API_ROOT_PATH: str = "/some_service"

    @property
    def API_ROOT_PATH_WITH_DEFAULT(self):
        return self.API_ROOT_PATH or '/'

class DIContainer(BaseContainer):
    settings = providers.Singleton(Settings)
    settings_casted: Settings = settings.cast

    servers = providers.List(
        providers.Dict(
            url=settings_casted.API_ROOT_PATH_WITH_DEFAULT,
            description=settings_casted.ENV,
        ),
    )

    app_factory = providers.Factory(
        FastAPI,
        root_path=settings_casted.API_ROOT_PATH,
        servers=servers,
        # other parameters
    )

Thank you very much, that seems to be the appropriate workaround for me.


TypeError when trying to install a docset

Tried to run "dash.py install sqlalchemy", but failed:
Traceback (most recent call last):
  File "/usr/local/bin/dash.py", line 9, in <module>
    load_entry_point('dash.py==0.2.1', 'console_scripts', 'dash.py')()
  File "/Library/Python/2.7/site-packages/dash_py/cli.py", line 100, in main
    parguments.run()
  File "/Library/Python/2.7/site-packages/parguments/__init__.py", line 176, in run
    result = cmd(**args)
  File "/Library/Python/2.7/site-packages/parguments/__init__.py", line 19, in __call__
    self._func(**kwargs)
  File "/Library/Python/2.7/site-packages/dash_py/cli.py", line 40, in install
    return [install(n) for n in name]
  File "/Library/Python/2.7/site-packages/dash_py/cli.py", line 58, in install
    install_package(package)
  File "/Library/Python/2.7/site-packages/dash_py/installer.py", line 91, in install_package
    type = package["type"]
TypeError: string indices must be integers, not str

Why not download the official SQLAlchemy docset in Dash..?Sent using CloudMagicOn 周日, 1月 25, 2015 at 6:42 下午,  whtsky/Dash.py<EMAIL_ADDRESS>wrote:            Tried to run "dash.py install sqlalchemy", but failed:
Traceback (most recent call last):
File "/usr/local/bin/dash.py", line 9, in
load_entry_point('dash.py==0.2.1', 'console_scripts', 'dash.py')()
File "/Library/Python/2.7/site-packages/dash_py/cli.py", line 100, in main
parguments.run()
File "/Library/Python/2.7/site-packages/parguments/init.py", line 176, in run
result = cmd(**args)
File "/Library/Python/2.7/site-packages/parguments/init.py", line 19, in call
self._func(**kwargs)
File "/Library/Python/2.7/site-packages/dash_py/cli.py", line 40, in install
return [install(n) for n in name]
File "/Library/Python/2.7/site-packages/dash_py/cli.py", line 58, in install
install_package(package)
File "/Library/Python/2.7/site-packages/dash_py/installer.py", line 91, in install_package
type = package["type"]
TypeError: string indices must be integers, not str
—Reply to this email directly or view it on GitHub.

I was not able to install any docsets at all; only ever got this traceback.


Bulding dependens

I use clang 3.8. Can't build.
[ 14%] Building NVCC (Device) object third_party/gloo/gloo/CMakeFiles/gloo_cuda.dir/nccl/gloo_cuda_generated_nccl.cu.o
/usr/local/cuda/include/cuda_fp16.h(3068): error: more than one instance of overloaded function "isinf" matches the argument list:
function "std::isinf(float)"
function "isinf(float)"
argument types are: (float)
/usr/local/cuda/include/cuda_fp16.h(3079): error: more than one instance of overloaded function "isinf" matches the argument list:
function "std::isinf(float)"
function "isinf(float)"
argument types are: (float)
2 errors detected in the compilation of "/tmp/tmpxft_000076a5_00000000-19_nccl.compute_61.cpp1.ii".
CMake Error at gloo_cuda_generated_nccl.cu.o.cmake:262 (message):
Error generating file
/home/loki/caffe2/build/third_party/gloo/gloo/CMakeFiles/gloo_cuda.dir/nccl/./gloo_cuda_generated_nccl.cu.o

cc @pietern for gloo.

I believe I have a similar error on Ubuntu 14.04 on the same 'gloo' but different error. Here is the output:
`[ 14%] Building NVCC (Device) object third_party/gloo/gloo/CMakeFiles/gloo_cuda.dir/nccl/./gloo_cuda_generated_nccl.cu.o
/srv/software/caffe2/third_party/gloo/gloo/nccl/nccl.cu(36): error: argument of type "const int *" is incompatible with parameter of type "int *"
1 error detected in the compilation of "/tmp/tmpxft_000015a7_00000000-9_nccl.compute_30.cpp1.ii".
CMake Error at gloo_cuda_generated_nccl.cu.o.cmake:260 (message):
Error generating file
/srv/software/caffe2/build/third_party/gloo/gloo/CMakeFiles/gloo_cuda.dir/nccl/./gloo_cuda_generated_nccl.cu.o
make[3]: *** [third_party/gloo/gloo/CMakeFiles/gloo_cuda.dir/nccl/./gloo_cuda_generated_nccl.cu.o] Error 1
make[3]: Leaving directory /srv/software/caffe2/build' make[2]: *** [third_party/gloo/gloo/CMakeFiles/gloo_cuda.dir/all] Error 2 make[2]: Leaving directory /srv/software/caffe2/build'
make[1]: *** [all] Error 2
make[1]: Leaving directory /srv/software/caffe2/build' make: *** [all] Error 2

@mnmoustafa, @pietern, I had pretty the similar issue today.
After making sure that nvcc --version returns proper CUDA version (8.0 in my case) I've managed to solve it by removing caffe2/build subdir and subsequently calling make again.

I'm having the same issue, nvcc is at version 8.0. The issue only appears, if an external nccl library is used. Without it, everything works fine

@MarcelSimon Do you have the same issue as @mnmoustafa with the const error? If you use external NCCL, which version of NCCL is that?

(closing this since it seems to have become stale, but feel free to re-open if the problem persists.)

I have solved the problem by updating my libnccl from 1.2.3 to 2.1.4
before:

after:


Clean up the Play cases helppatch

-Give a description what it's about
-Some unused pin warnings to clean up

fixed in 1.0.3


[local-volume] Add e2es against local cluster

Similar to the nfs provisioner tests, we should add some e2es for the local volume provisioner to make it easier to validate changes without needing to update the kubernetes/kubernetes e2e tests every time.  We may even want to consider moving the provisioner tests there to this repo.
/area local-volume

/help

Happy to help with this. Until https://github.com/kubernetes/kubernetes/issues/66649 is resolved, running tests out of tree will be a pain. Travis is good enough for basic validation, <20 mins to build and run e2e tests

I'm working on some tasks on local volume provisioner. I'll take a look.
/assign

Moving issue to new repo: https://github.com/kubernetes-sigs/sig-storage-local-static-provisioner/issues/4
/close


added madewithtea.com

link/logo of webring is in footer :)

Very nice site :) Welcome aboard!

Thank you!


Adding books to the JS section

The first link is already present in the free-programming-books file, the second in the interactive file.


does it support optional flag?

There are some options that are not always required, and if not required, a builtin default value is set.
fro example when --optionalflag is not entered
the effect of
somecommand --required 1223
is the same as if entered
somecommand --requiredflag 1223 --optionalflag default345
The documentation is not clear wheterh this is supported or not and if so, how that be used.

Hi @etsangsplk,
Required flags are not currently supported, they are all optional and have defaults (the Value field on the structs).
Let me know if this helps!

For my optional flags, I just set it to an empty string by default, and check if the string is not empty to check if the optional flag is set

Indeed, going to close this in lieu of https://github.com/urfave/cli/issues/85 -- put please reopen if I misunderstood you @etsangsplk

Given that this is from last year, I think I'm comfortable closing it 🙂 feel free to re-open / open a new issue / comment in support if there's still interest here!


Ripple effect

Is it possible to make ripple effect when either parent or child views are clicked?

Sure, just set the android:background attribute to ?attr/selectableItemBackground on the background view of your parent/child

shymmq's suggestion is correct.


Unsupported redirect domain

Issue Type: Bug
Oauth fails with unsupported redirect domain when using github
Extension version: 1.0.1653
VS Code version: VSCodium 1.41.1 (26076a4de974ead31f97692a0d32f90d735645c0, 2019-12-19T20:28:43.121Z)
OS version: Linux x64 5.3.0-28-generic

System Info

Item
Value

CPUs
Intel(R) Core(TM) i5-3570 CPU @ 3.40GHz (4 x 3602)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmetal: disabled_offmultiple_raster_threads: enabled_onoop_rasterization: disabled_offprotected_video_decode: unavailable_offrasterization: disabled_softwareskia_renderer: disabled_offsurface_control: disabled_offsurface_synchronization: enabled_onvideo_decode: unavailable_offviz_display_compositor: enabled_onviz_hit_test_surface_layer: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
5, 4, 2

Memory (System)
7.72GB (0.17GB free)

Process Argv
--no-sandbox --unity-launch

Screen Reader
no

VM
0%

Can you please provide more information about the scenario when you hit the issue? Also can you provide us your logs too? You can access them via the Live Share: Export Logs command from the command palette (ctrl + shift + p) and attach them to this issue.

Issue with https://github.com/VSCodium/vscodium.git; probably stripped too much.
Microsoft version of VSCode works.

You can still get it to work in VSCodium by using the code - not the one from the URL!
Initiate login with VS Code - the Microsoft build

No need to download it - just go to https://insiders.liveshare.vsengsaas.visualstudio.com/auth/login and generate your user code there.

From VSCode, Live Share opens this link in the browser:
https://prod.liveshare.vsengsaas.visualstudio.com/auth/identity/github/?redirect=vscode://ms-vsliveshare.vsliveshare/signin%253FwindowId=1&state=…&extensionId=…&nonce=…

But from VSCodium, this link is opened:
https://prod.liveshare.vsengsaas.visualstudio.com/auth/identity/github/?redirect=vscodium://ms-vsliveshare.vsliveshare/signin%253FwindowId=1&state=…&extensionId=…&nonce=…

Notice the different protocol here: vscodium instead of vscode. So looks like Live Share now checks if the redirect URL is “valid” and rejects what it considers to be “invalid”, especially given that authorization used to work under VSCodium and still works if you install an older version of Live Share.

We've changed our authentication service. See #4128 and if the new authentication is giving you an issue, please create a new issue. Thank you for your patience.


TextInput get focused when i press but i want to scroll instead

Is this a bug report?
yes

Have you read the Contributing Guidelines?
yes
Environment

OS:  Windows 10
Node:  6.11.1
Yarn:  0.27.5
npm:  3.10.10
Watchman:  Not Found
Xcode:  Not Found
Android Studio:  2.3.3

Steps to Reproduce

When a TextInput with has textAlign: 'right' inside a ScrollView and you press on it for scrolling it will focus instead (only on Android).
here is another issue that related to this problem #12167
Expected Behavior

The correct behaviour would be to get focused only if you tap on it (without scrolling).
It works perfectly on iOS or if you remove the textAlign style
Actual Behavior

Reproducible Demo

https://snack.expo.io/BJdbsooZG

any suggestion?


Is hardlinks really that important that they need to be in the Mode for fileinfo?

Getting the hardlink flag takes about 25% of the time to display a fileinfo when doing ls.
Is it really that important? Could it be made optional, or hidden behind some option?

Do p/invoke so slow?

I guess windows only.
The slowness comes from having to reopen each file to get the hardlink count. The rest of the information is available in the FileInfo object.
For the hardlink, we need to call CreateFile (slow) to get a handle, and then use it to get the handle info (fast).
cmd.exe doesn't do this. It shows link types when there is a reparse-point. We could display when there is a reparse point, and ignore hardlinks.

The slowness comes from having to reopen each file to get the hardlink count

I wonder that is so slow. In the topic I see " In testing, it slowed down our processing from 240ms for 21000 files, to 750ms. "

I'm not sure it is a breaking change. If I recall correctly, formatting is explicitly not a part of the public contract.

cmd.exe doesn't do this. It shows link types when there is a reparse-point. We could display when there is a reparse point, and ignore hardlinks.

IIRC a hard link isn't set as a reparse point so having a check on that won't work. I'm unsure as to the speed but you can use FindFirstFileName and FindNextFileName to enumerate all hard links on a file without calling CreateFile. As for what that does internally I have no idea.

Seems two fields is affected - LinkType and Mode.

The problem is the extra roundtrips to disc, since we don't get enough information from the FileInfo. And going from a FileInfo to a filehandle, which is needed to get the the hardlink count, is expensive on windows.
I argue that this info is so rarely needed that paying the price all the time is not motivated.
Here's some pointers to the relevant docs for people interested in looking deeper:

Desc
Comment

GetFileInformationByHandleEx
The API to get extended file info

FILE_INFO_BY_HANDLE_CLASS enumeration
Enum to select info to retrieve

_FILE_STANDARD_INFO structure
The struct for getting the hardlink count

System.IO
Source code for .net FileInfo etc

Interop definitions in corefx
Structs etc used by the framework to get the data from the file system.

@iSazonov I'm not that concerned about the LinkType as it isn't displayed by default.
I'm starting to think that the right solution is just to change the default formatting. We can keep the current as a non-default view.

@powercode Remove mode from default view? I'd vote to follow cmd.exe behavior (exclude hardlynk from the mode)

I'm fine with that too.

@SteveL-MSFT Can you confirm the change?

Will -Force "force" the display of this info?  I do have some hardlinks that I'd link to see what they're targeting.

Get-ChildItem's -Force flag is primarily for displaying hidden or system files. I'd be inclined to think... probably not. I believe there was discussion of a separate switch to enable querying this information?

I'd consider -IncludeHardLinks for Get-Item and Get-ChildrenItem.

I would be ok with removing hardlinks by default.  A dynamic param for FileSystemProvider may be an ok solution.

@PowerShell/powershell-committee reviewed this and is ok with not having hardlinks in the default view

I agree with @iSazonov on a seperate switch like -IncludeHardLinks or a generic -IncludeLinks since it also needs to adjust the Process Token Privilege on Windows to get the proper LinkType and Target info, per invocation. See #7127

This is already fixed by #8789


ci(release): upload coverage to codecov

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[NEW ALGORITHM] SJFS CPU Scheduling Algorithm

Issue will be closed if:

You mention more than one algorithm. You can create a separate issue for each algorithm once the current one is completed.
You propose an algorithm that is already present or has been mentioned in a previous issue.
You create a new issue without completing your previous issue.

Note: These actions will be taken seriously. Failure to follow the guidelines may result in the immediate closure of your issue.

Name:
[NEW ALGORITHM]  Shortest Job First Algorithm
About:
The Shortest Job First (SJF) algorithm selects the process with the shortest execution time to run next, aiming to minimize average waiting time. There are two types: Non-Preemptive (where a process runs fully once started) and Preemptive, also called Shortest Remaining Time First (SRTF), where shorter jobs can interrupt ongoing processes. SJF is efficient in reducing turnaround time but can cause starvation for longer processes if shorter ones keep arriving. It’s widely used in batch systems where job durations are known in advance.

Labels:
new algorithm, gssoc-ext, hacktoberfest, level1

Assignees:

[X] Contributor in GSSoC-ext
[X] Want to work on it

Please assign me


Add support for PowerPC64 LE Linux

The linux powerpc64le architecture has been quite popular amongst researchers and corporates. It would be great the architecture is supported. I could assist developers with access to ppc64le linux computers for development.

Duplicate of https://github.com/rust-lang/rustc_codegen_cranelift/issues/1471. tl;dr: Cranelift needs to add a powerpc backend first.

Wait, you are the same person who opened that other issue. Why did you open another issue?

Wait, you are the same person who opened that other issue. Why did you open another issue?

I am sorry for my poor mixing up. I did create one issue before.


Enhance ui of the login page

Is your feature request related to a problem? Please describe.
Hi, I would like to make the following changes to the login page:
Add a darker theme to the login and sign-up sections to enhance the appearance.
Include the website logo within the login box.
Replace the text "Open Sesame" with "Disco Simulator."

@sk66641 please assign me this issue


Add ekco podImageOverrides test to testgrid

What type of PR is this?

type::tests
What this PR does / why we need it:
Adds ekco podImageOverrides test to testgrid
Which issue(s) this PR fixes:

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

NONE

Does this PR require documentation?

NONE

[sc-37396]


'JaxprTracer' object cannot be interpreted as an integer

The following works fine without jit:
from jax import jit

def foo(num):
    for _ in range(num):
        pass

jit(foo)(0)

But as it is, I get the following error:
Traceback (most recent call last):
  File "/Users/jemis/libraries/miniconda3/lib/python3.7/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/Users/jemis/libraries/miniconda3/lib/python3.7/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/Users/jemis/jaxprtracer_int.py", line 7, in <module>
    jit(foo)(0)
  File "/Users/jemis/libraries/miniconda3/lib/python3.7/site-packages/jax/api.py", line 149, in f_jitted
    out = xla.xla_call(flat_fun, *args_flat, device_assignment=device_assignment, backend=backend)
  File "/Users/jemis/libraries/miniconda3/lib/python3.7/site-packages/jax/core.py", line 569, in call_bind
    outs = primitive.impl(f, *args, **params)
  File "/Users/jemis/libraries/miniconda3/lib/python3.7/site-packages/jax/interpreters/xla.py", line 367, in _xla_call_impl
    *map(abstractify, args))
  File "/Users/jemis/libraries/miniconda3/lib/python3.7/site-packages/jax/linear_util.py", line 217, in cached_fun
    ans, f_prev = cached_fun_body(f, args)
  File "/Users/jemis/libraries/miniconda3/lib/python3.7/site-packages/jax/linear_util.py", line 214, in cached_fun_body
    return call(f, *args), f
  File "/Users/jemis/libraries/miniconda3/lib/python3.7/site-packages/jax/interpreters/xla.py", line 381, in _xla_callable
    jaxpr, (pvals, consts, env) = pe.trace_to_subjaxpr(fun, master, False).call_wrapped(pvals)
  File "/Users/jemis/libraries/miniconda3/lib/python3.7/site-packages/jax/linear_util.py", line 165, in call_wrapped
    ans = self.f(*args, **dict(self.params, **kwargs))
  File "/Users/jemis/jaxprtracer_int.py", line 4, in foo
    for _ in range(num):
TypeError: 'JaxprTracer' object cannot be interpreted as an integer

I'm working with pip installs of jax (0.1.46) and jaxlib (0.1.28)
Any insight into how to fix this in the short-term would be hugely appreciated. Many thanks :)

This has a really simple fix using the static_argnums argument:
from jax import jit

def foo(num):
    for _ in range(num):
        pass

jit(foo, static_argnums=0)(0)

It would be helpful to have a more informative error message for this, such as this one which arises in other settings: The function to be transformed can't be traced at the required level of abstraction. If using 'jit', try using 'static_argnums' or applying 'jit' to smaller subfunctions instead.

Yes, that's one fix. The other option is to use JAX control-flow primitives, e.g., lax.fori_loop or lax.scan, which you may prefer since they are often faster to compile than a Python loop that has the effect of unrolling the computation.
It's hard for us to give a really good error here, since it's an exception thrown by code that we didn't write (here, the implementation of range.) Perhaps the next best thing would be easily-discoverable documentation that describes what that error means and how to fix it?

In Python 2 we had a better error message, because the range builtin would try to coerce its argument to an int by calling its __int__ method. We overrode that method on our tracers/avals to provide a better message. But Python 3's range apparently doesn't call it!
I think we might be able to control the message by subclassing int or something weird like that... but maybe we should just document it better :)

To understand what's going on, take a look at the How it works section of the readme, as well as What's supported (look for the string "control flow"). There's also an explanation in the Gotchas notebook (linked from the readme).

@hawkinsp and @mattjj, thanks for all the info on that! I somehow never stopped to read the How it works section earlier, and that clears up a lot of the confusion I had about this (and prior) jit error messages.
One other thing, the toy code example I gave is based on real code where I need to backpropagate through everything that's happening inside the for loop. Will replacing the for loop with a lax.fori_loop construct make the code non-differentiable?

Yes, lax.fori_loop isn't differentiable. But lax.scan is! Can you use that?
Alternatively, you can do the static_argnums thing and just use Python control flow there. The downsides are (1) more recompilation (every time the 'static' arg changes, we recompile) and (2) possibly longer compile times because the loop would be unrolled into a larger XLA computation.

Ahhh yes, that should work beautifully. Thank you so much!

Happy to help!


Data Structure to train based on CFPD dataset

Hi! I am trying to use the repository with the CFPD dataset. I currently have all the images in a single folder, but I am not sure how should I distribute them in training, validation and test folders based on the .mat file.
I made some changes but I am having this error in the 311 line in FCN.py
ValueError: Cannot feed value of shape (110, 224, 224, 3, 1) for Tensor 'annotation:0', which has shape '(?, 224, 224, 1)'
Do you know what could be happening? How can I have the image tensor with the right shape?
Thank you!

Hi @juanesfonsecan , thank you for your question.
Actually, CFPD dataset has some more pre-processing steps before you can use it for train/test/validation.  When you download it, its just all images in one folder and one .mat file for annotations. There are some scripts you need to run to convert annotations into label images, and make separate directories with images and labels.
I have another repository which you can follow for processing CFPD dataset: https://github.com/minar09/dataset-CFPD-windows
Please let me know if you need more clarification. Thank you.


Support environments where SSDP doesn't work

Hi
Thanks for your plugin! I wanted to give it a try but unfortunately, SSDP doesn't seem to work and my Sonos system cannot be found by my homebridge installation. I don't know why...
According to https://npm.io/package/@svrooij/sonos, there's the option to configure a static IP of a Sonos device. Would it be possible for your plugin to optionally allow the configuration of this IP that serves as a fallback for failed discovery?
Thanks!

Hello @Glurz,
I've added an option to discover the system from a known device, such as explain in the link you provided.
I hope to have this tested sometime tomorrow, and will push a release to npm by then

Thanks @Julius-Bendt! That was fast!

np!
I've released the changes, but I didn't had the chance to test it - could you try it and let me know if the changes works?

Hi @Julius-Bendt
It doesn't work yet. There's an "await" missing in front of the InitializeFromDevice statement. If you add this, then the devices are found.

@Julius-Bendt please allow another question: if i turn the toggle on, the configured mp3 is played. That's great. I would have expected for the toggle to turn off automatically again once the mp3 finishes playing (or the timeout has elapsed).
Why does "turn off toggle" stop the entire playback? If I understand the current behavior correctly, the mp3 cannot be played twice without stopping the playback.
Thanks for your effort!

It doesn't work yet. There's an "await" missing in front of the InitializeFromDevice statement. If you add this, then the devices are found.

Darn it, I knew I forgot something. I'll update it quick - look out for 1.1.2. Should be out when you see this message

@Julius-Bendt please allow another question: if i turn the toggle on, the configured mp3 is played. That's great. I would have expected for the toggle to turn off automatically again once the mp3 finishes playing (or the timeout has elapsed). Why does "turn off toggle" stop the entire playback? If I understand the current behavior correctly, the mp3 cannot be played twice without stopping the playback. Thanks for your effort!

I don't quite remember why it doesnt toggles off. It might have something with a bug I fixed in version 1.1.1.
Could you open a new issue? it makes easier to track the progress and create changelogs for new versions
I'll look into it in the new year :D

Thanks @Julius-Bendt. I'll open another issue for the other findings. This one here's now working. Thanks a lot.


rich.logging undocumented?

Your blog post refers to rich.logging.RichHandler, which is present in the code, but doesn't show up in ReadTheDocs.

Added https://rich.readthedocs.io/en/latest/reference/logging.html
There's not much to it, tbh. To customize, its probably easier to copy that class and modify it.


Close channels with sequential turn number orders

Could you add a description of the change this makes and the reason behind making it?


Saner spec database defaults for API generator

Use in-memory SQLite
Load db/schema, AND check for pending migrations

Closing until we make more frequent use of the API generator.


[1.15.2] On the twitch launcher the mod wants to update to fabric.

Unlike other mods that support fabric and forge this one wants to update to fabric even though it is updated to the most recent version of the mod for forge.

Ok


Realized PL incorrect when user partial closes position.

User A:
gets into a long position
buying 100 @ 0.31
buying 200 @ 0.35
total: 300 @ 0.3366666
Then user A:
closes by selling 100 @ 0.3
unrealized PL: -7.33
realized PL should be -3.66666 but getter returns -4.73
Diving into the math. to get -4.73 is
(100 * 0.3) - (100 * 0.336666) - (100 * 0.0101)  //note:  0.0101 is 1.01% market fee

numbers do add up. settlement fee wasn't taken into account.


Typo in help window

We should also review to see if there are any changes to the commands, requiring an update to the help window details

Duplicate of https://github.com/AY2425S1-CS2103T-F14b-3/tp/issues/162.

Closed with https://github.com/AY2425S1-CS2103T-F14b-3/tp/pull/188


DIP183 Last Call DIP 10 Standard

DIP10: change to Standard
DIP183: change to Standard and Last Call

Considering the general direction here, I'd actually propose a bit of rework in DIP-183 in particular with examples and test data.
Examples which could go into the appendix include various different strategies for exchanging a reference id:

Subaddresses
PayString
Other naming services
Leveraging Diem domain identifiers in addition to other services

Then we could avoid introducing a new naming construct that is Diem specific and altogether unnecessary.
In addition, we should have good test cases for verifying correctness of the exchange.
For DIP-10, it doesn't seem to focus on the intended point which is just the Diem domain.


Issue with PEM certificate parsing

In mbed TLS 2.3.0 there are an issue in programs x509_crt.c.
Through mbedtls_x509_crt_parse function, the certifcate format is set to MBEDTLS_X509_FORMAT_DER in case of PEM.
int mbedtls_x509_crt_parse( mbedtls_x509_crt *chain, const unsigned char *buf, size_t buflen )
{
int success = 0, first_error = 0, total_failed = 0;
#if defined(MBEDTLS_PEM_PARSE_C)
int buf_format = MBEDTLS_X509_FORMAT_DER;   <== To replace by MBEDTLS_X509_FORMAT_PEM
#endif
...

Why do you think there's a bug here? Do you have an example certificate which isn't parsed correctly?

Sure!!!
You could use PEM certificate define into file certs.c
From: James Cowgill<EMAIL_ADDRESS>Sent: lundi 26 septembre 2016 20:55
To: ARMmbed/mbedtls<EMAIL_ADDRESS>Cc: Christophe DELAUNAY<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [ARMmbed/mbedtls] Issue with PEM certificate parsing (#630)
Why do you think there's a bug here? Do you have an example certificate which isn't parsed correctly?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/ARMmbed/mbedtls/issues/630#issuecomment-249662951, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AJhD0SyCajJzDA5pvbvijmsYnAMsLiVtks5quBT6gaJpZM4KGtjm.

The certificate from certs.c parses fine for me. If it works for you only when you change buf_format then maybe your input certificate is malformed? It has to be NULL terminated.

Hi James,
Thanks for your feedback.
I’ve investigate through my code; I discovered an issue with length parameter pass to “mbedtls_x509_crt_parse” function.
In fact, I provide length with strlen function instead of sizeof; then the length was the length of the 1st line of PEM because each line are ending with \0.
Could you close this issuer submission.
Sorry for wrong information ☹.
Another question:
Do you have an example code for SSL client through general purpose MCU like STM32 with IP stack like LWIP ?
Regards.
<EMAIL_ADDRESS>Christophe DELAUNAY | Tel: +33 442688279
MMS-SMD | Application engineer
STMicroelectronics SAS
190 Avenue Celestin Coq
ZI Rousset Peynier
13106 Rousset Cedex
FRANCE
ST online: www.st.comhttp://www.st.com/ | Follow us on twitter: @st_worldhttp://twitter.com/#!/ST_World
This communication is confidential and intended solely for the addressee(s). If you are not the intended
recipient, you should not review, retain, copy or distribute the e-mail itself or the information it contains.
In such case, we kindly request you notify the sender by replying to this transmission and delete the
message without disclosing it. Thank you!
From: James Cowgill<EMAIL_ADDRESS>Sent: mardi 27 septembre 2016 11:10
To: ARMmbed/mbedtls<EMAIL_ADDRESS>Cc: Christophe DELAUNAY<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [ARMmbed/mbedtls] Issue with PEM certificate parsing (#630)
The certificate from certs.c parses fine for me. If it works for you only when you change buf_format then maybe your input certificate is malformed? It has to be NULL terminated.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/ARMmbed/mbedtls/issues/630#issuecomment-249809683, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AJhD0WCnMlJ4MuQnxh4jM6lUsClnLM6rks5quN2BgaJpZM4KGtjm.


Logger Problem: missing argument 'show_time' when running a scene

When running this script in the current version of manim,
from manim import *

class Test(Scene):
    def construct(self):
        dot = Dot()
        self.add(dot)
        self.wait(1)

from pathlib import Path
if __name__ == "__main__":
    script = f"{Path(__file__).resolve()}"
    os.system(f"manim  -p -s  " + script )

I get the following error:
Traceback (most recent call last):
  File "/home/jan-hendrik/projects/manim-community/example_scenes/basic.py", line 1, in <module>
    from manim import *
  File "/home/jan-hendrik/projects/manim-community/manim/__init__.py", line 4, in <module>
    from .config import config
  File "/home/jan-hendrik/projects/manim-community/manim/config.py", line 15, in <module>
    from .logger import logger
  File "/home/jan-hendrik/projects/manim-community/manim/logger.py", line 88, in <module>
    handlers=[RichHandler(console=console, show_time=themedict["log.timestamps"])],
TypeError: __init__() got an unexpected keyword argument 'show_time'

Process finished with exit code 1

What version of rich are you using @kolibril13 ?
It needs to be a version more recent than 4.2.1. I recommend the most recent version.

> pip freeze | grep rich
rich==1.3.1

Thanks a lot, I updated it and now it is working again! :)


Restructure documentation

The current documentation steps very bluntly into showing examples of commands for carrying out various tasks in AI Cloud.
We wish to restructure the documentation fundamentally to start out with a high-level introduction to what the AI Cloud is and what it can  be used for. The documentation should continue to explain better what the AI Cloud consists of, and then - finally - it gets into details about specific commands.
Description of more advanced use, particular use cases etc. should be structured under separate pages.

This , sort of super-issue is essentially broken down and executed in the project https://github.com/orgs/aau-claaudia/projects/2


go-mkopensource: generating dependency file fails with dirty go.mod

A typical workflow for many Go projects is to update the go.mod run go mod tidy and then run the go-mkopensource binary to generate a new DEPENDENCY.md.
However, this currently fails due to not liking the fact that the go.mod file is now "dirty" from a git perspective. The checking for go.mod dirty is good for CI and automation but not for the workflow described above.

It may be a little dogmatic but the commits for the updated dependency and the changes to go.mod belong together as an atomic commit.

 Something like --ignoreGitDirty or something like that so that it will generate the file without failing then in CI it will block it because something isn't correct.

Conveniently you don't run into this problem if you forget to urn go-mkopensource until after CI has failed your first commit for missing the changes it would have made :sunglasses:

haha yes that is true :)


Lumbridge swamp - Roots and Rocks

Adds textures to roots and some rocks missing textures in Lumbridge Swamp.
Master / PR:

lighter roots


Refactoring

Summary

Change Type

Check List Before Merging

[ ] This PR passes all pre-commit hook validations.
[ ] This PR is fully tested and regression tests are included.
[ ] Relevant documentation has been updated.

Additional Information

Welcome to Codecov :tada:
Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.
Thanks for integrating Codecov - We've got you covered :open_umbrella:


Apps monitoring

Description
User story to add logging capabilities in Dash-Seedling. This is similar to the logging added in Model-Seedling.
At the minimum the app should be capable of logging basic logs for basic operations taken place. These logs should be linked to the Application Insights for Dash-Seedling. An admin user with access to Dash-seedling resources should be able to view the logs in Application Insights on Azure.
User Stories / Bugs
As a FlowEHR admin, I want to

Have Dash-Seedling app logging info/error messages upon basic user operations/actions using the app.
Be able to view/query logs of Dash-Seedling in Application Insights  on azure portal.
[x] UCLH-Foundry/FlowEHR#276
[x] UCLH-Foundry/Dash-Seedling#26

So that I can monitor the app activities.
Acceptance Criteria

Implement logging capability in Dash-Seedling app.
Log basic operation info messages in Dash-Seedling app.
Consume existing app insights environment variables (from app service config)
Local monitoring support through providing APPLICATIONINSIGHTS_CONNECTION_STRING env var
Ensure logs generated by Dash-Seedling can be viewed in Application Insights on Azure
Logs should also be visible within the FlowEHR Log Analytics workspace (application insights logs should trickle up to the Log Analytics workspace)

Have created following 3 issues:

#304  in Flower
#29 in Dash-Seedling
#305 in Flower