Hide tooltips behind panels

Before

After

Fixes https://github.com/AtomLinter/linter-ui-default/issues/51

Going to ping a few theme authors so they can fix this bug in their themes as well,
@silvestreh @jesseweed @ignism @JesseLeite @burntime

I could be wrong on "how things supposed to be", but I prefer the Before screen. And I intend to leave it that way in Nucleus.

At first glance I thought the before and after screenshots were mixed up. In short, these PRs will cause a GUI regression.
I understand that you're attempting to fix a problem in linter related to "stuck" tooltips, but this is not the way to go about it. I can provide some assistance/guidance on alternate, and better, ways of fixing your root problem if you want. But as it stands, I am strongly against these tooltip PRs being merged.

I'm actually curious on this as well, what's the benefit of hiding the tooltip behind the panel?

In this case (I mean the screenshot) I can see how it looks better in the Before screen. But once you scroll up past the limit of the panel you'd have a linter tooltip pointing at something in the panel instead the code.
Here, I made a mockup to better illustrate what I'm trying to explain:

hmm, ok I can see that use case...

You opened my eyes.

Thanks @silvestreh :+1:
That's exactly the problem I intended to fix with this

But the solution is not to implement a hack that causes a regression in the core GUI, because of what is essentially a problem in a community package. This feels backwards, and this would have to be applied to every single (affected) theme.

@thomasjo We could of course patch the themes from our package but this seemed like the best way to go. Currently this is a bug for all tooltip users who use a panel. Doing this in all the themes is gonna be a lot of work I agree but I believe it's the way forward :) Therefore I opened the PRs to the core packages and pinged authors of famous themes
I personally wouldn't call this a regression but a bug fix. This isn't something specific to the linter package, it happens to every single package who uses a panel and tooltips, in other words, every IDE package out there :)

it happens to every single package who uses a panel and tooltips

From what I can tell this is only applicable to persistent tooltips. A tooltip shown on e.g. mouse hover, will not be affected by this. I might be wrong, so feel free to correct me.

The screenshot was taken in the latest linter-ui-default that creates tooltips on mouse hover :)
Even if this wasn't the case, mouse overing the last line would cover at least two messages from the panel which is not the most comfortable experience. Just so you would know, almost all of the IDE packages use persistent tooltips, the mouse hover tooltips in linter-ui-default are unreleased.

@thomasjo the problem here might be wording: the issue is actually with overlays, not tooltips. Essentially, atom-overlay has a higher z-index value than atom-panel-container. Though I'm not sure atom-panel-container has a defined z-index value at all.

almost all of the IDE packages use persistent tooltips

@steelbrain Just because "everyone" does something, doesn't necessarily mean it's a good idea :wink:

the problem here might be wording: the issue is actually with overlays, not tooltips

@silvestreh OK, interesting! But I'm still not convinced it makes sense to hide a GUI element such as a tooltip (which is an actively triggered element), behind a passive element such as a panel or similar.

@thomasjo In this case the "tooltip" (overlay?) is part of the editor content, the panel is meant to be part of the UI. Shouldn't the UI be above the editor content? If you have a better way to accomplish this  the UI is still being rebuilt, so now is the the ideal time to fix it.

@thomasjo I agree with you once more, yet I believe some tooltips (or overlays, in this case) should probably be confined to certain "UI scopes" (I just probably made that up).
Here, I made yet another graphic to compensate for my lack of vocabulary

It seems to me that linter has some information that is tied to a particular segment of code. And this information should not be displayed if the relevant code is not visible. So, we have a few options:

The tooltips can be fixed so that they don't extend outside the boundaries of the TextEditor. While this is uncommon in the case of tooltips, one approach I have seen is that a tooltip can reverse direction when it can't be displayed within the boundaries of the TextEditor. So instead of being displayed below the relevant line, it can be displayed above the relevant line ... but only when showing below would overlap other UI.
The content from the tooltips can be changed to block decorations that expand on hover of the relevant content
The relevant content can be scrolled so that the "tooltip" can be displayed within the borders of the TextEditor

I agree with @thomasjo.  These appear to be tooltips to me and should either work like other tooltips (i.e. always be on top, be small bits of information and most importantly go away reasonably quickly)  ... or the method of conveying the information should be changed to something more appropriate.

Would it be possible to detect if the "anchored/affected line" (in case of Linter, the line that has the error) is scrolled "out of sight" and not visible anymore? If so, we could do this:

Keep atom-overlay overlapping if the anchored line is still visible.
Hide atom-overlay as soon the anchored line is not visible anymore.

Here an example with autocomplete:

This probably should be part of core, so all atom-overlays would behave like that and packages don't have to worry about it.

There is now a new issue in core: https://github.com/atom/atom/issues/11249
@steelbrain thanks for trying to fix it, but I'll close this as wontfix since it would make some packages less usable. Hopefully the "auto-hide when scrolled out of sight" can be added to atom-overlay. Or you could already try to add it to Linter. Not sure how hard it is, tough.

Thanks @simurai! :tada:


Enforce Prettier (and other formatting/linting) for SVGs

Problem
The SVGs in the project are inconsistent and sometimes unformatted.
Description

Since the project contains a lot of SVG icons it might be a good idea to enforce

fixed viewBox values
list of mandatory attributes (like height, width and SVG xmlns)
fixed valid group IDs (such as icon)
fixed rules for fill (such as fill being set only on the top-level g and having currentColor as the only value)

Additional context

Simple Icons have a very comprehensive SVG linting solution for inspiration.
Implementation

[ ] 🙋 I would be interested in implementing this feature.

I would like to work on this issue.

@omkarg01 You're assigned! Please feel free to ask for assistance if you run into any roadblocks. Thanks in advance for the contribution!


kodelife: <IP_ADDRESS> -> <IP_ADDRESS>

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/kodelife/versions.
meta.description for kodelife is: '"Real-time GPU shader editor"'.
meta.homepage for kodelife is: '"https://hexler.net/products/kodelife"

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found <IP_ADDRESS> with grep in /nix/store/2prnf75pqrdfp6g8xwad2fhh04n4jnzl-kodelife-<IP_ADDRESS>

directory tree listing: https://gist.github.com/aa1b37be025476099122dbc076e799fc

du listing: https://gist.github.com/d9c54f55bc2228abeb97810ba585a0e5

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

1 total rebuild path(s)
1 package rebuild(s)
1 x86_64-linux rebuild(s)
0 i686-linux rebuild(s)
0 x86_64-darwin rebuild(s)
0 aarch64-linux rebuild(s)
First fifty rebuilds by attrpath
kodelife

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/2prnf75pqrdfp6g8xwad2fhh04n4jnzl-kodelife-<IP_ADDRESS> \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(r-ryantm's Cachix cache is only trusted for this store-path realization.)
Or, build yourself:
nix-build -A kodelife https://github.com/r-ryantm/nixpkgs/archive/e07345793e2a57d1b6072cbbe3b5c50736d8572d.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/2prnf75pqrdfp6g8xwad2fhh04n4jnzl-kodelife-<IP_ADDRESS>
ls -la /nix/store/2prnf75pqrdfp6g8xwad2fhh04n4jnzl-kodelife-<IP_ADDRESS>/bin

cc @prusnak for testing.

Tried running the built binary and it works. ACK


Convert to jpeg and compress instead of png.

We need to convert our picture to jpg because png is too large. Also, we need to compress and cut up the images for responsive devices.

Also, we need to compress and cut up the images for responsive devices.

Let's limit the scope of the change in gif2html5 to just converting to JPGs instead of PNGs. We can leave it up to the implementing application to make the images responsive.

ok

Closed as merged.


Document running lnmux in docker

PR #38 added a docker build. What might be useful is a description of how to run lnmux in docker via the command line.

Good idea, it could be nice to have a dev.Dockerfile like in LND (this docker will copy the lnmux.yml found in the folder and launch lnmux with this config)
I don't think that changing the actual Dockerfile is a good idea, since people may use chart and override entrypoint to inject their config. (and we don't want conflicts)
It could be good to add a docker-compose maybe to create the postgres DB as well?
What do you think?

We can use this PR to fix the documentation (README) as well.
I can do that, I may have some time next week


update_attributes does a $pushAll on an embedded collection

This issue looks similar to previous ones, but i tried 2.4.3 and bleeding edge...
    class Tag
      include Mongoid::Document
      field :name
      embedded_in :taggable, polymorphic: true
    end

    class Category
      include Mongoid::Document
      embeds_many :tags, class_name: "Tag", as: :taggable
      def tag_list
        tags.map(&:name).join(",")
      end
      def tag_list=(s)
        tags.clear
        s.split(",").map(&:strip).each { |n| tags.new(name: n) }
      end
    end

Now trying:
    c = Category.create
    c.update_attributes :tag_list => "a"
    c.reload
    c.tag_list # => "a"

    c.update_attributes :tag_list => "a,b"
    c.reload
    c.tag_list # => "a,a,b" :(

Looks like the embedded in collection isn't really cleared and Mongoid generates a $pushAll operation when updating?

Yeah that needs to be a $set... I've fixed on moped-integration branch, just need to get everything cleaned up and refactored.

Actually this is wrong, what you are actually doing is going through tags.new which will eventually cause a $pushAll, you need to use the setter for a set:
class Category
  include Mongoid::Document
  embeds_many :tags, class_name: "Tag", as: :taggable

  def tag_list
    tags.map(&:name).join(",")
  end

  def tag_list=(s)
    self.tags = s.split(",").map(&:strip).map { |n| Tag.new(name: n) }
  end
end

Hm okay, but that's not really intuitive isn't it? At least this behavior is not documented?

I see what you're saying - the clear should have emptied it... So you didn't see the $unset happen with the clear then?

That's right - only a find and then the update with $pushAll, but no $unset before.

Ok, sorry about the quick close.

I guess _assigning? prevents the $unset: https://github.com/mongoid/mongoid/blob/master/lib/mongoid/relations/embedded/many.rb#L497.

@jazen Can you use my workaround for now? I'm going to change the behaviour around #clear to fix this but will need to be on 3.0 given how I'm refactoring it.

Yes, i can - the update contains all current tag names, so i delete the missing ones and add only the new ones.


Bug: Docker setups for running nodes do not save data between runs

~/.ursa/ should be linked as a volume to the docker instance for make scripts, and in the getting started documentation. Users that run the node this way lose their keys and other cache data between instances of the node

not a bug, we have set it up to bare bones. Ideally, you should use the docker-compose setup for persistence


Last image is not building

Describe the bug
I followed the setup and ran:
python -m swebench.harness.run_evaluation \
    --predictions_path gold \
    --max_workers 4 \
    --run_id validate-gold

It starts building 40 docker images, but get stuck on the last one. I waited several hours and tried it on many different machines.
I checked logs/build_images/base/sweb.base.x86_64__latest/build_image.log but could not find anything that seemed wrong.
 It took ~4 hours and failed.

