Some fixes before pulling changes into main

[x] @ChristophB: don't know how excessive a change this would be, but right now in EntityForm the expression-input for a CompositeConcept dictates that Constant are excluded. However, the Distance function requires as its second parameter a constant (or rather an integer).
[x] @fmatthies / @ChristophB: need to look into status text, as it doesn't seem to update within the Dialog. If it's closed and opened again, all is well.
[x] @fmatthies / @ChristophB: I added a Build query button to Documents page. (see picture 1) I thought that it would be nice to jump into the Queries page with the Data Source selected from where one jumped. However, before I make it functional, I wanted to see/check if this is something that goes along with the design choice because a Repository needs to be selected as well
[ ] @fmatthies / @ChristophB: when coming from Query results (Show data set) the left menu is not updated (see picture 2) and clicking on Documents resets the url but still shows the query results (one needs to hit F5 or change to another TOP page and back)
[x] pre-select already published clusters (https://github.com/Onto-Med/top-frontend/blob/895fd7cea8acb72c821d1df76ca8eee884fa9e80/src/components/Documents/ConceptClusterDialog.vue#L292)
[x] there are some more TODOs in the ConceptClusterDialog.vue file

@ChristophB: don't know how excessive a change this would be, but right now in EntityForm the expression-input for a CompositeConcept dictates that Constant are excluded. However, the Distance function requires as its second parameter a constant (or rather an integer).

We could remove this exclusion from the expression-input component. There is currently no way to check if an argument is applicable to a function, so constants will be available everywhere in the concept expression editor.

We could remove this exclusion from the expression-input component. There is currently no way to check if an argument is applicable to a function, so constants will be available everywhere in the concept expression editor.

Some more adjustments are needed here. Constants are not limited to integers.

@fmatthies / @ChristophB: need to look into status text, as it doesn't seem to update within the Dialog. If it's closed and opened again, all is well.

This is still hard for me to reproduce without a proper document server and graph API. The status is derived from the computed value graphPipelineStatus. My guess is that pipeline responses might be missing the status value.

@fmatthies / @ChristophB: I added a Build query button to Documents page. (see picture 1) I thought that it would be nice to jump into the Queries page with the Data Source selected from where one jumped. However, before I make it functional, I wanted to see/check if this is something that goes along with the design choice because a Repository needs to be selected as well

Currently, the button just redirects to the query builder. I think this is fine for now. And there are also two things to consider here:

The document search page is adapter-based and completely unrelated to repositories. So we have now way for the user to select a repository before clicking the button.
Repositories might now be configured for all data adapters. It is unclear if an adapter-repository combination is allowed to perform queries with.

@fmatthies / @ChristophB: when coming from Query results (Show data set) the left menu is not updated (see picture 2) and clicking on Documents resets the url but still shows the query results (one needs to hit F5 or change to another TOP page and back)

I think, the cause is that there is no data source selected if the page is accessed via "show data set". The desired data source can be propagated via the property dataSource of the DocumentSearchForm component.

Okay, thanks for the heads up!

@fmatthies / @ChristophB: I added a Build query button to Documents page. (see picture 1) I thought that it would be nice to jump into the Queries page with the Data Source selected from where one jumped. However, before I make it functional, I wanted to see/check if this is something that goes along with the design choice because a Repository needs to be selected as well

Currently, the button just redirects to the query builder. I think this is fine for now. And there are also two things to consider here:
1. The document search page is adapter-based and completely unrelated to repositories. So we have now way for the user to select a repository before clicking the button.

2. Repositories might now be configured for all data adapters. It is unclear if an adapter-repository combination is allowed to perform queries with.

When clicking the button, the dataSource will be sent to QueryBuilder as well. Therein setRepository checks whether the data source is configured for this particular repo-organisation. If not, a notify warning is shown to inform the user. Otherwise, the dataSource is pre-selected. (a441570)

@fmatthies / @ChristophB: when coming from Query results (Show data set) the left menu is not updated (see picture 2) and clicking on Documents resets the url but still shows the query results (one needs to hit F5 or change to another TOP page and back)

I think, the cause is that there is no data source selected if the page is accessed via "show data set". The desired data source can be propagated via the property dataSource of the DocumentSearchForm component or retrieved from the query object.

Hm, I just checked. I already implemented that. The second picture shows the dataSource is successfully read out, as well.

@fmatthies / @ChristophB: need to look into status text, as it doesn't seem to update within the Dialog. If it's closed and opened again, all is well.

This is still hard for me to reproduce without a proper document server and graph API. The status is derived from the computed value graphPipelineStatus. My guess is that pipeline responses might be missing the status value.

Not just necessarily for this issue, but in general for the backend (or better yet the adapters):

graph API runs on port 9007
Elasticsearch runs on port 9008

The two datasource configs I use are attached (added a txt ext because github did not allow for yml to be uploaded)
Test_Data_Source_1.yml.txt
Test_Data_Source_2.yml.txt

Task 4 might be fixed now.

Still can't reproduce pipelines locally. I don't have documents.

Elasticsearch runs under <IP_ADDRESS>:9008 and the index is documents if you need test documents.

This doesn't really help. When I try to run it with a local instance, the following error is raised:

{"error":"Couldn't find graph pickle 'test_data_source_3_graph.pickle'. Probably steps before failed; check the logs.","name":"test_data_source_3"}
-- 500 Internal Server Error from GET http://localhost:9007/graph/statistics?process=Test_Data_Source_3

But initially response to startConceptGraphPipeline(...) has SUCCESSFUL as status. There seems to be something off with either backend or concept-graphs. Another request for the pipeline status is necessary to get the correct FAILED status.

Okay, thanks. I look into it. Could you provide me with your setup?
Could be that I didn't update the concept-graphs-api on top-prod. I always used my local instance thereof to be able to debug it.

I use a local instance as well, with branch "issues_4_5_improvements".

clicking on Documents resets the url but still shows the query results (one needs to hit F5 or change to another TOP page and back)

This is kind of intentional, because clicking on "Documents" has the same effect as clearing the query result. In both cases, the data source remains selected. Should we leave it this way?

This doesn't really help. When I try to run it with a local instance, the following error is raised:

{"error":"Couldn't find graph pickle 'test_data_source_3_graph.pickle'. Probably steps before failed; check the logs.","name":"test_data_source_3"}
-- 500 Internal Server Error from GET http://localhost:9007/graph/statistics?process=Test_Data_Source_3

But initially response to startConceptGraphPipeline(...) has SUCCESSFUL as status. There seems to be something off with either backend or concept-graphs. Another request for the pipeline status is necessary to get the correct FAILED status.

Can you see the logs of the concept-graphs-api? Normally, this error indicates that some step in the graph creation process failed (one of process documents, embed phrases, clustering, or graph creation)?

This is the output of concept graphs:

concept-graphs-api-1  | INFO:main:Using process name 'test_data_source_3'
concept-graphs-api-1  | [2024-07-17 11:42:24,109] INFO in main_methods: Using process name 'test_data_source_3'
concept-graphs-api-1  | INFO:main:Using preset language settings for 'de'
concept-graphs-api-1  | [2024-07-17 11:42:24,110] INFO in main_methods: Using preset language settings for 'de'
concept-graphs-api-1  | INFO:main:Skipping present saved steps
concept-graphs-api-1  | [2024-07-17 11:42:24,110] INFO in main_methods: Skipping present saved steps
concept-graphs-api-1  | INFO:main:Reading config (data) ...
concept-graphs-api-1  | [2024-07-17 11:42:24,136] INFO in main_methods: Reading config (data) ...
concept-graphs-api-1  | INFO:main:No config file provided; using default values
concept-graphs-api-1  | [2024-07-17 11:42:24,136] INFO in preprocessing_util: No config file provided; using default values
concept-graphs-api-1  | INFO:main:Parsed the following arguments for <preprocessing_util.PreprocessingUtil object at 0x7f2378f83850>:
concept-graphs-api-1  |         {'spacy_model': 'de_dep_news_trf', 'file_encoding': 'utf-8', 'corpus_name': 'test_data_source_3'}
concept-graphs-api-1  | [2024-07-17 11:42:24,136] INFO in main_methods: Parsed the following arguments for <preprocessing_util.PreprocessingUtil object at 0x7f2378f83850>:
concept-graphs-api-1  |         {'spacy_model': 'de_dep_news_trf', 'file_encoding': 'utf-8', 'corpus_name': 'test_data_source_3'}
concept-graphs-api-1  | INFO:main:Labels will be extracted from the document server if the field 'label' is present.
concept-graphs-api-1  | [2024-07-17 11:42:24,137] INFO in preprocessing_util: Labels will be extracted from the document server if the field 'label' is present.
concept-graphs-api-1  | INFO:main:Reading config (embedding) ...
concept-graphs-api-1  | [2024-07-17 11:42:24,137] INFO in main_methods: Reading config (embedding) ...
concept-graphs-api-1  | INFO:main:No config file provided; using default values
concept-graphs-api-1  | [2024-07-17 11:42:24,137] INFO in embedding_util: No config file provided; using default values
concept-graphs-api-1  | INFO:main:Parsed the following arguments for <embedding_util.PhraseEmbeddingUtil object at 0x7f23790c3430>:
concept-graphs-api-1  |         {'model': 'Sahajtomar/German-semantic', 'down_scale_algorithm': None, 'corpus_name': 'test_data_source_3'}
concept-graphs-api-1  | [2024-07-17 11:42:24,137] INFO in main_methods: Parsed the following arguments for <embedding_util.PhraseEmbeddingUtil object at 0x7f23790c3430>:
concept-graphs-api-1  |         {'model': 'Sahajtomar/German-semantic', 'down_scale_algorithm': None, 'corpus_name': 'test_data_source_3'}
concept-graphs-api-1  | INFO:main:Reading config (clustering) ...
concept-graphs-api-1  | [2024-07-17 11:42:24,138] INFO in main_methods: Reading config (clustering) ...
concept-graphs-api-1  | INFO:main:No config file provided; using default values
concept-graphs-api-1  | [2024-07-17 11:42:24,138] INFO in clustering_util: No config file provided; using default values
concept-graphs-api-1  | INFO:main:Parsed the following arguments for <clustering_util.ClusteringUtil object at 0x7f23790c3310>:
concept-graphs-api-1  |         {'algorithm': 'kmeans', 'downscale': 'umap', 'scaling_n_neighbors': 10, 'scaling_min_dist': 0.1, 'scaling_n_components': 100, 'scaling_metric': 'euclidean', 'scaling_random_state': 42, 'kelbow_k': (10, 100), 'kelbow_show': False, 'corpus_name': 'test_data_source_3'}
concept-graphs-api-1  | [2024-07-17 11:42:24,138] INFO in main_methods: Parsed the following arguments for <clustering_util.ClusteringUtil object at 0x7f23790c3310>:
concept-graphs-api-1  |         {'algorithm': 'kmeans', 'downscale': 'umap', 'scaling_n_neighbors': 10, 'scaling_min_dist': 0.1, 'scaling_n_components': 100, 'scaling_metric': 'euclidean', 'scaling_random_state': 42, 'kelbow_k': (10, 100), 'kelbow_show': False, 'corpus_name': 'test_data_source_3'}
concept-graphs-api-1  | INFO:main:Reading config (graph) ...
concept-graphs-api-1  | [2024-07-17 11:42:24,139] INFO in main_methods: Reading config (graph) ...
concept-graphs-api-1  | INFO:main:No config file provided; using default values
concept-graphs-api-1  | [2024-07-17 11:42:24,140] INFO in graph_creation_util: No config file provided; using default values
concept-graphs-api-1  | INFO:main:Parsed the following arguments for <graph_creation_util.GraphCreationUtil object at 0x7f23790c3cd0>:
concept-graphs-api-1  |         {'cluster_distance': 0.7, 'cluster_min_size': 4, 'graph_cosine_weight': 0.6, 'graph_merge_threshold': 0.95, 'graph_weight_cut_off': 0.5, 'graph_unroll': False, 'graph_simplify': 0.5, 'graph_simplify_alg': 'significance', 'graph_sub_clustering': False, 'restrict_to_cluster': True, 'corpus_name': 'test_data_source_3'}
concept-graphs-api-1  | [2024-07-17 11:42:24,140] INFO in main_methods: Parsed the following arguments for <graph_creation_util.GraphCreationUtil object at 0x7f23790c3cd0>:
concept-graphs-api-1  |         {'cluster_distance': 0.7, 'cluster_min_size': 4, 'graph_cosine_weight': 0.6, 'graph_merge_threshold': 0.95, 'graph_weight_cut_off': 0.5, 'graph_unroll': False, 'graph_simplify': 0.5, 'graph_simplify_alg': 'significance', 'graph_sub_clustering': False, 'restrict_to_cluster': True, 'corpus_name': 'test_data_source_3'}
concept-graphs-api-1  | /usr/local/lib/python3.10/dist-packages/transformers/utils/generic.py:309: UserWarning: torch.utils._pytree._register_pytree_node is deprecated. Please use torch.utils._pytree.register_pytree_node instead.
concept-graphs-api-1  |   _torch_pytree._register_pytree_node(
concept-graphs-api-1  | WARNING:root:There are trigger types in the termset that are not expected by negspacy and won't be processed: {'none', 'preceding_speculation', 'following_speculation'}
concept-graphs-api-1  | [2024-07-17 11:42:27,426] WARNING in negation: There are trigger types in the termset that are not expected by negspacy and won't be processed: {'none', 'preceding_speculation', 'following_speculation'}

I don't really care about whether it succeeds or fails. It just doesn't seem right if the pipeline is declared as "successful" in the first response.

It looks like the concept graph Docker container is eating up my memory and is dying.


Rename Ukrainian City to Ukrainian format and deccomunization

SUMMARY
The city name is listed as “Kiev,” which is the russian variant. + Rename old city name Dnipropetrovsk to Dnipro
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TESTING INSTRUCTIONS

ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Required feature flags:
[ ] Changes UI
[ ] Includes DB Migration (follow approval process in SIP-59)

[ ] Migration is atomic, supports rollback & is backwards-compatible
[ ] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[ ] Introduces new feature or API
[ ] Removes existing feature or API

Thanks for the PR @Fillin-Trader. It would be helpful if you can add references in the description to support the proposed changes, as these are likely not obvious to someone without in depth knowledge of the area and how the names are translated to English.

If we want this change to "stick" we should make an edit in the Jupyter notebook, rather than editing a generated file which might get overridden.

If we want this change to "stick" we should make an edit in the Jupyter notebook, rather than editing a generated file which might get overridden.

Very good point @rusackas - let's make sure at least the notebook has this update, and even better, requesting the update at the source, rather than as an override in our script.

Ooh, that's even better. If NaturalEarth would reflect this in their data, the fix would be far more impactful than affecting only Superset.

One bit of technical feedback here: This geojson will be overwritten whenever anyone runs the Jupyter Notebook, and pulls new data from Natural Earth. So if you want to make changes to the geojson file, it should be done in the notebook as part of that process/worflow.
To address the elephant in the room: This does indeed feel a little political in nature, which is something we generally try not to dabble in in general. For instance, when there is a boundary dispute, we both sides "win" in the maps. With a given name, we don't usually default to the region's own language for the name; for example, we have a Spain map... not an España map. However, in this case, things are a little different, since indeed Kiev was imposed as a standard the USSR, which clearly no longer exists in its own right. Ukraine has been trying to adjust this standard since its independence in 1991, which far predates the current geopolitical struggles it faces, so I think there's a strong case to change it. Additionally, in 2019, the United States Board on Geographic Names officially changed its official spelling to "Kyiv," so I believe this change has merit if we're going to refer to other regions/territories by their American-English names (e.g. Spain). In other words, while this feels like stepping in controversy, I feel like this is actually consistent, current, accurate, and I'd have a significantly harder time making a case for the opposite.

Closing this since it's not fixed in the notebook, and at least half of it was covered by this PR: https://github.com/apache/superset/pull/28226
If you want to rename Dnipropetrovsk to Dnipro (fine with me!) then please open a new PR that updates the Jupyter Notebook, or file an issue so someone else can fix it when they have time.


docs: bump version in README

v4 is released since a while https://github.com/peter-evans/create-issue-from-file/releases/tag/v4.0.0
I saw that you updated that in the lychee repo as well @mre

from https://github.com/lycheeverse/lychee-action#credits:

This action is based on peter-evans/link-checker and uses lychee (written in Rust) instead of liche (written in Go) for link checking. For a comparison of both tools, check out this comparison table.

Looks like the mentioned tool isn't even listed there anymore?
Should it be removed?

Looks like the mentioned tool isn't even listed there anymore?
Should this hint get removed and the section reworded?

That's true. It's deprecated. I guess we should remove that section. Would be thankful for another PR for removing that. 🙏


RunTimeError in Step6

@F2Wang
when I try "python create_label_files.py all", I got an error below
timer is assigned class label 0.
0%|                                                                                | 0/55 [00:00<?, ?it/s]
Traceback (most recent call last):
File "create_label_files.py", line 128, in
sample_points = mesh_copy.sample(10000)
AttributeError: 'PointCloud' object has no attribute 'sample'
Hope someone gives some hints

@xiaoru222 were you able to solve this?

hi, did you solve the problem

@chengm0-0,
HI Cheng, I was able to solve this issue.

@nihar0602
Hello. I got the same problem. How could you solve it?

@chengm0-0,
HI Cheng, I was able to solve this issue.

HI Nihar,I got the same question.Could you please help me ?

@nihar0602
Hello. I got the same problem. How could you solve it?

Hi hyoon970,I got the same question, have you solved the problem?

Hello, I don't remember it exactly, but I solved it.
After ply processing with Meshlab, may be you saved the ply file with another name, not 'registeredScene.ply'.
But create_label_files.py read 'registeredScene.ply' file.
So you should change the original ply file's name into another one, like 'registeredScene_orogonal.ply' and rename the processed ply file as 'registeredScene.ply'.
If you can't solve your problem with solution above, reply to me anytime.
Thanks and regards,
H.Yoon

@nihar0602
Hello. I got the same problem. How could you solve it?

Hi hyoon970,I got the same question, have you solved the problem?

@qingweihk
Hello, I don't remember it exactly, but I solved it.
After ply processing with Meshlab, may be you saved the ply file with another name, not 'registeredScene.ply'.
But create_label_files.py read 'registeredScene.ply' file.
So you should change the original ply file's name into another one, like 'registeredScene_original.ply' and rename the processed ply file as 'registeredScene.ply'.
If you can't solve your problem with solution above, reply to me anytime.
Thanks and regards,
H.Yoon

Thanks very much.
I wonder after Meshlab process:the  'registeredScene.ply' should be  'registeredScene.obj? Cause The end product is a triangular mesh instead of the registered pointcloud( the repo's instruction at  part 5)

@nihar0602
Hello. I got the same problem. How could you solve it?

Hi hyoon970,I got the same question, have you solved the problem?

@qingweihk
Hello, I don't remember it exactly, but I solved it.
After ply processing with Meshlab, may be you saved the ply file with another name, not 'registeredScene.ply'.
But create_label_files.py read 'registeredScene.ply' file.
So you should change the original ply file's name into another one, like 'registeredScene_original.ply' and rename the processed ply file as 'registeredScene.ply'.
If you can't solve your problem with solution above, reply to me anytime.
Thanks and regards,
H.Yoon

Thanks very much.
I wonder after Meshlab process:the 'registeredScene.ply' should be 'registeredScene.obj? Cause The end product is a triangular mesh instead of the registered pointcloud( the repo's instruction at part 5)

