[Docker Desktop] Desktop resource clean up

Tell us about your request
Provide a UI tool to show users how much of their disk space the different assets in Desktop are taking up (images, containers, cache) and a tool to remove these to free up space
Which service(s) is this request for?
Desktop
Tell us about the problem you're trying to solve. What are you trying to do, and why is it hard?
We hear a lot of feedback that 'desktop is using all of my disk space' and we would like to help our users understand why and address this
Are you currently working around this issue?
N/A
Additional context
N/A
Attachments

I also have frequently full disks on my development machines as well as our CI hosts running Jenkins, where the solution is to clear the cache nightly with a cron job, requiring base images to be downloaded again and again, defeating the point of having a cache.
I asked on ServerFault if there was a way to delete unused objects but keep the ones that have been recently used (I haven't received an answer at this time). I think it would make the cache more effective and greatly enhance the user experience when disk space is limited (it usually is) and network is slow.
I don't know anything about Docker internals but I imagine that tracking the usage of image layers would be a first step toward detecting unused objects worth deleting. Usage could be based on container lifetime, i.e. the termination timestamp of the last container that used a certain image layer. An approximate date would already be useful for caching purposes.
Food for thought.

@mjambon I agree with you. In the meantime, have you looked at using docker system prune with a label filter? In our infra we've used two prune jobs in the past, one for everything, and then a specific one that allowed keeping specially tagged items longer.
/usr/bin/docker system prune -a -f --filter "label!=com.docker.ucp.version" --filter "until=120m" would delete anything that does not have the com.docker.ucp.version label AND is older than 120 minutes.
/usr/bin/docker container prune -f --filter "until=120m" would prune all stopped containers older than 120 minutes. Thus, we would be left with running containers, and all images/networks/dangling images/dangling build cache items that have been used within 120 minutes and have the com.docker.ucp.version label.
So you could tag your images/containers/etc with dev=true and run /usr/bin/docker system prune -a -f --filter "label=dev" --filter "until=30m" and /usr/bin/docker system prune -a -f --filter "label!=dev" --filter "until=120m". This would get rid of dev items taking up storage space much quicker, while keeping around other stuff.

I don't think this is a desktop issue. All installations have this problem.

@tiborvass You're right, all installations potentially have this problem, but AIUI this issue is specifically about exposing the existing docker prune via Desktop UI. Enhancements to docker prune maybe belong in a separate ticket.

For Docker Desktop, it would be great to also have an overview how disk space is consumed. There's parts that cannot be removed inside the container (e.g., docker and containerd itself), and parts that can be cleaned up (e.g. through docker system prune).
Having an indicator to see what takes up space would be useful; something similar to macOS's presentation;

For cleaning up; I think both "automatic" and "manual" could make sense. For automatic cleaning, some care should be taken, because it's harder to decide if something is "ok" to be removed. When using BuildKit as a builder, build-cache can be automatically "garbage collected", and provides some configuration to customise (see https://github.com/moby/moby/pull/37846)
For other resources both "manual" and "automatic" should default to NOT remove volumes, as they may contain important data (even if unused by a container, we cannot assume they can be cleaned up).
[ Cleanup resources ]

WARNING! This will remove:
  - all stopped containers
  - all networks not used by at least one container
  - all dangling images
  - all dangling build cache

Possibly have checkboxes to customize. For example, docker image prune (by default) only cleans up "untagged images", but allows using --all to remove all images that are not currently used by a container, and docker builder prune allows "keeping" X gigabytes of cache and/or only removing cache that hasn't been used longer in the last X hours
Cleanup resources

[ ] customize
  [x] dangling images
    [ ] all unused images
  [x] stopped containers
  [x] build-cache
  [x] unused networks
  [ ] unused volumes

Yes but the feature first needs to be in engine anyway via daemon settings which would out-of-the-box work in Desktop via the daemon settings pane. Happy to have nicer UI on top of that, but I would argue that's not the highest priority. Priority is to have the feature in the first place.

Does Docker Desktop do any automatic clean up today? If so, part of the UI that would be nice is to show objects queued for cleanup in the near future. Maybe also a log of what has been cleaned up, if there is any automation.

@JimCodified Desktop does not do any automated clean-up, and I'm not sure we'd want to do that either because we'd be deleting the user's files. Certainly in the first version it would just be about reporting space better and allowing the user to select to clean it up.

The problem still exists.
Scripts for pruning didn't help.
Win10, LSTC 2018, All updates installed.

I realize this could be regarded as a separate issue, but it's definitely related to "resource cleanup": it sure would be nice if DD had a ui feature to move itself (or at least the vm location) from one drive to another.
People often install it and only find over time after many pulls and builds that DD is filling their drive--often their system drive, to great peril. And it's not trivial to move.
Yes, there's the experimental ui and its keywords (if you know them, and accurately track their changes over the years). But a single button click--which knew how to handle things for us (on per-os basis, or for Wsl vs WSL2, etc) would sure make life easier for many.

@carehart is the "Disk image location" option in the preferences what you're looking for? https://docs.docker.com/docker-for-windows/#resources

Disk image location: Specify the location of the Linux volume where containers and images are stored.
You can also move the disk image to a different location. If you attempt to move a disk image to a location that already has one, you get a prompt asking if you want to use the existing image or replace it.

Linking another ticket that's somewhat related (switching default logging driver to reduce disk space taken up by container logs); https://github.com/docker/roadmap/issues/163

@carehart is the "Disk image location" option in the preferences what you're looking for? https://docs.docker.com/docker-for-windows/#resources

Disk image location: Specify the location of the Linux volume where containers and images are stored.
You can also move the disk image to a different location. If you attempt to move a disk image to a location that already has one, you get a prompt asking if you want to use the existing image or replace it.

That works for those on Hyper-V, yes (and I see I missed it was added/moved from being an experimental arg instead). But for those using WSL/WSL2, it doesn't appear. And sure, someone may say "take up the problem with MS", I'll just say that if DD creates the image, then it's reasonable to ask it (as part of this "cleanup" feature suggestion) that it (DD) could help with that use case as well.
But I will understand if the decision is made that it feels not DD's responsibility. Just wanted to put it on the table for consideration.

Hi all! Somewhat relatedly to this item we have been prototyping two things we might build:

Improving the clean up interface that we have on images and also making it available for the volume management interface

Multi select check boxes on images and volumes for easy removal without having to enter the clean up mode (note that we plan on adding the disk space saved on this screen too like in clean up screen above).

With the goal of allowing you more control for freeing up space that is being used by volumes. Some mock ups attached and we would love any feedback you have (What do you like/not like? What’s missing from making this useful? Is anything confusing?)
Curious if there is any interest in having a clean up mode across resources rather than doing it separately?

Also, based on the other feedback on this ticket, it sounds like there is a need for:

Overall more visibility into what resources take up space
The ability to set policies for automatic clean up on some frequency
Exposing more of the prune capabilities within the Docker Dashboard (the UI) for example delete images older than X minutes

Are any the most important to you all on this? Are there other problems you want solved related to clean up not yet mentioned?

... Are there other problems you want solved related to clean up not yet mentioned?

Thanks for asking. I'll ping with a reminder about the point I'd made above about helping folks (wanting to clean up DD-related disk usage) with an easy way to move all the images to another drive, especially when running DD for Win with wsl 2. Or might anyone say that's been resolved since [my last comment here, a year ago] (https://github.com/docker/roadmap/issues/13#issuecomment-742829877)?

Hi all! In 4.8 we shipped a disk usage extension to help with visibility and reclaiming space. We'd love to hear your feedback!

Love the new feature 😃
The round / circular diagram is quite "hungry" on screen real-estate; I wonder if it has been considered to use a horizontal diagram instead, as I posted in my older comment above (matching macOS's approach); https://github.com/docker/roadmap/issues/13#issuecomment-631382934

Doing so would likely not allow to have the "legend", which could be solved using a hover box;


Add rate limiting of JWKs refresh

The purpose of this PR is to add rate limiting for the refreshing of the remote JWKs resource.
A new option, RefreshRateLimit has been introduced. The intention of RefreshUnknownKID has been changed to only be used with RefreshRateLimit (but nothing stops the user from ignoring that intention).
The rate limiting applies to refresh requests generated by the refresh interval or a JWT signed by an unknown kid.
This PR introduces a new dependency: golang.org/x/time. The golang.org/x/time/rate package is the rate limiter used.

Looks like there's a bug in this PR. The test passes, but all three refresh requests from the tokens with unknown kids are accepted.
Found this while looking through the code coverage.

Looks like there's a bug in this PR. The test passes, but all three refresh requests from the tokens with unknown kids are accepted.
Found this while looking through the code coverage. Some lines were not covered that should be. The refresh interval should have a valid refresh request that gets accepted without needing a reservation.

It seems the rate limiting package does not allow for events to be dropped unless their context expires? Which doesn't work for this use case because events need to be dropped so they aren't scheduled more than once. May need a custom rate limiter...

Hey @MicahParks, thanks for looping me into this one! I hope I can help.
I went back and forth on whether to make the rate limiting apply only to unknown-KID-triggered refreshes, or all refreshes.
The latter approach has the advantage that the rate limiting/time checking could just be done in refresh() itself, and the callers wouldn't have to contain any timing/rate limiting logic --- I think that design might simplify things a bit.
Also, that time/rate package is pretty neat --- I didn't know that existed. If we can get this package to work, perhaps we could also let the user pass in a limiter themselves so they can configure exactly the behavior they want.

It seems the rate limiting package does not allow for events to be dropped unless their context expires?

By the way, do these functions (AllowN, and the Allow right above it) not provide the functionality you need for dropping events that exceed the rate limit? The documentation seems to hint so, but I'm really tired and might just be missing something obvious.
One last question --- how are you calculating code coverage?
I'll be on for a bit tomorrow morning, and then tomorrow evening (US eastern time) and can take a more detailed look then. It's getting really late for me now tonight.

The AllowN methods do allow you to drop requests, but I'd like to have at most 1 queued up when the rate limiter is not ready. This would be 1 reservation at max, but it doesn't seem the rate package allows for that.
I calculate code coverage using this:
go test -cover -race

I visualize the code coverage in my IDE, GoLand, using their built-in feature. But the go CLI tool allows you to generate a coverage report using commands similar to this:
go test -coverprofile=coverage.out
go tool cover -html=coverage.out -o coverage.html

then using a web browser to view coverage.html


Add a timeout to the UDS metric sink

We now wait for up to one second while trying to write metrics, but only if the previous line was not dropped.
Additionally, the file descriptor used for sending is put into non-blocking mode to avoid endless blocking in case the listening socket hangs up but isn't cleaned up fully.
:memo: Reviewer Checklist
Review this pull request by ensuring the following items:

[x] All user-facing changes have changelog entries
[ ] User-facing changes are reflected on vast.io

Why not poll unconditionally? It seems we're now at least dropping one line with higher probability.

If we wait every time and run into timeouts constantly the message inbox of the accountant will grow as soon as the average time between messages is lesser than the timeout. Since the inbox is an unbounded buffer it would run out of memory eventually, which is exactly the situation that this change is supposed to fix.

If we wait every time and run into timeouts constantly the message inbox of the accountant will grow as soon as the average time between messages is lesser than the timeout. Since the inbox is an unbounded buffer it would run out of memory eventually, which is exactly the situation that this change is supposed to fix.

My mental model is this:

The common case is that VAST produces less that than the other side can consume
We want to be able to tolerate outages on the other end, for brief amounts of time
If the socket becomes unavailable, we accept a small amount of wait time
In the common case, wpoll is a no-op because the socket is always ready

By this logic, it doesn't hurt to poll unconditionally. It seems this scenario of intermittent outages is not reflected, rather, we're punishing directly by dropping a message on the floor immediately.
So only for the non-common case of continuous outage, we need to drop messages. Does that make sense?

If we wait every time and run into timeouts constantly the message inbox of the accountant will grow as soon as the average time between messages is lesser than the timeout. Since the inbox is an unbounded buffer it would run out of memory eventually, which is exactly the situation that this change is supposed to fix.

My mental model is this:
0. The common case is that VAST produces less that than the other side can consume

1. We want to be able to tolerate outages on the other end, for brief amounts of time

2. If the socket becomes unavailable, we accept a small amount of wait time

That is what we do.

3. In the common case, `wpoll` is a no-op because the socket is always ready

That doesn't make it a no-op. In fac t, I'm going to change it to try to send first, and only wpoll if we get EAGAIN. No need to introduce an unforced pessimization here.

By this logic, it doesn't hurt to poll unconditionally. It seems this scenario of intermittent outages is not reflected, rather, we're punishing directly by dropping a message on the floor immediately.

Intermittent outages are covered. "Intermittent" in the sense that we can't send every so often, and it recovers relatively quickly. The logic to wait only in the good state has no effect in this scenario. What it does cover is the case of being unable to send for a longer time.

So only for the non-common case of continuous outage, we need to drop messages. Does that make sense?

Well, yes, that is exactly what this code does.

Unless @dominiklohmann has some mechanical feedback on this PR, I'm giving this greenlight modulo pending discussion threads.

I don't know that much about this mechanism as you do, my only concern is that expected<bool> is a really bad return type that we should never use anywhere, but I already commented that.

I don't know that much about this mechanism as you do, my only concern is that expected<bool> is a really bad return type that we should never use anywhere, but I already commented that.

Yes, I also think we should revert this to caf::error with timeout being a specific error code.

Personal opinion: caf::expected<void> is a strictly better caf::error as a function return type, because it has bool-esque semantics, so I think that'd be even better.

Here is what the call sites look like when using caf::error or caf::expected<void> respectively:

error

    if (auto err = dest.send(
          std::span<char>{reinterpret_cast<char*>(buf.data()), buf.size()},
          timeout_usec)) {
      if (err == ec::timeout)
        uds_datagram_sink_dropping = true;
      else {
        VAST_WARN("{} failed to write metrics to UDS sink: {}", *self,
                  success.error());
        VAST_WARN("{} disables the UDS metrics sink", *self);
        uds_datagram_sink.reset();
        return;
      }
    }

expected<void>

    if (auto success = dest.send(
          std::span<char>{reinterpret_cast<char*>(buf.data()), buf.size()},
          timeout_usec);
        !success) {
      if (success.error() == ec::timeout)
        uds_datagram_sink_dropping = true;
      else {
        VAST_WARN("{} failed to write metrics to UDS sink: {}", *self,
                  success.error());
        VAST_WARN("{} disables the UDS metrics sink", *self);
        uds_datagram_sink.reset();
        return;
      }
    }

Both seem to be downgrades over caf::expected<bool>. The main issue I have with it is that I consider timeout handling for a function that takes a timeout as regular control flow, not error handling.

The main issue I have with it is that I consider timeout handling for a function that takes a timeout as regular control flow, not error handling.

Why not switch-case on caf::error as return value? That's idiomatic and doesn't require shoehorning the logic into a binary if-else.

Why not switch-case on caf::error as return value? That's idiomatic and doesn't require shoehorning the logic into a binary if-else.

I implemented that now so we can move on.
I'll still push another updated to try to send immediately so we only have to go through wpoll if that didn't work.


New TPR service list component with search

PLAENH-185
New TPR service list component with search
What was done
More details at
https://helsinkisolutionoffice.atlassian.net/browse/PLAENH-185
How to install

Update the module with this PR https://github.com/City-of-Helsinki/drupal-module-helfi-tpr/pull/128
Update the theme with PR
Run make drush-updb drush-cr
Run PARTIAL_MIGRATE=1 drush migrate:import tpr_service --no-progress

How to test

Add to a page that has paragraphs the new component "Service List Search"

Configure the component with using service_id and/or specific services

[ ] The page used in installation should have a listing that looks like this https://app.abstract.com/share/505f9e4a-9291-48ca-9bcc-4f38a7bc3e36?collectionId=4d66b7af-5224-4b71-8d19-a4df8af377c0&collectionLayerId=0d3595f3-dc9c-4c8e-8dc3-e7c5c09ac932&present=true&preview=false&sha=bf449ac81535612facaff26e7355b3b354509124

[ ] Search should work against title, short desc and name synonyms

[ ] Services teasers should use the imported translations

Designers review

[ ] This PR does not need designers review
[ ] This PR has been visually reviewed by a designer (Name of the designer)

Other PRs

https://github.com/City-of-Helsinki/drupal-module-helfi-tpr/pull/128
https://github.com/City-of-Helsinki/drupal-helfi-platform-config/pull/407

@Arkkimaagi thank you for your in depth review and pointing me to the card.twig - with that, I removed lots of scss
We have taken a look on https://www.hel.fi/en/health-and-social-services/health-care/health-stations when started this card, but at that time it wasn't refactored with the new card.
Regarding style lint and class related comments, I have corrected the existing twig and scss for this existing component, to pass the stylelint - https://www.hel.fi/en/decision-making/contact-the-city-of-helsinki/advisory-services
One comment here: the animation in the new card.twig is different than current one at https://www.hel.fi/en/decision-making/contact-the-city-of-helsinki/advisory-services  I assume is ok to refactor it to use the same new animation

Looks good now. Only two steps left before merging, but we will handle those two steps on our end.

Creating dist folder and committing it.
Checking what extra steps need to be taken for this regarding Platta V3 and HDBT 5.x

I switched the base to PLAENH-185 branch, so that I can compile the dist-folder before merging on main branch.


chore(main): release 0.7.0

:robot: I have created a release beep boop
0.7.0 (2024-12-28)
Main changes

Add filters to the publish entry of a topic
Add Eclipse Sparkplug to the supported payload types

Features

add filters to output config (7483f3a)
add new payload type sparkplug (ef428d7)
add output to topic (09c50e1)
automatically convert input payload for filters (e902b85)
filter input of publish (79babcc)
generate code for sparkplug B from protobuf (c4f47e8)
parse protobuf and sparkplug from json and yaml (6050179)

Bug Fixes

make subscription optional (5e2ff01)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v0.7.0
:sunflower:


Add Posts API

Part of #26.
This can be split out into multiple issues to reflect the endpoints in the API docs: http://docs.codecorpsapidevelop.apiary.io/#reference/categories

[x] List all
[x] Create
[x] Retrieve
[x] Update

Closing this. Still left with #86, but no need to keep this open for that


New container mrsiproc 0.0.1

There is a new container, use this command to test:
bash /neurocommand/local/fetch_and_run.sh mrsiproc 0.0.1 20230503

and then add to apps.json to release:
https://github.com/NeuroDesk/neurocommand/edit/main/neurodesk/apps.json

@korbinian90 - without matlab full install. Can you test?

@stebo85 - tested. It works!

I created a pull request with this container version in apps.json

perfect :) Merged.

The container is live now @korbinian90 - but the code is not actually included, right? so no-one can use the container?

Yes, the code is still private (and a basis set is required). Both are at the moment in a private GitHub repository. I'll ask if I can make them public. Maybe it is fine with the compiled Matlab code.


Add nf-core/eager preprint

Title: Reproducible, portable, and efficient ancient genome reconstruction with nf-core/eager
Corresponding author: @apeltzer
BioRxiv DOI: https://doi.org/10.1101/2<IP_ADDRESS>615
Manubot repo: https://github.com/apeltzer/eager2-paper/
Manubot rendered: https://apeltzer.github.io/eager2-paper

Github != holiday @apeltzer  ;)

