Support TensorModule of distinct input/output types

Currently TensorModule is parametrized on a single type, so keeps the transformation within the same DType:
trait TensorModule[D <: DType] extends Module with (Tensor[D] => Tensor[D]):
  override def toString(): String = "TensorModule"

However there are modules where the input might be different than the output, such as nn.Embedding which accepts Int or Longs as input indexes, and the output could be any DTtype. So the trait would need to be parametrized like this:
trait TensorModule[D <: DType, D2 <: DType] extends Module with (Tensor[D] => Tensor[D2]):
 override def toString(): String = "TensorModule"

and the example implementation would be something like:
final class Embedding[ParamType <: FloatNN | ComplexNN: Default](
    numEmbeddings: Int,
    ...
) extends ...
    with TensorModule[IntNN, ParamType]:

    def apply(t: Tensor[IntNN]): Tensor[ParamType] = Tensor(nativeModule.forward(t.native))

This is doable, however there are useful operators on TensorModule, such as nn.Sequential, which expects an array of modules to chain. By having a single parameter the compile time validation is straightforward, but having distinct input/output types things seem to get a bit more complex to validate at compile time.
I will do some research on this on how to solve it.
Any pointers or ideas are more than welcome!

After doing a bit of research it seems like nn.Embedding module is an exception to the norm. There may be other types of pytorch modules that change dtype from input->output, but I am yet unaware of them (perhaps nn.Upsample but in practice I couldn't get it to change types)

That's good to know. One thing to keep in mind is that the included models are mostly basic building blocks, but I'm not sure how inputs/output structures and types look like with more complex custom modules. Another good reason to implement a few more architectures like transformers to get a better feeling for it. :)

1. An additional `TensorModuleDistinct[D <: DType, D2 <: DType]` must be added if we want to have `Embedding` module

:+1:

2. Regarding `nn.Sequential` - here are the options I can think of:
   a) It would have to accept a Tuple/HList of tensors in order to have all the proper type validations if we wanted to also accept these Modules
   b) Adding an extra optional parameter which allows for an optional initial module which can do type transformations
   c) Ignore this for now and let the user know that they should handle Embedding modules as an extra step when defining their model's layer structure

Would be interesting if it is possible to create an easy to use API for a)
One general thought regarding the parameter types of modules is that we need to consider their recursive structure and mutability. Here's what I said in another discussion about that:

In a PyTorch module (which are also mutable) you can convert the parameter types of all submodules recursively. Now if we have a val module MyModule[Float32] and call myModule.to(dtype=torch.float16), we break type-safety (I think).

So perhaps we need to provide an immutable module API and make sure to copy the module and all its submodules recursively to make this safe or perhaps you have another idea how to deal with it.


Debug line drawing

Easily drawing world space debug lines, which are only visible in debug/editor builds, is very useful.
Unity has Debug,DrawLine and Debug,DrawRay for this purpose. Will Godot have something similar?

This issue doesn't specify 2D or 3D, since 2D already supports immediate line drawing.

Closing in favor of https://github.com/godotengine/godot-proposals/issues/112, as feature proposals are now tracked on the Godot proposals repository.


fix(prometheus): remove k8s pod/node/service labels from collection

This PR removes some of the "k8s" features currently configured in our sample prometheus configuration. In particular, it is meant to remove the copying of pod and node labels to each time-series, as well as the relabelings that result in labels like kubernetes_namespace in the metrics.
For Istio metrics, the underlying issue is repeatedly worked around in the community (example talk - ~7:00). Kiali does not use the removed labels either. We already don't pod labels in our example operator config (https://github.com/istio/istio/blob/master/samples/addons/extras/prometheus-operator.yaml#L30-L31).
Pros:

Reduced overall dimensionality of metrics collected by Prometheus
Eliminates duplicative labeling

Some drawbacks:

Removing pod_name label allows for potential collision when IPs are reused
Loss of k8s information from envoy metrics

If we decide this is the right way to move forward, we should update our website docs around this as well.
Example Impact:
Before (34 labels):
istio_requests_total{
app="details",
connection_security_policy="mutual_tls",
destination_app="details",
destination_canonical_revision="v1",
destination_canonical_service="details",
destination_principal="spiffe://cluster.local/ns/bookinfo/sa/bookinfo-details",
destination_service="details.bookinfo.svc.cluster.local",
destination_service_name="details",
destination_service_namespace="bookinfo",
destination_version="v1",
destination_workload="details-v1",
destination_workload_namespace="bookinfo",
instance="<IP_ADDRESS>:15020",
istio_io_rev="default",
job="kubernetes-pods",
kubernetes_namespace="bookinfo",
kubernetes_pod_name="details-v1-5974b67c8-gzrkf",
pod_template_hash="5974b67c8",
reporter="destination",
request_protocol="http",
response_code="200",
response_flags="-",
security_istio_io_tlsMode="istio",
service_istio_io_canonical_name="details",
service_istio_io_canonical_revision="v1",
source_app="productpage",
source_canonical_revision="v1",
source_canonical_service="productpage",
source_principal="spiffe://cluster.local/ns/bookinfo/sa/bookinfo-productpage",
source_version="v1",
source_workload="productpage-v1",
source_workload_namespace="bookinfo",
version="v1"
}

After (24 labels):
istio_requests_total{
connection_security_policy="mutual_tls",
destination_app="details",
destination_canonical_revision="v1",
destination_canonical_service="details",
destination_principal="spiffe://cluster.local/ns/bookinfo/sa/bookinfo-details",
destination_service="details.bookinfo.svc.cluster.local",
destination_service_name="details",
destination_service_namespace="bookinfo",
destination_version="v1",
destination_workload="details-v1",
destination_workload_namespace="bookinfo",
instance="<IP_ADDRESS>:15020",
job="kubernetes-pods",
reporter="destination",
request_protocol="http",
response_code="200",
response_flags="-",
source_app="productpage",
source_canonical_revision="v1",
source_canonical_service="productpage",
source_principal="spiffe://cluster.local/ns/bookinfo/sa/bookinfo-productpage",
source_version="v1",
source_workload="productpage-v1",
source_workload_namespace="bookinfo"
}

After envoy metric:
envoy_server_uptime{instance="<IP_ADDRESS>:15020",job="kubernetes-pods"}

[ X ] Policies and Telemetry
/cc @jshaughn

@douglas-reid: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
a5eb0b0cbc28cc6addc016bf0ddc2bbd02ff9637
link
/test release-notes_istio

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

@douglas-reid: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
a5eb0b0cbc28cc6addc016bf0ddc2bbd02ff9637
link
/test release-notes_istio

integ-telemetry-k8s-tests_istio
a5eb0b0cbc28cc6addc016bf0ddc2bbd02ff9637
link
/test integ-telemetry-k8s-tests_istio

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

Made changes to the generation script. We need to decide if this should be in samples/ or just as a recommendation.

@douglas-reid: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-telemetry-k8s-tests_istio
a5eb0b0cbc28cc6addc016bf0ddc2bbd02ff9637
link
/test integ-telemetry-k8s-tests_istio

release-notes_istio
9b903a6b94861b7cf9bca17e9126cc452045deec
link
/test release-notes_istio

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

@douglas-reid: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-telemetry-k8s-tests_istio
a5eb0b0cbc28cc6addc016bf0ddc2bbd02ff9637
link
/test integ-telemetry-k8s-tests_istio

release-notes_istio
9b903a6b94861b7cf9bca17e9126cc452045deec
link
/test release-notes_istio

integ-security-k8s-tests_istio
9b903a6b94861b7cf9bca17e9126cc452045deec
link
/test integ-security-k8s-tests_istio

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

@douglas-reid: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
9b903a6b94861b7cf9bca17e9126cc452045deec
link
/test release-notes_istio

integ-security-k8s-tests_istio
9b903a6b94861b7cf9bca17e9126cc452045deec
link
/test integ-security-k8s-tests_istio

integ-telemetry-k8s-tests_istio
9b903a6b94861b7cf9bca17e9126cc452045deec
link
/test integ-telemetry-k8s-tests_istio

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

@douglas-reid: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
9b903a6b94861b7cf9bca17e9126cc452045deec
link
/test release-notes_istio

integ-security-k8s-tests_istio
9b903a6b94861b7cf9bca17e9126cc452045deec
link
/test integ-security-k8s-tests_istio

integ-telemetry-k8s-tests_istio
9b903a6b94861b7cf9bca17e9126cc452045deec
link
/test integ-telemetry-k8s-tests_istio

integ-helm-tests_istio
9b903a6b94861b7cf9bca17e9126cc452045deec
link
/test integ-helm-tests_istio

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

@howardjohn what did we end up deciding here?  should i just close this PR?


Make RatKing self-point stop servant attacks

So while testing some faction refactor code and how it meshes with our own systems, I discovered that the rat king has no way to stop his servants from attacking. I added some behavior here to fix that. I'm not sure if this should be another action or not, but I feel like pointing at yourself goes with the flow a little better.
Maybe this will help with rat king negotiations. One can hope.
:cl:

add: Rat kings can now point at themselves to stop their servants from attacking.

In ye olden days when I was writing the new NPC stuff it was very hard to get NPCs to stop attacking something because they only checked faction before they started to attack. Does this actually work now?

The point target is stored in NPCCombatTargetComponent.EngagingEnemies which is referenced by OnAddHostiles which is the handler for GetNearbyHostilesEvent which is fired by GetNearbyHostiles in the faction code, a Nyano-code addition.
NPCs, by default on upstream, have no means of understanding hostility outside of the concept of factions. You can punch a passive animal, and it will not care. This will likely change in the future, and we'll handle that when we get there, but this is where we are.

I should make the addendum that this probably won't work if the rat king's rats are set to hostile mode, but that should hopefully be obvious to players.


Laravel 9

Hi I was wondering if you could provide support for Laravel 9?

If you made a PR for this, I'd gladly accept it.  I don't use the package personally anymore, so I'm not sure what all is involved.  I suspect it's just bumping some versions.

I see you already upgraded to Laravel 9, many thanks!


python311Packages.recoll: 1.35.0 -> 1.36.1

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/project/recoll/versions.
meta.description for python311Packages.recoll is: A full-text search tool
meta.homepage for python311Packages.recoll is: https://www.lesbonscomptes.com/recoll/
meta.changelog for python311Packages.recoll is: https://www.lesbonscomptes.com/recoll/pages/release-1.36.1.html
Updates performed