Faced the same issue before. One thing you might want to try is change max_workers to 1 and run the code multiple times. It eventually took 2-3 times for me to build the environment image. I suspect this is related to max_workers but I cannot figure out why this happens.

Hello, have you found a solution to this problem? I also encountered this problem and it was not solved after multiple retries.

I encountered this issue as well. I tried different version of Ubuntu as well as Debian on x86 with a GCP instance. All attempts at different configurations were unsuccessful. I localized the issue to be a matplotlib image instance. This is the output from the build_image.log:
`+ __conda_exe env create --file environment.yml
2024-11-30 23:09:38,819 - INFO - + /opt/miniconda3/bin/conda env create --file environment.yml
2024-11-30 23:09:40,725 - INFO - Channels:

conda-forge
defaults
Platform: linux-64
Collecting package metadata (repodata.json): ...working...
2024-11-30 23:10:39,367 - INFO - done
Solving environment: ...working...`

It appears this conda command hangs forever.
I "fixed" the issue through a hacky change in swebench/harness/docker_build.py which skips building this image.


Add versioned sassdoc for ci

We have been encountering repeated failures based on our ci tests using sassdoc. this may be due to a version bump so this change implements a specified version of sassdoc to ci, v2.1.2.

Maybe we need to specify a Node version? https://circleci.com/docs/language-nodejs/#version

Got it to pass. I am rerunning to make sure

@whmii This seems to make sense. We were possibly running on an older version of Node on Circle, and SassDoc just updated to the latest versions of a bunch of dependencies. So somewhere in there, something needed the latest Node.


RecursionError on nested quotes

Not actually unique to quotes but also to lists and footnotes. The following code raises a RecursionError:
mistune.markdown('* ' * 1000 + ' a')

mistune.markdown('> ' * 1000)

Relevant discussion: https://github.com/thephpleague/commonmark/issues/243

@nitely Thanks for your report. This is solved in mistune-0.8, try the code in branch mistune-0.8


Need azure service bus support for C/C++

We currently have some devices connected thru JMS and there are some tiny C\C++ based we would like to provide a library to connect to the same bus we've already have.
I've tried to use Qpid, which is an apache library, sample on: https://qpid.apache.org/releases/qpid-proton-master/proton/cpp/api/service_bus_8cpp-example.html, but it doesn't work anymore.

@raphaelamorim This SDK (C99) is targeting a subset of IoT scenarios.  That includes a select few services necessary for those scenarios.
There is work underway on a C++ SDK, https://github.com/Azure/azure-sdk-for-cpp.  The C++ SDK will be a full SDK with support for many services.  Would Service Bus support in a C++ SDK meet your needs?


Uploading different object other than File?

I want to be able to upload other fileTypes such as Blobs to get image uploads working through Canvas. I'm not always going to have users input files because I want to be able to upload without a user having to attach their file to an input field.

+1

+2

+9000!

this would be great!

(for me it would be enoug to be able to upload File{} instead of FileList[], since you can make files from base64 or blob using new File() or form FilseList[] using [0].files[i])

https://github.com/geritol/S3
No big changes in the code but allows you to upload files in an array. Just make files from you blob, add them to an array, and upload it.
(package works only locally, so clone the repository to your packages folder, then install it with geritol:s3)

Hey guys, the package now supports base64 so it works nicely with mdg:camera. I'll add blobs this weekend ^_^.

+1 for Blob support! :)

Hey there, is blob support something that's still on your radar? Cheers!

Hey! It totally is, I thought I had added it already though, lol. Let me double check the code, I might have it in the backburner instead.

Awesome, thank you so much for checking!

I tried some experimenting, but have been unsuccessful in my renewed attempts to pass a blob file... were you able to verify that a blob is permissible? I apologize for nagging, I'm super close to wrapping up this feature request. :) Thank you again!

Hey! Sorry for the delay! I don't have that feature in yet :/ have you forked the project and attempted adding it? If you have I'll gladly check out the code and fold it in.

Hi @Lepozepo! First off, thanks for the great package.  Can you point me in the right direction for blob support? Trying to get it working with mdg:camera.

Figured it out.   For anyone else looking for how to upload a base64 from the mdg:camera package here's the code I used below.  [data] is the variable containing the base64 wrapped in array brackets.
S3.upload({
   files: [data],
   path: "photos",
   encoding: "base64"
}, function(error,result){
   console.log(error);
    console.log(result);
});


New rule proposal: Don't use HasValue property on values of nullable types

Category: Readability
Rule: Do not use HasValue property on values of nullable types.
Description: Compare nullable values to null instead of using HasValue property.
Rationale: Nullable values support reference type semantics and there is no reason to use a special property (HasValue) to test whether a variable is initialized. Comparison to null should be used instead for both value-typed and reference-typed variables.
See also: SA1125:UseShorthandForNullableTypes
The warning should be generated in the code like this:
if (name == null)
	DoSomething();
if (!amount.HasValue) // warning here (compare to null instead)
	DoSomethingElse();

Correct code should look like this:
if (name == null)
	DoSomething();
if (amount == null)
	DoSomethingElse();

I'm currently neutral on this. It's an interesting proposal for sure.

This was in our style guide at a previous employer , so I'm :+1:

Leaning toward :+1:. I'm used to !amount.HasValue, out of habit, but I like the reasoning here.

@vweijsters Any opinion on this?

Which one is closer to the way the actual implementation behaves?  Does the JIT emit a null check?

The generated IL is exactly the same, whether the code is written as !amount.HasValue or amount == null, so the JIT will not see a difference.

:+1: for me, but with a very minor preference.


Fixing RTD deps

Affected Issues

Fixes #731

Proposed Changes

Added docs/requirements.txt
Added .readthedocs.yml

Codecov Report

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

@@          Coverage Diff          @@
##           master   #732   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           9      9
  Lines         443    443
  Branches       32     32
=====================================
  Hits          443    443


RunTimeError: CUDA out of memory // Requirements on Graphic card?

Hi,
while executing
python -m cosypose.scripts.run_cosypose_eval --config tless-siso
I receive the following error message:
RuntimeError: CUDA out of memory. Tried to allocate 1.35 GiB (GPU 0; 5.93 GiB total capacity; 1.47 GiB already allocated; 866.50 MiB free; 36.31 MiB cached)
According to my internet research a reduction of the batch size is recommended. However, I don't know where to set it and in my understanding the batch size shouldn't play any role in this command, since I use the already pre-trained network?!
Could the cause of the error be that there are certain hardware requirements for reproducing the results?
I am using Ubuntu 18.04.5 LTS and an NVIDIA GeForce GTX 1060 6GB (and the nvidia-driver-450).
Here is a larger part of my terminal output:
1:06:35.398140 - Scene: [6]
1:06:35.398203 - Views: [359]
1:06:35.398260 - Group: [2732]
1:06:35.398285 - Image has 5 gt detections. (not used)
1:06:35.701966 - Pose prediction on 4 detections (n_iterations=1): 0:00:00.063503
1:06:35.954221 - Pose prediction on 4 detections (n_iterations=4): 0:00:00.250793
1:06:35.720832 - --------------------------------------------------------------------------------
100%|███████████████████████████████████████████████████████████| 10080/10080 [1:06:24<00:00,  2.53it/s]
1:06:47.763242 - Done with predictions
100%|█████████████████████████████████████████████████████████████| 10080/10080 [39:28<00:00,  4.26it/s]
1:46:18.765271 - Skipped: pix2pose_detections/coarse/iteration=1 (N=50023)
1:46:18.765351 - Skipped: pix2pose_detections/refiner/iteration=1 (N=50023)
1:46:18.765377 - Skipped: pix2pose_detections/refiner/iteration=2 (N=50023)
1:46:18.765398 - Skipped: pix2pose_detections/refiner/iteration=3 (N=50023)
1:46:18.765419 - Evaluation : pix2pose_detections/refiner/iteration=4 (N=50023)
0%|                                                                         | 0/10080 [00:00<?, ?it/s]
Traceback (most recent call last):
File "/home/rosmatch/anaconda3/envs/cosypose/lib/python3.7/runpy.py", line 193, in run_module_as_main
"main", mod_spec)
File "/home/rosmatch/anaconda3/envs/cosypose/lib/python3.7/runpy.py", line 85, in run_code
exec(code, run_globals)
File "/home/rosmatch/cosypose/cosypose/scripts/run_cosypose_eval.py", line 491, in
main()
File "/home/rosmatch/cosypose/cosypose/scripts/run_cosypose_eval.py", line 433, in main
eval_metrics[preds_k], eval_dfs[preds_k] = eval_runner.evaluate(preds)
File "/home/rosmatch/cosypose/cosypose/evaluation/eval_runner/pose_eval.py", line 67, in evaluate
meter.add(obj_predictions, obj_data_gt.to(device))
File "/home/rosmatch/cosypose/cosypose/evaluation/meters/pose_meters.py", line 172, in add
cand_infos['label'].values)
File "/home/rosmatch/cosypose/cosypose/evaluation/meters/pose_meters.py", line 101, in compute_errors_batch
errors.append(self.compute_errors(TXO_pred, TXO_gt, labels_))
File "/home/rosmatch/cosypose/cosypose/evaluation/meters/pose_meters.py", line 70, in compute_errors
dists = dists_add_symmetric(TXO_pred, TXO_gt, points)
File "/home/rosmatch/cosypose/cosypose/lib3d/distances.py", line 16, in dists_add_symmetric
dists_norm_squared = (dists ** 2).sum(dim=-1)
RuntimeError: CUDA out of memory. Tried to allocate 1.35 GiB (GPU 0; 5.93 GiB total capacity; 1.47 GiB already allocated; 866.50 MiB free; 36.31 MiB cached)

Hello, i have the same issue, did u fix it ?
thanks a lot for your answer

Same here

This may be done by changing the batch_size in run_pose_training.py.

I solved this with following changes:
bullet_batch_renderer.py -> workers 8 to 1
multiview_predictor.py -> batch size(nsym) 64 to 1
run_bop_inference.py -> workers 8 to 1

Same here. Is there any other suggestion? Unfortunately, Johannes's solution didnt work for me.
@JohannesAma did it really work for you for the siso tless case?

Same here. Is there any other suggestion? Unfortunately, Johannes's solution didnt work for me.
@JohannesAma did it really work for you for the siso tless case?

My nvidia card has 8gb of storage, maybe yours is smaller and you have to reduce batch size and workers in some more modules that are used in the siso tless case.

I have the same problem and the suggested solution didnt work. Is there any solution ??? thanks in advance