Beautiful manuscript! Thanks for helping keep the catalog up to date.
If you would like a thumbnail image next to your manuscript in the catalog (and also when shared on twitter), you can add a thumbnail.png somewhere in the repository. The catalog might take up to a week to update with the image.

Thanks.
I think the thumbnail is already there as in it's the manuscripts metadata.yaml (at the end), or does this need to be explicitly defined?

I think that should work... we'll see soon

Success


chore: bump go version to 1.19

update to go1.19
bump protobuf pkg to 1.3.2 for security vuln patch

This also addresses an issue relating to TLS certificates with teleport


kubeconfig symlinking

Describe the bug
Installing k3s via install.sh does not give information on where to find the kubeconfig file.
To Reproduce
curl -sfL https://get.k3s.io | sh -
Expected behavior
Output of location of kubeconfig.
Additional context
I was able to find it at /etc/rancher/k3s/k3s.yaml, and then symlinked it to ~/.kube/config, so I solved the problem. I the reason I don't want to use sudo s3d kubectl is partially due to the sudo requirement, and I also wanted a "native" experience.

Turns out this is a Very Bad IdeaTM. I ended up aliasing alias kubectl="sudo k3s kubectl", and things went much more smoothly.


Update layout

Overview of the Pull Request:
Just took some padding off. There will be more changes, but this is a small thing that maybe is better.
I'll have to get clearer what else is not quite right in the layout.
link to Trello card or Github issue
How Has This Been Tested?