Version update

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 1.36.1 with grep in /nix/store/rdik0706cx9liczmpzq92j1z3mdy6sjr-recoll-1.36.1
found 1.36.1 in filename of file in /nix/store/rdik0706cx9liczmpzq92j1z3mdy6sjr-recoll-1.36.1

Rebuild report (if merged into master) (click to expand)

3 total rebuild path(s)

3 package rebuild(s)

First fifty rebuilds by attrpath
python310Packages.recoll
python311Packages.recoll
recoll

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/rdik0706cx9liczmpzq92j1z3mdy6sjr-recoll-1.36.1 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python311Packages.recoll https://github.com/r-ryantm/nixpkgs/archive/0a37df0e7a9d0a612e64a17446b9ff3bdc015e54.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/0a37df0e7a9d0a612e64a17446b9ff3bdc015e54#python311Packages.recoll

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/rdik0706cx9liczmpzq92j1z3mdy6sjr-recoll-1.36.1
ls -la /nix/store/rdik0706cx9liczmpzq92j1z3mdy6sjr-recoll-1.36.1/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

2 packages built:

python310Packages.recoll
recoll (python311Packages.recoll)

Maintainer pings
cc @jcumming @ehmry for testing.

1.36.2 is out, please open a new PR.


dedicated package name for the online variant