The main reason for this problem is that the data set evaluated by the evaluation is too large, and the GPU memory for running the program is less than 8GB.
The The root cause is this line of code: run_cosypose_eval.py Line 443
eval_metrics[preds_k], eval_dfs[preds_k] = eval_runner.evaluate(preds)
Possible Solution:

Go to folder "local_data" to delete some data. Then perform pre-training, usually, the results will not be a problem, and then execute the process of evaluation again.
Discard GPU usage. Transfer all data, models to the CPU (requires constant code debugging)
Modify the model to use AMP. However, the workload is large, and it is easy to cause the entire program to be difficult to execute if you are not careful.

In fact, the process of performing evaluation is not just to verify whether the results are correct. This model can be used to evaluate other datasets, and if the results are correct, it is not good. The main modification part is LOCAL_DATA_DIR.

Proposed fix


Ganache Accounts are not Loading

When I Click on Quick Start, the above attached page opens and I'm stuck here, not able to go to Accounts section.
Please provide a fix for this.
I don't know why is this happening because earlier the quick start directly loads the account section.

@shikhar229169 thanks for raising this issue! We have a beta release 2.7.0-beta out, can you please install this version and let us know if the issue is resolved?
We are aiming to release this as stable in the next week or so.
Thanks!

@jeffsmale90  Thanks for the update.
Yes, this release works and finally the accounts loaded.
Thanks.


Update GrpcClient to client ctor on channel

Updated client code to match docs and current api
Fixes #14136

Where is this readme.md displayed?

I'll update it.


Storage reduction pass

Description
This PR introduces an optimization pass that reduces three dimensional temporary storages (IJK) to two dimensions (IJ) whenever possible.

#194 has been merged

Could this be changed to use the mask concept used elsewhere instead of using a new axes argument? Also, we should add tests to ensure it works with storages allocated with different axis masks.

Thank you, I will look at using masks.

Replaced with temp-storage-reduce branch so closing.

Replaced with temp-storage-reduce branch so closing.


Aspect ratio to 1:1

Is there a way i can set the aspect ratio of the camera to 1:1 i.e. to have a square interface for my capturing @spaceoamit

Hope below code will solve your issue, Worked fine in my case
if ((1600 <= size.width) and (size.width <= 1920)) {
param.setPreviewSize(size.width, size.height)
param.setPictureSize(size.width, size.height)
break
}


Intents component: fired intents behave different in Studio and ingame

Tl;dr: Firing an intent from the client in Studio doesn't automatically pass the local player as an argument. When testing ingame, it behaves as expected (i.e. IsLocal and the player who fired the intent is automatically passed before any of the other arguments)
I'm using an intent in a control script for the client to ask to fire the gun on their tank. This is what it looks like on the client:
Intent:Fire("TankFired", Player.Character)
I'm passing in a single argument, the character of the player belonging to the client. This is what it looks like on the server:
function tankFired(IsLocal, player, tank, shouldBeNil)
print(isLocal, player, tank, shouldBeNil)
if tank == player.Character then
--shoot bullets and stuff
end
end
Intent:Subscribe("TankFired", tankFired)
When I test it ingame by pressing play on the Roblox page, it works as expected. The output is
false direMitten Blue Tank nil
Which makes perfect sense. But when I test it in Studio (the blue Play button), I get an error "Character is not a valid member of Model", which makes sense because the output reads
true Blue Tank nil nil
In other words, it doesn't automatically pass the Player as an argument when the intent is fired. This might be intentional on your part, but it's very unwieldy. I could add checks to see if the script is running in Studio, and change the passed arguments based on that, but I don't think I'm being unreasonable when I say that I don't want to spend time on or worry about that.
I understand that this behavior is similar to the built in BindableEvents and RemoteEvents, in that a player argument is obviously not passed when stuff isn't sent between client and server, which is technically not the case when testing things in Studio.
Am I supposed to be using the Tell method instead of the Fire method? I tried, and it works the same ingame. In Studio, nothing happens at all. It seems like the intent doesn't fire at all?
Oh and by the way, testing in Studio with a Local server does behave as expected. This would be fine, if it wasn't for the fact that doing this takes several times longer than just pressing Play.

Unfortunately, due to the way that Roblox doesn't internally separate the local and remote environments in Studio local testing (not a test server), the intent doesn't know that it is on the client (there is no way to get the script type without getfenv and looking for the script object.), resulting in the behaviour you're seeing.
Iirc Intents do spit out a warning when you try to load them in Studio play mode, stating that they may not work as expected. If not, I'll add the check and commit it.
Blame Roblox, as usual.


chore(templates): corrects database env variable

Fixes https://github.com/payloadcms/payload/issues/8877
Current behaviour:
pnpx create-payload-app@beta, select "Vercel Postgres",
.env file:
# Added by Payload
DATABASE_URI=postgres://postgres:<password>@<IP_ADDRESS>:5432/f
PAYLOAD_SECRET=4415faad68a15727b4ebf582

payload.config.ts:
db: vercelPostgresAdapter({
  pool: {
    connectionString: process.env.POSTGRES_URL || '', // wrong name, should be DATABASE_URI
  },
}),

@denolfe I hit this while trying to set up a demo project and I changed the .env to refer to DATABSE_URI, after which it all works. Why shouldn't we use DATABSE_URI in all cases and change the Neon adapter to follow the pattern?

@denolfe do you mean that $POSTGRES_URL is set when deploying with Vercel using the Neon integration? write-env-file.ts seems to only key off of existing env in example files. so not sure what you suggest - the example for the website is database-agnostic ref.

@denolfe could you please give some guidance for how to best fix this? Not sure where the source of truth really is. I can see this encoded here but it's not clear how to best thread that into selectDb or writeEnvFile.


Make CI green

upsert user for test so that precondition works
clear old channel types automatically from previous failing tests

Codecov Report

Merging #123 (b1f50a0) into master (c13ff5d) will increase coverage by 1.47%.
The diff coverage is 65.45%.

@@            Coverage Diff             @@
##           master     #123      +/-   ##
==========================================
+ Coverage   54.11%   55.59%   +1.47%
==========================================
  Files          13       14       +1
  Lines         850      903      +53
==========================================
+ Hits          460      502      +42
- Misses        308      315       +7
- Partials       82       86       +4

Impacted Files
Coverage Δ

client.go
59.68% <ø> (+3.10%)
:arrow_up:

version.go
83.33% <ø> (ø)

rate_limits.go
62.06% <62.06%> (ø)

event.go
56.41% <68.00%> (+23.07%)
:arrow_up:

channel_type.go
62.16% <100.00%> (+8.10%)
:arrow_up:

Continue to review full report at Codecov.

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


[3.x] Ensure MSBuildPanel buttons are instantiated

3.x version of #51322
Bugsquad edit: Fixes #51344.

Thanks!

Cherry-picked for 3.3.4.


Support setting HTTP trigger listen address in env var

Enables setting the shim's HTTP trigger listen address in SPIN_HTTP_LISTEN_ADDR (same naming scheme as Spin CLI). This can now be set in a container spec, which follows the approach of configuring the Spin runtime via container environment variables that is laid out in this draft SKIP.
closes https://github.com/spinkube/containerd-shim-spin/issues/52
related https://github.com/spinkube/containerd-shim-spin/issues/128

LGTM :)

@radu-matei @jsturtevant @Mossaka @devigned it would be great to get this merged before the next release if possible. There are two commented LGTMs but a review would be appreciated

Also, it might be nice to represent the informational container spec field of ports.containerPorts with the value of the SPIN_HTTP_LISTEN_ADDR_ENV via the Spin operator when creating the SpinApp, so it's more clear to folks.

@devigned, to clarify, are you suggesting adding a ports.containerPorts field to the SpinApp CRD? I agree that we need a clean way to set this in the SpinApp

@kate-goldenring hmm... not necessarily adding ports.containerPorts to the SpinApp since it is an array and it would probably better represented in a more Spin domain specific singular value field. I was suggesting that when the SpinApp is processed by the operator that the end product, the resulting pod / container spec would have that informational field. For example:
apiVersion: ...
kind: SpinApp
metadata:
  name: my-app
spec:
  httpListeningPort: 3000 # this drives configuration of the pod / container spec and informs the pod.spec.ports.containerPort
  otherStuff: ...
---
apiVersion: v1
kind: Pod
metadata:
  name: my-app
spec:
  containers:
  - name: spin-app
    ports:
      - containerPort: 3000 # this is only for information


[BUG]: resizeMode="cover" got overlap when place videos next to each other on Android

Version
6.6.2 (can preproduce with any version)
What platforms are you having the problem on?
Android
System Version
Any android version
On what device are you experiencing the issue?
Real device, Simulator
Architecture
Old architecture
What happened?
On Android, when videos with resizeMode="cover" place next to each other, the part of video that out of view still got rendered when touching another video views and overlap them, setting overflow: hidden on parent does not fully hide the out of view part.
iOS does not have this kind of bug.

Reproduction Link
https://github.com/hohoaisan/react-native-video-resize-cover-android-bug
Reproduction
Step to reproduce this bug are:

Place 2 videos with resizeMode="cover" next to each other

Based on this bug report https://github.com/TheWidlarzGroup/react-native-video/issues/1142
Using viewType="textureView" solved the issue, but what if I want to use DRM video and achieve the same ?

I have installed latest version 6.6.2. but still i got this issue.

Can react-native-video do something with clipToOutline = true with ExoPlayer as suggested here.
Seem this is the issue https://github.com/androidx/media/issues/1107#issuecomment-2256131225

@hohoaisan Good try, but it doesn't work, see the result

Clipping the view put some white zones which covering other videos ...

The patch I put in ExoplayerView.java for memory
--- a/android/src/main/java/com/brentvatne/exoplayer/ExoPlayerView.java
+++ b/android/src/main/java/com/brentvatne/exoplayer/ExoPlayerView.java
@@ -16,12 +16,14 @@ import androidx.media3.common.util.Assertions;
 import androidx.media3.exoplayer.ExoPlayer;
 import androidx.media3.ui.SubtitleView;

+import android.graphics.Rect;
 import android.util.TypedValue;
 import android.view.Gravity;
 import android.view.SurfaceView;
 import android.view.TextureView;
 import android.view.View;
 import android.view.ViewGroup;
+import android.view.ViewOutlineProvider;
 import android.widget.FrameLayout;

 import com.brentvatne.common.api.ResizeMode;
@@ -165,6 +167,10 @@ public final class ExoPlayerView extends FrameLayout implements AdViewProvider {
         } else {
             DebugLog.wtf(TAG, "wtf is this texture " + viewType);
         }
