Jukebox UI update

Description

I changed the background and font colors, and added music notes and clefs that float up from the bottom of the screen. They go faster when music is playing!
Test Instructions

Ticket Links

Readiness Checklist

[ ] I have run make format to format the changes
[ ] I have compiled the firmware and the changes have no warnings
[x] I have compiled the emulator and the changes have no warnings
[ ] I have run make cppcheck and checked that cppcheck_result.txt has no warnings for the changes
[ ] I have added doxygen comments to any code used by more than one Swadge mode. This includes /*! \file comments with Design Philosophy, Usage, and Example sections for new headers.
[ ] I have run make docs and checked that doxy_warnings.txt has no warnings for the new code

There were already some notes from the sequencer, but we've got enough space for both sets.
Also here's the list of MIDIs to load up (but maybe skip menu/secret.mid)
2048/Sounds/lullaby_in_numbers.mid
2048/Sounds/sndBounce.mid

bigbug/fromBreakout/brkBgmCrazy.mid
bigbug/fromBreakout/brkBgmFinale.mid
bigbug/fromBreakout/brkBgmPixel.mid
bigbug/fromBreakout/brkBgmSkill.mid
bigbug/fromBreakout/brkBgmTitle.mid
bigbug/fromBreakout/brkGameOver.mid
bigbug/fromBreakout/brkGetReady.mid
bigbug/fromBreakout/brkHighScore.mid
bigbug/fromBreakout/brkLvlClear.mid
bigbug/fromBreakout/sndBounce.mid
bigbug/fromBreakout/sndBreak2.mid
bigbug/fromBreakout/sndBreak3.mid
bigbug/fromBreakout/sndBreak.mid
bigbug/fromBreakout/sndBrk1up.mid
bigbug/fromBreakout/sndBrkDie.mid
bigbug/fromBreakout/sndDropBomb.mid
bigbug/fromBreakout/sndTally.mid
bigbug/fromBreakout/sndWaveBall.mid
bigbug/music/BigBug_Boss.mid
bigbug/music/BigBug_Dr.Garbotniks Home2.mid
bigbug/music/BigBug_Dr.Garbotniks Home.mid
bigbug/music/BigBugExploration.mid
bigbug/music/Big Bug Hurry up.mid
bigbug/music/BigBug_Space Travel.mid
bigbug/sounds/BigBug - Car 1.mid
bigbug/sounds/BigBug - Car 2.mid
bigbug/sounds/BigBug - Car 3.mid
bigbug/sounds/BigBug - Collection.mid
bigbug/sounds/BigBug - Egg 1.mid
bigbug/sounds/BigBug - Egg 2.mid
bigbug/sounds/Bump.mid
bigbug/sounds/Dirt_Breaking.mid
bigbug/sounds/Harpoon.mid
bigbug/sounds/r_health.mid
bigbug/sounds/r_item_get.mid
bigbug/sounds/r_p_ice.mid

cGrove/Audio/BGM/Chowa_Battle.mid
cGrove/Audio/BGM/Chowa_Dancing.mid
cGrove/Audio/BGM/Chowa_Meadow.mid
cGrove/Audio/BGM/Chowa_Menu.mid
cGrove/Audio/BGM/Chowa_Race.mid

credits/hd_credits.mid

jukebox/banana.mid
jukebox/Fairy_Fountain.mid
jukebox/Fauxrio_Kart.mid
jukebox/Follinesque.mid
jukebox/gamecube.mid
jukebox/hotrod.mid
jukebox/ode.mid
jukebox/pong/block1.mid
jukebox/pong/block2.mid
jukebox/pong/gmcc.mid
jukebox/stereo.mid
jukebox/yalikejazz.mid

menu/secret.mid

pango/sounds/bgmGameOver.mid
pango/sounds/bgmGameStart.mid
pango/sounds/Pango_Faster.mid
pango/sounds/Pango_Game Over.mid
pango/sounds/Pango_High Score.mid
pango/sounds/Pango_Jump Start.mid
pango/sounds/Pango_Level Clear.mid
pango/sounds/Pango_Main.mid
pango/sounds/Pango_Speed.mid
pango/sounds/snd1up.mid
pango/sounds/sndBlockCombo.mid
pango/sounds/sndBlockStop.mid
pango/sounds/sndDie.mid
pango/sounds/sndMenuConfirm.mid
pango/sounds/sndMenuDeny.mid
pango/sounds/sndMenuSelect.mid
pango/sounds/sndPause.mid
pango/sounds/sndSlide.mid
pango/sounds/sndSpawn.mid
pango/sounds/sndSquish.mid
pango/sounds/sndTally.mid

swadgeHero/songs/sh_bleed.mid
swadgeHero/songs/sh_cgrove.mid
swadgeHero/songs/sh_crace.mid
swadgeHero/songs/sh_credits.mid
swadgeHero/songs/sh_cremulons.mid
swadgeHero/songs/sh_devils.mid
swadgeHero/songs/sh_gs_credits.mid
swadgeHero/songs/sh_ocean.mid
swadgeHero/songs/sh_pain.mid
swadgeHero/songs/sh_pango.mid
swadgeHero/songs/sh_revenge.mid
swadgeHero/songs/sh_starfest.mid
swadgeHero/songs/sh_sunrise.mid
swadgeHero/songs/sh_wakeman.mid

test/stereo_test.mid

ultimateTTT/uttt_cursor.mid
ultimateTTT/uttt_marker.mid
ultimateTTT/uttt_win_g.mid
ultimateTTT/uttt_win_s.mid


 Such as fix capitalization for 'JavaScript'

See #112


Remove deprecated API

Part of vaadin/components-team-tasks#289
Fixes #157

This change is

Reviewed 5 of 5 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved, some commit checks failed.

Comments from Reviewable

Reviewed 5 of 5 files at r1.
Review status: :shipit: all files reviewed at latest revision, all discussions resolved, all commit checks successful.

Comments from Reviewable


How to activate lockscreen

Hi, I stumbled over unlaucher after reading https://maximevaillancourt.com/blog/turning-my-smartphone-into-a-boring-tool. There is a screenshot of the lock screen further down the article.
I've installed unlaucher from f-droid and set it as my default home app. But somehow I still have the stock lock screen and not the screen shown in the screenshot. How do I activate the unlauncher lock screen?

same issue here..did you ever manage to fix it? @faebser

Sorry, I never heard anything or manage to fix it.

no problem, my solution so far: create a 100% black wallpaper and set that. It doesn't show the app names on unlauncher's home but at least it's black.

Sorry for the delayed response here. Somehow this issue slipped past me.
As was previously mentioned, there is no lock-screen functionality included in Unlauncher.  The effect in the mentioned image was created by setting the wallpaper to a black image.
Honestly, though, Unlauncher probably should support automatically setting the wallpaper. I have opened #54 for this enhancement.


Update README.md - add probability-cheatsheet, ds-cheatsheets

( GH issue #127 )

#121

https://github.com/hangtwenty/dive-into-machine-learning/issues/29

https://github.com/hangtwenty/dive-into-machine-learning/pull/135


Move sampler and command queue compatibility query tests to the main api suite

...and mark tests that exercise new-style entrypoints as requiring 2.0
These tests give us (or rather will give us once made exhaustive, see
#508) coverage for both new-style and old-style creation entrypoints,
making the entrypoint used in other tests irrelevant as long as the
old-style entrypoints are required to be implemented.
Also get rid of duplicate compatibility tests that were in the same file.
Contributes to #494.
Signed-off-by: Kévin Petit<EMAIL_ADDRESS>

This is just shuffling code around as agreed on the WG calls, merging to get forward progress.


Version switcher for docs

Problem description
As a maintainer of many projects, it is difficult to keep all projects up to date and some of my projects are stuck at particular provider versions.
Reading the docs then leads to parity issues because the page only shows the latest version. I often need to know when the resource was updated or introduced to make the provider update process easier.
Suggestions for a fix
Add a version switcher to the registry as as terraform.

OT: it would be great if aws-provider could use the changelog file instead of github releases, because one cannot search releases for text.

Thank you @1oglop1 for filing this issue. We do have plans to have plans to enable our registry to house docs for multiple versions of packages in the near future.

Moving this over to the registry repo along with parent issue.


Investigate Convergence

Cannot achieve tight equality constraint convergence in portfolio optimization problem (only ~1e-4).

Try testing with portfolio optimization problem with known solution.


Prevent pop up from closing when a link in the tour content is clicked.

Hi, I am using the tour and have a pretty big one running right now. I disable all pointer events and scrolling when the tour is running except in some of the tour steps my content contains links, so those are being made clickable by me. However when I click the link (redirects to new page "target=_blank" in html tag) the tour popup closes and the tour is stuck (obvious since I disable all pointer events). This is some very annoying behavior is there a fix?

Managed to fix the issue by adding onclick="event.stopPropagation();" to the wrapping div of my buttons.


GAL-55 enable Community Pages for every collection except artblocks

This PR enables Community Pages for every collection except Art Blocks, which we need custom support for due to their collections existing on a single contract.

found another weird one
my flower plastic NFT: https://gallery-git-kaito-community-for-all-gallery-so.vercel.app/robin/26LkQo7C1PbiISCW8Oas795A4Xb/26Lk2YDmcfAOYQj55EY69CSMyPS
leads to a community called Turf Objects, which has a huge community: https://gallery-git-kaito-community-for-all-gallery-so.vercel.app/community/0x495f947276749ce646f68ac8c248420045cb7b5e
supposedly the contract address is 0x495f947276749ce646f68ac8c248420045cb7b5e, which is confirmed by the opensea URL for flower plastic: https://opensea.io/assets/0x495f947276749ce646f68ac8c248420045cb7b5e/34040954541051533024779718485292222057381029575705787946254011542358001188865?ref=0x8914496dc01efcc49a2fa340331fb90969b6f1d2
seems like this is another artblocks-like umbrella contract.
i dug it up on etherscan: https://etherscan.io/address/0x495f947276749ce646f68ac8c248420045cb7b5e
and indeed it is a contract specific to opensea.

so maybe we disable this one for now?

okay so i did some more digging and found more umbrella contracts which we should disable:

OS [noted above]: 0x495f947276749ce646f68ac8c248420045cb7b5e
rarible: 0xf6793da657495ffeff9ee6350824910abc21356c
foundation: 0x3b3ee1931dc30c1957379fac9aba94d1c48a5405

for some reason, seems like we don't support these collections:

doodles: https://gallery.so/zeneca/258LnWRFe1BzbbEBIL3N4PyiS3i/225BKSImTuXKhe6l5B5sUGKFjQ2
apes: https://gallery.so/zeneca/22CgNInHMZL1yrZ37rTBLrwvYZg/225BKX8vLJkTM3vjltMbG7drxcL

lol squiggles look funny https://gallery-git-kaito-community-for-all-gallery-so.vercel.app/community/0x059edd72cd353df5106d2b9cc5ab83a52287ac3a

Nice, good looks! updated to disable the other umbrella contracts you listed.
Doodles and Apes should work!  maybe diff environment?
https://gallery-git-kaito-community-for-all-gallery-so.vercel.app/community/0x8a90cab2b38dba80c64b7734e58ee1db38b8992e
https://gallery-git-kaito-community-for-all-gallery-so.vercel.app/community/0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d


First of all, i want to thank the developer for their great effort. Good Job !

First of all, i want to thank the developer for their great effort. Good Job !
Lets consider a case as I need to fix a bug thus i create a new branch (hotfix/new_bug) from my "Develop" branch. While i am fixing the bug, Develop go ahead with lots of commit. Now i want to raise my review in review board which will show the diff in between "Develop" and "hotfix/new_bug"


Tracking of LPs rewards (e.g., as an REST API)

From an Osmosis Labs README:
## Goal
We want the goal of being able to distribute LP rewards every epoch,
without the distribution having to iterate over every single user.
Every pool allows users to bond LP shares, for a time T.
There are different rewards given to users depending on how long
they have bonded their LP shares. For instance, if they have bonded for 7 days,
they get more rewards than if they bond for 1 day.
Further, we must prevent the chain and users from being exposed to DOS vectors in this process.

I need to know my daily historic rewards from the LPs.
I find nowhere on the Osmosis chain activity of how much is added every day at the rewards release time how much OSMO I received from the tokens bonded in the LPs on app.osmosis.zone.
Is it somehow possible to get to this information or does it keep appearing mysteriously on everyone's wallet?
Right now, I started tracking my rewards by having a cronjob that starts every day right before and after the release time, which is necessary to be able to compute the difference of the OSMO balance. I do not consider this a solution, as I won't be able to get the past OSMO rewards.
For this I am using cosmostations API handle cosmos/bank/v1beta1/balances/:
https://lcd-osmosis.cosmostation.io/cosmos/bank/v1beta1/balances/osmo1evdjzy3w9t2yu54w4dhc2cvrlc2fvnptc9nqa2
which provides the following JSON result.
{
  "balances": [
    {
      "denom": "gamm/pool/293",
      "amount": "76237770000000000"
    },
    {
      "denom": "gamm/pool/541",
      "amount": "100000000000000000000"
    },
    {
      "denom": "ibc/27394FB092D2ECCD56123C74F36E4C1F926001CEADA9CA97EA622B25F41E5EB2",
      "amount": "14122"
    },
    {
      "denom": "ibc/655BCEF3CDEBE32863FF281DBBE3B06160339E9897DC9C9C9821932A5F8BA6F8",
      "amount": "1500800"
    },
    {
      "denom": "ibc/987C17B11ABC2B20019178ACE62929FE9840202CE79498E29FE8E5CB02B7C0A4",
      "amount": "2000"
    },
    {
      "denom": "ibc/CD942F878C80FBE9DEAB8F8E57F592C7252D06335F193635AF002ACBD69139CC",
      "amount": "149342"
    },
    {
      "denom": "ibc/F3FF7A84A73B62921538642F9797C423D2B4C4ACB3C7FCFFCE7F12AA69909C4B",
      "amount": "2000"
    },
    {
      "denom": "uosmo",
      "amount": "9356797"
    }
  ],
  "pagination": {
    "next_key": null,
    "total": "8"
  }
}

The best way to get the OSMO Pools rewards is to have a similar handle that extracts the OSMO rewards "magically" from the OSMO chain (I mean the distributed tokens must be recorded somewhere?)
If you have any further information of how we can get to the Pool rewards, that would really help!
EDIT1: Or what would be even better so see the overall historic pool rewards (yearly/monthly/weekly grouping possible) on the osmosis.zone dashboard. So everyone also without coding skills would be able to see the overall rewards.

This is what you are looking for https://github.com/osmotax/osmotax
This gives you the daily osmo received per epoch from rewards for a specified date range.

@czarcas7ic Still, it would be nice to have more non-technical version which would not require one to setup an own database for the rewards. But yes, still much better than nothing!

I agree, this is just a short term solution

If you are only interested in your daily rewards without an exact timestamp, this endpoint is very useful:
https://api-osmosis-chain.imperator.co/lp/v1/rewards/historical/{address}/{symbol}


Additional data

To comfortably replace data we use in the GeoPandas documentation, we would ideally need:

one global dataset
one set of point and polygon data with some mutually exclusive information (like cities and countries we have now)

Since the nybb can be fetched and is already included here, we can still use that one.
Any ideas are welcome.

Hi Martin, what do you mean by global? A dataset that contains some info about all the world?
As for the set of point and polygon data, I think you really mean complementary information (e.g., cities which are located inside countries), more than actually mutually exclusive, right?

Hi Martin, what do you mean by global? A dataset that contains some info about all the world?

Yes. Most of what we have contains only subregions.

As for the set of point and polygon data, I think you really mean complementary information (e.g., cities which are located inside countries), more than actually mutually exclusive, right?

I mean something like countries with country name and population and cities with city name. It should be used as an example of spatial join where you need to use spatial operation to move data from one to the other layer. We do have some chicago data that can be used but would be nice to have a choice there.


Add a comment about deque

As in the title. This aims to give user some context.

I have squashed the commit history and added the reference to the papers used  for the implementation in the README.
I will merge this PR as soon as the checks are done.

The CI failure is just the benchmark run failure. It's being investigated by @bartoszmodelski in #28. That need not block this PR.


[FSDE-1108] Add print support for data-table

The CI pipeline run successfully in https://jenkinsprod.corp.intranet:8443/job/UX-CHI/job/Productive/job/Chi/job/PR-152/1/. :white_check_mark:

You can check this PRs instance in https://f81573e3378c815ce58955d7f8ce48c23f764b5e-chi-pr.enterprise.ctl.io

The CI pipeline run successfully in https://jenkinsprod.corp.intranet:8443/job/UX-CHI/job/Productive/job/Chi/job/PR-152/6/. :white_check_mark:

You can check this PRs instance in https://7e62165e1929b8ff7feec2c49c4f5656ef33f024-chi-pr.enterprise.ctl.io

The CI pipeline run successfully in https://jenkinsprod.corp.intranet:8443/job/UX-CHI/job/Productive/job/Chi/job/PR-152/7/. :white_check_mark:

You can check this PRs instance in https://874bcb14ec15409217295c7666ec70c284a6e006-chi-pr.enterprise.ctl.io

The CI pipeline run successfully in https://jenkinsprod.corp.intranet:8443/job/UX-CHI/job/Productive/job/Chi/job/PR-152/8/. :white_check_mark:

You can check this PRs instance in https://982a6789b3ad90f5baa7af581726d19fcfbf1362-chi-pr.enterprise.ctl.io

The CI pipeline run successfully in https://jenkinsprod.corp.intranet:8443/job/UX-CHI/job/Productive/job/Chi/job/PR-152/10/. :white_check_mark:

You can check this PRs instance in https://fad934b231198277a9fbf665ee8dd7c9d4bfba70-chi-pr.enterprise.ctl.io

The CI pipeline run successfully in https://jenkinsprod.corp.intranet:8443/job/UX-CHI/job/Productive/job/Chi/job/PR-152/11/. :white_check_mark:

You can check this PRs instance in https://b2222ca250b4e8d171dc8d336af0fbdfee232838-chi-pr.enterprise.ctl.io

The CI pipeline run successfully in https://jenkinsprod.corp.intranet:8443/job/UX-CHI/job/Productive/job/Chi/job/PR-152/12/. :white_check_mark:

You can check this PRs instance in https://93fa5ea3253d875ee186ad9888a6f334e021e3ed-chi-pr.enterprise.ctl.io

The CI pipeline run successfully in https://jenkinsprod.corp.intranet:8443/job/UX-CHI/job/Productive/job/Chi/job/PR-152/13/. :white_check_mark:

You can check this PRs instance in https://d819645ef579e69db388eeb84f837bb11507eb2c-chi-pr.enterprise.ctl.io

This is not the ideal solution. It requires more complex functionality for printing.


Beam search capable to run in single session.run

We can get inspiration on entirely reuse the following gist:
https://gist.github.com/nikitakit/6ab61a73b86c50ad88d409bac3c3d09f

Done with #385.


ui: skip drawing invisible lanelines and road edges

Don't think this is an improvement. We should make sure ui always uses the same amount of CPU, regardless of what the model is outputting. Creating all these different cases makes profiling much harder.


[GSSOC '23] PCOS Prediction using XGBoost

Classification of PCOS diagnosis using XGBoost classifier
Using the XGBoost Classifier for prediction of PCOS diagnosis. Including the discussion of how XGBoost actually works and the comparison with the Random Forest Classifier. Project under the Machine Learning heading.

@sand-hanitizer  - you can go ahead! We are assigning you 21 days for this project, after which it will be assigned to someone else if not completed. All the best!
Name the file as: algorithm_dataset.ipynb and link it in the readme of the labeled directory as algorithm - dataset.


Expand baseline profile coverage

Currently only a baseline profile for app startup exists for this app.
To make the most of a BP, user journeys of high improtance should be covered as well.
Can you outline the most important click paths? If so, I can create a baseline profile generator for these as well.

Hi Ben!
Apologies - we didn't notice you'd asked us for click paths. I think there are only 4 or 5 paths in the whole app to begin with, but please let me know if we're not thinking about this in the right way. When launching the app, you land on the chats view, and from there you can:

[Timeline] Click the left option in the bottom nav bar to go to the timeline screen (a vertically scrolling feed of media)
[Settings] Click the right option in the bottom nav bar to go to the settings screen
[Playback] Click into one of the animal chats, and select a video in the thread to go to the playback screen
[Image capture] Click into one of the animal chats, select the capture icon in the bottom left, and take a photo, which then returns you to the messaging screen
[Video capture] Click into one of the animal chats, select the capture icon in the bottom left, and take a video, which leads to the editing screen, then back to the messaging screen after saving the result

I'm not sure there's a strict stack ranking of which paths are the most important, but if I had to make an attempt, I'd personally order them from most to least important as:

Video capture
Timeline
Playback
Image capture
Settings

Thanks for providing these paths.
@yenerm could you take a look and implement baseline profile generators for the top three items on that list?


using new @ActivitiRuntimeBundle for app config

@ryandawsonuk can you please check and merge this one

Codecov Report

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

@@         Coverage Diff         @@
##           master   #7   +/-   ##
===================================
  Coverage       0%   0%
===================================
  Files           6    6
  Lines          46   65   +19
  Branches        6    8    +2
===================================
- Misses         46   65   +19

Impacted Files
Coverage Δ

...rg/activiti/emergencycallcenter/util/RestUtil.java
0% <0%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


ModuleAttributeError: 'SequentialRNN' object has no attribute 'intrinsic_attention'

I'm running a classifer using AWD_LSTM  on fastai2 in Colab. Fastinference is ver .38 installed off of github with pip.
The code:
learn_class.predict(test)
('FALSE', tensor(0), tensor([0.9983, 0.0017]))
learn_class.intrinsic_attention(test)
ModuleAttributeError                      Traceback (most recent call last)
 in ()
----> 1 learn_class.intrinsic_attention(test)
1 frames
/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py in getattr(self, name)
777                 return modules[name]
778         raise ModuleAttributeError("'{}' object has no attribute '{}'".format(
--> 779             type(self).name, name))
780
781     def setattr(self, name: str, value: Union[Tensor, 'Module']) -> None:
ModuleAttributeError: 'SequentialRNN' object has no attribute 'intrinsic_attention'

I need a full reproducer ideally. Did you import the fastinference library?
from fastinference.inference import *

I need a full reproducer ideally. Did you import the fastinference library?
from fastinference.inference import *

no I did
!pip install git+https://github.com/muellerzr/fastinference.git

no I did
!pip install git+https://github.com/muellerzr/fastinference.git

Maybe not, I musted have deleted the import. However when I do import it I get it a different error. I'll close this error and open a new one.

Maybe not, I musted have deleted the import. However when I do import it I get it a different error. I'll close this error and open a new one.


[reorder] handle the case where display fields are out of date (portal version)

This is an other approach than #14 for sharing metadata. Instead we use the React createPortal to render preview via control to get a shared state.
React portal stuff

Passing a ref to the preview element that the CMS renders

export const getPreview = (ref: Ref) => () => <div ref={ref}/>

In control render, pass the above ref to a preview container with the state

<PreviewContainer myRef={previewRef}>
  { renderPreview(order.map(identifier => data[identifier])) }
</PreviewContainer>

Where previewContainer handle the portal-rendering
export const PreviewContainer = ({myRef, children}: PreviewContainerProps) =>
 myRef && myRef.current && ReactDOM.createPortal(children, myRef.current)

To use this method we'll need to change the API from createControl to something like this:
const CustomReorderWidget = createWidget({
  controlListItem: item => <ListComponent item={item} />,
  previewListItem: items => <CustomReorderPreview items={items}/>,
  name: 'custom-reorder'
})

Other changes

Control (widget.tsx) is refactored to a functional component
Moved some logic out from the control with an reducer, not sure about the implementation though, will probably need some review
Saves the order ID in a list instead of objects

In case we'll use this

[ ] Extract control rendering components to a new file control.tsx?
[ ] Merge with updates from #14
[ ] remove state.order and use props.value
[ ] Update tests to handle array of identifiers if we're not reverting this to previous implementation

Bit of update:

I simplifed the data flow like we discussed in #14

Because of this, I opted to use useState instead of useReducer. I also prefer using useState, since it's less verbose

Implement the modal UI you did in #14!

When users haven't set the order yet:

When source collection has been modified:

When the target collection is empty:

Anyway, we'lll probably have to convert this back into a class component. When you click publish, this will happen:

TypeError: this.wrappedControlValid is not a function

We'll address a bunch of check list from #3 once this is merged! I've just added the ability to configure a maxHeight for the component via config.yml

Awesome work @d4rekanguok! It seems to work well and using setState indeed made it more readable.
I had the same problem with saving so we probably need to refactor it to a class component. Is there something else to do before merging? I thought of two tiny edits, see code comments!

Published in<EMAIL_ADDRESS>🎉


Fix typo in config tooltip: focuse -> focus

This was actually supposed to be "Focuses", so I adjusted it. Thanks for pointing it out.


Switches to GitHub Actions

Closes #14
Closes #15

Wow great! I there any way to test this before merging? (i suspect no :D )

I don't think so 😞
But, I promise to fix any issues that will reveal themself after the merging is done!

I take your work for it! :D
Do i need to configure something using the web interface?

Nope, it should be fine as-is

Looks like it works! https://github.com/lona-web-org/lona/actions/runs/1153482025
:tada:

@sobolevn: whoooop! :)) I can remove the travis badge than.
Thank you! I fiddled with this problem since the move to the new organization. Do you want some stickers for your work? :)
https://www.reddit.com/r/lona_web_org/comments/p5i7ch/we_got_stickers/

Sure! I love stickers! What are the next steps? 🙂

DM me on reddit or send me a mail to<EMAIL_ADDRESS>:)

@sobolevn codecov still seems to don't work but the organization showed up in the codecov webinterface. I think i need to set a environment variable with a secret from codecov. Where in the github action config would i set such an variable?

@fscherf no, you don't have to set any variables. I don't do this. But, you possible have to go to your codecov account and add this project from GitHub.


UERANSIM deployment through Ansible

This PR consist of the Ansible playbook to deploy UERANSIM as a container using a custom image. We will refine the image and create a request to add it under the omec-project repo. Also we are creating a README for this module and will keep updating the repo with time.

@llpeterson I have updated the PR with the suggested changes. Please help me with the review comments.

May be a few nits to fix as you debug, but this looks pretty good.


deploy solver in separate file

move deploy solver in separate file
and no_inst should import from that file

closed with https://github.com/ergs/d3ploy/pull/61


feat: Add production VEDA bucket to staging.

fixes: https://github.com/NASA-IMPACT/veda-jupyterhub/issues/53
TODO: deploy, verify permissions, add to production and other hubs that should have access

@wildintellect lmk when this is ready to be applied and i will task someone!

ty, I'll ask @sgibson91 to merge and apply these.

Successfully applied!


initial attempt to fix parallel execution problem

Am not confident in the fix. So just comment out the code I think causes the problem

Hi @xythian ,
When you have time can you review the PR? Do you think it is a valid fix?
Thanks,
Daisy

Hm, interesting. It is likely this bug also affects other valid queries which should run more in parallel than they do.
That would fix that issue but it may have undesirable performance side-effects (without that code every step will run as separate tasks, whereas the intended behavior was to avoid passing off to another task when possible to avoid that overhead -- the engine treats every discrete computation as a step, so removing the merges entirely may not be ideal). Ideally we'd have a perf test to quantify the impact either way, because if it's fast enough then the simple solution is to just stop merging by removing the commented out code -- it's only worth doing the more advanced solution if it's necessary.
The more advanced solution would involve fixing this buggy step merge. That code is too aggressive at collapsing into steps because the intended behavior was to collapse when the next task can't start and when the candidate is the only input to it.
It needs to take into account what can be started rather than just what the inputs are and avoid merging steps which can run in parallel into the same task while still merging sequential steps that are serial into the same task.

@xythian ,
Thanks for the comment.
You mean removing the code may introduce other overhead. Right?
Let me see if I can find a better solution.
-Daisy

@xythian ,
I have updated PR. Can you review it when you have time?
Thanks

@dsyzhu I'll try to take a look over the weekend.

@xythian ,
Thanks


Model OpenPose.

Ticket
Link to Github Issue
Problem description
The current OpenPose test does not work because the model in use is not supported by the PyTorch Dynamo compiler flow.
I suspect the issue is due to the model's use of dynamic shapes, which the current PyTorch Dynamo compilation flow does not support well. My assumption is based on the error message during compilation.
E       torch._dynamo.exc.BackendCompilerFailed: backend='ttnn_backend' raised:
E       RuntimeError: aten::clone() Expected a value of type 'Tensor' for argument 'self' but instead found type 'SymInt'.
E       Position: 0
E       Value: s1
E       Declaration: aten::clone(Tensor self, *, MemoryFormat? memory_format=None) -> Tensor
E       Cast error details: Unable to cast s1 to Tensor
E
E       While executing %clone_default_1 : [num_users=1] = call_function[target=torch.ops.aten.clone.default](args = (%l_s_1_,\
), kwargs = {})
E       Original traceback:
E       None
E
E
E       You can suppress this exception and fall back to eager by setting:
E           import torch._dynamo
E           torch._dynamo.config.suppress_errors = True

The error indicates that an aten operator received data of type SymInt instead of the expected Tensor. PyTorch indeed provides a type called SymInt (symbolic integer), introduced as part of its symbolic shapes feature. This feature supports symbolic shape inference in tensor operations, which is especially useful when working with dynamic shapes, enabling more flexible and efficient model design. However, the use of SymInt seems to conflict with the expectations of the Dynamo compiler, as the error occurs within Dynamo itself.
SymInt Reference: pytorch source code
What's changed
We have retained the current test implementation for future study and added another test using a different model that does not have issues with dynamic shapes.

@cthsieh can you help to craft a "Known Issues" page and list the two known issues?

SymInt
Pipeline

@cthsieh can you help to craft a "Known Issues" page and list the two known issues?

SymInt
Pipeline

Sure, I will.


Valid js, invalid module

Should we consider invalid exports as an error?
I've got an error for this:
module.export = {}; // instead of .exports

Error at evaluating bemjson: ReferenceError: module is not defined
But I guess it should result in undefined because exports is empty.
What you think?

so you suggest to put tryCatch over evaluating ({}) expression statements?

No, I'm about the first run: https://github.com/gulp-bem/node-eval/blob/master/index.js#L42-L44
Here we should return undefined, right?

actually problem is in another place.
you write to module.somProp so in https://github.com/gulp-bem/node-eval/blob/master/index.js#L47
we check only for changes in exports and eval code again so in the second run you have a problem:
module is undefined yes it is

fix in #11 & #5


How to use InceptionV3 from torchvision?

Did something like this:
model = inception_v3(pretrained=True)
target_layers = [model.Mixed_7c]
cam = GradCAM(model=resnet, target_layers=target_layers, use_cuda=True)
grayscale_cam = cam(input_tensor=input_tensor)

but I am getting error on the last line
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
/tmp/ipykernel_4565/740606463.py in <module>
----> 1 grayscale_cam = cam(input_tensor=input_tensor)

~/anaconda3/envs/pytorch_latest_p37/lib/python3.7/site-packages/pytorch_grad_cam/base_cam.py in __call__(self, input_tensor, target_category, aug_smooth, eigen_smooth)
    186
    187         return self.forward(input_tensor,
--> 188                             target_category, eigen_smooth)
    189
    190     def __del__(self):

~/anaconda3/envs/pytorch_latest_p37/lib/python3.7/site-packages/pytorch_grad_cam/base_cam.py in forward(self, input_tensor, target_category, eigen_smooth)
     94                                                    target_category,
     95                                                    eigen_smooth)
---> 96         return self.aggregate_multi_layers(cam_per_layer)
     97
     98     def get_target_width_height(self, input_tensor):

~/anaconda3/envs/pytorch_latest_p37/lib/python3.7/site-packages/pytorch_grad_cam/base_cam.py in aggregate_multi_layers(self, cam_per_target_layer)
    128
    129     def aggregate_multi_layers(self, cam_per_target_layer):
--> 130         cam_per_target_layer = np.concatenate(cam_per_target_layer, axis=1)
    131         cam_per_target_layer = np.maximum(cam_per_target_layer, 0)
    132         result = np.mean(cam_per_target_layer, axis=1)

<__array_function__ internals> in concatenate(*args, **kwargs)

ValueError: need at least one array to concatenate

Hi, I couldn't reproduce this.

What method were you using, e.g was it grad cam?
Can you please try with the latest version?

same problem ,how solve it

I need more details to try reproduce.

Which image is it, is it the same as in the example?
pytorch version? torch.__version__

Closing for now due to inactivity, please re-open if still relevant.


[Feature request] Provide a convenient way to deep copy RichEmbeds

It would be nice if there was a convenient way to obtain a deep copy of a RichEmbed instance.
This could be achieved by adding a clone() method to RichEmbed or even simpler by changing RichEmbeds constructor to deep copy its data parameter before assigning it to properties, which should probably be done anyways.

May I ask what you want to deep copy a RichEmbed for? If it's for editing and re-sending embeds, that's already possible on latest master.

Some of my messages can exceed the limits of a single embed. So i might need to build more than one embed, while some properties like author and thumbnail have the same values in all embed build to fit that messages content. I would like to configure all the shared parts of an embed and then copy it to add all the content that needs to be split across multiple embeds.
While this is certainly achieveable with v11.1, its inconvenient to do (havent found any changes regarding this on master, but correct me if im wrong)
Currently it requires me to either perform a object copy before suppling the existing RichEmbed to the RichEmbed constructor, which just seems wrong to me and does not work well with flow
//@flow
const embed1 = new RichEmbed();
// configure embed...
const embed2 = new RichEmbed(Object.assign({}, embed1: Object));

Or build the shared embed part directly as a simple object, which defeats the purpose of using RichEmbed in the first place and breaks as soon as the shared part is accidentially modifed somewhere.
const bar = {
    author: {
        name: 'foo',
        url: 'https://example.com',
    },
}
const embed2 = new RichEmbed(bar);

just don't send enormous amounts of data. smh you can upload information to gist or something. your current method seems fine as it is.

Lets not narrow this down on my current use case.
What im trying to say is, that RichEmbeds constructor has side effects on the object supplied as the data parameter. This also defeats other use cases like templating embeds or allows to change embed contents without limit checks. I dont think it should have this behaviour, but it might be intentional so any other way to deep copy the instance would also be fine.

hmmmmm

I see what you're saying, it's unfortunate that the only reason master doesn't already support this is because fields don't get deep copied. Otherwise it can already be done as follows:
const origin = new MessageEmbed().setTitle('hi').setColor(0xCCCCCC).setAuthor(msg.member.displayName);
const foo = new MessageEmbed(origin).setDescription("hello");
const bar = new MessageEmbed(origin).setDescription("world");
msg.channel.send(foo);
msg.channel.send(bar);

So if you're not using fields, this would work. I can look into getting this functionality working for fields later today.

That would be great. For the sake of completeness:
Should things like this be possible, or also be changed?
const bar = {
    author: {
        name: 'bar',
        url: 'https://example.com',
    },
}
const embed = new RichEmbed(bar);

bar.author.name = 'foo';
console.log(embed); // embed.author.name is now === 'foo'

The original object shouldn't alter the new embed because it would need to be deep copied when passed into the constructor in order to facilitate the kind of "parent" embed functionality you're looking for. However, you would be able to do it if you replaced bar.author.name with embed.author.name as if it was a simple object.

Yes, i think we mean the same thing. That was just an example of how an embed constructed with the current code would behave. But should it stay that way?

It does not behave that way on latest master (v12) because author gets deep copied. Fields is the only reason it does not work as you hoped it to be.
I'll also look to see if I can backport some of these for 11.2 later on.

Oh well, excellent case of looking for something and not seeing it, even if its clearly there😅

Since my blindness already wasted enough of your time, let me suggest the fix for fields
    /**
     * The fields of this embed
     * @type {Object[]}
     * @property {string} name The name of this field
     * @property {string} value The value of this field
     * @property {boolean} inline If this field will be displayed inline
     */
    this.fields = data.fields ? Array.from(data.fields) : [];

