Notify Listeners when Scan Fails

Currently, the BluetoothCentralManager gets the failure status and logs it, but doesn't send it to listeners:
    private fun sendScanFailed(scanFailure: ScanFailure) {
        currentCallback = null
        currentFilters = null
        scope.launch {
            Logger.e(TAG, "scan failed with error code %d (%s)", scanFailure.value, scanFailure)
         //   bluetoothCentralManagerCallback.onScanFailed(scanFailure)
        }
    }

Looks like it's just a matter of uncommenting line 124.

It is a bit more complex than that. But I added a extra lambda parameter to get scan failures:
        central.scanForPeripheralsWithServices(supportedServices,
            { peripheral, scanResult ->
                Timber.i("Found peripheral '${peripheral.name}' with RSSI ${scanResult.rssi}")
                central.stopScan()
                connectPeripheral(peripheral)
            },
            { scanFailure -> Timber.e("scan failed with reason $scanFailure") })

Released version 0.3.0
...let me know if this works for you


Send cfn-signal/init logs to CloudWatch

To make it easier to debug autoscaling/cfn signals (for example, for #130), this adds the cfn logs to CloudWatch

Neat!


Added option for using the summary in the .ipynb-meta file

A new Boolean option in pelicanconf.py, IPYNB_USE_META_SUMMARY, can trigger using the summary from the .ipynb-meta file, instead of creating it from the notebook.

Thanks, this looks awesome.


analysis server behavior change in a ~degenerate case

Starting with the Dart roll here https://github.com/flutter/engine/pull/49880, the behavior of the analysis server is different when supplied with the following file:
import 'package:flutter/material.dart

Previously, the analysis server would come back with the errors:
  error • error.dart:1:8 • Expected to find ';'. • expected_token
  error • error.dart:1:37 • Unterminated string literal. •
          unterminated_string_literal
warning • error.dart:1:8 • Unused import: 'package:flutter/material.dart'. Try
          removing the import directive. • unused_import

3 issues found.

However, after the roll linked above, it reports no errors, and returns success. See https://github.com/flutter/flutter/pull/141870.

That Dart roll includes this commit:
AnalysisDriver. Produce results for all files of a library. #2 - https://dart.googlesource.com/sdk/+/637ec97e42c0bab350d6b4ed86813fadd63c62ea
There was a similar issue involving this test's interaction with the analyzer when a previous version of that commit landed:
https://dart.googlesource.com/sdk/+/89bd370e95c0695250a4f0111be3134b9936eadd
The original version of the commit was reverted to unblock the roll:
https://dart.googlesource.com/sdk/+/0b26a96696ccb504e3ed90dabfff04eb17342705
But it looks like the new version is still seeing issues.
@scheglov @bwilkerson

I'm looking into the analysis server, and AnalysisDriver changes.

Some old hacks can have consequences far in the future.
https://dart-review.googlesource.com/c/sdk/+/347421


Can I add basic statistics on your quiz website?

Hi
I'm a big fan of your project.
I also visited your website, and thought it would be interesting for users if they can check how tricky the question is and how many people actually managed to solve the quiz.
So I came up with an idea to link statistics on javascript-quiz website.
Can I contribute to your project by adding basic bar/pie chart at the bottom of your website for every quiz?
Or if there is better suggestions, I'd be happy to hear
Have a great day:)

Also, I think the statement of Q136 at https://javascript-quiz.com/136 is different from the one in this repository. If the website belong to you, I would be happy to fix it for you as well:)

@Gummybearr I don't see any difference ? Unless 136 has been changed already.

@medic-code I guess the website has been updated. I remember there were like 137 questions when I opened up this issue.


Remove "Settings" menu option

Remove the "Settings" menu option since it doesn't do anything.

Left sidebar
Profile menu

Done


add_dimension (reduce)

A question from a recent telco: How can we inform a datacube what type of dimension it has to add, e.g. a new dimension could be temporal and is potentially handled differently than a categorical or spectral dimension. We could add a parameter to set a type (and need to define types).
Mentioned use case was that a reduce could create a new temporal dimension and therefore we need to specify a new dimension and the type of it. We could then let the user choose a target dimension in processes that may create new dimensions (e.g. reduce).
Issue originated in #16.

The types of dimensions will probably originate from what we define as STAC as potential data cube types. Currently, it has 'spatial', 'temporal' and 'other', but it is still evolving... Maybe you also want to define your own?

Discussed in the telco today, no objections (yet). If there are further things to discuss/change, please open a new issue.


sync hasMany relationship not live?

Sorry to use this channel for help, but I'm stuck and confused. Ember 3.6.0-beta.4, Ember Data 3.4.4, ember-data-storefront 0.14.2.
My model hook looks like this:
async model() {
  const { foo } = this.modelFor('some-parent-route');

  await foo.reloadWith('bars');

  return { bars: foo.get('bars') };
}

When I navigate to this route and foo.bars has previously been loaded, Model#reloadWith returns immediately, which is fine. The ajax call fires and fetches some additional records in the background. However, model.bars in my controller never updates with the additional records... it seems that the sync hasMany relationship is not a live array?
@computed('model.bars.[]')
get barsLength() {
  // fires once with the initial count, but never a second time with the updated count
  console.log(this.model.bars.length);
}

Is this the intended behavior? Is there another pattern I should be using? Thank you in advance.

Thanks for the issue - I'll setup a code sandbox where we can experiment.
If you reduce this model hook code to only use Ember Data, does it start working?
async model() {
  const { foo } = this.modelFor('some-parent-route');

  await store.findRecord('foo', foo.id, { include: 'bars' });

  return { bars: foo.get('bars') };
}

Thanks @ryanto!
The plot thickens... yes, it starts working when I do it that way instead.

Ah that's strange! Could you reproduce this in an acceptance test? That will be the easiest way for us to fix this. Feel free to make a brand new acceptance test that captures this scenario.
Also, if it's easier to make a code sandbox instead of a test, check out the mirage sandbox as a starting point https://codesandbox.io/s/003o6pq34n

This is no longer an issue in newer versions of Ember Data, so whether it's worthwhile to pursue a fix for Ember Data 3.4.4 is left as an exercise for the reader. 😉

Glad to hear!

Aaaaand it's back in Ember Data 3.9.2. Would you please re-open? I'll work on that acceptance test... grumble grumble


Work out why we still have DocumentTest coverage

It's as if it thinks it's in the Google.Cloud.Language.V1 assembly. Weird.