Please describe the tests that you ran to verify your changes.
Provide instructions so we can reproduce.
If necessary, please also list any relevant details for your test setup/configuration

Pull Request Checklist:
Make sure the following checkboxes[ ] are checked with x before sending your PR -- thank you!

[ ] Have you included a link Trello card / Github issue and written sufficient description to help others review your work?
[ ] Is your pull request up-to-date with main branch?
[ ] Have you checked That code is well formatted? Did npx prettier --check . return no warnings/errors?
[ ] Have you written instructions on how to test that your changes work as expected?
[ ] Have you tested your work thoroughly on your local machine to ensure you are not breaking anything?

Hi @batteries76 ,
thanks for your PR! :bow:
There are some Pros and Cons that I can see with the changes:
Pros:

taking off the padding seems to have eliminate the need to scroll to see 'Next' button in many cases (for desktop views) :tada:

Cons:

the cloud in the 'ThankYou' page gets 'chopped off' at the top (see screenshot)

We can address the issue with the 'ThankYou' page on a separate PR, if we're happy to remove the padding. What do you think @Amutha37 , @OlaShabalina ?
The changes in the PR doesn't address the issues we see in mobile view for the WorkArrangement page and the TravelDays page (see screenshots below). But if they can't be easily address in components/Layout/Layout.jsx, then let's address the layout issues in the pages.

Yeah, I think perhaps the issues with pages should be solved within the pages. It's a bit presumptive of the layout to put that padding in (which is probably my fault in the first place).

@batteries76 , @hqtan
Should we keep the original padding for mobile version? The issue we faced was for desktop. Also I don't think it should be 0, it's good to maintan a similar width for pages, just not as much as 97px. Ideally to keep around 720-750px for the content for the largest page size.

@batteries76 , @hqtan Should we keep the original padding for mobile version? The issue we faced was for desktop. Also I don't think it should be 0, it's good to maintan a similar width for pages, just not as much as 97px. Ideally to keep around 720-750px for the content for the largest page size.

Hi @OlaShabalina ,
Thx for your suggestion! :bow:
I'm not sure I quite understand what you mean, sorry! Can you suggest the code changes you would make to implement your suggestions?

Yes, good idea.
I'll double check these things today and push a new commit.
Thanks @OlaShabalina and @hqtan

Hi @batteries76 ,
Thank you submitting your PR. I personally like the current px padding (will wait what @hqtan and @Amutha37 say). All the pages are adjusted to it already so it's better to proceed with the current state. What would be great is to remove the bottom padding so we don't see the scroll bar for the empty space.

I pulled the changes to my machine and, although the code is a bit different, how does it change the current page look/functionality? https://council-emissions-calculator-spike-flax.vercel.app/form/WorkArrangement
One thing I noticed is - it adds more space between lines:

In my opinion, the current version with less padding looks better. I'll wait for response from @hqtan and @Amutha37

It might be my fault, but I don't think you are looking at the right thing @OlaShabalina. I've double checked.
The easiest one to look at is 8a2085a, because I might have run prettier in a way that isn't how people have been using it.
There are only a couple of files changed, and the padding has been reduced in the layout and in the 'Work Arrangements' page.
I also removed the <br>s and put in some Flexbox.
A couple of other minor changes.

Hi @batteries76 , it's possible 😄 I'll wait for @hqtan and @Amutha37 to have a look. 👍

Hi @batteries76 ,
If you're fixing formatting on a bunch of files in this repo, that is unrelated to the purpose of this PR.
It makes it hard for reviewers to tease out the changes are relevant to the layout updates.
I suggest you revert the formatting commit in this PR, and raise a separate PR for the formatting fixes.

@hqtan I'm not trying to fix formatting issues. I just thought we were running prettier these days. If not fine, I'll revert.

Hi @batteries76 ,
the cloud in the 'ThankYou' page is still getting cropped:

Have made some changes as requested, and also spot fixed a few styling things as I went through the app.
Let me know how that looks now.

Ok, second try. Git is still a struggle sometimes.
Some changes as requested, some spot fixes of various styling issues, and a few copy changes.

Hi @batteries76 ,
the cloud in the 'ThankYou' page is still getting cropped:

I'm not seeing this at the moment

The other changes I have put through


Navbar dropdown doesn't work if you click the icon

Description
If you click the icon within the navbar dropdown link, the dropdown doesn't open.
Screenshots / Codepen
I don't think a Codepen is needed here, as this applies to the documentation dropdowns too.
http://materializecss.com/navbar.html#navbar-dropdown
http://prntscr.com/eszqjd

Yeah, confirmed.
I tried in my own web page and it works as expected, so I guess is something with the doc's markup

I'm having the same problem on 0.98.1 when using just an icon as the dropdown activator.
Adding data-stoppropagation="true" is a workaround.
https://codepen.io/anon/pen/evadwb

Duplicate of https://github.com/Dogfalo/materialize/issues/4409, https://github.com/Dogfalo/materialize/issues/4418  and https://github.com/Dogfalo/materialize/issues/4442
And fixed in https://github.com/Dogfalo/materialize/commit/42051a56d2a35bdd8fbdffab739ee64859b186d4


APY number for Palomabot

As a user, I want to see two APYs on the Palomabot site so that I know that there is an opportunity to collet yield performance.
Performance Requirements

Estimate APY from all Palomabot activities based on users bots
Individual APY on the MyBots page that is an APY taken from the Profit/Loss column and estimated for the year
Add info note to a pop-up explaining how the APY is calculated and a warning that they are subject to change.

The current version of the script: https://github.com/VolumeFi/trading-bots/blob/main/apy.py
Waiting for confirmation: https://www.notion.so/volumefi/EPIC-04-14-23-PalomaBot-ai-Momentum-Chaser-Bot-79c25a79c6ce48afafbb4d0db1cbbfc4#115fc00e06614f3dba6d7a96a686f77a

@rootedbox & @webelf101 will you please review the comments ☝ and provide responses TODAY

My understanding is that the answer to my question is currently blocked by the work of moving order and trade data to CW.

All the data exist in the DB. But it stores block number instead of timestamp. However, we can calculate the timestamp from the block number.

Thanks. This is helpful. I will update this ticket shortly.

@webelf101 I have updated the code. Could you help with remaining tasks?

write the get_trades_per_user() function to read trade data from the DB
convert block time to timestamps

@fieldtheory123 @webelf101 what is the latest status on this? I know you mentioned this in standup, but I lost track of what the latest is

Need @webelf101's help on the asks above


[TOSA] Fix tfl.transpose_conv legalization when layer has bias

This PR fixes the legalization of tfl.transpose_conv in the case where the layer has a non-zero bias.

Hi @rsuderman Can you please review this PR ? Thank you!

Thank you for the review @jpienaar, I have posted replies to your comments.

Hi @jpienaar, Can you please review this PR ? Thank you!

Hi @jpienaar, Can you please review this PR ? Thank you!

Hi @jpienaar, Can you please review this PR ? Thank you!

Hi @jpienaar, could you review this PR please? Thanks!

Hi @rdzhabarov, can you review this PR please? Thanks!

Hi @jpienaar, Can you please review this PR ? Thank you!

Hey @jpienaar, could you review this PR please? Many thanks!

Hey @jpienaar, could you review this PR please? Thanks in advance!

Hi @tom-arm Can you please resolve conflicts? Thank you!

Hi @gbaned, the conflict is fixed now. It would be good to get this reviewed if possible

