Move away from deprecated LightGraphs to Graphs

See https://github.com/JuliaGraphs/Graphs.jl#transition-from-lightgraphs-to-graphs

Codecov Report

Merging #20 (91aea6c) into main (ad046e5) will decrease coverage by 0.16%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main      #20      +/-   ##
==========================================
- Coverage   92.48%   92.31%   -0.17%
==========================================
  Files          81       81
  Lines        4005     3761     -244
==========================================
- Hits         3704     3472     -232
+ Misses        301      289      -12

Impacted Files
Coverage Δ

src/Dojo.jl
100.00% <ø> (ø)

src/graph/system.jl
98.03% <100.00%> (-0.24%)
:arrow_down:

src/graph/entry.jl
75.00% <0.00%> (-12.50%)
:arrow_down:

src/contacts/utilities.jl
40.00% <0.00%> (-5.46%)
:arrow_down:

src/orientation/quaternion.jl
82.92% <0.00%> (-5.41%)
:arrow_down:

src/orientation/mapping.jl
36.36% <0.00%> (-5.31%)
:arrow_down:

src/joints/rotational/input.jl
42.10% <0.00%> (-1.49%)
:arrow_down:

src/joints/joint.jl
88.88% <0.00%> (-0.51%)
:arrow_down:

src/contacts/impact.jl
86.20% <0.00%> (-0.46%)
:arrow_down:

src/bodies/set.jl
94.54% <0.00%> (-0.37%)
:arrow_down:

... and 46 more

Continue to review full report at Codecov.

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


Design ideas for a Component to show commits and/or lines of code changed over time.

User Story
As an instructor, I can see a graph of commits and/or lines changed over time for a particular team, so that I can get an idea of their progress.
NOTE: This issue is just to come up with designs; implementing those in the product could be a separate issue.
Having said that, if it's easy to implement some designs in React and publish them in the storybook, that's one way of exploring the space.  Or it could something done in Python, or with Excel, or just drawn on a napkin... :-)
Discussion
This is another visualization in addition to the two that we already have on the GitHub teams page.  The idea is to see the progress of commits and LOC changed over time.
Design Questions:

Do we want the "bin size" for plotting commits to be adjustable:  say just three options: day, week, sprint?  selectable from a drop down?

Should it be a bar graph or a line graph?   Bar graph might make more sense,  but line graph might be easier to read with multiple team members?   Maybe a stacked bar chart for the different team members?

Should it be bar chart where each bar shows a different period, say a week, or a day?   Or should it be a line graph that is cumulative, i.e. a line for each team member, and then a line that shows the total for the entire team?

If line graph, do we want a line for each team member, and then a line for the total?
AC

[ ] We have some design options to discuss, and we can eventually choose one to become the basis of an issue that we implement.

One possibility is to link to the designs from posts like this one on the issue.


about  commom:<IP_ADDRESS>

I am using common:<IP_ADDRESS>
in that I am using
void showapps(MaterialSimpleListAdapter adapter);
MaterialSimpleListAdapter.Callback getApplicationChooseCallback();
but it is giving errors jetified-commoms-<IP_ADDRESS>.aar type error
I am using androidx plz help

Anything before version 2.0 is using the old Support Library, not AndroidX, and is no longer supported.


⚠ Bofrost.at has degraded performance

In 283b5a5, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 953 ms

Resolved: Bofrost.at performance has improved in 3789417.


Support for Safari 6 and 7?

What's axios's support for Safari 6 and 7?

So far, using Browserstack I was able to successfully run all the examples on both Safari 6 and 7.  For now, gonna go ahead and assume that its supported...

Thanks for figuring this out. I would like to eventually get the tests running on Saucelabs #180.


Dump service info to file on startup for use by admin cli

Dump things like version and startup time to /tmp/<Pid>. This is especially useful for the admin cli status command.
Dumping the version would prevent having to gather it from esxcli/localcli which is expensive.
We don't currently have a way to get the startup time.

Closing as no takers till date.


Use DataStore to manage model weights

Problem & Solution Description (including issue #)
Addressing issue #9
WIP to use RAIL DataStore to pipe the model weights between Informer and Estimator stages.
Code Quality

[ ] My code follows the code style of this project
[ ] I have written unit tests or justified all instances of #pragma: no cover; in the case of a bugfix, a new test that breaks as a result of the bug has been added
[ ] My code contains relevant comments and necessary documentation for future maintainers; the change is reflected in applicable demos/tutorials (with output cleared!) and added/updated docstrings use the NumPy docstring format
[ ] Any breaking changes, described above, are accompanied by backwards compatibility and deprecation warnings

This was created before the config refactor. Rebasing was challenging. I've moved all the required changes to a new PR (#43) branched off of main post-config refactor.


Add Stop animation in object

I'm using segment to make a countdown, and if I skip the item before the animation end it still counting. If I come back to the item and try to start from zero the plugin ignores because the animationTimer still running.
I put  the stop function visible to the object and use it to reset the counter... works perfectly :)

Hi, thanks for contributing!
Please help me understand this, because stop function is actually public. So, you don't need:
this.stop = this.stop;

But seems a good idea to call stop in the constructor instead setting timer and animationTimer to null. Something like:
this.draw(this.begin, this.end, 0, {circular: this.circular});
this.stop();

Hi :)
I'm sorry, I suggest something that already works :(
I was trying to stop just setting the .draw to zero, but it doesn't stop the animation... so I look at your code the stop function and don't try to call it because it was not listed in the constructor..
I've made an example in JSFiddle, and it works perfectly.
https://fiddle.jshell.net/driedel/fcmy8dq9/
Look at the updateTimer function and you will understand my mistake.

mmm, I see.
Ok, I will document stop function in README as soon as possible :)
Thanks!


sw.js:1 Uncaught (in promise) DOMException: The requested version (1) is less than the existing version (2).

Hi,
I got this error on page load:
sw.js:1 Uncaught (in promise) DOMException: The requested version (1) is less than the existing version (2).
Promise rejected (async)
self.addEventListener @ workbox-sw.js:274

(screenshot)

ServiceWorker was generated with workbox-build on branch v3 (generateSW) with this options:
{
  maximumFileSizeToCacheInBytes: 31457280,
  swDest:' ...'
  globDirectory : '...'
  globPatterns: [ '**/*.{json,css,js,png,svg,eot,ttf,woff,jpg,gif,ico,xml,html,txt}' ],
  skipWaiting: false,
  clientsClaim: false,
  importWorkboxFromCDN: false,
  cacheId: 'buzz',
  importScripts: [ 'assets/service-workers/skip-waiting.js' ]
}

I think your versions are getting mixed up somewhere.
If you look in the screenshot - you have workbox-sw.prod.v2.1.2.js in your files, and that would match the error where version 1 of the indexedDB is being used. If you have sw.js building with v3, it'll register v2 of iDB.
My hunch is you were using v3, it registered v3 of indexedDB and for some reason (maybe a fresh install of workbox) you have ended up using Workbox v2 and that is where indexedDB is trying to downgrade.
Is there a URL or a sample repo when can see this on?

Hi, i can not deploy this, but you are right, i don't know what happened but now i rerun gulp build and it works. Something weird. you can close this issue. I'm sorry

You would not believe how often I hit the same issue - it's easier to do than you'd think.


Nested controller in folders: separator different from stimulus reflex original lib

Some reason to use  "/" and not "--" as separator? Like in stimulus reflex lib https://github.com/stimulusjs/stimulus/pull/65
When we use some like:

components

example_folder

example_component.html.erb
example_component.rb -> ExampleFolder::ExampleComponent
example_controller.js

The controller generated is: example-folder/example and not example-folder--example

@jonatassalgado I just ran into this issue myself, great minds!

Sorry for the delay, just finally catching up on my free time!
This should be fixed in 3.0.4


Migrate to Meson build system

https://mesonbuild.com/

A goal is to achieve a more portable build.


[Feature Request] NextUI V2, When user opens dropdown/popup, close the another dropdown/popup

Is your feature request related to a problem? Please describe.
Yes, when a user opens a modal or popup while another modal/popup is already open, it can create confusion or lead to visual clutter. Multiple overlays can be distracting, and the user might not know which modal to focus on. It can also lead to potential UI glitches, especially when z-index values or other styles conflict between multiple modals.
Describe the solution you'd like
I'd like the nextui dropdown/popupover components to have built-in functionality that ensures only one dropdown or popup is visible at a given time for specific key or same labeled.
Can be resolved with: Context || DOM Events etc
Describe alternatives you've considered
.
Screenshots or Videos
No response

Hey @alibabayev0 could you send a repo/codesandbox/stackblitz ?, I couldn't replicate this issue, on the other hand, we rely on @react-aria overlays implementations which already has a context to control which modals/popovers are visible https://github.com/adobe/react-spectrum/blob/main/packages/%40react-aria/overlays/src/useOverlay.ts#L79-L86

Hey, @jrgarciadev, check this out: https://codesandbox.io/p/sandbox/eager-fog-l9smkq. In the simplified version, I noticed we need to place the button within the Dropdown trigger, or it won't work correctly. I believe you've already implemented this, but just in case, it might be good to handle 'div' and other view types as well.

I found shouldCloseOnBlur in the docs, which seems not to work - but doesnt this describe your wanted behaviour? @alibabayev0