Hmm. It's very weird. codecov shows all commits, including those still within a PR, and appears to do this by default. But it doesn't appear to have all the commits that have actually been merged. In particular, I'm not seeing any sign (in the main UI) of the commits since filtering was introduced, despite them having been pushed to codecov. This report is fine for example, but that commit doesn't show up in the main codecov UI.
I'm going to make a trivial change to force everything to go through AppVeyor - it's possible that this was just me cancelling some AppVeyor builds or the like. But I definitely want to make sure that the badge on the README refers to the master branch, no unmerged PRs.

Okay, this seems to be sorted - no more DocumentTest. I suspect I was overzealous in cancelling AppVeyor builds...


Add webpack + regenerate packages with npm2nix.

npm2nix ./pkgs/top-level/node-packages.json  ./pkgs/top-level/node-packages-generated.nix

Fixed in https://github.com/NixOS/nixpkgs/commit/d84a4f5699f774e75f427541fc0e21cac41e2d15

Package was added of course and it works.

Great stuff, thanks!


2448 add ruby profiler

Already reviewed in a closed PR, rescued after messing with merges and cherry pickings

See https://github.com/CartoDB/cartodb/pull/2477

Frontend tests were OK :+1: (details)


tmt shared directory owned by first user who runs tmt

Reproducer:
under root run:
# tmt run -vvvddd provision -h minute -i rhel-8 login finish
Then directory /var/tmp/tmt/ is created with:
rwxr-xr-x. 3 root root 21 Feb  9 04:59 /var/tmp/tmt/
then switch to normal user:
$ tmt run -vvvddd provision -h minute -i rhel-8 login finish
Failed to create workdir '/var/tmp/tmt/run-002' ([Errno 13] Permission denied: '/var/tmp/tmt/run-002')

Relates to #356, perhaps it's a duplicate?

Hi. I don't know.
Maybe this bug is just consequence of previous bug.
What do you think?

It definitely relates to #356 and might be fixed by its resolution.
However I'd leave this open until User story: 'tmt can be run on multiuser host' is possible.

Hi. Do we have this solved by:
https://github.com/teemtee/tmt/pull/1119
?
So we can close this issue then?
However: https://github.com/teemtee/tmt/issues/356 is still open.

This is still an issue
Also file /var/tmp/tmt is not owned by any package so packaging issue (should set ghost directory)

Ok. Thans. it's multihost related so leaving it for now.


update push_status when incremental EDS

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: hzxuzhonghu
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

pilot/OWNERS [hzxuzhonghu]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@hzxuzhonghu: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
24459be380206b9c1fa9683cabca5283b7463cac
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test istio-unit-tests

@hzxuzhonghu: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow//e2e-simpleTests-minProfile.sh
1352eafc953f59b0d377bd64780c4954e0c8cea5
link
/test e2e-simpleTestsMinProfile

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@hzxuzhonghu: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow//e2e-simpleTests-minProfile.sh
1352eafc953f59b0d377bd64780c4954e0c8cea5
link
/test e2e-simpleTestsMinProfile

prow/istio-pilot-multicluster-e2e.sh
1352eafc953f59b0d377bd64780c4954e0c8cea5
link
/test istio-pilot-multicluster-e2e

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@hzxuzhonghu: PR needs rebase.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.


Hs 17 updated master

Review Notes

Data has switched from w100 default to w1, which is why it looks so different
Had to overwrite data with the latest v12 json from component_segmentation
changes listed in branch i17_nucleotide_render
Height is very wrong, cutting off a lot of data
Viz can now scroll sideways: not necessarily desirable

This displayed after scrolling bin position quite far (into the 700s).

Fixed loadFasta with this.nucleotides.push(...nucleotides);
Nucleotides not loading from next fasta file yet, this should be derived from bin2file.json at loadIndexFile

Superseded by https://github.com/graph-genome/Schematize/pull/74


