Fast and accurate chromosome-scale phased assembly

Dear users,
Sorry for the late reply. Dipasm is a proof-of-concept tool. Keeping in mind user-friendliness, I recommend the following instructions for fast and accurate chromosome-scale phased assembly using hifi and hi-c:

Produce hifiasm r_utg graph. Binary: https://pstools.s3.us-east-2.amazonaws.com/hifiasm
Pstools binary: https://pstools.s3.us-east-2.amazonaws.com/pstools_1.

./hifiasm -o pgp1.asm -t60 ../data/pgp1/hifi/*.fastq.gz
awk '/^S/{print ">"$2;print $3}' pgp1.asm.r_utg.gfa > pgp1.asm.r_utg.fa;
./pstools hic_mapping_unitig -t64 pgp1.asm.r_utg.fa <(zcat ../data/PGP1/hic/SRR8310069_1.fastq.gz ../data/PGP1/hic/SRR8310062_1.fastq.gz) <(zcat ../data/PGP1/hic/SRR8310069_2.fastq.gz ../data/PGP1/hic/SRR8310062_2.fastq.gz); ./pstools resolve_haplotypes -t64 hic_name_connection.output pgp1.asm.r_utg.gfa ./; ./pstools hic_mapping_haplo -t64 pred_haplotypes.fa <(zcat ../data/PGP1/hic/SRR8310069_1.fastq.gz ../data/PGP1/hic/SRR8310062_1.fastq.gz) <(zcat ../data/PGP1/hic/SRR8310069_2.fastq.gz ../data/PGP1/hic/SRR8310062_2.fastq.gz) -o scaff_connections.txt; ./pstools haplotype_scaffold -t64 scaff_connections.txt pred_haplotypes.fa ./

Please update data files as per your use case.
In theory, it should work for plants. Please let me know if you have any questions.
Look forward to working with you.

Yes, please use hifiasm+pstools, because it is fast, accurate, as well as user-friendly.
In theory hifiasm and Hicanu graphs should be similar, but I have not yet tested with hicanu graphs.
Let me know if you have any questions. Look forward!

Yes, please use hifiasm+pstools, because it is fast, accurate, as well as user-friendly.
In theory hifiasm and Hicanu graphs should be similar, but I have not yet tested with hicanu graphs.
Let me know if you have any questions. Look forward!

Dear Shilpagarg,
Thanks for the instructions. I am following the pstools commands.
Is there a way to estimate the amount of RAM pstools resolve_haplotypes will need?
My "hic_name_connection.output" is around 70G when raw HiC reads were provided. "pstools resolve_haplotypes" ran out of RAM with a 1 TB server.
Should the analysis starts with the set of HiC reads that proven to be "valid tags"? Or the validation of HiC tags were included in the workflow?
Many thanks in advance. Have a nice weekend,
Weihong

Dear Shilpagarg,
Thanks for the instructions. I am following the pstools commands.
Is there a way to estimate the amount of RAM pstools resolve_haplotypes will need?
My "hic_name_connection.output" is around 70G when raw HiC reads were provided. "pstools resolve_haplotypes" ran out of RAM with a 1 TB server.
Should the analysis starts with the set of HiC reads that proven to be "valid tags"? Or the validation of HiC tags were included in the workflow?
Many thanks in advance. Have a nice weekend,
Weihong

<150 Gb for humans with ~30x Hi-C.

<150 Gb for humans with ~30x Hi-C.

Dear Shilpagarg,
Many thanks for your prompt response.
For the new analysis, only valid HiC tags after filtering were used for mapping, and the resulting "hic_name_connection.output" is only 7G.  But "pstools resolve_haplotypes" still failed when 3 TB RAM was allocated.
The genome is highly heterozygous. Usually the primary assembly needs to be purged aggressively at the end. But each of the haploid genome size is less than 1 Gbp.
The stderr of "pstools resolve_haplotypes":
start main
start get bubbles
rm: missing operand
Try 'rm --help' for more information.
finish get bubble chain
utg...
... (here total 687 lines of utg ids)
start get bubbles
/var/lib/slurm/slurmd/job3498159/slurm_script: line 8: 1537222 Killed                  pstools resolve_haplotypes -t32 hic_name_connection.output s60.asm.r_utg.gfa ./
The tmp output "pstools.clean_graph.temp.0.out" is about 1.6 G.
If you have any suggestions on how to further proceed, they will be highly appreciated. Many thanks in advance.
Kind regards,
Weihong

Dear Shilpagarg,
Many thanks for your prompt response.
For the new analysis, only valid HiC tags after filtering were used for mapping, and the resulting "hic_name_connection.output" is only 7G.  But "pstools resolve_haplotypes" still failed when 3 TB RAM was allocated.
The genome is highly heterozygous. Usually the primary assembly needs to be purged aggressively at the end. But each of the haploid genome size is less than 1 Gbp.
The stderr of "pstools resolve_haplotypes":
start main
start get bubbles
rm: missing operand
Try 'rm --help' for more information.
finish get bubble chain
utg...
... (here total 687 lines of utg ids)
start get bubbles
/var/lib/slurm/slurmd/job3498159/slurm_script: line 8: 1537222 Killed                  pstools resolve_haplotypes -t32 hic_name_connection.output s60.asm.r_utg.gfa ./
The tmp output "pstools.clean_graph.temp.0.out" is about 1.6 G.
If you have any suggestions on how to further proceed, they will be highly appreciated. Many thanks in advance.
Kind regards,
Weihong

Thank you. If you could send me properties of the genome as well as datasets used at<EMAIL_ADDRESS>I will be happy to help.

Thank you. If you could send me properties of the genome as well as datasets used at<EMAIL_ADDRESS>I will be happy to help.

@tcb72: Please download binaries and use them as mentioned in the issue. We have tested on several non-human genomes and it seems to work fine. I look forward to helping you with your experiments using pstools (You don't need to install docker etc.).

Thanks for the information here, I just wondered would DipAsm work for a triploid species? What's its main advantage comparing with hifiasm?

is the link https://pstools.s3.us-east-2.amazonaws.com/pstools_1 still working?


chore(main): release uniform 0.2.2

:robot: I have created a release beep boop
0.2.2 (2024-04-26)
Bug Fixes

uniform: version bump (2d89f38)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/fuf-stack/uniform/releases/tag/uniform-v0.2.2 :sunflower:


Does not cooperate with shell pipes.

I love this tool! But I would like to be able to use it with pipes.
For example
astdiff 1>/dev/null | errors.txt
Somehow this tool is breaking out of this convention making this not possible.

Good point. We can definitely do a better job in splitting stdout and stderr. We might also need an option to disable the ANSI output, so it can be pure text usable in a pipe.


Remvoe check for enabled state

Task/Issue URL: https://app.asana.com/0/488551667048375/1203621692416589/f
Description
Steps to test this PR
Feature 1

[ ]
[ ]

UI changes

Before
After

!(Upload before screenshot)
(Upload after screenshot)

Current dependencies on/for this PR:

develop

PR #2686   👈

This comment was auto-generated by Graphite.


[SP-6171] Backport of [PDI-19501] The Carte startJob API was changed …

…to always require a name parameter, and it shouldn't if an id is provided - 9.3 suite

:white_check_mark: Build finished in 16m 53s
Build command:
mvn clean verify -B -e -Daudit -amd -pl engine

:exclamation: No tests found!
:information_source:  This is an automatic message


minor formatting

a few minor formatting suggestions for the README

Thanks, @morgeral, I will finally merge this!


LaTeX and WYSIWYG editor written with electronjs

It would be an honor for me if you included my app in your list. It is my first project on electronjs and Github and I already use it myself for my academic writing and I believe that others will benefit from this friendly approach towards writing LaTeX documents. The simple part is fully functional and will see many additional features in the future. Automatic updates work on both provided binaries. Thank you!
Here is the URL of the repo.
A screen recording gif of the app in action:

Thanks!


[CI-CD Refactor] Add  download_framework_model_by_recipe_type helper function

from sparsezoo import Model, download_framework_model_by_recipe_type

# whether the stub has string parameters or not, does not matter at this point. Every IC model comes with
# `.ckpt.pth` and `pth` file until the server migration is done.

stub = "zoo:cv/classification/resnet_v1-50/pytorch/sparseml/imagenet/pruned_quant-moderate?recipe=transfer_learn"

model = Model(stub)
pytorch_model = download_framework_model_by_recipe_type(model)
# `recipe_name` variable not specified, defaulting to final `.pth` model.
print(pytorch_model)
pytorch_model = download_framework_model_by_recipe_type(model, "transfer_learn")
# `recipe_name` specified, given its value we receive the `ckpt.pth` model.
print(pytorch_model)

stub = "zoo:cv/classification/resnet_v1-50/pytorch/sparseml/imagenet/pruned_quant-moderate"

model = Model(stub)
pytorch_model = download_framework_model_by_recipe_type(model)
print(pytorch_model)
pytorch_model = download_framework_model_by_recipe_type(model, "transfer_learn")
print(pytorch_model)

downloading...: 100%|████████████████████████| 196M/196M [00:16<00:00, 12.2MB/s]
/home/damian/.cache/sparsezoo/XQTJXS/training/model.pth
downloading...: 100%|████████████████████████| 195M/195M [00:16<00:00, 12.4MB/s]
/home/damian/.cache/sparsezoo/XQTJXS/training/model.ckpt.pth
downloading...: 100%|████████████████████████| 196M/196M [00:16<00:00, 12.3MB/s]
/home/damian/.cache/sparsezoo/VQU2CJ/training/model.pth
downloading...: 100%|████████████████████████| 195M/195M [00:16<00:00, 12.1MB/s]
/home/damian/.cache/sparsezoo/VQU2CJ/training/model.ckpt.pth

is there a reason this is in the zoo instead of sparseml? also do we keep a reference to the stub/args in Model if so, maybe we don't need the extra recipe_type param

closing - moved to sparseml


(naïvely) replace git clone/pull execs with vcsrepo

problems here:

this still doesn't pass tests (not sure it's my fault though)
Modulefile needs to be updated, and by updated, i mean replaced by metadata.json
this repo could use a ran of transpec

hey folks
is there any reason to keep this open?
if not, i'm closing it.


chore(package): update allowed engines for node 4 and 5

Closes #149. I've been using it successfully for quite sometime now with my starter kit building on this project.

@philikon for review and merge with passing build

Thanks!


[Fix] fix interceptor issue

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


groveultrasonic: Initial implementation

:thumbsup: Pushing the rest of #152 pull request.
This module was developed and tested on a Grove Ultrasonic Ranger module.
http://www.seeedstudio.com/wiki/Grove_-_Ultrasonic_Ranger
Signed-off-by: Jun Kato<EMAIL_ADDRESS>

Merged with 2eb6ebd3bd79dd3970a13415a22dd0eb36c27a9d. Also made some minor modifications to code, examples and documentation. Thanks for the contribution!


Unit tests need to be revised, and created for model_training.py and get_unique_craters.py

Wrote unit test for get_unique craters.py to extract craters from modelpreds. I was going to write another unit test that converts pixel coordinates to degree/km coordinates, but @cczhu it looks like you've already done this?

Agreed that having two files that do almost the same thing is pretty clunky.  I tried to streamline it into one file, and created some tests to go along with it.  Please see pull request #11.
I did check that model.summary() looks the same in either Keras 1 or 2 using your code and my pull request, but didn't check if the entire script runs properly or not.  Would you be able to check that?  Also, it would be great if we could check something basic, like if you throw in a fake training set of all 1s or something, then set the Keras seed to a fixed value, that you get exactly the same output in your code and mind.  That kind of test could then go in the new test_model_train.py file.

I did some further refinements to extract_unique_craters, and shifted some of your tests into test_utils.py in PR #10.


elm-i18next-gen: init at 1.1.0

Description of changes
Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

Is it possible to package it using buildNpmPackage instead?
See https://github.com/NixOS/nixpkgs/issues/229475.

Is what i did deprecated? Docs don't indicate that.

I wouldn't necessarily say deprecated, maybe more like discouraged. If I understand correctly, some packages can't (yet?) be packaged using buildNpmPackage and still need the old way but if packaging with buildNpmPackage works than that would be preferred.

@Luflosi done

@ilyakooo0 Can you squash commit into one (keeping the message from original one?). Once this is done I can merge this.


Rename to_a method in Itemizable

Summary
Itemizable has a method to_a which returns an array of hashes representing the line items in that itemizable object. This was never a good idea. to_a is really meant to convert an object to an array - instead, this returns an array of child members of the record, which violates the Law of Least Surprise in a whole bunch of ways.
For example, this caused Turbo-Rails to break our code and required a PR to fix https://github.com/hotwired/turbo-rails/pull/502 .
We should rename this method.
Things to consider
to_a is used implicitly in a number of places (e.g. in Array() and when splatting an object into a method, foo(*record). We're going to have to hope that we don't miss any of these usages when we make this change.
Criteria for Completion

[] Rename to_a to something like line_item_hashes
[] Replace all explicit calls of to_a to the new line_item_hashes
[] Run tests and see if there are any implicit calls that we missed
[] Do a smoke test to see if there are any crashes not covered by tests

@clair13 is also interested in taking a look at this -- they'll look too and coordinate here.

Note - this also is used in things like map and each. Finding all the usages is going to be fun!

You can assign this to @clair13 as they will probably be able to get through this quicker than I will.
I will, though, also continue to look and coordinate here.

I have unassigned this from myself as I have not had the time recently to put in the necessary effort. I will continue to work on this as I find time but did not want to hold this up any further from moving forward.

I'm interested in looking in to this if no one else is working on it.

@elasticspoon Please do!


EDR provider should accept request without params

The EDR provider fails if the JSON-RPC request doesn't have a params field. But this field is optional in EIP-1193, so I think it should be optional in the EDR provider too.
This is not super important because we can handle it in the Hardhat side if necessary, but I think we should do it eventually.

Based on the discussion we had externally to GitHub, it sounds like we'll not focus on making EDR's provider EIP-1193 compliant, but rather leave it up to Hardhat to make an EIP-1193 version of a provider.


KAFKA-15045: (KIP-924 pt. 10) Topic partition rack annotation simplified

This PR uses the new TaskTopicPartition structure to simplify the build
process for the ApplicationState, which is the input to the new
TaskAssignor#assign call.

Ah shoot, I was looking at the wrong test results, this is actually breaking RackAwareTaskAssignorTest. I'll revert this and we can fix the failing test in the resubmitted PR


Add option to specify timeout for how long to wait for blocking Producer#send

A little bit unsure regarding providing commit-offset-timeout as an option: https://github.com/confluentinc/parallel-consumer/blob/master/parallel-consumer-core/src/main/java/io/confluent/parallelconsumer/ConsumerOffsetCommitter.java#L148
What's the reason for why timeouts isn't retried? 🤔
if (take == null)
                    throw new InternalRuntimeError(msg("Timeout waiting for commit response {} to request {}", timeout, commitRequest));

A little bit unsure regarding providing commit-offset-timeout as an option: https://github.com/confluentinc/parallel-consumer/blob/master/parallel-consumer-core/src/main/java/io/confluent/parallelconsumer/ConsumerOffsetCommitter.java#L148
What's the reason for why timeouts isn't retried? 🤔
if (take == null)
                    throw new InternalRuntimeError(msg("Timeout waiting for commit response {} to request {}", timeout, commitRequest));

This exception would stop the control-loop.

It does get retried, but it is retried through the same system as if the user's function threw an error. It was easier to do / simpler. Down side is that the message is of course also reprocessed, so not ideal.
Regarding retrying, do you have any preference for how this should occur? Probably would have it's own PR as this PR as a simple config change is trivial to merge (sorry for delay).

needs rebasing

It does get retried, but it is retried through the same system as if the user's function threw an error. It was easier to do / simpler. Down side is that the message is of course also reprocessed, so not ideal.
Regarding retrying, do you have any preference for how this should occur? Probably would have it's own PR as this PR as a simple config change is trivial to merge (sorry for delay).

Perfectly understandable 👍
Agree that reprocessing in user-function should be limited as much as possible, so consumer/producer-errors should preferably be retried in the client lib itself if possible. In this specific case it might just be a matter of aligning the timeout so that the consumer is able to retry exhaustively when. Perhaps https://docs.confluent.io/platform/current/installation/configuration/consumer-configs.html#consumerconfigs_request.timeout.ms is the one 🤔
Duration timeout = ParallelEoSStreamProcessor.DEFAULT_TIMEOUT;
                CommitResponse take = commitResponseQueue.poll(timeout.toMillis(), TimeUnit.MILLISECONDS); // blocks, drain until we find our response

NB: This exception actually caused the control-loop to stop as far as I remember, but msg was reprocessed after application restart :)

NB: This exception actually caused the control-loop to stop as far as I remember, but msg was reprocessed after application restart :)

Sorry, what exception caused the system to shutdown?

I think you need to mark this as ready for review?

NB: This exception actually caused the control-loop to stop as far as I remember, but msg was reprocessed after application restart :)

Sorry, what exception caused the system to shutdown?

If offset-commit timed out (10sec default): https://github.com/confluentinc/parallel-consumer/blob/master/parallel-consumer-core/src/main/java/io/confluent/parallelconsumer/internal/ConsumerOffsetCommitter.java#L156

I think you need to mark this as ready for review?
Sorry, rebased and marked as ready! Build failed, but not possible to see details: https://jenkins.confluent.io/job/confluentinc-pr/job/parallel-consumer/job/PR-121/3/display/redirect

Ah sorry, our build system is under maintenance atm.

ERROR: We have disabled builds for pull requests created by the open source communitydue to build system maintenance.We are working to finish it soon.

I'll check what the eta is.

ok @JorgenRingen , issue has been raised internally - and we should have a public PR builder setup soon, along with matrix builds for multiple AK versions like we used to have with GH actions.

FYI Matrix test against multiple AK and JDK versions in GH #103

Ok @JorgenRingen , if you rebase now it should build


Need a single-select mode for Nav tree

When a user clicks on the permissions button, we're taken to a page where we see boundaries, users and assessments. The current UX design is that when we go to this page, the nav tree needs to reset itself to a collapsed state. Then, when a user clicks on a district, we show the blocks under that district in the boundary box of the permissions page. When they further drill down to the block, we need to see the clusters. And when a cluster is selected, we need to see the institutions under that cluster. Permissions can be assigned at the granularity of the institution level.
Now, we can only show the blocks/clusters of one district/block at a time. Everything else should get collapsed except for the upstream hierarchy of the last clicked boundary. If we allow aggregation of boundaries to show up, it'll be too much load on the server to assign permissions and also confusing UX potentially.
We also need to filter the tree so we show only till the institution level for navigation because permissions are capped at that level.
How can we put the nav tree in a single select mode?
Proposal 1:
When we move to the permissions page, trigger an action that sets SINGLE_SELECT mode on the tree. Set it as part of the state. Then, any TOGGLE_NODE action that comes in during this state should also collapse other open nodes NOT in the hierarchy of the currently selected boundary. This is done in the reducer. For normal nav tree navigation, this won't apply. Also the visibility filter of institution level needs to be applied so anything below that won't show. This can be handled via a memoized selector using reselect and state can be stored in the component so global state won't be disturbed.

Fixed this by just going to a separate component instead of re-using nexisting nav tre.e.


chore: adding regex to validate identifier email

it is possible to validate with the pydantic scheme.
from pydantic import BaseModel, EmailStr

class MagicLink(BaseModel):
    identifier: EmailStr
    payload: dict

https://fastapi.tiangolo.com/tutorial/response-model/#return-the-same-input-data


linux-pam: don't create dangling symlink during build

Motivation for this change
#152844
Things done

Built on platform(s)

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

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

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

I think this may have broken KDE Plasma's Lockscreen. Trying to unlock, even being 100% sure the password is correct, gives wrong password, and in the journal:
unix_chkpwd[46155]: check pass; user unknown
unix_chkpwd[46156]: check pass; user unknown
unix_chkpwd[46156]: password check failed for user (andre)
kcheckpass[46154]: pam_unix(kde:auth): authentication failure; logname= uid=1000 euid=1000 tty= ruser= rhost=  user=andre
kcheckpass[46154]: Authentication failure for andre (invoked by uid 1000)

Yeah, I think this broken swaylock too

In addition to breaking things, this also doesn't fix the issue :/
system-path> warning: creating dangling symlink `/nix/store/q76x6r4d8mdlyk1d4j5qzfa9iryw6nlm-system-path//sbin/unix_chkpwd' -> `/nix/store/dar7p8dd632i4ibc8v8vnapjf05z9ak0-linux-pam-1.5.1/sbin/unix_chkpwd' -> `/run/wrappers/bin/unix_chkpwd'
system-path> warning: creating dangling symlink `/nix/store/q76x6r4d8mdlyk1d4j5qzfa9iryw6nlm-system-path//bin/unix_chkpwd' -> `/nix/store/dar7p8dd632i4ibc8v8vnapjf05z9ak0-linux-pam-1.5.1/bin/unix_chkpwd' -> `/run/wrappers/bin/unix_chkpwd'

Hmm, so I expect they're trying to use ${pam}/bin/unix_chkpwd directly instead of the wrapper from $PATH.  Maybe it will be best to revert back to using that symlink hack?

Or perhaps approach like PR https://github.com/NixOS/nixpkgs/pull/156974


NPC Can't open trade window

NPC Can't open trade window
What is the workaround?

Didn't follow bug report pattern neither gave relevant information.


refactor: use tsconfck to parse tsconfig files for esbuild compilerOptions

Description

replace custom tsconfig parsing in esbuild plugin with tsconfck package. (Disclaimer: i wrote tsconfck)
add error handling to continue when parsing tsonfig fails

why:

greatly reduces code in esbuild.ts
adds support for solution-style tsconfig files
uses more effective caching to reduce repeated parse for multiple files sharing a tsconfig
has a testsuite that validates it works like typescripts native functions

Additional context
tsconfck "extends" and "parse" implementation is based on how vite currently works, with additions for rebasing relative paths and parsing solution-style tsconfigs.

What is the purpose of this pull request?

[ ] Bug fix
[ ] New Feature
[ ] Documentation update
[x] Other

Before submitting the PR, please make sure you do the following

[x] Read the Contributing Guidelines.
[x] Read the Pull Request Guidelines and follow the Commit Convention.
[x] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
[x] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
[ ] Ideally, include relevant tests that fail without this PR but pass with it.

The implementation aggressively caches parsed results, just like the previous vite one.
I wonder if the cache has to be cleared if a tsconfig file changes. Didn't see a quick way to add watchers here, so that should be discussed more before merging this maye.
cc @sodatea

Oh, tsconfck isn't released as 1.0.0 right now, but it is complete i think. Pending some Feedback for the general usability of it's api i can release 1.0.0 before merging this.

I have two thoughts/questions:

I think we can trust you (you are a known community member) but should we wait until the 1.0.0 was released?
What does the rest of the vite team think of this new dependency?

Thanks for the help!
I think it's super cool to finally have a full-fledged tsconfig parser, and with solutions support!
The above comments are just my nitpicky suggestions - the overall functionality looks good to me.

I wonder if the cache has to be cleared if a tsconfig file changes. Didn't see a quick way to add watchers here, so that should be discussed more before merging this maye.

return {
  name: 'vite:esbuild',
  configureServer(server) {
    server.watcher
	// ...
  },
}

Like this?

Maybe we could try to merge this one as part of the 2.6 beta 👍

added config watching and throwing errors.
Also made a separate test playground to verify error overlay is shown.
After edit, server reloads and code is compiled. :partying_face:

example:

yes. I already updated the api after @sodatea s comment about filename being ambiguous, and added tsconfigFile to the error output. if there is nothing else you're worried about I'li spin 1.0

and there's tsconfck 1.0. Updated the license to include inlined code by Sindre Sorhus so it's picked up correctly by vite's license generator.
If it is fine to do a nuclear reload on every tsconfig change this is ready to go. I don't think it's possible to try and selectively reload files that may have changed, so the only other option would be to accept stale entries, but that would leave us with a weird state where some modules were transpiled with different settings than others.


Break Stepper + Step into Header, Content and Footer into named slots or seperate components

Describe the feature in detail (code, mocks, or screenshots encouraged)
At the moment <Stepper> & <Step> is not very modular, which makes it hard to adjust or replace certain parts of the multi form.
I'm suggesting the following (if named slots are too limited replace with components such as <StepperHeader>):
<Stepper>
    <svelte:fragment slot="header">
        <!-- where the <StepperBar> can be loaded in and or other components -->
    </svelte:fragment>

    <svelte:fragment slot="footer">
        <!-- where the <StepperNav> can be loaded in and or other components-->
    </svelte:fragment>
</Stepper>

Then when it comes to content it could either be:
    <svelte:fragment slot="content">
        <Step><!-- step 1 --></Step>
        <Step><!-- step 2 --></Step>
        <Step><!-- step 3 --></Step>
    </svelte:fragment>

Or simply:
        <Step><!-- step 1 --></Step>
        <Step><!-- step 2 --></Step>
        <Step><!-- step 3 --></Step>

What type of pull request would this be?
enhancement
Provide relevant links or additional information.
https://tailwindcomponents.com/component/multistep-form-with-tailwindcss-and-alpinejs
One interactive example I found seems to at least incorporate essentially the same design.

See also: https://github.com/skeletonlabs/skeleton/issues/1780

I'm going to close this issue as it's redundant with #1780. But note this does link back to this thread for future reference.


Multiple versions of a nested dependency resolve to the first encountered version

Describe the bug
Hello, my team was experimenting with an in-house micro front ends solution and found that importing different version of the same package in a chain dependency scenario are not being respected.
For example, let's say we have an application that depends on<EMAIL_ADDRESS>and<EMAIL_ADDRESS>If<EMAIL_ADDRESS>has a dependency on<EMAIL_ADDRESS>the application will only use<EMAIL_ADDRESS>even when invoking a method in<EMAIL_ADDRESS>Additional context and screenshots are in the minimal reproduction repo
Please let me know if any additional information is needed
Reproduction
https://github.com/ttd-th1142/vite-dep-issue-repro
Steps to reproduce
Run yarn workspaces foreach install followed by yarn run clean-start
System Info
System:
    OS: macOS 13.2
    CPU: (10) arm64 Apple M1 Pro
    Memory: 637.55 MB / 16.00 GB
    Shell: 5.8.1 - /bin/zsh
  Binaries:
    Node: 16.17.0 - ~/.nvm/versions/node/v16.17.0/bin/node
    Yarn: 3.3.0 - ~/.nvm/versions/node/v16.17.0/bin/yarn
    npm: 8.15.0 - ~/.nvm/versions/node/v16.17.0/bin/npm
  Browsers:
    Chrome: 111.0.5563.110
    Firefox: 102.9.0
    Safari: 16.3

Used Package Manager
yarn
Logs
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to vuejs/core instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

Maybe related: rollup/rollup#4849

Thanks, @Tanimodori! I'll try to dig a bit deeper into this since it seems like an interesting trail.
Initial attempts didn't change anything, but the possibility that something is optimizing out the other react version seems plausible.
What I tried:

Added build.rollupOptions.treeshake: false into host-react-16-vite/vite.config.ts
Ran yarn build
Served the resulting dist folder

Outcome

Still seeing<EMAIL_ADDRESS>being used to render the feature-react-18 component

I also encountered this problem, is there a solution please?
vite version : 4.3.9

Also in Vite 4.4.9


Remote Config

Hi,
Could you add tvOS support to Remote Config?
Thanks!

IIRC this is unlikely to happen soon, @salqadri knows more details.

Tracked at https://github.com/firebase/firebase-ios-sdk/issues/10


with_in_file is way too slow

If you have any idea to enhance the performance, please contribute.

Note that it is slow when I use all cores on my computer...
Using a single core, the write performance is 70% of the raw performance reached by an uncompressed channel.


Add docker compose dependency setup

Adds ability to boot all required dependencies via docker compose. Also provides a default config file and runconfig.

The ability to test these components locally is awesome!


InducingHomomorphism type piracy

Defining a constructor for InducingHomomorphism with a vector of monomial outside of this package is type piracy, I would suggest something like
(::InducingHomomorphism)(::AbstractVector{<:AbstractMonomial}, ::AbtractAcction)

If a package defines a subtype of AbtractAcction, it can define a method without type piracy.
Fixing this might be done at the same time as fixing https://github.com/kalmarek/SymbolicWedderburn.jl/issues/21

@blegat resolved by #25?

Yes :)


IOS Hybrid is broken and throws exception

If i create a new solution with either Visual Studio 2019 16.11.8 or Visual Studio 8.10.6 directly on the mac
(MacBook Air m1 2020 btw)
FirstMobileBlazorBindingsApp works out ok.
But as soon as i create FirstBlazorHybridApp it only display first half of the
expected screen (the one which is equal to the Firstmobile thing see attached a screenshot)
and if i click on the increment button
and unhandled exception is raised (One or more errors occured).
Render was called before InitAsync.

i know it used to work with older version of VS.
Any ideas ?

Same issue happened with me on VS 2022

Same issue happened with me on VS 2022

When you create a new project with vs 2022 and choose net maui blazor targetting the ios plattform it
works instantly. Eilon?

I found the problem myself. It was again a xamarin.ios sdk problem.
That nobody reacts here anymore is not so pleasant though.....

@whann0205 thank you for posting the update. I have been mostly away from work for the last few weeks due to holidays and due to having 2 young kids who have to stay home because everyone is getting omicron. I do my best to quickly respond to issues but unfortunately that isn't always possible.

I fully understand that there is more than work and family should always come first!
Its just that i was frustrated that i could not solve the problem and
didn´t know where to get help.


Deploying backend to Cloud

Not a defect, but an ask. The backend components are tightly coupled together and assume everything runs locally. Any attempt to allow for deploying the backend to AWS or GCP or Azure and allowing for respective cloud native services to be used?

Hi @swamichandra , thanks for your question!
While the codebase is setup to run well locally, we've also made efforts to make cloud deployment easy for cloud providers we've chosen.
Render.com is another cloud platform similar to AWS, GCP, etc. but easier to use in many ways.
We actually have all of our backend infrastructure components defined through infrastructure-as-code in the render.yaml blueprint file. Render has documentation here for connecting to the render.yaml file within your repo for deploying to their platform. You would also need to setup the Environment Groups in Render according to the way they're defined in the render.yaml template here. There are also some additional components to setup in terms of the two AWS S3 buckets and the Vercel deployment of the frontend. The YouTube tutorial video has a section on the system design that may be more informational.
If you'd like, we should be able to do a more in-depth write-up of how to go about cloud deployment. Let us know if that would be useful for you!

@sourabhdesai Thanks for the response and pointing me towards Render. I created all the env groups. llama-app-db and llama-app-cron are up. But the llama-app-backend service would not deploy and come up. See the following error where it fails. What does the DB not up to date mean?
Sep 9 01:34:27 PM  ERROR:    Traceback (most recent call last):
Sep 9 01:34:27 PM    File "/root/.cache/pypoetry/virtualenvs/llama-app-backend-9TtSrW0h-py3.11/lib/python3.11/site-packages/starlette/routing.py", line 677, in lifespan
Sep 9 01:34:27 PM      async with self.lifespan_context(app) as maybe_state:
Sep 9 01:34:27 PM    File "/usr/local/lib/python3.11/contextlib.py", line 204, in __aenter__
Sep 9 01:34:27 PM      return await anext(self.gen)
Sep 9 01:34:27 PM             ^^^^^^^^^^^^^^^^^^^^^
Sep 9 01:34:27 PM    File "/app/app/main.py", line 74, in lifespan
Sep 9 01:34:27 PM      raise Exception(
Sep 9 01:34:27 PM  Exception: Database is not up to date. Please run `poetry run alembic upgrade head`
Sep 9 01:34:27 PM
Sep 9 01:34:27 PM  ERROR:    Application startup failed. Exiting.

Hi @swamichandra , great to see your trying to setup the deployment for this!
Some context: The backend codebase manages database migrations with Alembic. This helps keep the database tables up-to-date with the latest ORM table definitions in the backend codebase (as defined here).
When trying to run this on Render.com, their service automatically sets the RENDER environment variable to true for you (see render docs on default env vars). This gets checked in main.py here and if its set to true (as in, it's actually running on Render.com and not locally), it will run the alembic migrations for you.
For some reason, it seems like the migrations are not being run on service startup for your deployment. I'd take a look at the following:

See if there is any indications in the service logs that database migrations were run but then failed to be fully applied. The service won't start unless DB migrations are caught up! It pulls the list of DB migrations to apply by checking the migrations defined so far in alembic/versions here.
Make sure you haven't set the RENDER environment variable yourself in any of the environment groups or service-level environment variables

You may also be able to get it started by running alembic upgrade head against the Render provided database. Just make sure to copy the database URL from the DB's webpage on Render and set it as the DATABASE_URL environment variable value locally before running it.
At least that way, you'd be able to locally see what the error is and perhaps iterate towards a solution/workaround faster.
Once the DB migrations have been applied to your DB on Render, your service shouldn't start just fine

Hi @swamichandra , great to see your trying to setup the deployment for this!
Some context: The backend codebase manages database migrations with Alembic. This helps keep the database tables up-to-date with the latest ORM table definitions in the backend codebase (as defined here).
When trying to run this on Render.com, their service automatically sets the RENDER environment variable to true for you (see render docs on default env vars). This gets checked in main.py here and if its set to true (as in, it's actually running on Render.com and not locally), it will run the alembic migrations for you.
For some reason, it seems like the migrations are not being run on service startup for your deployment. I'd take a look at the following:

See if there is any indications in the service logs that database migrations were run but then failed to be fully applied. The service won't start unless DB migrations are caught up! It pulls the list of DB migrations to apply by checking the migrations defined so far in alembic/versions here.
Make sure you haven't set the RENDER environment variable yourself in any of the environment groups or service-level environment variables

@sourabhdesai The RENDER environment variable was the issue. I had to remove it from the env groups. The container now comes up fine.
Now to the next challenge and issue. When I run the the download_sec_pdf.py it only downloads the data locally. While the documentation says the docs would be uploaded to the S3 bucket. I don’t see it uploading anything to in the S3 bucket nor see any in the script  that uploads to the bucket. Then I tried to run seed_db.py. Errors out when trying to upload to S3.
Any other way to load the data into the bucket and the DB?

@swamichandra that's great! Glad you got that part working.
So for loading the data, you will be able to use the cron job service that has also been deployed on Render. The cron job is defined in the render.yaml file here.
As you can see, all it does is it runs make seed_db_based_on_env which is defined in the backend's Makefile here.
The seed script that runs is really all you need to load in the SEC filings data into the service. That will pull the PDFs from SEC's Edgar API, upload them into S3, upsert references to them into the DB, and embed them if they haven't already been embedded. Of course, you will first need to have manually created a public S3 asset bucket that your AWS credentials have read/write access to.
Once you've got the S3 bucket and the Cron job setup, you should be able to manually trigger a run of your Cron job and have it do all the data loading for you. You can monitor the run on the Render dashboard.

@sourabhdesai  thanks for being super responsive. I ran the cron and now see the files in the S3 bucket. But the cron threw the following errors. The frontend does not show any options for the year or company name. Looks like the db is still not configured properly.

@swamichandra great to see the progress you've made!
Right, so you may want to update the CDN_BASE_URL values in the render.yaml here to the public URL for your bucket.
Alternatively, you may also hook up Cloudfront to your S3 bucket and use the URL for the Cloudfront distribution for CDN_BASE_URL instead.

@sourabhdesai Thanks again. Very close. It was the S3 bucket policy I had to update to allow public access. Now the cron works and I’m seeing it successfully. I have the front end also provisioned on Vercel and it comes up. I doubled checked and the NEXT_PUBLIC_BACKEND_URL points to the backend url on Render. But I don’t see the company names getting pulled up in the UI when I type. Wondering kid I’m missing a step.

Hmm can you check if the /api/document/ endpoint on your render deployed backend is showing any documents? If not there may have been an issue loading the documents into the documents table of your database 🤔 might be worth trying to run the seed script locally against your render DB and using pdb to step through the part of the script where it loads rows into the DB.

I see this (small snippet).
[{"id":"3aae3da2-6969-4fa2-adfb-cf0173afc62e","created_at":"2023-09-10T03:57:06.398480","updated_at":"2023-09-10T03:57:06.398480","url":"https://d687lz8k56fia.cloudfront.net/sec-edgar-filings/0000078003/10-Q/0000078003-23-000088/filing-details.pdf","metadata_map":{"sec_document":{"cik":"0000078003","year":2023,"quarter":2,"doc_type":"10-Q","company_name":"Pfizer Inc.","company_ticker":"PFE","accession_number":"0000078003-23-000088","filed_as_of_date":"2023-08-09T00:00:00","date_as_of_change":"2023-08-09T00:00:00","period_of_report_date":"2023-07-02T00:00:00"}}},{"id":"38b8f00b-5ea3-4514-8a5f-26a10d50bf7f","created_at":"2023-09-10T03:57:06.384585","updated_at":"2023-09-10T03:57:06.384585","url":"https://d687lz8k56fia.cloudfront.net/sec-edgar-filings/0000078003/10-K/0000078003-21-000038/filing-details.pdf","metadata_map":{"sec_document":{"cik":"0000078003","year":2020,"doc_type":"10-K","company_name":"Pfizer Inc.","company_ticker":"PFE","accession_number":"0000078003-21-000038","filed_as_of_date":"2021-02-25T00:00:00","date_as_of_change":"2021-02-25T00:00:00","period_of_report_date":"2020-12-31T00:00:00"}}},{"id":"df97d890-85d6-4179-846c-4bcff8e8c35e","created_at":"2023-09-10T03:57:06.412024","updated_at":"2023-09-10T03:57:06.412024","url":"https://d687lz8k56fia.cloudfront.net/sec-edgar-filings/0001633917/10-K/0001633917-21-000018/filing-details.pdf","metadata_map":{"sec_document":{"cik":"00016

Hmmm so it seems your DB has the documents loaded in.
It may just be that you need to add your Vercel frontend URL to the CORS access list in this part of the render.yaml. Once you've added your Vercel URL to that list your frontend should be able to make the requests. Hopefully that does the trick!
Thanks for going through this process! This definitely has given me some insight on what I should include if I were to write up a deployment guide for the project 🙂
Also FYI, looking at your snippet, it seems like document URLs loaded into your DB are still referencing our project's Cloudfront CDN url. So the PDFs are actually being loaded from our CDN distribution instead of your S3 bucket 😅 may want to update the CDN_BASE_URL in your render.yaml and re-run the cron job to avoid confusion as to where your PDF docs are being loaded from. You may need to truncate your documents table in the DB before doing this to avoid duplication of these documents in that table.

Is there a way or a script I can run to reinitialize the DB from scratch? Drop the db incl all the tables and recreate them?

@sourabhdesai Should the CORS value be singular? If I provide a list like what you have I get a deployment failure with a “error parsing env bar BACKEND_CORS_ORIGINS”
When I provide the value below for CORS it fails. Build works only for a single value:
'["http://localhost", "http://localhost:8000", "http://localhost:3000", "http://<IP_ADDRESS>:3000", "https://llama-app-backend-7jtv.onrender.com", "https://swami-fe.vercel.app/", "http://secinsights.ai", "http://www.secinsights.ai", "https://secinsights.ai", "https://www.secinsights.ai"]'

Is there a way or a script I can run to reinitialize the DB from scratch? Drop the db incl all the tables and recreate them? I cannot truncate the Documents table. Get a referential integrity error.

Yes! You should be able to run alembic downgrade base against your DB to downgrade the DB migrations back to the starting point when there were no tables (see alembic docs on this here).

Should the CORS value be singular?

Hmm it should be able to take in a List 🤔 totally speculating but try removing the trailing / from "https://swami-companygpt.vercel.app/"?
I've also seen that sometimes the browser caching can get in the way of CORS policy updates. After updating your CORS allow list, may be worth clearing your site-level browser cache as a sanity check.

Should the CORS value be singular?

Hmm it should be able to take in a List 🤔 totally speculating but try removing the trailing / from "https://swami-companygpt.vercel.app/"?
I've also seen that sometimes the browser caching can get in the way of CORS policy updates. After updating your CORS allow list, may be worth clearing your site-level browser cache as a sanity check.

@sourabhdesai Removed the trailing slash. Still getting the error parsing env var "BACKEND_CORS_ORIGINS" error.
Sep 11 06:43:39 PM  Traceback (most recent call last):
Sep 11 06:43:39 PM    File "pydantic/env_settings.py", line 198, in pydantic.env_settings.EnvSettingsSource.__call__
Sep 11 06:43:39 PM    File "pydantic/env_settings.py", line 132, in pydantic.env_settings.Config.parse_env_var
Sep 11 06:43:39 PM    File "/usr/local/lib/python3.11/json/__init__.py", line 346, in loads
Sep 11 06:43:39 PM      return _default_decoder.decode(s)
Sep 11 06:43:39 PM             ^^^^^^^^^^^^^^^^^^^^^^^^^^
Sep 11 06:43:39 PM    File "/usr/local/lib/python3.11/json/decoder.py", line 337, in decode
Sep 11 06:43:39 PM      obj, end = self.raw_decode(s, idx=_w(s, 0).end())
Sep 11 06:43:39 PM                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Sep 11 06:43:39 PM    File "/usr/local/lib/python3.11/json/decoder.py", line 355, in raw_decode
Sep 11 06:43:39 PM      raise JSONDecodeError("Expecting value", s, err.value) from None
Sep 11 06:43:39 PM  json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
Sep 11 06:43:39 PM
Sep 11 06:43:39 PM  The above exception was the direct cause of the following exception:
Sep 11 06:43:39 PM
Sep 11 06:43:39 PM  Traceback (most recent call last):
Sep 11 06:43:39 PM    File "<string>", line 1, in <module>
Sep 11 06:43:39 PM    File "/usr/local/lib/python3.11/importlib/__init__.py", line 126, in import_module
Sep 11 06:43:39 PM      return _bootstrap._gcd_import(name[level:], package, level)
Sep 11 06:43:39 PM             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Sep 11 06:43:39 PM    File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
Sep 11 06:43:39 PM    File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
Sep 11 06:43:39 PM    File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
Sep 11 06:43:39 PM    File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
Sep 11 06:43:39 PM    File "<frozen importlib._bootstrap_external>", line 940, in exec_module
Sep 11 06:43:39 PM    File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
Sep 11 06:43:39 PM    File "/app/app/main.py", line 15, in <module>
Sep 11 06:43:39 PM      from app.api.api import api_router
Sep 11 06:43:39 PM    File "/app/app/api/api.py", line 3, in <module>
Sep 11 06:43:39 PM      from app.api.endpoints import conversation, health, documents
Sep 11 06:43:39 PM    File "/app/app/api/endpoints/conversation.py", line 10, in <module>
Sep 11 06:43:39 PM      from app.api.deps import get_db
Sep 11 06:43:39 PM    File "/app/app/api/deps.py", line 3, in <module>
Sep 11 06:43:39 PM      from app.db.session import SessionLocal
Sep 11 06:43:39 PM    File "/app/app/db/session.py", line 4, in <module>
Sep 11 06:43:39 PM      from app.core.config import settings
Sep 11 06:43:39 PM    File "/app/app/core/config.py", line 169, in <module>
Sep 11 06:43:39 PM      settings = Settings()
Sep 11 06:43:39 PM                 ^^^^^^^^^^
Sep 11 06:43:39 PM    File "pydantic/env_settings.py", line 41, in pydantic.env_settings.BaseSettings.__init__
Sep 11 06:43:39 PM    File "pydantic/env_settings.py", line 76, in pydantic.env_settings.BaseSettings._build_values
Sep 11 06:43:39 PM    File "pydantic/env_settings.py", line 201, in pydantic.env_settings.EnvSettingsSource.__call__
Sep 11 06:43:39 PM  pydantic.env_settings.SettingsError: error parsing env var "BACKEND_CORS_ORIGINS"
Sep 11 06:43:47 PM  Traceback (most recent call last):
Sep 11 06:43:47 PM    File "pydantic/env_settings.py", line 198, in pydantic.env_settings.EnvSettingsSource.__call__
Sep 11 06:43:47 PM    File "pydantic/env_settings.py", line 132, in pydantic.env_settings.Config.parse_env_var
Sep 11 06:43:47 PM    File "/usr/local/lib/python3.11/json/__init__.py", line 346, in loads
Sep 11 06:43:47 PM      return _default_decoder.decode(s)
Sep 11 06:43:47 PM             ^^^^^^^^^^^^^^^^^^^^^^^^^^
Sep 11 06:43:47 PM    File "/usr/local/lib/python3.11/json/decoder.py", line 337, in decode
Sep 11 06:43:47 PM      obj, end = self.raw_decode(s, idx=_w(s, 0).end())
Sep 11 06:43:47 PM                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Sep 11 06:43:47 PM    File "/usr/local/lib/python3.11/json/decoder.py", line 355, in raw_decode
Sep 11 06:43:47 PM      raise JSONDecodeError("Expecting value", s, err.value) from None
Sep 11 06:43:47 PM  json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
Sep 11 06:43:47 PM
Sep 11 06:43:47 PM  The above exception was the direct cause of the following exception:
Sep 11 06:43:47 PM
Sep 11 06:43:47 PM  Traceback (most recent call last):
Sep 11 06:43:47 PM    File "<string>", line 1, in <module>
Sep 11 06:43:47 PM    File "/usr/local/lib/python3.11/importlib/__init__.py", line 126, in import_module
Sep 11 06:43:47 PM      return _bootstrap._gcd_import(name[level:], package, level)
Sep 11 06:43:47 PM             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Sep 11 06:43:47 PM    File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
Sep 11 06:43:47 PM    File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
Sep 11 06:43:47 PM    File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
Sep 11 06:43:47 PM    File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
Sep 11 06:43:47 PM    File "<frozen importlib._bootstrap_external>", line 940, in exec_module
Sep 11 06:43:47 PM    File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
Sep 11 06:43:47 PM    File "/app/app/main.py", line 15, in <module>
Sep 11 06:43:47 PM      from app.api.api import api_router
Sep 11 06:43:47 PM    File "/app/app/api/api.py", line 3, in <module>
Sep 11 06:43:47 PM      from app.api.endpoints import conversation, health, documents
Sep 11 06:43:47 PM    File "/app/app/api/endpoints/conversation.py", line 10, in <module>
Sep 11 06:43:47 PM      from app.api.deps import get_db
Sep 11 06:43:47 PM    File "/app/app/api/deps.py", line 3, in <module>
Sep 11 06:43:47 PM      from app.db.session import SessionLocal
Sep 11 06:43:47 PM    File "/app/app/db/session.py", line 4, in <module>
Sep 11 06:43:47 PM      from app.core.config import settings
Sep 11 06:43:47 PM    File "/app/app/core/config.py", line 169, in <module>
Sep 11 06:43:47 PM      settings = Settings()
Sep 11 06:43:47 PM                 ^^^^^^^^^^
Sep 11 06:43:47 PM    File "pydantic/env_settings.py", line 41, in pydantic.env_settings.BaseSettings.__init__
Sep 11 06:43:47 PM    File "pydantic/env_settings.py", line 76, in pydantic.env_settings.BaseSettings._build_values
Sep 11 06:43:47 PM    File "pydantic/env_settings.py", line 201, in pydantic.env_settings.EnvSettingsSource.__call__
Sep 11 06:43:47 PM  pydantic.env_settings.SettingsError: error parsing env var "BACKEND_CORS_ORIGINS"
Sep 11 06:43:54 PM  Traceback (most recent call last):
Sep 11 06:43:54 PM    File "pydantic/env_settings.py", line 198, in pydantic.env_settings.EnvSettingsSource.__call__
Sep 11 06:43:54 PM    File "pydantic/env_settings.py", line 132, in pydantic.env_settings.Config.parse_env_var
Sep 11 06:43:54 PM    File "/usr/local/lib/python3.11/json/__init__.py", line 346, in loads
Sep 11 06:43:54 PM      return _default_decoder.decode(s)
Sep 11 06:43:54 PM             ^^^^^^^^^^^^^^^^^^^^^^^^^^
Sep 11 06:43:54 PM    File "/usr/local/lib/python3.11/json/decoder.py", line 337, in decode
Sep 11 06:43:54 PM      obj, end = self.raw_decode(s, idx=_w(s, 0).end())
Sep 11 06:43:54 PM                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Sep 11 06:43:54 PM    File "/usr/local/lib/python3.11/json/decoder.py", line 355, in raw_decode
Sep 11 06:43:54 PM      raise JSONDecodeError("Expecting value", s, err.value) from None
Sep 11 06:43:54 PM  json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
Sep 11 06:43:54 PM
Sep 11 06:43:54 PM  The above exception was the direct cause of the following exception:
Sep 11 06:43:54 PM
Sep 11 06:43:54 PM  Traceback (most recent call last):
Sep 11 06:43:54 PM    File "<string>", line 1, in <module>
Sep 11 06:43:54 PM    File "/usr/local/lib/python3.11/importlib/__init__.py", line 126, in import_module
Sep 11 06:43:54 PM      return _bootstrap._gcd_import(name[level:], package, level)
Sep 11 06:43:54 PM             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Sep 11 06:43:54 PM    File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
Sep 11 06:43:54 PM    File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
Sep 11 06:43:54 PM    File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
Sep 11 06:43:54 PM    File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
Sep 11 06:43:54 PM    File "<frozen importlib._bootstrap_external>", line 940, in exec_module
Sep 11 06:43:54 PM    File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
Sep 11 06:43:54 PM    File "/app/app/main.py", line 15, in <module>
Sep 11 06:43:54 PM      from app.api.api import api_router
Sep 11 06:43:54 PM    File "/app/app/api/api.py", line 3, in <module>
Sep 11 06:43:54 PM      from app.api.endpoints import conversation, health, documents
Sep 11 06:43:54 PM    File "/app/app/api/endpoints/conversation.py", line 10, in <module>
Sep 11 06:43:54 PM      from app.api.deps import get_db
Sep 11 06:43:54 PM    File "/app/app/api/deps.py", line 3, in <module>
Sep 11 06:43:54 PM      from app.db.session import SessionLocal
Sep 11 06:43:54 PM    File "/app/app/db/session.py", line 4, in <module>
Sep 11 06:43:54 PM      from app.core.config import settings
Sep 11 06:43:54 PM    File "/app/app/core/config.py", line 169, in <module>
Sep 11 06:43:54 PM      settings = Settings()
Sep 11 06:43:54 PM                 ^^^^^^^^^^
Sep 11 06:43:54 PM    File "pydantic/env_settings.py", line 41, in pydantic.env_settings.BaseSettings.__init__
Sep 11 06:43:54 PM    File "pydantic/env_settings.py", line 76, in pydantic.env_settings.BaseSettings._build_values
Sep 11 06:43:54 PM    File "pydantic/env_settings.py", line 201, in pydantic.env_settings.EnvSettingsSource.__call__
Sep 11 06:43:54 PM  pydantic.env_settings.SettingsError: error parsing env var "BACKEND_CORS_ORIGINS"

@swamichandra Hm I wasn't able to replicate this on my end. I have set that line in my .env to BACKEND_CORS_ORIGINS='["https://llama-app-backend-7jtv.onrender.com", "https://swami-companygpt.vercel.app", "https://llama-app-backend-7jtv.onrender.com/api/document"]' and its not giving me any error when trying to parse the en variable. Were you able to figure this last part out?

@sourabhdesai I’m going to redo all on Render and reprovision. I’m not able to point out why the list of CORS value throws an error.

@sourabhdesai Good news. I deleted all the services in Render and recreated them. Including the AWS S3 buckets. Reran the cron to repopulate the documents. Backend comes up fine.
One major thing I did was to remove the single quotes (‘) at the start and end of the BACKEND_CORS_ORIGINS list. Now the backend starts without any errors.
The error I’m facing now is I get a “ Failed to load PDF file” error message. What could I be missing?

@swamichandra you have to give bucket cors in localstack.
awslocal s3api put-bucket-cors --bucket ${S3_ASSET_BUCKET_NAME} --cors-configuration file://./localstack-cors-config.json
for more you can check doc of localstack:  https://docs.localstack.cloud/user-guide/aws/s3/#configuring-cross-origin-resource-sharing-on-s3

@swamichandra you have to give bucket cors in localstack. awslocal s3api put-bucket-cors --bucket ${S3_ASSET_BUCKET_NAME} --cors-configuration file://./localstack-cors-config.json
for more you can check doc of localstack: https://docs.localstack.cloud/user-guide/aws/s3/#configuring-cross-origin-resource-sharing-on-s3

@jigneshsolanki I’m running the backend on Render and not localstack.

@sourabhdesai Good news. I deleted all the services in Render and recreated them. Including the AWS S3 buckets. Reran the cron to repopulate the documents. Backend comes up fine.
One major thing I did was to remove the single quotes (‘) at the start and end of the BACKEND_CORS_ORIGINS list. Now the backend starts without any errors.
The error I’m facing now is I get a “ Failed to load PDF file” error message. I see in the browser dev tools the 037f8f29-cfe2-4cbb-bec9-abc2c037ca45:1 Access to fetch at 'xxx/sec-edgar-filings/0001018724/10-K/0001018724-23-000004/filing-details.pdf' from origin 'xxx' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.
I added to BACKEND_CORS_ORIGINS the S3 URL. What could I be missing?

@swamichandra Most likely what you're seeing is that your frontend is trying to access the server that is hosting your PDF files (whether that's the S3 bucket configured in website mode or through a Cloufront CDN) but that service doesn't have CORS configured to allow access to your frontend.

Documentation on setting CORS for the S3 bucket website
Write-up on setting CORS for the Cloudfront CDN

Depending on how you're serving your PDFs to the frontend, either of the above articles may be helpful.

Very informative thread. I'm sure I'm not alone in saying I would love for a full deployment tutorial! Great repo!

Closing as there seems to not be any further questions


Optimize stablelm on NPU

Description
optimize stablelm performance on NPU.

https://github.com/intel-analytics/ipex-llm-workflow/actions/runs/9802328170


SharePoint Online API: Access denied creating Personal Site when passing Signed In User Bearer Token

Category

[ ] Question
[ ] Typo
[x] Bug
[ ] Additional article idea

Expected or Desired Behavior
The below HTTP call should create a new personal site for the user
POST /_vti_bin/client.svc/ProcessQuery HTTP/1.1
Host: tenant-admin.sharepoint.com
Content-Type: application/xml
Authorization: Bearer <token>

<Request AddExpandoFieldTypeSuffix="true" SchemaVersion="<IP_ADDRESS>" LibraryVersion="<IP_ADDRESS>" ApplicationName="SharePoint PnP PowerShell Library" xmlns="http://schemas.microsoft.com/sharepoint/clientquery/2009">
    <Actions>
        <ObjectPath Id="5" ObjectPathId="4" />
        <Method Name="CreatePersonalSiteEnqueueBulk" Id="6" ObjectPathId="4">
            <Parameters>
                <Parameter Type="Array">
                    <Object<EMAIL_ADDRESS>                </Parameter>
            </Parameters>
        </Method>
    </Actions>
    <ObjectPaths>
        <StaticMethod Id="4" Name="GetProfileLoader"  TypeId="{9c42543a-91b3-4902-b2fe-14ccdefb6e2b}" />
    </ObjectPaths>
</Request>

Observed Behavior
Above request results in 200 OK response but returns the below error, no personal site is created for the user.
[
    {
        "SchemaVersion": "<IP_ADDRESS>",
        "LibraryVersion": "16.0.19318.12002",
        "ErrorInfo": {
            "ErrorMessage": "Access denied. You do not have permission to perform this action or access this resource.",
            "ErrorValue": null,
            "TraceCorrelationId": "7c05089f-70d6-1000-af48-5aaa8564ad67",
            "ErrorCode": -2147024891,
            "ErrorTypeName": "System.UnauthorizedAccessException"
        },
        "TraceCorrelationId": "7c05089f-70d6-1000-af48-5aaa8564ad67"
    }
]

Steps to Reproduce

Create Azure AD application
Set the following delegate SharePoint Online API permissions

AllSites.FullControl
User.ReadWrite.All

Grant Admin consent for delegated permissions
Generate Bearer Token using OAuth 2.0 Authorization Code Flow

Provide Tenant Admin credentials

Pass Bearer Token in Authorisation header of request

Related Issues
https://github.com/SharePoint/PnP-PowerShell/issues/2267
https://github.com/OneDrive/onedrive-api-docs/issues/530
https://github.com/pnp/office365-cli/issues/929

Context please... where is the method CreatePersonalSiteEnqueueBulk coming from (ie: what API are you using), what's the environment, etc...

Furthermore, you say “create personal site” which I think implies SharePoint, but you reference OneDrive. Hence the confusion on what you are trying to do.
Regardless, of the API, you need to ensure the API supports application permissions. It may only support delegated (app+user) permissions for auditing requirements & not app-only.

@andrewconnell appreciate your commenting on this issue and apologies for the lack of clarity...
I am working on replicating the New-PnPPersonalSite cmdlet functionality from PnP PowerShell, which creates "Creates a personal / OneDrive For Business site", into the Office 365 CLI.
POST /_vti_bin/client.svc/ProcessQuery HTTP/1.1
Host: tenant-admin.sharepoint.com
Content-Type: application/xml
Authorization: Bearer <token>

<Request AddExpandoFieldTypeSuffix="true" SchemaVersion="<IP_ADDRESS>" LibraryVersion="<IP_ADDRESS>" ApplicationName="SharePoint PnP PowerShell Library" xmlns="http://schemas.microsoft.com/sharepoint/clientquery/2009">
    <Actions>
        <ObjectPath Id="5" ObjectPathId="4" />
        <Method Name="CreatePersonalSiteEnqueueBulk" Id="6" ObjectPathId="4">
            <Parameters>
                <Parameter Type="Array">
                    <Object<EMAIL_ADDRESS>                </Parameter>
            </Parameters>
        </Method>
    </Actions>
    <ObjectPaths>
        <StaticMethod Id="4" Name="GetProfileLoader"  TypeId="{9c42543a-91b3-4902-b2fe-14ccdefb6e2b}" />
    </ObjectPaths>
</Request>

However this returns the below 200 OK response
[
    {
        "SchemaVersion": "<IP_ADDRESS>",
        "LibraryVersion": "16.0.19318.12002",
        "ErrorInfo": {
            "ErrorMessage": "Access denied. You do not have permission to perform this action or access this resource.",
            "ErrorValue": null,
            "TraceCorrelationId": "7c05089f-70d6-1000-af48-5aaa8564ad67",
            "ErrorCode": -2147024891,
            "ErrorTypeName": "System.UnauthorizedAccessException"
        },
        "TraceCorrelationId": "7c05089f-70d6-1000-af48-5aaa8564ad67"
    }
]

The app used to generate the bearer token only uses delegate permissions for SharePoint Online (the common Office 365 CLI app identity) so no app-only calls here to SharePoint.
Further investigation into the PnP-PowerShell cmdlet also showed that the cmdlet only worked when authenticating with SharePoint Online by passing username and password (Forms Based Auth) as the same error is thrown when using a Bearer Token.

@garrytrinder said

I am working on replicating the New-PnPPersonalSite cmdlet functionality from PnP PowerShell, which creates "Creates a personal / OneDrive For Business site", into the Office 365 CLI.

That's not correct... the PnP cmdlets do not interact with the O365 CLI. The O365 CLI is an alternative to the POSH cmdlets. Both are using public REST APIs in SharePoint / Office 365 to do their work. I think what you wrote is a typo.
If you have specific questions about the PNP cmdlets, you should post those to the github project for the PnP POSH project, not here, as that's the more relevant place.
The underlying question I'm tracking down with SP engineering is "is app only supported for this task"... will follow up if I get an answer.

That's not correct... the PnP cmdlets do not interact with the O365 CLI. The O365 CLI is an alternative to the POSH cmdlets. Both are using public REST APIs in SharePoint / Office 365 to do their work. I think what you wrote is a typo.

This is not a typo, I am well aware of the difference between the two libraries and I am not trying to make them interact.
I am contributing to the Office 365 CLI project, not PnP PowerShell. The contribution refers to replicating the "functionality" of the New-PnPPersonalSite cmdlet.
A new command, spo personalsite add has been designed and proposed for this, it is using the public REST API to create a new personal site. (Ref: https://github.com/pnp/office365-cli/issues/929).

If you have specific questions about the PNP cmdlets, you should post those to the github project for the PnP POSH project, not here, as that's the more relevant place.

I already have and raised this as an issue, which I have referenced (Ref: https://github.com/SharePoint/PnP-PowerShell/issues/2267)
The point I am trying to raise is that the same underlying API call is reacting in the same way when when passing a bearer token in the authorisation header, whether that is using delegated (the signed in user) or application permissions (without signed in user).
I have updated the issue title, description and steps to reproduce to make this clearer, as I think I caused the confusion by getting my terminology wrong in the first place 🤦🏻♂.
I appreciate you responding to this issue 👍🏻

@garrytrinder Gotcha... my bad as I didn't read your comment about the CLI correctly. I thought you were saying POSH was using the CLI... I didn't get you were trying to replicate functionality from POSH cmdlet => CLI.
At any rate, I've ping'd someone in engineering who's looking into it. I can't answer it so waiting on what the find out & when there's something to report, I'll do that.

Hey @andrewconnell any update from engineering on this?

Ping @andrewconnell, any update on this issue?

Ah apologies, I meant to raise this with the team directly after speaking with @andrewconnell but didn't get around to it. It's with me @waldekmastykarz

Hi, can you use a Bearer Token with Sharepoint Online?
https://docs.microsoft.com/en-us/sharepoint/dev/solution-guidance/security-apponly-azuread
FAQ
Can I use other means besides certificates for realizing app-only access for my Azure AD app?
No, all other options are blocked by SharePoint Online and will result in an Access Denied message.

@garrytrinder, is there an update on this issue?

Is there any update on this? We want to automate PersonalSite creation using the Azure AD app within Automation Runbook and currently looking into workaround solution.

Is there any update on this? We want to automate PersonalSite creation using the Azure AD app within Automation Runbook and currently looking into workaround solution.

Any updates on this?

Any updates on this?

Is there any update on this? We want to automate PersonalSite creation using the Azure AD app within Automation Runbook and currently looking into workaround solution.

@clientbala did you find a workaround for this ?

Is there any update on this? We want to automate PersonalSite creation using the Azure AD app within Automation Runbook and currently looking into workaround solution.

@clientbala did you find a workaround for this ?

Apologies for the delay on updating, unfortunately I have been unable to ascertain whether this is supported through the REST API.

Apologies for the delay on updating, unfortunately I have been unable to ascertain whether this is supported through the REST API.

I landed here after having the same issue when using Request-PnPPersonalSite and New-PnPPersonalSite, both returning 403 Access Denied.
I had been connecting with Connect-PnPOnline -Url <mysite> -Credentials <mycreds>
But just now I connected with 'Connect-PnPOnline -Url  -UseWebLogin`
And this time around, Request-PnPPersonalSite worked with no error! Though I've yet to verify the site is being created.


fix config.supports to match listentities object

Not sure if you're accepting pull requests, but thanks for taking a look.
I found commands like entity.setBrightness(0.9) were throwing brightness is not supported errors due to a miss-match between the entity config and these setter methods. I've modified the name of each property in the if statements.
supportsBrightness: jspb.Message.getBooleanFieldWithDefault(msg, 5, false),

if (!this.config.supports_brightness) throw new Error('brightness is not supported');

I was running into the same issue today and was about to do the same thing, nice PR.
It would be nice if this PR could be merged.


Simplify LeaderElection by using an event based approach

We encapsulate Curator election logic using a generic Akka Stream source of
events: ElectedLeader, Standby(currentLeader). Previously, we used to query
ZooKeeper each time an http endpoint was hit on the non leader. Now, we use
Zookeeper watches to be notified of leadership changes.
By using a generic stream interface, PsuedoElectionService becomes an
incredibly simple stream that simply emits a leader elected event when
it starts, and ends with a standby event when closed.
Testing also becomes easier with event production and event reacting
concerns better separated.
Further, we remove all uses of locks in ElectionService. These were
previously a source of deadlock, and a source of unseen complexity.

I left a bunch of comments in the previous version of this PR here: https://github.com/mesosphere/marathon/pull/5562 They still apply, however we can have the discussion in either of the PRs

@timcharper, I took the liberty and resolved the merge conflicts. The loop is running here.

The loop shows a few time outs. E.g. marathon-loop-tim-election/137 did not finish within 30 minutes.

It has also a few error in CuratorElectionStreamTest e.g.:
https://jenkins.mesosphere.com/service/jenkins/view/Marathon/job/marathon-sandbox/job/marathon-loop-tim-election/193/

The loop had a first green build again.

Failures time line of loop.


Fix requesting last messages when no message id is known

Fixes #1460.
However there's another bug. When doing /clear, the show more button jumps into view, thus IntersectionObserver calls observe on the button, and it loads last history again.

When doing /clear, the show more button jumps into view, thus IntersectionObserver calls observe on the button

Hahahaha. That's brilliant.
But that does lead us to a question ... what is the purpose of clear?
I would say either it would clear both client and server side, and therefore have no way to get the stuff back, or it is a pointless feature. Thoughts?

I don't know either, it sounds like it should clear server buffer too.

what is the purpose of clear?

/clear really acts like clear/ctrl+L in the terminal: it hides / empties the screen, whose content can be brought back by scrolling up.
I actually use it (infrequently) on The Lounge, but I would say a good 60% of the usage I'm making of it can now be achieved by typing /collapse.
I have tried a few things to reproduce this, and nothing worked. Ideally, we would want to be able to set the scrollTop past the maximum, so that latest message is right before the visible block but as far as I know, it's not possible on the web. I have seen a couple "clearable" apps that did that nicely, but they were all native.
Because this is not doable (unless someone has a genius idea), I'd be in favor of removing it.
In fact, even though I use the command myself, I would not like its action to be changed from "hide the latest message" to "destroy all messages in the current channel". That would be a harsh change of an existing feature 😅.
There should be a way to wipe out all the logs for a given channel (in fact, there might be an open issue about this) in a context menu entry for example, but this is a very destructive action that shouldn't be possible with an unfortunate shortcut/command accident lol.
So yeah, until then, I think we should just remove it if there is no way to fix it without drastically changing its behavior.

Regardless of this clear command bug, this PR fixes the issue on its own, the fact it loads history on clear is a different story, so this can be merged.

That's fair. Is the do not merge label still relevant?


chore(main): release 1.17.0

:robot: I have created a release beep boop
1.17.0 (2023-09-22)
Features

check version persistent pre-run (#126) (7d8b499)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/aidanaden/canvas-sync/releases/tag/v1.17.0 :sunflower:


Codelab: Extra } in snippet

The } marked with an arrow should be removed:

@LarkAscending

Fixed! https://codelabs.developers.google.com/codelabs/flutter/#7


4098 Update user name handling

Resolves #4098
Description

Type of change

New feature (non-breaking change which adds functionality)

How Has This Been Tested?

I have tested using the user spec used for validating user-related activities. There I added a case when the user name is not filled in, it should be valid and also return the name "Name Not Provided" when accessing the method display_name.
This PR is ready for a first review.
Disclaimer:
This PR contains a meaningful commit history where I tried to resolve solely the issue at hand, but when changing the user model breaking test logic appeared. So as a reviewer, I recommend you can follow the steps where I pass all tests with 2 additional file changes (1 in Rails Helper and 1 in an unrelated _spec file). Only with both changes, do all tests pass. Most likely there could be other ways to make all tests pass that could be more suitable.
The test that is not passing in the last commit is passing locally:

This looks great overall -- we're going to do a bit of manual testing before merging!

Please merge main into this branch, and then apply the changes we talked about for removing the default value in the service object, and then ping @cielf.

Please merge main into this branch, and then apply the changes we talked about for removing the default value in the service object, and then ping @cielf.

@cielf First of all have a nice week! I anticipated the conclusion of this PR following the guidance from brook, could you review it and in case there is something to improve, let me know.

Tested the admin dashboard with this -- I'm getting "Name not Provided"  rather than the email there  on a brand new user,  though it does show the email for users that were created with the seed.

It appears that the User, at least if created from the admin interface,  is getting created with the name "", rather than nil.    That will need to be addressed.

That also happens if they are created using<EMAIL_ADDRESS>  I expect there is an issue in UserInviteService, but it might be in how it's being called.

Hey @cancelei This is not behaving in quite the way I expected it to. From the manual testing, in the admin dashboard I expect the email to be shown on a newly added user with no name -- that's not happening. A little digging also showed that the name is getting set to "" rather than nil on a newly added user.

 I added some changes in the views that were blocking adding users without names from the front end, but in the backend, I still haven't found the place where the user name is turning from nil to "". I will be looking into it in the next 24 hours, to complement the current PR, but if you have some hints, I will try to do my best afterward conditioned to my current VS Code-empowered searching capabilities. But I have some ideas on what words to mix to find possible results in the future.

Hello @cielf, I did some improvements in this PR:
The biggest change was creating a _spec file for dashboard_helper that contains the recently_added_user_display_text which was something you mentioned and we didn't have before. So we can track the different scenarios for this when there is a name when the name is nil, and when the name is blank as ("").
I refactored the tests to gain robustness and added a new one that uses the "name is blank as ("")" since the submitted forms with blank field originate "" and not nil as I was expecting previously. That's why the previous tests were passing, I was expecting the name to be nil and not "".
The current CI run fails due to a FERRUM error (possibly a flaky test).

I have this on my list to manually test tomorrow.  There's enough new code (including some things I think are redundant) that I'm going to ask @awwaiid  to take another look.

LGTM from a what the users see and do  p.o.v.

LGTM from a what the users see and do p.o.v.

@awwaiid let me know if there is anything I could remove or add to fulfill the definition of done in this PR.


Worker flag update callback

Contributions: We are not currently taking public contributions - see our contributions policy. However, we are accepting issues and we do want your feedback.

Description
Added a delegate that can be binded to in C++ to register for when worker flag updates are received
Release note
Added a delegate that can be binded to in C++ to register for when worker flag updates are received which will allow users to do Live Tweaking to values in a cloud deployment
Tests
Tested locally by binding to the delegate and manually calling it
Documentation
Refer to worker flags documentation on SpatialOS docs for OnFlagsUpdatedCallback
Primary reviewers
@m-samiec @joshuahuburn

@chrisfields0 Was there a Jira ticket for this? And please add a release note also.


Docker build from Dockerfile fails: no source files were specified

I'm trying to build the container from the Dockerfile, however I keep getting the following:
Sending build context to Docker daemon  7.168kB
Step 1/28 : FROM debian:9 AS builder
 ---> 5ddf6ebdcdb4
Step 2/28 : RUN apt-get -y update && apt-get -y install     curl gcc g++ make zlib1g-dev libgomp1     perl     python3-h5py     libfile-which-perl     libtext-soundex-perl     libjson-perl liburi-perl libwww-perl
 ---> Using cache
 ---><PHONE_NUMBER>cc
Step 3/28 : COPY src/* /opt/src/
COPY failed: no source files were specified

To Reproduce
docker build - < Dockerfile
Docker version: Docker version 20.10.10, build b485636
Main workstation running Ubuntu 20.04 LTS.

Realised I didn't get the src stuff first! Oops!


Super called before class properties are initialized

TypeScript Version:  3.2.0-dev.20180929
Search Terms: property initialization, incorrect constructor ordering, super called before property initializer, field initalization order
Code
Consider a system where a base class is responsible for data de-serialization and sub-classes define their properties, including some with default values:
class BaseClass {
    constructor(data: { [key: string]: string }) {
        for (const key in data) {
            this[key] = data[key];
        }
    }
}

class SubClass extends BaseClass {
    prop: string = "default"
}

const instance = new SubClass({ prop: "value" })
// instance.prop is "default"

Expected behavior:
My logical expectation would be that instance.prop would have been set to to "value".
Actual behavior:
The generated JavaScript calls the parent classes constructor before setting the default values for the sub-class, so any modifications the constructor makes to the instance's properties get overwritten by the default values.
Playground Link: example

Working as intended: see the FAQ.


Upgrade woe: 1.4->1.6: Error: could not get runtime: eventer creation: No support for journald logging

Upgrading from podman-1.4.2-6.module+el8.2.0+4448+2029f340 to 1.6.2-5.module+el8.2.0+4584+0d586e68 on rhel8, rootless, results in unrunnable podman:
$ podman run --rm alpine true
Error: could not get runtime: eventer creation: No support for journald logging

Removing ~/.config/containers and ~/.local/share/containers makes it work again.
I imagine this is a CANTFIX/WONTFIX. Am filing in case it helps someone in the future.

Would podman system migrate have fixed your issue?

Good question. I didn't think of it, and no longer have that virt, and am scrambling to figure out the current batch of rhel8 problems right now. Will test if I get a chance today.

Nope:
$ podman system migrate
Error: could not get runtime: eventer creation: No support for journald logging
$ podman info
Error: could not get runtime: eventer creation: No support for journald logging

Will leave the VM up for a while (fiddling with buildah) in case there's anything else you'd like me to try.

podman --events-backend file info

podman-events-backend-file-into.txt

...and, because I belatedly realized that that isn't very helpful:
$ grep journ ~/.config/containers/*
/home/testuser/.config/containers/libpod.conf:events_logger = "journald"

$ sed -ie '/events_logger/d' ~/.config/containers/libpod.conf
$ podman info
[ works ]
$ podman run alpine_labels date
Thu Nov  7 22:29:45 UTC 2019

Is this a build flags issue, maybe? This error seems suspiciously similar to a "we didn't build with systemd support" one...

Yep, that error comes out when Podman is not built with systemd support.

Oh, interesting. Looking now at the specfile. @jnovy, heads-up, this may end up landing on your plate...

I can't find a smoking gun, but there is a specfile change similar to the buildah one. @jnovy, I think I'm going to drop this one on you for a closer look since you were able to figure out the buildah issue. @mheon, thanks for the insight!

This is not an upstream issue, so I am going to close.  Please reopen if I am mistaken.


Intercom doorbell and speaking not working

Hi,
Intercom camera is working great!
Doorbell and speaking is not working.
I can not see any log or error.
Is this a technical limitation?
Thank you

Doorbell should work. What kind of intercom do you have?
I wanted to implement 2way audio and HomeKit secure video, but i did not finish it yet. The basic HomeKit code is already there, so thats why you see this in the HomeKit ui. I probably should not have pushed this to the Main repository yet.

Doorbell works about 50% of the time.
I have the "old" intercom.
Thank you for the work.

If you put HomeBridge in debug mode, do you see a log entry for every time you press the doorbell? I don't think this is an issue with the plugin, as I cannot reproduce this.

feel free to reopen the issue if you want to work on this


Fix: Missing Ids (EXPOSUREAPP-12545)

The current Appium tests are relying on ids in the header itself, containing NavigationButton and containing title TextViews.
When the included header layout was replaced with MaterialToolbar in release 2.21, the ids got lost, causing the Appium tests to fail.
This pull requests fixes the issue
Changes Made:
Change toolbar ids
Add BindingAdapter to set ids for MaterialToolbar children
Add resource file for holding ids

It would be much cleaner to make changes on the tester's side, please discuss with the testers if it's possible

It would be much cleaner to make changes on the tester's side, please discuss with the testers if it's possible

That is not possible , the idea is to run the automation against our releases, we had a meeting with them already. We agreed to fix it for old screens that has been working ,for new screens , they should find their own solution

It would be much cleaner to make changes on the tester's side, please discuss with the testers if it's possible

It would be much cleaner to make changes on the tester's side, please discuss with the testers if it's possible

That is not possible , the idea is to run the automation against our releases, we had a meeting with them already. We agreed to fix it for old screens that has been working ,for new screens , they should find their own solution


OLS-186: Checks how improper LLM loading is handled by LLM loader

Description
Checks how improper LLM loading is handled by LLM loader
Type of change

[ ] Refactor
[ ] New feature
[ ] Bug fix
[ ] CVE fix
[ ] Optimization
[ ] Documentation Update
[ ] Configuration Update
[ ] Bump-up dependent library
[x] Unit tests

Related Tickets & Documents

Related Issue #OLS-186

Checklist before requesting a review

[x] I have performed a self-review of my code.
[x] PR has passed all pre-merge test jobs.
[ ] If it is a core feature, I have added thorough tests.

Testing

Will be done on CI

This or https://github.com/openshift/lightspeed-service/pull/177 is correct, not both. Need to decide :)

This or https://github.com/openshift/lightspeed-service/pull/177 is correct, not both. Need to decide :)

#177 is closer to correct in that it raises the exception in llmloader when the libraries for a particular provider can't be loaded.

This or #177 is correct, not both. Need to decide :)

#177 is closer to correct in that it raises the exception in llmloader when the libraries for a particular provider can't be loaded.

then let's merge #177 and then update these tests - inverse the logic basically ;)

/unhold

updated @bparees

/lgtm
/approve


Secondary sorting criteria

We have a bunch of tables with sorting enabled, and are looking for a way to implement the secondary sorting criteria.
So, for example, if you sort by 1 criteria, and there are multiple entries in the table that have same rank, then we would like to sort those ones by the second criteria.
Is this feasible with react-virtualized?

I was able to do this by passing a custom sort function that checks if the terms are equal which then falls into a secondary criteria check.


Manually installed slidev via pnpm fails with an error when executing pnpx slidev

Following the docs, I installed slidev via pnpm but executing pnpx slidev ends up with an error.
Here is what I did:
❯❯ node -v
v14.17.0

❯❯ pnpm -v
6.3.0

❯❯ pnpm install @slidev/cli @slidev/theme-default
 WARN  @slidev/cli<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
 WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
Packages: +277
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Packages are hard linked from the content-addressable store to the virtual store.
  Content-addressable store is at: /Users/sho/.pnpm-store/v3
  Virtual store is at:             node_modules/.pnpm
Progress: resolved 277, reused 277, downloaded 0, added 277, done
<EMAIL_ADDRESS>Running postinstall script, done in 284ms
node_modules/.pnpm/vue-demi<EMAIL_ADDRESS>Running postinstall script, done in 165ms
node_modules/.pnpm/vue-demi<EMAIL_ADDRESS>Running postinstall script, done in 148ms

dependencies:
+ @slidev/cli 0.10.2
+ @slidev/theme-default 0.7.3

❯❯ touch slides.md

❯❯ echo 'shamefully-flatten=true' >> .npmrc

And run the pnpx slidev command:
❯❯ pnpx slidev
(node:85702) UnhandledPromiseRejectionWarning: Error: Failed to resolve force included dependency: @antfu/utils
    at optimizeDeps (/Users/sho/slidev-pnpm/node_modules/.pnpm/vite@2.3.3/node_modules/vite/dist/node/chunks/dep-e9a16784.js:64756:27)
    at processTicksAndRejections (internal/process/task_queues.js:95:5)
    at async runOptimize (/Users/sho/slidev-pnpm/node_modules/.pnpm/vite@2.3.3/node_modules/vite/dist/node/chunks/dep-e9a16784.js:68555:48)
    at async Server.httpServer.listen (/Users/sho/slidev-pnpm/node_modules/.pnpm/vite@2.3.3/node_modules/vite/dist/node/chunks/dep-e9a16784.js:68569:17)
(Use `node --trace-warnings ...` to show where the warning was created)
(node:85702) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:85702) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

NOTE: I always run npm init slidev to scaffold my slides. But this time, I did it manually just because I wanted to try it out.

This problem happens on my machine, too. I think it's because the different way pnpm and npm functions, if you use npm from the website doc things work out fine.
$ npm install @slidev/cli @slidev/theme-default
$ touch slides.md
$ npx slidev

https://sli.dev/guide/install.html#install-manually
Have you turned shamefully-hoist on?

Close due to inactive


Fix Users Invite Flow

Acceptance Criteria

When I go to the users page, I can see a list of partner users and the ability to add users
When I click add users, I can invite a new user to the system

QA Review

go to https://detroit-partners-dev.netlify.app/users
see that the list loads
invite users

This will fail on staging at the moment, because there are no listings (technically because there are no jurisdictions, which we get from the assigned listings). So if we need to be able to invite users without assigning listings, we'll have to fix that.

Okay that's not a problem, lgtm on dev


[Proposal] Add ItemTemplate to customize the Drop Down suggestions

To augment suggestion list to show images, tags, etc.
Add ItemTemplate property AutoCompleteEntry to customize the suggestion list.
In Android, i think Adapter = _adapter = new AutoCompleteAdapter(Context, global::Android.Resource.Layout.SimpleDropDownItem1Line); needs to be modified

It looks like @david-d-le has a solution for this https://github.com/CommunityToolkit/Maui/discussions/1828#discussioncomment-10587261
Could you create a PR into this repo?

Yup, there's already some work being done in this direction.
I've created a new branch 'feature/item_template_support' that can be used to develop this feature.
Maybe @david-d-le can PR the code into that branch and we can work from there and add support for the rest of the platforms (iOS, Mac and Windows)?

Hi, i will do PR as soon as i am back and will have access to my pc

Thanks @david-d-le  for the PR. I've completed the PR and now the branch 'feature/item_template_support' has the latest changes that support Android ItemTemplate.
If someone starts a new development for one the platforms, write it here, so that we don't do duplicated work :)
Thanks!


Refactor

Yay! 👍
Thanks for refactor!
Do you mind commiting README.md that is written setup?

@sosukesuzuki
Yay! 👍
Thanks for refactor!
Do you mind commiting README.md that is written setup?

@sosukesuzuki
I plan to accept the pull request as soon as I completely understand contents.

@pf35301
I got it.
I'll write the setup to README.md.
Also, I deployed PrefabDocumenterPage to https://angry-darwin-42a02a.netlify.com with Netlify. Please confirm.

Please choose and deploy your favorite deployment method.
I recommend Netlify.
On Netlify, you can select the repository and specify build command and the directory you want to deploy. Please refer the below if you need:
https://www.netlify.com/blog/2016/09/29/a-step-by-step-guide-deploying-on-netlify/


Temp title for PR

fix a particular issue

Sorry @neerajcs19 your data should lie here: https://github.com/codeforcauseorg/pledge/tree/master/src/data/contributors
Currently you have put your json file in root directory, which is not perceived at all.
Also please add avatar to your profile.
Here is a sample, you could refer: https://github.com/codeforcauseorg/pledge#steps-to-take-the-pledge

Sorry @neerajcs19 your data should lie here: https://github.com/codeforcauseorg/pledge/tree/master/src/data/contributors
Currently you have put your json file in root directory, which is not perceived at all.
Also please add avatar to your profile.
Here is a sample, you could refer: https://github.com/codeforcauseorg/pledge#steps-to-take-the-pledge

Sir I had not understood clearly

Sir I had not understood clearly

Sir I had not understood clearly

@Abhishek-kumar09 you should explain more

Sir I had not understood clearly

@Abhishek-kumar09 you should explain more

@neerajcs19
Currently you have placed your file (NeerajChaudhary.json) in the main directory.
Instead, your file should lie in src/data/contributors directory.
If you would open src/data/contributors  directory in your code editor, you could see many such files from other contrubutors too. You have to just place your file there.
Also,
You should follow this template:
You have not added your avatar in your json file, please add in the image field of your json:
{
    "name": "Ganga Chaturvedi",
    "skills" : ["JS", "React"],
    "cause" : "empowerment",
    "image" : "Avatar2",
    "github" : "https://github.com/gangachatrvedi",
    "twitter" : "https://twitter.com/gangachatrvedi",
    "linkedin" : "https://www.linkedin.com/in/gangachatrvedi"
}

Please let me know if it helped.

@neerajcs19
Currently you have placed your file (NeerajChaudhary.json) in the main directory.
Instead, your file should lie in src/data/contributors directory.
If you would open src/data/contributors  directory in your code editor, you could see many such files from other contrubutors too. You have to just place your file there.
Also,
You should follow this template:
You have not added your avatar in your json file, please add in the image field of your json:
{
    "name": "Ganga Chaturvedi",
    "skills" : ["JS", "React"],
    "cause" : "empowerment",
    "image" : "Avatar2",
    "github" : "https://github.com/gangachatrvedi",
    "twitter" : "https://twitter.com/gangachatrvedi",
    "linkedin" : "https://www.linkedin.com/in/gangachatrvedi"
}

Please let me know if it helped.

nicely done, thanks for your pr, welcome to the community.

nicely done, thanks for your pr, welcome to the community.


add onRestart for Set The Language

Seems to work fine, except for the action bar title will stay as the original language in most activities.

Hmmm.   Action bar title changes to the correct language if there is a screen rotation.

I am going to take a look for another solution.

There seems to be some caching of action bar title, even forcing restart does not solve that (see my latest commit 1e82f946224835b2893a24981902fc83864004a5)