You currently provide 2 versions of your music player: one without online functionalities (for the paranoid like me :speak_no_evil:), and one with online functionality (for everybody else) – which is a great idea! Unfortunately, both have the very same packageName. May I suggest to give the online variant its own unique packageName, e.g. com.atul.musicplayeronline?
Background: the combination of packageName and versionCode is a unique identifier. I've just added the offline variant to my repo (will become available here in about 2 hours from now). I'd like to add the online variant as well, but I can't – due to above mentioned restrictions: two apps cannot share the same packageName.
There's one more minor issue: your tag says v0.1 – but versionName is not 0.1, it's simply identical to versionCode. So you might wish to adjust either versionName or tag name with future releases :wink:
Thanks, and all the best for your project! I hope you like the idea of your app being made easier discoverable through my repo (and also easier to keep updated on the user's devices). If so, be welcome using this badge to link there from your Readme. If you wish, your app could also be brought to F-Droid.orgs own repo, which has more prestige (and higher trust) than mine.

The thought of changing the package name crossed my mind too everytime during testing.
I will change the package name and the version code too. And yes it can be on your repo

Great, thanks! Please drop me a note here when the changed version is available and I'll pick it up then.

I have updated the version codes and made a new release, let me know any more changes or anything you would like to see in upcoming updates.  😊

Looks perfect, thanks! And you've even integrated the badge for both, wonderful!! The new one should lead to the expected details in about 3.5h from now with the next sync. I've also pulled the update for the offline version manually (as my updater would fail, thinking "I have 1, which is higher than 0.2"). Future updates should work fine, and be pulled within 24h of your attaching them to new tags.

PS: If you wish, I can make a PR sending you the metadata in Fastlane structure. That way you could control description, screenshots etc. and changes would be pulled along with the updates. Just let me know if you're interested.

Yeah sure! Something new to learn

OK, give me a few minutes then. Fastlane originally is a "one-for-all", but you essentially have 2 apps in 1 repo (different flavors, which devs usually use Triple-T for). I find Triple-T structures a bit confusing. Fastlane now also can be used for multiple flavors; you'd need to tell then how you want to deal with that (or move the pieces as you wish and let me know). My updater can deal with any location for Fastlane, so you're basically free to choose. F-Droid itself currently does not.
Going by your build.gradle I have no idea how you separate the flavors, so I leave splitting to you. My PR will hence use the default location for Fastlane, and target the offline variant. We can go on from there later.

😅 I never planned the two versions, just created separate branches and developed each the way along. I never edit the build files, learnt Android development on my own so that's that.
I will try my best to keep it organized.

Ah, well… My updater cannot deal with branches (because Github API misses some pieces for that). So we leave it with one fastlane tree fro now, differences are minimal anyway. Images are even symlinked on my end: so what I pull for lite, also appears for online. Just the full_description.txt has an additional line for the online variant (for the online feature). If you want the same description for both (and point out the difference "inline"), that would work fine as well.

PS: For formatting of full_description.txt, find some hints in my wiki. If you only plan for my repo, Markdown or HTML both work fine. If you plan for F-Droid or Play, I'd recommend what that wiki page calls "Markdown lite", as that should work for all 3 (not sure how Play deals with links, though).
Enjoy! And feel free to ask if you think you're stuck with Fastlane details. As long as it's about the structures, I guess I can help; I just never used their binaries, so I cannot help with that part (which will probably not be needed anyway).
Thanks for merging that fast! I've enabled pulling Fastlane for the "lite" variant for now. Let me know when we shall adjust something for the "online" variant, concerning summary/description.

I will let you know about it

I was thinking of having this app on f-droid as well

No prob if the inclusion criteria are met :smiley: My above link concerning formatting covers that. When you think you're ready, just go ahead and open a Request For Packaging.

Congrats to the F-Droid listing, @AP-Atul! I see the Readme now carries both badges – so I take it you want me to keep your app in my repo? As it's a reproducible build at F-Droid, I don't see an issue with that and will mark it "keep" if you confirm – or remove it it you prefer that :wink:

Just keep it

Marked for keep then. Thanks!

Just wondering: There was no APK for the "online" variant anymore since v0.3 – is it discontinued? Shall I remove it from my repo?

I think it's better to call it discontinued. Good to remove

OK, then I'll remove it, thanks!


13:20:09.016 T:123145302839296  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
13:20:10.116 T:123145302839296  NOTICE: Alexa Helper -->   -- Score 72% too low for "The Definitive Collection"
13:20:10.410 T:123145302839296   ERROR: /Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/fuzzywuzzy/fuzz.py:35: UserWarning: Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning
13:20:11.028 T:123145302839296  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
13:20:11.259 T:123145302839296  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
13:20:11.259 T:123145302839296  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
13:20:16.139 T:123145302839296  NOTICE: Alexa Helper -->   -- Score 59% too low for "The Final Countdown"
13:20:16.636 T:123145302839296   ERROR: /Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/fuzzywuzzy/fuzz.py:35: UserWarning: Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning
13:20:16.884 T:123145302839296  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
13:20:16.903 T:123145302839296  NOTICE: Alexa Helper --> Simple match on direct comparison
13:21:01.510 T:123145303990272   ERROR: /Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/fuzzywuzzy/fuzz.py:35: UserWarning: Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning
13:21:01.540 T:123145303990272  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
13:21:01.543 T:123145303990272  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
13:21:01.543 T:123145303990272  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
13:21:01.583 T:123145303990272  NOTICE: Alexa Helper -->   -- Score 51% too low for "The Imitation Game"
13:21:01.889 T:123145303990272   ERROR: /Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/fuzzywuzzy/fuzz.py:35: UserWarning: Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning
13:21:01.900 T:123145303990272 WARNING: Alexa Helper --> Traceback (most recent call last):
                                              File "/Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/main.py", line 237, in mainlisting
                                              File "/Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/videoplaylists.py", line 16, in search
                                              File "/Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/utils.py", line 47, in process_method_on_list
13:21:01.900 T:123145303990272   ERROR: Alexa Helper --> Exception in main ! --> 'NoneType' object is not iterable
13:21:01.900 T:123145303990272  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
13:21:01.901 T:123145303990272  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
13:21:01.901 T:123145303990272  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
13:21:02.311 T:123145303990272   ERROR: /Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/fuzzywuzzy/fuzz.py:35: UserWarning: Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning
13:21:02.326 T:123145303990272 WARNING: Alexa Helper --> Traceback (most recent call last):
                                              File "/Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/main.py", line 237, in mainlisting
                                              File "/Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/musicplaylists.py", line 16, in search
                                              File "/Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/utils.py", line 47, in process_method_on_list
13:21:02.326 T:123145303990272   ERROR: Alexa Helper --> Exception in main ! --> 'NoneType' object is not iterable
13:21:02.326 T:123145303990272  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
13:21:02.327 T:123145303990272  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
13:21:02.327 T:123145303990272  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
13:21:02.630 T:123145303990272   ERROR: /Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/fuzzywuzzy/fuzz.py:35: UserWarning: Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning
13:21:02.657 T:123145303990272  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
13:21:02.658 T:123145303990272  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
13:21:02.658 T:123145303990272  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
13:21:02.676 T:123145303990272  NOTICE: Alexa Helper -->   -- Score 47% too low for "The Man in the High Castle"
13:21:02.995 T:123145303990272   ERROR: /Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/fuzzywuzzy/fuzz.py:35: UserWarning: Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning
13:21:03.360 T:123145303990272  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
13:21:03.415 T:123145303990272  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
13:21:03.415 T:123145303990272  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
13:21:04.526 T:123145303990272  NOTICE: Alexa Helper -->   -- Score 72% too low for "The Definitive Collection"
13:21:04.814 T:123145303990272   ERROR: /Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/fuzzywuzzy/fuzz.py:35: UserWarning: Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning
13:21:05.440 T:123145303990272  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
13:21:05.683 T:123145303990272  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
13:21:05.683 T:123145303990272  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
13:21:10.688 T:123145303990272  NOTICE: Alexa Helper -->   -- Score 59% too low for "The Final Countdown"
13:21:11.111 T:123145309356032   ERROR: /Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/fuzzywuzzy/fuzz.py:35: UserWarning: Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning
13:21:11.357 T:123145309356032  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
13:21:11.380 T:123145309356032  NOTICE: Alexa Helper --> Simple match on direct comparison

<EMAIL_ADDRESS>- helper script with a compiled python-Levenshtein
It would successfully play the first song of the album with every attempt with timing out
Cloudwatch log:
2017-06-12T12:10:54.024Z Playing the immaculate collection
2017-06-12T12:10:54.039Z ['video', 'audio']
2017-06-12T12:10:54.039Z Find and Play: "the immaculate collection"
2017-06-12T12:10:54.039Z Pre-match with slot: Movie
2017-06-12T12:10:54.039Z Searching content types:
2017-06-12T12:10:54.039Z Searching for movie "the immaculate collection"
2017-06-12T12:10:54.039Z Sending request to ...
2017-06-12T12:10:55.347Z ['video', 'audio']
2017-06-12T12:10:55.347Z Find and Play: "the immaculate collection"
2017-06-12T12:10:55.347Z Searching content types:
2017-06-12T12:10:55.347Z Searching for video playlist "the immaculate collection"
2017-06-12T12:10:55.347Z Sending request to ...
2017-06-12T12:10:55.675Z Searching for audio playlist "the immaculate collection"
2017-06-12T12:10:55.675Z Sending request to ...
2017-06-12T12:10:55.984Z Searching for show "the immaculate collection"
2017-06-12T12:10:55.984Z Sending request to ...
2017-06-12T12:10:56.378Z Searching for artist "the immaculate collection"
2017-06-12T12:10:56.379Z Sending request to ...
2017-06-12T12:10:58.353Z Searching for song "the immaculate collection"
2017-06-12T12:10:58.353Z Sending request to ...
2017-06-12T12:11:04.668Z Searching for album "the immaculate collection"
2017-06-12T12:11:04.668Z Sending request to ...
2017-06-12T12:11:05.321Z Located album "The Immaculate Collection"
2017-06-12T12:11:05.321Z Sending request to ...

2017-06-12T12:11:05.439Z REPORT: Duration: 1367.49 ms	Billed Duration: 1400 ms 	Memory Size: 512 MB	Max Memory Used: 45 MB

2017-06-12T12:11:05.530Z Sending request to ...
2017-06-12T12:11:05.742Z Sending request to ...
2017-06-12T12:11:05.958Z Adding 17 items to the queue...
2017-06-12T12:11:05.958Z Sending request to ...
2017-06-12T12:11:06.259Z Sending request to ...

2017-06-12T12:11:07.419Z REPORT: Duration: 13757.44 ms	Billed Duration: 13800 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

2017-06-12T12:12:26.463Z ['video', 'audio']
2017-06-12T12:12:26.463Z Find and Play: "the immaculate collection"
2017-06-12T12:12:26.463Z Playing the immaculate collection
2017-06-12T12:12:26.463Z Pre-match with slot: Movie
2017-06-12T12:12:26.463Z Searching content types:
2017-06-12T12:12:26.463Z Searching for movie "the immaculate collection"
2017-06-12T12:12:26.463Z Sending request to ...
2017-06-12T12:12:26.940Z ['video', 'audio']
2017-06-12T12:12:26.940Z Find and Play: "the immaculate collection"
2017-06-12T12:12:26.940Z Searching content types:
2017-06-12T12:12:26.959Z Searching for video playlist "the immaculate collection"
2017-06-12T12:12:26.959Z Sending request to ...
2017-06-12T12:12:27.262Z Searching for audio playlist "the immaculate collection"
2017-06-12T12:12:27.262Z Sending request to ...
2017-06-12T12:12:27.591Z Searching for show "the immaculate collection"
2017-06-12T12:12:27.591Z Sending request to ...
2017-06-12T12:12:27.964Z Searching for artist "the immaculate collection"
2017-06-12T12:12:27.964Z Sending request to ...
2017-06-12T12:12:29.858Z Searching for song "the immaculate collection"
2017-06-12T12:12:29.858Z Sending request to ...
2017-06-12T12:12:36.073Z Searching for album "the immaculate collection"
2017-06-12T12:12:36.073Z Sending request to ...

2017-06-12T12:12:36.626Z REPORT: Duration: 407.18 ms	Billed Duration: 500 ms 	Memory Size: 512 MB	Max Memory Used: 49 MB

2017-06-12T12:12:36.851Z Located album "The Immaculate Collection"
2017-06-12T12:12:36.851Z Sending request to ...
2017-06-12T12:12:37.048Z Sending request to ...
2017-06-12T12:12:37.266Z Sending request to ...
2017-06-12T12:12:37.495Z Adding 17 items to the queue...
2017-06-12T12:12:37.495Z Sending request to ...
2017-06-12T12:12:37.801Z Sending request to ...

2017-06-12T12:12:38.137Z REPORT: Duration: 12074.91 ms	Billed Duration: 12100 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

2017-06-12T12:13:09.068Z ['video', 'audio']
2017-06-12T12:13:09.068Z Find and Play: "the immaculate collection"
2017-06-12T12:13:09.068Z Playing the immaculate collection
2017-06-12T12:13:09.068Z Pre-match with slot: Movie
2017-06-12T12:13:09.068Z Searching content types:
2017-06-12T12:13:09.068Z Searching for movie "the immaculate collection"
2017-06-12T12:13:09.068Z Sending request to ...
2017-06-12T12:13:09.516Z ['video', 'audio']
2017-06-12T12:13:09.516Z Find and Play: "the immaculate collection"
2017-06-12T12:13:09.516Z Searching content types:
2017-06-12T12:13:09.516Z Searching for video playlist "the immaculate collection"
2017-06-12T12:13:09.516Z Sending request to ...
2017-06-12T12:13:09.838Z Searching for audio playlist "the immaculate collection"
2017-06-12T12:13:09.838Z Sending request to ...
2017-06-12T12:13:10.180Z Searching for show "the immaculate collection"
2017-06-12T12:13:10.180Z Sending request to ...
2017-06-12T12:13:10.532Z Searching for artist "the immaculate collection"
2017-06-12T12:13:10.532Z Sending request to ...
2017-06-12T12:13:12.379Z Searching for song "the immaculate collection"
2017-06-12T12:13:12.399Z Sending request to ...
2017-06-12T12:13:18.536Z Searching for album "the immaculate collection"
2017-06-12T12:13:18.536Z Sending request to ...

2017-06-12T12:13:19.167Z REPORT: Duration: 376.73 ms	Billed Duration: 400 ms 	Memory Size: 512 MB	Max Memory Used: 49 MB

2017-06-12T12:13:19.223Z Located album "The Immaculate Collection"
2017-06-12T12:13:19.223Z Sending request to ...
2017-06-12T12:13:19.446Z Sending request to ...
2017-06-12T12:13:19.685Z Sending request to ...
2017-06-12T12:13:19.896Z Adding 17 items to the queue...
2017-06-12T12:13:19.897Z Sending request to ...
2017-06-12T12:13:20.186Z Sending request to ...

2017-06-12T12:13:20.539Z REPORT: Duration: 11878.90 ms	Billed Duration: 11900 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

2017-06-12T12:13:33.590Z Find and Play: "immaculate collection"
2017-06-12T12:13:33.590Z Playing immaculate collection
2017-06-12T12:13:33.590Z Pre-match with slot: Movie
2017-06-12T12:13:33.599Z ['video', 'audio']
2017-06-12T12:13:33.599Z Searching content types:
2017-06-12T12:13:33.599Z Searching for movie "immaculate collection"
2017-06-12T12:13:33.599Z Sending request to ...
2017-06-12T12:13:34.027Z ['video', 'audio']
2017-06-12T12:13:34.027Z Find and Play: "immaculate collection"
2017-06-12T12:13:34.027Z Searching content types:
2017-06-12T12:13:34.027Z Searching for video playlist "immaculate collection"
2017-06-12T12:13:34.027Z Sending request to ...
2017-06-12T12:13:34.350Z Searching for audio playlist "immaculate collection"
2017-06-12T12:13:34.350Z Sending request to ...
2017-06-12T12:13:34.677Z Searching for show "immaculate collection"
2017-06-12T12:13:34.677Z Sending request to ...
2017-06-12T12:13:35.022Z Searching for artist "immaculate collection"
2017-06-12T12:13:35.022Z Sending request to ...
2017-06-12T12:13:36.786Z Searching for song "immaculate collection"
2017-06-12T12:13:36.786Z Sending request to ...
2017-06-12T12:13:42.531Z Searching for album "immaculate collection"
2017-06-12T12:13:42.531Z Sending request to ...

2017-06-12T12:13:43.739Z REPORT: Duration: 419.00 ms	Billed Duration: 500 ms 	Memory Size: 512 MB	Max Memory Used: 49 MB

2017-06-12T12:13:43.924Z Located album "The Immaculate Collection"
2017-06-12T12:13:43.924Z Sending request to ...
2017-06-12T12:13:44.157Z Sending request to ...
2017-06-12T12:13:44.392Z Sending request to ...
2017-06-12T12:13:44.623Z Adding 17 items to the queue...
2017-06-12T12:13:44.623Z Sending request to ...
2017-06-12T12:13:44.922Z Sending request to ...

2017-06-12T12:13:45.279Z REPORT: Duration: 12087.72 ms	Billed Duration: 12100 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

2017-06-12T12:14:34.459Z Playing the immaculate collection
2017-06-12T12:14:34.479Z ['video', 'audio']
2017-06-12T12:14:34.479Z Find and Play: "the immaculate collection"
2017-06-12T12:14:34.479Z Pre-match with slot: Movie
2017-06-12T12:14:34.479Z Searching content types:
2017-06-12T12:14:34.479Z Searching for movie "the immaculate collection"
2017-06-12T12:14:34.479Z Sending request to ...
2017-06-12T12:14:34.892Z ['video', 'audio']
2017-06-12T12:14:34.892Z Find and Play: "the immaculate collection"
2017-06-12T12:14:34.892Z Searching content types:
2017-06-12T12:14:34.892Z Searching for video playlist "the immaculate collection"
2017-06-12T12:14:34.892Z Sending request to ...
2017-06-12T12:14:35.201Z Searching for audio playlist "the immaculate collection"
2017-06-12T12:14:35.201Z Sending request to ...
2017-06-12T12:14:35.533Z Searching for show "the immaculate collection"
2017-06-12T12:14:35.533Z Sending request to ...
2017-06-12T12:14:35.872Z Searching for artist "the immaculate collection"
2017-06-12T12:14:35.872Z Sending request to ...
2017-06-12T12:14:37.743Z Searching for song "the immaculate collection"
2017-06-12T12:14:37.743Z Sending request to ...

2017-06-12T12:14:38.619Z REPORT: Duration: 17.72 ms	Billed Duration: 100 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

2017-06-12T12:14:44.007Z Searching for album "the immaculate collection"
2017-06-12T12:14:44.007Z Sending request to ...

2017-06-12T12:14:44.539Z REPORT: Duration: 361.39 ms	Billed Duration: 400 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

2017-06-12T12:14:44.639Z Located album "The Immaculate Collection"
2017-06-12T12:14:44.639Z Sending request to ...
2017-06-12T12:14:44.851Z Sending request to ...
2017-06-12T12:14:45.090Z Sending request to ...
2017-06-12T12:14:45.299Z Adding 17 items to the queue...
2017-06-12T12:14:45.299Z Sending request to ...
2017-06-12T12:14:45.645Z Sending request to ...

2017-06-12T12:14:46.039Z REPORT: Duration: 12001.25 ms	Billed Duration: 12100 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

2017-06-12T12:16:04.159Z ['video', 'audio']
2017-06-12T12:16:04.159Z Find and Play: "the immaculate collection"
2017-06-12T12:16:04.159Z Playing the immaculate collection
2017-06-12T12:16:04.159Z Pre-match with slot: Movie
2017-06-12T12:16:04.159Z Searching content types:
2017-06-12T12:16:04.159Z Searching for movie "the immaculate collection"
2017-06-12T12:16:04.159Z Sending request to ...
2017-06-12T12:16:04.630Z ['video', 'audio']
2017-06-12T12:16:04.630Z Find and Play: "the immaculate collection"
2017-06-12T12:16:04.630Z Searching content types:
2017-06-12T12:16:04.630Z Searching for video playlist "the immaculate collection"
2017-06-12T12:16:04.630Z Sending request to ...
2017-06-12T12:16:04.958Z Searching for audio playlist "the immaculate collection"
2017-06-12T12:16:04.958Z Sending request to ...
2017-06-12T12:16:05.269Z Searching for show "the immaculate collection"
2017-06-12T12:16:05.270Z Sending request to ...
2017-06-12T12:16:05.625Z Searching for artist "the immaculate collection"
2017-06-12T12:16:05.625Z Sending request to ...
2017-06-12T12:16:07.479Z Searching for song "the immaculate collection"
2017-06-12T12:16:07.479Z Sending request to ...
2017-06-12T12:16:13.696Z Searching for album "the immaculate collection"
2017-06-12T12:16:13.696Z Sending request to ...

2017-06-12T12:16:14.202Z REPORT: Duration: 409.31 ms	Billed Duration: 500 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

2017-06-12T12:16:14.327Z Located album "The Immaculate Collection"
2017-06-12T12:16:14.327Z Sending request to ...
2017-06-12T12:16:14.525Z Sending request to ...
2017-06-12T12:16:14.722Z Sending request to ...
2017-06-12T12:16:14.934Z Adding 17 items to the queue...
2017-06-12T12:16:14.934Z Sending request to ...
2017-06-12T12:16:15.223Z Sending request to ...

2017-06-12T12:16:15.548Z REPORT: Duration: 11854.13 ms	Billed Duration: 11900 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

2017-06-12T12:18:38.939Z REPORT: Duration: 0.50 ms	Billed Duration: 100 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

2017-06-12T12:20:03.600Z Playing the immaculate collection
2017-06-12T12:20:03.619Z ['video', 'audio']
2017-06-12T12:20:03.619Z Find and Play: "the immaculate collection"
2017-06-12T12:20:03.619Z Pre-match with slot: Movie
2017-06-12T12:20:03.619Z Searching content types:
2017-06-12T12:20:03.619Z Searching for movie "the immaculate collection"
2017-06-12T12:20:03.619Z Sending request to ...
2017-06-12T12:20:04.132Z ['video', 'audio']
2017-06-12T12:20:04.132Z Find and Play: "the immaculate collection"
2017-06-12T12:20:04.132Z Searching content types:
2017-06-12T12:20:04.132Z Searching for video playlist "the immaculate collection"
2017-06-12T12:20:04.132Z Sending request to ...
2017-06-12T12:20:04.453Z Searching for audio playlist "the immaculate collection"
2017-06-12T12:20:04.453Z Sending request to ...
2017-06-12T12:20:04.766Z Searching for show "the immaculate collection"
2017-06-12T12:20:04.766Z Sending request to ...
2017-06-12T12:20:05.115Z Searching for artist "the immaculate collection"
2017-06-12T12:20:05.115Z Sending request to ...
2017-06-12T12:20:06.944Z Searching for song "the immaculate collection"
2017-06-12T12:20:06.944Z Sending request to ...
2017-06-12T12:20:12.966Z Searching for album "the immaculate collection"
2017-06-12T12:20:12.966Z Sending request to ...

2017-06-12T12:20:13.652Z REPORT: Duration: 421.33 ms	Billed Duration: 500 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

2017-06-12T12:20:13.746Z Located album "The Immaculate Collection"
2017-06-12T12:20:13.746Z Sending request to ...
2017-06-12T12:20:14.102Z Sending request to ...
2017-06-12T12:20:14.332Z Sending request to ...
2017-06-12T12:20:14.533Z Adding 17 items to the queue...
2017-06-12T12:20:14.533Z Sending request to ...
2017-06-12T12:20:14.813Z Sending request to ...

2017-06-12T12:20:15.119Z REPORT: Duration: 11908.49 ms	Billed Duration: 12000 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

2017-06-12T12:20:57.998Z Playing the immaculate collection
2017-06-12T12:20:57.999Z ['video', 'audio']
2017-06-12T12:20:57.999Z Find and Play: "the immaculate collection"
2017-06-12T12:20:57.999Z Pre-match with slot: Movie
2017-06-12T12:20:57.999Z Searching content types:
2017-06-12T12:20:57.999Z Searching for movie "the immaculate collection"
2017-06-12T12:20:57.999Z Sending request to ...
2017-06-12T12:20:58.408Z ['video', 'audio']
2017-06-12T12:20:58.408Z Find and Play: "the immaculate collection"
2017-06-12T12:20:58.408Z Searching content types:
2017-06-12T12:20:58.408Z Searching for video playlist "the immaculate collection"
2017-06-12T12:20:58.408Z Sending request to ...
2017-06-12T12:20:58.724Z Searching for audio playlist "the immaculate collection"
2017-06-12T12:20:58.724Z Sending request to ...
2017-06-12T12:20:59.151Z Searching for show "the immaculate collection"
2017-06-12T12:20:59.151Z Sending request to ...
2017-06-12T12:20:59.500Z Searching for artist "the immaculate collection"
2017-06-12T12:20:59.500Z Sending request to ...
2017-06-12T12:21:01.353Z Searching for song "the immaculate collection"
2017-06-12T12:21:01.353Z Sending request to ...
2017-06-12T12:21:07.515Z Searching for album "the immaculate collection"
2017-06-12T12:21:07.515Z Sending request to ...

2017-06-12T12:21:08.216Z REPORT: Duration: 354.56 ms	Billed Duration: 400 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

2017-06-12T12:21:08.221Z Located album "The Immaculate Collection"
2017-06-12T12:21:08.221Z Sending request to ...
2017-06-12T12:21:08.412Z Sending request to ...
2017-06-12T12:21:08.629Z Sending request to ...
2017-06-12T12:21:08.847Z Adding 17 items to the queue...
2017-06-12T12:21:08.859Z Sending request to ...
2017-06-12T12:21:09.248Z Sending request to ...

2017-06-12T12:21:09.578Z REPORT: Duration: 11976.85 ms	Billed Duration: 12000 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

2017-06-12T12:46:08.768Z ['video', 'audio']
2017-06-12T12:46:08.768Z Find and Play: "the immaculate collection"
2017-06-12T12:46:08.768Z Playing the immaculate collection
2017-06-12T12:46:08.768Z Pre-match with slot: Movie
2017-06-12T12:46:08.768Z Searching content types:
2017-06-12T12:46:08.768Z Searching for movie "the immaculate collection"
2017-06-12T12:46:08.768Z Sending request to ...
2017-06-12T12:46:09.446Z ['video', 'audio']
2017-06-12T12:46:09.446Z Find and Play: "the immaculate collection"
2017-06-12T12:46:09.446Z Searching content types:
2017-06-12T12:46:09.446Z Searching for video playlist "the immaculate collection"
2017-06-12T12:46:09.446Z Sending request to ...
2017-06-12T12:46:09.756Z Searching for audio playlist "the immaculate collection"
2017-06-12T12:46:09.756Z Sending request to ...
2017-06-12T12:46:10.075Z Searching for show "the immaculate collection"
2017-06-12T12:46:10.075Z Sending request to ...
2017-06-12T12:46:10.420Z Searching for artist "the immaculate collection"
2017-06-12T12:46:10.421Z Sending request to ...
2017-06-12T12:46:12.453Z Searching for song "the immaculate collection"
2017-06-12T12:46:12.453Z Sending request to ...
2017-06-12T12:46:18.932Z Searching for album "the immaculate collection"
2017-06-12T12:46:18.932Z Sending request to ...

2017-06-12T12:46:18.939Z REPORT: Duration: 411.50 ms	Billed Duration: 500 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

2017-06-12T12:46:19.562Z Located album "The Immaculate Collection"
2017-06-12T12:46:19.562Z Sending request to ...
2017-06-12T12:46:19.763Z Sending request to ...
2017-06-12T12:46:20.000Z Sending request to ...
2017-06-12T12:46:20.201Z Adding 17 items to the queue...
2017-06-12T12:46:20.201Z Sending request to ...
2017-06-12T12:46:20.525Z Sending request to ...

2017-06-12T12:46:20.899Z REPORT: Duration: 12516.61 ms	Billed Duration: 12600 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

2017-06-12T12:46:39.139Z REPORT: Duration: 0.39 ms	Billed Duration: 100 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

2017-06-12T12:47:50.984Z Playing the immaculate collection
2017-06-12T12:47:50.999Z ['video', 'audio']
2017-06-12T12:47:50.999Z Find and Play: "the immaculate collection"
2017-06-12T12:47:50.999Z Pre-match with slot: Movie
2017-06-12T12:47:50.999Z Searching content types:
2017-06-12T12:47:50.999Z Searching for movie "the immaculate collection"
2017-06-12T12:47:50.999Z Sending request to ...
2017-06-12T12:47:51.519Z ['video', 'audio']
2017-06-12T12:47:51.519Z Find and Play: "the immaculate collection"
2017-06-12T12:47:51.519Z Searching content types:
2017-06-12T12:47:51.519Z Searching for video playlist "the immaculate collection"
2017-06-12T12:47:51.519Z Sending request to ...
2017-06-12T12:47:51.836Z Searching for audio playlist "the immaculate collection"
2017-06-12T12:47:51.836Z Sending request to ...
2017-06-12T12:47:52.154Z Searching for show "the immaculate collection"
2017-06-12T12:47:52.154Z Sending request to ...
2017-06-12T12:47:52.500Z Searching for artist "the immaculate collection"
2017-06-12T12:47:52.500Z Sending request to ...
2017-06-12T12:47:54.443Z Searching for song "the immaculate collection"
2017-06-12T12:47:54.443Z Sending request to ...
2017-06-12T12:48:00.953Z Searching for album "the immaculate collection"
2017-06-12T12:48:00.953Z Sending request to ...

2017-06-12T12:48:01.287Z REPORT: Duration: 461.97 ms	Billed Duration: 500 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

2017-06-12T12:48:01.545Z Located album "The Immaculate Collection"
2017-06-12T12:48:01.545Z Sending request to ...
2017-06-12T12:48:01.748Z Sending request to ...
2017-06-12T12:48:02.053Z Sending request to ...
2017-06-12T12:48:02.268Z Sending request to ...
2017-06-12T12:48:02.467Z Adding 17 items to the queue...
2017-06-12T12:48:02.467Z Sending request to ...
2017-06-12T12:48:02.786Z Sending request to ...

2017-06-12T12:48:03.119Z REPORT: Duration: 12470.72 ms	Billed Duration: 12500 ms 	Memory Size: 512 MB	Max Memory Used: 50 MB

kodi.log

14:17:04.597 T:123145305587712  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
14:17:04.599 T:123145305587712  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
14:17:04.599 T:123145305587712  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
14:17:04.609 T:123145305587712  NOTICE: Alexa Helper -->   -- Score 51% too low for "The Imitation Game"
14:17:04.925 T:123145304526848 WARNING: Alexa Helper --> Traceback (most recent call last):
                                              File "/Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/main.py", line 237, in mainlisting
                                                all_items = getattr(media_class, action)()
                                              File "/Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/videoplaylists.py", line 16, in search
                                                return process_method_on_list(self.process_videoplaylist, all_items)
                                              File "/Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/utils.py", line 47, in process_method_on_list
                                                all_items = [method_to_run(item) for item in items]
                                            TypeError: 'NoneType' object is not iterable
14:17:04.925 T:123145304526848   ERROR: Alexa Helper --> Exception in main ! --> 'NoneType' object is not iterable
14:17:04.925 T:123145304526848  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
14:17:04.926 T:123145304526848  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
14:17:04.926 T:123145304526848  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
14:17:05.268 T:123145305587712 WARNING: Alexa Helper --> Traceback (most recent call last):
                                              File "/Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/main.py", line 237, in mainlisting
                                                all_items = getattr(media_class, action)()
                                              File "/Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/musicplaylists.py", line 16, in search
                                                return process_method_on_list(self.process_musicplaylist, all_items)
                                              File "/Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/utils.py", line 47, in process_method_on_list
                                                all_items = [method_to_run(item) for item in items]
                                            TypeError: 'NoneType' object is not iterable
14:17:05.268 T:123145305587712   ERROR: Alexa Helper --> Exception in main ! --> 'NoneType' object is not iterable
14:17:05.268 T:123145305587712  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
14:17:05.269 T:123145305587712  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
14:17:05.269 T:123145305587712  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
14:17:05.602 T:123145304526848  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
14:17:05.604 T:123145304526848  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
14:17:05.604 T:123145304526848  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
14:17:05.608 T:123145304526848  NOTICE: Alexa Helper -->   -- Score 48% too low for "The Last Man on Earth"
14:17:06.295 T:123145303453696  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
14:17:06.353 T:123145303453696  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
14:17:06.353 T:123145303453696  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
14:17:06.586 T:123145303453696  NOTICE: Alexa Helper -->   -- Score 72% too low for "The Definitive Collection"
14:17:07.549 T:123145302839296  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
14:17:07.792 T:123145302839296  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
14:17:07.792 T:123145302839296  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
14:17:08.798 T:123145302839296  NOTICE: Alexa Helper -->   -- Score 59% too low for "The Final Countdown"
14:17:09.392 T:123145302839296  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
14:17:09.416 T:123145302839296  NOTICE: Alexa Helper --> Simple match on direct comparison
14:17:10.777 T:123145315872768  NOTICE: Stream All The Sources: Service: Playback started
14:17:18.380 T:123145315872768  NOTICE: Stream All The Sources: Service: Playback Stopped
14:17:41.226 T:123145305051136  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
14:17:41.228 T:123145305051136  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
14:17:41.228 T:123145305051136  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
14:17:41.238 T:123145305051136  NOTICE: Alexa Helper -->   -- Score 51% too low for "The Imitation Game"
14:17:41.553 T:123145303990272 WARNING: Alexa Helper --> Traceback (most recent call last):
                                              File "/Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/main.py", line 237, in mainlisting
                                                all_items = getattr(media_class, action)()
                                              File "/Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/videoplaylists.py", line 16, in search
                                                return process_method_on_list(self.process_videoplaylist, all_items)
                                              File "/Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/utils.py", line 47, in process_method_on_list
                                                all_items = [method_to_run(item) for item in items]
                                            TypeError: 'NoneType' object is not iterable
14:17:41.553 T:123145303990272   ERROR: Alexa Helper --> Exception in main ! --> 'NoneType' object is not iterable
14:17:41.554 T:123145303990272  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
14:17:41.554 T:123145303990272  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
14:17:41.554 T:123145303990272  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
14:17:41.872 T:123145305051136 WARNING: Alexa Helper --> Traceback (most recent call last):
                                              File "/Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/main.py", line 237, in mainlisting
                                                all_items = getattr(media_class, action)()
                                              File "/Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/musicplaylists.py", line 16, in search
                                                return process_method_on_list(self.process_musicplaylist, all_items)
                                              File "/Users/sam/Library/Application Support/Kodi/addons/script.alexa.helper/resources/lib/utils.py", line 47, in process_method_on_list
                                                all_items = [method_to_run(item) for item in items]
                                            TypeError: 'NoneType' object is not iterable
14:17:41.872 T:123145305051136   ERROR: Alexa Helper --> Exception in main ! --> 'NoneType' object is not iterable
14:17:41.872 T:123145305051136  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
14:17:41.873 T:123145305051136  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
14:17:41.873 T:123145305051136  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
14:17:42.207 T:123145303990272  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
14:17:42.208 T:123145303990272  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
14:17:42.208 T:123145303990272  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
14:17:42.212 T:123145303990272  NOTICE: Alexa Helper -->   -- Score 48% too low for "The Last Man on Earth"
14:17:43.012 T:123145305051136  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
14:17:43.071 T:123145305051136  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
14:17:43.071 T:123145305051136  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
14:17:43.304 T:123145305051136  NOTICE: Alexa Helper -->   -- Score 72% too low for "The Definitive Collection"
14:17:44.260 T:123145303990272  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
14:17:44.509 T:123145303990272  NOTICE: Alexa Helper --> Simple match failed, trying fuzzy match...
14:17:44.509 T:123145303990272  NOTICE: Alexa Helper -->   heard: "the immaculate collection"
14:17:45.483 T:123145303990272  NOTICE: Alexa Helper -->   -- Score 59% too low for "The Final Countdown"
14:17:46.058 T:123145305051136  NOTICE: Alexa Helper --> Trying to match: the immaculate collection
14:17:46.079 T:123145305051136  NOTICE: Alexa Helper --> Simple match on direct comparison
14:17:47.422 T:123145315872768  NOTICE: Stream All The Sources: Service: Playback started

So, for @digiltd, the average (over 5 calls) time to locate without the addon was 10.78 seconds.

So, for @digiltd, the average (over 10 calls) time to locate with the addon was 10.54 seconds.

Given the results, this one doesn't appear to help any, and can be much worse depending on the machine on which Kodi is running.  Merging #12 instead.
Thanks for helping me test this everyone.

Fair enough, I am not suggesting you open it again and I am really not looking to get into a big debate, the addon doesn't benefit me as I don't use Kodi for music. But just some thoughts as a result of this little bit of testing
I can't deny what the logs say, but actual wait was between the blue ring spinning and the first song playing was only 5 seconds. Whilst without the addon it would play, the Skill always timed out, and whilst it is not tiny, my library is not that large either. I only have your number to compare but there is a 14k difference.
I also know my internet is pretty decent for the uk, when in London I was getting 70Mbps (20Mbps up) which based on a quick search is 2x the urban average. I moved to the coast two months ago and am now a "rural" user and here my 56mbps is 3x the average.
I just tested using a network conditioner and set it to the average UK speeds (30d 4u)
10.9.9
Duration: 30002.22 ms	Billed Duration: 30000 ms Memory Size: 512 MB	Max Memory Used: 60 MB
Duration: 30003.67 ms	Billed Duration: 30000 ms Memory Size: 512 MB	Max Memory Used: 64 MB

The lambda instance timed out after 30 seconds and stopped trying, though that limit can be changed.
10.9.8 with python-Levenshtein
Duration: 9106.11 ms	Billed Duration: 9200 ms Memory Size: 512 MB	Max Memory Used: 45 MB
Duration: 7294.72 ms	Billed Duration: 7300 ms Memory Size: 512 MB	Max Memory Used: 49 MB
Duration: 7451.49 ms	Billed Duration: 7500 ms Memory Size: 512 MB	Max Memory Used: 49 MB

10.9.8 without python-Levenshtein
Duration: 7416.20 ms	Billed Duration: 7500 ms Memory Size: 512 MB	Max Memory Used: 50 MB
Duration: 7022.52 ms	Billed Duration: 7100 ms Memory Size: 512 MB	Max Memory Used: 50 MB

I can't deny what the logs say, but actual wait was between the blue ring spinning and the first song playing was only 5 seconds.

This simply isn't possible -- the skill does not transmit the command to start playing until after it has added the items to the playlist.  In the logs you showed before, the time from the beginning of the match operation to the end of it (just before adding the items to the playlist) was ~10 seconds for both methods.
What you're suggesting is that somehow Kodi is playing the song before it has even gotten the command to do so.  The skill is not multi-threaded -- it depends on the matching operation to complete before it adds anything to the playlist, and after that, it transmits the command to start the playlist.
I understand that the skill is bandwidth-limited.  I don't consider this a problem though -- if you don't have the connection to support the generic commands, you can simply opt to not use them.  That's precisely why I added so many layers:  play, play x by y, listen to x, listen to x by y, etc.  It's also why I made the generic commands configurable with the deep_search option.
I also understand that the addon performed well on your Mac mini.  However, a lot of people -- myself included for our bedroom -- use underpowered embedded devices on which to run Kodi.  On my Fire TV Stick, it took over two minutes for a generic play album command.  Further, even on my Mac mini, it slowed the operation down by a factor of 10 vs the previous setup.  On my server (local to the skill), it slowed it down by a factor of 3.
I think consistent performance is better than potentially having rotten performance on certain clients.  The way we've chosen allows the user to optimize in many ways:

Pay for faster upload speeds if applicable,
Host the skill somewhere with more resources available,
Disable deep_search, and/or
Utilize the more specific commands.

With the addon, the first two options there are not possible.
The only other thing that can be done for bandwidth-limited users is to simply forgo fuzzy matching entirely and just substring match in filter params.  This can be added, but do bear in mind that we added the fuzzy matching for a reason:  simple substring matches will miss a lot.


Update sbt-jmh to 0.3.7

Updates pl.project13.scala:sbt-jmh from 0.2.27 to 0.3.7.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "pl.project13.scala", artifactId = "sbt-jmh" } ]