doc/ansible/dev/*: add documentation for dependent watches option

Description of the change:
Add documentation for watching dependent resources.

/cc @shawn-hurley

Why do we put doc/ansible/dev/* in the commit message again? This is more for @shawn-hurley :)

added a small NIT (which is fine as-is)
LGTM

@shawn-hurley added changed suggested by @johnkim76


GUI-Instagram-Downloader

Closes issue
#18
GUI-Insta-Downloader
Graphical User Interface Instagram Downloader
Introduction
As Instagram does not provide any download option for thier posts(reels/profile picture/images), here is a
 Gui based Instagram downloader.
Requirements

Tkinter Library
Instaloader Module  ( Version 4.9.2 )
Pillow Library  ( Version 9.0.1 )
Request Module  ( Version 2.27.1 )
Os Module
Threading Module

Features

Download Profile Picture
Download Posts Using Link
Ability to Specify where to Save Images and Videos
Simple and beautiful User interface

How to Install

clone this repositry
pip install pillow
pip install instaloader
pip install tk
python3 main.py

Introduction
As Instagram does not provide any download option for thier posts(reels/profile picture/images), here is a
 Gui based Instagram downloader.
Please consult Project tutorial for more detail.

[ ] My project tutorial topic has already been aproved by the Codédex team
[ ] My project tutorial file renders properly in mdx
[ ] The content written is my own, and not plagiarized from other sources
[ ] All code written is commented or documented thoroughly
[ ] I have already completed a self-review of the project tutorial
[ ] I will comply with changes from the Codédex team about my project tutorial

@Bobliuuu
Please have a look now.
Thank you

Here is a reference tutorial: https://www.codedex.io/projects/generate-a-qr-code-with-python
In this tutorial, the lines of code are explained, not just how to use your app.

Here is a reference tutorial: https://www.codedex.io/projects/generate-a-qr-code-with-python
In this tutorial, the lines of code are explained, not just how to use the code.

Sorry for that I will remove the link.
Plus I have explained each line of code using comments in code.Is'nt it enough? Or still It is better to explain code separately?
Thank you!!

@Bobliuuu
Changes done.
Tutorial deleted.
Code explanation added

@Bobliuuu
Please review the pr before the october ends.
Thank you

Thank you for your valuable suggestions.

No problem! When you are done, please re-request my review.

@Bobliuuu

@Abubakrce19 Great work! Please review the comments I made, and make the changes.
Some general comments:

Please run your project tutorial explanations through a grammar checker to make sure there are no grammar errors
Expand upon your explanations a bit more. Users will often ask why, and your project tutorial should answer those questions by expanding on your explanations of your code.

Sure
1)I am reviewing the comments.
2)I will surely check the explanation on Grammarly( that's a good idea actually ty)
3)I will try to add more detail to the explanation.
Thank you

Hi @Abubakrce19, great job on the progress so far! Love the project idea.
After chatting with the team, I think we can merge this in and workshop it a bit more internally. What do you think?
Also can you give me your name and email so I can send you a Discord invite? Thanks! 🙏

Sure go ahead @sonnynomnom .
Email<EMAIL_ADDRESS>Name: Muhammahd Abubakar
Your welcome ❤

Plus I have finals nearby, I will try to add more details after final.
Thanks

@sonnynomnom
Any update?
thanks

@Bobliuuu


Moderation model Dev UI page

As we have a page for chatting with chat models, we could also have something for moderation models. Perhaps it could just allow you to send a message and check whether it gets flagged, and it would show the category scores as a table - I guess that would be specific to OpenAI now, the general ModerationResponse only contains a flagged boolean.
Just as we allow tuning some config on the Image model page, this would allow you to choose the particular model (OpenAI supports two at the moment).
@geoand WDYT?

It definitely sounds useful!


TSI: Compact series file segment files to remove tombstoned series

TSI currently compacts and removed tombstones from series file lookup maps but does not shrink the segment files. The SeriesFileCompactor should do both.

Tombstone aggregate tracking #9514
Tombstone rewriting #9516
Integration #9517
Metrics on tombstones/compactions #9518

don't close.

https://github.com/influxdata/influxdb/tree/er-series-compact


Pyside2, Qt5 and Python3.9

Python 3.9 cannot run PySide2 due to some version conflict with Qt5, where 3.8 works fine.
Potential fix using PySide6?

I think I am facing similar issues and have Python 3.9 too.


Teams phone support the delegation feature?

I confirmed Teams IP phone support the delegation by the latest firmware.
Could you confirm this docs please

ドキュメントの詳細
⚠ このセクションを編集しないでください。 docs.microsoft.com で必須です ➟ GitHub の問題のリンク。

ID: 8d3dd879-564e-62ca-2095-3ef6ae4fab2d
Version Independent ID: 8ed3dff3-b2b8-b3db-6db9-6bbecdb6cf5c
Content: Microsoft Teams での回線共有機能 - Microsoft Teams
Content Source: Teams/shared-line-appearance.md
Service: msteams
GitHub Login: @LolaJacobsen
Microsoft Alias: lolaj

@OfficeGlobal Could you please help with this issue? Thanks!

Working on a fix

@sperantia Thank you for submitting feedback. We understand that this issue has been resolved.
Please feel free to re-open this issue if there is a specific area of the docs that we can improve or make better. Thank you.


v1.52?

Hi !
I noticed that version 1.52 of cimgui had been released for some time so I wonder when you plan to upgrade ImGui.Net to this new version?
Thanks, Catvert.

I was waiting for cimgui to be updated as well, but it looks like that happened a while ago, too. I will try to set aside some time this week to update ImGui.NET.

Nice it's a good news ! :)

It turns out 1.53 came out yesterday. I may need to update cimgui myself, but that would probably be a better version to target.

Oh, great! I look forward to it!
Thank you for your engagement! 😃


how to run cat file script from the cmd and how to pass the argument parameters to\into the file

Hello, everybody!
I am a windows guy and using commandline, and now I am really wondering how to run cat file script from the cmd and pass the custom parameters to\into it.
cat <path to file.cat> arg1 arg2...argN
thanks in advanced

You need to


Client does not refresh when switching server hashes

Describe the bug

The client does not automatically sync when visiting a new hash.
To Reproduce
Steps to reproduce the behavior:

Launch the Fluid Hello World example
Open another tab/window and go to this link http://localhost:8080/
Roll the die on the originally opened tab a few times so that it's not on 1.
Copy the original link
Paste the original link into the tab/window you had just created and press enter.

The two tabs/windows are not synced.

Expected behavior
The clients should sync with other clients when visiting a different hash.
Logs

@tyler-cai-microsoft were you testing against tinylicious or azure? Anything in the console logs?

It was through Azure, I did not see anything in the console logs.


Ctrl+c does not exit insert mode

My workflow involves using Ctrl+c to exit insert mode since it requires less movement than using Esc. Please add/fix support for exiting insert mode via Ctrl+c.

This is fairly simple to add into your .pyvimrc:
from prompt_toolkit.filters import ViInsertMode
from prompt_toolkit.key_binding.vi_state import InputMode

__all__ = (
    'configure',
)

def configure(editor):
    @editor.add_key_binding('c-c', filter=ViInsertMode())
    def _(event):
        editor.application.vi_state.input_mode = InputMode.NAVIGATION

Note that using C-c does not behave the same as Esc in vim; C-c is force switching to insert mode, not regular switch to normal mode. Using C-c to quit insert mode is generally a bad habit. Try using C-[ instead if your Esc key is hard to use, or try remapping keys like Caps Lock or jj.

Thanks, this works perfectly. Also, thanks for pointing out the difference in Ctrl+c vs Ctrl+[. I always found Ctrl+c faster to type, and I don't normally use vim plugins so this doesn't usually effect me. However, it is good to know.


Added the EmrePad

I am finally done!!
├── CAD
│   ├── Emre-HackPad-Case.step
│   └── Emre-HackPad-PlateV2.step
├── firmware
│   ├── QMK
│   ├──  emre_hackpad_default.uf2
│   └── README.md
└── PCB
├── V3.0HackPad.kicad_pro
├── V3.0HackPad.kicad_pcb
└── V3.0HackPad.kicad_sch
Thanks Alex and Hack Club!

Hey! Nice job on your hackpad. I just wanted to ask, are you fine with the logo in the top right not being on the actual PCB because its on the User.Drawings layer which usually isnt included in the final PCB.


Allow generating Swagger specification from multiple, unknown Startup classes

As a continuation of PR  #907:

Add SwaggerStartupAttribute to denote Startup classes, which has been isolated in a new project (for now) together with related helper methods. This attribute has:

A required OpenApiFileName field, which will be used by Swashbuckle.AspNetCore.Cli to generate correspondent OpenApi specification.
Optional ClientClassName and ClientNamespace, to allow defining clients names and namespaces.

Edit Swashbuckle.AspNetCore.Cli to add new --multiplestartups option, so that mentioned functionality remains optional and existing behavior doesn't change.

Usage:
dotnet swagger tofile --multiplestartups true --output bin bin\$(AssemblyName).dll v1.0
Implementation has been done using an attribute instead of something similar to suggested --startupClass option because this way we can keep cli command independent from concrete projects (besides $(AssemblyName) and api version), without having to know how many startups exist.
This is an important point for the usage we're making of Swashbuckle.AspNetCore.Cli, together with ClientClassName and ClientNamespace optional fields, since it allows us to control both Swagger spec. and clients generation directly from our code.
Attribute usage examples:
    [SwaggerStartup(
        openApiFileName: "FooPublicOpenApi",
        ClientClassName = "PublicClient",
        ClientNamespace = "Public.Client")]
    public class PublicStartup { /*...*/ }

    [SwaggerStartup(
        openApiFileName: "FooInternalOpenApi")]
    public class InternalStartup { /*...*/ }