I had intended to backport #1859 so that you would use .toJSON instead of making a new .clone method and keep forward compatability, but 11.2 was released today, so unfortunately you'll have to clone it manually or use master when #1864 gets merged.

Thanks, i already added a crude fix to my code and will switch to a more elegant solution once the current master gets merged to stable.

toJSON and clone are not the same thing and shouldn't be treated as such

This is implemented in latest master as Drah said, no backports are planned.


Support fontmake as a compiler option

[ ] Support fontmake as a compiler option
[x] Resolve https://github.com/googlei18n/fontmake/issues/2 so it can work for UFOs Done by upstream

Font Bakery is no longer a build tool; if you want to access the old versions, install them from pypi with pip; current development is focused on simple imperative 'lint' script in a single file :)


Number Insight Advanced Not Supported

I can't find a method for calling the NI Advanced API, /ni/advanced/
The coverage in the docs shows it should be supported?

The legacy NI endpoints are currently supported for basic, standard, and advanced:

api.nexmo.com/number/format/json (get_basic_number_insight)
api.nexmo.com/number/lookup/json (get_number_insight)
rest.nexmo.com/ni/json (request_number_insight)

Suggest deprecating request_number_insight and adding get_advanced_number_insight so that naming is consistent. Endpoints for basic and standard can easily be changed, but presumably not 100% backwards compatible if params or responses differ between legacy and new?