labels: semver-minor

Codecov Report

Merging #47 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #47   +/-   ##
=======================================
  Coverage   82.71%   82.71%
=======================================
  Files          13       13
  Lines         376      376
  Branches       15       16    +1
=======================================
  Hits          311      311
  Misses         65       65

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 93b7b6c...f920fee. Read the comment docs.


When remilia crits, they keep their momentum and also do not change sprite

Description
It's been a bug for a while, surprised no one has made an issue before (that i could find).
Reproduction
 Fly in any direction as remilia, go crit, body continues going in that direction and the sprite doesn't change, remilia finally dies and the sprite changes as intended
Screenshots

Additional context

This effects mice too, sometimes they'll be in a movement animation and in crit.


Do not display button if fullscreen API is not supported

Also see https://wordpress.org/support/topic/fullscreen-button-not-working-v5
Some devices may not allow fullscreen mode at all. In this case the fullscreen button should not be displayed as it won't work anyway.

Closed with aaa69ca6447d373435b07ba7a094c2bc6be24178


Check if device/app exists before removing it, when using application/device.remove()

…/device.remove()

Why does this PR has a description: …/device.remove()?

Can you link the CLI issues that this PR is intended to fix?

Can you add unit tests for this as well? You can stub pine.get to return an empty array, which will make remove() fail. Testing only the case when the resource doesn't exist should be enough.