I also tried out using shouldCloseOnBlur and it does not work as I originally expected. However, after reviewing I remembered that focus has to mainly do with input elements. You can see an example from Mozilla here.
I did look into the code and it looks like their using Adobe's React Spectrum, specifically the useOverlay. In the React Spectrum's issue page a fix to this issue has been discussed here. But it appears there is no solution currently.
But I currently do not see away to make the click away from a dropdown also be an event to activate a new dropdown. If anyone knows a fix let me know.
@alibabayev0 I was unable to replicate the effect where you when you click away, it activates the other popup. How were you able to do this?

Here is a solution I developed. Honestly, not sure why it works but it does.
import { Dropdown as NativeDropdown, DropdownProps } from "@nextui-org/react";
import React from "react";
import { useState } from "react";

export function Dropdown(props:DropdownProps) {
    const [visible, setVisible] = useState(false);
    return (
        <NativeDropdown
            {...props}
            isOpen={visible}
            onOpenChange={(isOpen) => setVisible(isOpen)}
            shouldCloseOnInteractOutside={() => {
                setVisible(false);
                return false;
            }}
        />
    );
}

I agree that this part of API is extremely counter-intuitive.
This is a more generic hook version I use to fix it:
const fixProps = usePopoverFix();

 <Popover
            {...fixProps}
            // other props and children etc.

defined as:
import { useMemo, useState } from "react";

export function usePopoverFix() {
  const [popoverVisible, setPopoverVisible] = useState(false);

  const shouldCloseOnInteractOutside = useMemo(() => {
    return () => {
      setPopoverVisible(false);
      return false;
    };
  }, [setPopoverVisible]);

  return {
    isOpen: popoverVisible,
    onOpenChange: setPopoverVisible,
    isKeyboardDismissDisabled: false,
    shouldCloseOnInteractOutside,
  };
}


Something is already running on port 3000 ! why

But nothing is already running on port 3000!!!!!
if "<IP_ADDRESS>    localhost" is not in your host.
when you run yarn start . it tell you  Something is already running on port 3000 ....
see detect-port#L58
the error msg should more  friendly.

This is done purposefully because something running on the same port but different addresses is confusing at best.

I believe the message is already pretty friendly; it's saying something is running on port 3000; not that something is running on localhost:3000.
Can you propose a better message?

This sounds like a bug to me.
If I run HOST=<IP_ADDRESS> PORT=9080 yarn start, the expected behavior is that the dev server binds to that host and port (like any other web server). It shouldn't matter whether any processes are bound to that port on a different address.
Running different processes on the same port but different addresses could be confusing, but I think it's a necessary feature (especially on multi-user systems). Maybe we could be very explicit in the startup message about which address and port are bound?

Hm, there's a lot of edge cases for this. I'd be open to a proposal better aligned to how this should work.
The problem is that when we bind to localhost, <IP_ADDRESS>, or ::, we have to check many other addresses.
I'd even go as far as ::1 and <IP_ADDRESS>; maybe we can ignore checking the other hosts if it isn't one of these, what do you think?

I'm probably missing a lot of the complexity, but it seems like the behavior should be:

If a HOST is provided, only attempt to bind to that address. Otherwise, try to bind to localhost.
If a PORT is provided, only attempt to listen on that port. Otherwise, search for an open port, starting from 3000.

I just had this problem and the quick fix is

Add <IP_ADDRESS> localhost in your host.

It should be in the docs maybe?

@benhanks040888 adding

<IP_ADDRESS> localhost

in the hosts file

/etc/hosts for mac
C:\Windows\System32\Drivers\etc\hosts for windows

helped.
Thank you so much sir.

I think we'll be sticking to this default behavior for now -- it makes the most sense IMO.
Mainly because:

This is done purposefully because something running on the same port but different addresses is confusing at best.

this work for me
1 open chrome
2 open : localhost:3000
3 write something on your code
4 refesh tab on chrome -> it will crash
5 npm start again
6 done :)

To rephrase what piggy2303 said:

Open Chrome (or other browser).
Go to: localhost:3000
If you see your previous react app still loaded in localhost:3000, then open the src/app.js for that app in a text editor and make some/any change to the source-code.
Click refresh tab within the browser/Chrome.
Once browser/Chrome crashes/refuses to connect, open the terminal.
Navigate to your new intended directory where you were previously unable to run 'npm start' before Step 1.
Run 'npm start'.
Enjoy!


BNB 4Bit, 0.40.0 release

What does this PR do?

Fixes # (issue)
Before submitting

[ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
[ ] Did you read the contributor guideline,
Pull Request section?
[ ] Was this discussed/approved via a Github issue or the forum? Please add a link
to it if that's the case.
[ ] Did you make sure to update the documentation with your changes? Here are the
documentation guidelines, and
here are tips on formatting docstrings.
[ ] Did you write any new necessary tests?

Who can review?
Anyone in the community is free to review the PR once the tests have passed. Feel free to tag
members/contributors who may be interested in your PR.

I modified it to make it work and I'm seeing 2x increased latency....
Regular falcon-7b (A10G, not sharded)
| Step           | Batch Size | Average   | Lowest    | Highest   | p50       | p90       | p99       |
|----------------|------------|-----------|-----------|-----------|-----------|-----------|-----------|
| Prefill        | 1          | 33.84 ms  | 33.73 ms  | 34.22 ms  | 33.82 ms  | 34.22 ms  | 34.22 ms  |
|                | 2          | 35.57 ms  | 35.44 ms  | 35.75 ms  | 35.60 ms  | 35.75 ms  | 35.75 ms  |
|                | 4          | 37.18 ms  | 37.10 ms  | 37.28 ms  | 37.18 ms  | 37.28 ms  | 37.28 ms  |
|                | 8          | 41.02 ms  | 40.88 ms  | 41.16 ms  | 41.03 ms  | 41.16 ms  | 41.16 ms  |
|                | 16         | 59.12 ms  | 59.03 ms  | 59.21 ms  | 59.13 ms  | 59.21 ms  | 59.21 ms  |
|                | 32         | 95.52 ms  | 95.20 ms  | 96.10 ms  | 95.50 ms  | 96.10 ms  | 96.10 ms  |
| Decode (token) | 1          | 31.81 ms  | 31.75 ms  | 31.89 ms  | 31.79 ms  | 31.87 ms  | 31.87 ms  |
|                | 2          | 33.02 ms  | 32.96 ms  | 33.23 ms  | 33.00 ms  | 32.98 ms  | 32.98 ms  |
|                | 4          | 33.12 ms  | 33.09 ms  | 33.17 ms  | 33.13 ms  | 33.10 ms  | 33.10 ms  |
|                | 8          | 33.43 ms  | 33.40 ms  | 33.47 ms  | 33.44 ms  | 33.42 ms  | 33.42 ms  |
|                | 16         | 34.05 ms  | 34.02 ms  | 34.08 ms  | 34.05 ms  | 34.05 ms  | 34.05 ms  |
|                | 32         | 35.73 ms  | 35.66 ms  | 35.86 ms  | 35.72 ms  | 35.86 ms  | 35.86 ms  |
| Decode (total) | 1          | 222.68 ms | 222.23 ms | 223.23 ms | 222.53 ms | 223.09 ms | 223.09 ms |
|                | 2          | 231.11 ms | 230.74 ms | 232.61 ms | 231.03 ms | 230.88 ms | 230.88 ms |
|                | 4          | 231.86 ms | 231.62 ms | 232.18 ms | 231.94 ms | 231.74 ms | 231.74 ms |
|                | 8          | 234.04 ms | 233.81 ms | 234.27 ms | 234.09 ms | 233.94 ms | 233.94 ms |
|                | 16         | 238.34 ms | 238.16 ms | 238.56 ms | 238.39 ms | 238.33 ms | 238.33 ms |
|                | 32         | 250.10 ms | 249.59 ms | 251.00 ms | 250.06 ms | 251.00 ms | 251.00 ms |

| Step    | Batch Size | Average            | Lowest             | Highest            |
|---------|------------|--------------------|--------------------|--------------------|
| Prefill | 1          | 29.55 tokens/secs  | 29.22 tokens/secs  | 29.65 tokens/secs  |
|         | 2          | 56.23 tokens/secs  | 55.95 tokens/secs  | 56.44 tokens/secs  |
|         | 4          | 107.59 tokens/secs | 107.28 tokens/secs | 107.82 tokens/secs |
|         | 8          | 195.03 tokens/secs | 194.34 tokens/secs | 195.72 tokens/secs |
|         | 16         | 270.64 tokens/secs | 270.23 tokens/secs | 271.03 tokens/secs |
|         | 32         | 335.01 tokens/secs | 332.99 tokens/secs | 336.11 tokens/secs |
| Decode  | 1          | 31.44 tokens/secs  | 31.36 tokens/secs  | 31.50 tokens/secs  |
|         | 2          | 60.58 tokens/secs  | 60.19 tokens/secs  | 60.67 tokens/secs  |
|         | 4          | 120.76 tokens/secs | 120.60 tokens/secs | 120.89 tokens/secs |
|         | 8          | 239.28 tokens/secs | 239.04 tokens/secs | 239.51 tokens/secs |
|         | 16         | 469.93 tokens/secs | 469.49 tokens/secs | 470.26 tokens/secs |
|         | 32         | 895.63 tokens/secs | 892.41 tokens/secs | 897.47 tokens/secs |

BNB 4bits (FP4+NF4) on the same model + hardware:
| Step           | Batch Size | Average   | Lowest    | Highest   | p50       | p90       | p99       |
|----------------|------------|-----------|-----------|-----------|-----------|-----------|-----------|
| Prefill        | 1          | 71.66 ms  | 71.61 ms  | 71.73 ms  | 71.67 ms  | 71.73 ms  | 71.73 ms  |
|                | 2          | 76.35 ms  | 76.03 ms  | 77.16 ms  | 76.31 ms  | 77.16 ms  | 77.16 ms  |
|                | 4          | 77.29 ms  | 77.15 ms  | 77.36 ms  | 77.30 ms  | 77.36 ms  | 77.36 ms  |
|                | 8          | 81.29 ms  | 81.14 ms  | 81.40 ms  | 81.31 ms  | 81.40 ms  | 81.40 ms  |
|                | 16         | 99.38 ms  | 99.01 ms  | 100.22 ms | 99.28 ms  | 100.22 ms | 100.22 ms |
|                | 32         | 135.67 ms | 135.40 ms | 135.91 ms | 135.75 ms | 135.91 ms | 135.91 ms |
| Decode (token) | 1          | 25.47 ms  | 25.29 ms  | 26.61 ms  | 25.35 ms  | 26.61 ms  | 26.61 ms  |
|                | 2          | 73.59 ms  | 73.50 ms  | 73.65 ms  | 73.61 ms  | 73.59 ms  | 73.59 ms  |
|                | 4          | 73.73 ms  | 73.68 ms  | 73.79 ms  | 73.74 ms  | 73.72 ms  | 73.72 ms  |
|                | 8          | 74.03 ms  | 74.00 ms  | 74.08 ms  | 74.02 ms  | 74.01 ms  | 74.01 ms  |
|                | 16         | 74.44 ms  | 74.35 ms  | 74.50 ms  | 74.45 ms  | 74.47 ms  | 74.47 ms  |
|                | 32         | 75.97 ms  | 75.88 ms  | 76.16 ms  | 75.98 ms  | 76.16 ms  | 76.16 ms  |
| Decode (total) | 1          | 178.30 ms | 177.06 ms | 186.27 ms | 177.44 ms | 186.27 ms | 186.27 ms |
|                | 2          | 515.14 ms | 514.52 ms | 515.58 ms | 515.26 ms | 515.15 ms | 515.15 ms |
|                | 4          | 516.12 ms | 515.75 ms | 516.53 ms | 516.21 ms | 516.04 ms | 516.04 ms |
|                | 8          | 518.18 ms | 518.00 ms | 518.57 ms | 518.14 ms | 518.06 ms | 518.06 ms |
|                | 16         | 521.07 ms | 520.48 ms | 521.51 ms | 521.14 ms | 521.32 ms | 521.32 ms |
|                | 32         | 531.77 ms | 531.19 ms | 533.14 ms | 531.85 ms | 533.14 ms | 533.14 ms |

| Step    | Batch Size | Average            | Lowest             | Highest            |
|---------|------------|--------------------|--------------------|--------------------|
| Prefill | 1          | 13.95 tokens/secs  | 13.94 tokens/secs  | 13.96 tokens/secs  |
|         | 2          | 26.19 tokens/secs  | 25.92 tokens/secs  | 26.31 tokens/secs  |
|         | 4          | 51.75 tokens/secs  | 51.70 tokens/secs  | 51.84 tokens/secs  |
|         | 8          | 98.41 tokens/secs  | 98.28 tokens/secs  | 98.60 tokens/secs  |
|         | 16         | 161.00 tokens/secs | 159.65 tokens/secs | 161.60 tokens/secs |
|         | 32         | 235.86 tokens/secs | 235.44 tokens/secs | 236.33 tokens/secs |
| Decode  | 1          | 39.27 tokens/secs  | 37.58 tokens/secs  | 39.54 tokens/secs  |
|         | 2          | 27.18 tokens/secs  | 27.15 tokens/secs  | 27.21 tokens/secs  |
|         | 4          | 54.25 tokens/secs  | 54.21 tokens/secs  | 54.29 tokens/secs  |
|         | 8          | 108.07 tokens/secs | 107.99 tokens/secs | 108.11 tokens/secs |
|         | 16         | 214.94 tokens/secs | 214.76 tokens/secs | 215.18 tokens/secs |
|         | 32         | 421.24 tokens/secs | 420.15 tokens/secs | 421.70 tokens/secs |

(I can provide the fixed version if you want).
Do you have similar benches ?

Same story on Falcon-40b (shards =4 on 4 A10G)
| Step           | Batch Size | Average   | Lowest    | Highest    | p50       | p90        | p99        |
|----------------|------------|-----------|-----------|------------|-----------|------------|------------|
| Prefill        | 1          | 63.32 ms  | 63.00 ms  | 64.91 ms   | 63.14 ms  | 64.91 ms   | 64.91 ms   |
|                | 2          | 119.56 ms | 64.33 ms  | 397.30 ms  | 64.61 ms  | 397.30 ms  | 397.30 ms  |
|                | 4          | 136.67 ms | 71.54 ms  | 574.37 ms  | 71.95 ms  | 574.37 ms  | 574.37 ms  |
|                | 8          | 189.54 ms | 89.34 ms  | 886.00 ms  | 103.58 ms | 886.00 ms  | 886.00 ms  |
|                | 16         | 140.03 ms | 137.81 ms | 145.75 ms  | 139.19 ms | 145.75 ms  | 145.75 ms  |
|                | 32         | NaN ms    | NaN ms    | NaN ms     | NaN ms    | NaN ms     | NaN ms     |
| Decode (token) | 1          | 50.87 ms  | 50.64 ms  | 51.37 ms   | 50.85 ms  | 50.72 ms   | 50.72 ms   |
|                | 2          | 56.39 ms  | 56.21 ms  | 56.98 ms   | 56.38 ms  | 56.27 ms   | 56.27 ms   |
|                | 4          | 68.25 ms  | 58.09 ms  | 133.33 ms  | 58.41 ms  | 58.62 ms   | 58.62 ms   |
|                | 8          | 74.56 ms  | 61.64 ms  | 133.43 ms  | 72.52 ms  | 72.75 ms   | 72.75 ms   |
|                | 16         | 130.11 ms | 81.70 ms  | 204.56 ms  | 82.92 ms  | 203.72 ms  | 203.72 ms  |
|                | 32         | NaN ms    | NaN ms    | NaN ms     | NaN ms    | NaN ms     | NaN ms     |
| Decode (total) | 1          | 356.08 ms | 354.50 ms | 359.56 ms  | 355.96 ms | 355.03 ms  | 355.03 ms  |
|                | 2          | 394.76 ms | 393.50 ms | 398.90 ms  | 394.69 ms | 393.89 ms  | 393.89 ms  |
|                | 4          | 477.77 ms | 406.65 ms | 933.31 ms  | 408.91 ms | 410.38 ms  | 410.38 ms  |
|                | 8          | 521.95 ms | 431.45 ms | 934.02 ms  | 507.66 ms | 509.29 ms  | 509.29 ms  |
|                | 16         | 910.74 ms | 571.91 ms | 1431.92 ms | 580.41 ms | 1426.07 ms | 1426.07 ms |
|                | 32         | NaN ms    | NaN ms    | NaN ms     | NaN ms    | NaN ms     | NaN ms     |

| Step    | Batch Size | Average            | Lowest             | Highest            |
|---------|------------|--------------------|--------------------|--------------------|
| Prefill | 1          | 15.79 tokens/secs  | 15.41 tokens/secs  | 15.87 tokens/secs  |
|         | 2          | 25.99 tokens/secs  | 5.03 tokens/secs   | 31.09 tokens/secs  |
|         | 4          | 47.09 tokens/secs  | 6.96 tokens/secs   | 55.91 tokens/secs  |
|         | 8          | 71.52 tokens/secs  | 9.03 tokens/secs   | 89.55 tokens/secs  |
|         | 16         | 114.30 tokens/secs | 109.78 tokens/secs | 116.10 tokens/secs |
|         | 32         | NaN tokens/secs    | NaN tokens/secs    | NaN tokens/secs    |
| Decode  | 1          | 19.66 tokens/secs  | 19.47 tokens/secs  | 19.75 tokens/secs  |
|         | 2          | 35.47 tokens/secs  | 35.10 tokens/secs  | 35.58 tokens/secs  |
|         | 4          | 62.72 tokens/secs  | 30.00 tokens/secs  | 68.85 tokens/secs  |
|         | 8          | 113.05 tokens/secs | 59.96 tokens/secs  | 129.79 tokens/secs |
|         | 16         | 148.16 tokens/secs | 78.22 tokens/secs  | 195.84 tokens/secs |
|         | 32         | NaN tokens/secs    | NaN tokens/secs    | NaN tokens/secs    |

Vs (BNB4)
| Step           | Batch Size | Average    | Lowest    | Highest    | p50        | p90        | p99        |
|----------------|------------|------------|-----------|------------|------------|------------|------------|
| Prefill        | 1          | 197.22 ms  | 122.34 ms | 637.70 ms  | 122.93 ms  | 637.70 ms  | 637.70 ms  |
|                | 2          | 179.28 ms  | 124.76 ms | 660.35 ms  | 126.14 ms  | 660.35 ms  | 660.35 ms  |
|                | 4          | 288.57 ms  | 132.29 ms | 659.63 ms  | 133.61 ms  | 659.63 ms  | 659.63 ms  |
|                | 8          | 334.31 ms  | 149.55 ms | 636.72 ms  | 150.09 ms  | 636.72 ms  | 636.72 ms  |
|                | 16         | 208.12 ms  | 197.41 ms | 299.67 ms  | 198.05 ms  | 299.67 ms  | 299.67 ms  |
|                | 32         | NaN ms     | NaN ms    | NaN ms     | NaN ms     | NaN ms     | NaN ms     |
| Decode (token) | 1          | 61.82 ms   | 58.04 ms  | 64.86 ms   | 62.80 ms   | 63.05 ms   | 63.05 ms   |
|                | 2          | 130.60 ms  | 116.68 ms | 196.98 ms  | 117.81 ms  | 116.78 ms  | 116.78 ms  |
|                | 4          | 119.03 ms  | 118.83 ms | 119.28 ms  | 119.13 ms  | 118.94 ms  | 118.94 ms  |
|                | 8          | 122.60 ms  | 122.19 ms | 123.00 ms  | 122.70 ms  | 122.66 ms  | 122.66 ms  |
|                | 16         | 170.25 ms  | 126.63 ms | 229.68 ms  | 202.35 ms  | 203.56 ms  | 203.56 ms  |
|                | 32         | NaN ms     | NaN ms    | NaN ms     | NaN ms     | NaN ms     | NaN ms     |
| Decode (total) | 1          | 432.71 ms  | 406.28 ms | 454.01 ms  | 439.63 ms  | 441.37 ms  | 441.37 ms  |
|                | 2          | 914.17 ms  | 816.78 ms | 1378.87 ms | 824.64 ms  | 817.46 ms  | 817.46 ms  |
|                | 4          | 833.22 ms  | 831.84 ms | 834.92 ms  | 833.89 ms  | 832.57 ms  | 832.57 ms  |
|                | 8          | 858.23 ms  | 855.31 ms | 861.01 ms  | 858.87 ms  | 858.61 ms  | 858.61 ms  |
|                | 16         | 1191.72 ms | 886.39 ms | 1607.76 ms | 1416.45 ms | 1424.89 ms | 1424.89 ms |
|                | 32         | NaN ms     | NaN ms    | NaN ms     | NaN ms     | NaN ms     | NaN ms     |

| Step    | Batch Size | Average            | Lowest            | Highest            |
|---------|------------|--------------------|-------------------|--------------------|
| Prefill | 1          | 6.95 tokens/secs   | 1.57 tokens/secs  | 8.17 tokens/secs   |
|         | 2          | 14.61 tokens/secs  | 3.03 tokens/secs  | 16.03 tokens/secs  |
|         | 4          | 22.92 tokens/secs  | 6.06 tokens/secs  | 30.24 tokens/secs  |
|         | 8          | 37.27 tokens/secs  | 12.56 tokens/secs | 53.49 tokens/secs  |
|         | 16         | 78.08 tokens/secs  | 53.39 tokens/secs | 81.05 tokens/secs  |
|         | 32         | NaN tokens/secs    | NaN tokens/secs   | NaN tokens/secs    |
| Decode  | 1          | 16.20 tokens/secs  | 15.42 tokens/secs | 17.23 tokens/secs  |
|         | 2          | 15.75 tokens/secs  | 10.15 tokens/secs | 17.14 tokens/secs  |
|         | 4          | 33.60 tokens/secs  | 33.54 tokens/secs | 33.66 tokens/secs  |
|         | 8          | 65.25 tokens/secs  | 65.04 tokens/secs | 65.47 tokens/secs  |
|         | 16         | 100.58 tokens/secs | 69.66 tokens/secs | 126.36 tokens/secs |
|         | 32         | NaN tokens/secs    | NaN tokens/secs   | NaN tokens/secs    |

Yeah, I had no time to test it right now
Could you share the fixed version ?
I will run tests and benchs later this week

Falcon in it's quantized version always goes slower as far I know
Maybe llama will run better
Falcon + gptq is slower than fp16 too (not tried tgi gptq, only autogptq)

https://github.com/huggingface/text-generation-inference/tree/bnb4

I tried falcon because it's easier to share and compare results than any llama derived models because everyone have their own versions..


MRD + substitution error rate code modifications

Various updates and fixes to the MRD + substitution error rate code
Added a substitution error report notebook
A respective PR in terra_pipeline will be opened, pipelines tested and working when using a docker created from the latest commit here.

Sorry, I missed your comments, might have been just as I was merging. I fixed most of the docstrings, I will fix the rest next time I have a PR for VariantCalling and try to add tests.
From: Ilya Soifer @.>
Sent: Wednesday, November 16, 2022 12:12 PM
To: Ultimagen/VariantCalling @.>
Cc: Itai Rusinek @.>; Author @.>
Subject: Re: [Ultimagen/VariantCalling] MRD + substitution error rate code modifications (PR #240)
@ilyasoifer approved this pull request.
I am approving with comments, but I am worried about two style points here:

there do not seem to be a lot of tests
Most functions are not documented

In ugvc/dna/utils.pyhttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FUltimagen%2FVariantCalling%2Fpull%2F240%23discussion_r1023762275&data=05|01|itai.rusinek%40ultimagen.com|d3e8c307e4d04f8f39b008dac7bb0dbe|e279335822c64d05ba11534ec733b8dd|0|0|638041903460687202|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=LkvsXurJUWq%2BsRc%2FqQsg9qtMAWU%2FFxWPwmkcoJVM7yw%3D&reserved=0:

@@ -11,12 +11,13 @@ def revcomp(seq: str | list | np.ndarray) -> str | list | np.ndarray:

 Parameters

 ----------

seq: Union[str,list,np.ndarray]

Can you bring docs to the numpy standard please?

In ugvc/mrd/coverage_utils.pyhttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FUltimagen%2FVariantCalling%2Fpull%2F240%23discussion_r1023762744&data=05|01|itai.rusinek%40ultimagen.com|d3e8c307e4d04f8f39b008dac7bb0dbe|e279335822c64d05ba11534ec733b8dd|0|0|638041903460843407|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=BJNswb%2F7SE6vol2kkAxLAtZ4%2BofBM8JePV7tOpJA46M%3D&reserved=0:

@@ -98,7 +98,7 @@ def collect_coverage_per_motif(

 show_stats: bool = False,

 n_jobs: int = -1,

 size: int = 5,

N: int = 100,

downsampling_ratio: int = 100,

):
 """

 Collect coverage per motif from given input files, output is a set of dataframes with motif of a given size and

docs to numpy conventions please

In ugvc/mrd/positional_substitution_error_rate_utils.pyhttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FUltimagen%2FVariantCalling%2Fpull%2F240%23discussion_r1023776841&data=05|01|itai.rusinek%40ultimagen.com|d3e8c307e4d04f8f39b008dac7bb0dbe|e279335822c64d05ba11534ec733b8dd|0|0|638041903460843407|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=7RE3nEtA7TVXN8kreUmCtfPl95UkMkjI8xy3V4Fgt3A%3D&reserved=0:

+def calc_positional_error_rate_profile(  # pylint: disable=too-many-arguments

single_substitutions_file_name: str,

coverage_per_motif_file_name: str,

output_folder: str,

output_file_prefix: str = POSITIONAL_DEFAULT_FILE_PREFIX,

error_per_pos_file_prefix: str = POSITIONAL_DEFAULT_ERROR_PER_PREFIX,

allow_softlclip: bool = False,

flow_order: str = DEFAULT_FLOW_ORDER,

position_plot_step_size: int = POSITIONAL_PLOT_STEP_SIZE,

max_positions_plot: int = POSITIONAL_MAX_POSITIONS_PLOT,

edist_threshold: int = POSITIONAL_X_EDIST_THRESHOLD,

xscore_threshold: int = POSITIONAL_X_SCORE_THRESHOLD,

+):

"""

Actual process of calculating error rate profile by base position within entire sequence

numpy style please

In ugvc/pipelines/mrd/concat_dataframes.pyhttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FUltimagen%2FVariantCalling%2Fpull%2F240%23discussion_r1023789056&data=05|01|itai.rusinek%40ultimagen.com|d3e8c307e4d04f8f39b008dac7bb0dbe|e279335822c64d05ba11534ec733b8dd|0|0|638041903460843407|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=SCTycAwetUoK6YFsBhNeHsgzS6%2FpUnxwjfydgoar1wc%3D&reserved=0:

@@ -20,8 +20,7 @@

import argparse
-import pandas as pd
-from joblib import Parallel, delayed
+from ugvc.mrd.mrd_utils import concat_dataframes
maybe makes sense for this to live in utils.misc_utils? Looks pretty general function to me

In ugvc/reports/substitution_error_rate_report.ipynbhttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FUltimagen%2FVariantCalling%2Fpull%2F240%23discussion_r1023791161&data=05|01|itai.rusinek%40ultimagen.com|d3e8c307e4d04f8f39b008dac7bb0dbe|e279335822c64d05ba11534ec733b8dd|0|0|638041903460843407|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=Hdsi00NJbj%2FK7JDdPd2T82stVrTAZxzw6VtcFXCxSKk%3D&reserved=0:

@@ -0,0 +1,572 @@

+{
I think this needs a test

Reply to this email directly, view it on GitHubhttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FUltimagen%2FVariantCalling%2Fpull%2F240%23pullrequestreview-1182233780&data=05|01|itai.rusinek%40ultimagen.com|d3e8c307e4d04f8f39b008dac7bb0dbe|e279335822c64d05ba11534ec733b8dd|0|0|638041903460843407|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=6ZtIUjashWODvmL%2B91VDfpNpI5qoBzJtFVrHbj90rJM%3D&reserved=0, or unsubscribehttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAD2BKFCPKQOIR5ESX4CX4Q3WISXQNANCNFSM6AAAAAARZEJ2QY&data=05|01|itai.rusinek%40ultimagen.com|d3e8c307e4d04f8f39b008dac7bb0dbe|e279335822c64d05ba11534ec733b8dd|0|0|638041903460843407|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=kvvjIeyXZkt7c5pUhGcNCXplhxNyPg1lVu8EHMcFPoQ%3D&reserved=0.
You are receiving this because you authored the thread.Message ID<EMAIL_ADDRESS>
CONFIDENTIALITY NOTICE: This message (including any attachments) should be presumed to contain confidential, proprietary, privileged and/or private information. Information contained in this message is intended only for the recipient(s) named above. Any disclosure, reproduction, distribution or other use of this message or any attachments by any unauthorized individual or entity is strictly prohibited. If you have received this message in error, please notify the sender immediately, and delete the message and any attachments. Learn more about Ultima Genomics' Privacy Policyhttps://www.ultimagenomics.com/privacy-policy.


proposal: Fetchers refactor

This proposal, starts from the distribution concept in #2953, to provide a
fetchers refactors to adapt to the above concept.
Additionally it also provides a complete workflow and ideas for
transport level caching to fit different needs:

Distribution handlers
Transport plugin handler
Transport plugins
Transport level caching
Complete separation between image store and transport level caching

@dgonyeo I opened this trying to define my view starting will all the various requirements that came to my mind and trying find a common denominator. This is obviously my view and I'd like to hear your thoughts on it and see how it'll fit with your proposed "fetcher" plugins in #2830.

After seeing this I'm pretty sure we're on the exact same page, I just may have not articulated it clearly enough and you seem to have done the opposite. Also by actually providing definitions for "distribution" and "transport" I can better see the separation you want. :)
If you ignore the docker portion of my plugins proposal, what I've implemented is pretty close to this, it'll just need some refactoring to have a clearer distinction between the distribution handlers and the transport handlers. When the fetch function gets called it'll either A: directly hand it off to the transport handler (which uses plugins to perform the actual network requests) or B: hand it do a distribution handler (only AppC discovery atm) which will do some distribution logic to produce concrete URLs (AppC discovery) and then use the transport handlers to fetch them.
A big obvious difference between this and my current PR is that my PR is geared for the old store, so I'll need to do some work to make my suggestion adhere to this.
 If I provide rkt a URL correlating to a transport handler, are the distribution handlers still used?
For what it's worth, my answer in my fetching proposal is that the distribution handlers aren't called in this case.

Oh nevermind that question, just reread and noticed the archive distribution. As an addition to your comment on how the AppC distribution will internally use the archive distribution, I expect it to be the same if we implement an OCI distribution, since it could use the logic in the archive distribution to fetch the blobs over https it needs.

Does this mean that the archive distribution is the only distribution that ever calls out to the transport handlers?

Aaaaand nevermind that question too. Now after reading more I see that the docker/OCI distribution may call them directly.
At first my opinion was that distributions should always call the transport handler directly, as otherwise things seemed a little murkier to me (for AppC, which distribution would do the image import?) but after dwelling on it a bit I think the way you outlined it here is best. After all the AppC distribution is the exact same as the archive distribution, just with 1-2 additional steps it needs to do first (perform discovery, maybe fetch/trust public keys).
I'd be happy to start refactoring my plugins PR to align with this, once the others here have a little more time for feedback on this.

GC is the part of this proposal that I like the less. I'm not sure if I'm missing any details, but it seems avoidable.
I guess we can augment current CAS with cacheManifest linked to an already downloaded blog, containing all distribution entries it has fetched/discovered from; on removal, the cacheManifest is inspected and all cache entries evicted. This is already backward compatible, as a blob in CAS without a cacheManifest has no to cache entries to be purged.
Am I missing some caveats?

@lucab I see that in the case of transport caching GC could be overkill. I'll try to explain my thoughts:

The main intent was to keep the different layers (in this case image store and transports) decoupled (also for reusability in other projexts).The image store should only save images related information.

to avoid transport cache  GC we can just use transport cache to know the blob digest. An upper layer (image rm) should just clean transport entries when a blob is removed. But this won't work if the image store does blob GC as I was thinking (see below).

Since this isn't atomic, if something fails (error, process killed etc...) we are left with stale entries that will require a GC function to clean them.

Anyway I don't think cache transport gc is a big issue, it should also just remove entries older than N daysbwithout reading cache data, blob digest etc...
BTW there're other places were a GC or a cleanup will be useful/required (to avoid complex logics). I will open an issue on this to clarify this and find how to expose/run GC functions.

As an addition to your comment on how the AppC distribution will internally use the archive distribution, I expect it to be the same if we implement an OCI distribution, since it could use the logic in the archive distribution to fetch the blobs over https it needs.

The oci-image-layout states that this layout should be a basis for distributing OCI images via an archive, http or other ways. Thinking in distribution terms I tend too see different distribution types:

oci image layout archive: will fetch a single file via any transport (file, http etc...), then the distribution handler will read the archive, take the ref and use the descriptor to fetch the required blobs from the archive.
oci image layout via an http server: (I'm just imagining since nothing has been defined) an http server will expose a directory layout like the oci image layout and the distribution will call the transport handler multiple times to fetch the ref and the blobs.

The docker registry is not related to oci image layout but is just another distribution type that can be used to fetch oci images.
Thoughts?

A big obvious difference between this and my current PR is that my PR is geared for the old store, so I'll need to do some work to make my suggestion adhere to this.

I think that, if the distribution ides is considered good and will pass, this work on the fetchers refactor can go ahead without having to wait for the new image store.
The new image store changes will just change the distribution handler parts that imports images in the store. Instead, having this just in place will ease the creation of new oci image layout archive and docker registry distribution that are needed to really start using the store with OCI images.


About the training model of cobra

I don't see a download link about the training model of cobra, we would like to fine-tune the downstream task based on the cobra, how soon will the training model of cobra be released.

The model has been uploaded to Hugging Face, and the download link can be found in the README.


Docs: multicomponent tutorial fud command fix

Old fud command containing flag --to vcd_json resulted in stack overflow error. Changed command to use flag --to vcd.

Seems like a good idea; thank you!!


Added new Espressif IDE release

Description

This PR adds the new Espressif IDE release.
Related

Testing

Checklist
Before submitting a Pull Request, please ensure the following:

[x] 🚨 This PR does not introduce breaking changes.
[x] All CI checks (GH Actions) pass.

I would recommend moving Espressif IDE into a subdirectory, because there will be new post with every release. Also featured image should go yo sahred assets, so that we do not need to upload everytime new one. BTW: What is point of having bold every second line in New features? I would recommend to remove bold, it's just generating visual noise.
There should be also mentioned this download page for Windows users: https://dl.espressif.com/dl/esp-idf/ @kolipakakondal What is your opinion?

Build is in progress for Windows Offline Installer for Espressif-IDE 3.1.0 with ESP-IDF v5.2.3. Once it's up, we can specifically mention this so that users can download directly.

We can also these points also to the list of improvements.
Launch Configuration Improvements

Provided a configuration option in the launch configuration to open the serial monitor right after the serial flash.
Changing the configuration automatically sets the mode to Run/Debug accordingly.

ESP-IDF Manager Improvements

Added functionality to remove all versions from the list.
Added validations for the ESP-IDF path and improved the UI.

I would recommend moving Espressif IDE into a subdirectory, because there will be new post with every release. Also featured image should go yo sahred assets, so that we do not need to upload everytime new one. BTW: What is point of having bold every second line in New features? I would recommend to remove bold, it's just generating visual noise.
There should be also mentioned this download page for Windows users: https://dl.espressif.com/dl/esp-idf/ @kolipakakondal What is your opinion?

Build is in progress for Windows Offline Installer for Espressif-IDE 3.1.0 with ESP-IDF v5.2.3. Once it's up, we can specifically mention this so that users can download directly.
https://github.com/espressif/idf-installer/actions

I've removed it for now.


Understand why TestRegress1504 does not refresh cleanly

What happened?
Introducing a test with SkipRefresh https://github.com/pulumi/pulumi-aws/compare/t0yv0/fix-1504 because refresh has changes. This is typically benign but might be interesting to investigate. This is a LaunchTemplate resource.
Example
import * as aws from "@pulumi/aws";
const ltemplate = new aws.ec2.LaunchTemplate(
    "my-launch-template",
    {
        imageId: "ami-0c55b159cbfafe1f0",
        instanceType:"t2.micro",
        keyName: 'key1',
        tags: {"Name": 'tag2'},
        updateDefaultVersion: true,
    });

Refresh diff says no changes but if pressed for details provides some:
No resources will be modified as part of this refresh; just your stack's state will be.
 details
  pulumi:pulumi:Stack: (same)
    [urn=urn:pulumi:dev::aws-3686::pulumi:pulumi:Stack::aws-3686-dev]
    ~ aws:ec2/launchTemplate:LaunchTemplate: (update)
        [id=lt-047219347b109768c]
        [urn=urn:pulumi:dev::aws-3686::aws:ec2/launchTemplate:LaunchTemplate::my-launch-template]
        [provider=urn:pulumi:dev::aws-3686::pulumi:providers:aws::default_6_32_0::1866b374-0cd7-4789-8430-daadd9035888]
        --outputs:--
      + securityGroupNames               : []
      + vpcSecurityGroupIds              : []

This fails (which is also why we noticed this in ProgramTest):
pulumi refresh --expect-no-changes --yes                                                                                ~/bugs/aws-3686
Previewing refresh (dev)

View in Browser (Ctrl+O): https://app.pulumi.com/anton-pulumi-corp/aws-3686/dev/previews/d5d294f9-a1c4-462b-8f5c-95a4782d45a4

     Type                       Name                Plan       Info
     pulumi:pulumi:Stack        aws-3686-dev
 ~   └─ aws:ec2:LaunchTemplate  my-launch-template  update     [diff: +securityGroupNames,vpcSecurityGroupIds]

Resources:
    ~ 1 to update
    1 unchanged

Refreshing (dev)

View in Browser (Ctrl+O): https://app.pulumi.com/anton-pulumi-corp/aws-3686/dev/updates/6

     Type                       Name                Status              Info
     pulumi:pulumi:Stack        aws-3686-dev
 ~   └─ aws:ec2:LaunchTemplate  my-launch-template  updated (0.71s)     [diff: +securityGroupNames,vpcSecurityGroupIds]

Resources:
    ~ 1 updated
    1 unchanged

Duration: 2s

error: error: no changes were expected but changes occurred

If I do pulumi up --refresh then the program corrects itself; notably it does not show any changes.
If I do pulumi --refresh --yes this also fixes itself subsequently.
Output of pulumi about
N/A
Additional context
N/A
Contributing
Vote on this issue by adding a 👍 reaction.
To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).

In TF this program also has state changes upon refresh, but since TF implies refresh on apply, this quickly auto-corrects itself:
resource "aws_launch_template" "lt" {
  image_id = "ami-0c55b159cbfafe1f0"
  instance_type = "t2.micro"
  key_name = "key1"
  update_default_version = true
}

First state:
# aws_launch_template.lt:
resource "aws_launch_template" "lt" {
    arn                     = "arn:aws:ec2:us-east-1:616138583583:launch-template/lt-034fd5d51ac15a63c"
    default_version         = 1
    disable_api_stop        = false
    disable_api_termination = false
    id                      = "lt-034fd5d51ac15a63c"
    image_id                = "ami-0c55b159cbfafe1f0"
    instance_type           = "t2.micro"
    key_name                = "key1"
    latest_version          = 1
    name                    = "terraform-20240424222151918500000001"
    name_prefix             = "terraform-"
    tags_all                = {}
    update_default_version  = true
}

second state:
# aws_launch_template.lt:
resource "aws_launch_template" "lt" {
    arn                     = "arn:aws:ec2:us-east-1:616138583583:launch-template/lt-034fd5d51ac15a63c"
    default_version         = 1
    disable_api_stop        = false
    disable_api_termination = false
    id                      = "lt-034fd5d51ac15a63c"
    image_id                = "ami-0c55b159cbfafe1f0"
    instance_type           = "t2.micro"
    key_name                = "key1"
    latest_version          = 1
    name                    = "terraform-20240424222151918500000001"
    name_prefix             = "terraform-"
    security_group_names    = []
    tags                    = {}
    tags_all                = {}
    update_default_version  = true
    vpc_security_group_ids  = []
}


Allow creation of Observable from EventSource (server-sent events): enhancement

RxJS version: 5.0.0-beta.1
Additional information: This is a request for enhancement.
It would be nice to have an operator to create Observables from EventSources from server-sent events.
Is is planned for a future version of RxJS? If so in which version?
If that feature is already available, maybe a relevant section could be added to the documentation.

Where is the documenation for the "from" operator?
The following link: from-static-method just links to the top of the page...

@balteo Please consider documentation is not complete, still being evolved over time.
For fromEventSources I think it's yet migrated from https://github.com/Reactive-Extensions/RxJS-DOM/blob/master/doc/operators/fromeventsource.md, maybe considerable to place under dom as same as RxJS4.

Hi OJ Kwon,
Do you mean it is migrated or it is not yet migrated?
Can I use it?
Regards,
Julien.
2016-04-25 9:29 GMT+02:00 OJ Kwon<EMAIL_ADDRESS>
@balteo https://github.com/balteo Please consider documentation is not
complete, still being evolved over time.
For fromEventSources I think it's yet migrated from
https://github.com/Reactive-Extensions/RxJS-DOM/blob/master/doc/operators/fromeventsource.md,
maybe considerable to place under dom as same as RxJS4.
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/ReactiveX/rxjs/issues/1644#issuecomment-214181336

yet migrated

: not yet, sorry for confusion.

No problems. I'll wait for it to be available. Any timeframe?
2016-04-25 9:38 GMT+02:00 OJ Kwon<EMAIL_ADDRESS>
yet migrated
: not yet, sorry for confusion.
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/ReactiveX/rxjs/issues/1644#issuecomment-214186025

I am also interested in seeing this ported to 5.0.

+1

https://github.com/Reactive-Extensions/RxJS-DOM/blob/master/doc/operators/fromeventsource.md

@zh99998 that's the whole point of the discussion: it is in the old (v4) rxjs but not in the new (v5).
@kwonoj do you think it's going to be implemented? :)

@mattpodwysocki Are PRs welcome for this?

I would think that a PR is welcome for this @mattbrunetti, go for it! If it doesn't get accepted, we can always make it a separate node package.


Legend - for InterMine

Is it possible to have the legend on the viewer InterMine is using?

There are a variety of things you can copy from the projects demo file to get a legend.
The glyphs to make the interactor type table are in /demo/svgForKey.
I have re-enabled code to draw a legend of features/ domain annotations in the SVG and merged it into MIComunity master (its only a change to the index.html demo file), see: https://github.com/MICommunity/interaction-viewer/blob/568197ab9a4055c4e453710219b0fbb16cdc4dcc/index.html#L127-#L162
The code for the html-table-based legend Complex Portal uses is in there also (commented out in the middle of it in a not very tidy way).

@julie-sullivan did you get a legend?


Deploy script for bridge contract on tlbc

Current WIP in https://github.com/trustlines-protocol/blockchain/tree/feature/bridge-deploy
Next Steps:

Install contract dependencies via NPM (poa-bridge-contracts folder)
Compile via truffle (see package.json)
Deploy via Python deploy tools

Added the updated makefile & deployer scaffold to the branch.


Add simulated torques to Cassie out LCM message

Simulated torques need to be populated in the Cassie output message.

Issue created in error--this functionality already exists.


Fix ai binding logs property

This re-adds a removed property as backwards compatibility, removed in the last release

Hi, I saw the workers-sdk test broken by the removal of this property. Just curious, if you can share, is there any particular reason the logs were removed/hidden in the first place?
Something like AI is much more complicated than say KV - there's not much to log in the case of KV (put or delete, that's it), but with AI, many things can happen, and logs were useful for me (and probably other folks who found them).

FYI we've decided to hold off upgrading workerd in wrangler until this PR lands and is released https://github.com/cloudflare/workers-sdk/pull/5752#issuecomment-2102288398


use simdjson to enhance the performance of json parsing

Description
simdjson is a very popular json processing library that uses SIMD instructions. In our initial test, using simdjson to implement the jsonExtract function in (velox/functions/prestosql/json/JsonExtractor.cpp) can get about 50X+ speedup while using twitter.json. So can we try to integrate simdjson into Velox to enhance the json processing performance?

CC: @kagamiori @Yuhta @oerling
@wanweiqiangintel Would you like to send out a PR?

Sure, I will wrap up the code and submit the PR as soon as possible.

@wanweiqiangintel Looking forward to faster json parsing. Please, check out https://github.com/facebookincubator/velox/blob/main/CONTRIBUTING.md and https://github.com/facebookincubator/velox/blob/main/CODING_STYLE.md to familiarize yourself with the coding style and contributing guidelines.

This is done now.
@wanweiqiangintel We found some gaps in simdjson wrt to parsing invalid JSON. Would you take a look at https://github.com/facebookincubator/velox/discussions/6597


HI anyone can help me??

I have an application in nodejs that worked.
Then I created another application that had to be similar to the first one but when I created the other one suddenly the original one stopped working.
I deleted the new one.
the old one does not go and I have always been mistaken:an instance of the application has been stopped abnormally: APP & # x2F; PROC & # x2F; WEB: Exite.
the app use discovery.
when i click on the url i see: 503 service unavaible when i am lucky , and always i see error 404 that the url doesn't exist
PLS HELP MEEEEE

@LabswITALCONSULTA is your issue related to this code pattern? If so, please provide more details.

@rhagarty i dont see any code pattern in your ansnwer. do you mean to say that you want to see the application code?

closing as off-topic


macOS - No way to customize?

I am not seeing any possible way to customize the statuses on macos for itunes richpresence, am i doing something wrong???

it's also not recognizing when the song i listened to changed

if it isn't customizable like i thought it was then when will customizable statuses be available??


Windows support

This program only handles Linux autocompletion. It is necessary to create the autocompletion for windows as well

Closed by Windows Support PR.


Improvements to Instance.Parent documentation

Changes
Added a common piece of undocumented knowledge: that changing properties while an instance is parented can be expensive and trigger more work.
e.g. https://devforum.roblox.com/t/psa-dont-use-instancenew-with-parent-argument/30296
But also based on my observations from using the engine and from looking at the microprofiler and seeing things like GUI layouting work being performed after reading/changing a property.
Also improved the wording of the Object Replication section so that it is clearer, as I couldn't understand what it is was saying the first time I read it.
Checks
By submitting your pull request for review, you agree to the following:

[X] This contribution was created in whole or in part by me, and I have the right to submit it under the terms of this repository's open source licenses.
[X] I understand and agree that this contribution and a record of it are public, maintained indefinitely, and may be redistributed under the terms of this repository's open source licenses.
[X] To the best of my knowledge, all proposed changes are accurate.

Hey @EmeraldSlash, it seems like this is covered pretty well in the Object Replication section right below the new paragraph. Is there some additional nuance here that I'm missing?

That section only refers to replication. But there are other cases which have nothing to do with replication where parenting order is important and where changing properties can incur additional work. So that's why I think it's a good idea to document that behaviour more generally.
I agree as it's written now there's a bit of duplication.. I wanted to keep the changes minimal and not rewrite the whole section or remove emphasis on the replication part which is still important.

Sounds good, thanks. I might give it a pass later to try and deduplicate, but that's no reason not to take the improvement now. Thanks again!


Traefik v2 support

Hey, I think this needs to be adjusted for traefik v2, I haven't looked much into details yet but I can see that the acme.json format is different now, the dumpcerts.sh script is gone (they say to use https://github.com/ldez/traefik-certs-dumper instead), and maybe something else has changed.
Will you be able to look into this? :)