Hi @jpienaar, Can you please review this PR ? Thank you!

Hi @jpienaar, Can you please review this PR ? Thank you!

Hi @jpienaar, Can you please review this PR ? Thank you!

Hi @jpienaar, Can you please review this PR ? Thank you!

Hi @jpienaar, Can you please review this PR ? Thank you!

Hi @jpienaar, Can you please review this PR ? Thank you!

Hi @jpienaar, Can you please review this PR ? Thank you!

Hi @jpienaar, Can you please review this PR ? Thank you!

Hi @jpienaar, Can you please review this PR ? Thank you!

Hi @jpienaar, Can you please review this PR ? Thank you!

Hi @jpienaar, Can you please review this PR ? Thank you!


Please consider removing php short tags

Php short tags should be replaced with classical ones for maximum portability / compatibility...

Good call - we actually removed PHP from the base source entirely based on some other feedback, so this should be resolved.
60cc25d04d5147b7ca9b96cce1d4de606a1462c9


SET_VARIABLE is almost just DEFINE_VARIABLE

I also just realize that our SET_VARIABLE is almost just DEFINE_VARIABLE,
in script is only possible to do x = 2 and x = 3, but can't do x = 2 + 1 or x += 1 or logic in it x = a or b - this is bad!
It means that now for base math and logic user need to add custom regex and it shouldn't be this way.

patrially fixed by #262


ENYO-3429: Fix spinner text color on neutral theme

Set Spinner text color as white on dark background.
Set Spinner text color as dark gray on transparent background.
Enyo-DCO-1.1-Signed-off-by: Kunmyon Choi<EMAIL_ADDRESS>

LGTM


fix(versions): update Activiti/example-runtime-bundle versions into master

UpdateBot pushed maven dependency: org.activiti.cloud.rb:activiti-cloud-runtime-bundle-dependencies to: 7.1.178

UpdateBot commands:
updatebot push-version --kind maven org.activiti.cloud.rb:activiti-cloud-runtime-bundle-dependencies 7.1.178


Invalid checksum between server and client

I get this message:
React attempted to use reuse markup in a container but the checksum was invalid. This generally means that you are using server rendering and the markup generated on the server was not what the client was expecting. React injected new markup to compensate which works but you have lost many of the benefits of server rendering. Instead, figure out why the markup being generated is different on the client or server.

When using react-grid-layout to manage pages that are rendered on both the server and the client isomorphically. I can visually see that before client-side js loads, the layout looks different to after it loads. And when using .Responsive, it appears to be attempting to always use the smallest possible layout of all breakpoints specified.
When I remove the react-grid-layout component, there is no checksum error. Here is my component:
module.exports = React.createClass({
  displayName: 'Home',

  mixins: [Router.State],

  getLayout: function() {
    return {
      lg: [
        { x: 0, y: 0, w: 12, h: 3, i: 'home_heading' },
        { x: 0, y: 3, w: 12, h: 3, i: 'home_link' },
        { x: 3, y: 6, w: 6, h: 3, i: 'home_input' }
      ],
      md: [
        { x: 0, y: 0, w: 10, h: 3, i: 'home_heading' },
        { x: 0, y: 3, w: 10, h: 3, i: 'home_link' },
        { x: 2, y: 6, w: 6, h: 3, i: 'home_input' }
      ],
      sm: [
        { x: 0, y: 0, w: 8, h: 3, i: 'home_heading' },
        { x: 0, y: 3, w: 8, h: 3, i: 'home_link' },
        { x: 2, y: 6, w: 4, h: 3, i: 'home_input' }
      ],
      xs: [
        { x: 0, y: 0, w: 4, h: 3, i: 'home_heading' },
        { x: 0, y: 3, w: 4, h: 3, i: 'home_link' },
        { x: 1, y: 6, w: 2, h: 3, i: 'home_input' }
      ],
      xxs: [
        { x: 0, y: 0, w: 2, h: 3, i: 'home_heading' },
        { x: 0, y: 3, w: 2, h: 3, i: 'home_link' },
        { x: 0, y: 6, w: 2, h: 3, i: 'home_input' }
      ]
    };
  },

  devLayoutDebug: function(layout) {
    console.log(layout);
  },

  render: function() {
    return (
      <Title title="Home">
        <GridLayout
          breakpoints={{ lg: 1200, md: 996, sm: 768, xs: 480, xxs: 0 }}
          cols={{ lg: 12, md: 10, sm: 8, xs: 4, xxs: 2 }}
          layouts={ this.getLayout() }
          rowHeight={ 40 }
          margin={ [0,0] }
          onLayoutChange={ this.devLayoutDebug }>

Charity Profile

<Link to="profile" params={{ charitySlug: "Test Profile" }}>Profile</Link>

<Input i18n={{ name: 'profile_test', label: 'Input Label' }} />

        </GridLayout>
      </Title>
    );
  }
});

Could you post a minimal example so I can give it a try?
You may also be able to figure it out if you copy/paste the HTML that came from the server (get it via curl or the inspector), and copy/paste the actual HTML from the DOM, then diff them.

Please reopen if this is still an issue for you.


CORE-5569: Prevent force uploading non-existent cpi version

Looks like Detekt reporting failure:

[2022-08-12T15:55:51.177Z] /var/jenkins/workspace/Corda5_corda-runtime-os_PR-1882/components/chunking/chunk-db-write-impl/src/main/kotlin/net/corda/chunking/db/impl/persistence/database/DatabaseCpiPersistence.kt - 5min debt

[2022-08-12T15:55:51.177Z] 	UnusedImports - [The import 'net.corda.v5.base.exceptions.CordaRuntimeException' is unused.] at /var/jenkins/workspace/Corda5_corda-runtime-os_PR-1882/components/chunking/chunk-db-write-impl/src/main/kotlin/net/corda/chunking/db/impl/persistence/database/DatabaseCpiPersistence.kt:25:1

Follow up on reworking the control flow: https://r3-cev.atlassian.net/browse/CORE-6205


考虑支持一下 Passive Event Listeners 减少移动端Mousewheel/Touch操作的页面卡顿

http://geek.csdn.net/news/detail/109167?locationNum=9&fps=1

17:48:16.771 event.js:99 [Violation] Added non-passive event listener to a scroll-blocking 'mousewheel' event. Consider marking event handler as 'passive' to make the page more responsive.
17:48:17.103 Animation.js:168 [Violation] 'requestAnimationFrame' handler took 80ms
17:48:17.442 Animation.js:168 [Violation] 'requestAnimationFrame' handler took 93ms
17:48:17.681 abstract-xhr.js?96d9:132 XHR finished loading: GET "http://localhost:8080/sockjs-node/info?t=1494409697621".
AbstractXHRObject._start @ abstract-xhr.js?96d9:132
(anonymous) @ abstract-xhr.js?96d9:21
17:48:17.737 Animation.js:168 [Violation] 'requestAnimationFrame' handler took 51ms
17:48:17.756 client?cd17:41 [WDS] Hot Module Replacement enabled.
17:48:17.839 Animation.js:168 [Violation] 'requestAnimationFrame' handler took 75ms


Why not using kubelet-wrapper?

I'm interested about the reason of not using kubelet-wrapper here:
https://github.com/pires/kubernetes-vagrant-coreos-cluster/blob/master/master.yaml#L125
?
because of using gcr.io and docker?

This repo was using kubelet-wrapper before, which relies on rkt. I moved to Docker so I could have more control.


TCTI tabrmd

Add support for the tabrmd TCTI, make it the default, and integrate it into the Travis CI stuff.

By default ./configure will try to enable all 3 TCTI modules. If any are not installed on the system they will be disabled. They have a precedence: tabrmd > socket > device such that by default the tabrmd will be used by default if it's enabled. If it's not enabled then the tools fallback to the socket TCTI, then the device. Thinking about it now it may make more sense to have the precedence be: tabrmd > device > socket possibly with the socket TCTI being disabled by default since it's only useful for communicating with the simulator now.

This v2 patch set fixes up the LOG_ERR stuff and switches us back to the master branch of the TSS.

Thanks, merged.

Weird, it said all checks passed and I just got a fail message. Revert here: https://github.com/01org/tpm2.0-tools/pull/290

The proposed order of tabrmd > device > socket does make the most sense to me as well.
Attempting to restore your changes here: https://github.com/01org/tpm2.0-tools/pull/291


Replace the pagination logic within series-selector component

Update the component to use something like ember-collection.

Closing since we are removing the series-selector


Fix: Focus mode - User priority mode is switched back to focus automatically

Details

Fixed Issues

$ https://github.com/Expensify/App/issues/34814
PROPOSAL: https://github.com/Expensify/App/issues/34814#issuecomment-1900723631
Tests

Precondition: Must be reproduced in a user who switched to Focus mode before the 'auto-switch to Focus mode' was added

Login with the user
Change the priority mode to Most recent
Verify that priority mode is not change automatically

Note: On dev environment, we can manually set Onyx.set(ONYXKEYS.NVP_TRY_FOCUS_MODE, false) (E.g. In PriorityMode.ts), so when we reload the page, it'll be set to false

[x] Verify that no errors appear in the JS console

Offline tests

Same as above
QA Steps

Precondition: Must be reproduced in a user who switched to Focus mode before the 'auto-switch to Focus mode' was added

Login with the user
Change the priority mode to Most recent
Verify that priority mode is not change automatically

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else

[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)