Both specific tests for Swashbuckle.AspNetCore.SwaggerStartupAttr and a sample project with multiple startups have been implemented, we haven't added them (yet) to the PR to keep it as simple as possible for its evaluation, as @domaindrivendev suggested.

Thankyou for taking the time to simplify this PR - it's made it a lot easier for me to understand the changes you're proposing. However, I'm still uncomfortable with the overall approach. It feels awkward to add a separate project just hold an attribute that only really has meaning for the CLI project. Would the CLI project not be a more suitable home for the attribute?
Perhaps we could take a step back from the implementation detail and try to align on what your trying to do? What's your use case? It seems the dynamic discovery of Startup classes is important to you vs enumerating in a config file or something similar. But, I don't have the context to understand why. I'm thinking you may be trying to build some automation (perhaps for CI/CD?) where you can point the same command to an arbitrary project. If that were the case, then I might suggest that the auto discovery of startup class names is a concern of the automation rather than the Swagger CLI tool.
Even if we were to reach agreement on the approach, then there's a couple of changes I might suggest with the current code changes. For example, there's quite a bit of duplicated logic in the paths that fall either side of the multiplestartups option. Also, the output parameter is optional in one case and required in the other which breaks the principle of least surprise in API design. But, probably best to table that discussion until we're aligned on what you're trying to solve and how best to go about it.

Our use case:
We've a number of web api projects, some of them with multiple startup classes and some of them with a single one, being those numbers modified quite frequently.
We maintain OpenApi specification and clients generation for all of them centralized in a single place (used for CI/CD too, as you correctly guessed), that's why we felt the need of being able to change the number of startup classes and choose the name of their spec files and clients to be generated from them without modifying generic, Swagger generation invocations/code.
All that motivated us to modify our Swagger spec generation tool (yours) to allow that flexibility.
Our motivation about current approach and pull request:
Let's suppose we had chosen suggested --startup option, which we firstly considered.
We could analyze each assembly in another tool, and as a previous step, and perform multiple invocations to dotnet swagger --startup.
In that case your Cli tool would provide a mechanism for generating OpenApi spec from a given startup, but anyone willing to use it would need to re-implement a tool to analyze their code and extract their startup classes.
We considered that having a --multiplestartups option integrated in your Cli, together with that 'startup discovery' mechanism, would add a huge value to it.
It seems a great advantage to us against having to invoke dotnet swagger n times and developing another separated tool to extract those classes (in cases similar to ours).
By the way, adding a --startup option would make sense for us, as a way of allowing other devs to use their own 'startup discovery' implementation, in case proposed one doesn't fit them.
We can add it together with this pull-request, or as a separate, future one.
Implementation details
In case we reach an agreement regarding the approach, we would have no problem doing it in mentioned points:

--output option can be made optional, invoking SerializeSwagger() with null outputPath in that case, as it's done in main flow.
We can work in removing any duplicated logic in both Program's path, for sure.
SwaggerStartupAttribute has been separated from CLI to be able to keep Swashbuckle.AspNetCore.Cli only as a <DotNetCliToolReference>, since it seemed more natural to us doing it that way and also thinking in any possible, future case where attributes would need to be referenced without the cli.

  <ItemGroup>
    <PackageReference Include="Swashbuckle.AspNetCore.SwaggerStartupAttr" />
    <DotNetCliToolReference Include="Swashbuckle.AspNetCore.Cli" />
    <!--...-->
  </ItemGroup>

However, if you feel it's better to include it in Cli project and we find a way to make it work that way, we won't go against that modification.

Just to add my 2 cents, I think you could achieve the same functionality with my PR #887
by moving the Startup discovery to your own project.
Basically the PR gives an alternative entry point for the CLI where you can build your IWebHost the way you want, by implementing ISwaggerWebHostFactory
 public interface ISwaggerWebHostFactory
 {
        IWebHost BuildWebHost();
 }

I'm also working on a project where we are exposing two different api's, and it would be useful for us if Swashbuckle could provide some different-api's dynamic discovery.
With regards to the approaches you've suggested, our project could fit both with Startup or WebHost.

Closing as #887 has been merged to add custom WebHost discovery, and is aailable as of v5.1.0. Here's the relevent section of the docs - https://github.com/domaindrivendev/Swashbuckle.AspNetCore#use-the-cli-tool-with-a-custom-iwebhost-configuration


Expose proxy_clear_route_cache

@mathetake I'm a little unclear on what's needed to really wire this up.  I replicated changes for one existing call, but I didn't find anywhere that looked like I'd be wiring it upto the underling proxy-wasm-cpp-sdk -- where should I be looking?

oh, I remember this is necessary for really old Envoy (e.g. 1,7.x or so which has already reached EOL) but my memory is fuzzy..  @PiotrSikora thoughts?


fix: remove some unused warning

#style

#build

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@5d8f84d). Click here to learn what that means.
The diff coverage is n/a.

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

@@           Coverage Diff           @@
##             main       #4   +/-   ##
=======================================
  Coverage        ?   37.31%
=======================================
  Files           ?       14
  Lines           ?      761
  Branches        ?        0
=======================================
  Hits            ?      284
  Misses          ?      477
  Partials        ?        0

Flag
Coverage Δ

rust
37.31% <0.00%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.
:mega: Codecov can now indicate which changes are the most critical in Pull Requests. Learn more


Example: Pushing boxes to the goal. (from Sokoban Plus)

You must try to escape a large maze that you are trapped in, but you have a clone that is following your every move. You must both make it out at exactly the same time, or risk losing it all.
How to play your game?

Example  : Press WASD to move, J to restart and K to toggle trails, Get A boxes (cyan) to A goals (green), Get B boxes (magenta) to B goals (red), Get normal boxes (gray) to either goal. (from Sokoban plus)
wasd to move, j to reset. Both entities must reach the green box and go onto it at the same time.

Code
Check off the items that are true.

[x] The game was made using the Sprig editor.
[x] The game is placed in the in the /games directory.
[x] The code is significantly different from all other games in the Sprig gallery (except for games labeled "demo").
[x] The game runs without errors.
[x] The name of the file/game contains only alphanumeric characters, -s, or _s.
[x] The game name is not the same as the others from gallery

Image (If an image is used)

[ ] The image is in the /games/img directory.
[ ] The name of the image matches the name of your file. Example: sokoban_plus.js -> sokoban_plus.png.

Thanks for PR!

Good game! How about adding a background?

Good game! How about adding a background?

I knew something was missing, thanks!

