Playary webapp won't work

Hi at all,
I've tried to add Playary with this self-made recipe » https://github.com/Retriev3r/franz-recipe-playary (copy from » https://github.com/badetitou/franz-youtube-music) but somehow the webapp won't display anything… maybe it has something to do with the user-agent?
Any ideas?

Hi @Retriev3r
This issue has been fixed by Playary team. Can you try again?

Hi @fatihozkan
I am actually using Ferdi (an alternative version of Franz) and it is still a just a black screen.
The console says the following » screenshot
I don't understand any of that ¯_(ツ)_/¯
Hope it helps!

@fatihozkan
I love Playary by the way!!! Thank you for this 🙏
There is just one thing I am missing » If i am on music.youtube.com I can press "»" (F7) for next and "«" (F9) for previous song on my keyboard.
Foto of the buttons
On Playary the play & pause button works fine, but the next and back buttons are dead.
It would be so cool if you could fix this, so we don't have to use the mouse any longer.
Again THANK YOU so much for the awesome Playary!!!
Cheers,
Ben

@fatihozkan

Hi @Retriev3r
This issue has been fixed by Playary team. Can you try again?

OMG … I just found the problem
The serviceURL in » package.json was not correct (one / too much).
It has been fixed and Playary is now working fine inside Ferdi! ^^
Cheers

Hi @Retriev3r
Actually Playary has shortcut buttons.  To go to next song just press X or Ctrl + Right Arrow button, for previous song press Z or Ctrl + Left Arrow button. To view complete shortcuts just click your username on sidebar and click Shortcuts button. You can find all shortcuts in an dedicated page.

@fatihozkan Ok, that's nice :)
But I have to switch to Playary first =/
If music.youtube or spotify is playing I can use the keyboard media buttons no matter what app is currently active.
And Playary does this too, but only with the play/pause button.
I just tried Soundcloud and they got it too: play/pause, next, back - no matter what app is in focus.
Soo I was thinking it is something you can program/integrate.
Anyways thank you for your consideration!
Cheers,
Ben


Tech rospl

Issue 1: Broken Link #497
Fixed the broken link to "illusion of choice" in the 2nd paragraph of the "Introduction to Ethics" page. The link was previously returning a "Page Not Found" error. Updated the link to point to the correct article.
Issue 2: Missing Height Value in SOCR_MLB.tsv Dataset #525
Resolved an issue with a missing height value in the SOCR_MLB.tsv dataset, which was causing nan values in the correlation calculations within the "Correlation and Evil Baseball Corp" section of the notebook. Added code to identify and handle the missing value, ensuring accurate numerical outputs.

l is a cower run from coding or jv LYC**** @KIA

@manishp14 please read the following Contributor License Agreement(CLA). If you agree with the CLA, please reply with the following information.
@microsoft-github-policy-service agree [company="{your company}"]

Options:

(default - no company specified) I have sole ownership of intellectual property rights to my Submissions and I am not making Submissions in the course of work for my employer.

@microsoft-github-policy-service agree

(when company given) I am making Submissions in the course of work for my employer (or my employer has intellectual property rights in my Submissions by contract or applicable law). I have permission from my employer to make Submissions and enter into this Agreement on behalf of my employer. By signing below, the defined term “You” includes me and my employer.

@microsoft-github-policy-service agree company="Microsoft"

Contributor License Agreement

@microsoft-github-policy-service agree


Spring Profiles

Hi,
Is it possible to use Spring Profiles with this implementation?  For example, I want to run the service on a QA server with application-qa.properties and on a Production server with application.properites.
Thanks.

service.xml has startagument where you can pass the profile that you want to enable for a given service. Please check the documentation of winsw.


373 provdiding CRUD tests for Breadcrumb v2 component, adding needed …

…test pages, configurations and page objects

CRUD test for Breadcrumb component v2
Issue tracking: https://github.com/Cognifide/bobcat/issues/373

I think you overkilled this component - you're testing multiple combinations and behaviors for this component, but what we're really supposed to test is if we can handle the configuration dialog forms with Bobcat. So instead of testing, if the component reacts properly when you increase a value, and then decrease the value, test if you can work with the dialog field for that value and if the component reflects that change.
translating into something different

modifyAllProperties() - this test covers too much at the same time

decreaseNavigationStartLevel(), increaseNavigationStartLevel() - only one of these is needed to check if we can handle the responsible dialog field

hideCurrentPage(), showHiddenNavigationItems() - these both edit simple checkboxes, they can be merged into one test

after applying the points above maybe it's possible to reduce the number of test pages?

Please remember - we're not covering the core components with tests. We're testing Bobcat to see if it's able to handle the configuration of core components.


Question about n of control  modiﬁer

Hi. I have a small question regarding understanding the control modifier
"qubit[5] a;\n"
"qubit[5] b;\n"
"qubit f;\n"
"ctrl(3) @ x a, b[1], b[2] f;"

What control bits should be defined for the case above?
a[0], a[1], a[2] or a[0], a[1], a[2], a[3], a[4], b[1], b[2]
Thanks.

With the modifier, ctrl(3) @ x is a gate that takes 4 arguments; the first three are the controls, and the last one is the target.  As written, your statement ctrl(3) @ x a, b[1], b[2], f; applies 5 gates; it's the same as
ctrl(3) @ x a[0], b[1], b[2], f;
ctrl(3) @ x a[1], b[1], b[2], f;
ctrl(3) @ x a[2], b[1], b[2], f;
ctrl(3) @ x a[3], b[1], b[2], f;
ctrl(3) @ x a[4], b[1], b[2], f;

That's because a is a register, and all the others are single qubits, so the broadcasting rules apply - see https://qiskit.github.io/openqasm/language/gates.html (just below the description of the CX matrix).

Now it's clear. Thank you.

But here a is a register, and single qubits used as controls instead of broadcasting rules apply,
qubit a[5];
qubit f;
reset f;
negctrl(2) @ ctrl(3) @ x a, f[0];

if i just add arguments to this example
qubit a[5];
qubit b[5];
qubit c[5];
qubit f;
reset f;
negctrl(2) @ ctrl(3) @ x a, b, c[0], c[1], c[2], f[0];

then broadcasting rules must be applied for registers a, b or these examples will remain equivalent? Are there well-defined rules for when a broadcasting should apply and when single qubits should be used?

At present, the spec isn't super clear about what happens in 3+ qubit gates when more than one of, but not all, the arguments are registers.  This seems like a good thing for us to improve - we've previously discussed it briefly in the types working group, and my recollection is that we had a consensus on mygate a, b, c; being
mygate a[0], b[0], c;
mygate a[1], b[1], c;
...

if a and b are registers, and c is a single qubit.
(Probably a typo, but in your second example you do f[0], but f is a qubit, not a register, so f[0] is an error, and it should just be f.)

I'm trying to understand common rule for converting a control modifier to circuit, and now I see something like this

argument must be used as broadcast rule if the type of the argument is reg
argument must be used as a single qubit control if the type of the argument is qubit
if the number of arguments is less than the sum of n of all ctrl modifiers and the type of last argument is reg, qubits of this reg must be used as a single qubit control to cover sum of n (as much as possible)

For example
qubit a[2];
qubit b[2];
qubit c[4];
qubit f;
ctrl(4) @ x a[0], b, c, f;

get the rules

Single qubit control a[0]
Broadcast rule for reg b
Now we have one reg argument but tow uncovered controls, so qubits must used
Single qubit control c[0]
Single qubit control c[1]

This approach is also applicable here
qubit a[5];
qubit f;
negctrl(2) @ ctrl(3) @ x a, f;

I'm not sure that I correctly understood the original idea of the control modifier syntax, so I will wait your PR with many examples and detailed description.

Probably a typo

yes, thanks for noticing.

Oh right, I think I misunderstood some of your question sorry. negctrl(2) @ ctrl(3) @ x a, f; is never valid and never will be no matter what a and f are - negctrl(2) @ ctrl(3) @ x needs to take 6 quantum arguments, so it needs 6 things after it.  The broadcast rules are a shorthand to apply the same gate multiple times only, never to let there be fewer arguments in the gate application.
The modifier syntax simply adds "argument slots" to the end.  So x takes one quantum argument, ctrl(1) @ x takes two quantum arguments, negctrl(3) @ ctrl(2) @ x takes six, and so on.  The "new" arguments get added onto the front of the list.

negctrl(2) @ ctrl(3) @ x a, f; is never valid

Hmm... But I see this exmaple in offical documentation right  now [arXiv:1707.03429]... and its look valid. I'm a little confused.

Oh, thanks for pointing those out!  I believe that's a mistake in the text - it contradicts the "implicit iteration" section of the paper (you've linked the OQ2 paper, but you meant the OQ3 one I think), and the live spec isn't super clear about the whole thing.
I'll check with the rest of the team, but I think that particular example is perhaps left over from a previous discussion.  At the very least, the spec needs updating to more clearly spell out what should happen.

Yes I think there is a typo in the text (I made that mistake writing this example).
And should other examples in gates.rst be changed?

@vasilenkoalexey The OpenQASM 3 Technical Steering Committee would be interested in reviewing a PR for this issue if you would care to submit one. Thank you!

Sure! But I need some time for this.

Thank you, @vasilenkoalexey

So, i think now it can be closed.


Pod version '0.12.0' seems not to work

Hi Guys,
I'm trying to integrate XWebView into my project with cocoapods:
pod 'XWebView', '~> 0.12.0'
But the version seems not to be available. I get this as response:
[!] Unable to satisfy the following requirements:

- `XWebView (~> 0.12.0)` required by `Podfile`

If I run
pod search XWebView
from console, I get this:
-> XWebView (0.10.0)
   An extensible WebView (based on WKWebView) for iOS.
   pod 'XWebView', '~> 0.10.0'
   - Homepage: https://github.com/XWebView/XWebView
   - Source:   https://github.com/XWebView/XWebView.git
   - Versions: 0.10.0, 0.9.5, 0.9.4, 0.9.3, 0.9.2, 0.9.1, 0.9.0 [master repo]

The version array finishes with 0.10.0...

Are you targeting an old version of Swift? The 0.10 version maps to Swift 2.3 and newer versions of XWebView map to Swift 3+.
Not that I'm an expert with Podfiles, but I set up my own Swift 3.0.2 project with XWebView 0.12.0 using that exact Podfile about three weeks ago.