Yeah, i just realized this today. I think I won't be able to look into this in the near future. I decided to stay on 1.7 for the moment. But pull requests are welcome at any time ;)

OK 👍 I've started to look into migrating to v2, but maaan it's a lot of work! If I manage to get to this before you do, I will send the PR 😉

Yeah, that scared me too :D Nice, I am looking forward to it!

Sorry for possible necroposting. It seems like you haven't taken care of Traefik v2 yet.
If you still need a Docker image, I just created one based of https://github.com/ldez/traefik-certs-dumper and mailu/traefik-certdumper.
https://github.com/humenius/traefik-cert-dumper
If I did not notice that, then I'm sorry in advance. :D

I have recently gotten to finally upgrade to Traefik v2, and I confirm that @humenius's repo works well. I think it makes sense to combine our efforts instead of having several repos doing the same thing, so I will close the issue.
Thanks to both of you @jovobe and @humenius for your help!


Update CLI extensions available doc

Update CLI extensions available doc.
Triggered by Azure/azure-cli-extensions - TRAVIS_BUILD_ID=380881784
https://github.com/Azure/azure-cli-extensions/commit/0dfc6120cf46e0e761c0cfb7ee91d11d170ac417

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-conceptual/azure-cli-extensions-list.md
:white_check_mark:Succeeded
View (azure-cli-latest) View (azure-cli-2017-03-09-profile)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Building on Mint 16 (Ubuntu 13.10)

