Floor Plan Area

Hi, Thanks for all your help on the other thread. I am considering using a 32-bit snitch with the FPU in a university project. The other option I was looking at was using a Cortex-M0 but it doesn't have a FPU. The M0 has a  0.11 mm2 floor plan area in a 180nm process. Do you have a rough idea what the floor plan area might be in this configuration for the snitch?
Thank you very much!

You can take a look at https://arxiv.org/pdf/2002.10143.pdf to get an idea on how large the design is in terms of kilo Gate Equivalents (kGE). In a 180nm a 2-input NAND gate (one GE) is maybe around 10 squm (give or take 20% or so). So just the core (without the FPU) would maybe be around the same area (which is not surprising), but the FPU would be much larger (about 5x or so).
Anyway, in any implementation, it will be the memories that take the most area (roughly 1kbit == 1kGE) and if you follow that you can see that roughly 1 sqmm is 8-16kByte  in 180nm.  Of course these numbers are for back of the envelope calculations, for better estimations, you should do some synthesis trials yourself.

Thank you very much, I will try and do some synthesis and see where I get to.


Add SPU sound support

Are you working anymore on this, can you add SPU sound support.

Yes, I'm still "working" on this. I got a job as a programmer and my time on this has lowered dramatically.
Certainly the volume of commits are not the same that once were.  But i think there has been some very good ones recently like 6c90a0a42d8f675fea14029541c1fd70451fb836 that made a lot of games to boot, or 3675227a034f5ab574123e5c08692f1140043ea7 that made Memory Cards working.
I'm currently working (from time to time) in implement resumable DMAs instead of handling them in just 1 cycle so i can let the cpu run in beetwen DMA blocks. Infact that part is done, the problem I need to fix is making also the MDEC work with that data. The current implementation thrashes the MDEC output. That would fix some games like Final Fantasy 9.
The SPU is not a trivial thing to add. First because i have absolutely no clue how sound works from a basic perspective and second because limitations on the current windowing system of ProjectPSX (a plain WinForm). Anyway I really have an itch for sound. And just this weekend I refactored ProjectDMG  (my GameBoy emu) from WinForms to OpenTK to see if i can learn how to handle and output sound on a more basic hardware like the GameBoy.
If i can make it work there for sure eventually ProjectPSX will have a SPU.

Hi, if you are interested I copied your project a while back just for fun and attempted to add SPU but didn't finish, maybe this code could be useful to you, I would hope that I would find more time to contribute as I do have some audio/dsp experience and would love to contribute to a PSX emu
BUS.cs.txt
SPU.cs.txt
DMA.cs.txt
DMA_Transfer.cs.txt

@BluestormDNA Ok good let me know when you get there.
@Noplace Can you share full project.

@francot514 sure
ProjectPSX-master.zip

@Noplace Not sure what you did but cdrom classnot working anymore and spu freezes it, can you upload project so we can try to make it work.

Hi, if you are interested I copied your project a while back just for fun and attempted to add SPU but didn't finish, maybe this code could be useful to you, I would hope that I would find more time to contribute as I do have some audio/dsp experience and would love to contribute to a PSX emu
BUS.cs.txt
SPU.cs.txt
DMA.cs.txt
DMA_Transfer.cs.txt

@Noplace that's amazing. Hope you find some time I would merge that in a heartbeat as long as it outputs something ;)

Closing this as ProjectPSX haves since some commits ago a somewhat working SPU.


beeper-bridge-manager: 0.12.1 -> 0.12.2

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/beeper/bridge-manager/releases.
meta.description for beeper-bridge-manager is: Tool for running self-hosted bridges with the Beeper Matrix server.
meta.homepage for beeper-bridge-manager is: https://github.com/beeper/bridge-manager
meta.changelog for beeper-bridge-manager is: https://github.com/beeper/bridge-manager/releases/tag/v{version}
Updates performed

Golang update

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.12.2 with grep in /nix/store/zslbqx3ixy7c50k79wg252jcjr0vs8wb-bbctl-0.12.2
found 0.12.2 in filename of file in /nix/store/zslbqx3ixy7c50k79wg252jcjr0vs8wb-bbctl-0.12.2

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

beeper-bridge-manager

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/zslbqx3ixy7c50k79wg252jcjr0vs8wb-bbctl-0.12.2 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A beeper-bridge-manager https://github.com/r-ryantm/nixpkgs/archive/524c8b764eb659006e3982eabfc969328bd24a42.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/524c8b764eb659006e3982eabfc969328bd24a42#beeper-bridge-manager

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/zslbqx3ixy7c50k79wg252jcjr0vs8wb-bbctl-0.12.2
ls -la /nix/store/zslbqx3ixy7c50k79wg252jcjr0vs8wb-bbctl-0.12.2/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

beeper-bridge-manager

Maintainer pings
cc @heywoodlh for testing.