+        surfaceView.setClipToOutline(true);
+        surfaceView.setClipBounds(new Rect(getLeft(), getTop(), getRight(), getBottom()));
+        surfaceView.setOutlineProvider(ViewOutlineProvider.BACKGROUND);
+
         if (viewNeedRefresh) {
             surfaceView.setLayoutParams(layoutParams);

@@ -253,6 +259,7 @@ public final class ExoPlayerView extends FrameLayout implements AdViewProvider {
     }

     private final Runnable measureAndLayout = () -> {
+        surfaceView.setClipBounds(new Rect(getLeft(), getTop(), getRight(), getBottom()));
         measure(
                 MeasureSpec.makeMeasureSpec(getWidth(), MeasureSpec.EXACTLY),
                 MeasureSpec.makeMeasureSpec(getHeight(), MeasureSpec.EXACTLY));

Still got the issue on 6.7.0, any plan to fix this?

Still got the issue on 6.7.0, any plan to fix this?

As it is an exoplayer issue, there is no fix planned on react native video side. The only fix I see is moving to the texture view from the app side

issue still persist in 6.8.2

issue still persist in 6.8.2

declare enum ViewType {
TEXTURE = 0,
SURFACE = 1,
SURFACE_SECURE = 2
}
export default ViewType;
use viewType={0} work for me


Metrics for Istio Sidecar Injector

Describe the feature request
Currently Istio Sidecar Injector does not record and push any metrics. When Istio is deployed in large we want to know Injection failures so that we can monitor and create alerts. The feature request is to support the following metrics from Istio Side car injector to start with and later can be expanded

istio_sideecar_injections_total
istio_sidecar_injections_success
istio_sidecar_injections_failures

Describe alternatives you've considered
None
Affected product area (please put an X in all that apply)
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[X ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Additional context
N/A

Seems useful, but in most cases I've seen injection failing it's because kube cannot talk to the injector, which the injector could not report.

Yes for the case where Kube can not talk to Injector Kube api provides metrics for the rest calls it makes including latencies. This is for the case injector failing for some bug/reason similar to https://github.com/istio/istio/issues/16072.

:+1: thanks, seems like something useful


commit 32c4ea9 makes everything blue....

After 32c4ea9, I get a blue screen....
b4:

after:

@tzachar  which language do you write ?

Mostly python
On Sun, 25 Apr 2021, 12:50 Raphael, @.***> wrote:

@tzachar https://github.com/tzachar which language do you write ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/glepnir/zephyr-nvim/issues/16#issuecomment-826293951,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABFXXC5AZEVYRDFO4C2TNWLTKPQWXANCNFSM43L3DTCA
.

because the new feature is tsvariable highlight. check your image..it's wried i don't config the light yellow color in zephyr.

The light yellow is my default foreground:
highlight Normal guibg=black guifg=wheat

Right now, I am indeed disabling the TSVariable settings you added. However, it would be nice to be able to override the default settings.

How to override the TSVariable highlight?  I try to set  the command hi TSVariable guifg=xx as an auto command after ColorScheme or VimEnter event. But  it does not work.

Check out PR #17


Added some helpful notes and changes

Location of prebuilt inventory file - exercise for the user
Added variable to apache_test_message for node identification
Output node apache URLs using debug so that students can easily see results of plays
Update across exercises
Updated screenshots.

@parmstro are updates?  Its been over 20 days?  Can I merge?

closing because it has been more than 25 days since I asked for clarification, please make next PR on devel branch


Finished to_json, from_json functionalities. Added piece class, and some modification for player, board, tile, rng classes

Finished to_json, from_json functionalities. Added piece class, and some modification for player, board, tile, rng classes

Resolve merge conflicts

Merge after Team&Te4m branch finished


Filter what to log to MongoDB

Is it possible to filter what gets logged to MongoDB?  I would like to only log messages with severity ERROR (exceptions).
Or only requests to specific routes.  Or log different types of messages to different collections which can have different capped sizes / TTL indexes.  This way I can keep certain types of messages longer than others.

Right now it is doesn't supported, but I am ready to accept PR.


Rename methods on Faker::Types to avoid shadowing ruby standard methods

In particular, the class method hash, when shadowed, causes an error when Faker::Types is used as a hash key.
The issue is detailed in #1116.

The method name changes were as follows:

Faker::Types.hash => Faker::Types.rb_hash
Faker::Types.complex_hash => Faker::Types.complex_rb_hash
Faker::Types.integer => Faker::Types.rb_integer
Faker::Types.array => Faker::Types.rb_array
Faker::Types.string => Faker::Types.rb_string

Could you please rebase this branch with master, run rubocop and let me know when it's ready for review again? @MarcPer

Pull Request Test Coverage Report for Build 2133

11 of 13 (84.62%)  changed or added relevant lines in 1 file are covered.
7 unchanged lines in 1 file lost coverage.
Overall coverage remained the same at 99.64%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

lib/faker/types.rb
11
13
84.62%

Files with Coverage Reduction
New Missed Lines
%

lib/faker/time.rb
7
100.0%

Totals

Change from base Build 2132:
0.0%

Covered Lines:
2214

Relevant Lines:
2222

💛  - Coveralls

Hey, @vbrazo. It's done.


TypeError: Cannot read property 'size' of undefined

Package Name @azure/storage-blob:
Package Version 12.2.1:
Operating system MAC OS Mojave 10.14.6:
nodejs 12.3.1:

Describe the bug
I'm getting this error when using the uploadFile method: TypeError: Cannot read property 'size' of undefined
To Reproduce
const blockBlobClient = new BlockBlobClient(this.uploadUrl);
blockBlobClient.uploadFile(url, options);

Why are you passing an url to blockBlobClient.uploadFile()
blockBlobClient.uploadFile() is for uploading a file at local. You should being passing in a file path.
import * as path from "path";
const srcFile = path.join(folder, "README.md");
await blockBlobClient.uploadFile(srcFile );

Use the path module to avoid issue with different separators on different OS. And make sure you have the right access in the blobUrl to create and write it since you seem to be using SAS.
And if you want to upload a BlockBlob from an existing url. You should use BlobClient.beginCopyFromURL() or BlobClient.syncCopyFromURL. If there isn't enough documentation, you can find some use case in our tests.
https://github.com/Azure/azure-sdk-for-js/blob/3157a3d2e8c920c6d1cb6f4fe5f1882f647263a1/sdk/storage/storage-blob/test/blobclientpollers.spec.ts#L68
https://github.com/Azure/azure-sdk-for-js/blob/0a567a0b501d2ee68477d8bf9f71b0a99327e9ef/sdk/storage/storage-blob/test/blobclient.spec.ts#L965
API reference:
REST API reference doc: https://docs.microsoft.com/en-us/rest/api/storageservices/copy-blob

sorry, "url" was just wrong naming for the example.  What I'm trying to upload is actually a local file. I'm gonna try using path.

I believe it asserted in this line?
const size = (await fsStat(filePath)).size;

Could you try fs.stat() with your path to check if your file path is valid?
    /**
     * Asynchronous stat(2) - Get file status.
     * @param path A path to a file. If a URL is provided, it must use the `file:` protocol.
     */
    export function stat(path: PathLike, callback: (err: NodeJS.ErrnoException | null, stats: Stats) => void): void;

It's actually in (_b.send()).size it errors out.
The path seems to be valid. In the callback stats.isFile() returns true.
And I still getting the error even though I'm doing: blockBlobClient.uploadFile(path.join(filepath))
thanks

I see. Could you turn on the logger and share me the log?
Or could you share me your configuration and code so I can reproduce it?
import { setLogLevel } from "@azure/logger";
setLogLevel("info");

I'm gonna try setting setLogLevel to "info". In the meantime here is a screenshot from the devtools if that helps.

bringing setLogLevel("info"); doesn't seem to give any more logs.
Here is the code that tries to upload the file:
import { Readable } from 'stream';
import { BlockBlobClient } from '@azure/storage-blob';

const BROWSER_METHOD = 'uploadBrowserData';
const NODE_FILE_METHOD = 'uploadFile';
const NODE_STREAM_METHOD = 'uploadStream';

type AzureBrowserFile = Blob | ArrayBuffer | ArrayBufferView;
type AzureNodeFile = string;
type AzureNodeStream = Readable;

const upload = (): Promise<void> => {
  try {
    const blockBlobClient = new BlockBlobClient(this.uploadUrl);
    const options = {
      abortSignal: this.abortController.signal,
      onProgress: this.onProgress,
    };

    let upload;
    if (this.uploadMethod === BROWSER_METHOD) {
      upload = blockBlobClient.uploadBrowserData(this.file as AzureBrowserFile, options);
    }

    if (this.uploadMethod === NODE_FILE_METHOD) {
      upload = blockBlobClient.uploadFile(this.file as AzureNodeFile, options);
    }

    if (this.uploadMethod === NODE_STREAM_METHOD) {
      upload = blockBlobClient.uploadStream(this.file as AzureNodeStream, 8, 5, options);
    }

    if (!upload) {
      return Promise.reject();
    }
    upload.then(() => {
      this.progressHandler(this.fileSize);
      this.completeFileHandler();
    }).catch((e) => {
      let errorDispatched = false;
      if (e && e.message) {
        try {
          const domParser = new DOMParser();
          const xmlDoc = domParser.parseFromString(e.message, 'application/xml');
          const message = xmlDoc.querySelector('Message');
          if (message) {
            errorDispatched = true;
            this.onError(message.innerHTML);
          }
        } catch (error) { /**/ }
      }

      if (!errorDispatched) {
        this.onError(`Error uploading a file: ${e.code}`);
      }
    });
  } catch (e) {
    this.onError('Error Uploading a file: Unknown Error');
  }
  return Promise.resolve();
};

Actually it is failing in that line in const size = (await fsStat(filePath)).size;
I guess you are triggering uploadFile in the browser where the fsStat() is just a stub returning undefined.
Please note that the uploadFile only works in Node.js.

I'm not using uploadFile in the browser. It's an Adobe CEP application using Node 12.3.1

Then could you run the following code with your filePath and share me the result?
import * as fs from "fs";
import * as util from "util";

const fsStat = util.promisify(fs.stat);
const stat = await fsStat(filePath);
console.log(stat);

Here is the output:

Also as I understand from the switch in BlockBlobClient the file path is taken as a readable stream as it would try to call this.uploadResetableStream after the error

ok, I think we got it sorted out. It seems like as storage-blob is using node dependencies we need to import the azure packages in a specific way required by Adobe CEP, so nothing wrong at this side. Thank for all the help and sorry for the trouble

Good to know. Let us know if anything needed from us.

It seems like as storage-blob is using node dependencies we need to import the azure packages in a specific way required by Adobe CEP,

@C3PablO could you please share a bit more details? I am very curious about how you resolved the issue.

@jeremymeng, due how our application works we need to import the Azure dependencies like so:
const storageBlob = window.cepRequire('@azure/storage-blob');


Always get : OpenAI API Response was: Error: Request failed with status code 429.

I have VSCode: 1.74.3 version
CodeGPT: 1.0.14 ( Tried with 1.0.13)
I always get 429 requests ( ask CodeGPT, Ask Stackoverflow, cmd-shift-i..) despite not sending any requests successfully.
My plan is free and there is certain amount of requests I can send. I am not sure what can the problem be.

This is the error link from the OpenAI page
https://help.openai.com/en/articles/6891831-error-code-429-you-exceeded-your-current-quota-please-check-your-plan-and-billing-details

I have full qouta remaining and on plus plan but still receive the 429 error. Tried everything.

Found the solution. Thanks!


GitHub pages not turned on

Hi @doua000
Just a heads up that your GitHub Pages (web server) isn't turned on.
Could you take a moment and turn it on?
There is a video in Brightspace (in the content area under "GitHub") explaining the process or, you can hit Settings -> Pages -> And then under the Branch drop down select main.

Thanks! Just turned it on.

Awesome! Thank you @doua000
Just a heads up - there is no CSS file linked from your HTML file. Please take a moment and add the reference to your styles file.
Code in index.html file
https://github.com/imd1005-web-development-winter-2023/assignment-02-doua000/blob/26ec5f875e9f13d695727c8d194a7b1617f43b0e/index.html#L3-L8
Web server link
https://imd1005-web-development-winter-2023.github.io/assignment-02-doua000/

I think I got it fixed now! I included the link in my html.


bilinear resampling method outputs a distorted image

Hi,
I have found that the bilinear resampling method outputs a distorted image.
I have included a comparison image (left: using geotiff.js, right: using geotiff-tile) to demonstrate the issue.
(open in new window)

Test script to reproduce:
<!DOCTYPE html>
<html>
  <head>
    <script src="./node_modules/chroma-js/chroma.min.js"></script>
    <script src="./node_modules/flug/index.js"></script>
    <script src="./node_modules/geotiff/dist-browser/geotiff.js"></script>
    <script src="./dist/web/geotiff-tile.min.js"></script>
    <script>
      window.process = {
        env: {
          // TEST_NAME: "pulling tile from 3-band Geographic GeoTIFF as layout [row][column][band]"
        }
      }
    </script>
  </head>
  <body>
    <script>
      function three_to_four_bands({ tile, height, width }) {
        const data = new Array(4 * height * width).fill(255);
        for (let b = 0; b <= 2; b++) {
          for (let r = 0; r < height; r++) {
            for (let c = 0; c < width; c++) {
              data[(r * 4 * width) + (4 * c) + b] = tile[b][r][c];
            }
          }
        }
        return data;
      }

      function displayTile({ tile, height, width }) {
        const data = Uint8ClampedArray.from(tile);
        const imageData = new ImageData(data, width, height);
        const canvas = document.createElement("CANVAS");
        canvas.height = imageData.height;
        canvas.width = imageData.width;
        const context = canvas.getContext("2d");
        context.webkitImageSmoothingEnabled = false;
        context.mozImageSmoothingEnabled = false;
        context.imageSmoothingEnabled = false;
        context.putImageData(imageData, 0, 0);
        context.webkitImageSmoothingEnabled = false;
        context.mozImageSmoothingEnabled = false;
        context.imageSmoothingEnabled = false;
        document.body.appendChild(canvas);
        canvas.style.background = "darkred";
        canvas.style.border = "5px solid chartreuse";
        canvas.style.margin = "10px";
        // canvas.style.height = "512px";
      }

      test("resampling", async ({ eq }) => {
        const geotiff = await GeoTIFF.fromUrl("./ndvi2.tiff");
        const scale = 5;
        const _image = await geotiff.getImage();
        const rasters = await geotiff.readRasters({
          window: [0, 0, _image.getWidth(), _image.getHeight()],
          interleave: true,
          width: _image.getWidth() * scale,
          height: _image.getHeight() * scale,
          resampleMethod: "bilinear"
        });

        displayTile({ tile: rasters, height: _image.getHeight() * scale, width: _image.getWidth() * scale });

        const { height, width, tile } = await geotiff_tile.createTile({
          debug_level: 0,
          geotiff,
          bbox: _image.getBoundingBox(),
          bbox_srs: _image.geoKeys.ProjectedCSTypeGeoKey,
          method: "bilinear",
          round: true,
          tile_height: _image.getHeight() * scale,
          tile_array_types_strategy: "auto",
          tile_srs: _image.geoKeys.ProjectedCSTypeGeoKey,
          tile_width: _image.getWidth() * scale,
          timed: true
        });

        eq(tile[0].constructor.name, "Uint8Array");
        const data = new Uint8Array(tile[0].length * 4);

        for (let i = 0; i < tile[0].length; i++) {
          data[i * 4] = tile[0][i];
          data[i * 4 + 1] = tile[1][i];
          data[i * 4 + 2] = tile[2][i];
          data[i * 4 + 3] = tile[3][i];
        }

        displayTile({ tile: data, height: _image.getHeight() * scale, width: _image.getWidth() * scale });
      });
    </script>
  </body>
</html>

Hi, @tomerigal .  Thanks for reporting this!  It's a really good catch (and one that I've missed).  Would you happen to be able to share the ndvi2.tiff file?  If you can't share it publicly, but can share it privately, you could email it to<EMAIL_ADDRESS> It'll help greatly with debugging.
Just a heads up that the resampling happens in geowarp, so the issue probably lies somewhere in there, in case you have the time and inclination to submit a PR :-)

Sure i will open a PR in geowarp in a moment, and will send you the ndvi2.tiff by email. thank you for the quick response.

Open issue here: https://github.com/DanielJDufour/geowarp/issues/9


The Kinetics Dataset

Where can I get the data in /data/yiwei/kinetics?

Now I have downloaded the kinetics400 dataset. And the data is organized like this: /kinetics/train/class_name/.mp4, /kinetics/val/class_name/.mp4. How can I process the data to get ".pdt" file?

Hello, sorry for the late reply. You can see an example of processing mp4 files into .pt files in datasets/kinetics/getkineticssmall.py, and then you can find examples of merging the .pt files into .pdt files in datasets/kinetics/tobatch_37.py. Hope this helps!


renaming components for consistency w/ current product vision and naming rhetoric

Description
Please include a summary of the change and a link to which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Change status

[ ] Complete, tested, ready to review and merge
[x] Complete, but not tested (may need new tests)
[ ] Incomplete/work-in-progress, PR is for discussion/feedback

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

[ ] Test A
[ ] Test B

Checklist:
Everything in this checklist is required for each PR.  Please do not approve a PR that does not have all of these items.

[x] I have pulled from master before submitting this PR
[x] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] My code has been reviewed by at least one peer (the peer review to approve a PR counts.  The reviewer must download and test the code)
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] There are no merge conflicts

 BUGFIX: Renaming components in frontend for consistently with backend & current product vision