This thread will document the troubles and solutions to said troubles of building on Mint 16.
Make you sure you have G++ installed. Haven't looked to see if you need a C++11 compliant compiler, but you the repos should have G++4.8.1, which does support most, if not all, of C++11 (think it still needs  implemented>. I'm guessing this does not require C++11 due to the use of typedefs, and the VC++2010 requirements on Windows.
The npm package out of the repos is version 1.2.x. To upgrade, all you have to do is sudo npm install -g npm and you'll then have 1.4.10.
 System Linux 3.11.0-12-generic
gyp ERR! command "node" "/home/jready/Development/atom/build/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/jready/Development/atom/apm/node_modules/atom-package-manager/node_modules/runas
gyp ERR! node -v v0.10.15
gyp ERR! node-gyp -v v0.13.0
gyp ERR! not ok
npm WARN package.json<EMAIL_ADDRESS>No repository field.
 System Linux 3.11.0-12-generic
gyp ERR! command "node" "/home/jready/Development/atom/build/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/jready/Development/atom/apm/node_modules/atom-package-manager/node_modules/keytar
gyp ERR! node -v v0.10.15
gyp ERR! node-gyp -v v0.13.0
gyp ERR! not ok
chdir(): No such file or directory
There are also a ton of compiler warnings about unused typedefs. You can safely ignore those.
Will be looking into this error, and will report back with what I find.