Thanks for your quick reply! I use Swift 3.0.2 in my project. I'm also not an expert with pod files, but I suspect, this might be the issue. Here is the full error message when running pod install from console:
Analyzing dependencies
[!] Unable to satisfy the following requirements:

- `XWebView (~> 0.12.0)` required by `Podfile`

None of your spec sources contain a spec satisfying the dependency: `XWebView (~> 0.12.0)`.

You have either:
 * out-of-date source repos which you can update with `pod repo update`.
 * mistyped the name or version.
 * not added the source repo that hosts the Podspec to your Podfile.

It looks like the pod is not available anymore. That's why I tried to search for pod's available versions with this command: pod search XWebView The highest available version seems to be 0.10.0 and not 0.12.0  => - Versions: 0.10.0, 0.9.5, 0.9.4, 0.9.3, 0.9.2, 0.9.1, 0.9.0 [master repo]

I wonder why. Might be a question for @xwv . In the meantime, I can try sending you a zip of my 0.12.0 install so you can at least get developing until the problem is solved. I'll be able to do that in 2-3 hours from now, during my lunch break.

I just checked on cocoapods.org and it does seem to say that version 0.12.0 should be available. How about removing the '.0' from the end of the version number, as the webpage auto-generates the following Podfile config:
target 'MyApp' do
  pod 'XWebView', '~> 0.12'
end

Failing that, update cocoapods..? And failing that, I'll send you a zip of the current version later.

Thanks for your help. I updated my cocoapods from 1.1.0 to current version 1.2.0. Same error message.
I also tried out these variants:
pod 'XWebView', '~> 0.12'
pod 'XWebView', '0.12.0'
pod 'XWebView', '0.12'

Unfortunately, nothing helps. I'd try now to setup a new project and see wether it works in a fresh project.
Yes, could you send me please the zip file with the latest sources to me? Great thanks in advance!

I found the cause and the fix for it! My Cocoapods setup was broken...s. this.
And here is the fix. Just execute the commands below in your terminal
pod repo remove master
pod setup
pod install

Well done for tracking that down! Glad I didn't have to figure out how best to share that file. Please could you mark this issue as closed 👍

sure! thanks for your support!


refactor: use Spectral validation for unique operationId

Changes:

enable the operation-operationId-unique Spectral rule
remove in-code validation that checks for duplicate operationIds

Notable results:

The error message updated to say, 'Every operation must have a unique operationId.'
The error is presented for all locations in which the duplicate opId is used. Line numbers provided for all occurrences, which is an enhancement.

Tests:

Remove tests for in-code checks for unique operationIds
Update tests to account for the additional errors reported (one error for each all instances of a duplicated operationId instead of one error per duplicate operationId)
Update tests to reflect changing order of output
Update tests to reflect change in expected output (messages, line numbers, etc.)

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Barrett Schonefeld seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Remove validation error message when adding a stream to monitor

Clicking on Add Stream button should reset any error messages that were
displayed on the previous failed attempt.
See #991 for more details.

NetflixOSS » Hystrix » Hystrix-pull-requests #263 SUCCESS
This pull request looks good

Thanks for this, @sasrin


ENV: Remove duplicate settings

WP_ACCESSIBLE_HOSTS and WP_HTTP_BLOCK_EXTERNAL appeared under the Security and Proxy headings.

@GaryJones Done.
@Giuseppe-Mazzapica FYI I also added the master branch as "protected" branch to prevent force pushes as well as it getting deleted.

Closing in favour of #17.


Add implementation of Depth-First-Search for AIMA4e branch

The pull request proposes following changes:

Add implementation of Depth-First-Search (in core module)
Add unit test for both DepthFirstSearch(core) and DepthFirstQueueSearch(extra)
Update README.md to indicate core and experimental alternatives to Depth-First-Search implementation.

@norvig Kindly review this PR.

@utsavoza Is there any difference between DepthFirstSearch and DepthFirstQueueSearch?

The code for the search has changed a lot. We are rewriting the API's for the newer version. Hence, closing this pull request.


Path item overriding problem in OpenAPI

Is this a BUG REPORT or FEATURE REQUEST?:

Uncomment only one, leave it on its own line:
/kind bug
/kind feature

/kind bug
What happened:
Can't build a nested descriptor
What you expected to happen:
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
I'll fix today(02.05)
A PR related with it #134

/priority p1

/priority p0

/assign @liubog2008

@liubog2008 ping


ru.html

amended to delete the account information from the site ask.fm

All modification you must do in sites.json, not in *.html.


Configure push_pulp plugin to use service account secret

When Origin 1.0.6 is available we could configure the push_pulp plugin as described in https://github.com/projectatomic/atomic-reactor/issues/270.

Re-based and changed SECRETS_PATH to /var/run/secrets/atomic-reactor.


NO-ISSUE: UPSTREAM: : Disable Validating Admission Policy APIs downstream

Holding for now. Want to discuss if we are ok to just disable admission for 4.16.
/hold

/jira refresh

/lgtm

I think this is ready to go in
/unhold


Unable to expose ports when adding rootless container(s) to a pod

Is this a BUG REPORT or FEATURE REQUEST? (leave only one on its own line)
/kind bug
Description
I am unable to expose ports when adding container(s) to a pod.
Steps to reproduce the issue:
$ podman pod create --name testpod
739faa5af9c18245634de958abb756c70777c3cb833278241c31cecac1a79b2c
$ podman run -dt --pod testpod -p 6379:6379 --name testredis redis
Error: cannot set port bindings on an existing container network namespace

Describe the results you received:
I receive an error that podman cannot set port bindings on an existing container network namespace.
Describe the results you expected:
I expected to be able to set port bindings when adding a container to a pod.
Additional information you deem important (e.g. issue happens only occasionally):
Happens every time.
Output of podman version:
$ podman version
Version:            1.9.0
RemoteAPI Version:  1
Go Version:         go1.14.2
Git Commit:         d985723506a29766ed21585ba8541033db6bd572
Built:              Sat Apr 18 16:20:35 2020
OS/Arch:            linux/amd64

Output of podman info --debug:
debug:
  compiler: gc
  gitCommit: d985723506a29766ed21585ba8541033db6bd572
  goVersion: go1.14.2
  podmanVersion: 1.9.0
host:
  arch: amd64
  buildahVersion: 1.14.8
  cgroupVersion: v1
  conmon:
    package: Unknown
    path: /usr/bin/conmon
    version: 'conmon version 2.0.15, commit: 1bddbf7051a973f4a4fecf06faa0c48e82f1e9e1'
  cpus: 4
  distribution:
    distribution: arch
    version: unknown
  eventLogger: journald
  hostname: knafeh
  idMappings:
    gidmap:
    - container_id: 0
      host_id: 1000
      size: 1
    - container_id: 1
      host_id: 10000
      size: 65536
    uidmap:
    - container_id: 0
      host_id: 1000
      size: 1
    - container_id: 1
      host_id: 10000
      size: 65536
  kernel: 5.6.6-arch1-1
  memFree: 784334848
  memTotal:<PHONE_NUMBER>8
  ociRuntime:
    name: runc
    package: Unknown
    path: /usr/bin/runc
    version: |-
      runc version 1.0.0-rc10
      commit: dc9208a3303feef5b3839f4323d9beb36df0a9dd
      spec: 1.0.1-dev
  os: linux
  rootless: true
  slirp4netns:
    executable: /usr/bin/slirp4netns
    package: Unknown
    version: |-
      slirp4netns version 1.0.0
      commit: a3be729152a33e692cd28b52f664defbf2e7810a
      libslirp: 4.2.0
  swapFree:<PHONE_NUMBER>
  swapTotal:<PHONE_NUMBER>
  uptime: 21h 6m 0.92s (Approximately 0.88 days)
registries:
  search:
  - docker.io
  - registry.fedoraproject.org
  - quay.io
  - registry.access.redhat.com
  - registry.centos.org
store:
  configFile: /home/aorth/.config/containers/storage.conf
  containerStore:
    number: 8
    paused: 0
    running: 6
    stopped: 2
  graphDriverName: vfs
  graphOptions: {}
  graphRoot: /home/aorth/.local/share/containers/storage
  graphStatus: {}
  imageStore:
    number: 8
  runRoot: /run/user/1000
  volumePath: /home/aorth/.local/share/containers/storage/volumes

Package info (e.g. output of rpm -q podman or apt list podman):
$ pacman -Qi podman
Name            : podman
Version         : 1.9.0-2
Description     : Tool and library for running OCI-based containers in pods
Architecture    : x86_64
URL             : https://github.com/containers/libpod
Licenses        : Apache
Groups          : None
Provides        : None
Depends On      : cni-plugins  conmon  device-mapper  iptables  libseccomp  runc  slirp4netns  libsystemd  fuse-overlayfs  skopeo
Optional Deps   : podman-docker: for Docker-compatible CLI
Required By     : None
Optional For    : None
Conflicts With  : None
Replaces        : None
Installed Size  : 101.83 MiB
Packager        : Morten Linderud<EMAIL_ADDRESS>Build Date      : Sat 18 Apr 2020 04:20:35 PM EEST
Install Date    : Sat 18 Apr 2020 07:50:11 PM EEST
Install Reason  : Explicitly installed
Install Script  : No
Validated By    : Signature

Additional environment details (AWS, VirtualBox, physical, etc.):
Physical on Arch Linux with rootless podman.

For now, ports must be exposed at pod creation time. There's been some talk in the past of changing this so new containers added to the pod would have their ports exposed after a pod restart, but discussions on this stalled on implementation details.

For now, ports must be exposed at pod creation time.

Ah, yes so I just expose all the ports I think I'll need when creating the pod and then they are forwarded to all containers:
$ podman pod create --name testpod -p 13306:3306 -p 16379:6379
$ podman run -dt --pod testpod -P --name testredis redis
$ podman run -dt --pod testpod --name testmariadb -e MYSQL_ROOT_PASSWORD=my-secret-pw mariadb:10.2

Yes this works for me for now and I am able to connect to services running in both, though I dunno what happens if there are multiple containers in the same pod listening on the same port.


Fix buildReducedModel

The parent frame of the geometry objects was copied from the input model. As the frame order is not kept, they were erroneous.
As a side note, I think the frame order could be kept. I won't have time to dig into this.

As a side note, I think the frame order could be kept. I won't have time to dig into this.

Could you add a TODO?


[osgearth] Make all find_packages required in effort to make this port less "flaky", and turn on in CI.