The update to advanced allows both the async (original) and a sync response (new). For now, to avoid too much breaking, let's add get_advanced_number_insight (point to /ni/advanced) get_standard_number_insight (alias get_number_insight) and refactor request_number_insight to use /ni/advanced/async/json.

This was released in 1.5.0.


adding some more tutorials and adjusting the documentation

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 63.33%. Comparing base (f3c595f) to head (5434baf).
Report is 28 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #93      +/-   ##
==========================================
+ Coverage   63.04%   63.33%   +0.28%
==========================================
  Files          63       65       +2
  Lines        2073     2122      +49
==========================================
+ Hits         1307     1344      +37
- Misses        766      778      +12

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

this also includes pooling as a new utility task


Upgrade SpellPaletteView, make PlayLevelView resizing smarter, and fix many visual issues while playing levels

Bring back the old below-editor code documentation area when there aren't many APIs, modernizing it in the process. This gives us more space for the Surface game area. When in this mode, method docs do update with their interpolated property values, since they are generated just-in-time. Defaults to bottom positioning when there are fewer than 16 APIs, or you can use ?apis=bot or ?apis=mid to force the alternative layout.
Fix up a lot of dynamic sizing code and styling to make better use of the available screen space, including letting code editor flex to as small as is needed for 80 characters or as wide as half the screen to help either give the Surface more space or to keep it from overflowing the bottom of the window.
Remove various dead code areas and fix up minor layout issues within PlayLevelView for CodeCombat. Post-comment insertion point yellow gutter arrows are back and visible, the Classrom JS|PY button is gone, GameDevTrackView isn't erroneously pulling in Ozaria styling, error message positioning is better, the LevelDialogueView now overlays the
playback bar and HUD rather than the Surface, the goals area doesn't get so big so eagerly, and many elements are now positioned more reliably near the edes of the Surface or code area.
Merges a few more .coco and .ozar files, so now we can do things in CodeCombat like edit label formatting inside levels or show paths for multiple Thangs like in Ozaria.
Assorted screenshots of the changes (new on top or left because why make it intuitive?):
Default first-level experience, 500% as much of the level is visible