Some much needed changes to the component verbiage. This will make it a lot clearer for future dev teams to parse what these components are supposed to do.
Good catch on including the changes to the routes in this as well.


OndrejMichal: Printout Report

Description
Added Printout Report functions together with test. Since the test requires opening file the Model and associated functions (openModel, closeModel, delete) need to be updated without impact on current code.
Type of change

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation update

How Has This Been Tested?

[x] Unit Tests
[ ] Attached examples

Test Configuration:

RFEM version: 6.02.0039.115.addc937f23b
Python version: 3.11.0

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

Review:

One minor change needed printoutReport.py
One quesion regarding DocStrings on printoutReport.py
All UnitTests passed


dts: bindings: rename nxp,kinetis-wdog32 compatible

Rename "nxp,kinetis-wdog32" compatible to "nxp,wdog32" to remove the device family from its name because this hardware block is used in multiple NXP devices from different families.

It would be nice to review all such bindings. It is strange to see "kinetis" used by RT.

It is a historical quirk. Kinetis was the first parts added to Zephyr and when the IP block was reused it just carried the name. We have others that could also be cleaned up.


release: Volunteering for 2.18 release.

:wave:
I am happy to do next release. This is because we spent a lot time recent weeks in query optimizations on Prometheus, Thanos, and Cortex, so 2.18 release might have significant changes like:

Chunk Iterators finally :heart:
@pstibrany and @pracucci major optimizations to postings
Potentially https://github.com/prometheus/prometheus/issues/6878 with @mkabischev help.

I know I was a release Shephard just in December, but given that I have full context for those I feel like I can help in releasing 2.18 a lot.

:+1:

Looks like master is broken again, fixing now

Something is really broken: Test failed for some old code: https://circleci.com/gh/prometheus/prometheus/28861 This test no longer exists on this branch 0.o some cache somewhere?

This is scary not because of flakinesses like this, rather the opposite. If CI is running against random code, it can pass for broken code :/

Tests pass locally.
Somehow does not for CI for non existing code:
=== RUN   TestFanoutErrors
--- FAIL: TestFanoutErrors (0.02s)
    fanout_test.go:135:

        exp: &errors.errorString{s:"select error"}

        got: <nil>
FAIL
FAIL	github.com/prometheus/prometheus/storage/fanout	0.138s

:thinking: cc @simonpasquier any ideas?

@bwplotka hmm I've got the failure locally.

How @simonpasquier ?
Do you have this test? Also looks like master CI is broken as well.

Ok, looks like just some test was added in between of merges. Fixed on master now.

Merging as docs are fine.


Ability to Change Tooltip Keybinds

Hey, I was wondering if there is a way to adjust what keybind you hold to have the different details show up?
I could probably dig around in the files to do it, but im not super great at reading code so it would take a long time.
Thanks!

This is actually a feature I've been thinking about, ill work on adding it when I get some time.

Added in 1.2.4 download


Some comments on the Array module

from is unsafe (not soundly typed), but not marked as such
So is fromWithMap. It's also misleadingly named, suggesting it takes a Map data structure as an additional argument, when in fact it wants a map function. The latter goes for all *WithMap functions, but I won't repeat myself for every one of them. A better naming scheme for these might be mapFrom*?
*WithIndex is a really common and quite verbose pattern. I would suggest special casing this and use just an i suffix for this, e.g. mapi instead of mapWithIndex. I think it's common enough that this makes sense.
indexOfFrom and lastIndexOfFrom  are not very intuitively named. Perhaps indexOfStartingFrom would be better?
getSymbol seems like it would return a symbol, rather than what is pointed to by a symbol. getBySymbol and setBySymbol might be better names.

from is unsafe (not soundly typed), but not marked as such

Right. Not sure why we have the unsafe "from" functions anyway. Can't we always use arrayLike, and if people really want to be unsafe for some reason, then they can cast to an arrayLike using Obj.magic? BTW I think we should define Array.t and Array.arrayLike:
type t<'a> = array<'a>
type arrayLike<'a> = Js.Array2.array_like<'a>