https://github.com/atom/atom/blob/master/docs/build-instructions/linux.md has much more complete build instructions now (including all of the dependencies you'll need first to build Atom).


Question: Serverless distribution with custom plugins?

What is the correct way to build the Lamda distribution while using a custom plugin?

Hey @benbooth493, to get something exactly similar to the official build you need to copy the contents of https://github.com/Jeffail/benthos/blob/master/cmd/serverless/benthos-lambda/main.go to a file and include your plugin imports, then build it with:
GOOS=linux go build ./yourfile.go

The copy/paste is a bit annoying so I'll flag this issue under documentation and look into making it simpler, with an example in the https://github.com/benthosdev/benthos-plugin-example repo.

Got it simplified in this commit: https://github.com/Jeffail/benthos/commit/dad5d08eae97f65e7f2328fc296968fc83d6233b
I'll add an example to https://github.com/benthosdev/benthos-plugin-example next.

Updated the benthos-plugin-example with the required instructions: https://github.com/benthosdev/benthos-plugin-example#serverless

Excellent! Thanks for the info.

API changes released: https://github.com/Jeffail/benthos/releases/tag/v2.12.0


Added Update-IconUrl script

Added a script to easily update or add new icon url to nuspec files
Works for a single package, or passing without a name tries to update all packages which have an icon matching the package name.