No, I used ply file and succeed. I don't know much about Meshlab, so I just followed the Youtube video the author uploaded.

@nihar0602
Hello. I got the same problem. How could you solve it?

Hi hyoon970,I got the same question, have you solved the problem?

@qingweihk
Hello, I don't remember it exactly, but I solved it.
After ply processing with Meshlab, may be you saved the ply file with another name, not 'registeredScene.ply'.
But create_label_files.py read 'registeredScene.ply' file.
So you should change the original ply file's name into another one, like 'registeredScene_original.ply' and rename the processed ply file as 'registeredScene.ply'.
If you can't solve your problem with solution above, reply to me anytime.
Thanks and regards,
H.Yoon

Thanks very much.
I wonder after Meshlab process:the 'registeredScene.ply' should be 'registeredScene.obj? Cause The end product is a triangular mesh instead of the registered pointcloud( the repo's instruction at part 5)

No, I used ply file and succeed. I don't know much about Meshlab, so I just followed the Youtube video the author uploaded.

Thanks very much!

@nihar0602
Hello. I got the same problem. How could you solve it?

Hi hyoon970,I got the same question, have you solved the problem?

@qingweihk
Hello, I don't remember it exactly, but I solved it.
After ply processing with Meshlab, may be you saved the ply file with another name, not 'registeredScene.ply'.
But create_label_files.py read 'registeredScene.ply' file.
So you should change the original ply file's name into another one, like 'registeredScene_original.ply' and rename the processed ply file as 'registeredScene.ply'.
If you can't solve your problem with solution above, reply to me anytime.
Thanks and regards,
H.Yoon

Thanks very much.
I wonder after Meshlab process:the 'registeredScene.ply' should be 'registeredScene.obj? Cause The end product is a triangular mesh instead of the registered pointcloud( the repo's instruction at part 5)

No, I used ply file and succeed. I don't know much about Meshlab, so I just followed the Youtube video the author uploaded.

Thanks very much!

hi,I got the same question, have you solved the problem?

@lzhhh6161
Solutions above do not work?

replace the following sentence:

sample_points = mesh_copy.sample(10000)
into:
dellist = [j for j in range(0, len(mesh_copy.vertices))]
dellist = random.sample(dellist, len(mesh_copy.vertices) - 10000)
sample_points = np.delete(mesh_copy.vertices, dellist, axis=0)