So, something like this?
		describe '.remove()', ->

			describe 'given an invalid application', ->

				beforeEach ->
					@pineGetStub = m.sinon.stub(pine, 'get')
					@pineGetStub.returns(Promise.resolve([]))

				afterEach ->
					@pineGetStub.restore()

				it 'should reject with not found error', ->
					promise = application.remove('MyApp')
					m.chai.expect(promise).to.be.rejectedWith(errors.ResinApplicationNotFound)

@mkorakakis Looks good!


Macro not found in Macro placement

Hi,
I am trying to place a already hardened Macro in my design. I have followed the manual_macro_placement_test design example and am encountering the following error
Traceback (most recent call last):
File "/openLANE_flow/scripts/manual_macro_place.py", line 119, in
assert not macros, ("Macros not found:", macros)
AssertionError: ('Macros not found:', {'ram': ['5590', '168230', 'N']})
If anyone can guide me what is the problem why OpenLane can not find the Macro although the .lef and .gds files are there in Macros folder
Kindly guide
regards

environment survey must and re-producible tar file must to debug the issue

@microSharjeel  are you trying built-in example or your own design?
If its your own design mean need re-producible tar file needed with environment survey

Thanks for reply
I am attaching the tar of the design since the design is my own.  I am just trying to place macros of an SRAM in my design the .gds and .lef files are there in the Macros
regard
iob_sp_ram_be.zip
s