Related: https://github.com/microsoft/vcpkg/pull/13423
Also adds "static-crt" identifier to platform expressions.

https://cmake.org/cmake/help/latest/variable/CMAKE_DISABLE_FIND_PACKAGE_PackageName.html for reference ;)

https://cmake.org/cmake/help/latest/variable/CMAKE_DISABLE_FIND_PACKAGE_PackageName.html for reference ;)

https://cmake.org/cmake/help/latest/variable/CMAKE_DISABLE_FIND_PACKAGE_PackageName.html for reference ;)

This is doing the opposite though (forcing them to be REQUIRED)

https://cmake.org/cmake/help/latest/variable/CMAKE_DISABLE_FIND_PACKAGE_PackageName.html for reference ;)

This is doing the opposite though (forcing them to be REQUIRED)

This is doing the opposite though (forcing them to be REQUIRED)

This should only be required if they are not added to build-depends field. Otherwise disabling should be the preferred option. Only the ones already having an option should probably have the REQUIRED keyword.
Otherwise for debugging patch in: https://cmake.org/cmake/help/latest/module/FeatureSummary.html to get an overview what was found and what not.

This is doing the opposite though (forcing them to be REQUIRED)

This should only be required if they are not added to build-depends field. Otherwise disabling should be the preferred option. Only the ones already having an option should probably have the REQUIRED keyword.
Otherwise for debugging patch in: https://cmake.org/cmake/help/latest/module/FeatureSummary.html to get an overview what was found and what not.

@Neumann-A I added all the associated find_package'd things to dependencies, does that resolve your concern?

@Neumann-A I added all the associated find_package'd things to dependencies, does that resolve your concern?

I added all the associated find_package'd things to dependencies, does that resolve your concern?

Yes

I added all the associated find_package'd things to dependencies, does that resolve your concern?

Yes


Sri Hari: Batch-4/Neetcode-150/Added-hints

@neetcode-gh

Took 5 hours for this work.
Please review it.

@Srihari2222 Thanks!
Can you also add 4 articles for the below segment tree problems? I haven't quite made a video for these yet, but they are apart of the advanced course. Thanks!
https://neetcode.io/courses/advanced-algorithms/8