Footer adjusts so tall screens don't look busted

Long code still adjusts editor length properly

Large screens shrink editor to 80 char columns for more game space

(previously, it was always 43.5% of the screen width)

When multiple API sections are needed, three-column layout still activates

APIs are still grouped by the item that grants them, when relevant

API docs are available on hover, or clikck to pin, instead of sliding out

Fixed GameDevTrackView style bleed over from Ozaria

YES!

WOOOAHHH

Too long to manually check every file. so i try local server to use it.
in every aspect radio it works good to me.
just one thing. seems new (actually old?) UI for docs below the editor, it supports hover to temp display docs and click to hold it. there're 2 issues i think: 1. for large screen, hover & click generate different style which seems not good.

2. in old middle-doc view, hover doesn't do anything. and click still give old style. is it in purpose? i would like make hover&click events to do same thing in different levels.

The old middle API column view doesn't really have the screen space for hover popover docs on small screens, so I left that the way it was–it might be a good thing to do on larger screens, though. I'll save it as future work, alongside tweaking the hover positioning on large screens for pinned docs.


Remove 16MiB part size override in FIO read benchmarks

Description of change
The read benchmarks currently override the part size. It's unclear why this was added (#779), but we think its best to remove the override such that the benchmarks represent the default configuration.
Relevant issues: N/A
Does this change impact existing behavior?
It changes benchmark configuration. We expect the effect to be minimal.
No impact to Mountpoint itself.
Does this change need a changelog entry in any of the crates?
No.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and I agree to the terms of the Developer Certificate of Origin (DCO).

I am working on a refactoring in this bit of code: one thing to watch out for is that the file layout will fail for the 100GB files if the part size isn't large enough.


Make kReleaseMode, kDebugMode, and kProfileMode constants that are public.

Before this, we had several places where an isReleaseMode was defined, all with the same definition. This just makes it more broadly visible to allow our users to use it, as well as creating debug and profile versions.
Since this is a const value, this makes it possible for a developer to easily mark blocks that should be tree-shaken out at AOT compile time.

Yeah, I agree.  Kinda daunting though.

Actually, it wasn't too bad.  I have a devicelab test that will run in all three modes. Now I just need to fix the fact that debug and both dynamic modes don't seem to pick up the -D definitions on the frontend compiler's command line.

Maybe something in here does it? https://github.com/flutter/flutter/blob/master/packages/flutter_tools/gradle/flutter.gradle

Pass or not pass the flag, that is

Good idea @jonahwilliams, but no, that doesn't make any difference, unfortunately.


Update GOV.UK Frontend to 2.0.0

Update GOV.UK Frontend dependency to the latest released version.
GOV.UK Frontend 2.0.0 is a breaking release. See release notes

need to figure what type of change this is to add to the changelog


✨Add Visitor Counter feature done ! #694 #717

Hello, PR
Done - #717
Checklist

[x] I have gone through the contributing guide
[x] I have updated my branch and synced it with project main branch before making this PR
[x] I have performed a self-review of my code
[x] I have tested the changes thoroughly before submitting this pull request.
[x] I have provided relevant issue numbers, screenshots, and videos after making the changes.
[x] I have commented my code, particularly in hard-to-understand areas.

@Anjaliavv51

@Anjaliavv51

@Anjaliavv51

@Anjaliavv51 ??

@Anjaliavv51 ??


Updating to the latest foreign-generic library.

Which has first class support for Map, Either and BigInt.

To give a bit more context, the older version of foreign-generic had two major downsides:

No support for Map/Either, so we had to use wrapper types.
No support for integers > 2^32.

Point 1 was reasonable - there is no canonical equivalent to these types in JSON. However, @shmish111 and I have come to the conclusion that we're going to be opinionated here and force a default that works with JSON.
Point 2 is also reasonable - JavaScript doesn't support ints > 2^32. Again, we've decided that we're going to be opinionate and say it's okay to make a hard dependency on purescript-bigints for the sake of proper GHC Integer support.


Why error?