Just realized I originally uploaded the wrong file! That was an older version, the one I just uploaded has levels 4 & 5 and better sprites/sounds.

All levels are possible, although some are pretty hard/unintuitive. This is mostly by design since this is meant to be a puzzle game, but if it's too difficult to the point of not being fun, let me know and I'll add a few more blocks.

Ok! yes it's fun:)


button "Add your chart!" should become "Load a chart!"

In which part of the interface would this feature applies?

[ ] 1. Load your data
[x] 2. Choose a chart
[ ] 3. Mapping
[ ] 4. Customize
[ ] 5. Export
Is your feature request related to a problem? Please describe.
The button "Add your chart!" should become "Load a chart!"
Describe the solution you'd like
See above
Describe alternatives you've considered
None.
Additional context
Additionally we may consider of using the phrase "visualization template" instead of "chart"

Paritially done: now the button label is "Load custom chart" but the loading modal header is "Add a new custom chart"


fix(core): allow canceling data-tauri-drag-region maximization on macOS, closes #8306

What kind of change does this PR introduce?

[x] Bugfix
[ ] Feature
[ ] Docs
[ ] New Binding issue #___
[ ] Code style update
[ ] Refactor
[ ] Build-related changes
[ ] Other, please describe:

Does this PR introduce a breaking change?

[ ] Yes, and the changes were approved in issue #___
[x] No

Checklist

[ ] When resolving issues, they are referenced in the PR's title (e.g fix: remove a typo, closes #___, #___)
[x] A change file is added if any packages will require a version bump due to this PR per the instructions in the readme.
[ ] I have added a convincing reason for adding this feature, if necessary

Other information

From https://github.com/tauri-apps/tauri/issues/8306#issuecomment-1828900300, we need to save the mouse coordinate on the first click and compare it to the second one

gonna wait for @lucasfernog to approve this one as I am not sure if this is considered breaking change or not


Should support using notifierSecret from another namespace?

No.

Use kubed to keep notifier secret in sync across namespaces https://appscode.com/products/kubed/0.5.0/guides/config-syncer/intra-cluster/


hive-controllers: configurable Resources

Prior to this change,
HiveConfig.Spec.ControllersConfig.Default.Resources was ignored. Now it is used to replace the default Resources for the hive-controllers Deployment (the one that runs all the controllers not sharded out into StatefulSets).
A quirk of the implementation is that, if you specify this field, you don't get the default values at all, even if you don't specify those values in your customization. For example, with Default.Resources omitted, you get:
resources:
  requests:
    cpu: 50m
    memory: 512Mi

But if your HiveConfig says:
resources:
  requests:
    cpu: 100m
    # memory not specified!

you get exactly that; you do not get:
resources:
  requests:
    cpu: 100m
    memory: 512Mi

HIVE-2650

/assign @dlom

Ahem, this functionality already existed via HiveConfig.Spec.DeploymentConfig.


cdc: fix panic caused by insert

Signed-off-by: 5kbpers<EMAIL_ADDRESS>
What problem does this PR solve?
Problem Summary:
If an insert operation has an old value, tikv would be panic by an assertion.
What is changed and how it works?
Delete the assertion.
What's Changed:
Related changes

Need to cherry-pick to the release branch

Check List
Tests

Unit test
Integration test

Release note

N/A

LGTM

/lgtm

rest lgtm

/lgtm

/merge


feat: add function selector to cli to make it easier for to call functions

Fix #2895
Fix #1996

Benchmark results
Metrics with a significant change:

l2_block_building_time_in_ms (8): 17,318 (+19%)
l2_block_building_time_in_ms (32): 69,092 (+19%)
l2_block_building_time_in_ms (128): 274,293 (+19%)
l2_block_rollup_simulation_time_in_ms (8): 15,770 (+19%)
l2_block_rollup_simulation_time_in_ms (32): 62,887 (+20%)
l2_block_rollup_simulation_time_in_ms (128): 249,378 (+19%)
l2_block_public_tx_process_time_in_ms (8): 1,502 (+17%)
l2_block_public_tx_process_time_in_ms (32): 6,057 (+19%)
l2_block_public_tx_process_time_in_ms (128): 24,008 (+17%)
l2_block_processing_time_in_ms (8): 2,731 (+19%)
l2_block_processing_time_in_ms (32): 10,202 (+17%)
l2_block_processing_time_in_ms (128): 40,233 (+17%)
note_successful_decrypting_time_in_ms (8): 342 (+19%)
note_successful_decrypting_time_in_ms (32): 1,008 (+24%)
note_successful_decrypting_time_in_ms (128): 3,762 (+28%)
note_trial_decrypting_time_in_ms (8): 43.0 (-52%)
note_trial_decrypting_time_in_ms (32): 109 (+187%)

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
Values are compared against data from master at commit df389b5f and shown if the difference exceeds 1%.
L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
8 txs
32 txs
128 txs

l1_rollup_calldata_size_in_bytes
45,444
179,588
716,132

l1_rollup_calldata_gas
222,984
868,196
3,449,456

l1_rollup_execution_gas
842,071
3,595,304
22,204,825

l2_block_processing_time_in_ms
:warning: 2,731 (+19%)
:warning: 10,202 (+17%)
:warning: 40,233 (+17%)

note_successful_decrypting_time_in_ms
:warning: 342 (+19%)
:warning: 1,008 (+24%)
:warning: 3,762 (+28%)

note_trial_decrypting_time_in_ms
:warning: 43.0 (-52%)
:warning: 109 (+187%)
144 (+5%)

l2_block_building_time_in_ms
:warning: 17,318 (+19%)
:warning: 69,092 (+19%)
:warning: 274,293 (+19%)

l2_block_rollup_simulation_time_in_ms
:warning: 15,770 (+19%)
:warning: 62,887 (+20%)
:warning: 249,378 (+19%)

l2_block_public_tx_process_time_in_ms
:warning: 1,502 (+17%)
:warning: 6,057 (+19%)
:warning: 24,008 (+17%)

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 16 txs.

Metric
5 blocks
10 blocks

node_history_sync_time_in_ms
24,773
48,467

note_history_successful_decrypting_time_in_ms
1,875 (-1%)
3,689 (-1%)

note_history_trial_decrypting_time_in_ms
121 (-1%)
146 (-1%)

node_database_size_in_bytes
1,630,516
1,095,103

pxe_database_size_in_bytes
27,188
54,187

Circuits stats
Stats on running time and I/O sizes collected for every circuit run across all benchmarks.

Circuit
circuit_simulation_time_in_ms
circuit_input_size_in_bytes
circuit_output_size_in_bytes

private-kernel-init
89.5 (+9%)
61,697
18,841