@Srihari2222 Thanks!
Can you also add 4 articles for the below segment tree problems? I haven't quite made a video for these yet, but they are apart of the advanced course. Thanks!
https://neetcode.io/courses/advanced-algorithms/8
@neetcode-gh
Sure, I will definitely add articles for these four also. How many languages should I add  solutions in, as I see that the neetcode's
segment tree tutorial has 5 languages (pyth, cpp, java, c#, swift)?


Allow the ingress host name to be interpreted as a template value

Would it be possible to change the ingress.yaml rules.host and tls.hosts  to interpret the value as a template?
For example:
rules:
    - host: {{- include "common.tplvalues.render" ( dict "value" Values.ingress.host "context" $) | nindent 4 }}

In my values.yaml file, I would like to do the following:
ingress:
      enabled: true
      host: '{{- print .Release.Name "-" .Release.Namespace -}}.apps.example.com'

I have multiple environments (dev, test, staging) where I would like to use the release name and namespace as part of the host name.
Thank you.

Hi @MonicaG sorry for the late response. I think it makes sense. Yup, why not? 🙂  Would you like to send a PR?

HI @tumido - Sounds good, I don't mind doing a PR. Thanks!


Add GesturesExtensions.TypedBindings.cs

Description of Change
This PR implements Typed Bindings for GestureRecognizers
Linked Issues

Fixes #191

PR Checklist

[x] Has a linked Issue, and the Issue has been approved(bug) or Championed (feature/proposal)
[x] Has tests (if omitted, state reason in description)
[ ] Has samples (if omitted, state reason in description)
[x] Rebased on top of main at time of PR
[x] Changes adhere to coding standard
[ ] Documentation created or updated: https://github.com/MicrosoftDocs/CommunityToolkit/pulls/XYZ

Thanks Shaun! We currently don't use GestureRecognizers in the sample app, but I'll find a way to squeeze it in 👍
Yup! We do need a docs update. Any chance you're available to help? The Unit Tests added in this PR should demonstrate usage of the new APIs so that you don't have to wait on me to update the Sample App.

Thanks Shaun! We currently don't use GestureRecognizers in the sample app, but I'll find a way to squeeze it in 👍
Yup! We do need a docs update. Any chance you're available to help? The Unit Tests added in this PR should demonstrate usage of the new APIs so that you don't have to wait on me to update the Sample App.

Yep I can take a look at the docs

Hey @bijington! Any chance you've got the docs PR opened?
I'd be great to merge this and publish a new release this week!

Hey @bijington! Any chance you've got the docs PR opened?
I'd be great to merge this and publish a new release this week!

Sorry it completely slipped my mind. I'm heading away for 2 weeks from tomorrow too so I won't be able to get it done before I return.


Setup CI for the repository

Most likely GitHub Actions will be used

Done in https://github.com/oleg-nenashev/FaaScinator/releases/tag/v1.0-alpha-1


fivetran_webhook triggers update when there are no changes and creates an error

Describe the bug
The first time running a webhook creation it succeeds, but if you run a second apply in tf cloud with no changes to the resource, sometimes it will fail.
When it fails, the second time it shows a change/update in the secret, although it was not changed:

If I delete the webhook via fivetran rest api and manually remove the resource from the tf state using tf state rm, and trigger a new run, all the time it works the first time.
My guess is that when the provider queries the webhook to check current state it returns:
"secret": "******",
and that doesn't match the actual secret string in the terraform file and triggers the update condition.
To Reproduce
resource "fivetran_webhook" "tf_webhook_prod" {
  type = "group"
  group_id = fivetran_group.fivetran_group.id
  url = "https://myurl.site.com"
  active = true
  events = [
    "sync_start",
    "sync_end",
    "create_connector",
    "pause_connector",
    "resume_connector",
    "delete_connector",
    "connection_successful",
    "connection_failure"
    ]
  secret = "<redacted>"
}

Expected behavior
If there are no changes in the webhook do not trigger an update.
Plugin version:
1.1.5

@adrian-montero-hkkd Fix included in latest version v1.1.11
If the fix doesn't work for you feel free to re-open the issue.

@beevital It seems the issue is reappearing, I had over 200+ webhooks setup and did no change to them and now all the webhooks show as "update" in plan although I did not change anything on them. So in the plan I get all the webhooks with this change:

And later get this result in the apply:

After I apply the plan and re-run a plan-apply cycle with no changes I get yet again this in the plan:

Just like if in the previous cycle that attribute was not changed in the webhook.


feat(ui): add --host option for vue ui

We sometimes develop on a remote server, which makes it impossible to access vue ui via IP, so add an option that allows the user to set the host

That's PR is already existing at #2568
Thanks!


fix bug: no response when account is wrong

Codecov Report

Merging #319 into release-rc4 will decrease coverage by 0.00%.
The diff coverage is 0.00%.

@@                Coverage Diff                @@
##             release-rc4     #319      +/-   ##
=================================================
- Coverage          21.49%   21.48%   -0.01%
  Complexity           388      388
=================================================
  Files                130      130
  Lines               5295     5296       +1
  Branches             409      407       -2
=================================================
  Hits                1138     1138
- Misses              4075     4076       +1
  Partials              82       82

Impacted Files
Coverage Δ
Complexity Δ

...ecross/network/rpc/handler/ResourceURIHandler.java
2.90% <0.00%> (-0.06%)
2.00 <0.00> (ø)

...ross/network/rpc/handler/XATransactionHandler.java
2.88% <0.00%> (-0.02%)
3.00 <0.00> (ø)

...a/com/webank/wecross/routine/task/TaskManager.java
0.00% <0.00%> (ø)
0.00% <0.00%> (ø%)

...webank/wecross/network/rpc/netty/RPCBootstrap.java
0.00% <0.00%> (ø)
0.00% <0.00%> (ø%)

...ava/com/webank/wecross/routine/htlc/AssetHTLC.java
4.37% <0.00%> (+0.02%)
3.00% <0.00%> (ø%)


Blog on PSP deprecation

The Comms team was requested to write up a blog post to alleviate concerns the community may have about the deprecation of Pod Security Policies. Here's the original request: https://kubernetes.slack.com/archives/C1TU9EB9S/p1611185981053300
It relates to this action taken: kubernetes/kubernetes#97171 (comment)
This pull request consists of the draft of said blog post.
cc @mrbobbytables @mbbroberg @chris-short
Fixes #26202

/sig contributor-experience
/area contributor-comms

/sig contributor-experience
/area contributor-comms

/lgtm
Leaving approval to a friend in docs!

/lgtm
Leaving approval to a friend in docs!

For realz this time
/lgtm

For realz this time
/lgtm

👋 everyone! Thank you for all your efforts on this!
My two cents on the draft as the Comms lead for 1.21 Release:

We are narrowing down the dates and are still in discussion for the final merge/publish date since alternatives for the deprecated feature are possibly going to be included in this cycle. Would request y'all to hold this till we have a confirmation. cc: @palnabarun @justaugustus
I'm not sure if a tech review has been requested from the sig-auth folks on this PR. @tabbysable would this be something you could look at once you have more bandwidth and there is more clarity around what is going to be included?

I haven't had a chance to dive into this, but explicit hold on this until we have the following groups (at a baseline) check-in:

Tech review (@kubernetes/sig-auth-pr-reviews @kubernetes/sig-security-leads)
Overall messaging (@kubernetes/sig-release-leads)

and further that those groups should be mentioned as authors/editors to further validate the path.
/hold
On a quick glance, I'd agree with @sftim's review, that a deprecation without a clear path forward is going to be scary for consumers.

/sig security release

With https://github.com/kubernetes/website/pull/26279#issuecomment-771933671 in mind
/lgtm cancel

I haven't had a chance to dive into this, but explicit hold on this until we have the following groups (at a baseline) check-in:
* Tech review (@kubernetes/sig-auth-pr-reviews @kubernetes/sig-security-leads)

* Overall messaging (@kubernetes/sig-release-leads)

and further that those groups should be mentioned as authors/editors to further validate the path.
/hold
On a quick glance, I'd agree with @sftim's review, that a deprecation without a clear path forward is going to be scary for consumers.

I think everyone needs to look at what the goal of this blog post is. Something is being deprecated (not many people understand that process in K8s). We're trying to get AHEAD of the programmatic notices and potential FUD that springs forth from them.
Clarity is important. But potentially more so, in this case, is timeliness. We don't have the full picture yet as a community from what I can tell so perhaps we should say we're figuring that out and there'll be more updates to come. But, the goal is to get this piece out the door well before the release.

Hey all, this could benefit from clarifying the scope a bit.
This article is intended to be an editorialized review of the deprecation notice by @kaslin, @chris-short, and me in collaboration and at the request of @mrbobbytables.
This article is not a comprehensive view of all opinions and expertise in our community on the PSP deprecation.
RE:
explicit hold on this until we have the following groups (at a baseline) check-in:

Tech review (@kubernetes/sig-auth-pr-reviews @kubernetes/sig-security-leads)
Overall messaging (@kubernetes/sig-release-leads)

and further that those groups should be mentioned as authors/editors to further validate the path.

Let's do what's necessary to make the scope clear as is.
Any other k8s contributors and leads can write subsequent blog posts about their technical overview or personal opinions on the best next steps.
Feedback is welcome within that scope but is otherwise best offered up as another article.

Oh one additional idea -- if anyone wants to be quoted in the article, that could be a streamlined way to get involved at this stage. Add a statement to this PR and we can work it in.

Hey all, this could benefit from clarifying the scope a bit.
This article is intended to be an editorialized review of the deprecation notice by @kaslin, @chris-short, and me in collaboration and at the request of @mrbobbytables.
This article is not a comprehensive view of all opinions and expertise in our community on the PSP deprecation.
RE:
explicit hold on this until we have the following groups (at a baseline) check-in:

Tech review (@kubernetes/sig-auth-pr-reviews @kubernetes/sig-security-leads)
Overall messaging (@kubernetes/sig-release-leads)

and further that those groups should be mentioned as authors/editors to further validate the path.

Let's do what's necessary to make the scope clear as is.
Any other k8s contributors and leads can write subsequent blog posts about their technical overview or personal opinions on the best next steps.
Feedback is welcome within that scope but is otherwise best offered up as another article.

To the best of my knowledge, I am sure most of us agree upon the scope. However, there are a couple of things that are uncertain given the timeline we're pushing this out.

In the last cycle, the dockershim news broke out pretty close to the release. With a blog announcing the deprecation two months prior, I believe it's also necessary for us to stage the content appropriately so we don't contribute to the very thing we're trying to avoid. We will be following up with a feature blog  (hopefully) covering the technicalities after the release, however one of the important things is to cover all possible initial questions that might arise.
Additionally, I believe @justaugustus had cc'ed in the folks from sig-auth & sig-security since we want to ensure we're not missing out anything major + the fact that they're currently working on alternatives to the deprecation. If they do get it in this cycle, we could include that in the blog as well.
The suggestion to include the sig names in the byline or having them quoted explicitly is for added reassurance. @sftim would be a better person to weigh in on which is the better option for this bit.

cc: @Pensu @palnabarun

Hello everyone! I've updated the title and conclusion and added in the specific version (1.25) when PSPs are expected to be deprecated. I will update the file name to something along the lines of date-PSP-Updates.md when a version of the text is approved. These updates better reflect the scope and objectives of this blog post.
@divya-mohan0209, @saschagrunert, @sftim your review would be appreciated.
cc: @justaugustus @Pensu @palnabarun

BTW @kaslin you don't need to put the article date in the filename as Hugo already puts it in the URL automatically.
Check out the current preview and you'll see that the path is /blog/2021/02/04/psp-update-2021/.

@kubernetes/sig-docs-blog-reviewers please also comment on this - your say on the article is important.

We had a good catch up call today. Everyone is in agreement that it's best to get a post out there that covers the change, but only if it has a meaningful call to action based on the timeline and desired outcomes.
We can come to a consensus on whether that looks like. Here are some options that come to mind:

No CTA (fastest timeline, positive impact to awareness, negative impact to certainty)
A link to the latest news on the release (fast timeline, positive impact to awareness)
A note on the replacement technology (potentially slow timeline, positive impact on certainty & awareness)
A recommendation on replacement (slowest timeline, most positive impact on certainty)

This list might help clarify the intended scope. We aimed for 2 with the goal that 3 and 4 would follow from release team efforts as certainty increased. cc @Pensu for the next steps and welcome other's thoughts

For better clarity @mbbroberg , what that potentially means for us in terms of next steps is this:

Get this out in the next couple of weeks with the caveat that it is as updated as possible
A subsequent note/update to this post or another separate post as and when we have more clarity.
A technical deep dive of the replacement alternative available (if it goes in, this cycle) as a feature blog, after the release.

Would that be a good set of next steps per what you described above? Or did I miss something?
Cc: @justaugustus @palnabarun

/hold huge edit incoming next day or two

/assign @tallclair

@kubernetes/sig-docs-pt-reviews fyi so we can keep this on radar for localization

Per @IanColdwater's comment and discussion with @tabbysable, SIG-Auth, and SIG-Security- we have decided to close this PR in favor of creating a new post to better explain PSP deprecation and its upcoming replacement solution.

Per @IanColdwater's comment and discussion with @tabbysable, SIG-Auth, and SIG-Security- we have decided to close this PR in favor of creating a new post to better explain PSP deprecation and its upcoming replacement solution.

@kaslin where is the new post?

@kaslin thanks for your patience on the review process for this article and for helping to kick off a really important discussion!

Per @IanColdwater's comment and discussion with @tabbysable, SIG-Auth, and SIG-Security- we have decided to close this PR in favor of creating a new post to better explain PSP deprecation and its upcoming replacement solution.

@kaslin where is the new post?

It's being written and a new PR will be created with it.

Aside: I looked back at https://kubernetes.io/blog/2020/08/21/moving-forward-from-beta/ and I noticed that that article mentions PodSecurityPolicy as a beta API that needed to change or graduate.

@kaslin  want to say thanks on the time and effort you put into this PR
We went with https://github.com/kubernetes/website/pull/27369 in the end, and to me the final article is better for it - but SIG Docs definitely appreciates the early engagement here.
It's a shame we didn't have the right message agreed earlier.

+1 what Tim said, @kaslin. I know I said this privately, but here it is for the record too: Thanks a ton for the work you put into helping with PSP deprecation comms.


Add instructions to build and test from source.

Codecov Report

Merging #346 (7e2cf6e) into main (404e426) will increase coverage by 0.04%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #346      +/-   ##
==========================================
+ Coverage   58.61%   58.65%   +0.04%
==========================================
  Files          44       44
  Lines        7092     7092
==========================================
+ Hits         4157     4160       +3
+ Misses       2363     2361       -2
+ Partials      572      571       -1

Impacted Files
Coverage Δ

rpc/json/service.go
65.64% <0.00%> (+1.84%)
:arrow_up:

Continue to review full report at Codecov.

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


visualizing soft attention

How can we visualize the soft attention similar to the Bengio et al. paper?

It's a seq2seq attention and it's not covered here. Refer to https://github.com/farizrahman4u/seq2seq for this.
This answer is based on this paper: https://arxiv.org/pdf/1409.0473.pdf


Fixed #1072

Fixed the Read More button color from blue to purple for night mode and also the slider color to purple

Great Work!


Command line arguments are process differently for HostProcess containers and Windows Server containers

Command line arguments are processed differently for HostProcess containers and Windows Server containers.
This makes it difficult to develop / test /deploy workingloads in HostProcess containers on Windows.
I wrote a small program that dumps the command line arguments pass to the program
package main

import (
	"fmt"
	"os"
)

func main() {
	fmt.Printf("Raw command line: %v", os.Args)
	fmt.Println()
}

When I deployed the follow pod to a Kubernetes cluster
apiVersion: v1
kind: Pod
metadata:
  name: print-cmd-args
spec:
  containers:
  - name: container
    image: mrosse3/print-cmd-args
    imagePullPolicy: Always
    command:
      - "print-cmd-args.exe"
      - "arg"
      - "arg with spaces"
      - 'arg with single quotes'
      - --cobra-style-command=foobar
      - --another-cobra-command="foobar"
      - --cobra-with-space="hello world"
  restartPolicy: Never
  nodeSelector:
    "kubernetes.io/os": windows

I see the following output
kubectl logs print-cmd-args
Raw command line: [print-cmd-args.exe arg arg with spaces
arg with single quotes --cobra-style-command=foobar
--another-cobra-command="foobar" --cobra-with-space="hello world"]

I then tried to deploy the same container as a HostProcess container
apiVersion: v1
kind: Pod
metadata:
  name: print-cmd-args-host-process
spec:
  securityContext:
    windowsOptions:
      hostProcess: true
      runAsUserName: "NT AUTHORITY\\SYSTEM"
  hostNetwork: true
  containers:
  - name: container
    image: mrosse3/print-cmd-args
    imagePullPolicy: Always
    command:
      - "print-cmd-args.exe"
      - "arg"
      - "arg with spaces"
      - 'arg with single quotes'
      - \"espaced quotes\"
      - --cobra-style-command=foobar
      - --another-cobra-command="foobar"
      - --cobra-with-space="hello world"
  restartPolicy: Never
  nodeSelector:
    "kubernetes.io/os": windows

and see this different output
kubectl logs print-cmd-args-host-process
Raw command line: [print-cmd-args.exe arg "arg with spaces"
"arg with single quotes" --cobra-style-command=foobar
--another-cobra-command=\ "foobar\" "--cobra-with-space=\" hello world\ ""]

Additionally - many workloads in the Kubernetes/CNCF ecosystem use https://github.com/spf13/cobra to parse command lines.
Adding quotes around the string (like how  --cobra-with-space="hello world"  goes to "--cobra-with-space=\" hello world\ "" for HostProcess containers breaks the processing logic for these workloads.

I meant to open this issue against github.com/microsoft/hcsshim and have created https://github.com/microsoft/hcsshim/issues/1199 to track this issue.


[sparse] implementing transposition rule for sparse.coo_matmat.

The transposition rule for sparse.coo_matmat is very straightforward, and the code is very similar to _coo_matvec_transpose, already implemented in jax.experimental.sparse.ops.py.

@googlebot I signed it!

Thanks for this! Just FYI, the transpose rule is a different sense of the word "transpose" than in the issue in #7533: transpose rules are used to implement reverse-mode autodiff (vjp). The reason I stopped before implementing it is because it became clear that batching was more important (e.g. you can't use jacfwd or jacrev to test autodiff without batching being implemented) so I changed my focus to developing the batched COO format (BCOO in that file) which now has batching & full autodiff implemented.
If you're interested in contributing this transpose rule, we'd also need to add a test that exercises it similar to coo_matvec's autodiff test here: https://github.com/google/jax/blob/38cb2b530aaecc74443de373f27a0ee143b6166d/tests/sparse_test.py#L319-L363

Thanks for this! Just FYI, the transpose rule is a different sense of the word "transpose" than in the issue in #7533: transpose rules are used to implement reverse-mode autodiff (vjp).

Yes, I'm aware, of this, I implemented this code because I was using jax.grad to perform reverse differentiation of a cost function that used a matrix-matrix multiplication like in #7533. I was able to work around the bug by simply transposing the whole expression twice, but for reverse differentiation I used this code I just contributed. I opened the pull request because I think it might be useful to more people.
I'll implement a few tests like the matvec counterparts, perhaps Monday.

If you're interested in contributing this transpose rule, we'd also need to add a test that exercises it similar to coo_matvec's autodiff test here:
https://github.com/google/jax/blob/38cb2b530aaecc74443de373f27a0ee143b6166d/tests/sparse_test.py#L319-L363
The "reverse mode" sections there are where the transpose rule will be called.

Added test coverage of the implemented code with minimal changes to the existing code. By what was written in the TODO comments I just updated the matvec_ad test to test matmul in a way that covers both coo_matvec and coo_matmat. If separate tests are wanted I can just change it. All updated tests passed here.

Looking good - you can address the test failures by modifying the tolerances.
Once you have that fixed, please squash your changes into a single commit (see https://jax.readthedocs.io/en/latest/contributing.html#single-change-commits-and-pull-requests)
Then we can get this in!

It looks like coo_matvec_transpose has been added in the meantime. Sorry we weren't able to merge this contribution!


Template: outcome dropdown adds extra outcome

New Template, where outcome dropdown and text input then another other dropdown. There seems to be a bug when the second dropdown value is selected.
initial view

after selecting Team B

need to try switching ids for 1 and 2 in the template


Add and Test Whisper ASR feature.

What we did on the cineast side of things is to have a method for decoding standard subtitle formats. This has the benefit that it does not matter where the subtitles come from. I would suggest doing something similar here. Subtitle generation using whisper or any other mechanism can then be a pre-processing step. Possibly we might want to have a pipeline that also takes care of such pre-processing, but that sounds more like a later addition.

What's the status on this? Is there a deadline for this issue?
To add my five cents here: While having an import functionality for subtitles certainly sounds like a nice idea, I ask myself if having a fully integrated Whisper ASR Analyser wouldn't be worthwhile anyway?

I'd like to discuss the status of this during our meeting on Friday.

Done! Closed based on feedback from weekly meeting.


Introduce reduce-thunk for loading remote document

This now allows for reloading a new context document, but still needs tests
cc @theduckylittle

one thing I notice is that the null island point remains in the map, even though the source and layer are gone

I suspect that's a consequence of the component not updating the sources/layers properly to handle a "dropped" or missing layer.  I'll check it out.

I implemented your requested changes @theduckylittle
I will add some tests now


Open with Live Server with unsupported files (not html/svg) should open files instead of root folder

Steps:

Select a file with an unsupported extension in the VS Code Explorer (e.g. test.xml)
Run command: Open with Live Server.

Expected result:

File is loaded live server / opened in my browser (Chrome) without inserted javascript. This would be a fallback mode: there is no live reload but I can still see my file in the virtual browser if I want to.

Actual result:

The root directory is opened in the browser.
Workaround: manually select the file to view it in the browser.

That sounds nice!


Pyinstaller Error

Hello,
When I create my own script as an executable file using a pyinstaller, the following problems occur:
FileNotFoundError : ../pyside_material/fonts
The following errors also occur:
Warning: /pyside_material/themes/dark_cyan.xml not expist!
It works normally in the local environment, but this error occurs when I create an executable file and run it.
I don't think it properly routing the file, so please check it.
Thank you.

@sihyeonlee Are you including correctly the data files with PyInstaller?

@YeisonCardona Yes, I including data files correctly.
And I solved this problem, the Python version problem.
There was a problem with version 3.7.9. In version 3.6.8, the problem was solved.
Maybe it was a problem on the Pyinstaller side.
Thanks.


[zh] Update networking.md

The file content/en/docs/concepts/cluster-administration/networking.mdhas been updated in this PR (https://github.com/kubernetes/website/pull/45464) ,so we will synchronize the localization.

/lgtm

/approve


[REQUEST] Atheros AR9001U-NG (AR9170)

I was hoping you might be able to add this chipset to your nifty little magisk module.
here is the info I could find on it:
https://wikidevi.com/wiki/Netgear_WN111v2
From what I can gather, this one uses the carl9170 driver for linux and therefore isn't covered by the atheros driver you currently have in the module.
Thank You!

Added. Update to v1.0.5 from Magisk Manager. Let me know how it goes and feel free to reopen if it doesn't work.


Feature: Add pr lint action

Description
Adding & Testing PR Lint Action

Hmm it looks like re running the check still pulls the old title. Reported it on the action's repo as a potential bug and will wait and see if there's a chance that this action may become more flexible.


Bugfix & webpack proxy config

Hotfix for frontend page runtime error ddue to routing.
Also added webpack proxy config, which allows you to communicate with backend server.
So now you should:

run npm start
run manage.py runserver
connect localhost:8080/login

to fully test current page.

Good. Then should we give forms to backend server with url "localhost:8000/api"?
Or just "/api/~"?

We can now only use relative addressing, so just use /api/.


Adding Mulitple Tasks

Hi
It would be great if we can have an option to add multiple tasks in a go. Please find the attached screenshot. We will have another list icon apart from add button on the board. Once you click on the list icon you can add the tasks line by line. Once you are done you can click save and all the tasks will be available on the board.

This feature is now available in the development branch. Click on the column title and choose "create tasks in bulk".


Create ID 4

Baker ID : 899
Node Adress : b38b65a46b7fa66b

Baker ID : 899
Node Adress : b38b65a46b7fa66b

rejected:ID4
reason:We cannot fully verify this submission. It looks like you are trying to submit ID4, however, it seems like we cannot find the transaction between your account and Concordium Test Account.

rejected:ID4
reason:We cannot fully verify this submission. It looks like you are trying to submit ID4, however, it seems like we cannot find the transaction between your account and Concordium Test Account.


XState + Redux + React

I needed to manage entities globally and I couldn't use GraphQL. So I thought Redux would be a good fit for holding global data, and then my statecharts could subscribe to the slice of global data they need.
I would like to share my draft implementation.
Step 1: create the global store
const reducer = (state, { type, entities }) => {
  switch (type) {
    case "RECEIVE_ENTITIES":
      return merge({}, state, { entities })

    default:
      return state
  }
}

const store = Redux.createStore(reducer)

Step 2: pass the store down
We want to support SSR, so we need to pass the store down through context:
const StoreContext = React.createContext()

<StoreContext.Provider value={store}>
  <App />
</StoreContext.Provider>

Step 3.1: create a request
createRequest is just a helper to create an invokable promise service.
const createRequest = request => async context => {
  const { data } = await axios(request)
  const { entities } = request.schema ? normalize(data, request.schema) : {}

  if (entities) context.store.dispatch({ type: "RECEIVE_ENTITIES", entities })

  return data
}

Usage:
const myMachine = Machine({
  states: {
    foo: {
      invoke: {
        src: createRequest({ method: "get", url: "/users" })
      }
    }
  }
})

const store = useContext(StoreContext)
const [state, send] = useMachine(myMachine, { context: { store } })

Step 3.2: create a subscription
We also want to subscribe to the global store and update our context in response to changes.
createSubscription is just a helper to create an invokable callback service.
const createSubscription = (selector, createEvent) => context => callback => {
  let prevState = context.store.getState()

  const send = () => {
    const nextState = context.store.getState()

    if (shallowEqual(prevState, nextState)) return

    callback(createEvent(selector(nextState)))

    prevState = nextState
  }

  send()

  const unsubscribe = context.store.subscribe(send)

  return () => unsubscribe()
}

Usage:
// global selector
const getUsers = state => state.entities.users

const myMachine = Machine({
  states: {
    foo: {
      invoke: [
        {
          // createSubscription accepts a selector and pass the result
          // to the second param, which creates an event that is sent to the machine
          // whenever the global store updates the relevant state slice returned
          // by the selector
          src: createSubscription(getUsers, users => ({
            type: "RECEIVE_USERS",
            users
          }))
        }
      ],
      on: {
        RECEIVE_USERS: {
          actions: assign({ users: (_, event) => event.users })
        }
      }
    }
  }
})

const store = useContext(StoreContext)
const [state, send] = useMachine(myMachine, { context: { store } })

Bonus Step:  multiple subscriptions
const myMachine = Machine({
  states: {
    foo: {
      invoke: [
        {
          src: createSubscription(getUsers, users => ({
            type: "RECEIVE_USERS",
            users
          }))
        },
        {
          src: createSubscription(getPosts, posts => ({
            type: "RECEIVE_POSTS",
            posts
          }))
        },
        invoke: {
          src: createRequest({ method: "get", url: "/me" }),
          onDone: {
            target: "bar",
            actions: "setCurrentUser"
          }
        }
      ],
      on: {
        RECEIVE_USERS: {
          actions: assign({ users: (_, event) => event.users })
        },
        RECEIVE_POSTS: {
          actions: assign({ posts: (_, event) => event. posts })
        }
      }
    }
  }
})

Redux: holds global state only, no side-effects.
Statecharts: handle all side-effects. The state is local but can subscribe to the global state using createSubscription.
What I didn't like about it is that I need to pass the store to the machine context. The reason is that I don't want to create the services/subscriptions at rendering time, I want to create them when defining my machine.
I mean, my view layer shouldn't know how to create requests and subscriptions, it's an implementation detail of my statecharts.
const store = useContext(StoreContext)

// Bad: here I'm kind of coupling my view to machine's implementation details
const myMachine = Machine({
  services: {
    loadUsers: () => createSubscription(store, getUsers, users => ({
      type: "RECEIVE_USERS",
      users
    }))
  }
})

// Good: my view is totally dumb
const [state, send] = useMachine(myMachine, { context: { store } })

Passing the store to machine context is a trade-off. The context should be serializable, but JSON.stringify(store) returns {} so it's not an issue.
The issue is that I'm kind of violating the Actor model, because instead of passing a message, I'm passing the store implementation to child services (createSubscription / createRequest). I don't know how to solve it without breaking SSR or coupling my view to machine's implementation details. Thoughts?

After talking to @davidkpiano in Gitter I think I found a possible solution (untested):
const RECEIVE_ENTITIES = "RECEIVE_ENTITIES"

const useMachine = machine => {
  const store = useContext(StoreContext)

  const [state, setState] = useState(() => machine.initialState)
  const [service] = useState(() => interpret(machine))

  useEffect(() => {
    service
      .onEvent(event => {
        if (event.type === RECEIVE_ENTITIES) store.dispatch(event)
      })
      .onTransition(state => setState(state))
      .start()

    const unsubscribe = store.subscribe(() =>
      service.send({
        type: "STORE_UPDATE",
        state: store.getState()
      })
    )

    return () => {
      unsubscribe()
      service.stop()
    }
  }, [])

  return useMemo(() => [state, service.send], [state])
}

const createSubscription = (selector, createEvent) => () => (
  callback,
  onEvent
) => {
  let prevState = null

  onEvent(event => {
    if (event.type !== "STORE_UPDATE") return

    const nextState = event.state

    if (shallowEqual(prevState, nextState)) return

    callback(createEvent(selector(nextState)))

    prevState = nextState
  })
}

const createRequest = request =>
  Machine({
    id: "request",
    context: { request },
    initial: "loading",
    states: {
      loading: {
        invoke: {
          src: async ({ request }) => {
            const { data } = await axios(request)
            return request.schema ? normalize(data, request.schema) : data
          },
          onDone: {
            target: "success",
            actions: sendParent((_, event) => ({
              type: RECEIVE_ENTITIES,
              entities: event.data.entities
            }))
          },
          onError: "failure"
        }
      },
      success: {
        type: "final",
        data: { data: (_, event) => event.data }
      },
      failure: {
        type: "final",
        data: { error: (_, event) => event.data }
      }
    }
  })

// Usage

const myMachine = Machine({
  states: {
    foo: {
      invoke: [
        {
          src: createSubscription(getUsers, users => ({
            type: "RECEIVE_USERS",
            users
          })),
          forward: true
        },
        {
          src: createRequest({ url: "/posts" })
        }
      ],
      on: {
        RECEIVE_USERS: {
          actions: assign({ users: (_, event) => event.users })
        }
      }
    }
  }
})

All this code is not necessary. @davidkpiano explained that XState should not know about Redux ("they're acquaintances, not friends").
To avoid coupling between XState and Redux the best solution is something like:
const { users } = useMappedState(state => ({ users: getUsers(state) }))
const dispatch = useDispatch()

const receiveEntities = entities => ({ type: "RECEIVE_ENTITIES", entities })

const [state, send] = useMachine(myMachine, {
  context: { users },
  actions: {
    mergeEntities: (context, event) => dispatch(receiveEntities(event.data.entities))
  }
})

@hnordt Thanks for the example. How do you keep redux data in sync with xstate? In your example, if users changes in the redux store, useMappedState will take care to return a new { users } value. So far so good. But the useMachine hook puts the machine in a ref that is initialized once, so it will have an out of date copy of the users at that point.

@stevemolitor I haven't thought this through extensively, but I would try out putting store into machine's context. IMHO there is little point of hiding it and it just removes the synchronization problem entirely, because you can always just use getState in your machine.

@Andarist

. It's also not that you have to use stored store directly, you can handle getting an actual slice of the state that you are interested in through selectors and such.

Yeah, here's a crude variation of @hnordt's example that passes a function to the context, that the machine can use to grab the latest users:
const getUsers = state => state.entities.users
const receiveEntities = entities => ({ type: "RECEIVE_ENTITIES", entities })

const { users } = useMappedState(state => ({ users: getUsers(state) }))
const selectUsers = () => users;
const dispatch = useDispatch()

const [state, send] = useMachine(myMachine, {
  context: {
    selectUsers,
  },
  actions: {
    mergeEntities: (context, event) => dispatch(receiveEntities(event.data.entities))
  }
})

The only changes are:
const selectUsers = () => users;

  //...
  const [state, send] = useMachine(myMachine, {
  context: {
    selectUsers,
//...

Smth like that works as well. What I want to say is that being pragmatic  is better than being dogmatic about it. Write code which is easier to maintain and reason about.

Any idea if on how to make this works using useInterpret? I tried it but it seems that the context does not update with the latest state

Any idea if on how to make this works using useInterpret? I tried it but it seems that the context does not update with the latest state

See here: https://dev.to/mpocock1/how-to-manage-global-state-with-xstate-and-react-3if5


Problems of Feature Extraction

After I type the code for FeatureExtraction step and I got an error.
"audioFeatureExtraction.py", line 536, in stFeatureExtraction
    N = len(signal)                                # total number of samples
TypeError: object of type 'numpy.float64' has no len()

It says that this type does not have len().
Do you know how to fix it?

@zzhang68 Could you provide us with the code you wrote plz

@AhmedHamedTN  Sorry, I finally found out that there was something wrong with my audio path written in my code. I've solved that issue now, thanks for your reply!


RTAndroid

Hi,
do you know RT Android ( https://git.embedded.rwth-aachen.de/rtandroid/ ) ?
Maybe it makes sense to add this to the android section.
I am sure that many people would like to try to run android don a raspberry.

open a pull request and i add ^_^

i think is usefull, create android section and add this project 👍


Handle vulkan driver missing error better

❯ .".\neovide (1).exe" --log                                                                                thread 'main' panicked at 'Failed to create window: SdlError("Failed loading vulkan-1.dll: The specified module could not be found.\r\n")', src\libcore\result.rs:1188:5                                                                        note: run with RUST_BACKTRACE=1 environment variable to display a backtrace.

Giving a more useful error seems smart

Swapped to opengl backend.


refactor: add OperationHandlerActor

Proposed changes
A preliminary OperationHandlerActor which still uses OperationHandler underneath, but receives command messages using the actor runtime.
This initial implementation shows the limitations of the entity store, which is now a part of CumulocityConverter, and other actors don't have any access to it. Because OperationHandlerActor needs some information about a registered entity (smartrest publish topic), I have added another MessageSource<(MqttMessage, EntityMetadata)> impl to the C8yMapperActor, but this obviously very hacky.
When moving more things out of CumulocityConverter into other actors, we'll need some organized way to access entity metadata (and entity store) from other actors. First thing that comes to mind is making an EntityStoreActor that manages the entity store and allows queries and updates to the store via incoming messages.
But we probably shouldn't allow all actors to modify the entity store freely, and we'll need to make sure what to do when entities are deleted or updated.
Types of changes

[ ] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[x] Improvement (general improvements like code refactoring that doesn't explicitly fix a bug or add any new functionality)
[ ] Documentation Update (if none of the other choices apply)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Paste Link to the issue

#2880

Checklist

[ ] I have read the CONTRIBUTING doc
[ ] I have signed the CLA (in all commits with git commit -s)
[ ] I ran cargo fmt as mentioned in CODING_GUIDELINES
[ ] I used cargo clippy as mentioned in CODING_GUIDELINES
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (if appropriate)

Further comments

Honestly speaking, I'm pretty much lost in the design level, what the roles of OperationHandlerActor and converter for the operations. What is the benefit to split off the handler to one actor.
From the code, I see still converter is responsible for accepting c8y's operation MQTT messages (JSON over MQTT topic) and converting and publishing the thin-edge command format message (te/../cmd/<cmd>/<id>). If parse error occurs, converter publishes the SmartREST c8y's executing and failed messages.
This means that the possible source of SmartREST operation status update messages are distributed in converter and OperationHandlerActor.
I was actually expecting that one actor is addressing all the operation related things, including the conversion from c8y JSON over MQTT  / SmartREST (only for custom operations) to thin-edge commands.
But the core issue is not this level. I believe we need a clear picture, how many components we will have, which component is connected to another components with directions. @albinsuresh made a proposal before, but it was a proposal. We don't have a design conclusion somewhere as reference of what you're doing (remark: "conclusion" not a stone, changeable during implementation, but overview of the refactoring). Without it, it's difficult to "review"...


⚠ Bofrost.fr has degraded performance

In 003fe2f, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1634 ms

Resolved: Bofrost.fr performance has improved in 58bd2f2 after 311 days, 45 minutes.


educatio.jsx

Hi, this repo is actually will be used for a college event, so will not be accepting PRs rn, however if no ones addresses the issue properly after the weekend, I will merge this after review


Automated intra-chain (couplings between qubits in a chain) coupling strength optimisation.

Current Problem
Optimising intra-chain couplings for performance currently needs to be bespoke.
Proposed Solution
Implement standardised way of optimising coupling strength in chains for performance.

One method that was suggested was proposed in https://arxiv.org/abs/1905.03291


Uncaught TypeError: $ is not a function es.array.join.js?a15b:14

Hi, i have some problem.
I use instruction to install: https://github.com/bigcommerce/checkout-js, don`t change any, step by step
OS: Windows, use node: 14, npm: 6.

Just replace these codes in webpack config file
Original code: (Line 174 - 177 & 301 - 304 )
exclude: [
      /\/node_modules\/core-js\//,
      /\/node_modules\/webpack\//,
    ],

Modified code:
exclude: [
        /\bcore-js\b/,
        /\bwebpack\b/,
      ],


feat: new minify option

Minify the generated manifest to save some bytes

I think we could simply have minify as the options name

I think we could simply have minify as the options name

Thanks

Thanks


No Endpoint to create user

My actions before raising this issue

[ X] Read/searched the docs
[ X] Searched past issues

I was trying to create users programmatically but there is no endpoint in swagger to do it.
Steps to Reproduce (for bugs)

Open CVAT Swagger
On User section, no POST to create user

Expected Behaviour
I expected a way to create new users
Current Behaviour
No way to create users
Possible Solution
Add endpoint to create users
Context
The need to create some fixed users in various environments
Your Environment


OpenNLX 0.8

Description
Add OpenNLX 0.8 it includes :

Entities support
Fix contexts de/serialization

Fixes # (issue)
#227
Type of change
Please delete options that are not relevant.

[ ] New feature (non-breaking change which adds functionality)
[x] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Other (non-breaking change which doesn't match an issue, Non-code related, ...)

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration
Test Configuration:

Yarn/npm/nodejs version:
OS version:
Chrome version:

Checklist:
Please remove lines that are not relevant

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have added tests that prove my fix is effective or that my feature works
[x] Any dependent changes have been merged and published in downstream modules

History graph is pretty weird for this PR, and most of the commit related are already on master. Did something wrong happen?

I think Github Desktop did some mess...

Should be ok now !


Report styling should respect user's time zone

Right now, when generating reports in non-UTC timezone, when you use "Today" in filter, it works as expected, but when "Today" is used in styling, it assumes UTC. This PR fixes that...
MiqExpression#evaluate - added optional time zone argument (so that .to_ruby doesn't have to default to UTC in this case)
MiqReport::Generator::Html#get_style_class gets time zone from #build_html_rows, passes it to exp.evaluate
https://bugzilla.redhat.com/show_bug.cgi?id=1196852

:+1: Cool find.

@dclarizio Can you also verify?


Environment Variables in .env File Not Taking Effect After Uploading via Onboarding ZIP

Description of the bug:
After onboarding an application using a ZIP file that contains a .env file, the environment variables defined within the .env file don't seem to have any effect on the application.

Reproduction Steps:

Prepare an application with a .env file containing specific environment variables.
ZIP the application and its related files.
Use the onboarding feature in AWS SaaS Boost to upload the ZIP file.
Launch the application and verify if the environment variables from the .env file are in effect.

What did you expect to happen?
I expected that after onboarding the application using the ZIP file, the environment variables defined in the .env file would be set and in effect when the application runs.

What actually happened?
The environment variables defined within the .env file were not recognized or applied to the application after onboarding.

Environment:

AWS Region  : us-east-1
AWS SaaS Boost Version : 2.2.3
Workload OS (Linux or Windows) : macOS

@EsamHussein Hi, just out of curiosity, Is the bug you mentioned related to the feature - https://github.com/awslabs/aws-saas-boost/discussions/465 ?
If possible, I would appreciate it if we could have a discussion about this so that the team can work towards a solution.
Thank you

@EsamHussein this is a misunderstanding of what the "config" file is for. It does not effect the system environment of the SaaS application, it is simply a mechanism to provide arbitrary data per-tenant to the underlying SaaS application. What that SaaS application does with the information contained in the "config" archive is up to the application.
As Tom mentions above, we do have a feature request for altering the system's execution environment with arbitrary key/values, but this is not in place today.
If you're leveraging an application framework such as the Spring Framework, you may be able to alter the environment at runtime after the container has launched. Other application frameworks may have similar features.
Here's one such example of downloading the "config" ZIP file during your application's initialization, and applying the contents of a *.properties file to the application's environment. https://github.com/brtrvn/saas-boost-examples


Mismatched package id

Brief description of your issue
I manually installed Windows 10 SDK version 2104, but winget shows the wrong package id(Microsoft.WindowsSDK.10.0.22621), and informs me to upgrade it.
Steps to reproduce

manually install Windows 10 SDK version 2104
winget list

Expected behavior
winget shows the correct package id.
Actual behavior
winget shows the wrong package id(Microsoft.WindowsSDK.10.0.22621), and informs me to upgrade it.
Environment
Windows: Windows.Server v10.0.20348.2031
System Architecture: X64

@ArchGuyWu which installer was used to install the Windows 10 SDK version 2104?

@ArchGuyWu which installer was used to install the Windows 10 SDK version 2104?

@denelon - This is mostly related to

microsoft/winget-pkgs#124465

and was caused by microsoft/winget-pkgs#123766 not having AppsAndFeaturesEntries. It should be resolved by

microsoft/winget-pkgs#124284

@ArchGuyWu which installer was used to install the Windows 10 SDK version 2104?

https://go.microsoft.com/fwlink/?linkid=2164145

@ArchGuyWu - - Are you still experiencing this issue with the latest release of the cli?

@ArchGuyWu - - Are you still experiencing this issue with the latest release of the cli?

Yes, but for Microsoft Visual C++ 2015-2022 Redistributable (x86).

We've released WinGet 1.8 with better support for "side-by-side" packages. Is this still happening with the redistributable?


JSON schemas of objects containing optional properties with default values are not well supported

It is common to evolve a schema by adding a new optional field for which we fallback to a default value if it is missing.
For instance, consider the following case class modeling a point:
case class Point(latitude: Double, longitude: Double)

A corresponding JSON schema would be the following:
val pointSchema: JsonSchema[Point] = (
  field[Double]("latitude") zip
  field[Double]("longitude")
).as[Point]

To evolve our data type to include the elevation above ground level (with a default value of 0), in Scala we just add a field with a default value:
case class Point(latitude: Double, longitude: Double, elevation: Double = 0)

A backward compatible JSON schema would have an optional elevation field. When the elevation is missing, we want to decode a Point with an elevation of 0. Such a schema can be defined as follows:
val pointSchema: JsonSchema[Point] = (
  field[Double]("latitude") zip
  field[Doubel]("longitude") zip
  optField[Double]("elevation").xmap(_.getOrElse(0))(Some(_))
).as[Point]

We might want to introduce a method for modeling a JSON schema with an optional field decoded to a default value:
final def optFieldWithDefault[A: JsonSchema](name: String, defaultValue: A, docs: Option[String] = None): Record[A] =
  optField(name, docs).xmap(_.getOrElse(defaultValue))(Some(_))

So that the above snippet can be simplified to:
val pointSchema: JsonSchema[Point] = (
  field[Double]("latitude") zip
  field[Doubel]("longitude") zip
  optFieldWithDefault[Double]("elevation", 0)
).as[Point]

Last, generic derivation could detect when a case class field has a default value and map it to an optFieldWithDefault in such a case. Libraries like Circe already derive such codecs.

I don't like the optFieldWithDefault name
Because the field is not optional, it's required but has a default value
maybe fieldWithDefault ?

The field is not optional in the case class, but it is optional in the JSON schema (if you omit it, it will be decoded as its default value).


chore(deps): update Node.js engines

[x] I have read the contribution documentation for this project.
[x] I agree to follow the code of conduct that this project follows, as appropriate.
[ ] The changes are appropriately documented (if applicable).
[ ] The changes have sufficient test coverage (if applicable).
[ ] The testsuite passes successfully on my local machine (if applicable).

Summarize your changes:
Update Node.js engines to latest maintained versions.
Use v18.3.0 to include util.parseArgs
Fix #3623

Hi @rtritto. This would be a breaking change, which we don't want as it would require a major version bump. The next time we do a major version bump (we try to minimize how many we do) we'll likely bump the minimum Node.js version as well.


client: support new authentication flow with access_token from webauth

Hey @solsticegamestudios / @WinterPhoenix,
I noticed your fork of the sadly abandoned github.com/ValvePython/steam, if you don't mind becoming the new de-facto maintainer, I'd be happy to share my work with you, and I hope we and the open-source community can help you keep it alive. I think a game studio is probably more reliable than random single developers.
Your fork includes the new webauth flow, I kept building on it to fix the Steam client persistent authentication: there's no more sentry, login_key, etc. the client auth is done using the refresh token from the webauth flow, used as an access token, which can be saved (e.g. to disk) and so brings back persistent authentication. Note that it requires the web authentication flow to request a client platform type so the JWT audience contains not just web but also client, so I updated that. I've also updated the recipes, i.e. the examples of how to use the library. And as this is a breaking change for the steam client API, I've bumped the version from 1.5.1 to 1.6.0.
I've separated the work into multiple commits with meaningful descriptions, to carry them and not lose them, please rebase (not merge, not squash).
Thanks!
PS: consider updating the README, so people can install from your fork directly: pip install "git+https://github.com/solsticegamestudios/steam@master#egg=steam[client]"

We'll maintain it as long as we use it, which is currently indefinitely since it's needed for GModCEFCodecFix. I merged a bunch of the pending PRs from the original repo as well to try and make a mostly fixed/up to date version of the project anyway.
README will be updated shortly

Great, thanks!


fix changelog URL in release tweet

The changelog URL in the auto release tweet was pointing at ash_phoenix, now correctly points at ash_admin

Pull Request Test Coverage Report for Build 1b3bae7f7f8dc389aff8f90dc074e3a0da3d0a51-PR-24

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 0.0%

Totals

Change from base Build ca32cb8de22254d3cf74d457230bbc21de50bcf4:
0.0%

Covered Lines:
0

Relevant Lines:
0

💛  - Coveralls


Backpack items & home space fix

Think we should use a separate column for backpack?

Think we should use a separate column for backpack?

In this case, items 1 - 6 will be on two lines 😆
I think I can add backpack icon to make it recognisable

Check a lone druid game to see if it works well there (three rows of items?)


Not loading in BUN

Bun has a builtin SQLite server. Following the instructions of node and Deno, the vertor0 loads and can see the log, bust vss0 doesn't, just stays there, no error no nothing. Any ideas?

I was able to get bun to work with the standard instructions here: https://alexgarcia.xyz/sqlite-vss/nodejs.html
import Database from 'bun:sqlite'
import * as sqlite_vss from 'sqlite-vss'

const db = new Database(':memory:')
sqlite_vss.load(db)

const version = db.query(`select vss_version();`).get()
console.log(version) // { 'vss_version()': 'v0.1.2' }

Hi,
I tried that before, but I tried it again just in case, but the same result. I'm using Mac OS and on Mac you have to use Database.setCustomSQLite to set the correct version of sqlite. My code is:
`import * as sqlite_vss from 'sqlite-vss'
import Database from 'bun:sqlite'
Database.setCustomSQLite("/usr/local/Cellar/sqlite/3.45.2/lib/libsqlite3.0.dylib");
const db = new Database('test.db')
sqlite_vss.load(db)
const version = db.query(select vss_version()).get()
console.log(version) // { 'vss_version()': 'v0.1.2' }`
As you can see, the code is almost the same except for the Mac part and the db. I don't know if it's a problem with the sqlite-vss, bun, Mac, sqlite or a skill issue, but as I don't get an error or anything and I don't know how to find out, but will keep trying.


update sytem stf project name

System stf git repo name/project has changed to STF,  to make it work on case-sensitive platforms we need to update the name accordingly. Otherwise we will get the following error
/home/runner/work/run-aqa/run-aqa/aqa-tests/system/common.xml:60: The directory /home/runner/work/run-aqa/run-aqa/aqa-tests/system/stf does not exist

For example it happened running github action on linux
https://github.com/adoptium/run-aqa/runs/3796240585?check_suite_focus=true
To fix it, the ${SYSTEMTEST_ROOT}/stf and ${SYSTEMTEST_DEST}/stf in https://github.com/adoptium/aqa-tests/blob/master/system/common.xml should be replaced by ${SYSTEMTEST_ROOT}/STF and ${SYSTEMTEST_DEST}/STF correspondingly. Note other stf in the comment or part of variable name or description should be keep as is. For example stf.build, stf.core, stf.sample, stf.load, stf_branch, etc.
For jenkins job "stf" in https://github.com/adoptium/aqa-tests/blob/master/buildenv/jenkins/JenkinsfileBase#L424 will also need to be updated to "STF".

Looks like https://github.com/adoptium/STF may need to update. I will take a look and if the change should be there I will transfer this PR to STF repo.

I will like to assign this to myself.

I would love this to be assigned to me.

It might be better to go the other way: update scripts to use a working directory based on the actual repo name (STF instead of stf).

@Lovelynchristian do you have any questions regarding this issue?

Thanks @xius666

Agreed https://github.com/adoptium/aqa-tests/issues/2949#issuecomment-945911127. There are multiple places in aqa-tests and aqa-systemtest are using as directoryVariable/stf/..... Setting a working directory based on the actual repo name (STF instead of stf) should make the job easier. For now we'd like this first be addressed.
Probably open a separate issue to improve this(Setting a working directory based on the actual repo name for STF. @Mesbah-Alam thoughts?


 When they do fail, they fail with a 500. We need to figure out what's happening there, fix it, and handle failures properly.
From brianjgeiger#101

 Current Runscope test:

Creates first node :white_check_mark:  Passing
Creates second node :white_check_mark:  Passing
Creates pointer from first node to second node :white_check_mark:  Passing
Deletes pointer :x:  Inconsistent 500 error

I'm getting the same thing.

I occasionally cannot create the pointer either, but it's much more likely to fail on the deleting the pointer. That being said, focus for now on trying to find out why deleting doesn't work sometimes. I will be very curious to see how this turns out.

Yes, I was having problems creating a pointer when the test was only 3) create pointer and 4) delete pointer.   If the pointer didn't delete, I'd manually delete it and try again, and create still wouldn't work.  You're right that there seems to be a problem there too.
But to focus on just the delete portion, I'm creating fresh nodes every time which keeps the create pointer from failing. It's very strange.

Yeah. It really shouldn't be weird. It could be a timing issue. It could be something to do with some kind of caching (which we shouldn't be doing, but maybe). It could be something to do with our storage. ¯_(ツ)_/¯

In case it's useful, here is the last 10 test results from Runscope. You can see if there are any patterns based on that.

A 500 error does suggest something unexpected happening on our end. To aid in debugging, are there any relevant server logs associated with these events? If so, where would I go to access them?

With quick hack script designed to mirror what the runscope tests are doing, did ~250 total runs on a single local development environment; 0 failures encountered.
https://gist.github.com/abought/0814e30017494ce5542c
Next will explore the effect of running multiple local server workers to see if this is something in the caching layer (eg modularodm).

Thank you.

So, if what's happening is what I think is happening, https://github.com/brianjgeiger/osf.io/issues/21#issuecomment-101862513 is relevant. Essentially, we need to associate the user's information with the toku proxy. This should cause requests from the same user to be in the same toku context. Right now, a new context is being made for each request.

Ran same mass-action script again locally, this time using 8 workers. Still no obvious failures, even when the pointer creation/deletion were scattered against different PIDs
cd osf.io/api/base
gunicorn --pythonpath=/Users/andyboughton/code/cos/osf.io -w 8 --access-logfile access.log --error-logfile errorog --log-level debug --access-logformat '"%(h)s %(l)s %(p)s %(u)s %(t)s "%(r)s" %(s)s %(b)s "%(f)s" "%(a)s"'   wsgi:application

"<IP_ADDRESS> - <29989> - [17/Jun/2015:13:46:02 -0500] "POST /v2/nodes/ HTTP/1.1" 201 868 "-" "python-requests/2.5.3 CPython/2.7.9 Darwin/14.3.0"
"<IP_ADDRESS> - <29988> - [17/Jun/2015:13:46:03 -0500] "PATCH /v2/nodes/euft9/ HTTP/1.1" 200 859 "-" "python-requests/2.5.3 CPython/2.7.9 Darwin/14.3.0"
"<IP_ADDRESS> - <29991> - [17/Jun/2015:13:46:03 -0500] "PUT /v2/nodes/euft9/ HTTP/1.1" 200 874 "-" "python-requests/2.5.3 CPython/2.7.9 Darwin/14.3.0"
"<IP_ADDRESS> - <29986> - [17/Jun/2015:13:46:04 -0500] "POST /v2/nodes/euft9/pointers/ HTTP/1.1" 201 218 "-" "python-requests/2.5.3 CPython/2.7.9 Darwin/14.3.0"
"<IP_ADDRESS> - <29989> - [17/Jun/2015:13:46:04 -0500] "DELETE /v2/nodes/euft9/pointers/4cu8f/ HTTP/1.1" 204 - "-" "python-requests/2.5.3 CPython/2.7.9 Darwin/14.3.0"

Harrumph. Such a pain when we can't reproduce locally.

I can reproduce it locally (at random trial #s) using the following commands:
cd osf.io/api/base
uwsgi --http :8000  --pythonpath=/Users/andyboughton/code/cos/osf.io -p 8  --logto=uwsgirun.log --wsgi-file wsgi.py

This works in dev mode- no need to toggle production settings or change anything other than how the app is run.
In 199 trials of the runscope-like test (see previous script), it failed ~29.5% of the time.
As a side note, I've confirmed that uwsgi is what we use in production and also works well locally, so this will be what tests are done with going forward. Although gunicorn does have a --worker-class option, setting it to gevent (instead of the default class "sync") caused the apiserver to lock up.
As we expected, the cause is an uncaught ValueError raised by rm_pointer. I'll now work on tracing the root cause in more detail.
Traceback:
File "/usr/local/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
  132.                     response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/usr/local/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/views/decorators/csrf.py" in wrapped_view
  58.         return view_func(*args, **kwargs)
File "/usr/local/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/views/generic/base.py" in view
  71.             return self.dispatch(request, *args, **kwargs)
File "/usr/local/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/rest_framework/views.py" in dispatch
  452.             response = self.handle_exception(exc)
File "/usr/local/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/rest_framework/views.py" in dispatch
  449.             response = handler(request, *args, **kwargs)
File "/usr/local/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/rest_framework/generics.py" in delete
  273.         return self.destroy(request, *args, **kwargs)
File "/usr/local/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/rest_framework/mixins.py" in destroy
  86.         self.perform_destroy(instance)
File "/Users/andyboughton/code/cos/osf.io/api/nodes/views.py" in perform_destroy
  231.         node.rm_pointer(pointer, auth)
File "/Users/andyboughton/code/cos/osf.io/website/project/model.py" in rm_pointer
  1251.             raise ValueError

Yay! And yes, that matches the rate I'm seeing via Runscope fairly well.

In 600 runs: 159 failures (26.5%).
The database caching hypothesis seems very plausible, based on two points from processing logs:

All of these failures occurred when the PID associated with pointer deletion had been used for at least one other node create/update task
None of these failures occurred when the same PID was used for pointer creation and deletion

This fits the theory that the deletion task is:

Reusing stale node data, and,
Fetching new pointer data from the database (eg when no pointer data was available yet)

Will coordinate with @lyndsysimon to investigate how caching is handled in DRF.
https://github.com/brianjgeiger/osf.io/issues/21#issuecomment-101862513

Ideally, we want to find out what the key is at https://github.com/CenterForOpenScience/modular-odm/blob/develop/modularodm/ext/concurrency.py#L39 at the same time as we find out the thread id (or worker id or whatever we might have access to at that point). What I was expecting from code inspection is that the key would change on each request, but on a single threaded system, the dummy req… oh, right.
So, each thread will, when it instantiates, create this dummy_request object. https://github.com/CenterForOpenScience/modular-odm/blob/develop/modularodm/ext/odmflask.py#L15 For whatever reason, I was thinking that happened on each request, but I apparently wasn't looking closely enough. This dummy request is being used as the proxy decorator to key the caching. So, since the dummy_request is only instantiated once, it means the key being used is the same per thread, which would do exactly what we are seeing.
Sooo, if we can pass another get_key function into the with_proxies decorator, and then key that to the django request object or something equally useful specific to the individual transaction, then we can take advantage of the caching. Alternately, we could instantiate a new DummyKey each time it's called, which would negate any caching at all, though I don't know details about how that may affect memory usage and the like. There may be some other alternatives.
I do not have a good sense yet for exactly how we pass in a new key. If we could work it into the transaction system for Toku, then we could at least keep transactions cached, which might split the difference on performance and should be roughly equivalent to doing it by request. Probably in the middleware is the place to set the get_key function, or creating an equivalent to odmflask.py for django.

Submitted #3303, a fix based on pushing a flask dummy request context in Django middleware. I've also updated https://gist.github.com/abought/0814e30017494ce5542c to include the latest versions of mass-request-generation code (used with uwsgi command described above) that I used for testing this bug locally.


Enable-WriteCore-feature-for-monitor

Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.ResourceManager.Monitor


Add official documentation

Refactor code to expose documentation properly
Switch from Google docstrings to numpy docstrings

Addresses #127


User opt-in to community features

Users should opt-in or opt-out of community features.

https://github.com/loftwah/linkarooie/pull/119


Pin sub-nav title a bit smaller

I think the type branch will probably address this and/or change the scale, but the new scale makes h1s larger (good). Except in a sub-nav it's a little too large, so we should add a font-size declaration to sub-nav-title.

Agreed. Addressing in type branch.

fixed in #508


[Task]: Cleanup XML of action WebService Available

What needs to happen?
Cleanup XML of action WebService Available
Issue Priority
Priority: 3
Issue Component
Component: Metadata

.take-issue


feat: add progress bar support

You need to run cargo fmt and fix errors reported by cargo clippy and also include a change file in .changes directory


POS-604: java interoperability for suspending function

Appending async to the Java functions  might incorrectly imply that Kotlin functions are not async. Perhaps I would append asFuture instead. Also we can add @JvmName("kotlinFunctionName") over Java functions, so that there only is a single function name when using the library from Java