Can you please add regular Powershell documentation ?
Is it idempotent ?
Can it handle situation when package is moved over repository. If I, for example move my packages here, icons will point to my repository and {user}{repo} should be changed.

Can it handle situation when package is moved over repository. If I, for example move my packages here, icons will point to my repository and {user}{repo} should be changed.

@majkinetor with this script, it would require you to move the icons over as well.
then run Update-IconUrl.ps1 "Insert Package Name" which then searches for the
matching icon with the same name as the package, and updates the commit hash (committing the icon if it hasn't already) and updates the rawgit url with that commit has and the specified GithubRepository parameter (defaults to chocolatey/chocolatey-coreteampackages)

Can you please add regular Powershell documentation ?

I'll look into trying to get some powershell documentation for this

Could you please add some examples, those are more telling then all the docs combined.

@majkinetor something like that perhaps?

Thanks for the work. I will try it as soon as I can, if somebody bits me to it let us know here.

ok, let me know if there is any problems, I'm still in the process of learning powershell so there is bound to be some hiccups

@AdmiringWorm going to go ahead and pull this in, so that we can take it for a spin, we can PR again if additional changes are required.

sure thing


initial working implementation of JDBC tracing via p6spy

This PR address #201. It is ready for review, but is not ready to be merged.  Outstanding issues:

[X] p6spy needs to release a version of 3.0.0 to Maven Central (the build will fail until this is resolved)
[ ] address #206 (optional) #

Thanks for raising this. one thing to think about: should we call this brave-p6spy?
The code is centered around p6spy, which is jdbc focused, but a change to p6spy might warrant a change here (ex if an incompatible version update happens). On the other hand, folks may not recognize p6spy as a jdbc library, so naming it brave-p6spy might not help people understand what it does.
so it is a choice between
brave-jdbc
brave-p6spy
brave-jdbc-p6spy

If we think brave-jdbc is too general then I would probably vote for changing it to brave-jdbc-p6spy

We could do like brave-http. That's a generic library that's then again used by actual http libraries, the dependency is like this:
application -> brave-okhttp -> brave-http -> brave-core
We could do something similar:
application -> brave-p6spy -> brave-jdbc -> brave-core

we could introduce brave-jdbc (or brave-sql) to normalize how the span looks, if we ever end up having operation names not being "query" or similar. Ex. this is duplicated between mysql and here.
While I think this could be the best way for folks who cannot control libraries on top of JDBC drivers, I hesitate about calling this brave-jdbc. Ex. things like Jooq are nicer when you can control the application layer, as it doesn't require static (or otherwise) collaboration. In either case, the thing that avails you the tracing interceptor is the library, not JDBC. If one day JDBC has an interceptor, well that would be brave-jdbc.
long story short, I like brave-p6spy best despite it requiring people to know p6spy is a thing. I think it is probably good that they know this, since that's the thing doing the work anyway.

on the code and docs itself, looks fine and ready to go once minor comments are addressed.

@ewhauser you back from holiday? :D

Comments addressed.  Awaiting resolution on #206 (could be addressed separately)

Looks great! thanks for wrapping this up.


How to judge if the image is normal or anomaly？

In the inference stage，How to judge if the image is normal or anomaly？How to calculate the anomaly score for a image？

I think the image-level score is the max pixel score. And you need a threshold to say whether an image is normal or not.


New post, introduction to microservices usage patterns.

Not ready to merge (sample code missing). Sending PR as a RFC.

I'm considering removing the text comparing microservices to SOA and just leaving the table.

I will try to add a simple diagram after finishing with the code.

Sample code added (tested).

True, context data is usually required. However, I'm not sure how to show it in this case. The whole point about an API gateway, other than authentication, is working as a "translation layer" between the data representation of the services behind it. So context should be provided in a microservice-dependent way. What I could do is assume (and put a comment about it) that all microservices behind this gateway receive this context as an additional HTTP header. We could say that "for simplicity" we have not shown how it could be done for other service types, and leave that for a future article (for instance, how to work with an AMQP based service behind the gateway).

Fine grained authorization is certainly a common practice. I decided to leave it out to make the post as small and simple as possible. Should we leave that for a future article? I will probably expand on the gateway example when dealing with non-HTTP services. We could add fine-grained access as a feature as well. Or possibly do a separate post in the series about it. Thoughts?

What I am missing here is a real world example. Something I can connect with.

What I am missing here is a real world example. Something I can connect with.

Examples we have are:

Blog subscribe: https://github.com/auth0/webtask-scripts/blob/master/intercom/create-blog-user.js
Blog Slack Bot: https://github.com/auth0/webtask-scripts/blob/master/intercom/new-blog-user-to-slack.js
Mongo save: https://github.com/auth0/webtask-scripts/blob/master/intercom/customer-upsert.js

None of them have Authentication though. Maybe we can create a real usecase like @sandrinodimattia did on his blogpost about Logging & Debugging on React, and create the sample for that.

The way it will work in webtask will be as you described. The webtask frontend proxy checks the Authorization header, valaidates the JWT and if valid sends the claims through an HTTP header to the underlying sandbox. The sandbox makes it available to the webtask as context.user.

Did some updates in relation to what we discussed. We are still missing the example, I was thinking of doing a product list microservice? As in "request products in categrory with filters", get a list (a la shopping cart page). Seems a bit too common, though. Any ideas?

Added example. Will send example paragraphs to Wordy.

Integrated latest wordy changes, awaiting comments.

Latest view of the page.

Latest changes, new example compatible with webtasks.

Minor changes to webtask example (now tested).

Implemented suggestions.


Trying to build 0.17.32 locally, illegal option for /bin/sh

Hi,
I'm trying to build the image locally by cloning this repo and using 'docker build -t test .' inside the 017 directory. The image building goes ok but for some reason the container is never started, when I type "docker run -t -d -v :/factorio fact'. The container itself runs into and error which is best described by the image below.
I've narrowed down the error to the entrypoint script. Anyone got any idea what's going on? Could it be the "#!/bin/sh -x" part at the top?

-- Rawh

Hmm all .sh script have the same issue. When I copy it's content and execute it manually however, there are no errors / issues.

On what system did you build your image?
I tested it with
docker build -t test .

and
docker run --rm -it -v :/factorio test

and got it running with no problems.
The shebang #!/bin/sh -x just tells linux to execute the script with that command. -x shows you the executed commands.

Seems the bug is gone with building 0.17.36 locally, which works fine. As does starting the container! No clue what triggered it, glad it's gone though :)


bevy_ecs_tilemap generation?

This looks really interesting. Would it be within the scope of the project to generate colliders from bevy_ecs_tilemap tilemaps? Could perhaps be added behind a feature flag?

@johanhelsing I really like the idea that this crate can eventually support generating colliders from a number of starting points. I was imagining my next target might be meshes in GLTF files but I'm happy to dig into how generate colliders for tilemaps instead. I'd probably need to tap you for some testing once something's preliminarily in place though because I don't have much experience using tilemaps myself.
alternatively I'd welcome for a PR with this feature if you feel up for making one!

@johanhelsing i'm working on a game which uses tiled map editor for tilemaps making and bevy_ecs_tilemap for loading using this helper and i modified it using the image crate to slice tilsets and then generating collider
here's the code if you wanna take a look
I use the images transparency ratios to know if it's some grass or a full block and determine if a collider is needed or not
here's what it looks like

and for some reason my slopes aren't generated correctly so I might open an issue


python311Packages.aioecowitt: 2023.01.0 -> 2023.5.0

Diff: https://github.com/home-assistant-libs/aioecowitt/compare/refs/tags/2023.01.0...2023.5.0
Changelog: https://github.com/home-assistant-libs/aioecowitt/releases/tag/2023.5.0
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

@ofborg eval

Result of nixpkgs-review pr 232032 run on x86_64-linux 1

5 packages built:

home-assistant-component-tests.ecowitt
python310Packages.aioecowitt
python310Packages.aioecowitt.dist
python311Packages.aioecowitt
python311Packages.aioecowitt.dist


Invalid token specified: Cannot read property 'replace' of undefined

I get Invalid token specified: Cannot read property 'replace' of undefined:
Object.<anonymous> ../node_modules/jwt-decode/lib/index.js 9:0
Showing original source content from sourcemap
'use strict';
 var base64_url_decode = require('./base64_url_decode');
 function InvalidTokenError(message) {
  this.message = message;
}
 InvalidTokenError.prototype = new Error();
InvalidTokenError.prototype.name = 'InvalidTokenError';

module.exports = function(token, options) {
    if (typeof token !== 'string') {
      throw new InvalidTokenError('Invalid token specified');
    }

Can i get any help ASAP please?!

Having the exact same problem...

I was having this issue when using jwtDecode with a token issued from our Auth0 tenant.
Ensure your "audience" option in Auth0 exists and is correct. If it is not, you get back a token in the incorrect format.

I use jwtDecode for dispatch token to redux store as bellow:
store.dispatch(loginUserSuccess(jwtDecode(Auth.getToken())));

and I use HS256

Same problem here.

@aminsource Are you using Auth0 lock in your front end application? If so, what configuration options are you passing in when you initialize the lock component?

This thread solved the problem.
https://stackoverflow.com/questions/43886878/auth0-and-vue-error-in-render-function-invalidtokenerror-invalid-token-speci

In my case, I'm attempting to protect the client-side app against "corrupt" cookies (tokens that aren't in JWT format) in the event a user messes with their cookies. In the moment I'm decoding, if the token can't be parsed, the error thrown breaks the app, despite my attempt to catch.
export const isAccessTokenExpired = (): boolean => {
  if (!isAccessTokenSet()) {
    // if it doesn't exist, we'll also consider it expired
    return true;
  }

  // ensure it's actually JWT format
  try {
    jwt_decode(getAccessToken());
  } catch (error) {
    console.log('👾 invalid token format', error);
    return true;
  }

  const token = jwt_decode(getAccessToken());
  const { exp } = token;
  return Math.round(Date.now() / 1000) >= exp ? true : false;
};

Upon attempting to decode a non-JWT format value, the catch triggers, but the error still shows as Uncaught and breaks runtime:
👾 invalid token format InvalidTokenError {message: "Invalid token specified: Cannot read property 'replace' of undefined"}
InvalidTokenError {message: "Invalid token specified: Cannot read property 'replace' of undefined"}
message: "Invalid token specified: Cannot read property 'replace' of undefined"

I had same problem as well, If you are login to the App and you did play with token in backend(postman). then token mismatch might happen so you take recent token from postman and add it to the localstorage in the browser, which was in undefined.

Is this going to be any fix for this? My error -
"Invalid token specified: Cannot read property 'replace' of undefined" }
{ InvalidTokenError
at Object. (c:\Users\w\strapi-deliveroo\frontend\node_modules\jwt-decode\lib\index.js:9:31)
at Module._compile (internal/modules/cjs/loader.js:805:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:816:10)
at Module.load (internal/modules/cjs/loader.js:672:32)
at tryModuleLoad (internal/modules/cjs/loader.js:612:12)
at Function.Module._load (internal/modules/cjs/loader.js:604:3)
at Module.require (internal/modules/cjs/loader.js:711:19)
at require (internal/modules/cjs/helpers.js:14:16)
at Object.jwt-decode (c:\Users\w\strapi-deliveroo\frontend.next\server\static\development\pages\index.js:836:18)
at webpack_require (c:\Users\w\strapi-deliveroo\frontend.next\server\static\development\pages\index.js:23:31)
at Module../lib/auth.js (c:\Users\w\strapi-deliveroo\frontend.next\server\static\development\pages\index.js:503:68)
at webpack_require (c:\Users\w\strapi-deliveroo\frontend.next\server\static\development\pages\index.js:23:31)
at Module../hocs/defaultPage.js (c:\Users\w\strapi-deliveroo\frontend.next\server\static\development\pages\index.js:356:67)
at webpack_require (c:\Users\w\strapi-deliveroo\frontend.next\server\static\development\pages\index.js:23:31)
at Module../pages/index.js (c:\Users\w\strapi-deliveroo\frontend.next\server\static\development\pages\index.js:644:75)
at webpack_require (c:\Users\w\strapi-deliveroo\frontend.next\server\static\development\pages\index.js:23:31)
message:

I'm only getting this error in safari, chrome an FF work

I feel it is only happening because token is set to undefined. Either clear out that token from inspect menu and refresh your application. It may work then.

Hey friends,
I've been trying to reproduce all of the errors mentioned above. When using the decode function, make sure:

The token is not undefined
The token is a valid JSON Web Token,
You remove the bearer authentication type, as this is not part of the token but indicates the authentication scheme
The token header and payload are valid base64 encoded, this means the token can only contain these characters:  a–z, A–Z, 0–9, and -_.
When using a try/catch block to catch the invalid token error, make sure you're not trying to decode the token or header somewhere else in your code, as the error will only be caught in the try/catch block.

In order re view the page without error goto inspect element of browser and find APPLICATIONS tab just beside the tabs like Elements, Console.
Find Local Storage there.
And Clear by right clicking

Hey, I can reproduce this error when I do automated tests with cypress, is anyone else going through this?

For future reference: this error occurs when the token does not adhere to the expected format of a jwt token
For example I ran into this in unit tests where the token was mocked with something like "FAKE_TOKEN"
Currently this lib assumes a valid syntax for the token meaning the token must include a single dot (.) and the part after the dot must be a valid base64 encode otherwise you'd get these errors.
Adding a check on undefined in base64_url_decode would solve this and could give developers a good clue to what is going wrong.
For now I replaced my FAKE_TOKEN with FAKE.eyJmYWtlIjogdHJ1ZX0= which causes the JwtDecode to succeed