@val external from: arrayLike<'a> => t<'a> = "Array.from"
@val external fromWithMap: (arrayLike<'a>, 'a => 'b) => t<'b> = "Array.from"

So is fromWithMap. It's also misleadingly named, suggesting it takes a Map data structure as an additional argument, when in fact it wants a map function. The latter goes for all *WithMap functions, but I won't repeat myself for every one of them. A better naming scheme for these might be mapFrom*?

Hmm, I don't know, it is a version of the JS Array.from method, so it makes sense to call it fromXxx, and we have that fromXxx naming pattern elsewhere, too (Float.fromInt etc.).

*WithIndex is a really common and quite verbose pattern. I would suggest special casing this and use just an i suffix for this, e.g. mapi instead of mapWithIndex. I think it's common enough that this makes sense.

IMHO this would be inconsistent with the naming in the rest of the library which avoids such abbreviations. To me, this would feel more like "the OCaml way" than "the ReScript way".

Right. Not sure why we have the unsafe "from" functions anyway. Can't we always use arrayLike, and if people really want to be unsafe for some reason, then they can cast to an arrayLike using Obj.magic?

I agree. I don't think this library needs to exhaustively cover the entire JS API surface either.

Hmm, I don't know, it is a version of the JS Array.from method, so it makes sense to call it fromXxx, and we have that fromXxx naming pattern elsewhere, too (Float.fromInt etc.).

So there are two rules that sort of conflict here already. One is that it's an established rescript convention to use fromXX for conversion constructor functions. The other is that bindings ought to start with the same name as the name of the function it binds to.
I don't think the rule applies all that much, since from functions typically have only one argument. This has two, and it behaves differently since it applies the second argument to the first during the conversion.
The other rule also have quite a few exceptions already. Just in the Array module, for example, there's copy for slice and copyAllWithin for copyWithin.
It is a downside that mapFrom* can be confused for a variant of the map function though. But I think that can be mitigated by placing it alongside the other constructor functions and having a clear docstring.

IMHO this would be inconsistent with the naming in the rest of the library which avoids such abbreviations. To me, this would feel more like "the OCaml way" than "the ReScript way".

I think I was actually the originator of "the ReScript way", from before it was even "the BuckleScript way". And while I do think it's a good fallback rule, it's one I think should have plenty of exceptions since it's quite verbose. And indeed there are plenty of exceptions to it already. Just in the Array module, for examplethere'scopyWithinToEndinstead ofcopyWithinWithTargetAndEnd, pushManyinstead ofpushWithArray, and joinWithinstead ofjoinWithString`.
There's also several similar abbreviations in use already, for example U, Opt and Exn .
But this naming is also inconsistent with the more general rule, which tends to describe additional function arguments. Whereas in this case Index isn't an additional argument to the function itself, but an additional argument to a callback function that is an argument to the named function. I don't think there's really an intentionally established convention for this. And I don't know if there should be either.
Still, I can understand that the i suffix can seem too abbreviated, but I'm struggling to come up with a better naming scheme and I think it's common enough that it's OK.
A more out-of-the-box alternative might be to remove these variant entirely, and just have the standard functions always pass the index. That means you'd have to ignore it when it's not used (e.g. arr->Array.map((el, _) => el.foo)), but I think that would be fine too.

Partly covered in the docstrings PR: https://github.com/rescript-association/rescript-core/pull/78

I agree WithIndex is verbose. findIndexWithIndex is the worst. In functions like someWithIndex and everyWithIndex the WithIndex part becomes more important than the core function name. F# and OCaml use the letter i abbreviation. I wouldn't make the index part required in a callback since I think most of the time it isn't needed. It's just so nice to write those callbacks as x => rather than (x,_) =>


clip_index not reset to 0 between videos

I am using LabeledVideoDataset, and found out that self.cur_clip_index returned by the UniformClipSampler sampler is not reset to 0 between videos.
Shouldn't we reset it here
https://github.com/facebookresearch/pytorchvideo/blob/23335c7aa495ad7472ce6d0620f2484683523397/pytorchvideo/data/labeled_video_dataset.py#L170
Adding a line such as self._clip_sampler._current_clip_index = 0 when "is_last_clip" is True? Or reset it in the UniformClipSampler?
Note that ConstantClipsPerVideoSampler resets _current_clip_index indeed
https://github.com/facebookresearch/pytorchvideo/blob/5c34ca13956425c63533923eebaf7c3b57acc71c/pytorchvideo/data/clip_sampling.py#L238

Resolved in this commit - https://github.com/facebookresearch/pytorchvideo/commit/94cac77206ad49d912f8d2b6bbc5aadcba70db3e. Thanks raising the issue.


Question: Iterating in reverse

Hello. Is it possible to iterate over the events in reverse order? I don't see any code for this and RecurrenceRuleIterator seems to work only in one direction. If it's not possible, could you give me a hint how I could implement that myself?

We don't have anything like that in place yet. I'm not even sure there is a practical solution to this. For infinite rules this is apparently impossible unless you start somewhere in the middle.
For finite rules you could just put all the results onto a stack and re-iterate the stack from the top.
In order to truly iterate backwards you'd have to find a event to start from which matches the rule with the given start event. That can be quite a challenge. I'll need some time to think about this. We could use something like that for "fast-forward" purposes as well.

I guess I stated the problem way too general. The problem I'm facing is, starting from now (or another point in time in the middle), how can I calculate the the event just before now. A brute force like approach could be to calculate the distance between two events, fast-forward to (now-2xdistance) and calculate the next event.
In simple cases, this may work. But, for example, finding the last 29.02. requires to go back 4 years and the that's just the first special case that comes to my mind.


Add tags to mesos-consul itself ?

Is there a possibility to add a tag to the mesos service itself ?
The issue is that if you run multiple Mesos clusters with a single shared Consul cluster, both environments get mixed.
Assuming a dev Mesos cluster:
dev.mesos.service.consul
And a prod Mesos cluster:
prod.mesos.service.consul
It would be great to be able to override the actual service name, mesos being really generic and also taking in account where you already have a mesos service in Consul.
Thoughts ?

Check out feature/configurable-service-name. That adds a --service-name to the command line options to change the mesos service name.
Maybe a --service-tag option that registers the mesos hosts as (leader|master|slave).<tag>.<service-name>.service.consul?

@ChrisAubuchon both would be great actually :smile: :christmas_tree:

@scalp42 I added --service-tags the branch. It takes a comma-delimited list of tags and registers the mesos hosts as (leader|master|follower)...service.consul.

@ChrisAubuchon thanks a lot for considering it! In the middle of some ops madness here but (and sorry in advance but gotta make sure :innocent:) does it just default to the standard behavior, meaning if you don't pass the param, it equals to:
(leader|master|follower).mesos.service.consul

Thanks again, I'll try to figure how to pass the branch when building go package (if you're familiar with Chef):
golang_package 'github.com/CiscoCloud/mesos-consul' do
  action node[cookbook_name][recipe_name]['nuke'] ? :nothing : :install
  retries 3
  retry_delay 2
end

@scalp42 The service-name defaults to mesos and the tags are empty by default so default behavior is not changed.

@ChrisAubuchon you rock! #hugops

Hi,
I just checked out a "mesos-consul" code and build an image recently. I am using consul 0.6.0. However,  I am trying to run a docker container with service-name and service-tags options, but it looks like it is not picking it up. Does it have to be in a particular order?
The way I am running it is:
sudo docker run -d mesos-consul:0.3.1 "--zk=zk://zkhost:2181/mesos --service-name=mymesos --service-tags=tag1,tag2"
whereas If I run it as:
sudo docker run -d mesos-consul:0.3.1 "--zk=zk://zkhost:2181/mesos"
it registers all the mesos task as service properly in consul.
But I i would like to leverage service-name and service-tags features, how to get it to work?
-Imran

I'm not sure if it's actually made it to master @ChrisAubuchon maybe can confirm

I also have other question regarding the service-name and service-tags. Can we extend that to the actual marathon applications?
For example: If I have multiple marathon frameworks and if they the same application names, then it sort of pollutes the services in the consul if the name is common. What I would like to get is something like "<app_name>.<service_name>" registered as a service in consul rather than just "<app_name>". It is more like adding a namespace feature to mesos-consul.
-Imran

I also have other question regarding the service-name and service-tags. Can we extend that to the actual marathon applications?
For example: If I have multiple marathon frameworks and if they the same application names, then it sort of pollutes the services in the consul if the name is common. What I would like to get is something like "app_name.service_name" registered as a service in consul rather than just "app_name". It is more like adding a namespace feature to mesos-consul.
-Imran

@imrangit --service-name and --service-tag is included in v0.3.2


Statistical feature

hey - that's great - but that's a lot of commits to review in one PR - in the future let's do pull request for smaller and more homogeneous chunck when possible - testing the stuff on my machine now !

I can split this into backend and frontend, if that's easier!

I can split this into backend and frontend, if that's easier! (Commented with the wrong account previously.)

Some notes:
You can test the API request directly by querying http://localhost:5000/json/collection-significance. Parameters to send are specified at http://localhost:5000/json/collection-significance/help
I commented out some print statements in statistics.py. It might help to uncomment those to track exactly what's going on.

I found that the widget does not always (actually, now never) show up after the significance test is finished - @neelsomani  @Sharabesh  did you observed this as well ? I created a "10-vision-papers" and a "10-audio-papers" collection and tried to test the difference, we should get "vision" blobs in the vision-audio  and "audio" blob in the audio-vision.

Hmm, that seems to imply that the API endpoint is failing. Did you try pulling the latest version? I noticed that something was wrong shortly after I pushed - then I realized that my correction was incorrect, so I pushed again. If you don't have the latest version, that might explain it. I tested the latest version right before I left for work.

Not going to bother deleting/readding that comment again...

We probably don't want to dump a file to the server itself, but we can dump to a database. I think the best solution is to check your Javascript console, and/or uncomment the print statements in the Python code. Because the endpoint is asynchronous, it's not going to throw errors in the same way (i.e., on certain failures, rather than returning an invalid response code, it will just hang indefinitely).

Alright, I just replicated what you did, and I found that there were no significant results returned by the API endpoint. (i.e., the call wasn't hanging/there was no error; it just didn't return any results.) I've added a div to indicate when no results are returned.

With regards to significance values, if you set the threshold and width to some arbitrarily high value, you can see results, but under defaults it looks like results weren't showing up for the majority of the ones I tested. @jbpoline did you think was an issue with implementation or a case where we should update the default values?

If you do a test with 30 articles with the query "vision" against the whole database, then results will show up with the current threshold; that's why I moved it back down from the arbitrarily high value. So it's more likely an issue with the implementation rather than the threshold (or neither, and this is just the correct result).

testing it again - I had  pulled though...  will uncomment to see what's going on...

ok - I get  "no significant results" - which is a bit strange when comparing the "audio" versus "vision" - will dig into this ...

Hi @jbpoline, aside from making the endpoint, we might want to look into this issue you brought up in July (where "audio" vs. "vision" gave no significant results), if it hasn't already been resolved.


the CLI seems to be missing a dependency, which

cross-env version: 5.2.0, 5.1.0 tested
node version: 10.6.0
npm (or yarn) version: yarn 1.13.0

Relevant code or config
$ npx cross-env
# Error: Cannot find module '../lib/utils/unsupported.js'
#     at Function.Module._resolveFilename (internal/modules/cjs/loader.js:581:15)
#     at Function.Module._load (internal/modules/cjs/loader.js:507:25)
#     at Module.require (internal/modules/cjs/loader.js:637:17)
#     at require (internal/modules/cjs/helpers.js:20:18)
#     at /usr/local/lib/node_modules/npm/bin/npm-cli.js:19:21
#     at Object.<anonymous> (/usr/local/lib/node_modules/npm/bin/npm-cli.js:153:3)
#     at Module._compile (internal/modules/cjs/loader.js:689:30)
#     at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
#     at Module.load (internal/modules/cjs/loader.js:599:32)
#     at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
$ yarn list --pattern cross-env
# └─<EMAIL_ADDRESS># ✨  Done in 0.81s.

What you did:
yarn
What happened:
After a yarn upgrade other-dependency, this one began missing which/
Reproduction repository:
#!/usr/bin/env bash
mkdir repoduction-repo && cd $_ && git init
yarn add --dev cross-env
npx cross-env

Problem description:
Missing dependency, looks like.
Suggested solution:
Re-add which as a dependency.

Sorry, I cannot reproduce:
~/Desktop 🤯
$ mkdir repoduction-repo && cd $_ && git init
/Users/kentcdodds/Desktop/repoduction-repo
Initialized empty Git repository in /Users/kentcdodds/Desktop/repoduction-repo/.git/
~/Desktop/repoduction-repo 🤯
$ yarn add --dev cross-env
npx cross-env
yarn add v1.12.3
info No lockfile found.
[1/4] 🔍  Resolving packages...
⠂ cross-env
[2/4] 🚚  Fetching packages...
[3/4] 🔗  Linking dependencies...
[4/4] 📃  Building fresh packages...

success Saved lockfile.
warning Your current version of Yarn is out of date. The latest version is "1.15.2", while you're on "1.12.3".
info To upgrade, run the following command:
$ brew upgrade yarn
success Saved 10 new dependencies.
info Direct dependencies
└─<EMAIL_ADDRESS>info All dependencies
├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>└─<EMAIL_ADDRESS>✨  Done in 0.42s.
~/Desktop/repoduction-repo 🤯
$ npx cross-env

~/Desktop/repoduction-repo 🤯
$

I'm guessing it's something else wrong in your project.

Future bug-hunters: turns out some global operation nuked my installation of npm.


Data sampling and statistics

Currently, samples have all the same weight. If GPS is recording one sample per second, statistics will be time based. If GPS is recording values "smartly", a sample can be very long in distance and/or in time.
If a sample should be ponderated over time elapsed, only samples happening over a predefined speed should be used. This is what is used for distributions.

@glandais Speaking about best splits?

yes, and averages/quartiles in activity processor

@tazmanska or @glandais Are you fixing it currently or intend to fix it? If not i will. Just to avoid duplicate work.
Again, thanks for involvement you put in this extension :)
Tom

Done it in best splits, looking in activity processor, I'll commit at the end of lunch break :)

Commited weighted percentiles on my branch!
Unable to create a pull request by the way ;(
Inspired from https://en.wikipedia.org/wiki/Weighted_median and https://en.wikipedia.org/wiki/Percentile#Definition_of_the_Weighted_Percentile_method

Track comment
Bug fixed via pull request #157 (commit: https://github.com/glandais/StravaPlus/commit/6d130e9f96dc4cba2d2a864d119ecc787ae726b0)

I merged weighted percentiles with your  #157 pull request. Just to resolve some conflicts.
I have strong changes before/after on some activities (ex: https://www.strava.com/activities/432548748).
What's the gain of weighted percentiles in few words? What could you say to a cyclist/runner of 55 years old working in marketing :) ?
Thanks for all again !

Weighted percentiles is just like percentiles but using a weight over each sample : time in general, distance for elevation
I'll recheck values used for averages/distribution and may refactor it to get everything the same way

@glandais Thanks, i asked this to you because the documentation about median/quartiles may change

No time for it since few days... And it will not be this week end neither :(

@glandais No problem, my question was just answerable by yes or no. In all case i would finish documentation on my side.
Nice weekend to you ;)
Thanks for all !
Tom


Can not logout from different zone?

Library

[ ]<EMAIL_ADDRESS>
Description
I have a React using AzureAD MSAL.js (version "^1.4.5",) and Dotnetcore 3.1 SPA program. I deployed the program on Azure US East2 region, so the deployed url is {projece_name}.azurewebsites.net
Everything went fine if we browser from US Eastern, we can log in, log out success;
However, offshore team(non US region) can login success, but they cannot logout the program. During debug they found they failed on this network call during logout, the status is 'Canceled'
https://login.microsoftonline.com/{ hide }/oauth2/v2.0/logout?client-request-id=xxxxx1&post_logout_redirect_uri=https%3A%2F%2Flogin.microsoftonline.com%common%2Foauth2%2Flogout
Source
Here is some code from C# and React:
c# code:
services.AddCors(options => { options.AddPolicy("CorsPolicy", builder => builder.SetIsOriginAllowed(_ => true) .AllowAnyMethod() .AllowAnyHeader() .SetIsOriginAllowedToAllowWildcardSubdomains() .AllowCredentials()); });
React Code:
export const msalAuth = new UserAgentApplication({ auth: msalConfig, cache: msalCache,});
export const msalConfig = { authority: 'https://login.microsoftonline.com/myCompanyTenantId', clientId: 'myCompanyClientId', redirectUri: document.getElementById('root').baseURI, postLogoutRedirectUri: 'https://login.microsoftonline.com/common/oauth2/logout', validateAuthority: false, navigateToLoginRequestUrl: false, };
export const msalCache = { cacheLocation: 'sessionStorage', storeAuthStateInCookie: false, }; // also tried cacheLocation: 'localStorage',
onSignOut() { msalAuth.logout(); }

[ ] Internal (Microsoft)
[ ] Customer request

@zzbxd Are there any errors thrown that might explain why it's failing? I would suggest opening a ticket with Azure support as this does not sound library related.

The error status is 'Canceled', I update the description.

Cancelled status can happen if the component that initiated the logout unmounts before the redirect to the logout endpoint occurs.
I'm also noticing your postLogoutRedirectUri is set to https://login.microsoftonline.com/common/oauth2/logout. This should be set to a page in your app, not the server logout page.

ok, I will change  postLogoutRedirectUri to a local page.
Meanwhile, change logout function like below will help my component unmounted later?
   async onSignOut() {       await msalAuth.logout();     }

@zzbxd That could help but I can't say for sure. You'll need to do some debugging to determine if this is the cause and if so, how to prevent it. This is highly dependent on the details of your specific app so I can't be of assistance in that aspect.

@tnorling No luck, offshore team still has same issue after I await msalAuth.logout(); and change redirect to local.
I also add new function componentWillUnmount(), but from console log it never get triggered;
    componentWillUnmount() {       console.log('unmount component');     }
Is there anything else could cause logout() cancel ?
I asked company Azure team and they do not know.

@tnorling You are correct, it is my code bug. My component unmounts earlier.


operator: fix identity GC collection

As the operator uses a different constructor for the GC of the
allocator, this constructor was not being initialized with the min and
max values of the identities that it should be GC. This commit adds
those options making it possible for the Operator to GC those
identities.
Fixes: 0c0f96531286 ("operator: only GC identity keys of its own cluster")
Signed-off-by: André Martins<EMAIL_ADDRESS>Fixes https://github.com/cilium/cilium/issues/19648

/test


window.matchMedia("(prefers-color-scheme: dark)").addEventListener is not a function. (In 'window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",()=>{const r=i();r!=="light"&&r!=="dark"&&t(n())})', 'window.matchMedia("(prefers-color-scheme: dark)").addEventListener' is undefined)

Raygun report https://app.raygun.com/crashreporting/258s6a2/errors/221654528145 has more details about the error

This error is occurring in Mobile Safari 13. The missing API was added in Safari 14 which was released in late 2020. Should we be supporting phones this old?

Adding support would be simple: https://stackoverflow.com/a/60000747/212978


Add LCOW privileged support

Signed-off-by: Justin Terry (VM<EMAIL_ADDRESS>

@jhowardmsft / @kevpar - I can't make you a reviewer until you are a collaborator but here ya go.

Merging.


Follow-on work to goldens

Exclude flutter_goldens package from dartdoc because it's for internal
use only
Document why flutter_tools doesn' tneed to be excluded from the list of
packages to document
Make flutter analyze --dartdocs ignore undocumented members in flutter_goldens
Performance optimization in the flutter comparator, and associated
test updates.

Fixes the undocumented public members benchmark


🚨refactor: Applying the  SOLID Principles, best practices and document the code.

I have refactored the code by applying SOLID principles and following industry best practices. Additionally, I have documented the code thoroughly to improve its readability and maintainability.
These changes aim to make the codebase more modular and easier to extend or modify in the future. I believe this will help the community contribute more effectively by simplifying the process of adding new features or extending existing functionality.
I hope you find these improvements beneficial, and I look forward to any feedback you may have.

Thanks @Galileo103 we do appreciate it our team will look at that and provide you with feedback.

@Galileo103 Thank you for your valuable contribution—it’s greatly appreciated.
@pavly-gerges Thank you for your thoughtful review. We appreciate your feedback and will carefully consider your comments.


How can I obtain the 'base_dir' and 'db_path'

1、How can I obtain the 'base_dir' mentioned in the configuration file: '/home/aryan/Airloc_Public/data_collection/x-view/data'?/.
2、Similarly, how can I obtain the 'db_path' mentioned in the configuration file: '/home/aryan/Airloc_Public/data_collection/database'? It seems that the data_collection folder is not present in the open-source code.

The 'base_dir' is the path to /data folder. /data folder can be obtained by unzipping the data.zip file. The details are given in the readme file.
The 'db_path' should be an empty folder for saving preprocessed database. It should be created by the user.

Thank you very much for your reply. If I want to test this project in a live environment, how do I make my own dataset and train it? Is it made in the format of the KITTI dataset?

https://github.com/sair-lab/AirLoc/tree/main/datasets  You can use the preprocessing code by converting real world images into this directory structure and then preprocess your images to change them to the desired format for using AirLoc


Analysis server suggests non-Dart files as imports

Copied from https://github.com/Dart-Code/Dart-Code/issues/452#issuecomment-346705346.
Simple reproduction is type import 'package:flutter/, and wait for auto-complete.

... I imagine anything but a .dart file will never succeed, so why suggest it?

Fixed by https://dart-review.googlesource.com/c/sdk/+/23700.


feat: add a wildcard expansion to metadata full names when building the CS

What does this PR do?
allows you to pass a wildcard as part of a full name when construction a component set via metadata
e.g.
'FlexiPage:Property*'
What issues does this PR fix or reference?
https://github.com/forcedotcom/cli/issues/2386 @W-13867893@
Functionality Before
would error
Functionality After
Deploys FlexiPages that match Property*
Retrieves as well*
*when the metadata already exists locally
force:source:deploy -m 'FlexiPage:Property*'
...
DEPLOY PROGRESS | ████████████████████████████████████████ | 3/3 Components

=== Deployed Source

 FULL NAME            TYPE      PROJECT PATH
 ──────────────────── ───────── ─────────────────────────────────────────────────────────────────────────
 Property_Explorer    FlexiPage force-app/main/default/flexipages/Property_Explorer.flexipage-meta.xml
 Property_Finder      FlexiPage force-app/main/default/flexipages/Property_Finder.flexipage-meta.xml
 Property_Record_Page FlexiPage force-app/main/default/flexipages/Property_Record_Page.flexipage-meta.xml

Tested with plugin-source and plugin-deploy-retrieve and dreamhouse-lwc project.  -m "ApexClass:Test*" and -m "ApexClass:Test*" -m "CustomObject:Broker*" and it all worked.
Note that you have to quote the values or it won't work.


Update to actions/checkout@v2

There is now actions/checkout@v2. Maybe we should update?

Thanks for pointing it out! I had updated this repo and recipes in https://github.com/actions-rs/meta, leftovers in other repos will be handled a bit later


⚠ Bofrost.es has degraded performance

In 11b3bcf, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1454 ms

Resolved: Bofrost.es performance has improved in b239b70.


How to use vue-meta with ssr?

Is there any way to use it with createBundleRenderer ? this function outputs the ssr bundle with html and then i'm using this html in .renderToString() function.
So when i'm adding ${meta.text()} to the res.send() my rendered html file becoming weird and not semantic. I mean meta tags are not in  and etc.
Thanks.

I found a solution. if anyone interested just add {{{ meta.inject().title.text() }}} and other meta props in template.html

This works, however, the Vue SSR docs discourage the usage of {{{ }}} and warn us of potential XSS attacks:

Use double-mustache (HTML-escaped interpolation) to avoid XSS attacks.

https://ssr.vuejs.org/en/head.html (See "Notes" at the bottom)

I know this, but for now i don't know how to inject it to html. double mustaches just output it as text..

Is there an alternative approach than using {{{ }}}?

@Atinux ping

@Atinux - any update on @newenegue's previous comment?

Actually, meta.inject().title.text() render escaped HTML so you can have to use {{{ }}}.
Example: title: 'Coucou'
$meta().inject().title.text() => <title data-vue-meta="true">Coucou</title>

Oh, perfect.
Should we update this in doc?

A PR would be awesome :)

@Atinux - here you go - https://github.com/declandewet/vue-meta/pull/156


Could not run integration tests

I think there's something prevents us to run integration tests recently. I cannot complete any test. Probably it's because the dind image is changed to dockerswarm/docker?
Most of time I suspect each script is hanging around docker_swarm info but not really sure.
/cc @aluzzardi

@chanwit Tests are hanging on the last test of each file. Doing Ctrl-C shows the test succeeding. It seems to be related to bats somehow sstephenson/bats#80
cc/ @aluzzardi @vieux

Tests hanging means we forgot to do a cleanup

Yes, that is what I am aware of.
But something's strange when upgrading to Docker 1.6.0 as I cannot do regression on existing integration tests any more.
I have no idea what's going on here on my machine.

@chanwit Can you pull the latest changes (merged with #685) and try again to see if that fixes the issue?

@abronan @aluzzardi after pulling the latest code, I am still facing some issues running the integration tests. The tests fail when swarm manage is called and it backtraces to this https://github.com/docker/swarm/blob/master/test/integration/helpers.bash#L28 call. I rebuilt the binary and ran bats test/integration/<filename> .

Could you provide the complete output?

Here is the output when I run port-filter.bats
✗ docker should filter port in host mode correctly
(from function build_swarm' in file test/integration/helpers.bash, line 28,     from function swarm_manage' in file test/integration/helpers.bash, line 52,
in test file test/integration/port-filter.bats, line 12)
`swarm_manage' failed
Containers: 0
Images: 0
Storage Driver: aufs
Root Dir: /var/lib/docker/aufs
Backing Filesystem: extfs
Dirs: 0
Dirperm1 Supported: false
Execution Driver: native-0.2
Kernel Version: 3.13.0-39-generic
Operating System: Ubuntu 14.04.1 LTS (containerized)
CPUs: 1
Total Memory: 1.955 GiB
Name: node-0
ID: X666:BXIH:NMHG:5JQX:25FK:I3YT:RARC:ZGGR:4MGO:GZ24:RFI4:LD55
WARNING: No swap limit support
Containers: 0
Images: 0
Storage Driver: aufs
Root Dir: /var/lib/docker/aufs
Backing Filesystem: extfs
Dirs: 0
Dirperm1 Supported: false
Execution Driver: native-0.2
Kernel Version: 3.13.0-39-generic
Operating System: Ubuntu 14.04.1 LTS (containerized)
CPUs: 1
Total Memory: 1.955 GiB
Name: node-1
ID: BTWI:FLUI:2MX2:PHQR:T6WB:WEIF:Q4BW:R6CW:O2O7:3YGJ:ISTR:OCBJ
WARNING: No swap limit support
go install github.com/docker/swarm: build output "/tmp/tmp.rbrZUnW33V" already exists and is not an object file
godep: go exit status 1
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]
Stopping 52473afa9c1d8466face2328306842f321cf660c7adaa83cefd2e4025b243daa
Stopping ead16971e81eeb7f567ebb4d26f36ee8ae1e7ca74219bd39acdcc84633c07443
1 test, 1 failure