[!TIP]
As a maintainer, if your package is located under pkgs/by-name/*, you can comment @NixOS/nixpkgs-merge-bot merge to automatically merge this update using the nixpkgs-merge-bot.

Add a :+1: reaction to pull requests you find important.

Appears to be working for me as expected on MacOS (ARM64) and NixOS (x86_64):
❯ nix run "github:nixos/nixpkgs/524c8b764eb659006e3982eabfc969328bd24a42#beeper-bridge-manager" -- --version
bbctl version v0.12.2+dev.unknown

@NixOS/nixpkgs-merge-bot merge


Fix dynamic reconfig permissions

The .cfg files used to provide dynamic reconfigure support in ROS 1
are executable Python files, and so they need to have the executable
bit set in order to work properly.
Fixes #1
Signed-off-by: P. J. Reed<EMAIL_ADDRESS>

Thanks for your contribution!


Publish tt-metal docs to the central site

Ticket
Link to Github Issue

Problem description
Create and push ttnn and tt-metalium documentation to docs-test repo for the centralized repository.
A particular challenge is to build the doxygen documentation for C++ as well as pick up the documentation from Python libraries of ttnn and tt-metalium that rely on the installation of the tt-metal wheel.
In order to capture Doxygen documentation, we run doxygen and add the resulting .xml files into the docs repo source so we can build documentation as part of the centralized docs repo build.
We also check-in all existing .rst files while not copying conf.py file so we can use an adapted conf.py in docs repo.
What's changed
A new workflow is added that is triggered upon a release workflow.
Checklist

[x] Post commit CI passes
[ ] Model regression CI testing passes (if applicable)
[ ] New/Existing tests provide coverage for changes

@tt-rkim You have mentioned a few screenshots in your responses, but I can't see them.


Remove List command from tree view

Codecov Report

Merging #601 (7394d90) into master (0e5b03b) will decrease coverage by 0.22%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #601      +/-   ##
==========================================
- Coverage   68.54%   68.31%   -0.23%
==========================================
  Files         101      101
  Lines        6146     6111      -35
  Branches     1071     1077       +6
==========================================
- Hits         4213     4175      -38
- Misses       1933     1936       +3

Impacted Files
Coverage Δ

src/cli-command.ts
78.16% <ø> (-1.44%)
:arrow_down:

src/extension.ts
88.63% <ø> (-0.38%)
:arrow_down:

src/tekton/clustertask.ts
80.00% <ø> (-3.34%)
:arrow_down:

src/tekton/pipeline.ts
58.33% <ø> (-3.21%)
:arrow_down:

src/tekton/pipelineresource.ts
81.81% <ø> (-5.69%)
:arrow_down:

src/tekton/pipelinerun.ts
80.85% <ø> (-1.85%)
:arrow_down:

src/tekton/task.ts
61.53% <ø> (-5.13%)
:arrow_down:

src/tekton/tektonitem.ts
68.81% <0.00%> (-3.23%)
:arrow_down:

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 0e5b03b...7394d90. Read the comment docs.


server: compatibility issues between build and docker-compose

There seems to be some kind of compatibility issue with the way we build our docker image in server. When we built it using $ docker buildx build -t basyx-python-sdk-http-server . it can not be run using docker-compose even thoug that should be possible. Only by explicitly declaring in the compose.yaml file which image to run like this image: basyx-python-sdk-http-server, or by using docker-compose build to build the image can the image be run using docker-compose.

I'm not sure what you mean. If I want to run the docker compose file, the correct syntax should be docker compose up. It should then take care of building the image if necessary and running it. There should not be the need to manually build first.
Could you maybe post here which version of docker and the docker compose plugin you're using?
docker --version
docker compose version

It seems

No worries :)
Can you use docker compose up in the README, as it is the newer syntax and replaced docker-compose up? At some point the old syntax might become deprecated.


Failed to run with custom browser profile folder

hack-browser-data-windows-64bit.exe -b chrome -p 'C:\Users\Alineware\AppData\Local\Google\Chrome\User Data\Profile 1'
[FATAL] [browser.go:66,pickChromium] find browser Chrome failed, profile folder does not exist

Same problem here, if you manage to solve it let me know

same problem

Use Double quote " in windows CMD
hack-browser-data-windows-64bit.exe -b chrome -p "C:\Users\Alineware\AppData\Local\Google\Chrome\User Data\Profile 1"


Allow unknown properties by default

Proposed change
Currently RecordTypeAdapterFactory.DEFAULT disallows unknown properties in the JSON data. The logic should be reversed, unknown properties should be allowed by default and only disallowed when explicitly configured.
📢 Any feedback, arguing for the current behavior or for the new proposed behavior, is highly appreciated!
Rationale

Especially when working with external services, often the JSON data includes information which is not relevant for an application. It is therefore common to omit irrelevant properties from the model classes.
Over time services producing JSON data might be extended to include additional properties. If applications using these services by default disallow unknown properties, such changes to the JSON data will break the applications, even if the change itself would still be backward compatible.

This change request does not cover the behavior of other configuration methods, such as allowMissingComponentValues(). Their behavior might not be a suitable default for all use cases and users should therefore explicitly make the choice to enable them.
Considerations
The documentation for the newly added method RecordTypeAdapterFactory.Builder.disallowUnknownProperties() should include a warning that disallowing unknown properties can break backward compatibility when a service (e.g. JSON REST API) is extended with new properties, see rationale 2 listed above.
The API changes will be backward incompatible, but that is probably acceptable given that this library is currently still described as experimental.

👍 if I remember correctly, GSON has this option on per default so it will probably be less confusing for the users to have both libraries behave the same way in that regard.
Also, I believe that in the majority of the use cases, this behaviour would be better because APIs can change randomly without knowing it and thus break your application.

Thanks a lot for your feedback! I have changed the default behavior to allow unknown properties.


Language records

Description
Broke out languages and accents into own tables, created tables linking user to language and accents separately. Please review and see if this makes sense or if it seems overly complicated
4 tables
languages - table for each language we add to the customers
accents - table for each possible accent
talentLanguages - table linking language Id to a userId
talentAccents - table linking accent Id to a userId
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Change Status

[ ] Incomplete/work-in-progress, PR is for discussion/feedback

How Has This Been Tested?

[ ] Test A
[ ] Test B

Checklist

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] My changes generate no new warnings
[ ] There are no merge conflicts

Kenichi suggested adding cascading statements to the language records which I'll add and will add endpoints to interact with this part of the db before merging


[translation example]unable to test on new dataset after preprocessing

I want to test the best model on new dataset that has not been preprocessed together with train/valid/test corpus before.
when I tried to use preprocess.py to create a new dataset in data-bin and then use models from another dataset, there will be a size mismatch error from checkpoint for the model I applied. But if I try to replace the test corpus in original data-bin that I trained the best model on with the new test set, there will be a dictionary indexing issue.
So far what I can do is to make sure every test examples are included when doing preprocessing and creating dictionaries before training. Is there any easy way to test the model on new dataset (e.g., 1 sentence) after the training is done?
(Or in short) how can I create data-bin using existing dictionaries?

@edunov Thank you!


[Suggestion] More detailed description

Thank you for making this module. I've gone though the script to actually see what this module does, but I still struggle to understand all of your changes. Could you perhaps elaborate in more detail what "unwelcome visual surprises" encompasses, and what you did to get closer to 5E rules?

Awesome, thank you!


[Feature] Import List

The import from clipboard is nice, but what If I have a list of URI in my clipboard? Or what about just plain file import which dumps a URL list into a queue?

@zQueal Hi there.
Yes I agreed. I should implement a form of backup to also store download configs (thread count/ headers/ user agents etc.. ) as well alongside the URL into a file so they can be restored later.

what If I have a list of URI in my clipboard?

you can already copy a list of links and paste it to the app.

you can already copy a list of links and paste it to the app.

Interesting, the whole reason why I opened this ticket was I tried it, and didn't see a way to do it. I copied a list of URI to my clipboard tried to import via clipboard and it only did the first URI.
Did I miss something?

@zQueal you just need the  open the app and press Ctrl V a list will appear containing all the links and their info which you can select which one you want to add.( or just simply select all)
for example
https://example.com/a.txt
https://example.com/b.txt
https://example.com/c.txt

if you still can't import them, tell me how can I reproduce the problem you faced. maybe there is a bug or sowthing.

Yeah, this still doesn't seem to work as I would expect. I have about 30 cbz files in my clipboard. Hitting ctrl+v tries to download an html file versus adding all 30 of the cbz files to the queue as one would expect. In fact, it doesn't even recognize the actual download filetype and instead tries to download the directory in which they're all stored.
Even doing a single file download instead of actually attempting to download the cbz it just makes a html file for some reason. :shrug:

@zQueal then it seems there is a bug here
if its possible provide a reproduceable steps so I can test and debug it.

Sure.

View HTTP directory with links in it.
Use Link Grabber chrome extension to put links into clipboard.
Open ab-download-manager and click ctrl-v.
Puts https://domain.dev/path/tofiles/ as download target with a filename of homain.html.

Links in the clipboard are links to direct objects.

@zQueal Unfortunately I couldn't reproduce the bug you mentioned
I use the tool you mentioned and it works correctly. here is the result

Even doing a single file download instead of actually attempting to download the cbz it just makes a html file for some reason. 🤷

Maybe your link requires authentication ( some download links requires specific cookies/headers /user-agent to allow download that resource )
when you use the app's browser extension it will handled automatically

So here's the directory, which again is just a regular webserver directory;

I click "copy" to copy all 180 links to my clipboard. I open the web interface and hit ctrl+v;

There's no redirect or anything going on. They're all direct files. I tried downloading a few directly, and they all work fine.
If I copy a single URI and paste it, it seems to work as intended;

Otherwise something weird is happening.

@zQueal
you are importing a list of links in to  add download page (this is for single link) which has more options.
in your case you need  press on ctrl v in the APP"s Main Window or using menu bar  by clicking on File >> import from clipboard

in your case you need press on ctrl v in the APP"s Main Window

Yes, this is what I've done in my example. As a test, I went to the releases page of ab-download-manager and grabbed a bunch of the releases into my clipboard, and it works just fine;

I do the exact same thing with the previous URI, and it doesn't work. As you can see from here, they're direct files;

I don't really have an explanation as to why they're not being picked up.

@zQueal now I'm sure that this is a bug in the url parsing.
if you face that in some links that are not private and can be shared please send them to me (you can also text ne in telegram), so I can fix this bug!

@zQueal the problem is because the WebServer that you are using, uses a non standard URL format. although they are supported by browser (and also this app) but they shouldn't have [ , ], space etc... in their path segment. instead they should be URL Encoded
because of that the URL regex couldn't properly find the links that you provided.
I fix this by adding an extra check (multi link in multi line) before the URL Regex.


Adding intermediate industrial chems

About the PR

Added Benzene, Hydroxide, Sodium Hydroxide and Fersilicite, changed the norepinephric acid recipe to use epinephrine instead of oxygen and hydrogen(originally for conflicts with the hydroxide recipe, kept because it makes more sense and it's how actual norepinephrine is made), changed the phenol recipe to use hydroxide and benzene, changed the oculine recipe to use hydroxide and made epinephrine use hydroxide instead of oxygen and hydrogen
Why / Balance

Part of the chemistry rework and making more advanced prerequisite chems.
Technical details

nuh
Media

[X] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Breaking changes

nope
Changelog

:cl:

add: Added 4 intermediate industrial chems, to be used for recipes in the future.
tweak: Changed the norepinephric acid, epinephrine, oculine and phenol recipes to use these new chems.

what the fuck is failing, ugh

the dreaded webedit ops

the dreaded webedit ops

yeah, already fixed the merge conflicts, dunno how to move the PR branch to my local branch so...

Once all this chemistry stuff is done I WILL write step by step instructions for as many chems as possible and post them in general chat.


Upgrade sinatra to version 2.0.2

Libraries.io has found that there is a newer version of sinatra that this project depends on.
More info: https://libraries.io/rubygems/sinatra/2.0.2

Already upgraded!


Parametrize targetdir and backupdir for HDP/HDF

Options (cdh and cdp subcommands only):
    -t <targetdir>    Override target directory (default: distro-specific)
    -b <backupdir>    Override backup directory (default: /opt/cloudera/log4shell-backup)

This should be supported in the latest version, but the usage text was not updated.


File not found in collaborative mode Jupyterlab v4

Good day,
don't know if this bug is for jyputer-h5web or for jupyter-collaboration
In jupyterlab v4 with collaborative mode got file not found because of adding "RTC:" to filepath - for example "File not found: 'RTC:discharges/2023/202306/20230629/T/1230T 2023-06-29 13:03:54.nx"
H5Web("discharges/2023/202306/20230629/T/1230T 2023-06-29 13:03:54.nx") - works
To Reproduce
Try to open hdf5/nexus file in jupyterlab with jypyter-collaboration enabled
Expected behaviour
Open file without error
Screenshots

For example csv works

but to open from python (with open(..)) "RTC:path" needs to be changed to "path")
Context

OS: Ubuntu 22.04
Browser: Chrome
Version: 114
JupyterLab version: 4.0.2

Extension lists

Paste the output from running `jupyter labextension list` and `jupyter serverextension list` from the command line here.
You may want to sanitize the paths in the output.
jupyter_lsp  enabled
- Validating...
jupyter_lsp 2.2.0 OK
jupyter_nbextensions_configurator  enabled
- Validating...
jupyter_nbextensions_configurator 0.6.3 OK
jupyter_server_ydoc  enabled
- Validating...
X is jupyter_server_ydoc importable?
jupyterlab  enabled
- Validating...
jupyterlab 4.0.2 OK
jupyterlab_git  enabled
- Validating...
jupyterlab_git 0.41.0 OK
jupyterlab_h5web  enabled
- Validating...
jupyterlab_h5web 10.0.0 OK
nbdime  enabled
- Validating...
nbdime 3.2.1 OK
    jupyter-vuetify v1.8.10 enabled  X
    jupyterlab-h5web v10.0.0 enabled OK (python, jupyterlab_h5web)
    nbdime-jupyterlab v2.2.0 enabled  X
    jupyterlab_pygments v0.2.2 enabled  X (python, jupyterlab_pygments)
    jupyter-vue v1.9.2 enabled OK
    jupyter-matplotlib v0.11.3 enabled OK
    @jupyter-widgets/jupyterlab-manager v5.0.7 enabled  X (python, jupyterlab_widgets)
    @jupyter/collaboration-extension v1.0.1 enabled OK (python, jupyter_collaboration)
    @bokeh/jupyter_bokeh v3.0.7 enabled  X (python, jupyter_bokeh)
    @jupyterlab/git v0.41.0 enabled  X (python, jupyterlab-git)

Also checked on new vm:
jupyterlab-h5web v10.0.0 enabled OK (python, jupyterlab_h5web)
jupyterlab_pygments v0.2.2 enabled  X (python, jupyterlab_pygments)
@jupyter/collaboration-extension v1.0.1 enabled OK (python, jupyter_collaboration)

Can confirm the issue above.

Thanks for the report !
The issue may be due to the patching I did to prevent the fetching of the file.
Hopefully, this should no longer be needed since we now only support JLab4 that has the file format null. So, it may be as simple as removing the patching and set the file format to null in HDF5_FILE_TYPE. To be tested :shrug:
I will gladly accept a PR or a report on whether this fixes the issue. Otherwise, this will have to wait a bit until I find time to work on it.

On second thought, that may be completely unrelated :joy:
I am wondering how Y.js (the tech powering the sharing of files in collaboration mode) deals with binary files. I understand it can work with plain text such as CSV but that may be another story with HDF5 files.

I am wondering how Y.js (the tech powering the sharing of files in collaboration mode) deals with binary files.

I was testing the new RTC version the whole day yesterday and still have the issue that the created .ipynb files are not saved :D
I would expect that people will rather rarely edit HDF5 files in the collaborative mode in way like people edit .ipynb files. Maybe we should request to handle the "plain text" files (like .txt, .scv etc) with Y.js and then just ignore all other files formats which they cannot handle correctly.

Hello, @loichuder
I guess this issue is realated to this issue: https://github.com/jupyterlab/jupyter-collaboration/issues/183#issuecomment-1697679929
I believe they argue that need to be fixed on the extension site.

I just ran into this issue, is there a known workaround? I'm using JLab 4 and the latest jupyterlab-h5web versions.

Sorry, it has been a while before I got back to this. Next release should include a quick and dirty fix.

I just released jupyterlab-h5web 12.0.0 that includes the aforementioned fix.
Since I don't use RTC myself, I was only able to do basic checks and I am not conivinced it was the best way of solving the issue.
If anyone can test and report, that would be greatly appreciated. I'll leave this issue open and you are welcome to post further comments if additional problems are encountered.

Checked the last version -

Checked the last vession

Checked the last version - got
    tornado.web.HTTPError: HTTP 404: Not Found (File not found!)
[W 2024-02-26 19:28:38.604 ServerApp] 404 GET /h5web/meta/?file=RTC:discharges%2F2024%2F202402%2F20240226%2FM%2F647M+2024-02-26+13:56:07.nxs&path=%2F<EMAIL_ADDRESS>2.36ms referer=http://hdfcon.tkmk:8888/lab/tree/RTC%3Adischarges/2024/202402/20240226/M

Also get

In previous version there is no error

Thanks for checking @Podolyakofs
I'll have a second look

It seems to run fine on my end. I'll try to reproduce the error with the same parameters as you.
@Podolyakofs could you give me:

The list and versions of installed packages in the environment (pip freeze/list)
The way you start and connect to the RTC instance of JupyterLab
The file you are using (or a stripped down version, as long as it shows the error Expected Group)

That would be very helpful for me to debug, thanks.

Checked on new machine - looks like everything works!

Great to read :relieved: !
I'll keep following discussions on the JLab repo in case there is a better way of fixing it

I'm using the latest version of H5Web and I still can't open the files if I use the collaborative mode =( is there something extra I should do or it's a matter of waiting for future releases?

I'm using the latest version of H5Web and I still can't open the files if I use the collaborative mode =( is there something extra I should do or it's a matter of waiting for future releases?

How do you start collaborative mode? As I understand in jupyterlab v4+ the only need is the jupyter-collaboration-extension installed/enabled and  --collaborative flag is not used anymore during startup

Sorry @betolink , I missed your comment :disappointed:
The release is done: it should work with version 12.0.0 of the extension.
As @Podolyakofs, I am also curious to know how you start the collaborative mode.

As @Podolyakofs, I am also curious to know how you start the collaborative mode.
Before 4 version released I run with

  12   │             --notebook-dir /home/mephist/jupyter #\
  13   │ #            --collaborative```

As @Podolyakofs, I am also curious to know how you start the collaborative mode.

Before Jupyter v4 (for jupyter v3) I start with
jupyter lab --no-browser --ip "*" \
             --notebook-dir /home/main/jupyter
             --collaborative

after they separate collaboration into plugin (jupyter v4) I start only with:
jupyter lab --no-browser --ip "*" \
             --notebook-dir /home/main/jupyter

(and enabled extention)
Here is the issue about it https://github.com/jupyterlab/jupyter-collaboration/issues/194 (that flag now is enabled by default if plugin is installed)
I think there can be some errors if use that flag in J v4 with RTC extention enabled
Screenshots for J v4:

If there is no more reports, I'll close this as completed. As mentioned, I will still check if another "more official" way of solving this emerges


Redownload dind cluster script if it exists to be sure it is up to date

This change is

Reviewed 1 of 1 files at r1.
Review status: all files reviewed at latest revision, 1 unresolved discussion.

deploy/demo.sh, line 43 at r1 (raw file):

    demo::step "Will now clear existent dind-cluster-v1.5.sh to be sure it is up to date"
    demo::ask-before-continuing
    rm ${dind_script}

Hmmm... IMO better would be to have there an option to skip this rm, as someone could prefer to use already tested ver, instead of looking for lottery, hoping that newer one is really better ;)

Comments from Reviewable

Review status: all files reviewed at latest revision, 1 unresolved discussion.

deploy/demo.sh, line 43 at r1 (raw file):
Previously, jellonek (Piotr Skamruk) wrote…
Hmmm... IMO better would be to have there an option to skip this rm, as someone could prefer to use already tested ver, instead of looking for lottery, hoping that newer one is really better ;)

I think we shouldn't remove it  at all, these scripts are going to stabilize someday, therefore we will not need to update them for quite long time. Or at least there should be possibility to preserve existing one as @jellonek suggests

Comments from Reviewable

Review status: all files reviewed at latest revision, 1 unresolved discussion.

deploy/demo.sh, line 43 at r1 (raw file):
Previously, pigmej (Jędrzej Nowak) wrote…
I think we shouldn't remove it  at all, these scripts are going to stabilize someday, therefore we will not need to update them for quite long time. Or at least there should be possibility to preserve existing one as @jellonek suggests

Well, as we always update dind image only warning about that, not updating scripts as well can cause issues, like with introducing https://github.com/Mirantis/kubeadm-dind-cluster/search?utf8=✓&q=CNI_PLUGIN&type=  new var CNI_PLUGIN lately which will be unset otherwise.

Comments from Reviewable

Review status: all files reviewed at latest revision, 2 unresolved discussions.

deploy/demo.sh, line 41 at r1 (raw file):

function demo::get-dind-cluster {
  if [[ -f ${dind_script} ]]; then
    demo::step "Will now clear existent dind-cluster-v1.5.sh to be sure it is up to date"

"Will now update ${dind_script} script to the latest version"

deploy/demo.sh, line 43 at r1 (raw file):
Previously, vefimova (Victoria Efimova) wrote…
Well, as we always update dind image only warning about that, not updating scripts as well can cause issues, like with introducing https://github.com/Mirantis/kubeadm-dind-cluster/search?utf8=✓&q=CNI_PLUGIN&type=  new var CNI_PLUGIN lately which will be unset otherwise.

rm "${dind_script}"
(quote the var)

Comments from Reviewable

Review status: 0 of 1 files reviewed at latest revision, 2 unresolved discussions.

deploy/demo.sh, line 41 at r1 (raw file):
Previously, ivan4th (Ivan Shvedunov) wrote…
"Will now update ${dind_script} script to the latest version"

Done.

deploy/demo.sh, line 43 at r1 (raw file):
Previously, ivan4th (Ivan Shvedunov) wrote…
rm "${dind_script}"
(quote the var)

Done.

Comments from Reviewable

 but still IMO we should an option to skip this rm. Up to now we have a possibility to use old/tested ver or dind script. This is changed there and does not provide any option to keep old-safe behavior.

Reviewed 1 of 1 files at r2.
Review status: all files reviewed at latest revision, 2 unresolved discussions.

Comments from Reviewable

updated, ptal

Reviewed 1 of 1 files at r3.
Review status: all files reviewed at latest revision, 3 unresolved discussions.

deploy/demo.sh, line 69 at r3 (raw file):

    demo::step "Found existent ${dind_script}, it can be not up to date"
    if [[ ! ${NONINTERACTIVE} ]]; then
        demo::ask-user "Do you want to reload ${dind_script} ?" download

"redownload", instead of "reload"

Comments from Reviewable

Review status: 0 of 1 files reviewed at latest revision, 3 unresolved discussions.

deploy/demo.sh, line 69 at r3 (raw file):
Previously, jellonek (Piotr Skamruk) wrote…
"redownload", instead of "reload"

Done.

Comments from Reviewable

Reviewed 1 of 1 files at r4.
Review status: all files reviewed at latest revision, 3 unresolved discussions.

Comments from Reviewable

Review status: all files reviewed at latest revision, 2 unresolved discussions.

deploy/demo.sh, line 41 at r1 (raw file):
Previously, vefimova (Victoria Efimova) wrote…
Done.

Where it's done? I don't see it still says that.

Comments from Reviewable

Review status: all files reviewed at latest revision, 2 unresolved discussions.

deploy/demo.sh, line 41 at r1 (raw file):
Previously, pigmej (Jędrzej Nowak) wrote…
Where it's done? I don't see it still says that.

Well, actually this comment was valid to previous version of patch, so I don't think it's still valid.

Comments from Reviewable

Review status: 0 of 1 files reviewed at latest revision, 2 unresolved discussions.

deploy/demo.sh, line 41 at r1 (raw file):
Previously, vefimova (Victoria Efimova) wrote…
Well, actually this comment was valid to previous version of patch, so I don't think it's still valid.

now done :)

Comments from Reviewable

Reviewed 1 of 1 files at r5.
Review status: all files reviewed at latest revision, 2 unresolved discussions.

Comments from Reviewable

Review status: all files reviewed at latest revision, 2 unresolved discussions.

Comments from Reviewable

Review status: all files reviewed at latest revision, 2 unresolved discussions.

deploy/demo.sh, line 41 at r1 (raw file):
Previously, vefimova (Victoria Efimova) wrote…
now done :)

In fact do we really need this message? Because then we're asking if redownload. Also it's bit missleading.
Though I'm not blocking merge just wondering (we can also fix it later)

Comments from Reviewable

Review status: all files reviewed at latest revision, 3 unresolved discussions.

deploy/demo.sh, line 74 at r5 (raw file):

        fi
    else
       demo::step "Will now clear existent ${dind_script}"

existing

Comments from Reviewable

Review status: 0 of 1 files reviewed at latest revision, 3 unresolved discussions.

deploy/demo.sh, line 41 at r1 (raw file):
Previously, pigmej (Jędrzej Nowak) wrote…
In fact do we really need this message? Because then we're asking if redownload. Also it's bit missleading.
Though I'm not blocking merge just wondering (we can also fix it later)

Maybe re-phrase it as "Better to update...."

deploy/demo.sh, line 74 at r5 (raw file):
Previously, ivan4th (Ivan Shvedunov) wrote…
existing

thx, sorry, fixed.

Comments from Reviewable

Reviewed 1 of 1 files at r6.
Review status: all files reviewed at latest revision, 2 unresolved discussions.

Comments from Reviewable

Reviewed 1 of 1 files at r6.
Review status: all files reviewed at latest revision, 2 unresolved discussions.

Comments from Reviewable


GENeSYS-MOD bugfixes

bugfix in series generation from UK data, added compatibility with newest pyam version, reverted the renaming of the "input" folder as done by @erikfilias

Thanks, @tburandt !


fix(protocol-engine): Tolerate labware definitions with bad zDimension

This is a backup workaround to solve issue RSS-197, in case the proper solution, PR #12293, doesn't work out.

No longer necessary. We went with the proper solution instead.


Format source code

Source code is not clear enough for a new developer.
Format the code using clang-format with the WebKit style.

Tests done:

builds with make
still runs


Upgrade jquery.min.js to 3.7.1

See https://github.com/tmedwards/sugarcube-2/issues/269 for context

PRs should be to the devel branch only, never to master.


forge page is confusing

The puppet forge page for this module is confusing (see https://forge.puppetlabs.com/puppet/sslcertificate )
In one place it has the following example, with the weird ticks and puppet
sslcertificate { "Install-PFX-Certificate" :
  name       => 'mycert.pfx',
  password   => 'password123',
  location   => 'C:\',
  thumbprint => '07E5C1AF7F5223CB975CC29B5455642F5570798B'
}

Under usage it says to use "sslcert".
Looking at the module, the actual definition is to use "sslcertificate"

Closing as this no longer seems to be the case in the README. Please re-open with a PR to the docs if I missed what you are talking about. Thanks!


libavif: init at 0.8.1

Motivation for this change
Add https://github.com/AOMediaCodec/libavif
Fixes https://github.com/NixOS/nixpkgs/issues/98303
cc: @mkg20001
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[X] NixOS
[X] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[X] Fits CONTRIBUTING.md.

uh just the same second I made https://github.com/NixOS/nixpkgs/pull/98307
I added the tools to that build aswell since that's what I needed... not sure if there should be a seperate packaeg since tools add dependencies that aren't needed for the devs

The tools can be put in another output

I have https://github.com/NixOS/nixpkgs/pull/98307 ready with the tools but after adding "bin" output it told me that there were circular references after building... dunno what I did wrong

Circular dependencies means that for some reason, the dev output depends on on the bin output, so when you install the lib you have to install the tools as well. Either this makes sense, and then there is no reason to make the derivation multiple output, or this means that some files must be moved from $dev to $bin in postInstall for example.

It also has been happening with just adding bin, so unsure...

closing in favor of https://github.com/NixOS/nixpkgs/pull/98307


Can't use the plugin anymore due to JCenter shutdown

With the shutdown of JCenter, the spot plugin cannot be used anymore. The Gradle build looks following locations and fails due to not being able to locate the plugin:
https://dl.google.com/dl/android/maven2/com/github/spotbugs/spotbugs-gradle-plugin/4.0.2/spotbugs-gradle-plugin-4.0.2.pom
https://repo.maven.apache.org/maven2/com/github/spotbugs/spotbugs-gradle-plugin/4.0.2/spotbugs-gradle-plugin-4.0.2.pom
Announcement of Jcenter shutdown.
https://blog.gradle.org/jcenter-shutdown

This was how part of build.gradle looks like when jcenter was working.
buildscript {
    repositories {
        google()
        mavenCentral()
        maven {
            url "https://plugins.gradle.org/m2/"
        }
    }

    dependencies {
        classpath ("com.github.spotbugs:spotbugs-gradle-plugin:4.7.0")
    }
}

after jcenter shutdown, if I attempt to build the proj it fails:

Could not resolve all artifacts for configuration ':classpath'.
Could not resolve com.github.spotbugs:spotbugs-gradle-plugin:4.7.0.
Required by:
project :
Could not resolve com.github.spotbugs:spotbugs-gradle-plugin:4.7.0.
Could not get resource 'https://plugins.gradle.org/m2/com/github/spotbugs/spotbugs-gradle-plugin/4.7.0/spotbugs-gradle-plugin-4.7.0.pom'.
Could not GET 'https://jcenter.bintray.com/com/github/spotbugs/spotbugs-gradle-plugin/4.7.0/spotbugs-gradle-plugin-4.7.0.pom'. Received status code 502 from server: Bad Gateway

If I remove the "maven { .. } " section then the build fails due to not able to locate the pom in dl.google.com or repo.maven.apache.org

It's not our issue, it should be handled by the official Gradle plugin portal.
https://blog.gradle.org/jcenter-shutdown#impact-plugins
Please join their forum or Slack to ask for detail.

I found the issue, it was the groupId of the artifact used in the classpath. It should be:
classpath ("com.github.spotbugs.snom:spotbugs-gradle-plugin:4.7.0")


VolumeReplicationGroup: move async DR fields to async spec

This is a prerequisite for addition of sync fields to the VRG spec for the metro DR feature.

Merging, if comments need to be handled please do in a followup, Thanks!


More effecient piping with large data

Having an issue with figuring out how to use handles. Also wanted to verify handles are the correct solution rather than say runFoldLines or the other alternative I can't recall at the moment.
Surely examples of how to do the two snippets below in Shelly would be useful to many people:
zcat large.mysql.gz | mysql largedb

cat bigfile | grep things

I guess those two are pretty much the same, though I think runFoldLines might be a better alternative for the second.
{-# LANGUAGE ExtendedDefaultRules #-}
{-# LANGUAGE OverloadedStrings    #-}
{-# OPTIONS_GHC -fno-warn-type-defaults #-}
import           Data.Monoid
import           Data.Text   as T
import           Shelly
default (T.Text)

main = shelly $ do
  -- I'm trying to do "zcat large.mysql.gz | mysql largedb" basically
  -- minimal reproduction:
  run "echo" ["a very large file"] -|- run_ "grep" ["file"] -- predictably runs out of memory
  -- runHandle "echo" ["test"] $ \h -> run "grep" ["test"] -- thought this was the equivalent

The easiest way to run these right now is to just let the shell do it. Something like the following (untested).
shelly $ escaping False
  run "sh ["-c", "zcat large.mysql.gz | mysql largedb"]

There is no magic going on with the handles. It is just a low level interface. If you want to create a connection through handles you would need to use runHandles and use the handle from the first command as an input handle. Perhaps you can post some example code that does this and we can make some conveniences for it?


Authentication-2: Members Only

Dear TSE,
You can:

Create User
Create posts with that user
See the author names if you are logged in

You can't:

See the author names if you are not logged in
Create posts if you are not logged in

With all our respects...

Dear TSE,
Thank you very much for your feedback.

.gitignore file added
routes edited
before_action edited
initialized Post.new
Only signed_in users can see the author name
Json data cleaned from Html files

With all my respect...


Example code (Walkthrough) throws an exception

Example code (Walkthrough) throws an exception.
Please check position of these lines:
  AccountManager = aggregateManager;             RevenueRepository = revenueRepository;
Thanks.

Change
https://github.com/Lutando/Akkatecture/blob/master/examples/walkthrough/Akkatecture.Walkthrough.Application/Program.cs#L56
To the following:
system.ActorOf(Props.Create(() => new RevenueSubscriber(revenueRepository)),"revenue-subscriber");

I will check in the fix shortly. Let me know if this helps


Resolutions

The type of this PR is: Documentation

This PR resolves MX-438
Description

We had 4 resolutions. 3 were some @types/* thing, and we had them in the devdeps anyway, so I removed them.
The last one is cheerio and I looked around and documented it in HACKS.md.
Lastly I also added a little comment in resolutions so we remember to write things down next time.
PR Checklist (tick all before merging)

[x] I have included screenshots or videos to illustrate my changes, or I have not changed anything that impacts the UI.
[x] I have added tests for my changes, or my changes don't require testing, or I have included a link to a separate Jira ticket covering the tests.
[x] I have documented any follow-up work that this PR will require, or it does not require any.
[x] I have added an app state migration, or my changes do not require one. (What are migrations?)

tsc is failing 🤔 looks like we need that styled-components resolution at least

Mm interesting. I'll take a look.


[Question/Feature_Request]: sensor for tempTarget (or other "nested" values)

Describe the bug
I'm unable to find anything related to climate sensors that are nested under thermostat values. Right now I use a workaround via node-red loxone plugin - it allows to simply select the required input and then I can pass it to MQTT but it's sub-optimal.

I make persistent mqtt records to store the latest temp target set on Loxone and then pass it HA. Then I have a helper slider that is using your example custom api call

Perhaps I can't find and you can point me in the right direction? If not possible to have a sensor, is there a custom api command I could use?
Firmware of your Miniserver
<IP_ADDRESS>
HomeAssistant install method
docker
Version of HomeAssistant
2023.6.2
Version of Pyloxone
0.4.3
Update pyloxone
no
Log
Settings for the log can be found on the main page under the section Log Configuration

@huliz  it is not a bug. The sensors with subsensors are not read. For the light controller pyloxone can read out all subcontrols and create controls for each subcontrol. But it is not done for other device types.
You can try to create custom sensors for each of the sensors which you want to see.

@huliz I do not know what you mean with api command? What do you want to do?

I would like to read targetTemp value from Loxone thermostat
On Mon, Nov 13, 2023, 20:56 Joachim D. @.***> wrote:

@huliz https://github.com/huliz I do not know what you mean with api
command? What do you want to do?
—
Reply to this email directly, view it on GitHub
https://github.com/JoDehli/PyLoxone/issues/213#issuecomment-1808951380,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACYMU6AIZNQEHT6UIGWKRRLYEJ3P7AVCNFSM6AAAAAA7IX3DZSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMBYHE2TCMZYGA
.
You are receiving this because you were mentioned.Message ID:
@.***>

@huliz can you post the entire section for the thermostat from the structure file. You can hide the uuid for security.

thanks for trying to look into it, I've replaced some values with xxx and yyy. If I got it right, this is just about one room.
ideally I would just want to read the current target temperature, input it for HA thermostat and then schedule/regulate to whatever is required.
"xxx-00e2-32af-yyy": {
            "name": "Thermostat Guest Room",
            "type": "IRoomController",
            "uuidAction": "xxx-00e2-32af-yyy",
            "room": "0c4bc0a8-0275-03e8-yyy",
            "cat": "0c4bc0a8-0261-02e0-yyy",
            "defaultRating": 1,
            "isFavorite": false,
            "isSecured": false,
            "details": {
                "jLockable": true,
                "restrictedToMode": 2,
                "temperatures": {
                    "0": {
                        "isAbsolute": false
                    },
                    "1": {
                        "isAbsolute": true
                    },
                    "2": {
                        "isAbsolute": true
                    },
                    "3": {
                        "isAbsolute": true
                    },
                    "4": {
                        "isAbsolute": true
                    },
                    "5": {
                        "isAbsolute": false
                    },
                    "6": {
                        "isAbsolute": false
                    }
                },
                "format": "%.1f°"
            },
            "states": {
                "jLocked": "907111db-001d-ef4c-ffff7b344b2f377a",
                "tempTarget": "xxx-00e2-32aa-ffff1e329f4d943d",
                "tempActual": "xxx-00e2-328b-ffff1e329f4d943d",
                "error": "xxx-00e2-32a8-ffff1e329f4d943d",
                "mode": "xxx-00e2-32a6-ffff1e329f4d943d",
                "serviceMode": "xxx-00e2-32a7-ffff1e329f4d943d",
                "currHeatTempIx": "xxx-00e2-3282-ffff1e329f4d943d",
                "currCoolTempIx": "xxx-00e2-3283-ffff1e329f4d943d",
                "override": "xxx-00e2-32ad-ffff1e329f4d943d",
                "isPreparing": "xxx-00e2-32ae-ffff1e329f4d943d",
                "valveHeat": "xxx-00e2-329d-ffff1e329f4d943d",
                "valveCool": "xxx-00e2-32a1-ffff1e329f4d943d",
                "openWindow": "xxx-00e2-328c-ffff1e329f4d943d",
                "stop": "107111db-001d-ef4c-ffff7b344b2f377a",
                "overrideTotal": "0eec2b1d-0322-199c-yyy",
                "movement": "0eec2b1d-0322-199b-yyy",
                "manualMode": "0eec2b1d-0322-199d-yyy",
                "temperatures": [
                    "xxx-00e2-3292-ffff1e329f4d943d",
                    "xxx-00e2-3293-ffff1e329f4d943d",
                    "xxx-00e2-3294-ffff1e329f4d943d",
                    "xxx-00e2-3297-ffff1e329f4d943d",
                    "xxx-00e2-3298-ffff1e329f4d943d",
                    "xxx-00e2-3296-ffff1e329f4d943d",
                    "xxx-00e2-3295-ffff1e329f4d943d"
                ]
            },
            "statistic": {
                "frequency": 6,
                "outputs": [
                    {
                        "id": 0,
                        "name": "Temperature",
                        "format": "%.1f°C",
                        "uuid": "xxx-00e2-328b-ffff1e329f4d943d",
                        "visuType": 0
                    }
                ]
            },
            "subControls": {
                "xxx-00e2-3280-ffff1e329f4d943d": {
                    "name": "Heating",
                    "type": "IRCDaytimer",
                    "uuidAction": "xxx-00e2-3280-ffff1e329f4d943d",
                    "defaultRating": 0,
                    "isFavorite": false,
                    "isSecured": false,
                    "details": {
                        "analog": true,
                        "format": "%.1f°"
                    },
                    "states": {
                        "entriesAndDefaultValue": "xxx-00e2-3280-ffff1e329f4d943d",
                        "mode": "xxx-00e2-32ab-ffff1e329f4d943d",
                        "modeList": "0eec2b1d-0322-1999-yyy",
                        "value": "xxx-00e2-3282-ffff1e329f4d943d"
                    }
                },
                "xxx-00e2-3281-ffff1e329f4d943d": {
                    "name": "Cooling",
                    "type": "IRCDaytimer",
                    "uuidAction": "xxx-00e2-3281-ffff1e329f4d943d",
                    "defaultRating": 0,
                    "isFavorite": false,
                    "isSecured": false,
                    "details": {
                        "analog": true,
                        "format": "%.1f°"
                    },
                    "states": {
                        "entriesAndDefaultValue": "xxx-00e2-3281-ffff1e329f4d943d",
                        "mode": "xxx-00e2-32ac-ffff1e329f4d943d",
                        "modeList": "0eec2b1d-0322-199a-yyy",
                        "value": "xxx-00e2-3283-ffff1e329f4d943d"
                    }
                }
            }
        },

@huliz I see. So you can try to make a  custom sensor to display the target temp in ha. On the main page is a example how to integrate it. I think it is the first example. You need to replace the uuid with the uuid for your target temperature

@huliz I meant the uuid under states. On this uuid the state is reported.

now I feel stupid, it was much easier than I thought :) thanks a lot

@huliz No problem. Glad that it worked.


Incorrect error when a class implements the same generic interface from a legacy and migrated library

The analyzer issues an error when a class implements the same generic interface from a legacy and a migrated library.
// migrated
class A<T> {}

class B extends A<int> {}

// @dart = 2.5
import "test3.dart";

class C extends B implements A<int> {}

  error • The class 'C' cannot implement both 'A<int>' and 'A<int>' because the type arguments are different. • /Users/leafp/tmp/test.dart:3:1 • conflicting_generic_interfaces

This should not be an error - in non-migrated libraries, there should be no errors arising from the interaction of migrated and non-migrated types.
This came up a couple of times in migrating the core libraries.
cc @eernstg @munificent @lrhn @stereotype441 @stefantsov

I have observed this conflict in a library which is opted in as well, so we may need to tolerate this kind of conflict also when it arises in opted-in code.
We cannot expect to avoid the conflicts, because there will be diamond patterns (C<T> implements B1<T> and B2<T>, both of them implement A<T>, and the implements links to B1 and B2 occur in opted-in respectively opted-out code), and that setup will be visible from opted-in code as well as opted-out code.

The reason this restriction exists is because we assume that given a reference to one class that implements another, we assume that it is meaningful and well formed to ask "how does this class implement this other class?"  We need to ask this question in order to resolve method calls and do correct type checking.
So let's expand the example above like so:
// migrated
class A<T> {
  void f(T t) { ... }
}
class B extends A<int> {}

// @dart = 2.5
import "test3.dart";

class C extends B implements A<int> {}

// migrated
void test(C c, int? i) {
  c.f(i);          // (1)
}

Should the call at (1) result in an error (or, in weak checking mode, a warning)?  Normally we would answer this question by the following logic:

The call to f resolves to A.f.
To figure out the type of A.f in this context, we first need to figure out what the type argument of A is.
To answer that, we ask "how does class C implement A".  The answer is ambiguous: if we go through B, then C implements A<int>, in which case the type of A.f is void Function(int), and we have an error due to the lack of a null check.  But if we go directly via C's "implements" clause, then C implements A<int*>, in which case the type of A.f is void Function(int*), and we have no error.

So if we want to allow for this sort of ambiguity, what should the behavior be?  (And can we figure out a coherent way to implement it?)

@leafpetersen @eernstg It looks like this still could use some attention. This issue is a short term blocker for my DDC implementation work but should go away once more of the core libraries opt in. For me, making progress on the migration has priority over a decisions in the questions raised here.

tl;dr  For legacy code, erase. For nnbd code, ignore * rd;lt
In legacy code there should not be a notion of having an NNBD type argument in a superinterface (the legacy code just doesn't know what that is). We can get this kind of conflict at the very first step of a migration (where we change new.dart such that it is opted in rather than out):
// ---------- Opted-in library 'new'.
class A<X> {}
class B1 implements A<int> {}

// ---------- Opted-out library 'old'.
// @dart = 2.5
import 'new.dart';
class B2 implements A<int> {}
class C implements B1, B2 {}

This situation arises from existing code simply by opting in new.dart and leaving old.dart unchanged (and opted out). That should not put old.dart in a situation where it has a compile-time error that cannot be eliminated unless old.dart is opted in. (We could move the declaration of B2 to another library which is opted in, but that's essentially the same thing as saying "the error in old.dart cannot be eliminated").
Presumably this means that static analysis in a legacy file would need to ignore conflicts like the one that we get for "implements a superinterface S with more than one list of actual type arguments", when they arise only in terms of NNBD typing distinctions.
But that's already what is specified: When legacy libraries are checked they should work on types where nnbd type elements have been erased (in particular, the legacy library cannot see the difference between int and int*). So I believe this part would be a matter of implementation rather than a matter of clarifying or changing specifications.
During the static analysis of an opted-in library (let's call that 'nnbd code'), this section specifies that 'types which are imported' from legacy libraries are seen as legacy types, whereas inference erases such types before they are used (say, to perform override inference).
Perhaps we could make a distinction between different kinds of import of such types? At least, it seems tempting to apply erasure to superinterfaces. This would make them identical to the types that are used during inference. It would not be sound, of course:
// Opted-out 'old.dart'.
class A<X> {
  X x = null;
  X get g => x;
}

class B extends A<int> {}

// Opted-in 'new.dart'.
import 'old.dart';

class C extends B {}

The interface of C would now have a member signature g with return type int, but it actually returns null. Nevertheless, this may not be worse than various other sources of unsoundness, and it does eliminate the "implement same superinterface with different type arguments" problem.

https://dart-review.googlesource.com/c/sdk/+/125549


Remove Existing __pycache__ Directories and Update .gitignore to handle __pycache__ directory instead of __pycache__ file

This PR closes #35 by addressing the issue of __pycache__ directories being present in the repository, despite being included in .gitignore. The __pycache__ directories contain Python bytecode files (.pyc) that are generated during runtime and are not necessary for the source code. These files can lead to unnecessary clutter and inconsistencies across environments.
Changes Made:

Removed all existing __pycache__ directories from the repository using:git rm -r --cached **/__pycache__