[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

https://github.com/Expensify/App/assets/113963320/5245b4d8-286c-450c-b3eb-0e77ad8dd340

Android: mWeb Chrome

https://github.com/Expensify/App/assets/113963320/30569601-9e52-4577-8849-e9f74c618e97

iOS: Native

https://github.com/Expensify/App/assets/113963320/3933a6db-bbbe-4217-a09e-a4d4b701f35c

iOS: mWeb Safari

https://github.com/Expensify/App/assets/113963320/06183e7c-e9d3-4c3b-b3ed-19c3305badc6

MacOS: Chrome / Safari

https://github.com/Expensify/App/assets/113963320/3d651115-721f-4a49-abe3-dbcc49421747

MacOS: Desktop

https://github.com/Expensify/App/assets/113963320/d851b2c7-418f-4cd7-8234-596f99489cb3

Please merge main

Login with the user
Change the priority mode to Most recent
Verify that priority mode is not change automatically

Isn't "Open any chat" a required step after "Change the priority mode to Most recent" to reproduce the original issue?

What are the affected platforms of the issue we're fixing?

Don't we need the precondition?

We do, I didn't mean to remove anything from the steps. I was under an impression that we need the mentioned extra step to reproduce the bug. And the tests should ensure that the bug is not reproducible under the conditions that used to trigger it.
It's not an achievement not to trigger a bug under circumstances that didn't trigger it before; you get it.

I gotta say all platforms

Were you able to reproduce it on Android?
I know that fixing the bug is more important than analyzing it, but before verifying that we fixed something, I often start with ensuring that I can actually trigger the bug to reduce the chance of performing leaky testing steps.

We're over 1000 commits behind main; let's merge it.

2. Reload page (NVP_TRY_FOCUS_MODE will be set to false)

What does "reload page" mean on Native? Metro reload?

On top of upstream/main (8e069a3fdcf09c86451a7e6d7be268c5296ab710)...
PriorityMode.ts
let currentUserAccountID: number | undefined | null;
Onyx.connect({
    key: ONYXKEYS.SESSION,
    callback: (val) => {
        currentUserAccountID = val?.accountID;
    },
});

// I added this line:
Onyx.set(ONYXKEYS.NVP_TRY_FOCUS_MODE, false);

Test:
https://github.com/Expensify/App/assets/2590174/64dce23f-cc58-41c2-85da-c363158a84c6
Please note that I started with reloading Metro.
I cannot reproduce the issue. What am I doing wrong?

Reviewer Checklist

[x] I have verified the author checklist is complete (all boxes are checked off).
[x] I verified the correct issue is linked in the ### Fixed Issues section above
[x] I verified testing steps are clear and they cover the changes made in this PR

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[x] I checked that screenshots or videos are included for tests on all platforms
[x] I included screenshots or videos for tests on all platforms
[x] I verified tests pass on all platforms & I tested again on:

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

[x] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[x] I verified proper code patterns were followed (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I verified that this PR follows the guidelines as stated in the Review Guidelines
[x] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native
https://github.com/Expensify/App/assets/2590174/75a8f513-5fd1-44c5-a797-39656e504ae6

Android: mWeb Chrome
https://github.com/Expensify/App/assets/2590174/90a1caa5-7bdd-4cc0-a3b4-f6c0073e8fc3

iOS: Native
https://github.com/Expensify/App/assets/2590174/18f796f1-6d76-4148-a05c-ab1052c26862

iOS: mWeb Safari
https://github.com/Expensify/App/assets/2590174/a7e7e310-05f7-49ca-93fd-af34963ac176

MacOS: Chrome / Safari
https://github.com/Expensify/App/assets/2590174/0001f908-b090-4d34-8d6c-bdf7c9ad93af

MacOS: Desktop

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/luacmartins in version: 1.4.43-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Error Install jdk-<IP_ADDRESS>+1 on Mac

Hi I have a problem installing the jdk (jdk-<IP_ADDRESS> + 1) l-intsaller tells me that it is installed correctly but when I go to the terminal and do javac it gives me an error. the operating system I use is MacOS Catalina 10.15.7

Can you try running the full path /Library/Java/JavaVirtualMachines/temurin-11.jdk/Contents/Home/bin/javac --version?
Also can you tell us what:
echo $PATH and echo $JAVA_HOME are?


filters

When I scroll over the pipe in either JEI or in my inventory I do not see the stats of the pipe. like if it can filter ect.. Is that because of a different mod? I tried holding shift and it did not display the info either.

I am sorry i did not realize it was through the attachments for the stats, lol,,,


404 not found http://localhost:8080/MoneroWebWorker.dist.js

Hi woodser,
it's hundehausen from TipXMR.
We upgraded to v0.5.0 and now we see some errors like:
404 not found http://localhost:8080/MoneroWebWorker.dist.js

Did something change that affects imports?
Thank you

MoneroWebWorker.dist.js was renamed to monero_web_worker.dist.js for consistency with the other files built to ./dist.  Nothing should be referencing MoneroWebWorker.dist.js anymore.  Perhaps the browser needs hard refreshed to use the new file name, or if you build the WASM files yourself, perhaps they need rebuilt?

MoneroWebWorker.dist.js was renamed to monero_web_worker.dist.js for consistency with the other files built to ./dist.  Nothing should be referencing MoneroWebWorker.dist.js anymore.  Perhaps the browser needs hard refreshed to use the new file name, or if you build the WASM files yourself, perhaps they need rebuilt?

Hey,
I already tested with a fresh browser install and all cache cleared. We don't build the WASM files ourselves, we just copy the files from monero-javascript dist folder to our dist folder.

Hey,
I already tested with a fresh browser install and all cache cleared. We don't build the WASM files ourselves, we just copy the files from monero-javascript dist folder to our dist folder.

I searched the current dist files and source just to be sure there are no old references to MoneroWebWorker.dist.js.
Your web application is attempting to use the old path suggesting it's not built with monero-javascript-v0.5.0.  The branch you pointed me to is using monero-javascript-v0.4.5 in package.json.  The web application should use the correct, updated path after:

Updating package.json to monero-javascript-v0.5.0
npm install
Rebuilding and starting the web application

I searched the current dist files and source just to be sure there are no old references to MoneroWebWorker.dist.js.
Your web application is attempting to use the old path suggesting it's not built with monero-javascript-v0.5.0.  The branch you pointed me to is using monero-javascript-v0.4.5 in package.json.  The web application should use the correct, updated path after:

Updating package.json to monero-javascript-v0.5.0
npm install
Rebuilding and starting the web application

I am pretty sure I use v0.5.0 in the branch dockerize and I also checked the monero-javascript/package.json in the node modules folder. It is v0.5.0. I downgraded webpack to version 4.44.2 and ran "npm run build". I get the following error:
 ERROR in ../node_modules/monero-javascript/src/main/js/wallet/MoneroWalletRpc.js Module not found: Error: Can't resolve 'child_process' in '/Users/grischadaum/Coding/TipDocker/projects/tipxmr-frontend/node_modules/monero-javascript/src/main/js/wallet'  @ ../node_modules/monero-javascript/src/main/js/wallet/MoneroWalletRpc.js 116:19-43  @ ../node_modules/monero-javascript/index.js  @ ./libs/monero.js

I am pretty sure I use v0.5.0 in the branch dockerize and I also checked the monero-javascript/package.json in the node modules folder. It is v0.5.0. I downgraded webpack to version 4.44.2 and ran "npm run build". I get the following error:
 ERROR in ../node_modules/monero-javascript/src/main/js/wallet/MoneroWalletRpc.js Module not found: Error: Can't resolve 'child_process' in '/Users/grischadaum/Coding/TipDocker/projects/tipxmr-frontend/node_modules/monero-javascript/src/main/js/wallet'  @ ../node_modules/monero-javascript/src/main/js/wallet/MoneroWalletRpc.js 116:19-43  @ ../node_modules/monero-javascript/index.js  @ ./libs/monero.js

Does this file need to be renamed?

Does this file need to be renamed?

That error is a good sign since it means the web app is building with v0.5.0.
"child_process" needs added to the node.js exclusion list in the webpack configuration here

Does this file need to be renamed?

No because it's a source file using the camelcase convention, whereas only the built files in ./dist use underscores.

That error is a good sign since it means the web app is building with v0.5.0.
"child_process" needs added to the node.js exclusion list in the webpack configuration here

Does this file need to be renamed?

No because it's a source file using the camelcase convention, whereas only the built files in ./dist use underscores.

Thank you that helped to remove the build errors related to monero. I still get other errors regarding tailwind css.
I still get the
404 not found http://localhost:8080/MoneroWebWorker.dist.js
error. Why do I have to build the project? I can not remember doing this earlier. Sorry for being such a noob :D

Thank you that helped to remove the build errors related to monero. I still get other errors regarding tailwind css.
I still get the
404 not found http://localhost:8080/MoneroWebWorker.dist.js
error. Why do I have to build the project? I can not remember doing this earlier. Sorry for being such a noob :D

When npm start is called, the web app is built automatically to a directory then hosted by a server to access in a browser.  In your case, this directory is ./dist per your webpack.config.js.
Something in your ./dist directory must still reference MoneroWebWorker.dist.js.  This can be confirmed by running cd ./dist && grep -rni "MoneroWebWorker.dist.js" * -- if any output is generated it's using old build assets.
This would suggest the web app isn't correctly building, updating ./dist, and starting with npm start.
You can try deleting the ./dist directory to ensure the web app is only using the most up-to-date build, then npm start.  This should resolve the error accessing MoneroWebWorker.dist.js.
I tried to build your current dockerize branch but I get a compile error:
ERROR in ./styles.css (../node_modules/css-loader/dist/cjs.js??ref--6-1!../node_modules/postcss-loader/dist/cjs.js??ref--6-2!./styles.css)
Module build failed (from ../node_modules/postcss-loader/dist/cjs.js):
ValidationError: Invalid options object. PostCSS Loader has been initialized using an options object that does not match the API schema.
 - options has an unknown property 'config'. These properties are valid:
   object { postcssOptions?, execute?, sourceMap?, implementation? }
    at validate (/Users/woodser/git/tipxmr/node_modules/postcss-loader/node_modules/schema-utils/dist/validate.js:104:11)
    at Object.loader (/Users/woodser/git/tipxmr/node_modules/postcss-loader/dist/index.js:43:29)
 @ ./styles.css 2:26-153 53:4-74:5 56:18-145
 @ ./index.js

ERROR in ./components/Loading.css (../node_modules/css-loader/dist/cjs.js??ref--6-1!../node_modules/postcss-loader/dist/cjs.js??ref--6-2!./components/Loading.css)
Module build failed (from ../node_modules/postcss-loader/dist/cjs.js):
ValidationError: Invalid options object. PostCSS Loader has been initialized using an options object that does not match the API schema.
 - options has an unknown property 'config'. These properties are valid:
   object { postcssOptions?, execute?, sourceMap?, implementation? }
    at validate (/Users/woodser/git/tipxmr/node_modules/postcss-loader/node_modules/schema-utils/dist/validate.js:104:11)
    at Object.loader (/Users/woodser/git/tipxmr/node_modules/postcss-loader/dist/index.js:43:29)
 @ ./components/Loading.css 2:26-160 53:4-74:5 56:18-152
 @ ./components/Loading.js
 @ ./components/index.js
 @ ./App.js
 @ ./index.js

When npm start is called, the web app is built automatically to a directory then hosted by a server to access in a browser.  In your case, this directory is ./dist per your webpack.config.js.
Something in your ./dist directory must still reference MoneroWebWorker.dist.js.  This can be confirmed by running cd ./dist && grep -rni "MoneroWebWorker.dist.js" * -- if any output is generated it's using old build assets.
This would suggest the web app isn't correctly building, updating ./dist, and starting with npm start.
You can try deleting the ./dist directory to ensure the web app is only using the most up-to-date build, then npm start.  This should resolve the error accessing MoneroWebWorker.dist.js.
I tried to build your current dockerize branch but I get a compile error:
ERROR in ./styles.css (../node_modules/css-loader/dist/cjs.js??ref--6-1!../node_modules/postcss-loader/dist/cjs.js??ref--6-2!./styles.css)
Module build failed (from ../node_modules/postcss-loader/dist/cjs.js):
ValidationError: Invalid options object. PostCSS Loader has been initialized using an options object that does not match the API schema.
 - options has an unknown property 'config'. These properties are valid:
   object { postcssOptions?, execute?, sourceMap?, implementation? }
    at validate (/Users/woodser/git/tipxmr/node_modules/postcss-loader/node_modules/schema-utils/dist/validate.js:104:11)
    at Object.loader (/Users/woodser/git/tipxmr/node_modules/postcss-loader/dist/index.js:43:29)
 @ ./styles.css 2:26-153 53:4-74:5 56:18-145
 @ ./index.js

ERROR in ./components/Loading.css (../node_modules/css-loader/dist/cjs.js??ref--6-1!../node_modules/postcss-loader/dist/cjs.js??ref--6-2!./components/Loading.css)
Module build failed (from ../node_modules/postcss-loader/dist/cjs.js):
ValidationError: Invalid options object. PostCSS Loader has been initialized using an options object that does not match the API schema.
 - options has an unknown property 'config'. These properties are valid:
   object { postcssOptions?, execute?, sourceMap?, implementation? }
    at validate (/Users/woodser/git/tipxmr/node_modules/postcss-loader/node_modules/schema-utils/dist/validate.js:104:11)
    at Object.loader (/Users/woodser/git/tipxmr/node_modules/postcss-loader/dist/index.js:43:29)
 @ ./components/Loading.css 2:26-160 53:4-74:5 56:18-152
 @ ./components/Loading.js
 @ ./components/index.js
 @ ./App.js
 @ ./index.js

Thank you woodser. I found the problem. I dockerized the whole project and I did not realize, that I have to rebuild the docker image of the frontend to update the node_modules. So I have to find a way, that the docker container doesn't install the modules inside the container rather than mapping the node_modules folder from external. Sorry for the issue 😅

Thank you woodser. I found the problem. I dockerized the whole project and I did not realize, that I have to rebuild the docker image of the frontend to update the node_modules. So I have to find a way, that the docker container doesn't install the modules inside the container rather than mapping the node_modules folder from external. Sorry for the issue 😅

Glad to hear it.

Glad to hear it.


Test

👉 Checklist

Please make sure to check off the following before submitting:

[x] I have reviewed my submission thoroughly.
[x] I have tested my code (if submission is related to coding) and run the game before pushing (to make sure the project compile).
[x] I have run the JUnit tests (if submission is related to coding).
[x] I have read the Code of Conduct and Contribution Guidelines.

✍ Description of the Pull Request
Added a redesigned Lives system with hearts instead of plain numbers

Please concisely describe the changes you have made.

First of all, sorry for soo many chances, these were actually made by VS Code auto code beautifier; Hence a lot of indentation and other difference. But the major change is in only 2 files, namely
LifeComponent.Java and DinosaurController.Java
from lines 14-63 and 29-31 respectively
The first change consists of a basic code block which checks the life variable and accordingly shows/deletes the hearts.
The edit in the second file was done so that the hearts can update even after the player is lost; Because otherwise we can still see one heart lingering around from the end menu. The code makes the game to update the score even after being lost and hence there are 0 hearts after being lost.

🔗 Issue link

Issue reference number and link goes here e.g. 'Fixes/Closes #60 '.

[x] This Pull Request fixes the issue : 'Closes #'
[ ] This Pull Request does not fix an issue.

Thanks for taking the time to fill out this Pull Request! ❤ Thanks for contributing to this project 🦖

Sorry for the weird PR name💀.
I was testing out the PR data and submitted and later saw the name

Again, sorry for closing this branch accidently💀
Just newbie errors

Hi, it's awesome, great work !! Thank you. Feel free to create new issues in the project to still continue improve the game. Thanks.

Thank you soo much. This counts as my first ever opensource contribution and I am glad it was this game.
Once again, a huge thanks for being soo helpful and supportive!


[Question] Sending timestamp as UserProperty not working correctly

[REQUIRED] Please fill in the following fields:

Unity editor version: 2020.3.30
Firebase Unity SDK version: 8.8.0
Source you installed the SDK: unitypackage
Problematic Firebase Component: Analytics
Other Firebase Components in use: RemoteConfig
Additional SDKs you are using: Facebook, Applovin
Platform you are using the Unity editor on Windows
Platform you are targeting: Android
Scripting Runtime: IL2CPP

[REQUIRED] Please describe the question here:
I'm trying to send timestamp value as user property with this code :
private long GetTimeStamp()
{
    return DateTimeOffset.Now.ToUnixTimeMilliseconds();
}
FirebaseAnalytics.SetUserProperty("first_open_time", GetTimeStamp().ToString());
Debug.Log("Current time is : " + GetTimeStamp().ToString());

The value that is being logged is<PHONE_NUMBER>785  but the value in the firebase console is:<PHONE_NUMBER>000  . What is the reason ?!

Oh, I found out that firebase also has an auto send event called first_open_time! I changed my property name to custom_first_open_time and now it's working


Q: How do you get the sort order used in the admin?

We have the requirment to sort pages by the same ordering used in the admin (little button next to Title sort, ?ordering=ord)
How would you go about fetching that? It seems it has to do with Treebeard, but I can't figure out how to access it.
Thanks!

Hi @mistalaba - please use the Wagtail tag on Stack Overflow for support queries.


Unregistered log entry type

When updating KEVM to use latest K master (branch: https://github.com/kframework/evm-semantics/pull/642), we cannot run the Haskell backend on the tests anymore because of a strange logging error:
git clone 'https://github.com/kframework/evm-semantics'
cd evm-semantics
git checkout fc905fc2
make deps RELEASE=true
make build-haskell -j8 RELEASE=true
make test-vm TEST_CONCRETE_BACKEND=haskell

This results in:
kore-exec: Tried to log nonexistent entry type. It should be added to Kore.Logger.Registry.registry.
CallStack (from HasCallStack):
  error, called at src/Kore/Logger/Registry.hs:150:9 in kore-<IP_ADDRESS>-DbkIMgzV0BgCAECOqpj1DA:Kore.Logger.Registry

I am also now suddenly encountering this here.

I can, but I'm running an erc-related proof.

See the reproduction instructions here: https://github.com/kframework/kore/issues/1393 (but add a make defn before compiling the semantics), and use this PR: https://github.com/kframework/kore/pull/1398 . Takes > 15 min to get the error.

Ok, the error seems to be caused by LogMessage, which, I guess, means that we still use old-style log messages, but we didn't register them...

I think @virgil-serbanuta is right, it looks like we still use LogMessage in the SMT and in the Simplifier.


bugfix/thumbnail-bounding-box

quick fix for loading bounding box.

Did this solve the problem of it the brain images being too small sometimes too?

The height seems correct but the width is still proportional to the width of the fileinfo sidebar


make scripts better for files that aren't in the default places

@thomascastleman make a loader script!!


Context doesn't get passed through

Breaks for things such as https://github.com/yahoo/react-intl

This may be fixed by #18 but we should write a test for it to be sure.


Documentation lacks information on sat_id functionality and use.

Some missions use multiple satellites and require an ID to differentiate. Currently, there is no documentation on how to do this properly.

See pull #96 for a partial fix

Updates to text here:
https://github.com/rstoneback/pysat/blob/documentation/docs/new_instrument.rst

Closed with merge of #175.


Display two-dot diff variant in PR "Files changed"

Based off this discussion, a major shortcoming is that GitHub is showing the three-dot diff for PRs instead of the two-dot diff.
From Matt at GitHub Support:

We show what's called a "three-dot diff" which is the difference between the latest commit on the HEAD branch and the last common ancestor commit with the base branch. So if you forked off of a repo a while ago and things have changed in the parent repo since then, or if you opened a PR from the master branch and then the master branch has changed in the meantime, the diff wouldn't show that.
It sounds like you'd rather see a "two-dot diff", which would show the changes between the two most recent commits on each branch. If you'd like, you can merge the base branch back into the HEAD branch. That updates the last common ancestor and would be more likely to show you what you're expecting to see there.

Why this is a problem

You cannot see the context of the change against the current base making it extremely difficult to judge if PR'd code should be included
The merge itself uses a two-dot diff and will show merge conflicts even if everything in the PR looks good
The only way to compare the actual current base vs. the incoming PR head is to pull down the PR's remote and manually compare it against your local head (even viewing it through any of the GUIs will show the ancestor commit)
You cannot merge base back into a contributor's fork
Even if you request them to update, subsequent PR merges throw it out of date again immediately
This is a long-lived issue that GitHub most likely won't change

Proposed Solution
When viewing the "Files changed", if the PR references an ancestor commit, Refined GitHub adds a button to show the two-dot diff (current base diffed with PR head) and grabs the raw view of each file (within a reasonable limit) and replaces(?) the current view (or a tab/toggle) that shows the same lines as displayed in the PR's change.
Feature URL Location
https://github.com/YourOrg/SomeProject/pull/123/files

I’m not entirely sure I understand the difference yet, but I think:

this isn’t doable unless GH has an API for this comparison. And even then we’d have to remove/add the commits at the right place in the conversation, something that isn’t that easy.
the solution to this is to just click our existing “Update branch” button

Can you point to a real PR that shows the issue rather than a made-up one?

The biggest difference is that what you're comparing in the PR view is not the current code so basing the decision to merge code into the repo by comparing it here is inaccurate.
This was committed on Jan 2nd and adds the isset():
https://github.com/ExpressionEngine/ExpressionEngine/commit/7df0f663ad40c463651b96fed2ba737594144701
When reviewing a newer PR from the same person, I was confused because I recalled we had already fixed this:
https://github.com/ExpressionEngine/ExpressionEngine/pull/397/commits/e163df1a08343c2d54aa8337aca3535afc118dbc
The PR shows the left panel from the point in time they forked the repo and is not accurate to what you're reviewing to merge, it just shows what they changed it from without regard to what you're about to merge it into.
This is a fairly innocuous example but it's happened a few times and extrapolated out for much larger commits on PRs with hundreds of files and it becomes a major issue (to me, perhaps I'm missing something most others seem to know?).
The "Update branch" button does not work in this situation because it's a contributor's fork that we don't have write access to. We can request them to update their branch, but as soon as you merge in other PRs (assuming they modify the same files as other PRs), then you're right back in the same situation, as we were with multiple contributors submitting PHP 7.4 updates.
I don't think the feature would need to actually do the diff itself, but just show the corresponding lines from the current file. The lines may not match up if the file has been drastically modified since the PR head, but if was scrollable or expandable like GH's is, that would be sufficient and/or it could be improved over time to be more accurate.
If the extension can fetch the raw versions of the files, as it's on the same domain, there shouldn't be a CORS issue, but off-hand I'm not sure what extension restrictions are for fetching content from same-domain urls.
I know this is a heavy feature and most likely violates your Rule 4 and I considered hacking something together to do this but figured it would benefit more people if it was in more suitable hands.

The "Update branch" button does not work in this situation because it's a contributor's fork that we don't have write access to

That's incorrect, or should be incorrect. By default, GitHub suggests giving write access to the branch — but they can also remove this access. That is bad practice and hostile to those you're sending a PR to. We have a feature that specifically suggests avoiding this.

just show the corresponding lines from the current file

That sounds pretty unsafe. If I removed 10 lines, the diff will completely off and will make even less sense.
I understand the problem, but this isn't something we can fix in a lightweight way, safely.

As they suggested:

If you'd like, you can merge the base branch back into the HEAD branch. That updates the last common ancestor and would be more likely to show you what you're expecting to see there.

This is what our "Update branch" does and that's why it's pretty useful to have access to the branch.

No problem, thank you for the discussion. I'll look for alternatives and/or tightening up our contributing guidelines. Closing this issue.


Added support for making GET requests via the Prose UsingHttp class

That's a bug in the manual :(


How to deploy the code in a quadcopter

I want to know how can we deploy it on a physical quadcopter.

I am using D435i camera for depth estimate.
T265 for tracking
on Jetson Orin board

hei @ta-jetson  this is a very generic request but definitely possible. follow the wiki and please ask detailed questions in case you get stuck at any point in the process.
hope this helps!


feat(treesitter): lessened performance restrictions

This commit lifts some of the performance restrictions previously imposed on Treesitter when incremental parsing was not yet supported. Specifically:
Treesitter will now only be disabled by default for files exceeding 7,500 lines or 2 MiB in size. Testing on an Intel i9-9880H with Apple SSD AP1024N shows noticeable lag at these thresholds.
Further testing on different CPUs and/or SSD combinations is welcome lol

For my machine (AMD Ryzen 7 6800HS with Sumsung 980 Pro), there is a noticeable delay (about 2~3s) when trying to enter characters for the first time for a cpp file with 7495 lines. The startuptime is 261.81ms. I didn't meet the error above BTW.

These settings are ok for macbook pro 16-inch, 2019 with 2.6 GHz Intel Core i7 (six cores). The startuptime is 316.72ms and no delay when trying to enter characters.


AntiJoin produces wrong answer

create table t2 (x int, y int);
create table t3(x int, y int);
insert into t2 values (1, 2), (2, 2), (1, null), (null, 2), (2, null), (null, 1), (null, null);
insert into t3 values (1, 2), (2, 2), (1, null), (null, 2), (2, null), (null, 1), (null, null);

select * from t2 where t2.y not in (select t3.y from t3);

risingwave result:
 x | y
---+---
 2 |
   |
 1 |
(3 rows)

PostgreSQL result:
 x | y
---+---
(0 rows)

In #4017 a match_null flag is added to HashJoinExecutor. When enabled, probe side rows with NULL keys will search matched build side rows in the hash map. It seems this issue and #4203 can be resolved with this flag.
But for now this flag is disabled by default. In future PRs, we will make the frontend determine whether to enable the flag according to the join type or other stuffs.

For streaming performance consideration, recently we reach a conclusion for keeping the same behavior of not in and not exists which means for all kind of AntiJoin is a regular AntiJoin instead of null aware AntiJoin. cc @fuyufjh

We may keep the issue open as a reminder. (Feel free to reclose me if there is another one)


feat: 0/1 exit codes

I would like to be able to easily identify whether a data_valdation run has succeeded or failed. In the event of a failure, then I want to take appropriate action as part of my implementation.
A way to achieve this would be via exit codes, 1 for failure, 0 for no failure.
In this PR, I have changed __main__.py to return a 1 or 0 as part of the main function, which is then used as the exit code via sys.exit(main()).
To the reviewer - The vast majority of this PR is adding things to test__main.py, Ive done this because changing __main__.py makes me nervous, so I thought it appropriate to add a bunch of test coverage.

Nick,
Thank you for contributing to the DVT code base. I am not clear specifically the issue you are trying to address. Our preferred approach is to first create an issue that clearly states the problem. Using that description, we should be able to write a test case that demonstrates the problem. We often do that and use that as a means of testing fixes.
Today, when an exception is raised, a non zero status code is returned. Of course the exception trace is also included. For a tool like DVT which is used primarily by programmers and database admins, returning a non zero status along with the exception trace is sufficient, I think.
Sundar Mudupalli

/gcbrun

Hi @nick-redfearn! Unit tests failed in our Cloud Build execution, could you please take a look in the error below? Tks!
__________________ ERROR collecting tests/unit/test__main.py ___________________
tests/unit/test__main.py:46: in <module>
    CONFIG_RUNNER_ARGS_1 = BASE_RUNNER_ARGS | {
E   TypeError: unsupported operand type(s) for |: 'dict' and 'dict'

/gcbrun
All good @nick-redfearn, thanks for the timely fix! Starting build again and let's see if all will pass!

/gcbrun

/gcbrun

/gcbrun


godep warning

We need to migrate away from _workspace.
Doing this will remove this warning -
godep: WARNING: Godep workspaces (./Godeps/_workspace) are deprecated and support for them will be removed when go1.8 is released.

Fixed by updating to golang 1.6.2


⚠ Openweb Service - Average has degraded performance

In 40a8e60, Openweb Service - Average ($OPENWEB_HEALTH_LIVE/averages) experienced degraded performance:

HTTP code: 200
Response time: 18723 ms

Resolved: Openweb Service - Average performance has improved in 6520d79.


Exclude certain methods from the analysis

When implementing IList or something similar, the Add method is flagged as not being descriptive enough. The ability to add some standard function names which could be ignored would be great (exclusion list). Especially if they come from the .NET framework itself.

Another example is any class implementing System.Windows.Data.IMultiValueConverter.
Both methods
public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture)
raises the following warning:

this method requires too many arguments


chore: add cargo feature for crates taos

Codecov Report
Attention: Patch coverage is 0% with 6 lines in your changes are missing coverage. Please review.

Project coverage is 69.52%. Comparing base (4bb917e) to head (11d139a).
Report is 1 commits behind head on main.

Files
Patch %
Lines

taos-ws/src/lib.rs
0.00%
6 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #313      +/-   ##
==========================================
- Coverage   69.54%   69.52%   -0.03%
==========================================
  Files         115      115
  Lines       35758    35764       +6
==========================================
- Hits        24868    24865       -3
- Misses      10890    10899       +9

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


flash within an addon

I have an addon -- ui-bootstrap -- which consumes ember-cli-flash as a "dependency" with the intent of making flash messages available to its consumers. And while it works fine in the dummy app of the Addon it gives me the following error when I use ui-bootstrap in an app:
Cannot read property 'injectionFactories' of undefined. This is in the flash-messages.js file:
var injectionFactories = flashMessageDefaults.injectionFactories;

Even after putting in flashMessageDefaults into my environment.js I still get this error. How do I fix this without requiring my consumers to have to install ember-cli-flash themselves?

If it's a dependency it will need to be installed and configured by your addon's consumers.

I have installed it as a dependency into my addon. Shouldn't that propagate to the consumer of my addon? I have other addons which work this way.

I thought it was only bower dependencies which would not cascade through addons.

Ok, I think I've sorted out why it's breaking. The npm dependencies do cascade downward but the way you have setup the default configuration does not. I am able to get it to work by just recreating that default configuration but it would be nice if you just included that config as a constant in the app/initializers/flash-messages.js
I can send you a PR if that helps.

Closed by #134


SAML SocialLink doesn't work

I have a SAML directory and the LoginForm will recognize that and generate a SAML link. Clicking the link just goes to a /false route, however.

Hi @mheisig , thanks for flagging this. I'll ping our team to take a look at this.

@mheisig Unfortunately SAML isn't currently supported and there's no workaround for this in the SDK. So I just created issue #145 for this. So my recommendation is that you watch this issue until it's closed, since the SDK will have SAML support then.

Thanks, @typerandom. Will it be possible for me to manually support this myself if I:

Generate the JWT accessToken myself on the server
Initiate the SAML auth flow via the Stormpath SAML SSO Initiation Endpoint URL
Handle the response JWT on my server

Hi @mheisig , it certainly is possible to implement this manually.  Steps 2 and 3 of your comment are correct, I'm not sure what you mean in step 1?
It may be helpful to look at how we're implementing this in our express-stormpath library:
https://github.com/stormpath/express-stormpath/pull/557
Let us know if you have more questions, thanks!


Player car not showing

Hi,
I was playing around a bit with the code but I can't make the player car rendering. I couldn't find the part of the code where all the objects are being rendered besides the street etc. Is it still missing or can you point me to the right direction?
Also I had to change the if in game.zig:38 to if (index >= sprites.num_sprites) instead of < to make it work.
Would love to contribute a bit.

Hello!
Funny enough, I had just written "work on reckless drivin sprite rendering" on my todo list today right before you made this issue! There is no logic yet for the rendering of the objects/sprites.

Also I had to change the if in game.zig:38 to if (index >= sprites.num_sprites) instead of < to make it work.

Thanks for pointing that out, I'll look into it

Would love to contribute a bit.

You are welcome to contribute! I would like to let you know that this is just a passion project of mine that I work on in my free time. There is a lot of context I have in my head that I haven't written down. If you make a PR or suggestions I am willing to review them, but I don't have much time to help other people contribute (understand the code). So don't let that stop you from helping!


Adjust Freq

Hi There.
In your code the carrier freq 433.795 (0x10,0xAF,0xC1) as shown below. How do I change to specific Freq to 433.925. Is there any reference or calculator to convert it?
// Carrier frequency = 433.795 MHz
//#define CC1101_DEFVAL_FREQ2_433  0x10        // Frequency Control Word, High Byte
//#define CC1101_DEFVAL_FREQ1_433  0xAF        // Frequency Control Word, Middle Byte
//#define CC1101_DEFVAL_FREQ0_433  0xC1      // Frequency Control Word, Low Byte
Wisnu - Indonesia

Hello,
the frequency should be changed with the different registers the author find out, but for my knowledge it's only 315 and 433 MHz for keyless go systems. It depends of your country. Check the data sheet of your µC this would be my approach.


Add WebSocket and HTTP SSE support to stream marathon events directly.

Add /v2/events endpoint with content negotiation to handle different clients.
@drexin Please Review

This is pretty cool stuff. Please see my comments. Also, could you please add some tests?

Regarding jetty 9, I would not make this change part of this PR.

As discussed, maybe we restrict this to SSE for now.

I'd be super-awesome if you could implement UI updates on top of WS connection instead of polling.

Removed WebSocket stuff.
@kolloch Please review
@bobrik It is planned, that the UI will use that endpoint.

@kolloch added a mechanism to drop messages for slow consumers
The number is currently hard coded - should we add another parameter?
Feedback welcome.

nice tests!

LGTM!! Build-failure, though.

I triggered a rebuilt.

Fixed IntegrationTest

It's a beauty :+1:


Fix verify libs and licenses for platform

Various fixes to resolve failures reported by:
ant -Dcluster.config=platform verify-libs-and-licenses
This includes fixing file names, fixing licenses, fixing headers in license files, etc.
A notable change: deleted apisupport.harness/external/jnlp-servlet.jar (unclear if it is allowed for use); users building a JNLP build of a NetBeans Platform Application will need to supply the file themselves.

OK, thanks, merging.


-a is not working

Steps to reproduce the issue, if applicable. Include the actual command and output and/or stack trace.

http-server index.html -a <IP_ADDRESS> -p 8080
What did you expect to happen?
Running this command should open up <IP_ADDRESS>:8080. However, it reverted back to using localhost instead.

Starting up http-server, serving index.html
Available on:
http://<IP_ADDRESS>:8080
http://<IP_ADDRESS>:8080
If the issue is a feature request, what is the motivation / use case for it?
Tell us about your environment

exact http-server version: v0.12.3
Node version: v10.19.0
Platform: Ubuntu

Other information (related issues, suggestions for a fix, etc):

Duplicate of #615, this is fixed on master but not yet released


Cherry-picks of VSIX fixes

inital commit

second commit

Co-authored-by: Shashank Nayak<EMAIL_ADDRESS>microsoft employee must use /azp run to validate using the pipelines below.
WARNING:
Comments made by azure-pipelines bot maybe inaccurate.
Please see pipeline link to verify that the build is being ran.
For status checks on the main branch, please use TransportPackage-Foundation-PR
(https://microsoft.visualstudio.com/ProjectReunion/_build?definitionId=81063&_a=summary)
and run the build against your PR branch with the default parameters.

/azp run


[MetaSchedule][Minor] Fix Integer Overflow in Tuning Statistics

This PR fixes the integer overflow when the flop count of a given workload is larger than MAX_INT during tuning statistics printing.

Actually I'm getting something like
 ID |                  Name |        FLOP | Weight | Speed (GFLOPS) | Latency (us) | Weighted Latency (us) | Trials | Terminated
---------------------------------------------------------------------------------------------------------------------------------
  0 | fused_nn_batch_matmul | -2147483648 |      1 |            N/A |          N/A |                   N/A |      0 |
---------------------------------------------------------------------------------------------------------------------------------

When tuning int8 workloads. Does this PR fix it? The flops count from echo_statistics.cc is correct, so I wondered why I'm getting this funny FLOP.

Hi Masa, this PR fixes exactly the same issue in your output. I verified locally that it can fix the table. The cause of the error is introduced in gradient based task scheduler where we print the tuning statistics table by static casting flop number in tuning records to int, which overflows.

I tried this change but still got an invalid FLOP. Note that the sign is flipped this time
[10:43:53] /home/masa/projects/dev/tvm/src/meta_schedule/task_scheduler/gradient_based.cc:111:
 ID |                        Name |       FLOP | Weight | Speed (GFLOPS) | Latency (us) | Weighted Latency (us) | Trials | Terminated
--------------------------------------------------------------------------------------------------------------------------------------
  0 | fused_nn_contrib_dense_pack |<PHONE_NUMBER> |      1 |            N/A |          N/A |                   N/A |      0 |
--------------------------------------------------------------------------------------------------------------------------------------

Or maybe<PHONE_NUMBER> is the correct FLOP count for my workload? Need to check...

Then it is 2*(2^10)^3=2^31, サプライズ!

Seems so.
On Thu, Apr 7, 2022 at 6:45 PM Masahiro Masuda @.***>
wrote:

Or maybe<PHONE_NUMBER> is the correct FLOP count for my workload? Need to
check...
—
Reply to this email directly, view it on GitHub
https://github.com/apache/tvm/pull/10935#issuecomment-1092360573, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAYOAZVJLEMEDWBCM76TOH3VD6FTTANCNFSM5S267L6Q
.
You are receiving this because you authored the thread.Message ID:
@.***>