Why my bot can running?
F:! OVERWRITE STORE\OVERWRITE BOT\index.js:81
panel.loadPanel();
^
TypeError: panel.loadPanel is not a function
at Object. (F:! OVERWRITE STORE\OVERWRITE BOT\index.js:81:7)
at Module._compile (node:internal/modules/cjs/loader:1358:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1416:10)
at Module.load (node:internal/modules/cjs/loader:1208:32)
at Module._load (node:internal/modules/cjs/loader:1024:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:174:12)
at node:internal/main/run_main_module:28:49
Node.js v20.14.0
and this is my code
// Panel
const panel = new Panel({
port:3000,//port
client:client,//aoi.js client
accounts : "./panel.userconfig.js" //accounts file (for security reasons must be a separate file)
})
panel.loadPanel();
panel.userconfig.js i have too

which version of panel are you using?

i'm using latest version form npm i just following instalation command from npm "npm i @akarui/aoi.panel"

You are using the setup of unreleased version of panel... Try this instead:
const {Panel} =<EMAIL_ADDRESS>const {AoiClient} = require("aoi.js");

const client = new AoiClient({
    intents: ["MessageContent", "Guilds", "GuildMessages"],
    events: ["onMessage", "onInteractionCreate"],
    prefix: "Discord Bot Prefix",
    token: "Discord Bot Token",
    database: {
        type: "aoi.db",
        db: require("@akarui/aoi.db"),
        dbType: "KeyValue",
        tables: ["main"],
        securityKey: "a-32-characters-long-string-here",
    }
});

client.loadCommands("./commands/", true);

const panel = new Panel({
    port: 3000,
    client: client
})

panel.loadAPI({
    auth: "Authentication-Key"//No spaces, keep it only alphanumeric.
})

panel.loadGUI({
    username: ["username 1"],
    password: ["Password 1"],
})

it works and I can open the panel, but for
panel.loadAPI({
auth: "Authentication-Key"//No spaces, keep it only alphanumeric.
})
What should I change the authentication-key to?


List estimators on project view

Show list of estimators

I can't get the estimator list to refresh after the list has been edited in the dialog box.
Does anyone else know how to solve this?


getLedgerEntries Python code doesn't work

A lot of the Python code snippets (if not all of them) for the getLedgerEntries
https://soroban.stellar.org/api/methods/getLedgerEntries
document are out of date.

@overcat is this a you thing?

@overcat is this a you thing?

Let me check it out and update it.

Fixed in #472