Updated .gitignore to explicitly exclude the __pycache__/ directory (with a trailing slash) instead of just __pycache__. The trailing slash ensures that only directories named __pycache__ are ignored, rather than files, which prevents any unintentional tracking of these runtime-generated directories in the future.

@microsoft-github-policy-service agree

@Vikranth3140 please read the following Contributor License Agreement(CLA). If you agree with the CLA, please reply with the following information.
@microsoft-github-policy-service agree [company="{your company}"]

Options:

(default - no company specified) I have sole ownership of intellectual property rights to my Submissions and I am not making Submissions in the course of work for my employer.

@microsoft-github-policy-service agree

(when company given) I am making Submissions in the course of work for my employer (or my employer has intellectual property rights in my Submissions by contract or applicable law). I have permission from my employer to make Submissions and enter into this Agreement on behalf of my employer. By signing below, the defined term “You” includes me and my employer.

@microsoft-github-policy-service agree company="Microsoft"

Contributor License Agreement
Contribution License Agreement
This Contribution License Agreement (“Agreement”) is agreed to by the party signing below (“You”), and conveys certain license rights to Microsoft Corporation and its affiliates (“Microsoft”) for Your contributions to Microsoft open source projects. This Agreement is effective as of the latest signature date below.

Definitions.
“Code” means the computer software code, whether in human-readable or machine-executable form,
that is delivered by You to Microsoft under this Agreement.
“Project” means any of the projects owned or managed by Microsoft and offered under a license
approved by the Open Source Initiative (www.opensource.org).
“Submit” is the act of uploading, submitting, transmitting, or distributing code or other content to any
Project, including but not limited to communication on electronic mailing lists, source code control
systems, and issue tracking systems that are managed by, or on behalf of, the Project for the purpose of
discussing and improving that Project, but excluding communication that is conspicuously marked or
otherwise designated in writing by You as “Not a Submission.”
“Submission” means the Code and any other copyrightable material Submitted by You, including any
associated comments and documentation.
Your Submission. You must agree to the terms of this Agreement before making a Submission to any
Project. This Agreement covers any and all Submissions that You, now or in the future (except as
described in Section 4 below), Submit to any Project.
Originality of Work. You represent that each of Your Submissions is entirely Your original work.
Should You wish to Submit materials that are not Your original work, You may Submit them separately
to the Project if You (a) retain all copyright and license information that was in the materials as You
received them, (b) in the description accompanying Your Submission, include the phrase “Submission
containing materials of a third party:” followed by the names of the third party and any licenses or other
restrictions of which You are aware, and (c) follow any other instructions in the Project’s written
guidelines concerning Submissions.
Your Employer. References to “employer” in this Agreement include Your employer or anyone else
for whom You are acting in making Your Submission, e.g. as a contractor, vendor, or agent. If Your
Submission is made in the course of Your work for an employer or Your employer has intellectual
property rights in Your Submission by contract or applicable law, You must secure permission from Your
employer to make the Submission before signing this Agreement. In that case, the term “You” in this
Agreement will refer to You and the employer collectively. If You change employers in the future and
desire to Submit additional Submissions for the new employer, then You agree to sign a new Agreement
and secure permission from the new employer before Submitting those Submissions.
Licenses.