What operating system are you using?

Could you try changing build_swarm in helpers.bash with:
 function build_swarm() {
       [ -x $SWARM_BINARY ] || (rm -f $SWARM_BINARY && cd $SWARM_ROOT && godep go build -o $SWARM_BINARY)
 }

Basically $SWARM_BINARY is created with a mktemp (so the file exists but is not executable). On my system, go happily overwrites that file with the binary but on yours it doesn't.
This should fix it.

@aluzzardi that works. Will you be able to push that change to master or do you want me to add that as part of the dependency.bats pull request?

Sure


Any plan to release extra code?

Hi @fstahlberg
Is there any plan to release related code about beam search and constraining FSTs?
Thank you!

Hi,
We are not planing to release the code, but our implementation is very similar to the open-source SGNMT toolkit.
Best, Felix


*:fix point-in-time backup

Backup process should be able to read all WALs until io.EOF to
generate a point-in-time backup.
Our WAL file is append-only. And the backup process will lock all
files before start reading, which can prevent the gc routine from
removing any files in the middle.
There is a potential race that the might lead to a failure of backup.
Writer might release the file lock while backup read is not holding it,
but this possibility is so low and we can probably just ignore it for now.
And the backup process can retry if it happened.
Tested manually, and it works great.
Fix https://github.com/coreos/etcd/issues/2664