private-kernel-ordering
54.9 (+9%)
24,233
8,089

base-rollup
2,261 (+8%)
656,309
811

root-rollup
95.5 (+7%)
4,072
1,097

private-kernel-inner
64.1 (+9%)
81,504
18,841

public-kernel-private-input
50.5 (+9%)
41,455
18,841

public-kernel-non-first-iteration
31.3 (+9%)
41,497
18,841

merge-rollup
0.949 (+19%)
2,592
873

Miscellaneous
Transaction sizes based on how many contracts are deployed in the tx.

Metric
0 deployed contracts
1 deployed contracts

tx_size_in_bytes
8,723
27,240


Hacktoberfest 2022

FLight booking system using python

@surajparui Nice project! But this repo is only for DSA Ques, so can't accept
Thanks


Help!!! requests.exceptions.HTTPError: Invalid input.

Sorry to disturb you. When I try the example code.
client = NotionClient(token_v2="<token_v2>")
page = client.get_block("")
Then, it came out the error that:
Traceback (most recent call last):
File "D:\program files\JetBrains\PyCharm 2021.3.2\plugins\python\helpers\pydev\pydevd.py", line 1483, in _exec
pydev_imports.execfile(file, globals, locals)  # execute the script
File "D:\program files\JetBrains\PyCharm 2021.3.2\plugins\python\helpers\pydev_pydev_imps_pydev_execfile.py", line 18, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "D:/Users/Vencent-Won/PycharmProjects/mark2notion/main.py", line 9, in
page = client.get_block("https://www.notion.so/Paper-Reading-Notes-2d79e4bcb83b4c22a7e054cd9bb6634a")
File "C:\Users\Vencent-Won\AppData\Roaming\Python\Python37\site-packages\notion\client.py", line 169, in get_block
block = self.get_record_data("block", block_id, force_refresh=force_refresh)
File "C:\Users\Vencent-Won\AppData\Roaming\Python\Python37\site-packages\notion\client.py", line 162, in get_record_data
return self._store.get(table, id, force_refresh=force_refresh)
File "C:\Users\Vencent-Won\AppData\Roaming\Python\Python37\site-packages\notion\store.py", line 184, in get
self.call_load_page_chunk(id)
File "C:\Users\Vencent-Won\AppData\Roaming\Python\Python37\site-packages\notion\store.py", line 286, in call_load_page_chunk
recordmap = self._client.post("loadPageChunk", data).json()["recordMap"]
File "C:\Users\Vencent-Won\AppData\Roaming\Python\Python37\site-packages\notion\client.py", line 262, in post
"message", "There was an error (400) submitting the request."
requests.exceptions.HTTPError: Invalid input.

I had the same issue.

Same issue here, any solution?

Found solution here: https://github.com/paperboi/kindle2notion/issues/14

Didn't work for me, line 280 seems to have been amended in the package alraedy


Set default Zoom view mode on report charts. Save chart state when switching between report types

[x] Adjust default Zoom option on Domain chart
[x] Adjust default Zoom option on Treasury Spending chart (Apply for all Treasury tyep report)

Resolved on:
https://github.com/chaineco/blockcare/commit/3bcde2569a79b6419155374b3d7d722fc1f51583


Add dontUse$framework$phase to buildRustPackage and friends

Describe the bug
I feel like this is already a pretty established ui for some setup hooks and would be intuitive if used for buildRustPackage etc. and was documented.
Should have the same effects as nulling the phases.
Additional context
Asking people to do this so we can use the phases from meson or just stdenv
and thinking it would be nice if pretty much every build$FrameworkPackage had this.
Maintainer information:
# a list of nixpkgs attributes affected by the problem
attribute: rustPlatform.buildRustPackage etc.

cc @Mic92
any idea how I could add this to buildRustPackage?

So you mean, we would have a package that when added to buildInputs would pull in rust-related build hooks?

So you mean, we would have a package that when added to buildInputs would pull in rust-related build hooks?

Um not sure about that.
I was thinking at least having them as parameters to buildRustPackage?

Things like dontBuild dontUnpack should work with buildRustPackage. Not sure what is missing.


Add retries to mitigate frequent "504 Gateway Timeout" errors

We frequently get 504 Gateway Timeout errors when using this Terraform provider.
Example: https://buildkite.com/uber/terraform/builds/3472#0182ed92-3c4f-4cc2-b069-8248c94d9adb
╷
--
  | │ Error: non-200 OK status code: 504 Gateway Timeout body: "\r\n<title>504 Gateway Time-out</title>\r\n\r\n