Copyright License. You grant Microsoft, and those who receive the Submission directly or
indirectly from Microsoft, a perpetual, worldwide, non-exclusive, royalty-free, irrevocable license in the
Submission to reproduce, prepare derivative works of, publicly display, publicly perform, and distribute
the Submission and such derivative works, and to sublicense any or all of the foregoing rights to third
parties.
Patent License. You grant Microsoft, and those who receive the Submission directly or
indirectly from Microsoft, a perpetual, worldwide, non-exclusive, royalty-free, irrevocable license under
Your patent claims that are necessarily infringed by the Submission or the combination of the
Submission with the Project to which it was Submitted to make, have made, use, offer to sell, sell and
import or otherwise dispose of the Submission alone or with the Project.
Other Rights Reserved. Each party reserves all rights not expressly granted in this Agreement.
No additional licenses or rights whatsoever (including, without limitation, any implied licenses) are
granted by implication, exhaustion, estoppel or otherwise.

Representations and Warranties. You represent that You are legally entitled to grant the above
licenses. You represent that each of Your Submissions is entirely Your original work (except as You may
have disclosed under Section 3). You represent that You have secured permission from Your employer to
make the Submission in cases where Your Submission is made in the course of Your work for Your
employer or Your employer has intellectual property rights in Your Submission by contract or applicable
law. If You are signing this Agreement on behalf of Your employer, You represent and warrant that You
have the necessary authority to bind the listed employer to the obligations contained in this Agreement.
You are not expected to provide support for Your Submission, unless You choose to do so. UNLESS
REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING, AND EXCEPT FOR THE WARRANTIES
EXPRESSLY STATED IN SECTIONS 3, 4, AND 6, THE SUBMISSION PROVIDED UNDER THIS AGREEMENT IS
PROVIDED WITHOUT WARRANTY OF ANY KIND, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTY OF
NONINFRINGEMENT, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.
Notice to Microsoft. You agree to notify Microsoft in writing of any facts or circumstances of which
You later become aware that would make Your representations in this Agreement inaccurate in any
respect.
Information about Submissions. You agree that contributions to Projects and information about
contributions may be maintained indefinitely and disclosed publicly, including Your name and other
information that You submit with Your Submission.
Governing Law/Jurisdiction. This Agreement is governed by the laws of the State of Washington, and
the parties consent to exclusive jurisdiction and venue in the federal courts sitting in King County,
Washington, unless no federal subject matter jurisdiction exists, in which case the parties consent to
exclusive jurisdiction and venue in the Superior Court of King County, Washington. The parties waive all
defenses of lack of personal jurisdiction and forum non-conveniens.
Entire Agreement/Assignment. This Agreement is the entire agreement between the parties, and
supersedes any and all prior agreements, understandings or communications, written or oral, between
the parties relating to the subject matter hereof. This Agreement may be assigned by Microsoft.