/cc @sorah

@barakmich @yichengq I am going to merge this soon if no objection.

:eyes: Thank you for letting me know this. Butt I don't have a time to test this for a while ... sorry (hope this works...)

lgtm


Enable Renovate on this repo

Now that babel-merge has more substantial dependencies (babel), we should enable Renovate to keep them up to date.
This is particularly important when Babel is still in beta/RC, since both babel-merge and @neutrinojs/compile-loader are now pinning to exact babel versions, and at the moment have different versions referenced, meaning two copies of Babel are downloaded/installed/used together.

Fixed by #6.


Fix build warnings from recently accepted QnAMaker changes

Pull Request Test Coverage Report for Build 68618

0 of 0   changed or added relevant lines in 0 files are covered.
11 unchanged lines in 3 files lost coverage.
Overall coverage increased (+0.01%) to 77.025%

Files with Coverage Reduction
New Missed Lines
%

/libraries/Microsoft.Bot.Builder.AI.QnA/Utils/TrainUtils.cs
2
75.0%

/libraries/Microsoft.Bot.Builder.AI.QnA/Utils/ActiveLearningUtils.cs
3
77.78%

/libraries/Microsoft.Bot.Builder.AI.QnA/QnAMaker.cs
6
91.6%

Totals

Change from base Build 68612:
0.01%

Covered Lines:
4945

Relevant Lines:
6420

💛  - Coveralls

:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.dll compared against version 4.3.1
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.AI.Luis.dll compared against version 4.3.1
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.AI.QnA.dll compared against version 4.3.1
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.ApplicationInsights.dll compared against version 4.3.1
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.Azure.dll compared against version 4.3.1
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.Dialogs.dll compared against version 4.3.1
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.TemplateManager.dll compared against version 4.3.1
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Configuration.dll compared against version 4.3.1
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Connector.dll compared against version 4.3.1
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Schema.dll compared against version 4.3.1


Rotation of tiles

I worked with your example and noticed that rotating tiles by 90° is not catched in your Draw method. Using IsTileFlippedDiagonal() detects the right tile, but adjusting the rotation param of the draw method, leads to a shifted tile.
Any idea for good solution?

Draw method takes a rotation in radians and the rotation happens around the upper-left corner of each sprite, so you should account for that in the destinationRectangle parameter.
I'm going to update the example with this functionality as soon as I can, thanks for pointing it out!

Great :) Thank you for your great example project!

You are welcome!

                    if (map.IsTileFlippedDiagonal(layer, x, y))                     {                         rotation = ((float) Math.PI / 2.0f);                         destination.X += map.TileWidth;                     }
Mostly did the job. But i'm having issues to find a satisfying solution if the tile was flipped additionally.

I don't think that is a solution: a diagonal flip is not equal to a rotation.
To have a PI/2 rotation you should flip the tile diagonally and then horizontally too.
Pseudocode:
if (Diagonal && Horizontal) rotation = PI / 2;
if (Horizontal && Vertical) rotation = PI;
if (Vertical && Diagonal) rotation = 3/4 * PI;

I posted an update on the development branch.
It needs some testing but for basic usage should work fine.

I just posted an update that should solve the issue.
It covers all combinations of flipping supported by Tiled.

I just posted an update that solves the issue.
It covers all combinations of flipping supported by Tiled.

Thanks!


[Translation] Deploying react

The end of Part one. : )

That's amazing! Thank you! Merging, have a look and see if things look okay.