How to limit exposed metrics

I'm able to limit what is scraped via servicemonitor, but is there a way to limit what is exposed at the /metrics endpoint? Our current setup returns 26k metrics.

Can you post a log of what you're seeing?

Here is a typical result from the exporter. As you can see most host/task/queue combination generate 770 metrics. While celery_task_runtime_bucket returns 11205 metrics. And the total number of rows is 25956. In my podmonitoring config (servicemonitor) I drop most metrics except few. I would like to have the dropped at the exporter level.

# HELP celery_task_sent_total Sent when a task message is published.
# TYPE celery_task_sent_total counter
# 772
celery_task_sent_total{hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 0.0
# HELP celery_task_sent_created Sent when a task message is published.
# TYPE celery_task_sent_created gauge
# 772
celery_task_sent_created{hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 1.6956297088633437e+09
# HELP celery_task_received_total Sent when the worker receives a task.
# TYPE celery_task_received_total counter
# 772
celery_task_received_total{hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 330.0
# HELP celery_task_received_created Sent when the worker receives a task.
# TYPE celery_task_received_created gauge
# 772
celery_task_received_created{hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 1.69562970886338e+09
# HELP celery_task_started_total Sent just before the worker executes the task.
# TYPE celery_task_started_total counter
# 772
celery_task_started_total{hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 16.0
# HELP celery_task_started_created Sent just before the worker executes the task.
# TYPE celery_task_started_created gauge
# 772
celery_task_started_created{hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 1.6956297088634067e+09
# HELP celery_task_succeeded_total Sent if the task executed successfully.
# TYPE celery_task_succeeded_total counter
# 772
celery_task_succeeded_total{hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 326.0
# HELP celery_task_succeeded_created Sent if the task executed successfully.
# TYPE celery_task_succeeded_created gauge
# 772
celery_task_succeeded_created{hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 1.695629708863434e+09
# HELP celery_task_failed_total Sent if the execution of the task failed.
# TYPE celery_task_failed_total counter
# 815
celery_task_failed_total{exception="",hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 0.0
# HELP celery_task_failed_created Sent if the execution of the task failed.
# TYPE celery_task_failed_created gauge
# 815
celery_task_failed_created{exception="",hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 1.6956297088634605e+09
# HELP celery_task_rejected_total The task was rejected by the worker, possibly to be re-queued or moved to a dead letter queue.
# TYPE celery_task_rejected_total counter
# 772
celery_task_rejected_total{hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 0.0
# HELP celery_task_rejected_created The task was rejected by the worker, possibly to be re-queued or moved to a dead letter queue.
# TYPE celery_task_rejected_created gauge
# 772
celery_task_rejected_created{hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 1.6956297088634827e+09
# HELP celery_task_revoked_total Sent if the task has been revoked.
# TYPE celery_task_revoked_total counter
# 772
celery_task_revoked_total{hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 0.0
# HELP celery_task_revoked_created Sent if the task has been revoked.
# TYPE celery_task_revoked_created gauge
# 772
celery_task_revoked_created{hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 1.6956297088635025e+09
# HELP celery_task_retried_total Sent if the task failed, but will be retried in the future.
# TYPE celery_task_retried_total counter
# 772
celery_task_retried_total{hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 0.0
# HELP celery_task_retried_created Sent if the task failed, but will be retried in the future.
# TYPE celery_task_retried_created gauge
# 772
celery_task_retried_created{hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 1.695629708863521e+09
# HELP celery_worker_up Indicates if a worker has recently sent a heartbeat.
# TYPE celery_worker_up gauge
# 27
celery_worker_up{hostname="myhostname"} 1.0
# HELP celery_worker_tasks_active The number of tasks the worker is currently processing
# TYPE celery_worker_tasks_active gauge
# 27
celery_worker_tasks_active{hostname="myhostname"} 6.0
# HELP celery_task_runtime Histogram of task runtime measurements.
# TYPE celery_task_runtime histogram
# 11205
celery_task_runtime_bucket{hostname="myhostname",le="0.005",name="mytaskname",queue_name="myqueuename"} 287.0
# 747
celery_task_runtime_count{hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 607.0
# 747
celery_task_runtime_sum{hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 1034.6516969194636
# HELP celery_task_runtime_created Histogram of task runtime measurements.
# TYPE celery_task_runtime_created gauge
# 749
celery_task_runtime_created{hostname="myhostname",name="mytaskname",queue_name="myqueuename"} 1.6956297089354677e+09
# HELP celery_queue_length The number of message in broker queue.
# TYPE celery_queue_length gauge
# 4
celery_queue_length{queue_name="myqueuename"} 0.0
# HELP celery_active_consumer_count The number of active consumer in broker queue.
# TYPE celery_active_consumer_count gauge
# HELP celery_active_worker_count The number of active workers in broker queue.
# TYPE celery_active_worker_count gauge
# 2
celery_active_worker_count{queue_name="myqueuename"} 25.0
# HELP celery_active_process_count The number of active processes in broker queue.
# TYPE celery_active_process_count gauge
# 2
celery_active_process_count{queue_name="myqueuename"} 0.0

Why don't u adjust the buckets? Less buckets less metrics. Obv a drawback shortterm by adjusting bucket sizes.
export CE_BUCKETS=1,10,60,600,1800

U can also set CE_GENERIC_HOSTNAME_TASK_SENT_METRIC=true to set a generic hostname for the celery_task_sent_total metric. Otherwise it's the host that sent the task, e.g a random django pod.

Thanks, that worked.

Good guy Adin


Reconnect Upon Wake

I have my server information entered manually because the automatic server selection is a bit of a mess - it's showing the same library many times all under different addresses.
When I sleep the computer and rewake it, it can't connect, and doesn't seem to retry to connect - but restarting the application addresses it.

I have my server information entered manually because the automatic server selection is a bit of a mess - it's showing the same library many times all under different addresses.
This behaviour is most likely due to old data about your server being present on your PLEX account. I don't control that, but you can clean it in your PLEX account management UI in the PLEX app.

When I sleep the computer and rewake it, it can't connect, and doesn't seem to retry to connect - but restarting the application addresses it.
Could you provide me the logs of the app ? Present under <your user directory>/.plexrichpresence. Does it still happens with last release ? I've introduced fixed which could be related to that error.

Closing for now since no feedback, reopen if needed


Remove the usage of &method

&method is a weird syntax in Ruby. It is also slower than an equivalently written function. I was hoping to update Style/SymbolProc to recommend against this syntax. Unfortunately, it may take a bit more work than I was hoping for. If you would like, I can create an issue for a feature request to track this and allow anyone to pick it up.
http://stackoverflow.com/questions/6976629/is-the-methodmethod-name-idiom-bad-for-perfomance-in-ruby

I was hoping to update Style/SymbolProc to recommend against this syntax

If you do, can you include configuration for disabling recommending against this syntax (or even maybe enforcing using it)? I personally like the syntax since, once you are used to the syntax, it is a nice visual cue that a local method is being invoked with exactly one argument.

can you include configuration for disabling recommending against this syntax

That sounds reasonable to me. I can see where the syntax could be nice. It is a bit more obvious what is going on than some of the other syntax that Ruby supports.
Out of curiosity, since you are a fan of the syntax, what are your thoughts on the following usage?
filenames = ["a.txt", "b.txt", "c.txt"]
texts = filenames.map(&File.method(:read))

Out of curiosity, since you are a fan of the syntax, what are your thoughts on the following usage?
filenames = ["a.txt", "b.txt", "c.txt"]
texts = filenames.map(&File.method(:read))

I like it. I think RuboCop would probably be enforcing it if we could write it as
filenames.map(&File->read)

or some nice looking special syntax. &method(:name) is ugly though especially to people who aren't familiar so I think it doesn't get much love (also yes it is slower but I personally don't write code that is ever close to bound by the execution speed of ruby itself).
I don't usually like getting too deep into explaining why I like certain syntax because I think it is easy to start backwards rationalizing, but with that disclaimer...
I'll focus on this snippet because you usually don't have the immediate context of the type of filenames in real world code like this. Looking at
filenames.map { |filename| ... }

or
filenames.map { |*args| ... }

I wonder about exactly what is being yielded.
Also, a lot of ruby methods take variable arguments. IO.read takes 1 through 4 arguments (more if you count each hash option). When we iterate and yield a block, I have to double check that we aren't using variable arguments somehow. I know this wont happen if I'm doing some_array.map(&method(:foo)) because I know this is equivalent to some_array.map { |item| foo(item) }. Basically, knowing that only one method is being invoked with one argument per item in the array is comforting to me.

Thanks for the response. The &method syntax is new to me as of a few weeks ago. I agree that the syntax with chained methods, and even a single method, could be improved with some short hand. At the same time, short hand starts to become more cryptic to someone that has never seen the syntax before.

also yes it is slower but I personally don't write code that is ever close to bound by the execution speed of ruby itself

I agree that something like the &method syntax probably isn't the bottle neck of an application. I have liked that we have added performance cops to RuboCop because it allows us to write code however we want and then let something automatically optimize some of the code for us.

Basically, knowing that only one method is being invoked with one argument per item in the array is comforting to me.

I can see where this could be beneficial in some situations.

I think RuboCop would probably be enforcing it if we could write it as
filenames.map(&File->read)

or some nice looking special syntax.

Segway: I actually like this, despite it causing some PTSD (PHP Traumatic Stress Disorder.) Since the thin arrow is already used for lambdas, there's some neat intertextuality going on here. Much like foo&.bar is somewhat reminiscent of foo && foo.bar. 😀

I'm also a fan of &method, but admit the syntax is unwieldy. I like that you don't need to provide a name for the individual values being iterated over. It is a bit further along the procedural → declarative spectrum (if there is such a thing).

Segway: I actually like this, despite it causing some PTSD (PHP Traumatic Stress Disorder.) Since the thin arrow is already used for lambdas, there's some neat intertextuality going on here. Much like foo&.bar is somewhat reminiscent of foo && foo.bar. 😀

Guess someone should file an upstream ticket suggesting this. I like it as well. :-)

A feature request has been created for this.

I meant someone should suggest this new syntax to Ruby's developers. :-) But anyways, having a cop for this would be useful as well I guess.

I'll close this ticket as I don't having issues with the code snippet that started this discussion.


CSS class for inital viewport images

Hello,
I want to fade in my lazy loaded images. I can do this with the loaded class.
But than the inital load of my view fade in all image elements. I found that is ugly. I only want to fade in images when the user scrolls or resize the browser.
Is it possible to introduce a new class called first-load on images that are loaded when the view renders the first time (or lazyload runs the first time) ? Or vise versa on images that are lazyloaded after the first inital run.
Thanks a lot.
René

Hi @redL,
Thank you for your suggestion.  Unfortunately it's not possible to do what you suggest, because I can't distinguish which images are inside did you put initially and which ones are outside.
In fact, the script runs independently when the user scrolls or resizes the window or at the first load of the page.

Anyway, I'm thinking about the way to do it in the script that manages your page. Would you like me to suggest you how to do it?

Hey,
well you currently doing this with the loading class. But you remove this class and add loaded when the images loading is finished.
I only need this behavior the first run and instead of loading use a different class like first-lazy-load.
You currently doing what I need, but you do it again and again on each cycle. I need it only the first time.
Hope that clarify a bit what I mean. If you have a different solution I would be happy to hear about.

Thank you, you were absolutely clear. The point is there's no such thing as the "first run". Take a look at the code and you will understand.

Hey,
I could take a look at the code and I have following suggestion.

add a variable on top _isFirstLoop = true;
in the _loopThroughElements method you can add a class to each identified element

if (_isInsideViewport(element, settings.container, settings.threshold)) {
       if (_isFirstLoop) {
          console.log('this element was detected in first loop', element);
          element.classList.add("first-lazy-load");
        }
}

at the end of the _loopThroughElements method set _isFirstLoop to false

if (_isFirstLoop) {
      _isFirstLoop = false;
      console.log('this was the first loop of _loopThroughElements')
// add
    }

Good idea, you can do it in a fork if you want, but I'm not keen to integrate this change in LazyLoad.
The reason is that you should NOT use Javascript to load the first N images - N depending on the layout of your website in the widest viewport - and to lazily load only from the Nth+1 image on.
So you should put the first images srcs and srcsets directly in the image tag, then start putting them in the data-* attributes.
An example:
<img alt="..." src="image1.jpg" srcset="image1.jpg 1x<EMAIL_ADDRESS>2x">

<img alt="..." class="lazy" data-src="imageN.jpg" data-srcset="imageN.jpg 1x<EMAIL_ADDRESS>2x">

var ll = new LazyLoad({
    elements_selector: "img.lazy",
});

Well when I have to detect wich images should be displayed based on current viewport I would have two pieces of code that do the same thing in my view.
If you dont want to improve your lib in this way... it is ok. In my eyes your arguments are strange.

You don't have to detect wich images should be displayed based on current viewport, also because you can't do it on the server side. Just set a number fixed to 10 or 12 and write the first HTML for the first 10 or 12 images, then the lazy load HTML for the 13th image on. I can assure it's a best practice. We use it in production in multiple e-commerce websites - in the category page - and it works!

This suggestion isnt a good advise.
I display thumbnails in responsive designed views. From little mobile views to large desktop views.
The range of visible images is from 6 on mobile to 60 on desktop.
I want to find a solution for loading and fading in only images that are not on the initialized loaded view.
A fixed count let pop in the first images and the rest fade in, that looks very ugly on larger views. And I would load more data as I need on mobile when I would increase the fixed count to 60 in my case.
"I always pass on good advice. It is the only thing to do with it. It is never of any use to oneself. "
Oscar Wilde

Uhm, you're right, there is too much difference between the mobile viewport and the large desktop viewport in your case. Don't do what I said for 60 images. But please do it for the first 6, your mobile users will have a performance boost since the browser will start downloading the images even before downloading the first bit of JavaScript.

I'll see what I can do with your suggestion. I'm a little bit busy these days. If you make the change in your girl I might accept a pull request. Thanks

ok, you have a new PR

@zedL I'm working on this issue. New release coming soon.

@zedL done. You can find the edit in the branch feature/initialViewportClass. Try it out and tell me if it works for you. If it is, I'll merge it in. Thanks.

Hi @zedL, thanks for the delay. I did it!

Hello @verlok,
thanks a lot, I will try.

@zedL I released another version (6.3.1) with the class name being initial like you suggested.

There's also a demo in the demos folder. It fades in all the images except the first batch.

Thats nice, thanks a lot. I will use it in my project.

Glad to hear that ;)

Psst: have you already starred this repo? All you need to do is to press the Star ★ button on the top right corner of the website. ;)


Skip test_enqueued_local_size if non-uniform work-groups not supported

test_enqueued_local_size will be skipped for OpenCL < 2.0. However,
non-uniform work-groups became optional in 3.0 and so check that they
are supported before running test_enqueued_local_size and otherwise
skip.

I have if defd out this code since it will cause compilation errors if CL_VERSION_3_0 is not defined. I'm not sure whether the CTS is intended to work this way, or if it should always be compiled with the most recent OpenCL headers anyway since it used with the ICD loader?

Given that non-uniform workgroups are listed on the set of things to break down into issues (https://github.com/KhronosGroup/OpenCL-CTS/issues/773) it would helpful to file an issue for the "Need to add checks for lack of Non-Uniform Work Groups support." item in the OpenCL 3.0 project.  And then tick the box.
That will help with tracking progress being made on the 3.0 CTS.

Given that non-uniform workgroups are listed on the set of things to break down into issues (#773) it would helpful to file an issue for the "Need to add checks for lack of Non-Uniform Work Groups support." item in the OpenCL 3.0 project. And then tick the box.
That will help with tracking progress being made on the 3.0 CTS.

@alycm I have created an issue https://github.com/KhronosGroup/OpenCL-CTS/issues/791 and commened on #773, but I don't think I have edit permissions to tick the box.

LGTM  but
I am not sure if these defines with CL_VERSION_3_0 is needed rather we check device OpenCL version reported like here
I would be nice added the same code here

LGTM but
I am not sure if these defines with CL_VERSION_3_0 is needed rather we check device OpenCL version reported like here
It would be nice to have the same code here

Thank you for your feedback, I wasn't sure myself, but is it possible that the CTS could be compiled without CL_VERSION_3_0 say, CL_VERSION_1_2, in which case CL_DEVICE_NON_UNIFORM_WORK_GROUP_SUPPORT will not be defined since it is conditionally defined here

The CTS must always be compiled with the latest headers and all features enabled so this is a non-issue.
A revised version of #816 is likely to supersede this PR.

The CTS must always be compiled with the latest headers and all features enabled so this is a non-issue.
A revised version of #816 is likely to supersede this PR.

Thanks for your feedback. In that case I will wait until #816 is merged and then close this PR.

I can confirm that in local testing #816 fixes the issue that this PR attempted to solve.

* This test currently compiles kernels with `-cl-std=CL2.0`, but this may not be supported by all OpenCL 3.0 devices.  For now, I think we can pass `-cl-std=CL3.0` for OpenCL 3.0 devices, but eventually we may need more complicated logic here.

@bashbaug Thanks for your feedback! This is a good point, I created an issue to track this a while back #823, although that issue kinda got conflated with the fact that some tests which were optional for 3.0 aren't getting skipped.
I've updated the test to dynamically select -cl-std=CL3.0 for a OpenCL-3.0 device and otherwise fall back on -cl-std=CL2.0.

Latest changes look good, thanks!
When we're enqueuing uniform work groups it's probably slightly safer to align up than to align down, just to guarantee we launch at least one work group, but in practice this shouldn't matter.

Oops, didn't think about the case we could end up with a global size less than the local size, good catch! I've updated the rounding logic to round up instead, and updated the commit message since it had gone a bit stale.

Merging - this has two approvals and I'm guessing @alycm is OK with these changes.


Suggestion added to the end of pasted text

When I paste into gnome terminal <C-S-v> and I there is a suggestion from the plugin after I start a command,  I get this suggestion inserted after my pasted text.
For example, if I type echo spam and the next time I type echo  and insert anything, spam is added to the end of the command.
autosuggestion  62cdba4
gnome-terminal 3.6.2
ubuntu 14.04

I'm not sure I understand the problem you're having. Can you provide a screen capture? Or a more clear explanation of the problem?

So, I have a suggestion from autosuggestions plugin. When I paste text from clipboard, this suggestion is added to the end of it. This added text (spam) is not passed to echo command, it just sits on the line and confuses me.

I suppose it has been fixed, no longer experience this issue.

I can reproduce it using the oh-my-zsh plugin safe-paste.

@aserrallerios That may be related to #145


Implements custom validator package

Description
This PR is the baseline for the validator package to be used for validating data prior to making database calls. It includes the validator package which provides utilities to make structured errors that happen from failing the constraints of the data. Also, it has a few other utilities such as WriteJson, and errorResponse to respond to the client if a validation happens to fail.
$ pizza bake http://gathub.com
Resp body: {
        "error": {
                "url": "The URL provided is not a valid repository"
        }
}

What type of PR is this? (check all applicable)

[x] 🍕 Feature
[ ] 🐛 Bug Fix
[ ] 📝 Documentation Update
[ ] 🎨 Style
[ ] 🧑💻 Code Refactor
[ ] 🔥 Performance Improvements
[ ] ✅ Test
[ ] 🤖 Build
[ ] 🔁 CI
[ ] 📦 Chore (Release)
[ ] ⏩ Revert

Related Tickets & Documents
#19 Custom validator

Mobile & Desktop Screenshots/Recordings

Added tests?

[ ] 👍 yes
[ ] 🙅 no, because they aren't needed
[x] 🙋 no, because I need help

Added to documentation?

[ ] 📜 README.md
[ ] 📓 docs.opensauced.pizza
[ ] 🍕 dev.to/opensauced
[ ] 📕 storybook
[ ] 🙅 no documentation needed

[optional] Are there any post-deployment tasks we need to perform?
[optional] What gif best describes this PR or how it makes you feel?

Closing this for now since we're not yet exploring doing validation of GitHub repos at this time and this isn't being used in the code. But thank you @k1nho so much for the contribution!! Let's revisit this when we need custom validation.


label:question Is it possible to put a name on the connection line?

Is it possible to put a name on the connection line?
Something like:
                        "input_1": {
                            "connections": [
                                {
                                    "node": "16",
                                    "input": "output_1",
                                    "name": "custom_name_here" <== is it possible?
                                }
                            ]
                        }

in the interface it would be something like:

Hello @kennykanp
Not implemented.
View possible solutions: https://github.com/jerosoler/Drawflow/issues/18
I plan to implement something like https://github.com/jerosoler/Drawflow/issues/45#issuecomment-701554099. But I haven't had time.


Release v5.0.0

Coverage remained the same at 100.0% when pulling 2d174e64ad9320724b5751ddf37a25b6991f397a on release_500 into 5b69860d07715db0c1d4eaea4e0e80f459ac0c2c on master.


Chat - Message sender avatar is missing on applausetester+multiline account

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 1.4.14-1
Reproducible in staging?: Y
Reproducible in production?: N
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
Action Performed:

Log in to<EMAIL_ADDRESS>Go through some chat (already pinned)

Expected Result:
The message sender avatar will be displayed
Actual Result:
The message sender avatar is not displayed
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence

https://github.com/Expensify/App/assets/78819774/99403cea-e423-4f7c-be61-6a5cfc9814fd

View all open jobs on GitHub

What is the multiline account?

While this is weird, how did we get that account into that state? Does it continue to happen after a log in/out?

Let's reopen when we get clearer reproduction steps


navbar (large screen)

For Large Before

For Large After

I am a GSSoC'23 contributor. I can make the navbar large. I have all the skills required.
Please assign me this issue, I want to work on this issue under the GSSoC'23.

Hi,
I would like to work on this issue under gssoc'23,
Can you assign it to me?


Add CFG language support

This pull request adds support for the CFG (Context-Free Grammar) language. It includes a new grammar file cfg.yml that defines the syntax highlighting rules for CFG files. Additionally, the package.json file has been updated to include the new language configuration for CFG. This allows users to easily work with CFG files in the editor.
Please review and merge this pull request to enable support for CFG language in the project.

Thanks for your contribution @vitorfdl ! I've used your code as a base and made some changes, now the highlighting is like so:


Package rpc 0.5.0 does not match >=0.4.0 <0.5.0

When resolving dependencies using pub I receive the following message:
$ pub get
Resolving dependencies... (2.1s)
Package rpc 0.5.0 does not match >=0.4.0 <0.5.0 derived from:
- shelf_rpc 0.0.3 depends on version >=0.4.0 <0.5.0

reviewing the latest commit: https://github.com/dart-lang/rpc/commit/659ccabd6b6e91e06bf27f4f99f192fdd19b356a#diff-fb2d52cd953afedcafc9fe7629c6f132R2
if I revert the change to pubspec.yaml version: 0.5.0 back to version: 0.4.3 the dependencies resolves:
$ pub get
Resolving dependencies... (4.0s)
+ _discoveryapis_commons 0.1.1
+ analyzer 0.25.0+1 (0.25.1-alpha.0 available)
+ args 0.12.2+6 (0.13.1 available)
+ collection 1.1.1
+ crypto 0.9.0
+ discoveryapis_generator 0.7.1+1
+ gcloud 0.2.0+1
+ googleapis 0.8.0 (0.10.0 available)
+ googleapis_beta 0.12.0 (0.14.0 available)
+ http 0.11.2
+ http_parser 0.0.2+6
+ intl 0.12.4
+ logging 0.9.3 (0.11.1 available)
+ logging_handlers 0.8.0
+ matcher 0.11.4+4 (0.12.0+1 available)
+ mock 0.11.0+4 (0.12.0 available)
+ mockito 0.8.2 (0.10.1 available)
+ path 1.3.5
+ petitparser 1.4.3
+ quiver 0.20.0 (0.21.4 available)
+ shelf 0.5.7 (0.6.1+2 available)
+ shelf_path 0.1.2
+ shelf_route 0.11.0+1 (0.12.0 available)
+ shelf_rpc 0.0.3
+ source_span 1.1.2
+ stack_trace 1.3.2
+ string_scanner 0.1.3+1
+ unittest 0.11.6+1 (0.12.2 available)
+ uri 0.9.5 (0.10.0 available)
+ utf 0.9.0+2
+ watcher 0.9.5
+ yaml 2.1.2
Changed 32 dependencies!
Precompiling dependencies...
Loading source assets...
Precompiled gcloud and intl.
Precompiling executables...
Loading source assets...
Precompiled discoveryapis_generator:generate.

I believe the shelf_rpc project needs to have their rpc dependency incremented to rpc 0.5.0 (https://github.com/dart-lang/shelf_rpc/blob/master/pubspec.yaml#L12). I'll be adding an issue to that project but feel there should be a coordinating issues here.
thoughts?

It would be great to avoid the circular dependency from rpc <==> shelf_rpc. shelf_rpc is only used by the example/ directory; perhaps it's constraint could be broadened here to any?
@wibling

If I update the shelf_rpc dependency to any I get version 0.0.1 of shelf_rpc which also seems broken (ie. the example will not work).
AFAICT the issue here is that I didn't update the shelf_rpc dependency to the latest rpc package. I will update that instead.
How would the 'any' dependency help us except hide the fact that the shelf_rpc package should be updated to use the latest version?


Add support for Github emoji characters

In Github feeds, emoji are converted from unicode to images hosted on Github. This commit uses a regular expression to replace these emoji with their equivalent unicode characters or, in cases where Github uses an emoji that doesn't map to unicode (e.g. :shipit:, :shipit:), it renders the emoji as :emoji:.
I'm not thrilled with how specific and fragile this regular expression is. I'm open to making it more flexible if you think that would help. Alternatively, I've added this functionality in another branch by adding javascript to Popover.html (see here) in a way that is more general. If you would prefer, I can close this pull request and open that one. The only issue with that approach is that there is a very short delay (less than 0.5 seconds) in swapping out the hidden <img> tags. I could also use the javascript approach to convert :emoji: references to unicode in text nodes if there is a desire for that functionality.

An additional note: NSRegularExpression isn't added until 10.7, so if Feeds.app is still maintaining support for 10.6 I can wrap this code in an #if directive.

I think it would be nice to maintain 10.6 compatibility.

In that case, I think it would be better to do this in Popover.html. I was able to fix the delay mentioned above, and I do a check for emoji unicode support so that 10.6 can fall back to :emoji:.

This does seem to work... But I'm curious what the motivation was behind this ... when I compare the two styles, here's your version using "real emoji":

And here's the current image-based emoji:

It seems like they are pretty equivalent?

Are you perhaps on Yosemite? I'm on Mavericks and those images don't come through.

Yes I'm on Yosemite - but I believe it should work on any platform since I believe Github embeds these "imoji" using <img> tags?

yeah, I can't reproduce the original issue either anymore. Closing.


Readme Add documentation start, stop, changeDuration.

Override StreamDuration example for start, stop, changeDuration countdown.

Fixed in https://pub.dev/packages/slide_countdown/versions/0.3.4

I cant find a way to restart the timer, or start it only when an event happened


Airplay sound is too low

hi guys! I'm already using Raspberry4 4gb with balena sound, when i use airplay from my Iphone to reproduce music from spotify, slace volumen it's not working very well and output volumen its too low. I'm trying with this configs
Device Variables config

Any suggestions?

Seems to have same problem with RP4, I have to turn all devices to maximum to get suitable volumn. I think max volumn is too low.

Hey can you try reproduce this with latest balenaSound version 3.8.9? Feel free to re-open this issue if the problem persists. Thanks!


Large anchor event deserialization error

we have a transaction with multiple instructions with a large number of events in it
the transaction is successful on solscan.
but only one event is deserialized successfully.
and on the second event this error is logged.
RangeError [ERR_OUT_OF_RANGE]: The value of "offset" is out of range. It must be >= 0 and <= 152. Received 160
    at new NodeError (node:internal/errors:399:5)
    at boundsError (node:internal/buffer:88:9)
    at Buffer.readUInt32LE (node:internal/buffer:222:5)
    at Buffer.readUIntLE (node:internal/buffer:180:17)
    at UInt.decode (/home/ubuntu/projects/defios-nodejs-api/node_modules/buffer-layout/lib/Layout.js:570:14)
    at Structure.decode (/home/ubuntu/projects/defios-nodejs-api/node_modules/buffer-layout/lib/Layout.js:1237:32)
    at WrappedLayout.decode (/home/ubuntu/projects/defios-nodejs-api/node_modules/@project-serum/borsh/dist/lib/index.js:64:41)
    at WrappedLayout.decode (/home/ubuntu/projects/defios-nodejs-api/node_modules/@project-serum/borsh/dist/lib/index.js:64:41)
    at Structure.decode (/home/ubuntu/projects/defios-nodejs-api/node_modules/buffer-layout/lib/Layout.js:1237:32)
    at BorshEventCoder.decode (/home/ubuntu/projects/defios-nodejs-api/node_modules/@project-serum/anchor/dist/cjs/coder/borsh/event.js:80:29) {
  code: 'ERR_OUT_OF_RANGE'
}

Could you share a reproducable example for this error?

Yeah, taking a closer look at this, it seems to be an issue with log compression in RPC. Trying to migrate this to CPI events. Not an issue with Anchor, will prob ping him to close.


[Bug] Tracing configuration missing for MQ since upgrade to v0.6.0+

Please provide us with the following information:

This issue is for a: (mark with an x)
- [x] bug report -> please search issues before submitting
- [ ] feature request
- [ ] documentation issue or request
- [ ] regression (a behavior that used to work and stopped in a new release)

Minimal steps to reproduce

Follow the Quickstart and View observability data, see Grafana - notice when looking into Tempo tracing there is no flow into/from MQ anymore.

Expected/desired behavior

We are aware of changes in CRD and diagnostics configuration for MQ. This needs to be applied for tracing to work correctly. See docs at: https://learn.microsoft.com/en-us/azure/iot-operations/manage-mqtt-broker/howto-configure-availability-scale#configure-mqtt-broker-diagnostic-settings

Versions

AIO Preview 0.6.0

For 1.0.0, MQ tracing is not yet exposed. Reopen once exposed in newer versions.


Update README.rst

added Ukraine

Pull Request Test Coverage Report for Build 389

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

Totals

Change from base Build 387:
0.0%

Covered Lines:
5142

Relevant Lines:
5142

💛  - Coveralls


Issues with the tarball during the setup

Apologies for the vague title/description, not sure if it's the right diagnosis.
I'm trying to use the cmake feature, but it fails in a weird way.
Here are the steps to reproduce:
devcontainer.json
{
  "name": "test",
  "image": "ubuntu",
  "features": {
    "ghcr.io/devcontainers-community/features/cmake": {}
  }
}

And the CLI run:
devcontainer up --workspace-folder . --config devcontainer.json --log-level trace

Full output is here as GitHub wouldn't allow pasting a body longer than 65536 characters 😅
I'm running this on macOS, but also tried Linux with the same results.
Brief look at the CLI source code suggests that the failure happens around these lines, that's why I think something is off during the unpacking the tarball.
Not sure if the issue is related to this feature/repo specifically, or if something is wrong with CLI itself.

Seems to be related https://github.com/devcontainers/cli/issues/699, and a similar issue/fix is here https://github.com/devcontainers-community/features-llvm/pull/7


Show Digital Ocean as sponsor

They've been providing Jarbas' server https://github.com/datasciencebr/jarbas.
Where and how to put the logo? No idea. Open for suggestions.

We discussed that earlier today (@anaschwendler, @anacarlotajahn, @filipelinhares and me) and this is a thing for the newer version of the website. It doesn't worth it to just improvise something in the layout to last a few days.

@brunopazzim Hey any idea how to fit this in the website?! =)

@brunopazzim just in case https://www.digitalocean.com/company/logos-and-badges/

its already done, i think o.õ


{CI} Add GitHub Action to Conditionally Trigger CI Based on Safe File Changes

This PR introduces a GitHub Action that conditionally triggers the CI process based on specific file changes in the PR. The purpose is to avoid automatically running CI when potentially risky files, such as configuration files (*.yml) or files within the scripts/ directory, are modified. This helps mitigate unintended impacts from sensitive file changes by not triggering CI in those cases.
Related command

Description

Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change
[Component Name 2] az command b: Add some customer-facing feature

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

Thank you for your contribution! We will review the pull request and get back to you soon.


New videos not showing up

Hey, on my work laptop, the new videos (e.g. Antartica) are not showing up. I tried to uninstall and reinstall the screensaver, to no avail. On my private laptop, the screensaver updated itself automatically.
Any idea what can cause this?
Thanks!!

@letibo Did you install the latest version from here?
If you go to the Cache tab in "Screen Saver Options..." what happens when you click "Download Now"?

Hi, I was downloading it from here but the link to the actual file is the same.
In any case I've downloaded it again, and this time it worked. Strange. But thanks for the help!


TypeError: Cannot read property 'keyCode' of undefined

I use md-data-table with<EMAIL_ADDRESS>and<EMAIL_ADDRESS>with webpack.
when i click the md-checkbox on the top, it turned out the error.
TypeError: Cannot read property 'keyCode' of undefined
    at c.n.select (http://localhost:10010/bundle.js:107923:9978)
    at http://localhost:10010/bundle.js:107923:7972
    at Array.forEach (native)
    at Scope.c.selectAll (http://localhost:10010/bundle.js:107923:7930)
    at Scope.c.toggleAll (http://localhost:10010/bundle.js:107923:8048)
    at fn (eval at <anonymous> (http://localhost:10010/bundle.js:22318:16), <anonymous>:4:218)
    at callback (http://localhost:10010/bundle.js:32566:18)
    at Scope.$eval (http://localhost:10010/bundle.js:25005:29)
    at Scope.$apply (http://localhost:10010/bundle.js:25105:26)
    at HTMLElement.<anonymous> (http://localhost:10010/bundle.js:32571:24)(anonymous function) @ bundle.js:21473(anonymous function) @ bundle.js:18245Scope.$apply @ bundle.js:25110(anonymous function) @ bundle.js:32571defaultHandlerWrapper @ bundle.js:12299eventHandler @ bundle.js:12287

the directive i write here
<md-table-container>

                {{ header }}

                {{ item[header] }}

</md-table-container>

problem solved, it seems 0.9.4 on npm is not a good one, i use 0.8.11 instead

hmmm... sounds like something was going wrong when you compiled all your assets together with webpack.


Add 'awses' plugin directive

Add the awses plugin (wrapping up the README and documentation first).

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@miquella You can now publish your plugin.

@mholt: Awesome, thanks!

I typo'ed the name of your plugin in the release notes that ship with 0.10.7. 😞  Sorry about that. It'll be fixed everywhere else though :smile:


Panic when executing jmp ($ffff)

While executing jmp ($ffff), I get the following panic:
thread 'main' panicked at 'range end index 65537 out of range for slice of length 65536', /home/sam/.cargo/registry/src/index.crates.io-6f17d22bba15001f/mos6502-0.4.0/src/memory.rs:80:10
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

The instruction reads two bytes from memory, and uses that two-byte value as a pointer to the jump's target. The implementation is trying to read a slice from the memory to get this pointer, but this fails when the real chip would read from address $ffff, wrapping over from the end of the address space to the beginning.
I appreciate that's the kind of thing we're vanishingly unlikely to run into in the wild, though!

When I think about it some more, it's really because the emulator does not implement the Indirect Jump Bug.
The real deal wouldn't read the pointer from bytes $ffff and $0000, but from bytes $ffff and $ff00. This is because while incrementing the memory address register, the carry does not propagate to the high byte.
(This is again a difference between the NMOS and CMOS varieties; CMOS does fix this problem)

Thanks for the detailed analysis. What would you suggest? I wonder if at some point we need to implement different modes for NMOS and CMOS.

What would you suggest?

I would suggest re-writing around src/cpu.rs line 151. The current code is almost correct for the CMOS variant. But for the NMOS variant, the necessary code is quite finicky but I'll see what I can put together.

I wonder if at some point we need to implement different modes for NMOS and CMOS.

Yes, and other variants too, maybe? I could contribute the Rockwell bit manipulation instructions for example. For my purposes, it would be good to be able to instantiate several different 6502 varieties in my one program, so I think that excludes conditional compilation as a possibility. Instead, I'd suggest making an enum of all supported variants, and having this as a member of the Cpu struct. Then when we instantiate the Cpu, we pick the correct enum variant. And as we run the Cpu, here and there we can check the enum to see if we want to emulate the Indirect Jump Bug, the Decimal Mode, this thing or that thing.
Something like this:
pub enum Mos6502Variant {
    RevisionA,
    Nmos,
    Cmos,
    Ricoh2a03,
    Rockwell
}

And instead of this method:
    pub fn new(memory: M) -> CPU<M>

on line 49 of src/cpu.rs we'll need, you know,

pub fn nmos(memory: M) -> CPU<M>
pub fn revision_a(memory: M) -> CPU<M>
pub fn cmos(memory: M) -> CPU<M>
pub fn ricoh2a03(memory: M) -> CPU<M>
pub fn rockwell(memory: M) -> CPU<M>

or something. But I haven't figured out what to do about the OPCODES array in src/instruction.rs. We need to find a different solution than that if we want to support multiple, instruction sets that are nearly the same. Maybe a match statement.

I gave this some thought and here's an alternative I came up with:
Instead of an enum for the different MOS6502 variants, we could define them as individual types. This allows us to harness Rust's generics to define specific behaviors or opcode sets for each variant.
So
pub struct Nmos;
pub struct RevisionA;
pub struct Cmos;
pub struct Ricoh2a03;
pub struct Rockwell;

We could then define a trait that provides a method to fetch the opcode implementation for a given byte value. Each variant would implement this trait to provide its unique set of opcodes.

pub trait OpcodeSet {
    fn get_opcode(byte: u8) -> Option<Opcode>;
}

impl OpcodeSet for Nmos {
    fn get_opcode(byte: u8) -> Option<Opcode> {
        match byte {
            // ... Add opcodes specific to Nmos
            _ => None,
        }
    }
}

There would of course be duplication, but each set of opcodes would be nicely encapsulated for each variant (and I don't expect too many changes once a variant got implemented).
After that, our CPU could be defined with a generic parameter representing the variant.
pub struct CPU<V, M> {
    variant: PhantomData<V>,  // Used to associate the variant with CPU without consuming space
    memory: M,
    // ... other fields
}

impl<V: OpcodeSet, M> CPU<V, M> {
    pub fn new(memory: M) -> Self {
        CPU {
            variant: PhantomData,
            memory,
            // ... initialize other fields
        }
    }

    pub fn execute_opcode(&self, byte: u8) {
        if let Some(opcode) = V::get_opcode(byte) {
            // Execute the opcode
        }
    }
}

We could instantiate the CPU for a specific variant as follows:
let cpu: CPU<Nmos, _> = CPU::new(memory);

Benefits:

This design is easily extensible. For a new variant, just define a new struct, implement the OpcodeSet trait, and it integrates seamlessly.
It's difficult to mistakenly use opcodes of one variant for another, since each variant's opcodes are tied to its type.
Modularity: Each variant's opcode implementations are encapsulated within their respective OpcodeSet trait implementations.

Downsides

Introduces complexity, especially for those unfamiliar with Rust's type system.
Code Duplication: Overlapping opcodes might lead to duplicated and harder-to-maintain code.
Compile Time: Increased compile times due to generics and trait implementations.
Runtime Inflexibility: Can't switch MOS6502 variants at runtime; determined at compile-time.
Learning Curve: Steeper learning curve for developers unfamiliar with Rust's advanced features.

I think the type safety and encapsulation of these variants would still be worth it, but I'd love to hear your thoughts on this. I'm very much open to discuss different design options.
What do you think?

Huh, I thought I'd already replied to this.
I like your idea better than mine, and I think it's a good way to code up a clear separation between "opcode" and "instruction". A variant might have the same instruction on a different opcode. So I think that your idea of an OpcodeSet trait is pretty much spot on.
But then there's the "Other Stuff". This is variation between the models other than what's in the instruction set. Things like

Have we got the Indirect Jump Bug, yes or no
Do we have decimal mode, yes or no
Do RMW instructions write the original value before overwriting it again with the correct value, yes or no
From what address do absolute indexed addressing modes do a spurious read, if the address calculation crosses into a different page and needs to take an extra cycle for carry propagation?

Points 1 and 2 are the important, software compatibility breaking ones, and points 3 and 4 important for cycle accuracy only and is less important in my view.
And so far as I can see there are two big ways we can deal with these questions.
A. We have three implementations of add_with_carry, and let the OpcodeSet thing call the appropriate one. Same with subtract_with_borrow and AddressingMode::Indirect.
B. Make sure the OpcodeSet trait has functions like fn enable_decimal_mode() -> bool and fn buggy_indirect_jump() -> bool. Then the CPU calls these in the appropriate places.
Personally I prefer Option A, but what are your thoughts?

Yes, I agree.
Given our emphasis on the clear separation between "opcode" and "instruction" and the various quirks among different variants, Option A seems more fitting. While it might introduce some code duplication, the benefits of explicitness, performance, and modularity seem worth the trade-off.
As you mentioned, we can use shared utility functions to reduce code duplication.

Alright, in that case, I guess the next step is to work on a branch which moves the Decimal Mode option into an OpcodeSet thing. That removes the "decimal" feature (we're no longer using conditional compilation for this) and correspondingly puts a method add_with_carry_no_decimal on the CPU.  Then we've got feature parity with the existing master branch, but we're taking the new approach to variant emulation.
You want to take that on? Then when that's done, I'll make a start on:

fixing the panic for jmp $(ffff)
emulating the CMOS bugfix

Sure can do, even though I don't know when I'll find the time to do it. Feel free to take a stab at it first, and maybe we can collaborate on the PR. Alternatively, I'll try to make some time for it, but no guarantees. 😅

I think this can be tackled now that we have support different chip variants.
@omarandlorraine, just in case you still want to submit a patch for jmp on NMOS.


lines have spikes (specially in higher map zool level) when there are many segments

Issue:
When drawing path with many segments, some spikes appears. Please take a look at the image below:

After digging a bit, it seems the issue indeed is because of the lineJoin settings of the Canvas. The default is "miter".
Proposed solution:
If I add the following line to drawPath function inside canvas-display.js, it would solve this issue
this.ctx.lineJoin = 'round';

Here is what it looks after adding the line above:

I am suggesting to add the line below to drawPath in canvas-display.js
this.ctx.lineJoin = attrs['lineJoin'] || 'miter';

and the line below in the render function inside renderedsegment.js
display.drawPath(this.renderData, {
        fill: 'none',
        stroke: styler.compute2('segments', 'stroke', this),
        'stroke-width': styler.compute2('segments', 'stroke-width', this),
        'stroke-dasharray': styler.compute2('segments', 'stroke-dasharray', this),
        'stroke-linecap': styler.compute2('segments', 'stroke-linecap', this),
        'lineJoin':'round',
      });

Thank you.

Hi @landonreed
Sorry for delayed response.
Of course, You can use our test server at https://tptest.actransit.org. you can use the link below to produce the same result,
El Cerrito City Hall, El Cerrito  To  Market Street & South Van Ness Avenue, San Francisco
Please note:

I have already applied the fix,I mentioned above, there.
Due to issue we had with interStopGeometry not being returned from our engine, we are rendering legGeometry for each leg.

:tada: This issue has been resolved in version 0.13.6 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Update custom-routes-enable-kms-activation.md

Add note regarding Standard Load Balancer configurations.

@MattKazmar : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@Jak-MS : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@genlin  - can you take a look and sign off if it looks good to go? thanks!

@MattKazmar Thanks for your feedback.
#sign-off


Catch Up Command

Implemented Catch Up Command.
https://user-images.githubusercontent.com/31187/206099244-82b541af-00b5-4b35-85cc-d64167cb7d8d.mov
https://user-images.githubusercontent.com/31187/206099295-fd3a6e69-4157-4ef3-9519-be47b5225a8e.mov
Closes #662.
I have two filters to update (note TODO comment) but since a significant amount of this is here I wanted to start getting feedback.

For the search FeedDelegates, don't know the utility nor how we would expect the users to be able to trigger the menu to say "Mark articles with the term taco older than one month as read."

This feature doesn't have to work with Search. I'm going to go ahead and merge it and put a fatal error in place of the code in the search feed delegates.
I'm also going to change the menu prompt to be "Mark as Read Older Than" so that if flows better into the submenu. I'm sure I told you to do it the other way. Sorry about that.

I also removed the ellipses from the menu option. In the HIG the ellipses in a menu item are supposed to denote that a dialog will pop up and that doesn't happen here.


remove inline scripts from workflow

the yaml file is using embedded scripts, which works, but we want to move those scripts to files so they are easier to read (over inline yaml) and modify.

@bmoore-msft: 👍 (and fix in underlying tool ready)


Re-implement various interactions using Gameplay Tag instead of Gameplay Effect

Is your feature request related to a problem? Please describe.
N/A
Describe the solution you'd like
It will be more efficient to store various ability interactions (such as cooldowns, status effects) as Gameplay Tags instead of Gameplay Effects.  This will allow having fewer Gameplay Effects, since a single Gameplay Effect can capture multiple Tags (e.g. Global cooldown, ability-specific cooldown, instead of having to apply two Gameplay Effects - one for GCD, other for ability).
Describe alternatives you've considered
N/A
Additional context
N/A

Partial implementation completed in v0.4.  Complete implementation on roadmap for v0.5

Not implemented in v0.5 due to conversion to DOTS.  To revisit later if still necessary.


Use a compliant Expires header value for expiration.

#1353 -1 is an invalid value for the Expires header, it should be a date in the past.

@Tratcher,
Thanks for having already signed the Contribution License Agreement. Your agreement was validated by .NET Foundation. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot


add nvidia api for llava-34b and llava-mistral-7b

Please note that params in the generate() and generate_stream() contains the generation parameters. In the PR, it seems generation parameters are written with hard code. This should not be the case.

And you forget to register the model adapter in model_adapter.py. I have fixed the above bugs for you.

Btw, I think nvidia-api models all share the same interface, right? Is it necessary to split two separate files for two models, which both uses nvidia api for calling? If they can be merged, it will be great!


Shrink property filter API types, add block color types

Shrink property filter API types.
Add block-level color types.
Bump version to 1.0.2.
Reduces api-endpoints.ts size by 25K.

Published.


Please Fix your SSL installation

Summary
I am trying to install tools ahead of an IBM event and I have stepped into one of the most basic problems I would have not expected. The SSL certificates are not configured correctly on the installer site.
Steps to reproduce
(include tooling version, platform, etc)

curl -sL https://ibm.biz/idt-installer | bash does nothing
curl -L https://ibm.biz/idt-installer shows curl: (60) SSL certificate problem: unable to get local issuer certificate

Operating System
MacOS 10.13.5
Supporting details
See SSL problems at https://www.ssllabs.com/ssltest/analyze.html?d=ibm.biz

DNS CAA | No (more info)
Chain issues | Incomplete
Cypher issues ...

Submitted a bug report through W3 feedback and also posted about this in Snip forums at: https://w3-connections.ibm.com/forums/html/topic?id=d36ab2fd-0549-425c-b24c-2fb6842dc9f5 (only accessible inside the firewall).

@bizmate I don't see anything set in my env that would ignore SSL for curl and I am able to run the installer from a Mac.  My curl version is as follows:
curl --version
curl 7.54.0 (x86_64-apple-darwin17.0) libcurl/7.54.0 LibreSSL/2.0.20 zlib/1.2.11 nghttp2/1.24.0
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz HTTP2 UnixSockets HTTPS-proxy

Do you see a difference with your own curl version config?

@steveclay my mac has a slightly older 7.52 version, however by just looking at the version is very difficult to prove the outstanding issue with the SSL certificate because clients can all be configured in different ways but if some clients are set up and run strict checks (for security) they should be ensured the SSL configuration is up to standards. SSL Labs is the tool i use for reference as SSL configuration can sometimes still work even if roots and ca are not well configured but command line tools (like curl) can be stricter as they value security in mind, in general, up to a much higher level.
The only thing I can suggest for you to reproduce the problem if you dont trust SSL Labs is to use docker as images guarantee a certain degree of parity/reproducibility at 100%

on your host docker run -ti ubuntu /bin/bash
inside the container apt-get update && apt-get install curl && curl -L https://ibm.biz/idt-installer and see the error

Also inside the container
root@0435e5cb4d15:/# curl --version
curl 7.58.0 (x86_64-pc-linux-gnu) libcurl/7.58.0 OpenSSL/1.1.0g zlib/1.2.11 libidn2/2.0.4 libpsl/0.19.1 (+libidn2/2.0.4) nghttp2/1.30.0 librtmp/2.3
Release-Date: 2018-01-24
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IDN IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP HTTP2 UnixSockets HTTPS-proxy PSL

I'm on the same version of curl as @steveclay, and seeing the same thing.  That said, I'm able to recreate it using docker/ubuntu like you mentioned.   We (meaning Steve and I) don't own the ibm.biz domain, so I've filed a bug report with the IBM Help Desk to have this looked into.
That said, you can also run the exact same command over http instead of https and it should work.   Our workaround until the cert is fixed could be to just have users pull content over http (we'll need to update docs).  There are no credentials or other secure information in the script that would compromise the end user.

Issue verified and forwarded to CIO office.   We don't see the issue b/c IBM devices are pre-provisioned to accept the cert.
From the forums thread:

I've forwarded this issue to the CIO Cloud team that handles the infrastructure, seems that the root/intermediate CAs for ibm.biz is not properly configured. However IBM provisioned devices would work because our provisioning process configures the SSL stores automatically for any internal / external CAs we use.

Appears to be fixed from SNIP team.  We can switch back to https urls.


Update all examples to match v2

We should verify that all examples work and if not, update them. This is the list of Jupyter networks that need to be revisited:

[ ] examples/3x2demo.ipynb
[ ]  examples/Halo model.ipynb
[ ]  examples/Correlation.ipynb
[ ]  examples/RSD_benchmark.ipynb
[ ]  examples/Correlation_3d.ipynb
[ ]  examples/Correlation_3dRSD.ipynb
[ ]  examples/SLAC Feb2018 Demo.ipynb
[ ]  examples/GeneralizedTracers.ipynb
[ ]  examples/RSD_benchmark_read.ipynb
[ ]  examples/Benchmark_Comparisons.ipynb
[ ]  examples/NFW_profile_3D_2D_demo.ipynb
[ ]  examples/Power spectrum example.ipynb
[ ]  examples/MCMC Likelihood Analysis.ipynb
[ ]  examples/Halo-mass-function-example.ipynb
[ ]  examples/Distance Calculations Example.ipynb
[ ]  examples/muSigma_modified_gravity_demo.ipynb
[ ]  examples/Lensing angular power spectrum.ipynb
[ ]  examples/Reading-writing-Cosmology-objects.ipynb

Upon discussion on the Slack channel, we are probably going to get rid of some of these examples. I would propose to re-structure examples as follows:

[ ]  An example for core functions like H(z), distances, etc.
[ ]  An example for power spectra functionality, including halo model and MG.
[ ]  An example for Cells + correlations.
[ ]  The benchmark comparison notebook.
[ ]  examples/Reading-writing-Cosmology-objects.ipynb
[ ]   examples/NFW_profile_3D_2D_demo.ipynb
[ ]   examples/MCMC Likelihood Analysis.ipynb
[ ]   examples/GeneralizedTracers.ipynb

We'd go from 18 notebooks to 8. We'd be losing the RSD and the 3D correlation, but they appear in the benchmark notebook. Thoughts?

So I'm thinking of keeping the benchmark notebook in this repo. This is where all the benchmark testing happens and otherwise we'd have to duplicate all the benchmark files in the CCLX repo. The other examples we would move.

I'm adding the HMF notebook to the list of ones to keep. It doesn't represent unreleased capabilities at the moment, but it runs with v2.

@elisachisari are we happy with this issue being resolved or do you want to wait till we merge the benchmark notebook pr?


Added most WinRT API Ref links

Rendered:
https://review.docs.microsoft.com/en-us/microsoft-edge/webview2/how-to/hostobject?branch=pr-en-us-2056

Docs Build status updates of commit 163e86c:
:warning: Validation status: warnings

File
Status
Preview URL
Details

microsoft-edge/webview2/concepts/overview-features-apis.md
:warning:Warning
View
Details

microsoft-edge/webview2/concepts/environment-controller-core.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/how-to/hostobject.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/concepts/overview-features-apis.md

Line 327, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2?view=webview2-winrt-1.0.1264.42#isdefaultdownloaddialogopenchanged' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 328, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2?view=webview2-winrt-1.0.1264.42#isdefaultdownloaddialogopen' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 329, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2?view=webview2-winrt-1.0.1264.42#opendefaultdownloaddialog' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 330, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2?view=webview2-winrt-1.0.1264.42#closedefaultdownloaddialog' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 333, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2?view=webview2-winrt-1.0.1264.42#defaultdownloaddialogcorneralignment' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 334, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2?view=webview2-winrt-1.0.1264.42#defaultdownloaddialogmargin' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 335, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2profile?view=webview2-winrt-1.0.1264.42#defaultdownloadfolderpath' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 338, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2?view=webview2-winrt-1.0.1264.42#downloadstarting' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 339, Column 6: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2downloadstartingeventargs?view=webview2-winrt-1.0.1264.42' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 340, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2downloadoperation?view=webview2-winrt-1.0.1264.42' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 410, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2environment?view=webview2-winrt-1.0.1264.42#createcontextmenuitem' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 411, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2contextmenuitem?view=webview2-winrt-1.0.1264.42' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 412, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2contextmenutarget?view=webview2-winrt-1.0.1264.42' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 413, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2?view=webview2-winrt-1.0.1264.42#contextmenurequested' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 414, Column 6: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2contextmenurequestedeventargs?view=webview2-winrt-1.0.1264.42' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 415, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2settings?view=webview2-winrt-1.0.1264.42#aredefaultcontextmenusenabled' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 451, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2?view=webview2-winrt-1.0.1264.42#statusbartextchanged' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 452, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2?view=webview2-winrt-1.0.1264.42#statusbartext' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 453, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2settings?view=webview2-winrt-1.0.1264.42#isstatusbarenabled' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 529, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2?view=webview2-winrt-1.0.1264.42#isdocumentplayingaudiochanged' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 530, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2?view=webview2-winrt-1.0.1264.42#ismutedchanged' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 531, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2?view=webview2-winrt-1.0.1264.42#isdocumentplayingaudio' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 532, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2?view=webview2-winrt-1.0.1264.42#ismuted' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 562, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2settings?view=webview2-winrt-1.0.1264.42#isswipenavigationenabled' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 563, Column 3: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2environmentoptions?view=webview2-winrt-1.0.1264.42#additionalbrowserarguments' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.

This comment lists only the first 25 errors (including error/warning/suggestion) in the pull request.
For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

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

File
Status
Preview URL
Details

microsoft-edge/webview2/concepts/environment-controller-core.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/concepts/overview-features-apis.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/how-to/hostobject.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 3b8467e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/webview2/concepts/environment-controller-core.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/concepts/overview-features-apis.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/how-to/hostobject.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Pre-Release 2.0.0-RC8

Signed-off-by: Ivan Kozlovic<EMAIL_ADDRESS>

Coverage increased (+0.06%) to 90.825% when pulling de46bf5470dd7ade92bc6b0408a1742ae2b85145 on pre_release_rc8 into 8153ba048f182da7194903c47aceab0fcc99e97b on master.


Unable to plot 3D bounding box

Hello, I am using the following code to plot 3D bounding boxes in image plane:
    box_3d = []
    center = label_info['bbox3d_loc']
    dims = label_info['bbox3d_dim']
    rot_y = label_info['rot_y']

    for i in [1, -1]:
        for j in [1, -1]:
            for k in [0, 1]:
                point = np.copy(center)
                point[1] = center[1] + i * dims[2] / 2 * np.cos(-rot_y + np.pi / 2) + (j * i) * dims[1] / 2 * np.cos(
                        -rot_y)
                point[0] = center[0] + i * dims[2] / 2 * np.sin(-rot_y + np.pi / 2) + (j * i) * dims[1] / 2 * np.sin(
                        -rot_y)
                point[2] = center[2] - k * dims[0]

                point = np.append(point, 1)
                point = np.dot(label_info['cam_to_img'], point)
                point = point[:2] / point[2]
                point = point.astype(np.int16)
                box_3d.append(point)
    point = np.copy(center)
    point[0] = center[0]
    point[2] = center[2]
    point[1] = center[1]
    point = np.append(point, 1)
    point = np.dot(label_info['cam_to_img'], point)
    point = point[:2] / point[2]
    point = point.astype(np.int16)
    box_3d.append(point)
    for i in range(4):
        point_1_ = box_3d[2 * i]
        point_2_ = box_3d[2 * i + 1]
        cv2.line(img, (point_1_[0], point_1_[1]), (point_2_[0], point_2_[1]), colors['pink'], 1)

    for i in range(8):
        point_1_ = box_3d[i]
        point_2_ = box_3d[(i + 2) % 8]
        cv2.line(img, (point_1_[0], point_1_[1]), (point_2_[0], point_2_[1]), colors['pink'], 1)
    cv2.circle(img, (box_3d[-1][0], box_3d[-1][1]), 10, colors['red'], -1)

However, the bounding boxes are displaced up and slightly to the left or right. Please let me know what I can do here. I am using the P0 intrinsic matrix (label_info['cam_to_img'])

Hi @sarimmehdi, I think it is caused by a wrong coordinate system. In Waymo's dataset, all 3d bbox data are in the vehicle frame, so the bbox needs to be transformed to camera frame(use the transformation matrix "Tr_velo_to_cam_0-4") before you draw bbox on the images.

Hi @Yao-Shao thank you. Can you write a small code to show how to do this? I just tried by multiplying with Tr_velo_to_cam_0 and then P0 but now the bounding box is closer to the ego car but at the correct height at least

This is the code I am using: (pts is a list of np.array points with shape (4,), so these are the points directly taken from the label file generated by your code with the last entry of each point being 1 and the first three entries being the x, y and z coordinates)
```
P = calib['P0']
R0 = np.eye(4)
R0[:-1, :-1] = calib['R0_rect']
Tr = calib['Tr_velo_to_cam_0']
pts_array = np.array(pts).transpose()
pts_array = pts_array[:, pts_array[-1, :] > 0]
pts_array[-1, :] = 1
A = np.matmul(Tr, pts_array)
B = np.matmul(R0, A)
mask = B[0, :] >= 0  # X >= 0, so points behind ego car are ignored
B = B[:, mask]
Y = np.matmul(P, B)
pts2d = (Y / Y[2, :])[:-1, :].astype(int)

@sarimmehdi The reason that the intrinsic matrix is not of the format you mentioned above is that the coordinate system used in Waymo dataset is not right-down-front, but front-left-up. The former is what the intrinsic matrix you mentioned operates on.

@minghanz then what will be the fu, fv, cu and cv values for such a matrix? Also, even after doing that axis switching, the 3D bounding boxes are off by a slight margin

@sarimmehdi I checked the 3D bbox projection and it seems right to me. The new intrinsic matrix is just K_new = np.matmul(K, np.array([0,-1,0,0,  0,0,-1,0,   1,0,0,0,    0 ,0 ,0 ,1]).reshape(4,4)), which is the same intrinsic matrix defined in different coordinates.
If you still have 3D box projections not well aligned with objects, it's likely there are some errors in your code of transformation and projection. (For example, I wrongly multiplied the rotation matrix of heading angle on 3D points in the vehicle frame at the beginning, which I should do in the bbox-centerred frame.) You can check out https://github.com/gdlg/simple-waymo-open-dataset-reader. Their implementation of 3D box visualization should work well.

Hello, I am using the following code to plot 3D bounding boxes in image plane:
    box_3d = []
    center = label_info['bbox3d_loc']
    dims = label_info['bbox3d_dim']
    rot_y = label_info['rot_y']

    for i in [1, -1]:
        for j in [1, -1]:
            for k in [0, 1]:
                point = np.copy(center)
                point[1] = center[1] + i * dims[2] / 2 * np.cos(-rot_y + np.pi / 2) + (j * i) * dims[1] / 2 * np.cos(
                        -rot_y)
                point[0] = center[0] + i * dims[2] / 2 * np.sin(-rot_y + np.pi / 2) + (j * i) * dims[1] / 2 * np.sin(
                        -rot_y)
                point[2] = center[2] - k * dims[0]

                point = np.append(point, 1)
                point = np.dot(label_info['cam_to_img'], point)
                point = point[:2] / point[2]
                point = point.astype(np.int16)
                box_3d.append(point)
    point = np.copy(center)
    point[0] = center[0]
    point[2] = center[2]
    point[1] = center[1]
    point = np.append(point, 1)
    point = np.dot(label_info['cam_to_img'], point)
    point = point[:2] / point[2]
    point = point.astype(np.int16)
    box_3d.append(point)
    for i in range(4):
        point_1_ = box_3d[2 * i]
        point_2_ = box_3d[2 * i + 1]
        cv2.line(img, (point_1_[0], point_1_[1]), (point_2_[0], point_2_[1]), colors['pink'], 1)

    for i in range(8):
        point_1_ = box_3d[i]
        point_2_ = box_3d[(i + 2) % 8]
        cv2.line(img, (point_1_[0], point_1_[1]), (point_2_[0], point_2_[1]), colors['pink'], 1)
    cv2.circle(img, (box_3d[-1][0], box_3d[-1][1]), 10, colors['red'], -1)

However, the bounding boxes are displaced up and slightly to the left or right. Please let me know what I can do here. I am using the P0 intrinsic matrix (label_info['cam_to_img'])

I met the same problem with you? Have you fixed it?

@sarimmehdi I have the same problem.
I don't multiply intrinsic matrix by waymo_cam_RT and multiply objects coordinates to transformation matrix from Waymo camera coordinate system to Kitti camera coordinate system (they have different order). And after that I got the following result:

Have you solved this problem ?

I found a solution and made changes in my fork of this repo. I transformed 3D bounding boxes into KITTI styled ( 3D bounding boxes in camera coordinate system). And now bounding boxes look good.

@Yao-Shao maybe it is a good idea to make such an option for users? Maybe something like flag? I can do pull request for this option

@RocketFlash Can you upload your visualization code? I use your code to convet the dataset and use my code to  visullize

, but the resluts is like this.

@z393 I am using https://github.com/kuixu/kitti_object_vis for visualization. Have you tried to visualize this sample without KITTI convertation ? Maybe problem is in shifted boxes due to interpolation based labelling. Try to visualize it with something like https://github.com/gdlg/simple-waymo-open-dataset-reader/blob/master/examples/visualise_labels_and_lidar.py

@RocketFlash It was my fault, for image_0, p0 should be used, but I used p2 incorrectly

Hi @RocketFlash, I tried your fork but I had two issues:

Many Vehicle and Pedestrian samples are being saved as SIGN in label files.
The position of the objects is correct only in the front camera(0,1,2) FOVs. In others, there is still quite a misalignment.

Did you have those issues as well?


Traffic Ops no longer submits queue update requests over and over

The issue was that the UI was not receiving a response from the controller so the UI kept submitting the request over and over again.  Adding a re-direct solves this issue.
This fixes #1570

hold on, need to test the different entry points for queue updates, only tested the tools->queue updates page

ok, validated ort does not use this and also validated from the server checks page, I think this approach will work...


Rename repository to cisco-gnmi-python?

There is Cisco-specific code within this repository, should we rename and publish as cisco_gnmi?

Going to rename.

Wait, I don't have permission to rename. @skkumaravel could you rename to cisco-gnmi-python?

Nope. Rekha removed all our permissions to do so. She will need to do so.

@rekharawat Please rename this repository to cisco-gnmi-python.

Thank you @rekharawat.


Add AoT support to NETCore.Setup

Description
Update AWSSDK.Extensions.NETCore.Setup to support native AoT.
Motivation and Context
Fix AoT warnings in the AWSSDK.Extensions.NETCore.Setup assembly by adding new overloads that accept a type parameter.
I was testing an internal application using Amazon.AspNetCore.DataProtection.SSM with native AoT to see what compatibility warnings there were, and the transient dependency on AWSSDK.Extensions.NETCore.Setup flagged warnings due to the lack of AoT support.
These changes fix the AoT warnings in the assembly, but the approach may not be what the maintainers would prefer, so this is just a draft for now to solicit feedback on the approach.
If the changes are eventually merged and released, I can do a follow-up PR to Amazon.AspNetCore.DataProtection.SSM to consume the updated package version and make any code changes needed.
Based on the initial commit in this PR, that would changing this line of code:
- builder.Services.TryAddAWSService<IAmazonSimpleSystemsManagement>();
+ builder.Services.TryAddAWSService<IAmazonSimpleSystemsManagement, AmazonSimpleSystemsManagementClient, AmazonSimpleSystemsManagementConfig>();

Testing
New unit tests added. Further tests can be added once/if the changes are otherwise acceptable.
Types of changes

[ ] 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 change)

Checklist

[x] My code follows the code style of this project
[ ] My change requires a change to the documentation
[ ] I have updated the documentation accordingly
[x] I have read the README document
[x] I have added tests to cover my changes
[x] All new and existing tests passed

License

[x] I confirm that this pull request can be released under the Apache 2 license

@martincostello I have a near prototype that I have been working on for NETCore.Setup that uses the recent .NET feature static interface methods. Basically I updated the generated to have a static factory method on the service client interfaces used for creating the default implementation. I haven't fully proven the idea out yet but I want to see if I can get that all working first before having to add overloads. I'll tag you when I put out that PR.

May I ask if this is still moving forwards? Eager to try out Native AOT and NETCore.Setup is the last piece for us 🤞

Closing as I have a PR out in our upcoming V4 that address AOT for AWSSDK.Extensions.NETCore.Setup
https://github.com/aws/aws-sdk-net/pull/3353


Add a "Back to all guides" link in the guide actions

https://trello.com/c/irbxFiWr/150-add-back-to-all-guides-button-to-the-guide-view-screens

Code looks OK, I'll leave it to @mikieet to review the UI.


Update fr.yaml

I added the French translations for "Dark mode" "Light mode" and "Automatic mode"

Thanks!


Can not start in AWS IAM environment

Describe the bug
In my organization, we use AWS IAM to authenticate access to our Kubernetes cluster. Mizu seems to have trouble booting up in such an environment.
It just silently fails when running mizu tap PODNAME, but when running mizu view the following error is shown:
Failed to found mizu service services "mizu-api-server" is forbidden: User "<redacted>" cannot get resource "services" in API group "" in the namespace "mizu"

I suspect mizu is incompatible with the authentication mechanism and perhaps that is also the reason why mizu tap PODNAME does nothing.
To Reproduce
Steps to reproduce the behavior:

Have your .kube/config use aws-iam-authenticator to authenticate to the Kubernetes cluster
Run mizu tap PODNAME
Mizu terminates after the log message Waiting for Mizu Agent to start...

Expected behavior
Mizu should boot successfully
Logs
[2022-02-07T22:42:44.902+0100] DEBUG ▶ Checking for newer version... ▶ [19526 versionCheck.go:47 CheckNewerVersion]
[2022-02-07T22:42:44.902+0100] DEBUG ▶ Init config finished
 Final config: {
	"Tap": {
		"UploadIntervalSec": 10,
		"PodRegexStr": ".*",
		"GuiPort": 8899,
		"ProxyHost": "<IP_ADDRESS>",
		"Namespaces": null,
		"Analysis": false,
		"AllNamespaces": false,
		"PlainTextFilterRegexes": null,
		"IgnoredUserAgents": null,
		"DisableRedaction": false,
		"HumanMaxEntriesDBSize": "200MB",
		"DryRun": false,
		"Workspace": "",
		"EnforcePolicyFile": "",
		"ContractFile": "",
		"AskUploadConfirmation": true,
		"ApiServerResources": {
			"CpuLimit": "750m",
			"MemoryLimit": "1Gi",
			"CpuRequests": "50m",
			"MemoryRequests": "50Mi"
		},
		"TapperResources": {
			"CpuLimit": "750m",
			"MemoryLimit": "1Gi",
			"CpuRequests": "50m",
			"MemoryRequests": "50Mi"
		},
		"ServiceMesh": false
	},
	"Version": {
		"DebugInfo": false
	},
	"View": {
		"GuiPort": 8899,
		"Url": ""
	},
	"Logs": {
		"FileStr": ""
	},
	"Auth": {
		"EnvName": "up9.app",
		"Token": ""
	},
	"Config": {
		"Regenerate": false
	},
	"AgentImage": "docker.io/up9inc/mizu:0.25.0",
	"KratosImage": "gcr.io/up9-docker-hub/mizu-kratos/stable:0.0.0",
	"KetoImage": "gcr.io/up9-docker-hub/mizu-keto/stable:0.0.0",
	"ImagePullPolicyStr": "Always",
	"MizuResourcesNamespace": "mizu",
	"Telemetry": true,
	"DumpLogs": true,
	"KubeConfigPathStr": "",
	"ConfigFilePath": "/Users/<redacted>/.mizu/config.yaml",
	"HeadlessMode": false,
	"LogLevelStr": "INFO",
	"ServiceMap": false,
	"OAS": false,
	"Elastic": {
		"User": "",
		"Password": "",
		"Url": ""
	}
}
 ▶ [19526 config.go:57 InitConfig]
[2022-02-07T22:42:44.902+0100] INFO  ▶ Mizu will store up to 200MB of traffic, old traffic will be cleared once the limit is reached. ▶ [19526 tap.go:80 func9]
[2022-02-07T22:42:44.902+0100] DEBUG ▶ Using kube config /Users/<redacted>/.kube/config ▶ [19526 provider.go:1176 loadKubernetesConfiguration]
[2022-02-07T22:42:45.839+0100] DEBUG ▶ Finished version validation, github version 0.25.0, current version 0.25.0, took 937.132394ms ▶ [19526 versionCheck.go:95 CheckNewerVersion]
[2022-02-07T22:42:46.898+0100] INFO  ▶ Tapping pods in namespaces "<redacted>" ▶ [19526 tapRunner.go:116 RunMizuTap]
[2022-02-07T22:42:47.276+0100] INFO  ▶ +<redacted> ▶ [19526 tapRunner.go:186 printTappedPodsPreview]
[2022-02-07T22:42:47.277+0100] INFO  ▶ Waiting for Mizu Agent to start... ▶ [19526 tapRunner.go:126 RunMizuTap]
[2022-02-07T22:42:50.447+0100] DEBUG ▶ Checking for newer version... ▶ [19538 versionCheck.go:47 CheckNewerVersion]
[2022-02-07T22:42:50.447+0100] DEBUG ▶ Init config finished
 Final config: {
	"Tap": {
		"UploadIntervalSec": 10,
		"PodRegexStr": ".*",
		"GuiPort": 8899,
		"ProxyHost": "<IP_ADDRESS>",
		"Namespaces": null,
		"Analysis": false,
		"AllNamespaces": false,
		"PlainTextFilterRegexes": null,
		"IgnoredUserAgents": null,
		"DisableRedaction": false,
		"HumanMaxEntriesDBSize": "200MB",
		"DryRun": false,
		"Workspace": "",
		"EnforcePolicyFile": "",
		"ContractFile": "",
		"AskUploadConfirmation": true,
		"ApiServerResources": {
			"CpuLimit": "750m",
			"MemoryLimit": "1Gi",
			"CpuRequests": "50m",
			"MemoryRequests": "50Mi"
		},
		"TapperResources": {
			"CpuLimit": "750m",
			"MemoryLimit": "1Gi",
			"CpuRequests": "50m",
			"MemoryRequests": "50Mi"
		},
		"ServiceMesh": false
	},
	"Version": {
		"DebugInfo": false
	},
	"View": {
		"GuiPort": 8899,
		"Url": ""
	},
	"Logs": {
		"FileStr": ""
	},
	"Auth": {
		"EnvName": "up9.app",
		"Token": ""
	},
	"Config": {
		"Regenerate": false
	},
	"AgentImage": "docker.io/up9inc/mizu:0.25.0",
	"KratosImage": "gcr.io/up9-docker-hub/mizu-kratos/stable:0.0.0",
	"KetoImage": "gcr.io/up9-docker-hub/mizu-keto/stable:0.0.0",
	"ImagePullPolicyStr": "Always",
	"MizuResourcesNamespace": "mizu",
	"Telemetry": true,
	"DumpLogs": false,
	"KubeConfigPathStr": "",
	"ConfigFilePath": "/Users/<redacted>/.mizu/config.yaml",
	"HeadlessMode": false,
	"LogLevelStr": "INFO",
	"ServiceMap": false,
	"OAS": false,
	"Elastic": {
		"User": "",
		"Password": "",
		"Url": ""
	}
}
 ▶ [19538 config.go:57 InitConfig]
[2022-02-07T22:42:50.448+0100] DEBUG ▶ Using kube config /Users/<redacted>/.kube/config ▶ [19538 provider.go:1176 loadKubernetesConfiguration]
[2022-02-07T22:42:50.946+0100] DEBUG ▶ successfully reported telemetry for cmd view ▶ [19538 telemetry.go:36 ReportRun]
[2022-02-07T22:42:51.299+0100] DEBUG ▶ Finished version validation, github version 0.25.0, current version 0.25.0, took 852.210223ms ▶ [19538 versionCheck.go:95 CheckNewerVersion]
[2022-02-07T22:42:52.147+0100] ERROR ▶ Failed to found mizu service services "mizu-api-server" is forbidden: User "<redacted>" cannot get resource "services" in API group "" in the namespace "mizu" ▶ [19538 viewRunner.go:32 runMizuView]

Desktop (please complete the following information):

OS: macOS

Additional context
Unfortunately, I am not too familiar with the authentication setup on the AWS side. But it is clear that our users do not have the access rights needed by Mizu.
Is it possible for Mizu to work around this limitation?

HI @danishnawab
Thanks for reaching out.
Mizu tap creates an "agent" pod inside your cluster, in order to access the web ui mizu CLI tries to create k8s proxy or port forward. So the user which running the CLI need to have certain permissions in the cluster like get pod/service. Just wanted to double check that your IAM user have these permissions in a newly created namespace like "mizu"?

@IgorGov No, my user doesn't have access to the mizu namespace, not out of the box.
Access within our organization is limited to the namespaces we deploy our stuff on. And, mizu is not one of those.
Could there be a way by which mizu could run in such environments? I suppose there would be others with a similar authentication setup.
Perhaps mizu could instead start the agent in the existing namespaces instead of a new namespace?

So deploying mizu in one of the existing services worked to the point that the server could come up and the traffic viewer was loaded in my browser, however, I didn't see any traffic.
Looking at the logs, I could see the following statements:
[2022-02-08T23:46:31.669+0100] DEBUG ▶ error while getting kubernetes server version, err: Get "https://<redacted>:443/version?timeout=32s": getting credentials: exec: executable aws-iam-authenticator failed with exit code 1 ▶ [68653 provider.go:1149 GetKubernetesVersion]
[2022-02-08T23:46:31.670+0100] ERROR ▶ Get "https://<redacted>:443/version?timeout=32s": getting credentials: exec: executable aws-iam-authenticator failed with exit code 1 ▶ [68653 common.go:94 handleKubernetesProviderError]

At first, I assumed that my IAM user doesn't have the access rights to query the k8s version, but then I tried executing kubectl version and it successfully listed both the client and the server versions.

can you please run the command with flag "--set dump-logs=true", it should generate a zip file with all mizu logs (cli, server and tappers). The command should look like:
../mizu tap --set mizu-resources-namespace=<ns> -n <ns> --set dump-logs=true
Can you confirm that CLI detects pods to tap? the output should look like:

Can you confirm that mizu tapper pods are up and running? see the highlighted pods:


how to use dao for alone

LInux 64bit

GoFrame CLI Tool v1.16.2, https://goframe.org
GoFrame Version: cannot find go.mod
CLI Installed At: /home/bingyang.xby/remote/software/go/bin/gf
CLI Built Detail:
Go Version:  go1.16.3
GF Version:  v1.16.0
Git Commit:  4c84e08c182c5df921880ba2c0429a3e813a3336
Build Time:  2021-06-03 20:43:58

Question:
I want to use dao for my own framework without goframe. So
gf gen dao -l "mysql:xxxxx"

But error shows "need config file toml"
What should I do? where I init gdb.config
gdb.SetConfig(gdb.Config{
"default": gdb.ConfigGroup{
gdb.ConfigNode{
Host: "<IP_ADDRESS>",
Port: "3306",
User: "root",
Pass: "xxxxx",
Name: "xxxx",
Type: "mysql",
},
},
})

answer:
In:
app/dao/internal/xxx.go
import xxxx
func init() {
gdb.Setconfig(xxxxx)
}
func NewxxxxDao() {....}


Fix Unused Variable

Woops, error ^^

Check my repo for fix. Change to = NULL @SherlockStd

Thanks :+1:

I will patch this evening :smile:

@RdeWilde Just a question, can you explain me why set to NULL instead of false ? Thanks ^^

@SherlockStd Simple answer, no, Google told me :) Rest I did not understand. bool* = false is implicit conversion to null pointer or something.


Cells above

First changes for creating new cells above the widget cell

Codecov Report

Merging #2 (5d054a6) into main (29e66a5) will decrease coverage by 3.07%.
The diff coverage is 65.04%.

:exclamation: Current head 5d054a6 differs from pull request most recent head 6957934. Consider uploading reports for the commit 6957934 to get more accurate results

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@            Coverage Diff             @@
##             main       #2      +/-   ##
==========================================
- Coverage   71.61%   68.55%   -3.07%
==========================================
  Files          12       12
  Lines         525      566      +41
  Branches       24       28       +4
==========================================
+ Hits          376      388      +12
- Misses        143      172      +29
  Partials        6        6

Impacted Files
Coverage Δ

bring_order/boutils.py
43.28% <41.66%> (-7.88%)
:arrow_down:

bring_order/deductive.py
49.16% <55.55%> (+0.80%)
:arrow_up:

bring_order/bodi.py
68.49% <63.15%> (+3.41%)
:arrow_up:

bring_order/bringorder.py
69.23% <63.15%> (-21.25%)
:arrow_down:

bring_order/inductive.py
54.32% <100.00%> (-2.83%)
:arrow_down:

tests/bodi_test.py
95.45% <100.00%> (ø)

tests/bringorder_test.py
100.00% <100.00%> (ø)

tests/deductive_test.py
100.00% <100.00%> (ø)

tests/inductive_test.py
100.00% <100.00%> (ø)

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


optionButton Can't scroll when list is long

Godot version
godot 4.0.3
System information
os: windows 8.1
graphics: intel hd 520
Issue description
i can't scroll in optionButton when the list is long
Steps to reproduce
add optionButton node
add 100 item using for loop
try to scroll
Minimal reproduction project
add optionButton node
add 100 item using for loop
try to scroll

Can't reproduce in 4.1 dev
https://github.com/godotengine/godot/assets/2223172/4478455d-055d-48af-ab59-1a96891374c5


[sw,tests,pwrmgr] Improve synchronization

Allow each CSR updates that need to transfer to the slow domain to make
synchronization optional.
This enables entry into low power to use a single synchronization when
it is done with the last update.
Signed-off-by: Guillermo Maturana<EMAIL_ADDRESS>

Updated pwrmgr unittests and miscellaneous other files affected.


DOC: fix typo argmin -> argmax in DataArray.argmax docstring

Just a small typo

Nice spot, thanks @sjvrijn


 I seem to see some grammatical errors:

You defined the DAGModel class, but you inherited the DAGTensorGraph class. Do I need to modify these syntax problems?

Hi, I preserved some models including DAGModel from an older version of DeepChem package. Because I didn't use them, those inconsistencies do not cause problems for me. I kept them for the possibility of future extensions. Feel free to contribute if you would like to. Currently only a few models are being used and (hopefully) free of bugs, as I indicated in the Readme file of the home page.

Closing the issue for now. Feel free to reopen if necessary.


Explorer "greys out" when renaming folder or file

When renaming either a folder or file the explorer is practically disabled. I can't give the specified folder/file a new name, but can still open folders/files.

Recorded use:
https://user-images.githubusercontent.com/48733683/108178690-048c2280-7105-11eb-9ee3-52b9a4ee7cf2.mov
Information
Version: 1.53.2
Commit: 622cb03f7e070a9670c94bae1a45d78d7181fbd4
Date: 2021-02-11T11:45:54.515Z
Electron: 11.2.1
Chrome: 87.0.4280.141
Node.js: 12.18.3
V8: <IP_ADDRESS>-electron.0
OS: Darwin x64 20.4.0

Closing as dupe of https://github.com/microsoft/vscode/issues/116625
Would be great if you can answer my questions from that issue. Thanks


GUI viewport snaps to base address when editing distant array entries

Version and Platform (required):

Binary Ninja Version: 3.5.4320-dev going back into infinity
OS: win10 19045
CPU Architecture: 86_64

Bug Description: GUI viewport of arrays-of-structs snaps to base address of array when editing entry names
Steps To Reproduce:

open something with a CLI implemented with arrays of structs containing {char* name; handler} or similar
create cmd_struct cmd_table[123]; overtop that .rodata
scroll way down, try to rename cmd_struct[120].handler to match interesting name/id prior to RE
viewport snaps to show cmd_struct[0]

Expected Behavior: viewport stays on table entry with recently-renamed function to maintain flow
Additional Information: please lift ARMV7_TEQ

This turned out to be an issue where LinearView didn't know that the arrays had a length, so it always went to the top. Should be fixed on 3.5.4471-dev