@microsoft-github-policy-service agree


CORS does not work with CDN

It is quite well that ASP.NET Core detects whether CORS headers are needed or not, but it does not work with CDN. In requests through CDN, ASP.NET Core thinks that it does not need to send CORS headers and it simply stops sending CORS headers.

@ackava can you provide more info on how things are set up, and what exactly doesn't work? Usually it's the CDN that needs CORS headers set up.

And generally CDNs don't require CORS, because, well, they're open to multiple sites, so listing each one would be a nightmare.

@blowdart they do need CORS so that JS files can programmatically download files from them, such as fonts. But, their CORS settings would probably be to blanket-allow all hosts for all things.

Ah yea, ok, I poorly worded :) Allowing all is basically "I don't have requirements" to my mind.

@Eilon Here is what I have,
I have JS module resolver that downloads JS modules (individual files) via XHR and executes in either eval or script inject (RequireJS, SystemJS) all of them do exactly same thing.
CDN through Azure CDN, does not send CORS headers, where else cdn.jsdelivr.net etc they do. Unfortunately, CORS headers detects that there is no need to send CORS and it does not send any CORS headers.
There should be a simple way to force sending headers even if they are not required.
My work around now is to remove default CORS config and I have to write a module to force CORS headers.
        app.Use(async (context, next) => {

                if( isJavaScriptResource(context)) {
                    IHeaderDictionary headers = context.Response.Headers;
                    headers.Add("access-control-allow-origin", "*");
                    headers.Add("access-control-expose-headers", "*");
                    headers.Add("access-control-allow-methods", "*");
                    headers.Add("access-control-allow-headers", "*");
                    headers.Add("access-control-max-age", "300");
                }
                await next();

       });