504 Gateway Time-out
\r\n\r\n\r\n"
  | │
  | │   with buildkite_pipeline.uber-keyring-debmirror-deb-production,
  | │   on debian-builds.tf line 8472, in resource "buildkite_pipeline" "uber-keyring-debmirror-deb-production":
  | │ 8472: resource "buildkite_pipeline" "uber-keyring-debmirror-deb-production" {

Add retries with exponential backoff such that this issue is mitigated

Thanks @albertywu. It's hard to tell from that error which request is specifically timing out (because it involves graphql and rest requests) but we are aware of general timeouts in the provider and have created issue #201 to add in retries.
We don't have a timeline just yet though but are aiming for usability fixes like this to land this year ahead of releasing a stable v1


SVG images cause background to have vertical offset in Safari

Adding an SVG image to markdown as an image causes any background image to be positioned incorrectly in Safari/PhantomJS/Webkit. Chrome renders OK.
background-image: url(images/background.png)

# Slide with SVG

The background has a vertical offset

![](images/drawing.svg)

Example output
Without SVG:

With SVG:

Testcase
https://github.com/rbirkby/DeckTapeIssue
Probable cause
Originally believed to be a Decktape-only issue, https://github.com/astefanutti/decktape/issues/52,  but seems to be a Safari/Webkit issue. @astefanutti pointed out a missing background-position in webkit vs blink.

In version 0.14.0 the background-position can be overridden, which should make this issue fixable as mentioned in #52.

I don't see a PR request to fix this issue in Safari? Is RemarkJS still broken in Safari?

Seems I got the linking wrong, didn't realize it was in the DeckTape project.
This pull-request included in 0.14.0 enables overriding background-position, so you can hopefully set the missing background-position mentioned in your original post.

Apologies - I'm not being clear enough.
There is a bug in RemarkJS when used with Safari and SVG which prevents Safari from displaying RemarkJS content correctly. This bug needs fixing in RemarkJS core. It is not a user customization for downstream tooling.
Unless RemarkJS specifically does not support Safari?


Add 'never' type descriptor

Purpose

Draft Pull Request

Fixes #
Approach

Describe how you are implementing the solutions along with the design details.

Samples

Provide high-level details about the samples related to this feature.

Remarks

List any other known issues, related PRs, TODO items, or any other notes related to the PR.

Check List

[ ] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

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

The scenario I tried to mention was
type Foo record {
    int i;
    never j;
};

type Bar record {
    int i;
    string s;
};

public function main() {
    Foo f = {i: 1};

    Bar b = {s: "str", j: "j-val", ...f}; // this should not fail with a duplicate key `j` error
}

I think the following should also fail, probably at runtime though.
type Foo record {
    int i;
    never j;
};

type Bar record {
    int i;
};

public function main() {
    Bar b = {j: "j-val", i: 1};

    // `j` via spread field
    Foo f1 = {...b};

    string s = "j";
    // `j` via computed key
    Foo f2 = {i: 1, [s]: "j-val"};
}

Looping in @hasithaa too.

I see that there are some unnecessary files committed. Refrain from committing the files in the  compiler/ballerina-lang/src/main/gen directory. Since you only have one commit here, should be easy to get rid of that and keep it out of the history

Codecov Report

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

@@           Coverage Diff           @@
##           master   #22439   +/-   ##
=======================================
  Coverage   14.59%   14.59%
=======================================
  Files          51       51
  Lines        1411     1411
  Branches      219      219
=======================================
  Hits          206      206
  Misses       1189     1189
  Partials       16       16

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 3b9eba1...59443d8. Read the comment docs.

I think the following should fail at compile time:
import ballerina/io;

public function main() {
    Person p = {name: "Pubudu"};
    p["foo"] = ();
    io:println(p);
}

type Person record {|
    string name;
    never...;
|};

Currently the above fails at runtime with the following message:
error: {ballerina/lang.map}InherentTypeViolation message=invalid value for record field 'foo': expected value of type 'never', found '()'
	at test:main(test.bal:5)

I think it's better to add a few balo test cases as well, to ensure that the never type is getting written/read back correctly

A few more cases to consider:
future<never> f;

map<never> m = {};
m["a"] = ();


[Feature request] Fine-Grained Access Controls for Ad-Hoc queries

Fleet server currently provisions only two roles within the web application: an administrator and a non-administrator. And both roles has permission to Ad-Hoc query against any endpoints.
In some cases, there will be different teams access the Fleet server and we would like to have more comprehensive authorization to allow certain user groups to query certain (group of) endpoints.

This feature, as well as preventing some users from creating packs, but allowing ad-hoc queries would be very useful as well.

Agreed. I'd take this a step further and add the ability to create custom user groups that can have X Y and/or Z privileges inside of the Fleet UI and API. It would be even better if these user groups could be linked to attributes from SAML.


Remove CircleCI

Seeing a failing CircleCI here due to config issues

@conda-forge/core, should we remove this one as well?


Sorry its sold - basket messages - improve user experience

example :
if you have 2 x mountainbike in basket and they are sold to someone else, you'll discover this at the checkout.
I'd like Oscar to

warn the customer earlier in the process (as soon as possible)
say something user friendly like "Oops! We just sold the last mountainbike to someone else, so unfortunately we had to remove it from Your basket. Please forgive us! Maybe You'd like to sign up and get an alert when its back in stock, or take a look at these alternative products." (alternative products could be a link to other variants of mountainbike, or a link to the mountainbikes category)

closing all issues that are feature requests that don't have open PR's attached.


Please Document Error 90051

Getting this error: AADSTS90051: Invalid Delegation Token. Invalid national Cloud ID (0).

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: fa732de6-2cab-d780-aa21-dfec80e0a8fe
Version Independent ID: 1a11b9b6-cf4f-3581-0864-0d5046943b6e
Content: Sign-in activity report error codes in the Azure Active Directory portal
Content Source: articles/active-directory/reports-monitoring/reference-sign-ins-error-codes.md
Service: active-directory
GitHub Login: @priyamohanram
Microsoft Alias: priyamo

@threesixfour Thank you for your feedback . We will have this reviewed and get the document updated accordingly.

@threesixfour Thanks for the feedback !  I have assigned this issue to content author to investigate and update the document as appropriate.

Hi @threesixfour, I have staged an update for this.
#please-close


⚠ Samsung has degraded performance

In 57b4dfe, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2093 ms

Resolved: Samsung performance has improved in d1a4d44.


L2 523 lm implementation compatible hw

Motivation
Add a flag when identity is from a HW.
Add method to list neurons in a HW.
Use the flag to add a hotkey in HW neurons.
Changes

New flag "isHWIdentity" when creating the GovernanceCanister.
New public method "listNeuronsHW" to get neurons of a Hardware Wallet.
New private method "addHotkeyHW" that uses protobuf for the request.

Tests

New test for the new method "listNeuronsHW".

@peterpeterparker @mstrasinskis please review
I tested and both methods work.


[CKEDITOR] Error code: editor-incorrect-destroy.

Hi,
I'm having a problem with this bundle... I did use this bundle before (v4 and v5) but in this project it isn't working and I don't know why.
I had installed it correctly... but when I launch my app there is no CKEditor and I can see these error on the console. Any help?
This is my config:
ivory_ck_editor:
    configs:
        my_config_1:
            toolbar: "my_toolbar_1"
            uiColor: "#cccccc"
    toolbars:
        configs:
            my_toolbar_1: [ [ 'Bold', 'Italic', 'Underline', '-','NumberedList', 'BulletedList', '-', 'Outdent', 'Indent' ]]
            my_toolbar_2: [ [ "Source" ], "/", [ "Anchor" ], "/", [ "Maximize" ] ]

This is my entity:
    /**
     * @ORM\Column(name="value_text", type="text", nullable=true)
     */
    private $value_text;

This is my FormType:
use Ivory\CKEditorBundle\Form\Type\CKEditorType;
...
->add('value_text', CKEditorType::class, array(
                'config_name' => 'my_config_1',
            ))

I tried to disable all other JS from AdminLTE theme but still is not working...
Thanks in advance

I found the problem. The fact is that I have multiple forms in a page and symfony gives the same ID to each. After generating diferents IDs is working now.

I'm getting the same error with AngularJS.
I'm having two states with Ckeditor in both of them. While changing the state. I'm destroying it like this :
for(name in CKEDITOR.instances){
CKEDITOR.instances[name].destroy()
}
But still getting the warning. CKeditor not destroyed correctly.


SystemRunner param - run systems inside other systems

What problem does this solve or what need does it fill?
Currently ways of running systems from other systems are very limited. This proposal aims to provide a way to easily run system as a SystemParam
What solution would you like?
Add a SystemParam - SystemRunner<T: System + FromWorld>
#[derive(Default)]
struct MySystem;
impl System for MySystem {
    In = In<i32>;
    Out = String;
    //...
}

fn running_my_system(mut runner: SystemRunner<MySystem>) {
    let output = runner.run(50);
    info!("Output of MySystem: {output}");
}

Unergonomic System implementation
To use this param, user would have to explicitly specify the type of the system they will use. Implementing System trait on it's own is hard - unsafe code is not something users want to deal with. FunctionSystems are the main way people are used to working with the bevy systems, but they don't implement FromWorld, and even if it did, you would have to either specify the marker or box every system.
So, it would be nice to have a macro that labels a function system with a specified type name.
#[system(MySystem)]
pub fn my_system(query: Query<&mut MyComponent>, resourse: Res<MyRes>) -> i32 {
    //...
}

expands to
pub struct MySystem(SystemState<(Query<'static, 'static, &'static mut MyComponent>, Res<'static, MyRes>)>);

impl FromWorld for MySystem {
    fn from_world(world: &mut World) -> Self {
        MySystem(SystemState::new(world))
    }
}

impl System for MySystem {
    //... Basically the same as FunctionSystem implementation
}

Needed controversial change
There is a conflict between System::update_archetype_component_access and SystemParam::new_archetype. You can't call update_archetype_component_access from new_archetype. Without that you wouldn't be able to call update_archetype_component_access on an inner system and simultaneously have access rights to run the system.
We can add a new_archetype method to System trait or update_archetype_component_access to SystemParam trait. We can pass UnsafeWorldCell to the new_archetype.
The best option in my opinion - add a new_archetype method to the System trait. There will be system-specific code for updating access. update_archetype_component_access will have a default implementation common for all systems. It will be basically the same as the current FunctionSystem's implementation. Systems would also need a method that exposes system's archetype generation for update_archetype_component_access to have default implementation. Method that exposes archetype generation should be fallible so that ZST systems can say that they don't need to update archetype access.

So first, to list out the ways you can run a system today:

Make your system take &mut World and call run_system_cached.
Run a system as a command using commands.register_system and comments.run_system
Don't make the function a system at all - just make it take borrows to the thing you need, and make your "outer" system take all the required function params as system params. You can even use QueryLens to make systems more broadly applicable.

It would be helpful to understand why these are not desirable.

As for the implementation ideas, can we do SystemRunner<my_system>? Function items are unique types, so I would expect this to work but maybe there's some hitch I'm missing.

There's a commands.run_system_cached as well.

By the way, I've just managed to put the thought into text and #[system] macro is actually a good way to make run_system_cached work.
Right now run_system_cached only accepts ZST types. So it actually doesn't cache anything - it's the same as calling run_system_once. That is because it caches by type. Simplified it looks like this (T is actually IntoSystem, but that would just clutter explanation):
run_system_cached<T: System>(&mut World, system: T)

Because explicitly specifying a type is too unergonomic, user needs to pass T as an argument. But if T is not ZST, we would need to ignore the provided argument in favor of cached one - that's supposed to be the whole point. That means - if we happen to have two functions with the same signature, and we want to use them as cached systems - one of them would run instead of the other.
Now, if we change it to this:
run_system_cached<T: System + FromWorld>(&mut World);

And remove the ZST requirement - It would actually be more ergonomic version of run_system

Ooh, this would be really cool!
This might enable us to define pipe systems using ordinary function systems:
fn pipe<S1: System, S2: System>(input: S1::Input, runners: ParamSet<(SystemRunner<S1>, SystemRunner<S2>)>) -> S2::Out {
    let value = runners.p0().run(input);
    runners.p1().run(value)
}

And if the result of the First is cached, then the result of the Second would be discarded and instead the First would run

This is fine FWIW. MySystem is a ZST, so MySystem::do_one_thing() and MySystem::do_other_thing() are necessarily identical and do the same thing, so First and Second are equivalent.

@benfrankel MySystem can be not ZST. Look at the implementation of the function - it checks only the type that implements IntoSystem, but not the actual system

@benfrankel MySystem can be not ZST. Look at the implementation of the function - it checks only the type that implements IntoSystem, but not the actual system

Hm I remember that the ZST check is done on S because S::System will be something like a FunctionSystem which includes the system state and will never be a ZST, but I don't remember why it's cached by S::System instead of S. Maybe I forgot to change that to S as well.

It actually would be bad if it could cache only ZST's. What's the point of caching ZST? It would be the same as run_system_once

I'm not 100% sure what you mean by this, you mean if the system had no system state there would be no reason to cache it?

you mean if the system had no system state there would be no reason to cache it
this

Why couldn't we impl SystemParam for SystemData<MySystem>? That seems like the most direct approach and should be pretty easy, although I still don't really understand why this is valuable in the first place.

Why couldn't we impl SystemParam for SystemData<MySystem>?

What's SystemData?  If you mean SystemState<P>, that doesn't have an actual function to run, just the state required to construct a SystemParam from the world.

Sorry, I should have explained further.
``rust
struct SystemData<S: IntoSystem>{
state: SystemState,
function: S
}
// Inherits the required metadata from S, which is constructed as the union of the system param inside that system
impl SystemParam for SystemData{ todo!() }


Enhance Social Interaction: Implement Friend and Block Features

Problem Statement:
The current state of the ping pong game lacks fundamental social features, notably the absence of a friend list and blocked list. The aim of this issue is to bridge this gap by incorporating essential backend functionality.
Expected Behavior:

Users should be able to seamlessly add friends and maintain a comprehensive list of their connections.
The system must support the removal of friends from the list, providing users with control over their social network.
Implement the ability to block and unblock users to manage interactions effectively.
Users should have visibility into and management capabilities for their blocked list.

I agree with friend list, but we will skip the feature of the block and unblock users


Does not work with Glossary

Admin -> Glossary -> All Glossary

The site is experiencing technical difficulties. Please check your site admin email inbox for instructions.

What's Glossary? What's the error?


Uncaught TypeError: crypto.subtle is undefined

Hi ,
before anything else let me tell you how awesome found this project!
For sure deserves more attention than currently has...
To the issue now
Steps followed :

Cloned repo
runned locally  ( with serve npm module)

So no further peer connection utilized after that i suppose.

Seems crypto.subtle is  only available to https contexts.
According to this stack overflow post

Thanks! I might add a note in the readme that https is required for SDP encryption.

Cool ,
if you want include these steps for basic ssl in a local dev machine (that i 've followed) :

npm i http-server -g
cd docs
mkdir certs ; cd certs;
openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -keyout key.pem -out cert.pem
cd ..
http-server -S -C ./certs/cert.pem -K ./certs/key.pem -o -p 443