Thanks. It's working here.


prepend the no results found dialog

Signed-off-by: Benjamin Cable<EMAIL_ADDRESS>

The only thing I did really was to switch to prepend for the 'no results found' dialog, since I had an issue with the whole list being shown and the dialog being at the bottom. I ran the makefile. if anything is wrong please bash me on the head.


feat: refine font

Overview
What I've done
update font-family, use web font Noto Sans as default En font
update the place where I found the font is not right

also fix the workspace cell members bug


chore(package): update semantic-release to version 15.0.2

Closes #635

:tada: This PR is included in version 4.2.2 :tada:
The release is available on:

npm package (@next dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


plumbed react decorators to be access universally

Ooookayy.  This is probably the most magically commit I've ever made in boring.  Essentially I've plumbed in a way for containers to have access to decorators simply by doing
import { decorators } from 'boringbits/react
The decorator object is constructed by sweeping through the directory decorators where the key is the filename and value is whatever the module exports.  Each decorator is assumed to be a class that is meant to take a React Class as an argument and render it as a child.
The way I make the object available magically on the client side is simply re-using the same mechanism / glue I used to include all modules in the "containers" directory.
Making the decorators available on the node side is a bit more complicated.  Essentially the problem is importing from boringbits/react is a single file and that has no way of knowing "which" set of decorators that page needs.  IF boring were only to support one and only one SPA, then there would be no problem  But because boring supports many independent pages, each with their own set of potential decorators (or some sharing subsets), a require to a single file becomes problematic as it must return the set of decorators to a container in it's own "page".
The way I choose to solve this is rely upon hooked-cls and piggyback off the http-request namespace.  Essentially when any react component is required on the node side it will be done via a HTTP Request (obviously), and the context plugin already has the ability to pull information out of CLS (equiv to thread local storage).
This PR essentially does two things, it puts an object into the http-request CLS namespace called reactHandlerPaths which has all the meta data the @reactEntry decorator created (which includes all the modules "magically" required per route / page.  Then boringbits/react has an exposed function getRootComponents which will either lookup from CLS on the node side or __boring_internals on the client side.

Merging for momentum, happy to discuss and circle back on anything


Auto-Update

Description of the new feature / enhancement

Since Spotify itself has automatic updates, why not add support for Auto-Updates for this patcher too
That way users will avoid having to manually check the page for updates and will always get the latest & greatest patch when it's out!
This is a generally a good practice in many apps / programs / patchers (look at xManager, they executed it very well). Note: it doesn't have to be a installer or anything like that. Could be a simple code that checks for updates in background, for example every 24h or every time the Spotify is started.

📸 Screenshots
No response

If you like the idea, add a 👍 reaction to this post

#377


Device: Xiaomi - XMOSB01XS

Manufacturer
Xiaomi
Model
XMOSB01XS
Model ID
No response
HW Version
No response
Battery Type
CR2450
Battery Quantity
1

Related device information for those interested https://www.geekwills.com/xiaomi-human-presence-sensor-pre-sale.html


Drop pruning in compileAllJava

I couldn't find or guess why compileAllJava pruned its previous
analysis, so I removed it and found only "apiinfo/main-discovery"
failed.  That turned out to be because SourceInfos merging was removing
previously found main classes, so I tweaked that.  I reused the logic
for when to prune the analysis anyways (changes in setup).

To validate this pull request against other sbt modules, please visit this link.

To validate this pull request against other sbt modules, please visit this link.


Unable to create azure.storage.Table - plan apply fails when checking for existence

Pulumi makes it through the preview, but will fail to apply with an error. The error details contain a url with the resource group name instead of the storage account name in it, which I'm assuming is the problem:
error: Plan apply failed: Error checking for existence of existing Storage Table "table3a4db274" (Account "storageca2999c2" / Resource Group "resourcegroupa22eacc9"): tables.Client#Exists: Failure sending request: StatusCode=0 -- Original Error: Get https://resourcegroupa22eacc9.table.core.windows.net/Tables('table3a4db274'): dial tcp: lookup resourcegroupa22eacc9.table.core.windows.net: no such host
This was reproducible on a new typescript-azure project with just a storage account + table like:
const resourceGroup = new azure.core.ResourceGroup("resourceGroup");

const account = new azure.storage.Account("storage", {
    resourceGroupName: resourceGroup.name,
    accountTier: "Standard",
    accountReplicationType: "LRS",
});

const table = new azure.storage.Table("table", {
    storageAccountName: account.name,
})

This is with 1.0.0

cc @mikhailshilkov @stack72

Hi @johlrich
Apologies for the problem here - I have actually fixed this in the upstream Azurerm Terraform Provider repo
https://github.com/terraform-providers/terraform-provider-azurerm/pull/4234
This will be in the next release of the Azure provider
You can follow the release of the upstream provider here - https://github.com/terraform-providers/terraform-provider-azurerm/blob/master/CHANGELOG.md#1340-unreleased
Paul


Unable to connect to the new app (preview) workspace

Since the new app workspace is out (still in preview mode), i am unable to connect to my data in these workspace. The workspace does not appear in the drilldown list of PBI workspaces

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

ID: 458afd24-a62a-7944-5cd4-de9a9290c308
Version Independent ID: ed6a56f0-e067-9f92-5d54-6755b49f3bc0
Content: Power BI publisher for Excel - Power BI
Content Source: powerbi-docs/publisher-for-excel.md
Service: powerbi
GitHub Login: @davidiseminger
Microsoft Alias: davidi

@renaudma Thanks for your comment. We’ve forwarded your feedback to the writer, who should respond to this thread. Thanks!

Is there any progress on this?  The lack of this functionality in the new workspaces is concerning.

Sorry about the trouble you're having, and thanks for your comment, @renaudma . This may have cleared up, but looks like a support request rather than documentation feedback. You might find a solution in the Power BI Community, found at https://community.powerbi.com. If not, you can get support by going to https://support.powerbi.com.

Did you find a solution to this? :)


fix: 3595 - transient file refactoring and fixes

What

Refreshed the transient files, as a strong app restart erases all the transient files (stored as static) (but the FS files are still there), in a new recover method for background tasks.
Fixed a bug, where an internet connection error is now considered as a clean end of task stack execution.
Fixed a bug, when "unselect"ing without internet: now we remove immediately the transient file (which makes the image disappear without having to wait for an internet connection).
As a side-effect, I've refactored TransientFile, that used to be a 100% static class.

Part of

#3595

Files
New file

background_task_upload.dart: Background task about generic file upload.

Impacted files

abstract_background_task.dart: added a recover abstract method
background_task_crop.dart: now extends new class BackgroundTaskUpload
background_task_image.dart: now extends new class BackgroundTaskUpload
background_task_manager.dart: now calls recoverfor each task at run time; minor fix about "internet error"
background_task_unselect.dart: minor refactoring; minor fix removing the transient file
crop_page.dart: minor refactoring
edit_ingredients_page.dart: minor refactoring
image_upload_card.dart: minor refactoring
product_cards_helper.dart: minor refactoring
product_image_viewer.dart: minor refactoring
smooth_product_image.dart: minor refactoring
transient_file.dart: refactored as a "real" class, not a static one

Codecov Report

Merging #3939 (b8a03f7) into develop (fb164cb) will decrease coverage by 0.01%.
The diff coverage is 0.00%.

@@             Coverage Diff             @@
##           develop    #3939      +/-   ##
===========================================
- Coverage    11.01%   11.00%   -0.01%
===========================================
  Files          264      265       +1
  Lines        13033    13037       +4
===========================================
  Hits          1435     1435
- Misses       11598    11602       +4

Impacted Files
Coverage Δ

...h_app/lib/background/abstract_background_task.dart
0.00% <0.00%> (ø)

...mooth_app/lib/background/background_task_crop.dart
0.00% <0.00%> (ø)

...ooth_app/lib/background/background_task_image.dart
0.00% <0.00%> (ø)

...th_app/lib/background/background_task_manager.dart
0.00% <0.00%> (ø)

...h_app/lib/background/background_task_unselect.dart
0.00% <0.00%> (ø)

...oth_app/lib/background/background_task_upload.dart
0.00% <0.00%> (ø)

...th_app/lib/cards/data_cards/image_upload_card.dart
0.00% <0.00%> (ø)

...ckages/smooth_app/lib/database/transient_file.dart
0.00% <0.00%> (ø)

.../lib/generic_lib/widgets/smooth_product_image.dart
0.00% <0.00%> (ø)

...s/smooth_app/lib/helpers/product_cards_helper.dart
0.00% <0.00%> (ø)

... and 3 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Teslamate says I did not provide an encryption key (I did) and will not accept my tokens (generated using Tesla Auth)

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
I added an encryption key to docker-compose.yml, pulled the latest version, and started Teslamate.
There was an initial issue as the encryption key had a "$" which I didn't know would cause issues.  I fixed that by replacing "$" with "*" and it seemed to start up fine in Docker.
Upon navigating to Teslamate, I get the "No encryption key provided" message.  Is this perhaps because I initially had an issue, and I'm not using the auto-generated key, but my own?  Can I change the key or do I have to use the one that was generated?
And why won't it accept my Tesla tokens?
Expected Behavior
See above.
Steps To Reproduce
See above.
Relevant log output
All I see in the logs that's relevant is the following:

teslamate_1  | 2022-07-16 11:00:22.915 [warning] Could not decrypt API tokens!

Screenshots
No response
Additional data
No response
Type of installation
Docker
Version
v1.27

What was your fix?

I'm not sure.  I nuked my Teslamate containers and volumes and did a fresh install of 1.27.  Then I restored a backup of my database.  This caused me to lose 5 days of data (because I only run backups once per week), but I'm just glad to be back up and running.  I have everything tied into Home Assistant for automations and don't think I could live without that for very long!

I'm still having issues with the ENCRYPTION_KEY= line in the docker file. Is everyone encolsing it in "" or '' and using any fancy characters they like?

I did not, just a space after the = if I recall correctly.

So your entry in the yml file looks like:
ENCRYPTION_KEY= some(@*$)(*#@$DSKSALKDJFKLstringhere
?

I just got home and checked the file.  Turns out I lied, it's like this:
environment:

ENCRYPTION_KEY=stringoftextsymbolsandnumbers

I guess the space I was thinking of was around the "-"
SORRY!

Yep, thanks. I wonder if my KEY was just too long (64 characters). I created a new one (no space or quotes before/after it):
teslamate_1  | 2022-07-17 22:45:35.169 [warning] Could not decrypt API tokens!
...
teslamate_1  | 2022-07-17 22:45:35.242 car_id=1 [error] Error / not_signed_in
teslamate_1  | 2022-07-17 22:45:35.251 car_id=5 [error] Error / not_signed_in
teslamate_1  | 2022-07-17 22:45:35.265 [info] MQTT connection has been established
teslamate_1  | 2022-07-17 22:45:38.111 [info] tzdata release in place is from a file last modified Fri, 22 Oct 2021 02:20:47 GMT. Release file on server was last modified Wed, 16 Mar 2022 13:36:02 GMT.
teslamate_1  | 2022-07-17 22:45:43.444 [info] Tzdata has updated the release from 2021e to 2022a
teslamate_1  | 2022-07-17 22:45:54.927 [info] GET /settings
teslamate_1  | 2022-07-17 22:45:54.960 [info] Sent 200 in 32ms
teslamate_1  | 2022-07-17 22:46:34.338 [notice]     :alarm_handler: {:set, {TeslaMate.Vehicles.Vehicle_1_api_error, :fuse_blown}}
teslamate_1  | 2022-07-17 22:46:34.338 [notice]     :alarm_handler: {:set, {TeslaMate.Vehicles.Vehicle_5_api_error, :fuse_blown}}
teslamate_1  | 2022-07-17 22:50:01.790 [info] GET /
teslamate_1  | 2022-07-17 22:50:01.795 [info] Sent 302 in 5ms
teslamate_1  | 2022-07-17 22:50:01.827 [info] GET /sign_in
teslamate_1  | 2022-07-17 22:50:01.838 [info] Sent 200 in 10ms
teslamate_1  | 2022-07-17 22:50:10.301 [info] POST https://auth.tesla.com/oauth2/v3/token -> 200 (367.950 ms)
teslamate_1  | 2022-07-17 22:50:10.321 [info] Scheduling token refresh in 6 h

I'm guessing this means it took it and it shouldn't prompt for a key again?

That's similar to what happened to me even after my initial mistake of having an "$". It also wouldn't accept my tokens. I had to wipe it and do a clean install.

I'm having the same problem. Just updated my docker instance and was told to add an encryption key.
I first added it to my env and inserted the variable in my docker-compose file. That did not work. I then added it directly in the docker-compose file, which also did not work. I then created my own simple password and put it in the docker-compose file and I'm still getting the "
No encryption key provided"...
So my install and data is hosed now?
I should be able to get my database from my daily backup. Still not sure what the best way forward is.

Pretty simple (albeit annoying) to nuke your install and restore your last backup. I don't know why but it seems like if you do anything wrong with the encryption key the whole thing goes wonky.

I just wanted to add, that I shouldn't debug something late at night...
I added the encryption key to my teslamate_db service instead of my teslamate..
Luckily I saved the first key that teslamate generated for me the first time. After inserting it at the correct position it seems to be up and working without needing to restore from backup.

Nice! I tried to find the key generated by Teslamate but I had no idea where it was. How did you find it?

Nice! I tried to find the key generated by Teslamate but I had no idea where it was. How did you find it?

It is in the container logs.

That's what I looked at but couldn't find it. I'm not very skilled at reading logs though!

That's what I looked at but couldn't find it. I'm not very skilled at reading logs though!

It's at the very top of the logs. In its own block. If it helps, send the logs to a text file and open in your preferred text reader application.
docker-compose logs teslamate > logs.txt

I added the auto-generated encryption key from the logs and then used this site to grab my tokens (I guess maybe I had to do this originally when I installed TeslaMate, I forgot). After that the Home Screen loads fine and my data is all there. I tested a reboot and I'm still logged in. So I'm good to go?


RuntimeError: Event loop is closed

Hello,
I am using ".session to tdata" feature.
But it gives error:
Traceback (most recent call last):
  File "C:\Users\honur\AppData\Local\Programs\Python\Python310\lib\asyncio\proactor_events.py", line 116, in __del__
    self.close()
  File "C:\Users\honur\AppData\Local\Programs\Python\Python310\lib\asyncio\proactor_events.py", line 108, in close
    self._loop.call_soon(self._call_connection_lost, None)
  File "C:\Users\honur\AppData\Local\Programs\Python\Python310\lib\asyncio\base_events.py", line 750, in call_soon
    self._check_closed()
  File "C:\Users\honur\AppData\Local\Programs\Python\Python310\lib\asyncio\base_events.py", line 515, in _check_closed
    raise RuntimeError('Event loop is closed')
RuntimeError: Event loop is closed
Exception ignored in: <function _ProactorBasePipeTransport.__del__ at 0x0000019F5C6B1CF0>
Traceback (most recent call last):
  File "C:\Users\honur\AppData\Local\Programs\Python\Python310\lib\asyncio\proactor_events.py", line 116, in __del__
    self.close()
  File "C:\Users\honur\AppData\Local\Programs\Python\Python310\lib\asyncio\proactor_events.py", line 108, in close
    self._loop.call_soon(self._call_connection_lost, None)
  File "C:\Users\honur\AppData\Local\Programs\Python\Python310\lib\asyncio\base_events.py", line 750, in call_soon
    self._check_closed()
  File "C:\Users\honur\AppData\Local\Programs\Python\Python310\lib\asyncio\base_events.py", line 515, in _check_closed
    raise RuntimeError('Event loop is closed')
RuntimeError: Event loop is closed

I think its something about async but could not figure it out. Can you help?

same

This can be solve by adding
asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())

Where should I write?

before asyncio.run()
in other words - before starting the program


Update pipeline caching docs to include task example for Golang

Updating documentation to include directions to enable support for pipeline caching for Golang.

@geetanjaliy : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@geetanjaliy : Thanks for your contribution! The author(s) have been notified to review your proposed change.

Hi team, I have not received any email or input on the necessary changes required for this pull request. Can I please know what's the issue with this merge request?

Hi team, I have not received any email or input on the necessary changes required for this pull request. Can I please know what's the issue with this merge request?

@steved0x and @ramiMSFT - Could you review the proposed update to this pipelines article? Thanks.

@steved0x and @ramiMSFT - Could you review the proposed update to this pipelines article? Thanks.

Hi @geetanjaliy - Thank you for your content update submission. The pull request has been assigned to the content team for review. It's likely that holiday closures have delayed responses. Thanks.

Hi @geetanjaliy - Thank you for your content update submission. The pull request has been assigned to the content team for review. It's likely that holiday closures have delayed responses. Thanks.

Hi team,I have not received any email or input on the necessary changes required for this pull request. Can I please know what's the issue with this merge request?

Hi team,I have not received any email or input on the necessary changes required for this pull request. Can I please know what's the issue with this merge request?

Hi team,I have not received any email or input on the necessary changes required for this pull request. Can I please know what's the issue with this merge request?

Hi @ramiMSFT @steved0x @KathrynEE - Could you review this community contribution to a pipelines article? Thanks.

Hi team,I have not received any email or input on the necessary changes required for this pull request. Can I please know what's the issue with this merge request?

Hi @ramiMSFT @steved0x @KathrynEE - Could you review this community contribution to a pipelines article? Thanks.


Change 'back' button text to 'close'

Upon form submission, the 'back' text should say 'Close' to better help the user understand that the flow is finished.
The user could think that click 'back' will bring them backwards through the form, but if the intent is to bring them back to the home page like it is currently, it should be more clear that they are Closing and going back Home

@whoisasey
Seems like a direct change Please find the below PR:https://github.com/bikespace/bikespace-v2/pull/48
Thanks in advance!!


Dynamic DigiCert Intermediate CA

Per DigiCert's recent announcement, they are changing to more short-lived ICAs, and the first rotation is taking place in November 2020.
Lemur has relied on static ICA, defined in the config file:
DIGICERT_CIS_INTERMEDIATES
DIGICERT_ECC_CIS_INTERMEDIATES

With this change, Lemur fetches the intermediate CA per certificate.

Coverage increased (+0.02%) to 57.989% when pulling 1a270cd315f6b298870cc0adb29e1bca613de49f on hosseinsh:dymanic-digicert-ICAs into e078d331031bd5b7caa5a7d4cd39c719322b9f1f on Netflix:master.


WIP. Tenative implementation of complex matchers test

Manually triggered run

New manually triggered run.

And another.


why handleSubmit value undefined?

whats wrong with my code? its always give me error " undefined is not a function (evaluating 'handleSubmit(submit())' "
 import React, { PropTypes } from 'react';
 import {Button, StyleSheet, Text, View, TextInput, TouchableOpacity} from 'react-native';
 import { Field, reduxForm } from 'redux-form'

 const submit = values =>{
      console.log(values)
 }
 const renderInput = ({ input: { onChange, ...restInput }}) => {
     return <TextInput onChangeText={onChange} {...restInput} />
 }
 const XXX = props =>{
     const { handleSubmit } =  props
     console.log("value",handleSubmit);
     return(

     <View>
         <Text>Email:</Text>
         <Field name="email" component={renderInput} />
         <TouchableOpacity onPress={handleSubmit(submit)}>
             <Text style={styles.button}>Submit</Text>
         </TouchableOpacity>
     </View>
 )}

 const LoginScreen = ({ navigation }) =>{

     //const { handleSubmit } =  props

     return(
     <View style={styles.container}>
         <XXX/>

         <Text style={styles.welcome}>
             Screen A
         </Text>
         <Text style={styles.instructions}>
             This is great
         </Text>
         <Button
             onPress={() => navigation.dispatch({ type: 'Login' })}
             title="Log in"
         />
     </View>
 )};

 LoginScreen.propTypes = {
     navigation: PropTypes.object.isRequired,
 };

 LoginScreen.navigationOptions = {
     title: 'Log In',
 };

 export default reduxForm({
     form: 'signIn'
 })(LoginScreen);

handleSubmit is a function provided by Redux Form to the wrapped component.
You're only wrapping LoginScreen, therefore it's available there, but not inside XXX.
Now you have 2 options: either wrap XXX with reduxForm, or pass the desired props to XXX when using it.
In the case of choosing the 2nd option, you would do the following:
<XXX {...props} />

Hope this helps you.
Thanks for using Redux Form! In the future, please ask questions on StackOverflow, as the issue tracker is better suited for bug reports and feature requests.


Helm should recreate resources for subcharts when values are changed and they produce different templates

Output of helm version:
Client: &version.Version{SemVer:"v2.8.2", GitCommit:"a80231648a1473929271764b920a8e346f6de844", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.8.2", GitCommit:"a80231648a1473929271764b920a8e346f6de844", GitTreeState:"clean"}

Output of kubectl version:
Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.2", GitCommit:"81753b10df112992bf51bbc2c2f85208aad78335", GitTreeState:"clean", BuildDate:"2018-05-12T04:12:47Z", GoVersion:"go1.9.6", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.6", GitCommit:"9f8ebd171479bec0ada837d7ee641dec2f8c6dd1", GitTreeState:"clean", BuildDate:"2018-03-21T15:13:31Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"}

Cloud Provider/Platform (AKS, GKE, Minikube etc.): AWS
When I installed a chart with dependencies, if I change my values file so that the subchart's templates change, helm isn't recreating pods, etc.
To reproduce this:

Create a new chart
Configure chart museum as a dependency
Update dependencies
Install the chart using default values
Create a new values.yaml file containing:

deployment:
  annotations:
    iam.amazonaws.com/role: "fake-role"

Redeploy passing -f values.yaml

Helm should have detected that it needs to redeploy the chart museum pod, but it doesn't. Even using the --force flag on helm upgrade doesn't cause it to recreate the pod. Running helm template after extracting the chart museum tarball shows that the above annotation is present in the generated template, but for some reason helm doesn't detect this and doesn't recreate the pod.
If I manually extract the tarball and copy out the templates and values.yaml file (renaming the values.yaml created above) and then upgrade the chart, helm correctly replaces the pod.

Hi @saplla Have you tried --re-create pods?

@jascott1 thanks for the hint. The problem was in fact that I had forgotten to namespace my values, i.e. so instead of using:
deployment:
  annotations:
    iam.amazonaws.com/role: "fake-role"

I should have used:
chartmuseum:
  deployment:
    annotations:
      iam.amazonaws.com/role: "fake-role"


Add DAITA to README.md

This PR adds some information about DAITA to the project README.md.

This change is

Also, maybe we should add something to the very top of the README. Perhaps
# Go Implementation of [WireGuard](https://www.wireguard.com/) - MullvadVPN fork

This is an implementation of WireGuard in Go. The fork adds support for [DAITA](#daita).


[bug]: OSError: stable-diffusion-v1-5/stable-diffusion-v1-5 does not appear to have a file named config.json.

Is there an existing issue for this problem?

[X] I have searched the existing issues

Operating system
Windows
GPU vendor
Nvidia (CUDA)
GPU model
RTX 3070
GPU VRAM
No response
Version number
5.3.1
Browser
Chrome 130.0.6723.92
Python dependencies
{
"accelerate": "1.0.1",
"compel": "2.0.2",
"cuda": "12.4",
"diffusers": "0.31.0",
"numpy": "1.26.4",
"opencv": "<IP_ADDRESS>",
"onnx": "1.16.1",
"pillow": "11.0.0",
"python": "3.10.9",
"torch": "2.4.1+cu124",
"torchvision": "0.19.1+cu124",
"transformers": "4.41.1",
"xformers": null
}
What happened
When I attempt to generate with an sdxl controlnet, I get the following in the console:
[2024-11-04 21:23:59,857]::[InvokeAI]::ERROR --> Error while invoking session 306f40a3-987c-410c-8e10-f3cf06d8c400, invocation 72f4d084-cf86-499d-b5d1-ec9905814de1 (denoise_latents): stable-diffusion-v1-5/stable-diffusion-v1-5 does not appear to have a file named config.json.
[2024-11-04 21:23:59,874]::[InvokeAI]::ERROR --> Traceback (most recent call last):
  File "F:\AI\InvokeAI\.venv\lib\site-packages\huggingface_hub\utils\_http.py", line 406, in hf_raise_for_status
    response.raise_for_status()
  File "F:\AI\InvokeAI\.venv\lib\site-packages\requests\models.py", line 1024, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 404 Client Error: Not Found for url: https://huggingface.co/stable-diffusion-v1-5/stable-diffusion-v1-5/resolve/main/config.json

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "F:\AI\InvokeAI\.venv\lib\site-packages\diffusers\configuration_utils.py", line 379, in load_config
    config_file = hf_hub_download(
  File "F:\AI\InvokeAI\.venv\lib\site-packages\huggingface_hub\utils\_validators.py", line 114, in _inner_fn
    return fn(*args, **kwargs)
  File "F:\AI\InvokeAI\.venv\lib\site-packages\huggingface_hub\file_download.py", line 862, in hf_hub_download
    return _hf_hub_download_to_cache_dir(
  File "F:\AI\InvokeAI\.venv\lib\site-packages\huggingface_hub\file_download.py", line 925, in _hf_hub_download_to_cache_dir
    (url_to_download, etag, commit_hash, expected_size, head_call_error) = _get_metadata_or_catch_error(
  File "F:\AI\InvokeAI\.venv\lib\site-packages\huggingface_hub\file_download.py", line 1376, in _get_metadata_or_catch_error
    metadata = get_hf_file_metadata(
  File "F:\AI\InvokeAI\.venv\lib\site-packages\huggingface_hub\utils\_validators.py", line 114, in _inner_fn
    return fn(*args, **kwargs)
  File "F:\AI\InvokeAI\.venv\lib\site-packages\huggingface_hub\file_download.py", line 1296, in get_hf_file_metadata
    r = _request_wrapper(
  File "F:\AI\InvokeAI\.venv\lib\site-packages\huggingface_hub\file_download.py", line 277, in _request_wrapper
    response = _request_wrapper(
  File "F:\AI\InvokeAI\.venv\lib\site-packages\huggingface_hub\file_download.py", line 301, in _request_wrapper
    hf_raise_for_status(response)
  File "F:\AI\InvokeAI\.venv\lib\site-packages\huggingface_hub\utils\_http.py", line 417, in hf_raise_for_status
    raise _format(EntryNotFoundError, message, response) from e
huggingface_hub.errors.EntryNotFoundError: 404 Client Error. (Request ID: Root=1-672981c0-1e72c8e64f61a1ae2464aca9)

Entry Not Found for url: https://huggingface.co/stable-diffusion-v1-5/stable-diffusion-v1-5/resolve/main/config.json.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "F:\AI\InvokeAI\.venv\lib\site-packages\invokeai\app\services\session_processor\session_processor_default.py", line 129, in run_node
    output = invocation.invoke_internal(context=context, services=self._services)
  File "F:\AI\InvokeAI\.venv\lib\site-packages\invokeai\app\invocations\baseinvocation.py", line 298, in invoke_internal
    output = self.invoke(context)
  File "F:\AI\InvokeAI\.venv\lib\site-packages\invokeai\app\invocations\denoise_latents.py", line 812, in invoke
    return self._old_invoke(context)
  File "F:\AI\InvokeAI\.venv\lib\site-packages\torch\utils\_contextlib.py", line 116, in decorate_context
    return func(*args, **kwargs)
  File "C:\Users\jimmy\AppData\Local\Programs\Python\Python310\lib\contextlib.py", line 79, in inner
    return func(*args, **kwds)
  File "F:\AI\InvokeAI\.venv\lib\site-packages\invokeai\app\invocations\denoise_latents.py", line 1045, in _old_invoke
    controlnet_data = self.prep_control_data(
  File "F:\AI\InvokeAI\.venv\lib\site-packages\invokeai\app\invocations\denoise_latents.py", line 438, in prep_control_data
    control_model = exit_stack.enter_context(context.models.load(control_info.control_model))
  File "F:\AI\InvokeAI\.venv\lib\site-packages\invokeai\app\services\shared\invocation_context.py", line 375, in load
    return self._services.model_manager.load.load_model(model, _submodel_type)
  File "F:\AI\InvokeAI\.venv\lib\site-packages\invokeai\app\services\model_load\model_load_default.py", line 70, in load_model
    ).load_model(model_config, submodel_type)
  File "F:\AI\InvokeAI\.venv\lib\site-packages\invokeai\backend\model_manager\load\load_default.py", line 56, in load_model
    locker = self._load_and_cache(model_config, submodel_type)
  File "F:\AI\InvokeAI\.venv\lib\site-packages\invokeai\backend\model_manager\load\load_default.py", line 77, in _load_and_cache
    loaded_model = self._load_model(config, submodel_type)
  File "F:\AI\InvokeAI\.venv\lib\site-packages\invokeai\backend\model_manager\load\model_loaders\controlnet.py", line 50, in _load_model
    return ControlNetModel.from_single_file(
  File "F:\AI\InvokeAI\.venv\lib\site-packages\huggingface_hub\utils\_validators.py", line 114, in _inner_fn
    return fn(*args, **kwargs)
  File "F:\AI\InvokeAI\.venv\lib\site-packages\diffusers\loaders\single_file_model.py", line 268, in from_single_file
    diffusers_model_config = cls.load_config(
  File "F:\AI\InvokeAI\.venv\lib\site-packages\huggingface_hub\utils\_validators.py", line 114, in _inner_fn
    return fn(*args, **kwargs)
  File "F:\AI\InvokeAI\.venv\lib\site-packages\diffusers\configuration_utils.py", line 406, in load_config
    raise EnvironmentError(
OSError: stable-diffusion-v1-5/stable-diffusion-v1-5 does not appear to have a file named config.json.

What you expected to happen
Just expected it to generate using the sdxl controlnet.
How to reproduce the problem
Start the app, select an sdxl model, add an sdxl controlnet, click Invoke.
Additional context
No response
Discord username
No response

This same issue is popping up for me when I try to use the upscaling tab. Pretty much the exact same stack trace as OP. From what I can tell the huggingface repo for stable-diffusion-v1-5/stable-diffusion-v1-5 has changed and doesn't include a config.json file (anymore?).
From what I could tell with my limited knowledge of the InvokeAI codebase and some trudging, this is more or less what happens:
t tries to fetch the diffusers config for a controlnet checkpoint through fetch_diffusers_config, but for some reason it can't resolve what type it is and thus it ends up in the final "else" statement of that function which automatically returns "v1", and then it goes and tries to fetch SD1.5 stuff. I've tried three different checkpoints (base pony v6, RainPonyXLv2 and a Noob spin-off merge) and all fail at this point.
I changed single_file_model.py to log print mapping_class_name at the start of from_single_file, and that printed "ControlNetModel" on the attempt that it tries to go to huggingface and fails.
And this is where my knowledge ends. So either we don't actually need the SD1.5 (which seems likely as we're using SDXL models) and whatever ControlNetModel needs should be parsed correctly, OR ControlNetModel doesn't actually need anything and is accidentally being misidentified as "v1".
Hope to see a fix for this soon because right now I can't use the upscaler!

Wow! Good job!
Is there a way to sort of 'force' it to load from xinsir?

Wow! Good job!
Is there a way to sort of 'force' it to load from xinsir?

The only way I've found to resolve this issue is by installing whatever controlnet you're trying to use via the model manager using it's huggingface link, then the model manager properly imports the config.json file and it won't try to download it anymore.

Exactly. Alright, I'll try that then. Thank you so much.

you can literally use manger to download file
move it then try to add it which it will
then try to use it and it will throw an error
Server Error
OSError: stable-diffusion-v1-5/stable-diffusion-v1-5 does not appear to have a file named config.json.


python311Packages.imageio: 2.33.1 -> 2.34.0

Description of changes
Changelog: https://github.com/imageio/imageio/blob/v2.34.0/CHANGELOG.md
cc @Luflosi

Things done

Built on platform(s)

[x] x86_64-linux
[x] aarch64-linux
[x] x86_64-darwin
[x] 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

[ ] 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/)
24.05 Release Notes (or backporting 23.05 and 23.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

[x] Fits CONTRIBUTING.md.

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

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

10 packages marked as broken and skipped:

python311Packages.caffeWithCuda
python311Packages.caffeWithCuda.bin
python311Packages.dm-sonnet
python311Packages.dm-sonnet.dist
python311Packages.stytra
python311Packages.stytra.dist
python311Packages.sunpy
python311Packages.sunpy.dist
python311Packages.tensorflow-datasets
python311Packages.tensorflow-datasets.dist

20 packages failed to build:

napari (python311Packages.napari)
napari.dist (python311Packages.napari.dist)
python311Packages.aplpy
python311Packages.aplpy.dist
python311Packages.dalle-mini
python311Packages.dalle-mini.dist
python311Packages.dask-image
python311Packages.dask-image.dist
python311Packages.glueviz
python311Packages.glueviz.dist
python311Packages.pvextractor
python311Packages.pvextractor.dist
python311Packages.spectral-cube
python311Packages.spectral-cube.dist
python311Packages.textacy
python311Packages.textacy.dist
python311Packages.textnets
python311Packages.textnets.dist
tts
tts.dist

96 packages built:

deface
deface.dist
easyocr (python311Packages.easyocr)
easyocr.dist (python311Packages.easyocr.dist)
hydrus
hydrus.doc
intensity-normalization (python311Packages.intensity-normalization)
intensity-normalization.dist (python311Packages.intensity-normalization.dist)
ome_zarr (python311Packages.ome-zarr)
ome_zarr.dist (python311Packages.ome-zarr.dist)
python311Packages.albumentations
python311Packages.albumentations.dist
python311Packages.batchgenerators
python311Packages.batchgenerators.dist
python311Packages.bsuite
python311Packages.bsuite.dist
python311Packages.caffe
python311Packages.caffe.bin
python311Packages.dremel3dpy
python311Packages.dremel3dpy.dist
python311Packages.env-canada
python311Packages.env-canada.dist
python311Packages.fastai
python311Packages.fastai.dist
python311Packages.glymur
python311Packages.glymur.dist
python311Packages.gradio
python311Packages.gradio.dist
python311Packages.gymnasium
python311Packages.gymnasium.dist
python311Packages.handout
python311Packages.handout.dist
python311Packages.imagecorruptions
python311Packages.imagecorruptions.dist
python311Packages.imageio
python311Packages.imageio.dist
python311Packages.insightface
python311Packages.insightface.dist
python311Packages.k-diffusion
python311Packages.k-diffusion.dist
python311Packages.lime
python311Packages.lime.dist
python311Packages.moviepy
python311Packages.moviepy.dist
python311Packages.mung
python311Packages.mung.dist
python311Packages.muscima
python311Packages.muscima.dist
python311Packages.napari-console
python311Packages.napari-console.dist
python311Packages.napari-svg
python311Packages.napari-svg.dist
python311Packages.niworkflows
python311Packages.niworkflows.dist
python311Packages.omrdatasettools
python311Packages.omrdatasettools.dist
python311Packages.open-clip-torch
python311Packages.open-clip-torch.dist
python311Packages.pims
python311Packages.pims.dist
python311Packages.psd-tools
python311Packages.psd-tools.dist
python311Packages.pyrender
python311Packages.pyrender.dist
python311Packages.pyvista
python311Packages.pyvista.dist
python311Packages.scikit-image
python311Packages.scikit-image.dist
python311Packages.sfepy
python311Packages.sfepy.dist
python311Packages.skrl
python311Packages.skrl.dist
python311Packages.slicedimage
python311Packages.slicedimage.dist
python311Packages.spacy
python311Packages.spacy-loggers
python311Packages.spacy-loggers.dist
python311Packages.spacy-lookups-data
python311Packages.spacy-lookups-data.dist
python311Packages.spacy-transformers
python311Packages.spacy-transformers.dist
python311Packages.spacy.dist
python311Packages.test-tube
python311Packages.test-tube.dist
python311Packages.torchrl
python311Packages.torchrl.dist
python311Packages.wandb
python311Packages.wandb.dist
python311Packages.webdataset
python311Packages.webdataset.dist
rclip
rclip.dist
tartube
tartube-yt-dlp
tartube-yt-dlp.dist
tartube.dist


UseHttpClient overrides provided digest auth

Describe the bug
When using UseHttpClient to provide a custom HTTP client, the authentication config passed through UseDigestAuth gets overridden, because auth is stored as a transport on the existing HTTP client.
client, err := admin.NewClient(admin.UseDigestAuth(pubKey, privKey),
	admin.UseHTTPClient(retryClient.StandardClient()))

This results in auth failures eventually (HTTP 401 Unauthorized) because the digest information is essentially overridden by UseHttpClient.
I didn't test, but I suspect the other direction would also fail - i.e. NewClient(UseHttpClient, UseDigestAuth) would just replace the provided HTTP client with a new one that's created in UseDigestAuth.
Expected behavior
Ideally, I should be able to call both UseHttpClient and UseDigestAuth, and they'll interact with each other.
Or, document that the two features are exclusive, and how to provide auth if using a custom HTTP client.

Hi @n0nick
If you looking for the example on how to make existing digest authentication work with your own transport see:
https://github.com/mongodb/atlas-sdk-go/blob/main/examples/retry/retry.go
We have added this recently and it will cover having custom transport with digest authentication included.

This results in auth failures eventually (HTTP 401 Unauthorized) because the digest information is essentially overridden by UseHttpClient.

This is in fact an desired behaviour that is missing proper documentation.

Ideally, I should be able to call both UseHttpClient and UseDigestAuth, and they'll interact with each other.

Sadly golang does not allow to create and use 2 HTTP clients in composable way so we are limited by the platform.

Or, document that the two features are exclusive, and how to provide auth if using a custom HTTP client.

We will document that feature as well as provide example to https://github.com/mongodb/atlas-sdk-go/blob/main/examples/retry/retry.go as workaround.

Thanks @wtrocki for the reference, this is actually exactly what I'm working on - adding retry logic via hashicorp/go-retryablehttp 😄
And ack re documentation as a workaround. I tried thinking of a suggestion on how to compose this elegantly, but the http.Client interface is tricky in that sense.


pip install imaginairy does not put binary somewhere on PATH

The instructions suggest that pip install imaginary will create a binary called imagine.
# on macOS, make sure rust is installed first
>> pip install imaginairy
>> imagine "a scenic landscape" "a photo of a dog" "photo of a fruit bowl" "portrait photo of a freckled woman" "a bluejay"

When I enter imagine to the shell prompt, the binary cannot be found.
zsh: command not found: imagine

I think I need the binary location so I can add it to my path. Can the documentation be updated with any additional information needed to make this run on MacOS?
Dependency versions:

Python 3.10.10
pip 23.0.1
rustc 1.68.1 (8460ca823 2023-03-20) (built from a source tarball)

I had the same issue and it's a problem with PATH not with the library, this should fix it: https://stackoverflow.com/a/62151306/2707179

I found the location of the binary. I am using pyenv and ZSH on MacOS so the packages are installed in a different place.
I can run the binary after adding added this line to ~/.zshrc:
export PATH="$PATH:$HOME/.pyenv/versions/3.10.10/bin"

Here is my install flow with Homebrew:
>> brew install pyenv
>> pyenv install 3.10.10
>> pyenv global 3.10.10
>> pip install imaginairy
>> pip show imaginairy
Name: imaginAIry
Version: 5.0.1
Summary: AI imagined images. Pythonic generation of stable diffusion images.
Home-page: UNKNOWN
Author: Bryce Drennan
Author-email:
License: UNKNOWN
Location: /Users/cartland/.pyenv/versions/3.10.10/lib/python3.10/site-packages
Requires: click, click-shell, diffusers, einops, fairscale, ftfy, gfpgan, imageio, kornia, numpy, omegaconf, Pillow, protobuf, psutil, pytorch-lightning, realesrgan, timm, torch, torchdiffeq, torchmetrics, torchvision, tqdm, transformers
Required-by:

I browsed around the folders to look for the bin directory and I found it here:
/Users/cartland/.pyenv/versions/3.10.10/bin

Thanks for the tip about python3 -m site --user-base but it doesn't work for my environment.
>> python -m site --user-base
/Users/cartland/.local

Glad you were able to work that out. I also use pyenv and zsh. I suspect your pyenv installation isn't quite finished.
on the zsh github page it suggests modifying .zshrc like this:
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(pyenv init -)"' >> ~/.zshrc

I'd expect you to not need to manually add specific versions of python to the PATH after that

Thanks @brycedrennan that was the problem with my installation. Appreciate the tip!


connection error on Android 10 API 29

It showing  connection error "true" on Android 10 when i call this method - error.isConnectionError()  but when I run on Android Nougat API 24 its working fine .
i also use this - android:networkSecurityConfig="@xml/network_security_config"
android:usesCleartextTraffic="true"
in the manifest file but its not gonna work .

i solve it my self - i was use  dirPath = new File(Environment.getExternalStorageDirectory().getAbsolutePath());
which should be dirPath = getFilesDir().getPath();


Document for Viewing Kylin Cube in Tableau/Power BI

Hi,
I am new to Kylin and have few below queries.

Is it possible to connect directly to Kylin Cube in Tableau or Power BI? - When I login to Tableau, I can only see hive source tables but not the cube names.
How to use hierarchies/Measures of Kylin Cube  in Tableau or Power BI? - Will the hierarchies appear as a tree structure? Can we access measures created in Kylin directly from Tableau or power BI?
Please share any documents on the above queries.

Regards,
Nithya

Can one of the admins verify this patch?

Hi @nithyamb4790 please raise your questions in kylin user mailer, not PR. This is not valid PR.


Update CRDs

Description

For PR author

[ ] Tests for change.
[ ] If changing pkg/apis/, run make gen-files
[ ] If changing versions, run make gen-versions

For PR reviewers
A note for code reviewers - all pull requests must have the following:

[ ] Milestone set according to targeted release.
[ ] Appropriate labels:

kind/bug if this is a bugfix.
kind/enhancement if this is a a new feature.
enterprise if this PR applies to Calico Enterprise only.

/merge-when-ready

OK, I will merge the pull request when it's ready, leave the commits as is when I merge it, and leave the branch after I've merged it.


Make Traefik health checks label-configurable with Marathon.

For the two existing health check parameters (URL/path and interval), we add support for Marathon labels.
Changes in detail:

Extend the Marathon provider and template.
Refactor Server.loadConfig to reduce duplication.
Refactor the healthcheck package slightly to accommodate the changes and allow extending by future parameters.
Update documentation.

Fixes #1232.

This PR builds upon the changes introduced by #1319. Thus, it is currently based on that branch and will be rebased onto master as soon as the dependent PR merges.

#1319 is merged, I think you can rebase on master now.

@ldez already did a few days ago (forgot to comment).
Latest merge conflicts are due to more recent updates. Will update later.
This shouldn't stop reviewing though.


Feature Request: Allow arrays for postfix::config values

The postfix::config defined type should allow arrays for values.
This...
postfix::config { 'mydestination':
    ensure => present ,
    value => [ $::fqdn , "smtp.${::domain}" , 'localhost' , 'localhost.localdomain' , "localhost.${::domain}" ]
}

should be the same as:
postfix::config { 'mydestination':
    ensure => present ,
    value => "$::fqdn smtp.${::domain} localhost localhost.localdomain localhost.${::domain}"
}

But the first one is easier to maintain, especially when pulling values from Hiera.

Pull request #106 opened for this

Will that allow me to set more than one reject_rbl_client parameter?

This won't directly affect the reject_rbl_client parameter, because that's not a configuration variable by itself - it's a sub-parameter of the smtpd_client_restrictions.  WIthout this patch, the first example would work; with this patch, the second would also work.
# works with existing camptocamp-postfix module
postfix::config { 'smtpd_client_restrictions':
    ensure => present ,
    value => 'permit_mynetworks reject_rbl_client rbldomain1 reject_rblclient rbldomain2' ,
}

# works with PR#106
postfix::config { 'smtpd_client_restrictions':
    ensure => present ,
    value => [
        'permit_my_networks' ,
        'reject_rbl_client rbldomain1' ,
        'reject_rbl_client rbldomain2' ,
    ]
}

That is awesome!  I don't mind how it's done, I just wanted to be able to use more than 1 rbl.  Thanks!


Feature Request: Configuration of subscribed subtopics and custom topics

Currently, the HRIListener subscribes to all required subtopics of bodies, faces, and voices, for example body.roi.
But in many situations, only a subset of these topics is needed.
Thus there should be a mechanism to define with subtopics are listened to.
Moreover, it should be possible to add custom subtopics.
Possible API interface:
def my_data_converter_func(data):
     # some function that converts the data in a custom format
     ...
     return converted_data

hri = HRIInterface()
hri.add_body_topic(name='roi', data_type=RegionOfInterest, data_converter=my_data_converter_func)

I'm not in favour of offering such mechanism directly in the library. If you need to transform your data, you can do it in the callback of eg HRIListener.on_face.
wrt to only subscribing to some topics: what is your use-case? (eg, why is it an issue for you to subscribe to all the ROS4HRI topics by default?)

I would feel that it could hinder performance if all ros4hri nodes subscribe to all topics of it instead of just the ones they need.
Moreover, such as mechanism would allow to define custom subtopics, for example for the body (e.g. height of the body).
Otherwise, if I have to create again for each tracked body and custom subtopic a subscriber manually (/humans/bodies//height) which I hoped the pyhri interface would make easier for me.


Fix broken link to Contributing.md

The link to contributing on the GH pages is broken, fixing the link to the MD file in the .github folder on the master branch.

Contents of that branch are auto-generated from templates. Would you mind to resubmit the changes to the templates https://github.com/fsprojects/VisualFSharpPowerTools/blob/2c7a2bb55f675766dd2f7e7ce11ebbb20f63f797/docs/tools/templates/template.cshtml#L49 in master branch?

OK, I'll have to close this PR and try a second one... I've messed up my repo.


Have some place to share the scan files

It would probably be a good idea to set up some place to share the outputs of scan.py that take a long time to compute.
For now I just uploaded mine (np grid: 10, q2 bins: 10) here:
https://files.fm/u/9zyyyhx8
I'm currently running scan.py with np grid 30, q2 bins 10 so that should be available in around 24h (server is a bit crowded).

yes thats true,

Also I just noticed that for bigger grids, RAM becomes a huge issue. When doing the hierarchy.linkage on a 30x30x30 grid, it consumes up to 5 or 6 GB and everything will freeze if you don't have that available.
Anyway, here's a couple of results (because of the RAM issue I've directly uploaded the clustering results for d=0.1, 0.75 and 0.5, corresponding to 3, 4 and 6 clusters):
https://files.fm/u/chpypfa6

Here's what the notebook looks like with that data:
https://files.fm/u/kfeb7z7n
But anyone should get these same results with the data file from above.
Note that instead of doing plot_cluster(df, cols), I changed the implementation and one now does cp = ClusterPlot(df) and then df.scatter(cols) or df.fill(cols) (for new color plots).

Hi
"Also I just noticed that for bigger grids, RAM becomes a huge issue. When doing the hierarchy.linkage on a 30x30x30 grid, it consumes up to 5 or 6 GB and everything will freeze if you don't have that available."
I understand the hierarchical clustering is among the most expensive clustering we can do, as it keeps all the structure.   If we use other clustering algorithms we will likely not have this problem so severe.
Another advantage of trying another clustering algorithm is that they can produce centers for each cluster and thats very useful for us.  I will try to play with some of the clustering methods in scikit-learn.
Another thing I will try is to train some classifier like random forest with the output of the clustering algorithm, then it can classify any point of the parameter space.

For the grid, I think a 30x30x30 grid is already quite good, dont think there is need to go beyond that.   For the q2 grid we can use 15 bins as a upper limit I think (based on the experimental results published so far).

Yes, playing around with other clustering algorithms sounds great!
Not completely sure about the machine learning idea. Because as you said, 30^3 is already quite fine of a grid and if needed we could just make that even finer. So in my opinion, a deterministic approach to assign a new point that is between the grid lines to an existing cluster would be more transparent and probably sufficiently precise (plus easier from the implementation I would say).

I will add a method switch to the cluster method so that we can have multiple methods in parallel.

Since e.g. not using Hierarchical clustering would change the implementation quite a lot, it's probably best to have subclasses of the Cluster class, i.e. one subclass HierarchicalCluster and one KmeansCluster for k-means clustering etc.

"Not completely sure about the machine learning idea. Because as you said, 30^3 is already quite fine of a grid and if needed we could just make that even finer. So in my opinion, a deterministic approach to assign a new point that is between the grid lines to an existing cluster would be more transparent and probably sufficiently precise (plus easier from the implementation I would say)."
Yes you are right ;)

I just opened a new issue for discussions about the new clustering algorithms just for keeping thins ordered ;)

Let's just use an open google drive folder to share:
https://drive.google.com/drive/folders/16EcW5lOBcPAVNOS38u3SKTT00sO-jRoB?usp=sharing
that should allow anyone read and write access.


Dependency cycle detected  import/no-cycle

The requirement of the project is to separate DOM from logic in different files.
Thus, I have these files:
default.js
import { submitForm } from './logic'

function displayTaskForm(key) {
  // function create form HTML content with btn submit.
  submitForm(addTaskbtn, key);
  return form;
}

export { displayTable };

logic.js
import { displayTable } from './default';

const submitForm = (btn, key) => {
  // Adds event listener to add input to the table && local storage
  displayTable(key) // shows the table content including recent input
  return btn;
}

export { submitForm };

And I have a similar error as above:
default.js
1:1  error  Dependency cycle detected  import/no-cycle
logic.js
1:1  error  Dependency cycle detected  import/no-cycle
Could you advise how I could solve this issue? the problem is I have to split my DOM from the logic part. I don't see a way to link creating DOM based on if statement results.
Here is the original repository link

The warning is indeed correct, since you have files that depend on each other.
Your default.js is exporting displayTable but you’ve only shown the code for displayTaskForm, so I’m not sure why the files need to depend on each other - but the implication is that you’ve got many things in one file. Try aiming for one thing per file - it will make it much easier to avoid cycles.

Everything seems correct here to me. I think we can close this.
@SarvarKh the rule is supposed to be off by default but it doesn't seem to be. You can always disable it if you'd like though. https://github.com/benmosher/eslint-plugin-import/issues/2103#issuecomment-858152817

Every rule is off by default; a config enables them.
This rule is enabled in the airbnb config, for example, because it’s a very bad idea to have cycles of any kind.

Ah I see. Sorry for the issue clutter, I wasn't aware that this plugin was incorporated into their config.


More detailed setup documents with less assumptions on users

Provide a more detailed setup-documents.
Hand-tested this document on a clean Ubuntu system without go, npm, nodejs.
More instructions on running tests.

@rfan-debug I applied my suggestions to this branch. If you're ok with them, I'll squash and merge this branch into master.

@salemhilal Please do! Thanks!

@salemhilal i resolved the merge conflicts.


SVG  not honored by  element

It would be nice if VSCode and/or its most-used SVG previewing extension(s) would render animation correctly in the way other platforms (Chrome browser, Boxy, SVG Viewer, etc.) currently do.
Namely, a previewed SVG image of the following form remains static in VSCode, whereas it animates correctly in other IDEs:

<animate attributeName="pointsAtX" values="100;50;100" ... />
...
<circle ... style="filter:url(#filt)" />
The spotlight effect will appear on the Circle shape, as defined, but only with its initial values. An identical copy of the same SVG code in, say, Boxy-SVG animates fluidly and consistently.
Not sure where the limitation lies in VSCode, but suspect the popular "SVG" extension, which is the only SVG-centric extension I have enabled. Installing others (e.g. "SVG Preview") did not rectify this issue.

Please file this against your svg preview extension. We don't include previews for svg files out of the box


PHP Fatal error:  Uncaught Symfony\Component\HttpClient\Exception\TimeoutException

Hello,
I am getting high number of timeout errors like the one below:
PHP Fatal error:  Uncaught Symfony\\Component\\HttpClient\\Exception\\TimeoutException: Idle timeout reached for "https://api.openai.com/v1/chat/completions". in /var/www/html/gpt/vendor/symfony/http-client/Chunk/ErrorChunk.php:56\nStack trace:\
Is this normal? I mean, can I expect so many timeouts from OpenAI API?  The internet connection is stable.
What is the default time-out?
In my php.ini, I have default_socket_timeout = 60
Any suggestion?

In general the OpenAI API has been pretty slow and/or flaky recently, there's a lot of posts about it on their community forums.

@afeno This is a common issue, especially when you are using the GPT-4 model.
The timeouts are depending on the default values your HTTP client has. If you want you can provide a HTTP client manually via factory to adjust the timeouts:
$client = OpenAI::factory()
    ->withHttpClient(new \GuzzleHttp\Client(['timeout' => 15, 'connect_timeout' => 15])
    ->make();

Thank you! Sorry to ask this basic question but How should I use the code above?
If I use that code in my php file Im getting the fqollowing error:
PHP Fatal error:  Uncaught Error: Class "GuzzleHttp\\Client" not found
Should I chage that in the soruce file? Should I import another library?
This is my only definition of $client that I have right now:
$client = OpenAI::client($yourApiKey);
Thank you.

Given your first message, it looks like you are using the Symphony HTTP client. There you have to adopt my example to the Symphony client.

I tried changing it to the Symfony client but I get the error:
Expected parameter of type '\Psr\Http\Client\ClientInterface', '\Symfony\Contracts\HttpClient\HttpClientInterface' provided

@afeno
 $this->client = OpenAI::factory()
   ->withHttpClient(new Client(['timeout' => 90, 'connect_timeout' => 90]))
  ->withApiKey('yourkey')
  ->make();

Combined all pieces from this post, after lots of trial and error, finally I am using the below. I know 300 is too high, but otherwise it just doesn't work!
$AI_client = OpenAI::factory()
		                   ->withHttpClient(new \GuzzleHttp\Client(['timeout' => 300, 'connect_timeout' => 300]))
		                   ->withApiKey($AIApiKey)
		                   ->make();

My code uses chat mode, ~15 prompt-response rounds, each consuming 700 to 1500 tokens, staring with low and more tokens as 'chat' grows. I am using gpt-3.5-turbo model.
Works fine so far!

For anyone else experiencing this problem, @apexdivision's answer may require guzzle to be installed:
$ composer require guzzlehttp/guzzle
In my case, I didn't have GuzzleHttp installed and it left my scratching my head because it's referenced in symfony, but the  only reason I had symfony installed is because it was as a bundled requirement with openai-php/client.


Autosplit, default quality, some wildcards and info in downloads tab

There are 5 commits:
Show filename, crop time in downloads tab.
Add 3 new wildcards with hyphen.
Add special wildcard, that will be replaced by some number to avoid overwrite.
Add new settings option - quality by default. Will be selected ONLY if this quality exist, in other cases you has to select quality manually (as now).
Add autosplit option (with special setting in preferences). You can download video by part automatically, with extra overlap option. Work only with conversation.

Downloading video parts would be very useful!

I have a few questions. I saw you are publishing releases on your repo (TL 1.7.1). This is all good and MIT license is exactly for that. But you started to change the readme links and author information in this pull request.
So my question is: Are you working on your own version of TL? Because if so, you should definitely rename the App to Targen's Twitch Leecher or else so everyone knows what they're dealing with. Because if you publish TL 1.7.1 and I do the same in a couple weeks, installations will eventually clash on the user's system.
So if you are working on a complete new feature rich TL, you should stop commiting changes like versioning and author information in this pull request and separate your repository.
As a hint: In order to separate the installers, you'll need to create new product and upgrade codes in the installer project.  Basically you will need to tell Windows that your TL is a different one than mine.
I can merge festures into this repo, but not author information and versioning. So if you want to have your features in the original TL, you should create a new pull request for each feature separately without changing any of the original readmes and version information. Those have no place in a PR.
Compare it to StreamLabs OBS and OBS Studio. StreamLabs forked OBS and made it their own software. Separate installer, separate versioning and such. So what am I looking at here? Do you want to go ahead and create your own TL or do you want the features merged?
Because if it's option #2, I cannot really merge your PR anymore. I don't want to cherry pick myself through the commit list. We need every feature separately testable in a separate PR. At least that's what I am used to on GitHub.
I am really happy to see that there is some action going on with TL but we need to arrange ourselves depending on what your plans with the software are 😄

@Franiac First of all, I apologize for my mistakes. I have almost no experience in development, commiting and publishing. So please let me know if i can do something in better ways.
I want to add all those enhancements to your application. But, as i see, you do a lot of tests and don't want to add so big changes.
Now i undestand your concerns and I am going to rework my fork to split if in two branches - with commits that can be merged with your application and same branch with own guid, releases and name to let anybody install my version of TL.
So i have question - should i do a pull request to every commit? And how i should orginize my work to leave possibility to merge it with your application?
Also, I would like to have faster way to contact with you, because i have some more ideas to improve TL

@targen92 Hey, no problem at all, we all start somewhere.
So here's how it goes usually:
Basically a pull request is a branch of your forked repo that you want to have merged into my master branch. If you develop a new feature, the PR should be self-contained on submission. That means you have thoroughly tested everything, don't have any conflicts and everything needed has been committed in the PR branch.
You should not develop on an open PR unless the receiver (me) tells you there's something that needs improvement or you spot a bug and want to fix it (which should not happen if you tested everything 😄).
There should not be more than one feature in a single PR, because if one feature is ok and the other is not I cannot merge the good feature because it is together with another feature that might need improvements. This is the case with this PR. I don't like certain things but i also cannot merge other features until the bad ones are fixed. I hope that makes sense.
The rule is: One feature = one PR. You open up a new branch for every new feature that you want to submit. Sure, If features depend on each other you have to put them in a single branch but that's not very common.
And again, do NOT "develop" on an open PR. A PR is a COMPLETE and FINISHED feature ready for merging. Once sumbitted you should be finished and be be like "oh, I also could do that and that". Because if I get a PR and test it and 5 hours later there's a new commit and I have to test everything again.... well... that's not fun 😄
Now something basic and I really don't want to speak badly of you:
Your code needs improvements in a couple of areas. I see that you are farely new and this is perfect, noone can be an expert right off the bat. BUT! The time that I would need to clean your code or give you hints for improvements, I basically can implement the thing by myself. That's not made up in order to screw you over (I don't do such a thing) that's just how it is. I really don't have that much time to invest into TL. And if I start to spend all that time into fixing PR's, TL will get nowhere.
I love your improvements and I will surely adapt the code but don't be angry if I implement certain features myself and decline your PR because it simply is faster if I do it on my own. You can be sure that I take a look at your implementations to see what you have there and probably will use code you have written so it is a great help from you.
Now here's what we do:
You should not make anymore commits to this PR. But also you don't need to split this into separate PR's. I can use this PR as it is and it is very valuable for my own implementations. If you have new implementations just make sure that they are separate well tested PR's as described above without changing stuff that is not related to the feature (author info, versions and such).
A quick hint: I am working on the new download manager right now that is not in the TL repo. That's why there is nothing going on right now in TL. Just for your info.
Also when that's done I am looking forward to port TL into an Electron app based on Typescript/HTML5/SCSS/NodeJS because then TL is Linux and Mac compatible. I don't really like .NET and C# so TL will transform into a desktop Angular application in the forseeable future. But there's not really more info about that at the moment.
I hope this all helps you a little bit and again, don't be pissed if I cannot handle your PR's in time but be sure they are useful and help implementing features 😄


The queryClient is made reactive (!?) in the options causing severe performance issues in vue

Describe the bug
Hey! We make extensive use of the query client by, for example, using a query in a table to resolve a value for each cell. We also initialize our own instance of QueryClient and pass it as option to each useXXX-call like so:
const queryClient = new QueryClient({ ... });
const query = useQuery(..., ..., {
    queryClient,
});

We have to do this since we use the query-client outside of vue component-instances and, as of right now, the query client is by default injected which would throw an error in this instance.
For some reason the queryClient seems to be made reactive as this causes severe performance issues in our case since vue traverses the whole client for reactive changes on every change.
Your minimal, reproducible example
See below
Steps to reproduce
I unfortunately couldn't manage to reproduce it as this seems to only happen if there is lots of data so please bear with me. I seem to have found out what might cause performance issues with the new option of passing the queryClient to, for example, useQuery:
All arguments passed to useQuery (and other utility functions) are wrapped in a computed, cloned and refs unwrapped. This includes the queryClient we pass as option as well. Now, the query client is rather large and, I'm not sure, may contain many reactive values / data-structures which are cloned every time they change (because of the computed).
When we mark the queryClient as raw all problems are gone, the same if we do not pass the queryClient directly as option to one of the query functions.
This issue is difficult to reproduce, as on our end we work with very large amount of dynamic queries (e.g. queries where the query key changes), that is around 200-10.000, and for anything below that JavaScript is fast enough to process the whole queryClient as you do.
Expected behavior
The queryClient should not be cloned or made reactive (at least not as it's done right now). Instead, you could extract the queryClient from the options (here?!) and handle it separately which would solve the issue.
How often does this bug happen?
Every time
Screenshots or Videos
Performance tests conducted on our system (closed source) with only one change: marking the queryClient as raw or not passing it as option:
passing the  queryClient as-is to useQuery:

marking the queryClient as raw or not providing it as option in useQuery:

I know that this doesn't really help as I can't share my code with you for this, but just to demonstrate the difference it makes for us with this little change)-
Platform

OS: Ubuntu 22.04.1 LTS
Browser: Chrome v109
Version: @tanstack/vue-query v4.24.6

Also happens on comparable windows / mac-os setups.
TanStack Query version
v4.24.6
TypeScript version
v4.9.5
Additional context
I'm sorry that I couldn't come up with a reproduction, if there are any more details I can add to help fix this please go ahead. I tried to provide as many details as possible, but the project I'm working on is rather large and closed-source making it difficult to create an appropriate reproduction.

Hi
This problem will be solved in v5 as queryClient will be passed as a separate option https://github.com/TanStack/query/blob/v5/packages/vue-query/src/useBaseQuery.ts#L50
As for v4, maybe extracting client in parseQueryArgs to prevent deep cloning, would be enough?

Should be fixed in https://github.com/TanStack/query/releases/tag/v4.32.2


Fix warnings and docs in the syntax builder sample

There are some warnings in CodeGenerationUsingSwiftSyntaxBuilder.swift. This MR fixes them:

This MR also fixes the docs, applying the right indentation, as printed by the executable:
struct Person {
    var lastName: String
    func withLastName(_ lastName: String) -> Person {
        var result = self
        result.lastName = lastName
        return result
    }
    var firstName: String
    func withFirstName(_ firstName: String) -> Person {
        var result = self
        result.firstName = firstName
        return result
    }
    var age: Int
    func withAge(_ age: Int) -> Person {
        var result = self
        result.age = age
        return result
    }
}

@swift-ci please test


Bot announces who joins or leaves the channel in first text channel

Just did this because people on my server wanted it.
The bot announces people who join or leave the channel the bot is in inside the first text channel.

what do you mean first text channel?

Uhhhh no.  You can have your bot do this but it doesn't really belong in the main bot.


refactor(kademlia): optimize locking of conn info kept about peers

This change is

The snapshot taken before the change:

The snapshot taken after the change:


python3Packages.typer: attempt aarch64 test fix

Description of changes
Lacking a non-emulated aarch64 system, attempting to debug this failure via ofborg...
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

[ ] Fits CONTRIBUTING.md.

@ofborg build python39Packages.typer

Ok test_install_completion breaks everywhere now.


Change License ?

I'm not really fond of the MIT license, it's too "permissive" to me. Do you think it would be a good idea to switch to another one ? (GPLv3 masterrace)

up


How to do drag and drop with different view types?

I need to implement the drag and drop for items with different view types. I tried with following code
override fun onMove(recyclerView: RecyclerView, source: RecyclerView.ViewHolder, target: RecyclerView.ViewHolder): Boolean {
        // Notify the adapter of the move
        mAdapter.onItemMove(source.adapterPosition, target.adapterPosition)
        return true
}

without
if (source.itemViewType != target.itemViewType) {
            return false
}

but it doesn't work as I expected. I'm using a grid layout by the way.

I think you need to do it in the getMovementFlags function. There you have a change to decide if you want to allow drag and/or swipe for the given ViewHolder.


Bump the bound on hashable to allow for 1.4

This PR bumps the bound on hashable to allow for 1.4

Duplicate of #324


Fix mmapbuf::resize() and re-enable aligned resize test

@tobim please wait before pushing the changes until https://github.com/vast-io/vast/pull/229 is merged (and then rebase to master before pushing to get a clean build).

@Neverlord branch is updated with your requested changes and an additional fix for platforms other than linux. Rebase is done as well.

Do you mind if I add a similar flag to VAST's configure?

Not at all, please go ahead.

Mid-term we should strive for zero-warnings builds and enforce this via Jenkins.

Absolutely!