You set up your own Azure CDN instance?
But either way I think I'm missing something here: if you're using an Azure CDN, how does setting the response headers of your web app have any effect on this at all?

That is, CORS is between the web browser and the CDN, not your web app.

Azure CDN has custom origin set to my appilcation. So CDN simply forwards headers if they are present in the response. Otherwise CDN does not send CORS headers.
My app is,
https://secure.app.com
and CDN url is
https://myapp.edgecdn.net
All JavaScripts referenced in page are loaded from CDN url and not my app url.

Ah, I see now how this is configured, thank you for explaining. The Azure CDN essentially proxies requests back to your own app (if needed).
When it wasn't working initially, how were you setting CORS? ASP.NET Core doesn't send any CORS headers by default - you have to use either the CORS middleware or MVC's CORS features.

The MVC CORS feature applies only to requests that come in to MVC itself. Because in your case these are presumably all requests for static files, chances are that the Static Files middleware will handle them all.
So, that brings us to .UseCors(), which you'd need to make sure runs before calling .UseStaticFiles(), so that the CORS middleware will run before the Static Files middleware, so that it has a chance to add the headers you want.
Can you confirm you had the middleware in that order?

@ackava have you had a look at the logs? The CORS middleware does not send headers if it calculates that the policy does not match.

I am not using UseStaticFiles, I have my own controller that actually
fetches JavaScript from a git repository and sends it as FileContent.
But even in case of UseStaticFiles it should work become chrome will not
allow Ajax requests from JavaScript that came from CDN.
But if you read my work around, everything is working fine.
I just feel that CORS should have ability to send headers without checking
input request.
On Tue, Sep 11, 2018 at 1:40 PM Eilon Lipton<EMAIL_ADDRESS>wrote:

The MVC CORS feature applies only to requests that come in to MVC itself.
Because in your case these are presumably all requests for static files,
chances are that the Static Files middleware will handle them all.
So, that brings us to .UseCors(), which you'd need to make sure runs
before calling .UseStaticFiles(), so that the CORS middleware will run
before the Static Files middleware, so that it has a chance to add the
headers you want.
Can you confirm you had the middleware in that order?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/aspnet/Home/issues/3520#issuecomment-420358102, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AlnG2bwf_BIYZiUxTLUX2FtHMkpTRhT8ks5uZ_WNgaJpZM4WfSma
.

@pranavkm, can you please investigate this further? If there is a specific configuration required for this scenario, we should just document it.,

I just feel that CORS should have ability to send headers without checking input request.