Are you able to reproduce the error
best regards

@microSharjeel
Refer built-in example manual_macro_placement design from openlane, it will work.
From your config.tcl dont use both DIE_AREA and FP_CORE_UTIL...
Next src/*.v add (blackbox) before module definition. Format available in built-in example

Test cases should be packaged with https://github.com/The-OpenROAD-Project/OpenLane/blob/master/docs/source/using_or_issue.md

This issue is resolved by following the built in example of OpenLane

hello If possible, I would like to know how you finally solved this problem? I encountered the same error as you, also using openRAM using sky water130. Thanks a million!!

@0616ygh  can we connect on google hangout etc I hope it will be mutually beneficial

@microSharjeel I'm sorry but I don't have a google hangout...I'm a student from China mainland, we don't have hangout QAQ
My question is that after I read Openlane->design->manual_macro_placement_test, I find I don't have :
set ::env(MACRO_PLACEMENT_CFG) $::env(DESIGN_DIR)/macro_placement.cfg
set ::env(BASE_SDC_FILE) $::env(DESIGN_DIR)/base.sdc
these 2 files can't be found in OpenRAM package...

@microSharjeel Thx for your reply~

@microSharjeel,
I am getting errors after Resizer Timing Optimizations
"[ERROR GRT-0029] Pin ctrlStorage/dout0[0] does not have geometries below the max routing layer (met5).
"
Description of my design:-
"Designing a controller with custom size memory.SRAM Memory was created with the help of OpenRAM "


Make MSPileupTasks log more friendly and start tracking already existent rules

Fixes #11544
Status
ready
Description
First commit is simply making the MSPileupTasks logs more readable, such that we can easily spot which task is being executed and also have a clear message of what should have happened if the service was not in dry-run mode.
Second commit actually tracks relevant rules created by an external source, appending them to the pileup document ruleIds field.
Third commit actually fixes a bug in the inactiveTask, which would delete a Rucio rule even in dryRun mode(!) This is a BLOCKER for deploying and populating this service in production. We can deploy it, but not create any pileup configuration in the database.
Is it backward compatible (if not, which system it affects?)
YES
Related PRs
None
External dependencies / deployment changes
None

This has just been tested and it is working like a charm. We actually need to have these changes in before we can actually start debugging and fixing other unexpected behaviors that I have seen in my dev cluster (when pointing to Rucio prod).

Thanks Valentin. I just squashed the last 2 commits together. Unit test that failed before is actually unstable and unrelated to these changes. Once jenkins come back, I am going to merge it.


Plugins not loaded when requested to be network activated

They are installed properly, but not loaded, because muplugins_loaded isn't called until after the network-activated plugins are loaded. So we need to find something else to hook to, that fire's earlier.

I found that enable_wp_debug_mode_checks is the first thing that gets called, although it was just introduced in 4.6, so I'm not sure if we want to use that yet.
After that, this is what gets called before muplugins_loaded:
query
wp_doing_ajax
pre_option_siteurl
query
option_siteurl
wp_doing_ajax
query
wp_doing_ajax
pre_option_siteurl
option_siteurl
wp_doing_ajax
query
wp_doing_ajax
pre_option_siteurl
option_siteurl

Possibly the best thing for us to do is just hook to all, but then remove ourselves after the first time it is called. That will guarantee us to get called early.


FlameSky Alarms

Alarms, which will help the websurfer stay organized, and not too distracted in browsing away.

It is an idea, not an issue.


Heroku deploy button

Add google api key as an optional arg.
Add Heroku deploy button with supporting config files.

Closing this due to Heroku's IPs being banned :/


Inject log stderr

Resolves https://github.com/istio/istio/issues/14427 by recognizing several overlooked validations.
The code also sends logging of istioctl kube-inject problems to stderr instead of intermingling in the generated .yaml

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: esnible
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: nmittler
If they are not already assigned, you can assign the PR to them by writing /assign @nmittler in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

istioctl/OWNERS [esnible]
pilot/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

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

Test name
Commit
Details
Rerun command

prow/e2e-dashboard.sh
cc075a892d8f242cb446cac8dc59c52c0d29336d
link
/test e2e-dashboard-master

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

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: esnible, howardjohn
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

istioctl/OWNERS [esnible,howardjohn]
pilot/OWNERS [howardjohn]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

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

Test name
Commit
Details
Rerun command

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
03ed8686dbb3ae138033375418ad43648b6cea15
link
/test istio-pilot-e2e-envoyv2-v1alpha3-master

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

/test istio-pilot-e2e-envoyv2-v1alpha3-master


Feature: Allow ntgrrc to manipulate port settings

As this is a large change, if approved, this commit will allow ntgrrc to modify the port specific settings seen on the front page of the admin control panel (port name, speed, ingress/egress limit, flow control).
This functionality also introduces a break in how ntgrrc was structured before, as there are now port settings that are not PoE. Where it conflicted, PoE specific settings were renamed to indicate it.
Sample usage:
status (similar to PoE status)
$ ./ntgrrc port status -a test
| Port ID | Port Name     | Speed | Ingress Limit | Egress Limit | Flow Control |
|---------|---------------|-------|---------------|--------------|--------------|
| 1       | Uplink to Net | Auto  | No Limit      | No Limit     | Off          |
| 2       |               | Auto  | No Limit      | No Limit     | On           |
| 3       |               | Auto  | No Limit      | No Limit     | On           |
| 4       |               | Auto  | No Limit      | No Limit     | On           |
| 5       |               | Auto  | No Limit      | No Limit     | On           |
| 6       |               | Auto  | No Limit      | No Limit     | On           |
| 7       |               | Auto  | No Limit      | No Limit     | On           |
| 8       |               | Auto  | No Limit      | No Limit     | On           |

set (also similar to PoE functionality)
$ ./ntgrrc port set -a test -p2 -n '2nd port'
| Port ID | Port Name | Speed | Ingress Limit | Egress Limit | Flow Control |
|---------|-----------|-------|---------------|--------------|--------------|
| 2       | 2nd port  | Auto  | No Limit      | No Limit     | On           |

$ ./ntgrrc port status -a test
| Port ID | Port Name     | Speed | Ingress Limit | Egress Limit | Flow Control |
|---------|---------------|-------|---------------|--------------|--------------|
| 1       | Uplink to Net | Auto  | No Limit      | No Limit     | Off          |
| 2       | 2nd port      | Auto  | No Limit      | No Limit     | On           |
| 3       |               | Auto  | No Limit      | No Limit     | On           |
| 4       |               | Auto  | No Limit      | No Limit     | On           |
| 5       |               | Auto  | No Limit      | No Limit     | On           |
| 6       |               | Auto  | No Limit      | No Limit     | On           |
| 7       |               | Auto  | No Limit      | No Limit     | On           |
| 8       |               | Auto  | No Limit      | No Limit     | On           |

resolves #37

Codecov Report

Merging #38 (0759ed7) into main (ece4a15) will decrease coverage by 3.07%.
The diff coverage is 27.04%.

@@            Coverage Diff             @@
##             main      #38      +/-   ##
==========================================
- Coverage   42.22%   39.16%   -3.07%
==========================================
  Files          14       16       +2
  Lines         675      858     +183
==========================================
+ Hits          285      336      +51
- Misses        381      511     +130
- Partials        9       11       +2

Impacted Files
Coverage Δ

main.go
0.00% <ø> (ø)

poe_cycle.go
0.00% <0.00%> (ø)

poe_set_port.go
30.05% <10.00%> (ø)

port_set.go
25.98% <25.98%> (ø)

port_status.go
32.14% <32.14%> (ø)

poe_settings.go
70.88% <50.00%> (ø)

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

Awesome work, David. I do suggest switching to 0.9.0 release with this
PS: I'm not getting it, what's the breaking nature? From user's perspective this is an addition, no? The code changes I see are related because of a renaming, which is finde, and makes things more clear/explicit.

It's 100% a rename to split out 'poe' functions from being confused with the new 'port' functionality. If you are ok with the new naming convention/split i'll keep it as-is :sweat_smile:
I've updated the help docs for the port section with the parameters it accepts; will push this as 0.9.0 in the changelog, thanks!

It's 100% a rename to split out 'poe' functions from being confused with the new 'port' functionality. If you are ok with the new naming convention/split i'll keep it as-is 😅

👍 Great job, thank you.


First pass at file api for k8s

Description

Adds the driver interface to https://github.com/FlowFuse/nr-launcher/issues/273
Related Issue(s)

Checklist

[ ] I have read the contribution guidelines
[ ] Suitable unit/system level tests have been added and they pass
[ ] Documentation has been updated

[ ] Upgrade instructions
[ ] Configuration details
[ ] Concepts

[ ] Changes flowforge.yml?

[ ] Issue/PR raised on FlowFuse/helm to update ConfigMap Template
[ ] Issue/PR raised on FlowFuse/CloudProject to update values for Staging/Production

Labels

[ ] Includes a DB migration? -> add the area:migration label

@Steve-Mcl This and the docker one, please review but don't merge


emoji category scroll issue

Hi,
Thank you for this plugin.
But I faced two issues in this plugin.

Smiley with " label : relaxed " in first row is not displaying proper in view.
When I click on any emoji-categories then along with emoji popup scroll, my whole page is scrolled.

Can You please provide me the feasible solution for the same.
Thanks in Advance !!
Ravi

similar to point 2 issue


Patch antenna

Hello,
Is this patch antenna the one that Henrik used or your own design based on his post?

It's basically Henrik's. He gave me the gerbers for an array of 2 but I turned it into a single patch and imported it into kicad (the one patch should be identical to his though). If you're interested in the original gerbers I can give those to you. I'll be turning this into an 8-array antenna (multiplexed through 2 rec channels) and running sims in openems, just fyi if you're interested. Not sure the eta on that

Yeah I saw your multiplexing board. I have ordered a copy of your array of 2 after talking with Henrik. What connectors did you use? I saw a footprint with 9 holes and was wondering of you had a reference for it.

Hm 9 holes.. Are you talking about the RF via (reference F1 and F2)? That one only has 6 holes though. If you provide me more info or a screenshot or something I can tell you what it is. For sma cables I'm using these. They work fine. you'll need a transmission antenna too. have you sorted that yet? I'm currently using this one planning to probably build my own later. If you want something cheap the one from the link is good. Unfortunately you lose half the transmission energy because the tx/rx polarizations don't match, but as a first pass to get the board working it's good

Yep I got that Tx. I saw that in your doc and that will be perfect for a first run (I saw a single feed version mentioned on Martin's website but could not find anyone that sold it).
Regarding the RX, I imported your files from the antenna folder and basically sent that straight to PCB manufacturing. In Kicad, everything appears as a via to me. Below is a the file I am using. Let me know if you can see it.
Patch_2x5.zip

ah i see why you're confused. that kicad_pcb file is wrong. fortunately the gerbers in the antenna directory look fine. in any event this is the surface sma i used. That's all you need, plus the sma connector cables. i'm gonna try to track down the right kicad_pcb file but might not get to it right away.

Damn! I just uploaded all the files in Gerber (through KiCad) and then Saved As a kicad_pcb file. Did I have to make some modifications beforehand? I just got an email saying that the PCB had gone to the fabricator, but maybe I can cancel the order if the board cannot be easily modified. Let me know!
I'll order the SMA connector you mentioned so at least I have these ready.

Ah sorry about that! Yeah I'd try to cancel if you can, I think there's a good chance it won't work properly.

For reference the correct gerber looks like this

Okay, can you send me the correct files you have? Or maybe update the repo? It might be easier to swap the gerber files at the fabricator than outright cancel as my order is grouped with dozens of others on a panel.

The gerbers in the repo are right but it looks like kicad doesn't know how to convert it to a kicad_pcb file. I just tried the conversion here. does the mfg allow you to just send gerbers? i'd just use those directly

Wow yes indeed! I tried to upload the gerber zip that you have in the antenna folder and it looks much better. The attached shape is correct right?

Looks good!

Hey,
I put together the antenna and wired everything, but unfortunately I'm not getting any meaningful data yet. The ADL5802 on the board gets really hot and it seems that the LOIN/LOIP pins are shorted, even if I cannot see any soldering issues on the board. Did you have troubles with this chip at all?

Not really, the only issues I encountered were a few simple shorts that we are all fixable. The trick was tracking them down.

Mmmh, I'm a little puzzled.  My channel 2 does not seem to be getting anything meaningful.
Do you have a log file you could share so I can run plot_log and see how the results should look like when it works?
I uploaded one of mine here if you are interested/have time to look at it: https://github.com/AlexBdx/fmcw3/tree/master/pc/python2/run_away
The log file is called run_away.log and in the img/ folder you have the plots I generated - they don't look so good. Let me know!

https://www.dropbox.com/s/luuqggbdlmfhpul/fmcw.log?dl=0
here's a log i took. you can't really see anything on the angular range plots, but the range time plot is ok. i'm hoping the antenna simulations and multiplexed antenna will yield something with better angular resolution and better snr, but not done with that yet.
I took a look at yours and it seems like you're getting repeating data.. not entirely sure what might be causing that. did you check for shorts at the receiver? I had one on one of the lna's that caused bad data. just a thought.

in read_settings, it raises a ValueError due to missing error.
if header != 'fmcw3;':
raise ValueError('Missing header')
Did you modify fmcw3.py and discarded the header?
I have fixed "some" issues on my board (found one tricky short on a non-populated yet connected pad) but I'm done 100% done. I hope to find the others soon.

oh yeah i changed the name. you have to modify the python code to look for fmcw, not fmcw3

Do you have the corresponding plot_log.py file too?
I've tried yours & Henrik's legacy file, removing errors one after another until I would be processing the reading the whole log... only to end up with empty arrays.
Maybe you could send me the one you used so I don't have to reinvent the wheel on this one.
Have a great weekend!

https://www.dropbox.com/s/3eo8sn8id342ecr/plot_log.py?dl=0
let me know if that works

Stupid mistake on my end: I was trying to read your file with python 2 (what Henrik initially used) while I had to run it with python 3. Your range-time plot is noisy, but I can definitely see a signal on it!! Looks great!
Yes, it did work. A couple of questions:

I thought that the IF time domain waveforms would be limited to [-1; 1] V but I see that the signal spiked outside these bounds at times. How is that happening? I thought the ADC's largest sampling range was 2V.
The IF time domain plots have a ton of noise in your signals. Is that normal? How can the noise be reduced?
Each channel on each sample of the IF time domain plot seems to have a mean of about -0.25 V. Why isn't it 0 V?

I forgot to add one of the pictures I had processes to illustrate my previous message. Let me know when you have a second to look at it. Thanks!

Wow I finally fixed it. I found a new issue after checking everything again, and now it works. Check that out:

glad you figured it out!


Upload New Page Options

What we are looking forward to!

2 new ruled pages
2 new pages with margins
2 Diary pages

Some specifications:

Our current ruled pages are too much zoomed in and need to be replaced

In case you are wondering what type of pages are possible, check this

I expect you to provide scanned images of the pages or a high-resolution one if that is not possible. If you are planning to open the images from the Google Search link given above, please understand that all such PRs would not be considered.

Please understand that this is not merely an issue of adding new images, the code has to be updated simultaneously so that we can use the pages

Please follow the project's asset organization.

I would like to work on this issue...

plz assign to me

plz assign to me

Please refrain from spamming. Once you have commented, the project maintainers will get back to you as per their free slots

I need to add more page option with are mentioned above right???

I need to add more page option with are mentioned above right???

Yes


Updated limit_characters function phpdoc and spelling mistake

I first updated a spelling mistake in the phpdoc description for the limit_characters function. Then also added param descriptions

Coverage remained the same at 97.65% when pulling 1dd6306be528d5a2f38037136326357cf94e2cf0 on psaunders88:master into c17c69148946ca2dd67e405f901cb6a2d1ffe555 on brandonwamboldt:master.

Thanks!


Lack of constant table forces crash on hardware

When attempting to run a shader written without any set constants, on hardware the thread immediately crashes, while on Citra the frame is rendered correctly.
Small pit fall to work around, but an easy fix would be to identify when there's no constants defined then inject a default one using the first unused uniform register.

Do you happen to know how other shader assemblers behave when no constants are set? Maybe this is actually a bug in ctrulib?

The equivalent shader for aemstro without any constants set runs without issue.

That's very interesting! If it's not too much work, would you mind posting the aemstro/nihstro shader sources along with their respective binaries (shbin)?
I don't think aemstro is doing anything like injecting a dummy constant, so the issue might be somewhere else, but it should be easy to see by comparing the two binary shaders.

here

There are a number of unrelated differences in those shaders. To make sure the issue isn't caused by something else, could you do these changes in the nihstro shader:

Swap outcol and outtex0 (i.e. make outtex0 map to o1 and outcol map to o2)
Change the mask of outtex0 to match the one in the aemstro shader

The resulting output setup code should look like this:
.alias outpos  o0      as position
.alias outtex0 o1.xy as texcoord0
.alias outcol  o2      as color

Chances are you'll also have to change
	mov outtex0, v_texcoord

to
mov outtex0.xy, v_texcoord.xy

If this doesn't help, could you attach a minimal code example to reproduce the crash on hardware?

Another difference that I just spotted:
Change
.alias projection c0
.alias modelview  c4

to
.alias projection c0-c3
.alias modelview  c4-c7

And finally: Try removing the aliases vertex, v_texcoord, v_color, and v_normal, since they aren't entered in the aemstro shader either.

@machinamentum ping. Do you have some time to check for this?

Making those changes causes it to hang. It seems doing
mov outtex0.xy, v_texcoord.xy
causes it to hang, while
mov outtex0, v_texcoord
leads to the crash.
After doing some more testing, the shader seems fine, the problem arises when using two different instances of the same shader, which makes it odd that having no constants crashes, while having constants doesn't. I'm not sure where the bug actually lies at this point, so I'll mark this as closed as it seems not to be an issue with nihstro.


custom component theme throw error

react-native, react and native-base version
native-base: "2.0.1"
query-string: "4.3.1"
react: "15.4.0"
react-native: "0.41.2"
Expected behaviour
expect styled component
Actual behaviour
throw error "undefined is not a function"
Steps to reproduce (code snippet or screenshot)
just try run your example
import React, { Component } from 'react'; import { View, Text, StyleSheet } from 'react-native'; import { connectStyle } from 'native-base';  class CustomComponent extends Component {   render() {       return (         // connect styles to props.style defined by the theme         const styles = this.props.style;           <View style={styles.container}>               <Text style={styles.textContent}>                   Your Component with static style               </Text>           </View>       );   } } const styles = {     container: {       flex: 1,       backgroundColor: 'green',     },     textContent: {       fontSize: 20,       color: 'red',     }, }; // connect the component to the theme export default connectStyle('yourTheme.CustomComponent', styles)(CustomComponent);
Screenshot of emulator/device
https://drive.google.com/open?id=0B6--Q7UF3CaqTlp3MjFVZV9Sem8

cc @himanshu-satija

I got a problem. How to fix ???

@iambanh2 You got a problem. You should post it on Stackoverflow. If you think it is a bug with NativeBase, raise an issue here.

@kuzyk Moving the styles const out of the class should resolve your issue.


Household Relationships answers overwriting each other.

Expected behaviour
Each relationship answer should have it's own answer_instance and group_instance.
Actual behaviour
For each relationship page the answer_instance, group_instance are reset and therefore overwrites the previous page's answer(s).
Steps to reproduce the behaviour
Using test_relationship_household.json add at least 3 people. After completing the relationship questions check your answers http://localhost:5000/dump/answers
Technical information
For a debug starting point consider
def _update_questionnaire_store(current_location, form): in questionnaire.py
Browser
Operating System
Screenshot

Fixed in: https://github.com/ONSdigital/eq-survey-runner/pull/1703


Always display Alola formes in /ds

The Alola formes are so different to regular formes that displaying both the regular form and Alola form is actually a useful information.

Hey @xfix,
Something went wrong with the build.
TravisCI finished with status errored, which means the build failed because of something unrelated to the tests, such as a problem with a dependency or the build process itself.
View build log
TravisBuddy Request Identifier: 91ea0eb0-2677-11e9-a660-67a7bedcbb29


POI / location icon?

Is this project to add also some common icons like a poi marker oder location marker?

see:

https://typo3.github.io/TYPO3.Icons/icons/actions/actions-marker.html
https://typo3.github.io/TYPO3.Icons/icons/content/content-marker.html


Make Proxy in View Controller

Hey,
Is it possible to make the proxy on 192.168.1.xxx in the View Controller to connect on another device?
I don't want to use PacketTunnel, just create a Shadowsocks proxy in the View Controller to connect manually on another device
`var proxyServer: ProxyServer!
    proxyServer = GCDHTTPProxyServer(address: IPAddress(fromString: LOCAL_IP), port: NEKit.Port(port: UInt16(1082)))

    try! proxyServer.start()`

What do you want to archive? The scenario you described does not make too much sense. If you want other device to connect to your device, just start a normal listening server. And it has nothing to do with view controller any way.
在 2019年5月1日，09:57，Taher-17<EMAIL_ADDRESS>写道：
Hey,
Is it possible to make the proxy on 192.168.1.xxx in the View Controller to connect on another device?
I don't want to use PacketTunnel, just create a Shadowsocks proxy in the View Controller to connect manually on another device
`var proxyServer: ProxyServer!
proxyServer = GCDHTTPProxyServer(address: IPAddress(fromString: LOCAL_IP), port: NEKit.Port(port: UInt16(1082)))

try! proxyServer.start()`

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

I want my application to host a GCDHTTPProxyServer but not connect to shadowsocks as a VPN
Then I want to connect to OpenVPN using my app (I have done this)
I want to add this to my OpenVPN Config http-proxy <IP_ADDRESS> 9090 so I can connect to OpenVPN through the Shadowsocks Tunnel.
The issue with using PacketTunnel is when I start connection to OpenVPN listener on <IP_ADDRESS>:9090 disconnects.

Start Shadowsocks in app on <IP_ADDRESS>
Connect to OpenVPN with proxy
Disconnect Shadowsocks now that the blocked OpenVPN server is already connected

I don’t get much of what you want to do, can you clarify what exactly you want and how many devices are involved?
在 2019年5月1日，14:14，Taher-17<EMAIL_ADDRESS>写道：
I want my application to host a GCDHTTPProxyServer but not connect to shadowsocks as a VPN
Then I want to connect to OpenVPN using my app (I have done this)
I want to add this to my OpenVPN Config http-proxy <IP_ADDRESS> 9090 so I can connect to OpenVPN through the Shadowsocks Tunnel.
The issue with using PacketTunnel is when I start connection to OpenVPN listener on <IP_ADDRESS>:9090 disconnects.
Start Shadowsocks in app on <IP_ADDRESS>
Connect to OpenVPN with proxy
Disconnect Shadowsocks now that the blocked OpenVPN server is already connected
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

DEVICE A: Create Shadowsocks listener
DEVICE B: Enter proxy details here

Rules: DEVICE A needs to add a listener(local_host:9090) without PacketTunnel or VPN Connection

But what’s the point? The http://p.getqujing.com/paths/40ief5qh.pac server you start on device A will be killed when the app go background.
在 2019年5月1日，14:21，Taher-17<EMAIL_ADDRESS>写道：
DEVICE A: Create Shadowsocks listener
DEVICE B: Enter proxy details here
Rules: DEVICE A needs to add a listener(local_host:9090) without PacketTunnel or VPN Connection
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

Device A is used as a Hotspot for multiple devices
Device A and Device B can use OpenVPN through Shadowsocks
Example: https://www.tipsforchina.com/how-to-tunnel-expressvpn-over-shadowsocks-for-increased-speed-from-china.html

If I still get things correct (I’m not expert on iOS development), the hotspot creates an isolated WiFi where the connected device cannot connect to anything on the host device.
Also, the server on device A will be killed when device go to sleep or switch to background.
在 2019年5月1日，14:24，Taher-17<EMAIL_ADDRESS>写道：
Device A is used as a Hotspot for multiple devices
Device A and Device B can use OpenVPN through Shadowsocks
Example: https://www.tipsforchina.com/how-to-tunnel-expressvpn-over-shadowsocks-for-increased-speed-from-china.html
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

Thanks for your help.


Adding a Tag to Post with a null updated_at will fail

Issue Summary
If you attempt to add a tag to a post with an updated_at of null then this line will return true because serverUpdatedAt will be NaN and the user will get the error message:

Saving failed! Someone else is editing this post.

Steps to Reproduce

Import a post (or manually set its updated_at to null in the DB
Add a tag to that post via the admin edit UI and hit Update Post
You should see the error message Saving failed! Someone else is editing this post.

Technical details:

Ghost Version: 0.11.8
Node Version: 4.1.2 (I know, I know)
Browser/OS: MacOSX 10.12.4 (16E195)
Database: SQLite3 & MySQL (I didn't try Postgres)

@jcmorrow Thanks for your report 🙃


eslint plugin: false positive for functioncalls

Describe the bug
The following yields a false-positive eslint violation:
useQuery({
  queryKey: [{ path: path.split('/') }],
  queryFn: () => api.get(path),
})

error with:

ESLint: The following dependencies are missing in your queryKey: path(@tanstack/query/exhaustive-deps)

Your minimal, reproducible example
failing test case attached
Steps to reproduce
Here's a failing test case:
{
  name: 'should work with function calls',
  code: `useQuery({ queryKey: [{ path: path.split('/') }], queryFn: () => api.get(path) })`,
},

Expected behavior
Ideally, I would like to see no error here, because path winds up in the queryKey. Not sure if it's possible though
How often does this bug happen?
None
Screenshots or Videos
No response
Platform
all
Tanstack Query adapter
None
TanStack Query version
5.29.2
TypeScript version
5.3.3
Additional context
No response

@Newbie012 is there a way to make this work ?

Yes (Stackblitz). I had a similar issue where I had to cache signed S3 (AWS) URLs. I ended up doing something like:
import { useQuery } from '@tanstack/react-query';

class QueryableValue<T> {
  constructor(private value: T, private map: (v: T) => string) {}
  toJSON = () => this.map(this.value);
  toString = () => this.value;
  valueOf = () => this.value;
}

const path = new QueryableValue(
  'https://signed-url.com?Expiration=123',
  (x) => x.split('?Expiration')[0]
);

export const Test = () => {
  const query = useQuery({
    queryKey: [path],
    queryFn: () => path.toString(),
  });

  return <div>{query.data}</div>;
};

so toJSON will be called by query?

Correct, since query uses JSON.stringify which uses .toJSON.


publish<EMAIL_ADDRESS>

Requested by: @Lms24
Merge target: lms/test-merge-target-branch
Quick links:

View changes
View check runs

Assign the accepted label to this issue to approve the release.
Leave a comment containing #retract under this issue to retract the release (original issuer only).
Targets

[ ] github

Targets marked with a checkbox have already been executed.  Administrators can manually tick a checkbox to force craft to skip it.

#retract