[#noissue] TCommandRegistry performance optimization

Replace unnecessary ConcurrentHashMap
Reduce memory allocation
pre-build index

Codecov Report

Merging #3840 into master will increase coverage by 0.01%.
The diff coverage is 93.54%.

@@            Coverage Diff             @@
##           master    #3840      +/-   ##
==========================================
+ Coverage   40.94%   40.96%   +0.01%
==========================================
  Files        2187     2187
  Lines       71045    71064      +19
  Branches     9756     9759       +3
==========================================
+ Hits        29092    29109      +17
- Misses      39191    39193       +2
  Partials     2762     2762

Impacted Files
Coverage Δ

...com/navercorp/pinpoint/thrift/io/TCommandType.java
60% <100%> (ø)
:arrow_up:

...navercorp/pinpoint/thrift/io/TCommandRegistry.java
84.61% <93.33%> (+2.79%)
:arrow_up:

...vercorp/pinpoint/rpc/packet/ClientClosePacket.java
55.55% <0%> (-11.12%)
:arrow_down:

...java/com/navercorp/pinpoint/rpc/DefaultFuture.java
72.5% <0%> (-1.67%)
:arrow_down:

...point/rpc/client/DefaultPinpointClientHandler.java
71.42% <0%> (-1.3%)
:arrow_down:

...orp/pinpoint/rpc/server/DefaultPinpointServer.java
80.13% <0%> (-0.35%)
:arrow_down:

...m/navercorp/pinpoint/test/OrderedSpanRecorder.java
72.11% <0%> (+1.92%)
:arrow_up:

.../profiler/sender/StandbySpanStreamDataStorage.java
76.27% <0%> (+3.38%)
:arrow_up:

...p/pinpoint/rpc/client/WriteFailFutureListener.java
75% <0%> (+18.75%)
:arrow_up:

...npoint/rpc/server/SimpleServerMessageListener.java
100% <0%> (+20%)
:arrow_up:

Continue to review full report at Codecov.

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


[BEAM-] Add verifiers to Beam

Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

[ ] Make sure the PR title is formatted like:
[BEAM-<Jira issue #>] Description of pull request
[x] Make sure tests pass via mvn clean verify. (Even better, enable
Travis-CI on your fork and ensure the whole test matrix passes).
[x] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.
[ ] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

R: @davorbonaci

R: @lukecwik.

Do you have a JIRA issue you can relate this to?

Will create one.

Fixing wrong import order, addressing missed comment about millis in WordCountIT and merging.


AudioEffectSpectrumAnalyzerInstance.get_magnitude_for_frequency_range return data when audio stopped

Godot version:

3.3.2 stable
OS/device including version:

window10 64bit
Issue description:

I was modified the offical project spectrum, add two button to control the music play or stop, uncheck the Player not autoplay.
When the audio stopped. but the visual audio still here and will change.
Steps to reproduce:
Run the project, There is no visual audio, that is right, because the Player not playing.
Click the Play button, the visual audio show and update, this is right , because the player was Playing.
Click the Stop button, the visual audio stop, but wait a moment, the visual audio show agin, and not right,
If waitting, the visual audio while show and update, hide,  show and update, hide. .......
Minimal reproduction project:

spectrum.zip

A quick workaround for this is to not call get_magnitude_for_frequency_range when the bus is inaudible:
        var master_bus = AudioServer.get_bus_index("Master")
	if max(AudioServer.get_bus_peak_volume_left_db(master_bus, 0),
		AudioServer.get_bus_peak_volume_right_db(master_bus, 0)) < -144:
		return

What I think is happening is that AudioEffectSpectrumAnalyzerInstance::process() will stop being called after the bus becomes inactive due to this advanced setting:

The fft_history vector in AudioEffectSpectrumAnalyzerInstance will still have data from the spectrum that gets captured in process() when this happens. Increasing the Channel Disable Time to be longer than the buffer length of the spectrum analyzer fixes the issue since it allows the spectrum analyzer instance to capture more silence before the bus gets disabled.

Still happening in 3.5.

Also still an issue in 4.2.2


[Question] Reconnect processing at sample code

In sample code, reconnect just generate the host random for device to generate a MAC,
    // Now simulate a reconnect. The host will send new random bytes for
    // the client to MAC.
    puts("\nReconnect:\n----------\n");
    ASSERT_EQUAL(0, sdcpcli_gen_rand(host_random, sizeof(host_random)));
    print_bytes("r", host_random, sizeof(host_random));

    ASSERT_EQUAL(0, sdcpcli_mac_reconnect(
        &app_keys,
        host_random, sizeof(host_random),
        mac, sizeof(mac)));
    print_bytes("m", mac, sizeof(mac));

But it should derives application keys before generate a MAC that wiki described, right?

Device:
i. Derives application keys:
- (s, k) <- KDF(ms, "application keys")
ii. Generates a MAC over the r_h:
- m <- MAC(s, "reconnect"||r_h)
iii. Sends the ReconnectResponse message, containing m.

The application keys (s, k) for the reconnect are the same as the ones from the original, full connection. So you have two options when doing a reconnect, depending on how memory-constrained your device is. You can either:

Persist ms in memory, and re-derive (s, k) like in the wiki, or
Persist (s, k) in memory, and then there's no need to re-derive them (this is what the sample code is doing).

Either way, as long as you end up with the same (s, k) as in the full connection, you can do either, depending on which works for you.

Thanks for the explanation.


Update desktop.scss

@rosannechan This is a breaking change with no explanation. I believe this change needs to be made in your own fork.


Looking up block 132683 throws "Block Not Found"

https://explore.sia.tech/block.html?height=132683
returns
"Block Not Found Database"
Looking up the block right before and after does not return an error message

seems like other blocks are missing too:
132673
132679
132680


Impossible to open secondary sidebar with native title bar

This is what my editor looks like:

How am I supposed to access the secondary sidebar? When I have window.titleBarStyle set to "custom" I can see the buttons:

But since you moved copilot chat to its own panel that has no button to open it's impossible to find if you don't already know what you're doing.

@GammaGames when you configure window.customTitleBarVisibility to auto or windowed, you can see the command center, chat controls and layout controls appear:

Does that work for you?


Update Topics.st

Proposal for Iceberg project

@SergeStinckwich could you pls accept this !

ok sorry. This is done now.


Python Generator now creates types = None in classes for all optional types

This was previously breaking literal? types

[!IMPORTANT]
The PR updates the Python generator to remove default None assignments for optional fields, fixing issues with literal types.

Behavior:

Updated add_default_value in generate_types.rs to remove default None for optional types.
Ensures optional fields in generated Python classes do not have default None values.

Files Affected:

generate_types.rs: Modified add_default_value function.
partial_types.py: Removed default None from optional fields in classes like BigNumbers, BinaryNode, and BlockConstraint.
types.py: Removed default None from optional fields in classes like ContactInfo, CustomTaskResult, and Nested.

Misc:

Fixes issues with literal types being broken by default None assignments.

This description was created by  for e467f07a176cac9ad52bc83d4269001a518c2b27. It will automatically update as commits are pushed.

note for the future, we cant merge this since we need default None types or anyone using these models with fastapi or whatnot will get exceptions (fastapi requires default None types for all optionals)


Exclude idle event

This event is recorded when it is listened by another plugin. And it repeats about every second. So it should be excluded from recording under all circumstances. Or make the option to specify events that never will be recorded.

Implemented in version 1.3.0


Setting value to SerializeReference field doesn't persist in the file.

Setting a value to the SerializeReference field isn't persisting it to a file. This could be a bug in Unity 2019.4.5f1 Linux, needs investigation.

This bug was happening because the original Managed Type Reference couldn't be found. This is a bug with Unity.


CloudFormation support for events

Hi @bblommers , this PR is related with our latest discussion in #2831.
You may see I'd changed some elements in logs before I implented the change for events. That's because the cloudformation test for the rule was failing due the lack of value for retentionInDays.
Sorry to implement both of them in a single PR. Thanks and hope it's ok :).

Coverage decreased (-0.06%) to 94.236% when pulling 503eeb51aea4391012ef022f51347a9276d010be on gmcrocetti:fix-rules-cfn into c80f63fc8259bcadc8a9b157c3fa500938b72062 on spulec:master.


Update configfile.md

What

fix #36
Why

https://github.com/k3d-io/k3d/issues/36#issuecomment-1425868978
Implications

While it should be treated as a single string anyway, I'm fine with this as it also works fine :+1:
Thank you!


Internal redirect to camera ip to get around csrf issue?

This may fix the csrf problem if the issue persists.

This has been fixed by disabling the required login for the camera and using the cgi image redirect.


luci-app-example: improve description

I spent for some time while figured out how to start the example app. Please accept the PR that improves README

@andibraeu could you please review and merge this? The small change may save a lot of time for newcomers

I don't have rights to merge PRs here.
One note: you don't need to execute the file in uci-defaults. I think after a reboot it should be fine, too.

That extra ssh chmod command is not needed since uci-defaults scripts are sourced, not executed.

ok, can you merge and remove it? because I don't have a time now to fix this

Unfortunately I also only had a few minutes to spare to glance over PRs. I am not on a machine right now where I can do Git operations.

Ok I cloned and replaced that line with:
ssh<EMAIL_ADDRESS>"sh /etc/uci-defaults/80_example"

E.g. the script will be executed with shell but not marked as executable.
I checked and it works

Great, thanks!


Add: confirm page styling

Make sure the CI passes. Also, next time, request a review from some members and assign yourself 🙏🏼


⚠ Secret Website 3 has degraded performance

In cd80e5f, Secret Website 3 ($SECRET_WEBSITE_3) experienced degraded performance:

HTTP code: 200
Response time: 2513 ms

Resolved: Secret Website 3 performance has improved in dd1678a.


Allow pasting an image

Provide an area where you can paste a copied image

Maybe using something like this https://codepen.io/netsi1964/pen/IoJbg


RQt install by source for Windows and Mac

This adds more information to the RQt wiki pages that is mostly specific to building and using on Mac and Windows.
Depends on #28
New commit: https://github.com/ros2/ros2_documentation/pull/56/commits/56000650cc306aaab2353208aafb72e71cd60185

This is a pointless comment, but the short hash of https://github.com/ros2/ros2_documentation/pull/56/commits/56000650cc306aaab2353208aafb72e71cd60185 is a palindrome.

Rebased to master after #28 merged, but I need to resolve RQt-Source-Install.rst

Successfully rebased this time. New commit short hash is sadly not a palindrome


Connecting to debug port on remote host

We recently run into a situation where it would have been handy to be able to let node-inspector connect against a remote instead of local host for the debug connection (so no proxying is required). I had a look at the code and it looks like a no-brainer to implement.
Is there a specific reason why this is not possible? If not, would you be willing to accept a PR implementing this feature?

Are you want to start debugged process on one machine and node-inspector on one other?
Or only to connect to remote machine where are placed app and node-inspector?
The second case should work now.

Hi Yury, we are looking for the latter use case: we need to connect to the Debug Port on a remote machine with a locally running node-inspector. Does that make it clear?

@3y3 @else we too would be interested in the former use case - debugging a remote node process while running node-inspector locally. Is that a feature which you are working on already or would be willing to add?

+1

+1

+1

+1
That's a feature i would really like!
I tried with ssh port 5858 forwarding, but node process rejects connection from my local node-inspector

This feature was implemented on<EMAIL_ADDRESS>


[Task]: Maintain Context and Focus Phase 2

Is there an existing issue for this?

[X] I have searched the existing issues

SubTasks
Entity Explorer:

[ ] Leaving and then returning to a page should maintain what api/query was open
[ ] Entity explorer should stay as you left it when you left the page (collapse levels)
[ ] Widget/explorer tab
[ ] Width - Should be the same across all pages of an app

Canvas / Widgets:

[ ] Complex widgets, multi tier property panes
[ ] Tabs
[ ] Property Pane width

APIs:

[ ] non code editors, we set focus but not cursor
[ ] Right side panel

Queries:

[ ] Right side panel

JS Pane:

[ ] Right side panel

Datasources

[ ] Input focus
[ ] Accordions
[ ] Edit state

Query right pane cannot be opened or closed by the user. It opens or closes when there is a response.
JS Editor has no right pane. Ruling out these two.

@akash-codemonk We need to maintain the selected tabs on the right side panes.

[ ] Switching between pages when the user interacts with multi tier property panes is throwing "Something went wrong" error. Please refer the attached video: https://jiju8jbmwa.vmaker.com/record/kyYLSSANlPw2VGpV

[ ] Cursor position is blinking at the starting point when the user switches between CONTENT & STYLE. Cursor position completely fails to maintain it's previous position when switching between pages. Please refer the attached video:- https://jiju8jbmwa.vmaker.com/record/hwL9U2FJnsoeIeyS

@Richarex I have addressed the above mentioned issues, please continue testing the PR.

[X] Switching between pages when the user interacts with multi tier property panes is throwing "Something went wrong" error. This is fixed, verified it on the DP url.
[X] Cursor position is blinking at the starting point when the user switches between CONTENT & STYLE. Cursor position completely fails to maintain it's previous position when switching between pages. This issue is fixed verified it on DP.


Directory nesting custom components

It would be useful to be able to organise components into subdirectories rather than putting them all in the same root directory. When there are lots of components it gets a bit messy.
The idea is limited by the standard characters allowed within an HTML tag. Something like a double hyphen to indicate directory or the use of namespaces could be used.
Something like:
<nav--admin--menu />
or
<nav/admin:menu />

but I'm not sure about the validity of the second example... worth looking into.

Implementing this today because it's useful for a project I'm working on.
Decided upon syntax:
<component-name src="whatever/you/want" />
That way, it's still really easy to style based on component-name.


Where can I get the obj-c code?

Tutorials contains examples of the objective-c code.

Hello, @iolegs.
KCFloatingActionButton written by Swift.
Objective-C code in README.md is just document for guiding when you import Swift into Objective-C.


Disable 2FA only for specific users / user groups

@markshust , what do you think about the idea of extending the module, so that it's possible to define for specific users / user groups, if 2FA should be enabled or not?
Would you accept a pull request in this direction, or is that something you would not like in the module?

I've had this request in, and I don't agree with it as it can open up potential security holes on prod.
This module is only intended to disable 2FA during development -- not prod! But, if you wanted to do this, feel free to pull, fork & modify. I just don't want to bring it into this project as I don't think it would pass a security audit for 99% of sites.

@markshust , thanks for your feedback. Totally fine, and I understand your opinion here. That's why I wanted to ask first, before I start something.


java-library compat / gradle 4

In gradle 4 there is a java-library plugin which creates two configurations "api","implementation"
These then get put into the configurations compileClasspath/testCompileClasspath and runtimeClasspath/testRuntimeClasspath respectively
But they don't get added to runtime/testRuntime compile/compileRuntime as these seem to be deprecated. This in turn means the testset config don't get the libs added to the classpath.
I think the bug is that testsets extends testRuntime and testCompile instead of testRuntimeClasspath and testCompileClasspath

Hi, and thanks for the contribution!
I've been meaning to look at the new configurations from the java-library plugin, and ensure the compatibility.
But I'm afraid it isn't going to be this easy. Apart from backward compatibility with pre-3.4 Gradle versions, there are plugins for other languages (esp. Groovy and Kotlin) that are reportedly not working well with the new configurations, so you have no choice but falling back to compile and runtime.
In my opinion the Gradle team tends to be a bit rash with deprecation, often deprecating things that don't have a stable replacement yet. So I wouldn't put too much stock in compile and runtime being deprecated.

For future reference
Kotlin issues
https://youtrack.jetbrains.com/issue/KT-18497
https://youtrack.jetbrains.com/issue/KT-18544
Compatibility issues mentioned in Gradle docs
https://docs.gradle.org/current/userguide/java_library_plugin.html#sec:java_library_known_issues_compat

I was able to work around this by adding the following to my Gradle build:
configurations {
    integrationTestImplementation {
        extendsFrom testImplementation
    }

    integrationTestCompileOnly {
        extendsFrom testCompileOnly
    }

    integrationTestRuntimeOnly {
        extendsFrom testRuntimeOnly
    }

    integrationTestCompileClasspath {
        extendsFrom testCompileClasspath
    }

    integrationTestRuntimeClasspath {
        extendsFrom testRuntimeClasspath
    }
}

This seems to do the trick for Java, at least.

The plugin now honors the implementation and runtimeOnly configurations when extending test sets, in addition to the compile and runtime configurations as before.
This is analogous to the configuration extensions that the java plugin creates for the "test" test set.
@alexkleiman
The compileOnly configurations should not be inherited, they are intended for optional and compile-time-only dependencies (like annotation processors). These dependencies are typically closely related to the source code of the respective source set. (The standard java plugin doesn't add and extension from testCompileOnly to compileOnly either).
Also, compileClasspath and runtimeClasspath are "derived" configurations, so adding these extensions should be unnecessary.

@tkrullmann got it, thank you for the details!


#7 Basic JS

Have ids we want to use listed. Have a rough idea (maybe pseudocode) of the interactivity we want to incorporate.

We now have the modal, one API (Love Quiz), and local storage working. Still need the image API

Got pexel to work. All JS is now functional.


add example to handling binaries and __dirname in external modules

given the many issues like this, this seems like a common problem.
in our project we have a node module that uses __dirname, and it points to app.asar.packed instead of app.asar.unpacked.
The workaround we use is pass the __dirname from the electron app to the node module, using process.resourcesPath, after adding that node module to package.json.build.extraResources
It took me a few hours to debug this, and many people posted working on it for over a day.
I think this will make this boilerplate a more comprehensive solution.
I can prepare a PR with some guidance. It might not be worth it to add it to the code itself, but in the documentation somewhere at least.
Thoughts?

This would be awesome. Maybe you can add this to your WIP error reporting example

I think this is unrelated to error reporting, so can make a separate PR.
Here's what worked in our project:

add the node module as extraResources
pass the path to the node module

Do you think it's better to add documentation for this, or an actual example?
btw, I'm going on a week vacation, will respond after that


Cant Rename or Delete Blob Containers

Storage Explorer Version:
Build Number:
Platform/OS:
Architecture:
Regression From:
Bug Description

Steps to Reproduce

Expected Experience

Actual Experience

Additional Context

Possible duplicate of #2124 .


Isn't the presenters of InDatabaseMemory a responsability of the Test Project?

As I can see, the UnitTests needs a presenter to test, and because of this, a Presenter was created on the Infrastructure layer.
Ins't this presenter a complet UnitTest responsability like the presenter of the api is?

Hey @leandrofagundes,
There are several strategies to test, I try to follow the Martin Fowler Testing guide.
The UnitTests are targeting the UseCases and are tested quite extensively, the other classes are collaborators (Mocks, Fakes and Stubs) that are just used.
You can test the Presenters, but if so write tests against the Real Presenters in the WebApi layer.

@ivanpaulovich so, what are the Presenters inside the Infrastructure project for?
Infrastructure\InMemoryDataAccess\Presenters
Shouldn't those presenters be at Test project?

Hey! Those presenters are Fakes and are used only by the Unit Tests (at this moment).
Have you noticed that the application runs differently in Development and in Production environments?
On my opinion the application can run with Fakes, the same way we use in memory persistence for development we could use “in memory presenters output”.
And this is were Unit Tests and Fakes starts to pay off because they can run in production.

Yeah @ivanpaulovich I got it but the question is about the place we put the presenters.
I changed here the presenters to the Test project, so, it'll be used only duringt tests. Make sense to me, but I want to know if it's more related to the infrastructure layer (inside indbmemory folder) or it could be inside the tests project.

Hey @leandrofagundes,
Let's be pragramatic, keep them where is more clear and useful for you. The Manga project shows many techniques that you may or may not use.

Thanks, I'll keep on the tests project. If you think for any real reason to keep in the infra layer, let me know!


[Azure Batch] Added documentation for Python for Ephemeral OS disks

Took a bit of research and there were no code examples for this logic. Adding it to the docs for completeness and saving people some time.

@Padmalathas

Can you review this PR?
IMPORTANT: When this content is ready to merge, you must add #sign-off in a comment or the approval may get overlooked.

#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

@Padmalathas

Can you review this PR?
IMPORTANT: When this content is ready to merge, you must add #sign-off in a comment or the approval may get overlooked.

#label:"aq-pr-triaged" @MicrosoftDocs/public-repo-pr-review-team

@Jak-MS, I have already reviewed and approved the changes 2 hours back. Is there anything else that I need to review?


Unable to make this plugin work with eclipse

Hi,
I created a sample project that integrated lombok + mapstruct + gradle + STS (with buildship plugin). The sample project is located at https://github.com/thekalinga/gradle-apt-plugin-eclipse-issue
But, Eclipse does not generate mapstruct (one of the annotation processor available in the dependencies & exposed to STS). I'm unable to figure out what could be causing this issue.
Would appreciate if you could help me decide whether the issue is with the plugin/something I did (or) did not do/issue with IDE
Here are the steps I followed
Imported the project into STS using Gradle -> Existing Gradle Project, I ran ./gradlew eclipseJdtApt eclipseFactorypath from terminal & refreshed the project in eclipse. Then I tried cleaning & rebuilding the project. No files are being generated under .apt_generated
I see proper values set w.r.t project properties. Here are the screenshots of the settings

Properties -> Java Compiler

Properties -> Java Compiler -> Annotation Processing

Properties -> Java Compiler -> Annotation Processing -> Factory Path

I'm using STS with lombok plugin installed. You can see this Help -> About Spring Tool Suite

The project can be tested from terminal by running ./gradlew bootRun

@tbroyer Thanks for the clarification

Added more information to an existing issue from eclipse
https://bugs.eclipse.org/bugs/show_bug.cgi?id=514055


Add 1D barcode support to browser webcam scanner

Fixes #3997
Changed barcode scanning library to html5-qrcode.
This scanner performs very well on phone browsers, especially on Android, which implement the BarcodeDetector API. However on desktop browsers, performance is a little slower.
Note that while the current implementation as of this PR submission is functional, it seems that the performance of the scanner is severely impacted by the size of the containing div. The offending section will be flagged in the code for further review.
I have also created a CodePen demonstrating this behaviour and will submit an issue to the library repo to see if there are any simple fixes. It is very likely that there is a CSS-related fix that could be implemented which allows the full webcam resolution to be used while shrinking the size of the rendered video.

@maksimstojkovic any chance to look at performance again for this? In the current state it is barely usable on iPhone with safari. The old thing has no problems in this config.

@matmair Will boot up an iPhone and have a look on Safari. Have you tried any other mobile browsers?
Also the issue mentioned above has been raised here: mebjas/html5-qrcode#631

@matmair Will boot up an iPhone and have a look on Safari. Have you tried any other mobile browsers?

@matmair I've added some CSS that fixes how the video feed is displayed, so it is now responsive across displays.
I have also tried the scanner in Safari and it seems to work. I'm just in the middle of an iOS update to make sure it continues to work on the latest version, and will give an update once I do.
Also, what would be the best way to run JS style checks locally so I can fix them up before committing?

@maksimstojkovic seems to work fine now.

@martonmiklos I have checked with QR and barcode and both seem to work great! This is a fantastic improvement.
We should remove the old javascript files: /static/script/qr-scanner-*

@SchrodingersGat Done

Just a heads up, the maintainer for html5-qrcode took interest in the solution I proposed so the library might be updated in the future such that CSS isn't necessary to improve performance. Hopefully it is just a matter of setting an attribute on the

 element.
Probably worth keeping an eye on the following issue for any updates in the future:
https://github.com/mebjas/html5-qrcode/issues/631

Thanks for the contribution


Adding more options to Preferred Sharing Option

Added pinterest, gmail, wechat, instagram, hangout

@ryee1  Thank you very much for making share sheet better! Will add this is to our next release


Export Type { Interface } creates empty export

Bug Report
🔎 Search Terms
export type
export type interface
export type creates empty export
🕗 Version & Regression Information
From version 4.0 till nightly
The issue that I'm discovering is that my JS output is being covered in files containting export {} where I've defined a interface that gets exported. It would be preferable if these files could not be created.
⏯ Playground Link
Playground link with relevant code
💻 Code
interface Foo {

}

export type { Foo }

or
export type Foo = string

🙁 Actual behavior
Generates a JS file with an empty export, IE
export {}

🙂 Expected behavior
I would expect there to be no JS file generated as types are only used at compile time.
There really shouldn't be any imports for the interfaces left in the JS so having these loose exports tidied up shouldn't cause any unexpected side effects.

This is intentional. As soon as you use import or export you're dealing with a module, and compiled modules receive this export.

w.r.t. the explanation given in #41513 - For what it's worth, per ECMAScript, whether a .js file is a module or not is entirely a function of how the runtime chooses to load it; this is why we have <script type="module"> in HTML and "type": "module" in Node.  Leaving an empty export {} in the output file to "preserve the moduleness of the file" is unnecessary; to my knowledge, no runtime uses the presence of import/export as an indicator of whether to load a file as a module or not, that's strictly a TypeScript thing.

So, after reading the #41513, it seems that the intention is to represent that the given file is a module, is this not the .mjs file extention for this purpouse. The .mjs extension does have the unfortunate side effect of disagreeing with MIME types, so would it be possible to add a compiler switch to change from generating export {} to either nothing or .mjs extensions?

Technically a duplicate but we've recently been discussing removing the export { } output file marker for the reasons @fatcerberus outlined above


Minor grammar update in docs - Consuming.md

Grammar error around the use of 'an'
"for building an processing reset tool" should use a rather than an

Thanks for the fix!


¿Update cross-compile.mts with aarch64 architecture?

It is possible to upgrade cross-compiling with aarch64 linux architecture. I am doing build tests for a raspberry pi, based on ubuntu 64. There is a corresponding version of musl for aarch64.

It is possible to upgrade cross-compiling with aarch64 linux architecture. I am doing build tests for a raspberry pi, based on ubuntu 64. There is a corresponding version of musl for aarch64.

@yupihello Hi, theoretically it is possible, but I dont have device for testing it. ARM64 device may need to configure different flags for different platform features(like supporting different instructions). Not sure if anyone can help with this 😅
You can clone this and see platform specific flags for CMake based on llama.cpp CMakeLists here. Then change the build.rs for llama-sys here. After all of these steps you can enable rust build target for aarch64 linux.


[EventRequest] Table 81 "Gen. Journal Line".SetUpNewLine

Please change parameter when you call event OnSetUpNewLineOnBeforeSetDocumentNo, OnSetUpNewLineOnBeforeIncrDocNo, OnSetUpNewLineOnBeforeSetBalAccount and OnBeforeSetUpNewLine.
You send there "GenJnlLine", but we need "Rec". Because when we change something in events nothing happens in new created record.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.


Ability to have multiple aliases with different schemas for the same endpoint

Hi! 👋
Firstly, amazing project - one of the best typed libraries I've seen.
I have a small improvement suggestion - would be great, if the Zod validation utility searching for schema to apply to the response took into account also the alias name, not just the method with the path. This would allow forming multiple endpoint descriptions for the same endpoint, for which developer expects to receive different results (e.g. depending on type of entity returned).
Sample use case
The GET /vehicle/:id/state endpoint returns a vehicle that can be of different types (either a car, or a ship, or a bike) and so the responses would be different too (1st would return fields like consumedGas, 2nd: isSailFolded, etc.). While it's possible to create a schema with discriminated union for those, it might end up to be a big union. Also, in some cases, knowing the context of the query, it might make sense for it to only return one of the vehicle types (e.g. a dashboard panel displaying tire pressure wouldn't be satisfied with ship vehicle being returned). For such situations, a developer might create endpoint descriptions for the same endpoint, but with different response validation schemas and of course different aliases: getCarState, getShipState, etc.

I used patch-package to fast-forward this functionality locally, and it works perfectly - here's the code for the core and react packages:
diff --git<EMAIL_ADDRESS><EMAIL_ADDRESS>index 2578894..c10620e 100644
---<EMAIL_ADDRESS>+++<EMAIL_ADDRESS>@@ -48,7 +48,7 @@ const plugin = {
         return conf;
     }),
     response: (api, config, response) => __awaiter(void 0, void 0, void 0, function* () {
-        const endpoint = (0, zodios_plugins_utils_1.findEndpoint)(api, config.method, config.url);
+        const endpoint = (0, zodios_plugins_utils_1.findEndpoint)(api, config.method, config.url, config.fromAlias);
         /* istanbul ignore next */
         if (!endpoint) {
             throw new Error(`No endpoint found for ${config.method} ${config.url}`);
diff --git<EMAIL_ADDRESS><EMAIL_ADDRESS>index ba5828e..478af9c 100644
---<EMAIL_ADDRESS>+++<EMAIL_ADDRESS>@@ -1,7 +1,7 @@
 "use strict";
 Object.defineProperty(exports, "__esModule", { value: true });
 exports.findEndpoint = void 0;
-function findEndpoint(api, method, path) {
-    return api.find((e) => e.method === method && e.path === path);
+function findEndpoint(api, method, path, alias) {
+    return api.find((e) => e.method === method && e.path === path && (alias === undefined || e.alias === alias));
 }
 exports.findEndpoint = findEndpoint;
diff --git<EMAIL_ADDRESS><EMAIL_ADDRESS>index 4190f45..5784163 100644
---<EMAIL_ADDRESS>+++<EMAIL_ADDRESS>@@ -137,10 +137,10 @@ class ZodiosClass {
         this.api.forEach((endpoint) => {
             if (endpoint.alias) {
                 if (["post", "put", "patch", "delete"].includes(endpoint.method)) {
-                    this[endpoint.alias] = (data, config) => this.request(Object.assign(Object.assign({}, config), { method: endpoint.method, url: endpoint.path, data }));
+                    this[endpoint.alias] = (data, config) => this.request(Object.assign(Object.assign({}, config), { method: endpoint.method, url: endpoint.path, data }, { fromAlias: endpoint.alias }));
                 }
                 else {
-                    this[endpoint.alias] = (config) => this.request(Object.assign(Object.assign({}, config), { method: endpoint.method, url: endpoint.path }));
+                    this[endpoint.alias] = (config) => this.request(Object.assign(Object.assign({}, config), { method: endpoint.method, url: endpoint.path }, { fromAlias: endpoint.alias }));
                 }
             }
         });

diff --git<EMAIL_ADDRESS><EMAIL_ADDRESS>index 8959b82..ceb8f0b 100644
---<EMAIL_ADDRESS>+++<EMAIL_ADDRESS>@@ -26,11 +26,11 @@ var ZodiosHooksClass = /** @class */ (function () {
             if (endpoint.alias) {
                 if (["post", "put", "patch", "delete"].includes(endpoint.method)) {
                     _this["use".concat((0, utils_1.capitalize)(endpoint.alias))] = function (config, mutationOptions) {
-                        return _this.useMutation(endpoint.method, endpoint.path, config, mutationOptions);
+                        return _this.useMutation(endpoint.method, endpoint.path, { ...config, fromAlias: endpoint.alias }, mutationOptions);
                     };
                 }
                 else {
-                    _this["use".concat((0, utils_1.capitalize)(endpoint.alias))] = function (config, queryOptions) { return _this.useQuery(endpoint.path, config, queryOptions); };
+                    _this["use".concat((0, utils_1.capitalize)(endpoint.alias))] = function (config, queryOptions) { return _this.useQuery(endpoint.path, { ...config, fromAlias: endpoint.alias }, queryOptions); };
                 }
             }
         });

Can you give an example of what you have in mind?
What would API description look like?

This is not a new api - just an improvement which would enable this:
Following the example usage description from original post, here's an example code:
const carState = z.object({
  isRunning: z.boolean(),
  consumedGas: z.number(), // field specific to car
})

const shipState = z.object({
  isRunning: z.boolean(),
  isSailFolded: z.boolean(), // field specific to ship
})

export const api = new Zodios(
  url,
  [
    {
      alias: 'getCarState', // different alias
      method: 'get',
      path: '/vehicle/:id/state', // same url in both cases
      response: carState, // different schema
    },
    {
      alias: 'getShipState', // different alias
      method: 'get',
      path: '/vehicle/:id/state', // same url in both cases
      response: shipState, // different schema
    },
  ] as const
)

// later in a component

api.getCarState({ params: { id }})

This would be useful in places with some context: e.g. in a React component displaying tyre pressure of a car, I know I am handling this specific type of vehicle, so I'd use api.getCarState to get better response schema validation and not have to perform additional zod validations to check for vehicle type.
Without the code I added in the original post, running api.getShipState would actually call api.getCarState, because the code of findEndpoint() is matching only by method with path, ignoring the alias.
Did that make my intention any clearer?

Thank you @jalooc  for the more elaborate insight.
So not calling the alias should also handle merging all schemas to handle this use case :
const shipOrCar = api.get('/vehicle/:id/state', { params: { id }});

As an aside :
I really encourage you to design you APIs with runtime discriminated unions :
https://github.com/colinhacks/zod#discriminated-unions
Using discriminated union is impossible to infer right for the 'enpoint path' call version. So this means being stuck to use Zod Unions to handle the merged case :
https://github.com/colinhacks/zod#unions
For the feature on itself :
I'm not sold on this feature. Handling the merged case means adding more typescript type code (not just the diff you showed) and slower type inferrence for a feature i'm not convinced is that better than having one schema to handle it all.
Waiting to see if there is demand for this.

Another aside :
Without changing anything you could also design your API like this and have zodios be able to handle all cases cleanly without needing this feature :
export const api = new Zodios(
  url,
  [
    {
      alias: 'getCarState',
      method: 'get',
      path: '/vehicle/:id/state?type=car',
      response: carState,
    },
    {
      alias: 'getShipState',
      method: 'get',
      path: '/vehicle/:id/state?type=ship',
      response: shipState,
    },
    {
      alias: 'getVehicleState',
      method: 'get',
      path: '/vehicle/:id/state',
      response: vehicleState, // with discriminated union
    },
  ] as const
)

This ensures that backend will return you a car or ship when asking for it.

The second option should handle your use case. please close this issue if you agree.

Nice 👍 While the discriminated union is imho a bit of a hack in this particular case, the second option indeed fits 100% as a solution to my problem - will use that ✔

As to my proposition of code change - I still think it might be worth adding, because currently, if you have multiple endpoint descriptions for the same [method, path] pair, the first one is chosen without any warning. Took my a couple of head scratches before I found out why my api.alias2() method fails to validate data, reason being api.alias1() was used instead, which is very counter-intuitive. To tackle the schemas merging issue you mentioned here, you might get around it by just throw an error in case the api is called by path instead of by alias, where multiple endpoint descriptions are found:
function findEndpoint(api, method, path, alias) {
    const endpointDescriptions =  api.filter((e) => e.method === method && e.path === path && (alias === undefined || e.alias === alias));

    if (endpointDescriptions.length > 1) {
        throw new Error(`Ambiguous endpoint descriptions for "${alias === undefined ? '' : `${alias}: `}${method} ${path}"`);
    }

    return endpointDescriptions[0];
 }

If you still don't want the alias-distinguishing functionality anyway, I'd suggest at least checking for duplicated endpoint descriptions based on [method, path] alone just to eliminate choosing random (first found) endpoint description - should be very simple change and might save some debugging time:
function findEndpoint(api, method, path) {
    const endpointDescriptions =  api.filter((e) => e.method === method && e.path === path);

    if (endpointDescriptions.length > 1) {
        throw new Error(`Ambiguous endpoint descriptions for "${method} ${path}"`);
    }

    return endpointDescriptions[0];
 }

Just a suggestion, no stress about it :) Closing the issue anyway cause my OP problem is solved. Thanks again!

Thank you @jalooc . I'll definitely add a duplicate check to evoid any future mistake. Thanks for the suggestion

@jalooc duplicate check added in version 8.1.3


Feature Request - Don't make new moves adjust the history in the back button.

I clicked to review some guy's game from reddit. I browsed the game (which worked well). I hit back to return to reddit, but it goes back a move. I go back 50 moves to the end of my history, and reddit is gone. This is not expected browser behavior. Having to reopen reddit, navigate to the right sub, and find that guys post so I can give feedback is a pain.

I think the issue here is that each move in a game actually has its own URL (as you can notice in the address bar, GoKibitz adds a ?path=xx), so in a sense it is the expected browser behavior.
I'm curious to read @neagle take on this.

@Yxven: Sorry about the difficulty you had!
Having each move be treated as an individual page in terms of your browser history is by design, for the reasons that @sphaso mentions. Each move has its own comment thread and path so that individual moves can be linked to, shared, and discussed.
That said, I can sympathize with your experience, too, and am genuinely ambivalent about what the right solution here is. It would be technically possible to still have each move have its own path without adding an item to the browser history, but it'll take some more thought / convincing to be persuaded that it's the right thing to do.
So, for the moment, I'm closing this and sticking with the original behavior, but that doesn't mean I'm unwilling to listen to further argument. Thanks for taking the time to submit an issue!

It's actually similar to youtube. Being able to link to specific parts of video is useful, but since wrecking your history every time you watch a 50+ second video is undesired, it doesn't change the url every second. It provides a "share" option that lets you specify where you want linked.
https://youtu.be/avaSdC0QOUM?t=41s

Hm: I don't really see navigating through a game as comparable to watching a video, it's more like reading through a message thread on a forum, to my mind.

Ok, link me to one forum that changes your url 50 times as you read a thread. They too let you link to an individual post with a "share" or "perma link" button.

You're right that the pagination on a forum thread - to which I was referring - is likely to be smaller in number than the moves on a go game.

Keep in mind that shareability isn't the only reason I prefer the current design: I also prefer the current behavior of the back button, which lets you walk back through a game and its conversations.

You don't have to choose between those features. We can have a working history and convenient sgf navigation. Use the left and right arrow keys to navigate the sgf. That also doesn't break if you want to navigate a game that's longer than 50 moves.

I'll give it some thought! Thanks for taking the time to make your argument. :) I'll touch base with my project collaborator @levelonedev in a day or two and talk it over.

Just a note: in browsing through a game right now, I was interrupted by a notification of new replies on several comments I'd made earlier. I clicked on the notification, was taken to the move in question, then hit back on my browser to go back to the point in the game I'd been at before. It served as a reminder that browsing through games is not necessarily linear, and using recent browser history can be quite useful when you're not just burning linearly through an entire game.

It also helps on mobile when I fat finger the end of game button instead of the next move button. How it is now, the back button will just bring me to where I was. In your case I can't immediately revisit the move I was on.


"Avoid serving legacy JavaScript to modern browsers"

Issue description:  Google PageSpeed error: "Avoid serving legacy JavaScript to modern browsers"
Demo link/slider setting:  https://imagizer.imageshack.com/v2/767x332q90/922/b5w9fY.jpg
Tiny-slider version:   2.9.3
Browser name && version:  not applicable
OS name && version:   not applicable
Is it possible to fix this error?

I don't think that's an error at all, but a minor improvement. imo it's like saying "adding extra code to make it browser compatible is good, but modern browsers don't need it so it may be a waste of extra bytes".

@dijkermans Exactly, I don't consider it a bug, but still - would be nice if it gets patched

Sure, theoretically it'll affect the ranking of a site, but I'm quite sure it's a very minor issue.

Yes it does affect, and I'm fed up that my site is 98 and not 100 because of this warning 😂
Of course it's not highest priority but I'd be grately thankful is someone could do a fix of this issue.

I would like to bump this topic, seeing the Web Vitals penalty has increased.

I would like to bump this topic, seeing the Web Vitals penalty has increased.

This part, if commented out, removes the error in Lighthouse without removing functionality.
// Object.keys
if (!Object.keys) {
Object.keys = function(object) {
var keys = [];
for (var name in object) {
if (Object.prototype.hasOwnProperty.call(object, name)) {
keys.push(name);
}
}
return keys;
};
}


could you confirm

hi,
my NVR is a DS-7608NXI-I2 / S
this one seem to have an different file management.
it have binary and SQLLite files.
for the binary , i see HIKDISK00.bin and INDEX00.bin.
HIKDISK00.bin have the signature but at pos 16, after that i see assci-data "INDEX00.bin".
in INDEX00.bin file i see "000016   48 49 4B 42 54 52 45 45 00 00 00 00 00 00 00 00 48 49 4B 2E 32 30 31   HIKBTREE"
but if you read my comments here :
https://github.com/bkbilly/libHikvision/issues/3
you will see in the list files there is few mp4 as sql lite with inside segment number, time and length of videos.
you also have an zip of my NVR files.
i thank you to took time to read me.

Hi there, sorry for the late response, I was kind of busy.
It seem we got a misunderstanding about how we carve the video data. Can you explain to me from where you got those .bin and .sql files? Are you accessing the NVR somehow?
My script runs on a .dd or .001 file of the whole hard drive of the NVR.

Hi
I understand now, the bin and SQL files are  the files write by the NVR, in my case, an NFS share, we also see that with camera storage definition

Hey, alright! I still think it is possible to extract the videos from your recorders' hard drive with my script. I've seen many HikVision NVR, most of them worked with this script.
I'm closing this issue now. Goodbye