The values for Access-Control-Allow-Origin, Access-Control-Allow-Headers, Access-Control-Allow-Method` are calculated by the middleware based on the incoming request. For most parts, the middleware would not be able to send meaningful header responses for non-CORS requests.

I am not using UseStaticFiles

The CorsMiddleware logs it's evaluation for every incoming request and why it decided not to send a CORS response. That would help here.

@pranavkm My request here is simple, irrespective of incoming request headers, I should be able to simply force Access-Control headers. A simple config to override all calculation and send header will suffice.

@ackava, this is not something we plan to do:

irrespective of incoming request headers, I should be able to simply force Access-Control headers. A simple config to override all calculation and send header will suffice.

You can achieve what you want by simply registering a custom middleware to write any headers you want.


[UPDATE BONUS GUIDE] Fulcrum v1.9.1

What

Update Bonus Guide Fulcrum to v1.9.1
Update "Fulcrum upgrade" section to include relevant steps only

Why

New Fulcrum release version
Some steps that were part of initial installation are not required for application upgrade

How
Update the Bonus Guide
Scope

[ ] significant change to core configuration
[x] independent bonus guide
[x] simple bug fix

Test & maintenance
Included steps have been tested to upgrade from v1.9.0

Also added steps to update zmqpubhashblock when updating Fulcrum.
These would be good to have in case of an upgrade, since, as per previous installation instruction, bitcoin.conf contained old value.


How can i change the selected Date/Date-Range of a PickeMeUp-Datepicker from the Outside?

Hello. How can i change the selected Date/Date-Range of a PickeMeUp-Datepicker from the Outside? For Example on a Button Click. Maybe its simple and i just can't see it ... in jQuery Datepicker it is very simple. Thank you very much.

Yes, you can use https://github.com/nazar-pc/PickMeUp#set-date for this


[question] should i use this, or PhoenixAdult?

Hi!  I'm a long time user of PhoenixAdult, first for Plex, and now Jellyfin.   I have a whole library managed by the current PhoenixAdult plugin.  I have some questions:

Should I migrate to this one instead?
Will PhoenixAdult development continue?
What process should I follow to migrate from PhoenixAdult to this plugin, if I should migrate?

Thanks in advance!  Exciting to see what comes.

That's totally up to you; Do you prefer solely using the API? Or would you prefer using the actual sites with the API as a backup?

Good questions!  I guess my main question is if both plugins are going to be maintained.  And I suppose that's a question for the other developer. :)  Thanks!

True, this plugin is maintained by the same guy who maintains PhoenixAdult;
So use whichever you think works best for you :) I'd say this one works better with the API, whilst the other one focuses on scraping websites with the API as backup.


[Feature Request] 4DCT Supported

What feature or change would you like to see made?
The cine clip tool can play 4DCT group.
The 4DCT group can contain CT (or CBCT) image sets defined in the same FoR. The intended use is to group image sets acquired over time, e.g., phases in a breathing.
Why should we prioritize this feature?
4DCT is important in image processing.

I'm surprised it won't work since our CINE can play through 4D when it detects it
https://www.cornerstonejs.org/live-examples/dynamiccinetool
Could you kindly provide the data if it has been anonymized and you can confirm that there is no patient health information present in any of the headers or embedded within the pixel data?

I'm surprised it won't work since our CINE can play through 4D when it detects it https://www.cornerstonejs.org/live-examples/dynamiccinetool
Could you kindly provide the data if it has been anonymized and you can confirm that there is no patient health information present in any of the headers or embedded within the pixel data?

@sedghi Hi, I have sent the data to your gmail.

we will look into this

Can you send data again?

@sedghi Hi, a new dataset has been sent to your Gmail.

I will look next week, thanks


Expand Example Project Complexity for Better Learning

This PR contains daily documentation updates based on the following suggestion:
Revise and enrich the example projects code in documentation to incorporate contextually richer scenarios that will aid users in understanding how to create more complex agents, actions, and generators in real-world situations.
description of file changes: - docs/guides/index.md: Update with links to several new examples showcasing complex agents that automate tasks using time-based triggers, file monitoring, or external signals. Ensure detailed comments in the code examples to guide the developer through the process.

docs/guides/tdd_bot.md: Add new complex scenarios or extend existing ones to showcase advanced features.
docs/guides/voice-chat.md: Refactor to include additional sections on how these features can be expanded for more sophisticated implementations, like integrating additional AI services.

advanced-agents.md is referenced, but non existent. it also was not added.
I've made a change to the script to do the following:
If a link is added make sure it leads to an existing page, or create the new page being referenced


try to fix the repo languages, ignore several folders

Pull Request Description
What issue does this change request address? (Use "#" before the issue to link it, i.e., #42.)
close #1801
What are the significant changes in functionality due to this change request?

For Change Control Board: Change Request Review
The following review must be completed by an authorized member of the Change Control Board.

[ ] 1. Review all computer code.
[ ] 2. If any changes occur to the input syntax, there must be an accompanying change to the user manual and xsd schema. If the input syntax change deprecates existing input files, a conversion script needs to be added (see Conversion Scripts).
[ ] 3. Make sure the Python code and commenting standards are respected (camelBack, etc.) - See on the wiki for details.
[ ] 4. Automated Tests should pass, including run_tests, pylint, manual building and xsd tests. If there are changes to Simulation.py or JobHandler.py the qsub tests must pass.
[ ] 5. If significant functionality is added, there must  be tests added to check this. Tests should cover all possible options.  Multiple short tests are preferred over one large test. If new development on the internal JobHandler parallel system is performed, a cluster test must be added setting, in  XML block, the node <internalParallel> to True.
[ ] 6. If the change modifies or adds a requirement or a requirement based test case, the Change Control Board's Chair or designee also needs to approve the change.  The requirements and the requirements test shall be in sync.
[ ] 7. The merge request must reference an issue.  If the issue is closed, the issue close checklist shall be done.
[ ] 8. If an analytic test is changed/added is the the analytic documentation updated/added?
[ ] 9. If any test used as a basis for documentation examples (currently found in raven/tests/framework/user_guide and raven/docs/workshop) have been changed, the associated documentation must be reviewed and assured the text matches the example.

Job Test qsubs sawtooth on 76a25c9 : invalidated by @wangcj05

I'm not clear on what you're doing here; it looks like we're ignoring doc as well?

Job Test Ubuntu 20-2 Optional on 76a25c9 : invalidated by @wangcj05
checking


Initialize and populate MongoDB

As a back-end developer
I need to initialize and populate a MongoDB database
So that the app can store and retrieve data efficiently for user and product management
Details and Assumptions
* MongoDB will be used as the primary database for the application.
* Mongoose will be used to model and interact with the MongoDB database.
* The database will store collections for users, products, and other relevant app data.
* The database schema for each collection needs to be defined, including relationships (e.g., users and products).
* The database will be initialized with a few seed data entries for development purposes.
* Assumed to run MongoDB locally for development and connect to a cloud-hosted MongoDB instance (e.g., MongoDB Atlas) for production.
* The database connection will be established through environment variables for security purposes.
* The population of data will be done via seeding scripts or initial data insertion on startup.

Acceptance Criteria
Gherkin Scenario 1: Initialize MongoDB connection
Given a running MongoDB instance
And valid connection details (host, port, username, password) are configured
When the server starts
Then the server should successfully connect to the MongoDB database
And log a confirmation message for a successful connection

Gherkin Scenario 2: Populate MongoDB with initial seed data
Given the MongoDB database is connected
When the server is initialized with a seeding script
Then the database should be populated with predefined collections and initial seed data
And the initial data should include sample users and products

Gherkin Scenario 3: Handling database connection errors
Given invalid connection details are provided
When the server attempts to connect to MongoDB
Then the server should log an error message
And terminate the startup process with a failure status

Done


[Select] Problem with label

Duplicates

[X] I have searched the existing issues

Latest version

[X] I have tested the latest version

Current behavior 😯
I want to see the label in a select component, but there is only white space that breaks the top border (no string)
Expected behavior 🤔
I see in the inspector that label exists but I don't see it
<fieldset aria-hidden="true" class="MuiOutlinedInput-notchedOutline css-1d3z3hw-MuiOutlinedInput-notchedOutline"><legend class="css-1in441m">
Label
</legend>
</fieldset>

Steps to reproduce 🕹
<MUISelect
      ref={inputRef}
      dir={dir}
      MenuProps={{ autoFocus: false }}
      value={options ? value : ""}
      onChange={(e) => onChange(e.target.value)}
      onBlur={onBlur}
      onClose={() => setSearchText("")}
      name={name}
      label={placeholder}
      disabled={disabled}
      error={error}
      className={cx(
        "w-full flex flex-row justify-center items-center",
        {
          "bg-[#F9F8FB]": type === "filled",
        },
        className
      )}
      size="small"
      endAdornment={
        allowClear &&
        value && (
          <InputAdornment className="mx-5" position="end">
            <IoIosCloseCircle
              className="cursor-pointer select-none hover:opacity-100"
              size="1.5rem"
              color="#8000FF"
              opacity="0.3"
              onClick={(e) => {
                e.stopPropagation();
                onChange(undefined);
              }}
            />
          </InputAdornment>
        )
      }
    >
      {showSearch && (
        <ListSubheader>
          <TextField
            dir={dir}
            size="small"
            autoFocus
            placeholder="חיפוש..."
            fullWidth
            InputProps={{
              startAdornment: (
                <InputAdornment position="start">
                  <MdSearch />
                </InputAdornment>
              ),
            }}
            onChange={(e) => setSearchText(e.currentTarget.value)}
            onKeyDown={(e) => {
              if (e.key !== "Escape") e.stopPropagation();
            }}
          />
        </ListSubheader>
      )}
      {displayedOptions?.map((option, i) => (
        <MenuItem key={i} value={option.value}>
          {option.label}
        </MenuItem>
      ))}
    </MUISelect>

Context 🔦
No response
Your environment 🌎

npx @mui/envinfo
  System:
    OS: macOS 12.5.1
  Binaries:
    Node: 18.3.0 - /usr/local/bin/node
    Yarn: 1.22.19 - /usr/local/bin/yarn
    npm: 8.13.2 - /usr/local/bin/npm
  Browser:
    Edge: 105.0.1343.27
  npmPackages:
    @emotion/react: ^11.10.4 => 11.10.4
    @emotion/styled: ^11.10.4 => 11.10.4
    @mui/base:  5.0.0-alpha.96
    @mui/core-downloads-tracker:  5.10.4
    @mui/lab: ^5.0.0-alpha.98 => 5.0.0-alpha.98
    @mui/material: ^5.10.4 => 5.10.4
    @mui/private-theming:  5.10.3
    @mui/styled-engine:  5.10.4
    @mui/system:  5.10.4
    @mui/types:  7.2.0
    @mui/utils:  5.10.3
    @types/react: ^18.0.18 => 18.0.18
    react: ^18.2.0 => 18.2.0
    react-dom: ^18.2.0 => 18.2.0
    typescript: ^4.8.2 => 4.8.2

Hi ! I can't find in the <Select /> doc any example without wrapping the component in a <FormControl /> component. And, everytime, an <InputLabel /> is used. Also, there is a warning under this example https://mui.com/material-ui/react-select/#labels-and-helper-text. Now you're pointing, I wonder if it's even possible to use The <Select /> without wrapping it in <FormControl /> ... I'm intresting to see the futur responses 😄

Okay, yes, I miss this warning... It was apparent to me - if I can use the label in Text Field, it would be the same in Select.
So it is strange that it is not working and I need additional components to configure it...

In Select component, you need to provide form control and input label, else TextField with select prop is a complete form control including a label, input and help text. The InputLabel and FormHelperText need to be rendered inside a FormControl in order to have the nice behavior and positioning in Select component.
For most use cases, you should use TextField rather than the lower-level components that it delegates to (such as Input).
The main reason to use these lower-level components is if you need to customize your form input in some way that isn't supported using TextField.


Can someone give a simplest example of BFS?

I have undirected-graph below, and try to compute bfs, but I do not how how to get the visited edges.
So far I have:
The test file is too difficult for me to understand in the GitHub repository.
HELP
//Create undirected graph
UndirectedGraph<string, Edge<string>> g = new UndirectedGraph<string, Edge<string>>();

g.AddVertexRange(N);
for (int i = 0; i < U.Count; i++){
  g.AddEdge(new QuickGraph.Edge<string>(U[i], V[i]));
 }

//BFS
 var algo = new QuickGraph.Algorithms.Search.UndirectedBreadthFirstSearchAlgorithm<string, QuickGraph.Edge<string>>(g);

Here's a complete example:
UndirectedGraph<string, Edge<string>> g = new UndirectedGraph<string, Edge<string>>();

g.AddVerticesAndEdge(new Edge<string>("0", "1"));
g.AddVerticesAndEdge(new Edge<string>("0", "2"));
g.AddVerticesAndEdge(new Edge<string>("2", "3"));

var algo = new UndirectedBreadthFirstSearchAlgorithm<string, Edge<string>>(g);

var observer = new UndirectedVertexPredecessorRecorderObserver<string, Edge<string>>();

var rootVertex = "0";
using (observer.Attach(algo))
{
    algo.Compute(rootVertex);
}

var targetVertex = "3";
bool foundPath = observer.TryGetPath(targetVertex, out IEnumerable<Edge<string>> path);

path will then contain the two edges:
[0]: "0"->"2"
[1]: "2"->"3"


Bug: regular handler under asgi mount path conflicts with routing to asgi app

Description
If we have a regular handler mounted under an asgi mounted path, and the path of the regular handler is a non-prefix sub-string of the a request path the request will not get mounted to the asgi app.
I.e., if we have an asgi mounted on "/", and a regular handler at "/path", a request to "/some/path" does not get routed to the asgi app.
URL to code causing the issue
No response
MCVE
from __future__ import annotations

from typing import TYPE_CHECKING

from litestar import Litestar, asgi, get
from litestar.testing import TestClient

if TYPE_CHECKING:
    from litestar.types.asgi_types import Receive, Scope, Send

async def asgi_app(scope: Scope, receive: Receive, send: Send) -> None:
    assert scope["type"] == "http"
    await send({
        "type": "http.response.start",
        "status": 200,
        "headers": [
            (b"content-type", b"text/plain"),
            (b"content-length", b"%d" % len(scope["raw_path"])),
        ],
    })
    await send({
        "type": "http.response.body",
        "body": scope["raw_path"],
    })

asgi_handler = asgi("/", is_mount=True)(asgi_app)

@get("/path")
def get_handler() -> str:
    return "Hello, world!"

def test_regular_handler_under_mounted_asgi_app() -> None:
    app = Litestar(
        route_handlers=[asgi("/", is_mount=True)(asgi_app), get_handler],
        openapi_config=None,
        debug=True,
    )

    with TestClient(app) as client:
        resp = client.get("/some/path")
        assert resp.content == b"/some/path"

Steps to reproduce
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

Screenshots
"![SCREENSHOT_DESCRIPTION](SCREENSHOT_LINK.png)"

Logs
No response
Litestar Version
main
Platform

[X] Linux
[ ] Mac
[ ] Windows
[ ] Other (Please specify in the description above)

[!NOTE]
While we are open for sponsoring on GitHub Sponsors and
OpenCollective, we also utilize Polar.sh to engage in pledge-based sponsorship.
Check out all issues funded or available for funding on our Polar.sh dashboard

If you would like to see an issue prioritized, make a pledge towards it!
We receive the pledge once the issue is completed & verified
This, along with engagement in the community, helps us know which features are a priority to our users.

Issue looks to come from here: https://github.com/litestar-org/litestar/blob/7814d597afadb4793e6b947a5644e36dfbab22ba/litestar/_asgi/routing_trie/traversal.py#L145-L146
Where path == "/some/path" and children == ["/path"], the request isn't directed to the mounted application because the path contains the child path. I think instead of testing whether the sub-route is a substring of the path, we should check path.startswith(f"{sub_route}/").


how to run trained model on sample sentence

I have trained the model by running the sentiment_cnn.py script and saved model weights to a file. Now how can I run it on a custom sentence of say 5 ~ 10 words ?

That's possible, however such a short sentences is not what model learned in training, and result may be mediocre. But you can verify it yourself and let us know.


String formatting errors

https://github.com/apple/turicreate/blob/7f07ce795833d0c56c72b3a1fb9339bed6d178d1/src/unity/python/turicreate/cython/cy_pylambda_workers.pyx#L193
# current ^^^
for i in range(n):
    if lcd.input_keys[0][i].size() != n_keys:
        raise ValueError("Row %d does not have the correct number of rows (%d, should be %d)"
                         % (lcd.input_keys[0][i].size(), n))

# the problem is that there are only two arguments provided but the string is expecting three
>>> raise ValueError("Row %d does not have the correct number of rows (%d, should be %d)"
...                  % (22, 44))
Traceback (most recent call last):
  File "<stdin>", line 2, in <module>
TypeError: not enough arguments for format string

# if I am reading this correctly, shouldn't the first argument in the tuple be `i`?
raise ValueError("Row %d does not have the correct number of rows (%d, should be %d)"
                 % (i, lcd.input_keys[0][i].size(), n))
                    ^
                    ^
                    ^

https://github.com/apple/turicreate/blob/7f07ce795833d0c56c72b3a1fb9339bed6d178d1/src/nnvm/tvm/python/tvm/contrib/xcode.py#L189
>>> rpc_root = 'TEST'
>>> raise RuntimeError("Cannot find tvmrpc.xcodeproj in %s," +
...                    (" please set env TVM_IOS_RPC_ROOT correctly" % rpc_root))
Traceback (most recent call last):
  File "<stdin>", line 2, in <module>
TypeError: not all arguments converted during string formatting

# this error can be fixed by removing two brackets and the `+` sign
>>> raise RuntimeError("Cannot find tvmrpc.xcodeproj in %s,"
...                    " please set env TVM_IOS_RPC_ROOT correctly" % rpc_root)
Traceback (most recent call last):
  File "<stdin>", line 2, in <module>
RuntimeError: Cannot find tvmrpc.xcodeproj in TEST, please set env TVM_IOS_RPC_ROOT correctly

https://github.com/apple/turicreate/blob/7f07ce795833d0c56c72b3a1fb9339bed6d178d1/scenario-tests/tests/single_test_driver.py#L11
# current ^^^
def print_help():
    print("""\
{} [sub_directory] [Optional output xunit xml path prefix]

This test runs the scenario test located in the sub directory.
Every python file in the sub directory will be executed against pytest.

Optionally, a setup.py file may exist inside the subdirectory in which case
setup.py is effectively "sourced" before any of the tests are run. This allows
setup.py to modify environment variables which will be picked up by the
tests.

For instance, if the PATH variable is changed in setup.py a different python
environment may be used to run pytest
""" % sys.argv[0])

# the problem above is that the new style `{}` placeholder has been used instead of `%s`
>>> '{}' % 'TEST'
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: not all arguments converted during string formatting
>>> '%s' % 'TEST'
'TEST'
>>> '{}'.format('TEST')
'TEST'

# since the project seems to prefer the old style VS new style,
# simply replacing `{}` with `%s` should fix this error
def print_help():
    print("""\
%s [sub_directory] [Optional output xunit xml path prefix]
^^
^^
^^

Hi delirious-lettuce,
Great catches -- your fixes are good!  If you could submit a pull request with those fixes, that would be fantastic.
Thanks!
-- Hoyt

@hoytak ,
Alright, glad you approve! I was mostly curious about how the first one should be handled but if you are confirming that i should be the first argument then I can easily fix all three and send a PR in the next few minutes!


As a head nurse, I can include photos of staff members

... so that I can quickly identify the individual and better personalise our communication.

We will not proceed with this feature.


Missing logs in logfile

my environment running ArangoDB
I'm using the latest ArangoDB of the respective release series:

[ ] 2.8
[ ] 3.0
[ ] 3.1
[*] 3.2
[ ] self-compiled devel branch

Mode:

[ ] Cluster
[*] Single-Server

Storage-Engine:

[*] mmfiles
[ ] rocksdb

On this operating system:

[ ] DCOS on

[ ] AWS
[ ] Azure
[ ] own infrastructure

[*] Linux

[ ] Debian .deb
[*] Ubuntu .deb
[ ] SUSE   .rpm
[ ] RedHat .rpm
[ ] Fedora .rpm
[ ] Gentoo
[ ] docker - official docker library
[ ] other:

[ ] Windows, version:
[ ] MacOS, version:

this is an usage-related issue:
Brakes are observed when processing requests at the beginning of the second week of use. I associate this with the fact that the server can not write logs to the logfile. Size of /var/log/arangodb3/arangod.log file 0 bite, but logs in web-interface are exist.
I think it relates with "logroate" because logrotate config in /etc/logrotate.d/arangodb3
/var/log/arangodb3/arangod.log {
     rotate 12
     weekly
     compress
     delaycompress
     create 640  arangodb adm
     postrotate
     /etc/init.d/arangodb3 reload-log > /dev/null
     endscript
     }

I temporarily replaced "reload-log" with "restart" and this solved the problem of missing logs, but restarting the server takes a long time.
I think it relates with 034deae commit and #2355

This may be related to #3634 - usually the SIG_HUB should also flush the logging to the respective logfile.

Small hint:
during your researches of the logging and docker we saw that doing an log.error() would flush the logfile. If you want a workaround for now, you may write a tiny foxx app that does this, and invoke it by cron.

adding  || level == LogLevel::INFO LogAppenderFile.cpp to Line 254  makes this work.

This is working again with the latest docker containers available for download - closing.


:sparkles: Add solution and testcases to problem 791

No description provided.

In the future, you can directly mention the PR to the master branch

Okay. I was following the contribution guide 😁. I will pull the PR to the master next time.


DragDrop Component gives error in IE11. TypeError: Object doesn't support property or method 'remove'

Hi misha,
Was trying to run this component in IE11. The component does not run even after the polyfills have been enabled in angular for IE browser. The error message seen is as below:
TypeError: Object doesn't support property or method 'remove'
at dndPlaceholder.set (http://localhost:4200/vendor.js:178758:9
at updateProp (http://localhost:4200/vendor.js )
After researching some about this error found that the object.remove()  method is not supported in IE11. IE11 uses object.parentNode.removeChild() function for nodes.  Component  works fine in chrome & firefox.
If you are aware of some polyfill that could handle this error in angular  that could help or could you please fix it in this project.
Thanks

found the solution here. ->
Issue had been raised by another user.


Theme | Add monospace font to default theme

I added Ubuntu Sans in the meantime we will make a change when #20 is finished