Error in group_by(): ! Must group by variables found in .data. ✖ Column cell_type is not found.

libra_result = Libra::run_de(sc, meta = NULL,

         replicate_col = "orig.ident",

         cell_type_col = "cell_type",

         label_col = "seurat_clusters",

         de_family = 'pseudobulk',

         de_method = 'edgeR',

         de_type = 'LRT',

         min_cells = 3,

         min_reps = 2,

         input_type = "scRNA",

         n_threads = 4

         )

[1] "Macrophage"
Error in group_by():
! Must group by variables found in .data.
✖ Column cell_type is not found.
Run rlang::last_trace() to see where the error occurred.

rlang::last_trace()
<error/rlang_error>
Error in group_by():
! Must group by variables found in .data.
✖ Column cell_type is not found.

Backtrace:
▆

├─Libra::run_de(...)
│ └─... %>% ...
├─dplyr::rename(...)
├─dplyr::arrange(., cell_type, gene)
├─dplyr::ungroup(.)
├─dplyr::select(...)
├─dplyr::left_join(., out_stats, by = "gene")
├─dplyr::select(., -avg_logFC)
├─dplyr::mutate(., gene = as.character(gene))
├─dplyr::mutate(., p_val_adj = p.adjust(p_val, method = "BH"))
├─dplyr::group_by(., cell_type)
└─dplyr:::group_by.data.frame(., cell_type)
Run rlang::last_trace(drop = FALSE) to see 2 hidden frames.

rlang::last_trace(drop = FALSE)
<error/rlang_error>
Error in group_by():
! Must group by variables found in .data.
✖ Column cell_type is not found.

Backtrace:
▆

├─Libra::run_de(...)
│ └─... %>% ...
├─dplyr::rename(...)
├─dplyr::arrange(., cell_type, gene)
├─dplyr::ungroup(.)
├─dplyr::select(...)
├─dplyr::left_join(., out_stats, by = "gene")
├─dplyr::select(., -avg_logFC)
├─dplyr::mutate(., gene = as.character(gene))
├─dplyr::mutate(., p_val_adj = p.adjust(p_val, method = "BH"))
├─dplyr::group_by(., cell_type)
└─dplyr:::group_by.data.frame(., cell_type)
└─dplyr::group_by_prepare(.data, ..., .add = .add, error_call = current_env())

└─rlang::abort(bullets, call = error_call)

Still doesn't work, I tried two seuratobjects, one of them is OK, another one is not. I checked their structures, just the same！So I was confused. Please help me, thanks
@AlanTeoYueYang

I thought it's a new issue of the wrapped code.  B failed and showed me the error. I have checked the data structures between A and B. They were same as each other. That's why I confused, After the last update, I tried again. Just as  same as what happened before. So I thought it's a new issue of the wrapped code. What you think? Please tell me, thanks!

Agree, I met this error too.

Agree, I met this error too.

I guess the identification of Cell_Type in somewhere may be wrong

Agree, I met this error too.

I guess the identification of Cell_Type in somewhere may be wrong

Hi, I have identified the bug and the latest push should fix it.

Thanks for your help! I will try it again now!

libra_result = Libra::run_de(sc, meta = NULL,

         replicate_col = "orig.ident",

         cell_type_col = "cell_type",

         label_col = "seurat_clusters",

         de_family = 'pseudobulk',

         de_method = 'edgeR',

         de_type = 'LRT',

         min_cells = 3,

         min_reps = 2,

        input_type = "scRNA",

         n_threads = 4

         )

[1] "Macrophage"
Error in group_by():
! Must group by variables found in .data.
✖ Column cell_type is not found.
I tried again, Still meet the error. This time I found something deserved to explore:
cluster 0    1    2    3    4    5    7    8    9
number 1663 2152  260  593  381   90   19   26    9
when I compared cluster 2 and 4 in subgroup A, it worked well, however, when I changed to cluster 1 and 5, it failed again.
I suspected that the key was the quantitative difference between the two clusters.  Then I changed another subgroup B to run:
cluster 0    1    2    3    4    5    6    7    8    9
number 15    6 1441  696  100   95  163  106    4   16
in this new subgroup,  I compared cluster 2 and 9 in subgroup A, it also worked well.
I was confused again. Barely, it's not the cause of the quantitative difference between the two clusters.

Hi, I have identified the bug and the latest push should fix it.

libra_result = Libra::run_de(sc, meta = NULL,

         replicate_col = "orig.ident",

         cell_type_col = "cell_type",

         label_col = "seurat_clusters",

         de_family = 'pseudobulk',                  #缺陷：pseudobulk差异分析需要足够的两两比较的样本数量，否则结果会出现较强的假阴性现象。

         de_method = 'edgeR',

         de_type = 'LRT',

         min_cells = 3,

         min_reps = 2,

        input_type = "scRNA",

         n_threads = 4

         )

[1] "Macrophage"
Error in group_by():
! Must group by variables found in .data.
✖ Column cell_type is not found.
Run rlang::last_trace() to see where the error occurred.

rlang::last_trace()
<error/rlang_error>
Error in group_by():
! Must group by variables found in .data.
✖ Column cell_type is not found.

Backtrace:
▆

├─Libra::run_de(...)
│ └─... %>% ...
├─dplyr::rename(...)
├─dplyr::arrange(., cell_type, gene)
├─dplyr::ungroup(.)
├─dplyr::select(...)
├─dplyr::left_join(., out_stats, by = c("gene", "cell_type"))
├─dplyr::select(., -avg_logFC)
├─dplyr::mutate(., gene = as.character(gene))
├─dplyr::mutate(., p_val_adj = p.adjust(p_val, method = "BH"))
├─dplyr::group_by(., cell_type)
└─dplyr:::group_by.data.frame(., cell_type)
Run rlang::last_trace(drop = FALSE) to see 2 hidden frames.

rlang::last_trace(drop = FALSE)
<error/rlang_error>
Error in group_by():
! Must group by variables found in .data.
✖ Column cell_type is not found.

Backtrace:
▆

├─Libra::run_de(...)
│ └─... %>% ...
├─dplyr::rename(...)
├─dplyr::arrange(., cell_type, gene)
├─dplyr::ungroup(.)
├─dplyr::select(...)
├─dplyr::left_join(., out_stats, by = c("gene", "cell_type"))
├─dplyr::select(., -avg_logFC)
├─dplyr::mutate(., gene = as.character(gene))
├─dplyr::mutate(., p_val_adj = p.adjust(p_val, method = "BH"))
├─dplyr::group_by(., cell_type)
└─dplyr:::group_by.data.frame(., cell_type)
└─dplyr::group_by_prepare(.data, ..., .add = .add, error_call = current_env())

└─rlang::abort(bullets, call = error_call)

Hello! It's the new error remind, hope it can help you to fix it!

I just tested cluster2 and 3，2 and 0 in subgroupA, all failed, seems only  cluster2 and 4 in subgroupA successed.

Hi, can you send me your data at<EMAIL_ADDRESS>

OK

Hi, can you send me your data at<EMAIL_ADDRESS>
Hello! the test data has been sent to your emailbox, thanks!

Hi, I identified the issue for the data you sent.
<EMAIL_ADDRESS>%>% dplyr::select(orig.ident, seurat_clusters) %>% table()
              seurat_clusters
orig.ident        5    1
  3dpi_sample1    0 2152
  3dpi_sample2   90    0

Seems like you are only have 2 replicates (1 replicate per condition) and the min.rep is set at 2

您好，我发现了您发送的数据存在问题。
<EMAIL_ADDRESS>%>% dplyr::select(orig.ident, seurat_clusters) %>% table()
              seurat_clusters
orig.ident        5    1
  3dpi_sample1    0 2152
  3dpi_sample2   90    0

似乎您只有 2 个仿行（每个条件 1 个仿行），并且 min.rep 设置为 2，这意味着每个条件至少需要 2 个仿行

thanks for your reply! I tried it by using "min.rep = 1", unfortunately, it didn't work and some thing new happened.
libra_result = Libra::run_de(sc, meta = NULL,

         replicate_col = "orig.ident",

         cell_type_col = "cell_type",

         label_col = "seurat_clusters",

         de_family = 'pseudobulk',

         de_method = 'edgeR',

         de_type = 'LRT',

         min_cells = 3,

         min_reps = 1,

        input_type = "scRNA",

         n_threads = 4

         )

[1] "Macrophage"
Error in map():
ℹ In index: 1.
ℹ With name: Macrophage.
Caused by error in glmFit.default():
! NA dispersions not allowed
Run rlang::last_trace() to see where the error occurred.
警告信息:
In estimateDisp.default(y = y$counts, design = design, group = group,  :
No residual df: setting dispersion to NA

rlang::last_trace()
<error/purrr_error_indexed>
Error in map():
ℹ In index: 1.
ℹ With name: Macrophage.
Caused by error in glmFit.default():
! NA dispersions not allowed

Backtrace:
▆

└─Libra::run_de(...)
└─Libra:::pseudobulk_de(...)

└─purrr::map(...)

  └─purrr:::map_("list", .x, .f, ..., .progress = .progress)

    ├─purrr:::with_indexed_errors(...)

    │ └─base::withCallingHandlers(...)

    ├─purrr:::call_with_cleanup(...)

    └─Libra (local) .f(.x[[i]], ...)

      └─base::tryCatch(...)

        └─base (local) tryCatchList(expr, classes, parentenv, handlers)

          └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]])

            └─value[[3L]](cond)

              └─base::message(e)

                ├─base::withRestarts(...)

                │ └─base (local) withOneRestart(expr, restarts[[1L]])

                │   └─base (local) doWithOneRestart(return(expr), restart)

                └─base::signalCondition(cond)

Run rlang::last_trace(drop = FALSE) to see 3 hidden frames.

rlang::last_trace(drop = FALSE)
<error/purrr_error_indexed>
Error in map():
ℹ In index: 1.
ℹ With name: Macrophage.
Caused by error in glmFit.default():
! NA dispersions not allowed

Backtrace:
▆

├─Libra::run_de(...)
│ └─Libra:::pseudobulk_de(...)
│   └─purrr::map(...)
│     └─purrr:::map_("list", .x, .f, ..., .progress = .progress)
│       ├─purrr:::with_indexed_errors(...)
│       │ └─base::withCallingHandlers(...)
│       ├─purrr:::call_with_cleanup(...)
│       └─Libra (local) .f(.x[[i]], ...)
│         └─base::tryCatch(...)
│           └─base (local) tryCatchList(expr, classes, parentenv, handlers)
│             └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]])
│               └─value[3L]
│                 └─base::message(e)
│                   ├─base::withRestarts(...)
│                   │ └─base (local) withOneRestart(expr, restarts[[1L]])
│                   │   └─base (local) doWithOneRestart(return(expr), restart)
│                   └─base::signalCondition(cond)
└─purrr (local) <fn>(<smplErrr>)
└─cli::cli_abort(...)

└─rlang::abort(...)

Honestly, I don't think it's the keypoint (min.rep = 2).  I compared cluster 2 and 4 in subgroup A, it worked well under "min.rep = 2"
I will send you the data of cluster 2 and 4 in subgroup A for test. Hope it can help you, thanks!

Hi, so to briefly explain the issue, you do not have enough replicates to perform DE that Libra is design to do. The model cannot estimate dispersions because there is only 1 count value for each label (once you perform pseudobulking). I advise against performing differential gene expression with single-cell data with only 1 replicate per label.

Thank you very much! I got you. Best wishes!

嗨，简单解释一下这个问题，您没有足够的重复来执行 Libra 旨在执行的 DE。该模型无法估计离差，因为每个标签只有 1 个计数值（执行伪膨胀后）。我建议不要使用每个标记只有 1 个重复的单细胞数据进行差异基因表达。它适用于其他数据集，因为我假设每个标签至少有 2 个重复。

Sorry to bother you! I changed the method, something new happens, I don't know why it tells me "Column pct.1 doesn't exist."  Is it a new error in the wrapped codes? Thanks!
libra_result = Libra::run_de(sc, meta = NULL,

         replicate_col = "orig.ident",

         cell_type_col = "cell_type",

         label_col = "seurat_clusters",

         de_family = 'singlecell',

         de_method = 'wilcox',

         #de_type = 'LRT',

         #min_cells = 3,

         #min_reps = 2,

        input_type = "scRNA",

         n_threads = 4

         )

Normalizing layer: counts
Performing log-normalization
0%   10   20   30   40   50   60   70   80   90   100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
[1/1] working on cell type: Macrophage ...
Error in dplyr::select():
! Can't select columns that don't exist.
✖ Column pct.1 doesn't exist.
Run rlang::last_trace() to see where the error occurred.

rlang::last_trace()
<error/vctrs_error_subscript_oob>
Error in dplyr::select():
! Can't select columns that don't exist.
✖ Column pct.1 doesn't exist.

Backtrace:
▆

├─Libra::run_de(...)
│ └─... %>% ...
├─dplyr::rename(...)
├─dplyr::arrange(., cell_type, gene)
├─dplyr::ungroup(.)
├─dplyr::select(...)
└─dplyr:::select.data.frame(...)
Run rlang::last_trace(drop = FALSE) to see 17 hidden frames.

rlang::last_trace()
<error/vctrs_error_subscript_oob>
Error in dplyr::select():
! Can't select columns that don't exist.
✖ Column pct.1 doesn't exist.

Backtrace:
▆

├─Libra::run_de(...)
│ └─... %>% ...
├─dplyr::rename(...)
├─dplyr::arrange(., cell_type, gene)
├─dplyr::ungroup(.)
├─dplyr::select(...)
└─dplyr:::select.data.frame(...)
Run rlang::last_trace(drop = FALSE) to see 17 hidden frames.


Add Vespa version substitution in script.

I confirm that this contribution is made under the terms of the license found in the root directory of this repository's source tree and that I have the authority necessary to make this contribution on behalf of its copyright owner.

👍


problem with rotate in cropperJsOpts

There is a problem with rotate parameter if it is bigger than 45 or smaller than 0

Can you give a more detailed description of this problem?

Let me have a try.

I will fix this issue in the coming days. Thank you for your feedback.

I have released a beta to fix this issue. Try it with version 1.0.18-beta.1.

Sorry it took so long to fix it.


React prop-types Support

Any way to generate React prop-types settings?
E.g. http://rmosolgo.github.io/prop-types/#…
I was about to refer someone to this app, but I realised that it does not actually support prop-types, which surprised me.

Please consider contributing.


Lint & refactor public/js/main.js

This resolves #297 by updating the test script to ensure ESLint checks public/js/main.js
This also refactors the whole file to give us a cleaner base to work from going forward.

Sorry for the awful diff all. I'm super confident everything is working as intended on the front-end still after lots of testing, but I am happy to be proven wrong and then fix it.

@PeterDaveHello I'm happy to move the eslint change to its own commit for traceability but would like to keep in it this PR as it was a style rule that was reflected in this code originally and is still in place in the refactored code, I don't see a reason to move it to a separate PR.
As for splitting the changes by type, I could go in and attempt to do this now, but when I refactored this, I pretty much rewrote the file from scratch, so there isn't really a good way to split it up. Splitting by "section" would be almost impossible as so much of the old code was interlinked.
I realise it's an absolute nightmare to review it as one commit, but I think, in this case, that's going to be the easiest thing to do. Sorry! :(

The linter config change is not reflected by the PR topic, and I believe that config should and would also be appied to the other js files, not only public/js/main.js, that's why it should be separated.
The other changes should be separated from the beginning, refactoring is really nice, but the process is as important as the refactoring, can't be done by a such huge commit which is not tracable and reviewable.
To be honest, effort of reviewing this commit will be times of splitting it, and also the future tracing effort, we can reduce the effort of future, so please let's do it the right way, with the already done right things here ;)

btw, I also see some naming change / renaming changes, that's something should be separated, thank you!

@PeterDaveHello I don't understand how I would split this into like comment, indent, wrap, etc - I didn't do this when I refactored the file, I rewrote it from scratch?

@MattIPv4 From my past experiences, yes, for this huge change, rewrite it from scratch would be easier, as they are too big to be just committed separately, the different thing is - this time, you have refactorred result as reference, only need to focus on how to split them, and the result would be really helpful.

Right, but as I've rewritten it from scratch, many things don't track over and I can't just "split it up". So many things were interlinked in the old version and some still are in the new version, there is no logical way to split this up.
if you see a way to do so, I invite you to do it, but I don't see a way to logically split this change up as it was a complete rewrite, not step-by-step changes to the existing code.


Remove configuration warning from AnimationPlayer

Remove warning about animations in different libraries having the same name, since shared names are fine.
Also fix missing vformat argument when setting the name of an animation to one that does conflict with an animation in the same library.

Thanks!


Fixed bug in acey-ducey range.

This is a fix for issue #394
https://github.com/coding-horror/basic-computer-games/issues/394

Hi Bill! 🦎😘 Thank  you!


kie-issues#407: KIE Sandbox Accelerators break the current workspace if they fail to initialize

Closes: https://github.com/apache/incubator-kie-issues/issues/407
Worked out this solution with @kbowers-ibm. Before creating a commit to the backup branch, we add the files to the staging area.
https://github.com/apache/incubator-kie-tools/assets/24302289/1e113b55-d131-475a-b3ff-3485b24a619c

@thiagoelg Thanks for your review. I think the best approach would to add a nested object into the  workspaces context isolating the git methods. As this would require a bigger refactor I've rolled back to the stageFile as add  can be ambiguous.


Support for Kustomize

Hello,
At the moment we deploy Artifactory HA using Kustomize and other plugins such as khelm and ksops. That being said, there are several resources in this project that can be bundled perfectly as a kustomize component:

the custom init container and custom sidecar container can be turned into patches for primary and member STS manifests
new resources (service and serviceMonitor) can be added as plain resources
fluent.conf.rt and the grafana dashboards can be placed into configMaps via ConfigMapGenerators

Would it be possible to provide the contents of this repo as a kustomize component?

Hi @kchenye-bitgo We do not have any plans changing this at this moment. But if you are willing to send us a PR we will work on merging it after sufficient testing.


chore(deps): upgrade dev dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-dev-dependencies-k8s-30-main" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 4865

Questions ?
Please refer to the Backport tool documentation


Chrome no longer supports HTML imports as of version 80

It seems that having removed HTML imports in Chrome 80 breaks things involving fetching HTML files via <link href="%s.html" rel="import"> style imports. It appears that the files are still fetched, but they are no longer executed, leaving karma to show 0 tests being run in my setup. Using Chrome 79 and below works fine.

More details at
https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/h-JwMiPUnuU/discussion
https://www.chromestatus.com/feature/5144752345317376
https://bugs.chromium.org/p/chromium/issues/detail?id=240592

Until a fix can be applied, you can add a custom launcher that adds the --enable-blink-features=HTMLImports flag to allow HTML imports again.

For anyone stuck with this one, we have managed to run our specs using a Chromium binary.

Download Chromium 79 or older for your platform from https://commondatastorage.googleapis.com/chromium-browser-snapshots/index.html
Unzip the folder in a local directory e.g. /Users/theo/Downloads/chrome-mac/
Set CHROME_BIN=/Users/theo/Downloads/chrome-mac/Chromium.app/Contents/MacOS/Chromium yarn test

What do you guys expect Karma to do about it?
This feature has been removed from the only browser where it was supported and HTML Imports feature is obsolete. So the best we can do is to add a notice to the documentation that it does not work in the latest browsers.

Depending on your use case you may try setting type to dom to inline the imported files or adding a polyfill for HTLM imports.


Fake News Detection

Description
I have added a new Python based ML Project "Fake News Detection" which also using Deep Learning models like LSTM.
User has to input the article and webapp will analyze and give output as real or fake.
Fixes #2233

Type of change
Please delete options that are not relevant.

[x] New feature (non-breaking change which adds functionality)

Checklist:

[x] My code follows the style guidelines(Clean Code) of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have created a helpful and easy to understand README.md
[x] My documentation follows Template for README.md

Project Metadata
If there is no-file/nothing to fill the below fields with, then type: none
Example: If no requirements.txt needed/present, then type none in Requirments.
Category:

[x] AI/ML

Title: Fake News Detection
Folder: Fake News Detection
Requirements: no
Script: <Enter the name of the .py file (The main entry point of the program)>
Contributor: Parul1606
Description: Stay informed, stay safe: Spot fake news using our reliable detection system.

Please review this PR as soon as possible @avinashkranjan


[icinga2] application chart

Details
Helm chart name:
icinga2

Describe the solution you'd like:
there doesn't seem to be any kind of chart for the community version of https://icinga.com/ yet, but I'd love to use one!

Anything else you would like to add:
I'm too new to Helm myself to be of much use yet, sorry

Additional Information:
I love your project <3

Thanks for the request! 🙏🏽  Do you happen to know if a multi-architecture container exists for this application? If so, would you mind providing a link?

It looks like the latest version by jordan is multi-arch. Is this the image that you'd like the image to be based on?

I'm honestly not sure - https://hub.docker.com/r/icinga/icinga2 seems more appropriate, but jordan's image seems quite popular, so I'd have a tendency to use that, even if it doesn't seem as regularily updated ... hm.
multi-arch is preferred, if not mandatory, correct?

multi-arch is preferred, if not mandatory, correct?

It's mandatory to support arm64 and amd64.


Origin/Destination UI Component for Trip Planning

As a frequent public transit user,
I want to easily input my trip's origin and destination within the OneBusAway app,
so that I can quickly and accurately plan my route using public transportation.
Requirements
Functional Requirements

Input Fields:

The UI should have two clearly labeled input fields for the origin and destination.
Each input field should support text input and autocomplete suggestions based on nearby locations and recent searches.

Autocomplete Suggestions:

Display a list of autocomplete suggestions as the user types, including recent search history and popular locations.
Suggestions should be fetched in real-time and displayed dynamically.

Error Handling:

Validate the input fields to ensure valid addresses or transit stops are entered.
Display appropriate error messages if the input cannot be recognized.

Accessibility:

Ensure the component is fully accessible, with support for VoiceOver and dynamic text resizing.
Provide clear labels and instructions for screen reader users.

Non-Functional Requirements
Usability:

The UI should be intuitive and easy to use, with minimal steps required to input origin and destination.
Provide visual feedback when locations are selected or errors occur.

Scalability:

Design the component to handle a large number of suggestions and high traffic without performance degradation.

Compatibility:

The component should work seamlessly across various iOS devices and screen sizes.
Ensure compatibility with iOS 16 and 17.

This issue is chucked to 4 different issues:
#14
#15
#29
#30


docker-machine cannot open SSH session to a newly created Hyper-V VM

While creating a Hyper-V VM on a Windows 10 machine the docker-machine gets stuck on creating a SSH session to that VM.
My Environment

Windows 10 Pro
docker version 17.03.1-ce, build c6d412e
docker-machine version 0.10.0, build 76ed2a6
OpenSSH 7.4

Description
I have enclosed a file ([createCommand.txt (https://github.com/docker/machine/files/908025/createCommand.txt)) with the messages from executing the following command
docker-machine -debug create -d hyperv --hyperv-virtual-switch ExternalWireless worker1

Everything looks fine until the script tries to open a SSH session to the newly created VM. Each attempt looks like this
Waiting for SSH to be available...
Getting to WaitForSSH function...
(worker1) Calling .GetSSHHostname
(worker1) DBG | [executing ==>] : C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile -NonInteractive ( Get-VM worker1 ).state
(worker1) DBG | [stdout =====>] : Running
(worker1) DBG |
(worker1) DBG | [stderr =====>] :
(worker1) DBG | [executing ==>] : C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile -NonInteractive (( Get-VM worker1 ).networkadapters[0]).ipaddresses[0]
(worker1) DBG | [stdout =====>] : <IP_ADDRESS>
(worker1) DBG |
(worker1) DBG | [stderr =====>] :
(worker1) Calling .GetSSHPort
(worker1) Calling .GetSSHKeyPath
(worker1) Calling .GetSSHKeyPath
(worker1) Calling .GetSSHUsername
Using SSH client type: external
&{[-F /dev/null -o PasswordAuthentication=no -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o LogLevel=quiet -o ConnectionAttempts=3 -o ConnectTimeout=10 -o ControlMaster=no -o ControlPath=none<EMAIL_ADDRESS>-o IdentitiesOnly=yes -i C:\Users\wojtek\.docker\machine\machines\worker1\id_rsa -p 22] C:\Program Files\OpenSSH\ssh.exe <nil>}
About to run SSH command:
exit 0
SSH cmd err, output: exit status 255:
Error getting ssh command 'exit 0' : ssh command error:
command : exit 0
err     : exit status 255
output  :

and after 60 such attempts the script quits with the message
Error creating machine: Error detecting OS: Too many retries waiting for SSH to be available.  Last error: Maximum number of retries (60) exceeded
notifying bugsnag: [Error creating machine: Error detecting OS: Too many retries waiting for SSH to be available.  Last error: Maximum number of retries (60) exceeded]

The VM is created, it is given an IP address, and it starts. The interesting part is that I can create SSH session from the command line using exactly the same SSH commands as in the script (I have enclosed a file sshConnection.txt with debug messages from execution of that command)
ssh -v<EMAIL_ADDRESS>-o PasswordAuthentication=no -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o LogLevel=DEBUG -o ConnectionAttempts=3 -o ConnectTimeout=10 -o ControlMaster=no -o ControlPath=none -o IdentitiesOnly=yes -i C:\Users\wojtek\.docker\machine\machines\worker1\id_rsa

This means that SSH server works fine on the VM and the certificate checks out. Just for completeness I tested creating a SSH session from the VM to the Windows 10 host machine, and it also works fine. Also, after reading a few posts, I turned the firewall off but the problem still persists.
Below is what I get when I ask the docker-machine to (a) list the VM docker hosts and (b) create SSH session to the new VM
C:\WINDOWS\system32>docker-machine ls
NAME      ACTIVE   DRIVER   STATE     URL                        SWARM   DOCKER    ERRORS
worker1   -        hyperv   Running   tcp://<IP_ADDRESS>:2376           Unknown   Unable to query docker version: Get https://<IP_ADDRESS>:2376/v1.15/version: x509: certificate signed by unknown authority

C:\WINDOWS\system32>docker-machine ssh worker1
exit status 255

Notice that the 255 exit status is the same as in the create script.
Why does the same SSH command fail when executed in a docker-machine script and succeeds when executed from the command line? How do I further debug the issue?
Cheers, Wojtek

It looks like the issue is between OpenSSH and the docker-machine on Windows 10.
I  have installed OpenSSH to enable remote PowerShell connections with Linux boxes (see installation guidelines @ https://github.com/PowerShell/Win32-OpenSSH/wiki/Install-Win32-OpenSSH).
I have uninstalled OpenSSH, removed a reference to its binary from the Path system variable, and now the "docker-machine create ..." command completes ( ?! ).
The sequence of debug messages for creating SSH connection to the new VM now looks like this:
Getting to WaitForSSH function...
(worker1) Calling .GetSSHHostname
(worker1) DBG | [executing ==>] : C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile -NonInteractive ( Get-VM worker1 ).state
(worker1) DBG | [stdout =====>] : Running
(worker1) DBG |
(worker1) DBG | [stderr =====>] :
(worker1) DBG | [executing ==>] : C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile -NonInteractive (( Get-VM worker1 ).networkadapters[0]).ipaddresses[0]
(worker1) DBG | [stdout =====>] : <IP_ADDRESS>
(worker1) Calling .GetSSHPort
(worker1) DBG |
(worker1) DBG | [stderr =====>] :
(worker1) Calling .GetSSHKeyPath
(worker1) Calling .GetSSHKeyPath
(worker1) Calling .GetSSHUsername
SSH binary not found, using native Go implementation
&{{{<nil> 0 [] [] []} docker [0xc8a0d0] <nil>  []} <IP_ADDRESS> 22 <nil> <nil>}
About to run SSH command:
exit 0
SSH cmd err, output: <nil>:

It appears that when the script cannot locate an SSH binary it falls back on a native Go implementation (whatever that is), which works.
I will open a separate issue with the PowerShell/Win32-OpenSSH folks, and I probably should also open a separate issue like "docker-machine does not work with OpenSSH on Windows 10" in this repo.
Cheers, Wojtek

As a workaround  --native-ssh option can be specified when using docker-machine commands.

Initial error
Error creating machine: Error in driver during machine creation: Too many retries waiting for SSH to be available.  Last error: Maximum number of retries (60) exceeded

With docker-machine --debug:
(sparkles) DBG | Checking vm logs: /Users/David/.docker/machine/machines/sparkles/sparkles/Logs/VBox.log
(sparkles) DBG | Getting to WaitForSSH function...
(sparkles) DBG | Using SSH client type: external
(sparkles) DBG | Using SSH private key: /Users/David/.docker/machine/machines/sparkles/id_rsa (-rw-------)
(sparkles) DBG | &{[-F /dev/null -o ConnectionAttempts=3 -o ConnectTimeout=10 -o ControlMaster=no -o ControlPath=none -o LogLevel=quiet -o PasswordAuthentication=no -o ServerAliveInterval=60 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null<EMAIL_ADDRESS>-o IdentitiesOnly=yes -i /Users/David/.docker/machine/machines/sparkles/id_rsa -p 55553] /usr/bin/ssh <nil>}
(sparkles) DBG | About to run SSH command:
(sparkles) DBG | exit 0
(sparkles) DBG | SSH cmd err, output: exit status 255:
(sparkles) DBG | Error getting ssh command 'exit 0' : ssh command error:
(sparkles) DBG | command : exit 0
(sparkles) DBG | err     : exit status 255
(sparkles) DBG | output  :

In the VBox.log:
00:00:29.314084 Decompressing Linux... Parsing ELF... Performing relocations... done.
00:00:29.314238 Booting the kernel.
00:00:29.314391
00:00:29.314544 --------------------------------------------------------------------------------
00:00:29.314732 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
00:00:29.314766 emR3Debug: rc=VERR_PGM_INVALID_CR3_ADDR
00:00:30.316637 Changing the VM state from 'RUNNING' to 'GURU_MEDITATION'
00:00:30.316892 Console: Machine state changed to 'GuruMeditation'

http://www.fixedbyvonnie.com/2014/09/heck-virtualbox-guru-meditation-error/
No solution so far.

Hi @dherges... I had the same initial problem:
"Error creating machine: Error in driver during machine creation: Too many retries waiting for SSH to be available.  Last error: Maximum number of retries (60) exceeded"
And, after all, the machine was created and I could see it running in VirtualBox. However, when I tried to ssh it I couldn't.
### What solves my problem: As "WojtekKozaczynski" described, looks that docker-machine doesn't play well with Windows' "OpenSSH", so I removed it from the PATH variable. Then I tried to build again the machine with "docker-machine" and it worked like a charm.
This is not the first time that I have had troubles with Windows' "OpenSSH", because at work when I tried to ssh a Linux machine it was causing some troubles for me, so I had to the same and the machine could do a successful ssh.
BTW, I'm using Windows 10 Home with Virtual Box.
@dherges if this solved your problem, try to comment it to shows others that this work, else you could facing another problem. I waste a lot of hours trying to use other approachs.
Regards!

It looks like the issue is between OpenSSH and the docker-machine on Windows 10.
I have installed OpenSSH to enable remote PowerShell connections with Linux boxes (see installation guidelines @ https://github.com/PowerShell/Win32-OpenSSH/wiki/Install-Win32-OpenSSH).
I have uninstalled OpenSSH, removed a reference to its binary from the Path system variable, and now the "docker-machine create ..." command completes ( ?! ).
The sequence of debug messages for creating SSH connection to the new VM now looks like this:
Getting to WaitForSSH function...
(worker1) Calling .GetSSHHostname
(worker1) DBG | [executing ==>] : C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile -NonInteractive ( Get-VM worker1 ).state
(worker1) DBG | [stdout =====>] : Running
(worker1) DBG |
(worker1) DBG | [stderr =====>] :
(worker1) DBG | [executing ==>] : C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile -NonInteractive (( Get-VM worker1 ).networkadapters[0]).ipaddresses[0]
(worker1) DBG | [stdout =====>] : <IP_ADDRESS>
(worker1) Calling .GetSSHPort
(worker1) DBG |
(worker1) DBG | [stderr =====>] :
(worker1) Calling .GetSSHKeyPath
(worker1) Calling .GetSSHKeyPath
(worker1) Calling .GetSSHUsername
SSH binary not found, using native Go implementation
&{{{<nil> 0 [] [] []} docker [0xc8a0d0] <nil>  []} <IP_ADDRESS> 22 <nil> <nil>}
About to run SSH command:
exit 0
SSH cmd err, output: <nil>:

It appears that when the script cannot locate an SSH binary it falls back on a native Go implementation (whatever that is), which works.
I will open a separate issue with the PowerShell/Win32-OpenSSH folks, and I probably should also open a separate issue like "docker-machine does not work with OpenSSH on Windows 10" in this repo.
Cheers, Wojtek

Thanks for sharing this but is this native Go correct deployment procedure..?

I confirm that the issue is due to incorrect permissions on the private key.
docker-machine should set the correct permissions on keys while creating machine.
Until this is fixed, set permissions manually:
icacls %USERPROFILE%\.docker\machine\machines\node1\id_rsa /inheritance:r
icacls %USERPROFILE%\.docker\machine\machines\node1\id_rsa /grant %USERNAME%:F

Just experiencing same issue on Windows 10 Home with native windows openssh:
c:\Users\feryardiant>docker version
Client:
 Version:      17.10.0-ce
 API version:  1.33
 Go version:   go1.8.3
 Git commit:   f4ffd25
 Built:        Tue Oct 17 19:00:02 2017
 OS/Arch:      windows/amd64

c:\Users\feryardiant>docker-machine version
docker-machine.exe version 0.14.0, build 89b8332

Based on output of docker-machine -D restart <machine-name> I tried to connect ssh manually using the same config and it's clear (for me) that main problem is because SSH key file permission.
ssh<EMAIL_ADDRESS>-o IdentitiesOnly=yes -o PasswordAuthentication=no -i C:\Users\feryardiant\.docker\machine\machines\<machine-name>\id_rsa -p 50496
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions for 'C:\\Users\\feryardiant\\.docker\\machine\\machines\\<machine-name>\\id_rsa' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "C:\\Users\\feryardiant\\.docker\\machine\\machines\\<machine-name>\\id_rsa": bad permissions
<EMAIL_ADDRESS>Permission denied (publickey,password,keyboard-interactive).

So I change the id_rsa file permission as described on stackoverflow link above & re-try to connect again
ssh<EMAIL_ADDRESS>-o IdentitiesOnly=yes -o PasswordAuthentication=no -i C:\Users\feryardiant\.docker\machine\machines\local\id_rsa -p 50496
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions for 'C:\\Users\\feryardiant\\.docker\\machine\\machines\\local\\id_rsa' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "C:\\Users\\feryardiant\\.docker\\machine\\machines\\local\\id_rsa": bad permissions
<EMAIL_ADDRESS>Permission denied (publickey,password,keyboard-interactive).

c:\Users\feryardiant>ssh<EMAIL_ADDRESS>-o IdentitiesOnly=yes -o PasswordAuthentication=no -i C:\Users\feryardiant\.docker\machine\machines\local\id_rsa -p 50496
                        ##         .
                  ## ## ##        ==
               ## ## ## ## ##    ===
           /"""""""""""""""""\___/ ===
      ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ /  ===- ~~~
           \______ o           __/
             \    \         __/
              \____\_______/
 _                 _   ____     _            _
| |__   ___   ___ | |_|___ \ __| | ___   ___| | _____ _ __
| '_ \ / _ \ / _ \| __| __) / _` |/ _ \ / __| |/ / _ \ '__|
| |_) | (_) | (_) | |_ / __/ (_| | (_) | (__|   <  __/ |
|_.__/ \___/ \___/ \__|_____\__,_|\___/ \___|_|\_\___|_|
Boot2Docker version 18.05.0-ce, build HEAD : b5d6989 - Thu May 10 16:35:28 UTC 2018
Docker version 18.05.0-ce, build f150324
docker@boot2docker:~$

Now, when I want to create new docker-machine I have to update the id_rsa file permission in order to make it works.
Any plan to make the generated SSH key have correct file permission by default?
Apologize for poor english & hopefully that help.
Cheers 🥂

This solution really works for me. The key is to change the permission of the id_rsa file as described. I firstly found the answer in a Chinese blog, and now I also found it here, so add my feedback and appreciation.

In my case on MacOS, checking the log of boot2iso showed the networking going up in 16s, DHCP at 31s, VBoxService at 34s, libdbus failing to load at 34s.  Only a second try of docker-machine to connect via ssh with the guest succeeds.
VBoxManage controlvm default poweroff
docker-machine --debug start default
(default) DBG | Checking vm logs: /Users/USER/.docker/machine/machines/default/default/Logs/VBox.log
(default) DBG | Getting to WaitForSSH function...
(default) Waiting for an IP...
(default) DBG | Using SSH client type: external
(default) DBG | Using SSH private key: /Users/USER/.docker/machine/machines/default/id_rsa (-rw-------)
(default) DBG | &{[-F /dev/null -o ConnectionAttempts=3 -o ConnectTimeout=10 -o ControlMaster=no -o ControlPath=none -o LogLevel=quiet -o PasswordAuthentication=no -o ServerAliveInterval=60 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null<EMAIL_ADDRESS>-o IdentitiesOnly=yes -i /Users/USER/.docker/machine/machines/default/id_rsa -p 51484] /usr/bin/ssh <nil>}
(default) DBG | About to run SSH command:
(default) DBG | exit 0

[...pause...]

(default) DBG | SSH cmd err, output: exit status 255:
(default) DBG | Error getting ssh command 'exit 0' : ssh command error:
(default) DBG | command : exit 0
(default) DBG | err     : exit status 255
(default) DBG | output  :
(default) DBG | Getting to WaitForSSH function...

[..repeated attempts with ssh, then showvminfo followed by a successful ssh running ip addr show ...]

(default) DBG | SSH cmd err, output: <nil>:
(default) DBG | COMMAND: /usr/local/bin/VBoxManage showvminfo default --machinereadable
(default) DBG | STDOUT:
(default) DBG | {
(default) DBG | name="default"
(default) DBG | groups="/"
(default) DBG | ostype="Linux 2.6 / 3.x / 4.x (64-bit)"
[...]
(default) DBG | GuestAdditionsFacility_Graphics Mode=0,1631639487081
(default) DBG | }
(default) DBG | STDERR:
(default) DBG | {
(default) DBG | }
(default) DBG | Host-only MAC:<PHONE_NUMBER>9e
(default) DBG |
(default) DBG | Using SSH client type: external
(default) DBG | Using SSH private key: /Users/USER/.docker/machine/machines/default/id_rsa (-rw-------)
(default) DBG | &{[-F /dev/null -o ConnectionAttempts=3 -o ConnectTimeout=10 -o ControlMaster=no -o ControlPath=none -o LogLevel=quiet -o PasswordAuthentication=no -o ServerAliveInterval=60 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null<EMAIL_ADDRESS>-o IdentitiesOnly=yes -i /Users/USER/.docker/machine/machines/default/id_rsa -p 51484] /usr/bin/ssh <nil>}
(default) DBG | About to run SSH command:
(default) DBG | ip addr show

00:00:04.676217 AHCI#0: Port 29 reset
00:00:04.837931 PIT: mode=2 count=0x48d3 (18643) - 64.00 Hz (ch=0)
00:00:04.844141 PIT: mode=2 count=0x10000 (65536) - 18.20 Hz (ch=0)
00:00:04.844497 VMMDev: Guest Log: BIOS: Boot : bseqnr=1, bootseq=0233
00:00:04.845211 VMMDev: Guest Log: BIOS: Booting from CD-ROM...
00:00:05.218241 VMMDev: Guest Log: BIOS: KBD: unsupported int 16h function 03
00:00:05.218739 VMMDev: Guest Log: BIOS: AX=0305 BX=0000 CX=0000 DX=0000
00:00:05.721373 GIM: KVM: VCPU  0: Enabled system-time struct. at 0x0000000024992000 - u32TscScale=0xc587e6bc i8TscShift=-1 uVersion=2 fFlags=0x1 uTsc=0x351c9d731 uVirtNanoTS=0x147d9b8f8 TscKHz=2591998
00:00:05.721408 TM: Switching TSC mode from 'Dynamic' to 'RealTscOffset'
00:00:05.798506 GIM: KVM: Enabled wall-clock struct. at 0x0000000024991008 - u32Sec=1631638787 u32Nano=907434000 uVersion=2
00:00:12.715387 AHCI#0: Reset the HBA
00:00:12.715456 VD#1: Cancelling all active requests
00:00:12.722500 AHCI#0: Port 0 reset
00:00:13.044545 AHCI#0: Port 1 reset
00:00:13.045948 VD#1: Cancelling all active requests
00:00:16.056698 NAT: Link up
00:00:22.778973 VMMDev: Guest Additions information report: Version 5.2.34 r133893 '5.2.34'
00:00:22.779033 VMMDev: Guest Additions information report: Interface = 0x00010004 osType = 0x00053100 (Linux >= 2.6, 64-bit)
00:00:22.779137 VMMDev: Guest Additions capability report: (0x0 -> 0x0) seamless: no, hostWindowMapping: no, graphics: no
00:00:22.779254 VMMDev: vmmDevReqHandler_HeartbeatConfigure: No change (fHeartbeatActive=false)
00:00:22.779310 VMMDev: Heartbeat flatline timer set to trigger after 4 000 000 000 ns
00:00:22.779382 VMMDev: Guest Log: vgdrvHeartbeatInit: Setting up heartbeat to trigger every 2000 milliseconds
00:00:22.779649 VMMDev: Guest Log: vboxguest: misc device minor 58, IRQ 20, I/O port d020, MMIO at 00000000f0400000 (size 0x400000)
00:00:28.262916 NAT: IPv6 not supported
00:00:31.263010 NAT: DHCP offered IP address <IP_ADDRESS>
00:00:31.263408 NAT: DHCP offered IP address <IP_ADDRESS>
00:00:34.006225 VMMDev: Guest Log: VBoxService 5.2.34 r133893 (verbosity: 0) linux.amd64 (Oct 10 2019 20:19:38) release log
00:00:34.006264 VMMDev: Guest Log: 00:00:00.000072 main     Log opened 2021-09-14T17:00:16.231653000Z
00:00:34.006919 VMMDev: Guest Log: 00:00:00.000774 main     OS Product: Linux
00:00:34.007363 VMMDev: Guest Log: 00:00:00.001218 main     OS Release: 4.19.130-boot2docker
00:00:34.007650 VMMDev: Guest Log: 00:00:00.001509 main     OS Version: #1 SMP Mon Jun 29 23:52:55 UTC 2020
00:00:34.007975 VMMDev: Guest Log: 00:00:00.001832 main     Executable: /sbin/VBoxService
00:00:34.007989 VMMDev: Guest Log: 00:00:00.001833 main     Process ID: 2158
00:00:34.007997 VMMDev: Guest Log: 00:00:00.001833 main     Package type: LINUX_64BITS_GENERIC
00:00:34.010742 VMMDev: Guest Log: 00:00:00.004596 main     5.2.34 r133893 started. Verbose level = 0
00:00:34.013880 Guest Control: GUEST_MSG_REPORT_FEATURES: 0x1, 0x8000000000000000
00:00:34.019820 VMMDev: Guest Log: 00:00:00.013664 vminfo   rtldrNativeLoad: dlopen('libdbus-1.so.3', RTLD_NOW | RTLD_LOCAL) failed: libdbus-1.so.3: cannot open shared object file: No such file or directory
00:00:34.019908 VMMDev: Guest Log: 00:00:00.013765 vminfo   Error: Unable to connect to system D-Bus (1/3): D-Bus not installed
00:00:34.021918 VMMDev: Guest Additions capability report: (0x0 -> 0x0) seamless: no, hostWindowMapping: no, graphics: no
00:00:39.022425 VMMDev: Guest Log: 00:00:05.015737 vminfo   Error: Unable to connect to system D-Bus (2/3): D-Bus not installed
00:00:44.025103 VMMDev: Guest Log: 00:00:10.017897 vminfo   Error: Unable to connect to system D-Bus (3/3): D-Bus not installed


Fix iot_class in manifest.json

Fix to use local_polling instead of cloud_polling. See the docs for iot_class: https://developers.home-assistant.io/docs/creating_integration_manifest/#iot-class

Hmm. I don't think this matters much beyond the icon on the Integrations page. And some folks may use a VPS to host BB. But most probably local host, so I guess I'm okay with this change.


app cannot find main.js

I have application that runs fine on the browser. When I use nw to build, it runs fine and works as expected. However when I package it using nw-builder, it somehow can not find the main.js. When I navigate to the directory where the nwjs app is, I can see the file there.
nw-builder config
var Builder = require('nw-builder');
var builder = new Builder({
  files: pathtofile + '/**/**',
  platforms: ['win64'],
  version: '0.12.3',
  cacheDir: '.cache',
  buildDir: 'build'
});
builder.build(function() {
  console.log('success');
});

Here everything works as expected. I have the build directory with all required files and executable.
build directory structure
-build
  -app.exe
  -main.js
  -index.html

In index.html the main.js is loaded as such.
<script src="main.js"></script>
When I load the app.exe, the app loads fine but in the console I have error saying:
Failed to load resource: net::ERR_FILE_NOT_FOUND file:///C:/main.js
In the address bar of the application, the app is being loaded from:
file:///C:/Users/MyHome~1/AppData/Local/Temp/nw141296_447/index.html
PS:
 ./node_modules/.bin/nw path_to_app
Loads the app fine and everything is ok.

Hmm strange. What's pathtofile?


Fix breadcrumbs for SSR

There are still some ToDo's:

Add 2 extra classes in the css tokens for separator
Add inline-flex items-center in breadcrumb.item

The build for i18n-check has failed. When checking the logs, it looks like, for some reason, it doesn't recognize lingui when trying to run pnpm messages:compile


Feature Request:  Disable history cycling

Thank you for this project.
Feature request: assume that a user has inputted the following through editor.ReadLine() function:

Hello
There
Morning

If the user presses the UP arrow key for 4 times, than "Morning" will be redisplayed.
Most probably this is due to the following code within history.go
	if this.historyPointer <= 0 {
		this.historyPointer = this.History.Len()
	}

Would it be possible to implement a flag such that, when enabled, if the user presses the UP key >= 4, then only the first input (i.e. "Hello") is displayed?

Thank you for good suggestion.
I implemented the test version as the issue2 branch.
To test the new feature, please execute go get github.com/nyaosorg/go-readline-ny@issue2,  modify and rebuild your application.
editor := readline.Editor{
		Prompt:         func() (int, error) { return fmt.Print("$ ") },
		Writer:         colorable.NewColorableStdout(),
		History:        history,
		Coloring:       &coloring.VimBatch{},
		HistoryCycling: true, // [New flag]
}

When the field .HistoryCycling is false (zero value), the history cycling is disabled (default).
When it is true, the history cycling is enabled.
If you consider the specification OK, and no ones refused, then I will merge it into the default branch and make a new release.

Hello, I've just tested out the issue2 branch and it's working brilliantly.  Many thanks!

Ok. I would merge.  Thank you !

I have merged the branch issue2 into the default branch and released as v0.6.3


Add files via upload

@agr6002 Please provide us with:
the school official website URL
https://www.newtoncountryday.org/
the school street address, including city and country
Newton Country Day School of the Sacred Heart
785 Centre Street
Newton, Massachusetts 02458
an URL of a page on the official website where the school offers an IT-related long-term (>1 year) course
https://www.newtoncountryday.org/academics/mathematics
a proof, which shows that the school recognizes the domain you are submitting as an official email domain for the students.
Newton Country Day School Mail - Newton Notes_ October 2022.pdf

I am wondering about the status of this request to add Newton Country Day first submitted fourteen days ago and then again seven days ago with details as requested.

@agr6002 Thank you for your patience while waiting for a review and processing your request. Pull request merged.


Create NPM Package

I would like to use this library in an app I am creating. Can you add a feature to install this via npm?
Thanks!

Added NPM package.
npm i @egoistdeveloper/operating-system-logos


DOM elements not cleaning up upon  close

I can see with 3.0.0 that DOM nodes are leaking.
Each time I open and close the same modal (using the same button) it creates a new DOM node with is not being recollected after the modal closes.

Wow, this is really a bug in my code.
Nvm.
Closing.

Thanks, god. Is everything good so far?

Ha ha. Yeah)


[FEATURE] - Support search by relation fields

Summary
The current behavior for search is searching by scaler fields like text, boolean, ..etc.
I hope you support a search by relation fields like user.name, user.email, ...etc.
Thanks very much.
Basic Example
It could be like this:
 search: ["user.name"],

This means this table is related to the Users table and you want to search by the user's name in the related table.
Drawbacks
No response
Unresolved questions
No response

Hello we support search on relation fields, the search is done on all the searchable fields of the relation you're searching on.
You can try this on a user resource, where there is a relation on a list of posts.

Hey @foyarash
Thanks for your response, what I mean here is search by the search input on the header of the layout next to the count, This one:

For example, in the Posts table, I want to be able to search or filter by the author name.
Author name here is not a scaler field in the table, but the name inside the user table(author relation) is a scaler field.

Ah ok I see, I will have a look at it, thanks for the clarification

Available in v5.3.0


locale selection

Description of the new feature/enhancement

If the package is provided by language, allow the user to choose the language or use the OS language.
Proposed technical implementation details (optional)

Related to #238.

@megamorf Hmm, #238 is somewhat related, but there is a big difference between the two.
What I wanted to say was that when the installer is separated by language, like Firefox, the English version is currently installed, but this will be changed to use the installer in the language selected by the user or the language set for the OS.
Maybe I didn't explain enough.

In the latest release of winget (1.4 at the time of writing) - When multiple locales are present, winget will use the installer matching the language of the OS, if available.


Integration As Third Party Library

Figured I'd start an issue for this because I'm sure I'll have multiple questions before this integration is done.
Background
I'm working on including cqparts with the CadQuery module for FreeCAD. One of the core philosophies of that module/workbench has always been that it's batteries included. This means that I include copies of all the required libraries and then manipulate the Python path so that FreeCAD's Python interpreter can find them.
Question
For cqparts I've added a ThirdParty directory, and I've cloned the entire repo there. Right now I set the Python path so that ThirdParty/cqparts/src is searched. However, I noticed there was a gitignore file in the src directory. Do you have a mechanism already in place that would allow me to just grab the contents of the src directory, and skip all the higher level items (like docs)? I can look into partial checkouts, but I'm not sure they're the answer.

@jmwright yeah, I can see how cloning the whole repo could get messy.

Do you have a mechanism already in place [...] to just grab the contents of the src directory [?]

I do... well, not exactly... the deployment strategy takes care of that.
But that's all done by the setuptools.setup() method.
Could you get the most recent version deployed to PyPI and extract it, instead of cloning?

Could you get the most recent version deployed to PyPI and extract it, instead of cloning?

Yeah, I can. I have a script in the repo for collecting libraries that are installed using pip, but stopped using it because it made development setups messy in certain cases. I guess I need to create a new script that just downloads and extracts the packages without ever installing them locally.

It looks like not everything that's in the repo's src directory is represented on Pypi. Is that because the missing ones are just placeholders?

@jmwright

I guess I need to create a new script that just downloads and extracts the packages without ever installing them locally

I think that's probably best. I had to do this in an old job a lot. It was a good way of creating a localised distrobution of "core" Python libs without creating my own package manager.
It seems that's the sort of thing you're doing too.

It looks like not everything that's in the repo's src directory is represented on Pypi. Is that because the missing ones are just placeholders?

Yep; spot on. Some of those libs are empty or just aren't ready to be released.
One way would be to download and extract cqparts + everything from pypi of the form cqparts_*.
pip search cqparts-

@fragmuffin MarkupSafe-1.0.tar.gz is downloaded when I do pip download on the files, whereas everything else downloaded is in .whl archives. Is MarkupSafe needed for the normal operation of cqparts?

Is MarkupSafe needed for the normal operation of cqparts?

Ignore this question, I figured it out.

Ok, bit now I'm curious... I don't even recognise that file.

cqparts scripts won't run without it installed.

cqparts is now embedded with the CadQuery FreeCAD module.
The first example from the readme works great, and the cqparts.display() function even works, although it does not use CQGI and so some features are not available (like execution timing).

Oh, I see, MarkupSafe-1.0.tar.gz is required by Jinja2 which is used for cqparts.display.web_display

the cqparts.display() function even works, although it does not use CQGI

Yes, I've been avoiding the CQGI because it forces a layer over the top of python.
It parses the python code based on this logic, then injects code into the script (changing it), then executes that.
Because cqparts is a major abstraction from the normally seen single-file approach, I'd much rather avoid this pathway.
Also, show_object isn't imported, so as soon as a script is QCGI compatible, it's no longer Python compatible. That's a big red flag for me.
Can I use the CQGI without triggering the code regeneration?
Can we just import show_object from somewhere and call that?

@jmwright after all that... I forgot to...
Thank you!, it means a lot to me that cqparts is being developed along side cadquery.

Can I use the CQGI without triggering the code regeneration?
Can we just import show_object from somewhere and call that?

I think those are questions we need @dcowden for. Dave, please see the comments from @fragmuffin above about CQGI.
From my perspective there's no requirement to use CQGI. cqparts.display() works just fine, which I was excited to see. Your examples should work in the FreeCAD module unmodified.

Thank you!, it means a lot to me that cqparts is being developed along side cadquery.

You're welcome. And thanks for the contribution of cqparts to the community. I'm not sure why I didn't think to include cqparts in the FreeCAD module sooner. Recent discussions in your issue tracker finally made the light come on.

@fragmuffin Just thought of this too. It would be helpful if you somehow announce new releases so that I'll know to update the cqparts libs in the FC module. I have started doing announcements on both the GitHub issue tracker and the Google Group to try to cover as many users as possible.

@jmwright

It would be helpful if you somehow announce new releases so that I'll know to update the cqparts libs in the FC module

Yes, I can do that... I just added that to my deployment readme: 5b6acd1e0087ceb3c670efaa76dc8b22e37a8715

@jmwright  @fragmuffin  CQGI  is designed to handle two problems.
The first is exposing parameters and values. CQGI adds ability for an executing environment ( like cadquery freecad module or a website ) to change parameter values without needing the developer to do a bunch of work to define the variable metadata.  IE, a script with the single line:
width=1.0
is enough to allow CQGI to understand that this is a floating point variable that can be modified. Imagine that a user uploads a python script to a website, and you want the object it produces to be customized, without diving into the source code and changing it. That's what CQGI is designed to handle.
cqparts has much more formal abstractions to handle this, so it doesnt add any value at all. If you're building up an assembly with cqparts, you're definitely changing the source code.
The other value cqgi provides is a standard way for a script to interface with an executing environment that can visually display objects ( IE, the show_object function).  This need is still present, even with CQParts, and is critical IMO.   Without this abstraction, every tool that visualizes models must actually change the source code to match their environment, and/or every library must provide custom methods for every executing environment.  This is not what we want.  When we moved to CQGI, we gained a huge benefit-- all of the examples published 'just work' both locally and in CQFM without modification.

Also, show_object isn't imported, so as soon as a script is QCGI compatible, it's no longer Python compatible. That's a big red flag for me.

I understand this concern.  The simple fix would be to require importing it, and providing a default implementation in cq itself when scripts run without a UI.  That's how things work now.
Bottom line: I think its a big benefit to all if there's a standard interface that all cq like libraries use to interface with executing environments to show objects.  I think the show_object method is fine as it exists now-- except maybe we can change the semantics of how it is imported and how it works.  We can get the benefits of the standard API without requiring that it works the way it does now.

@dcowden

Without this abstraction, every tool that visualizes models must actually change the source code to match their environment, and/or every library must provide custom methods for every executing environment, and/or every library must provide custom methods for every executing environment. This is not what we want.

What's your opinion on cqparts.display.display?
It switches its display method based on the detected environment.
I've been meaning to make that more flexible, details in #77

I like the idea, but what I don't like about it is that every project has to implement their own version of essentially your same code. And, you need to anticipate and code for every possible executing environment.
We need A glue layer that exposes consistent interfaces from both perspectives.
Ie, everyone (libraries and executing environtmts) should import cqgi. Libraries that want to display objects call cqgi.display or something,and executing environment implement it.

I think I see now, that's where #77 will expand capabilities of cqparts.display... future-proofing it a bit.

No offense, but I'm not sure that any implementation of display logic Inside of cqparts is right, because it then can't be shared with cadquery Core or cadquery freecad module.
I think cqgi should be neutral. Cqparts should import cqgi and ask it to display things. In an ideal world there are lots of display options provided

No offense, but I'm not sure that any implementation of display logic Inside of cqparts is right

None taken, I think this is an excellent discussion that's probably overdue.

Cqparts should import cqgi and ask it to display things.

So I guess that brings me back to my original question:
Can I use the CQGI without triggering the code regeneration?

So I guess that brings me back to my original question:
Can I use the CQGI without triggering the code regeneration?

Yes, this is the key question. I think the answer today is 'no', but  the answer should be 'yes'
Can you review the cadquery gateway interface spec, specifically, the script side, and lets iterate on the right interface.
As it stands now, CQGI exposes two methods to a script:  show_object()  and debug(). The script calls show_object and gives cq object as well as a dictionary each time. debug also takes an object and a dictionairy, and is designed to allow script authors to highlight various features when debug is enabled. ( for example, to highlight them in red).
I think these interfaces are good as-is, with the exception that show_object and debug magically appear, and maybe they should need to be imported.
The execution environment side is the one that doesnt work well for cqparts.  The script environment expects to be able to parse a script, and then exposes a CQModel object that represents a CQModel that can have its parameters manipulated, and then can be executed by calling its build() method.
cqparts could implement these interfaces, or i'm open to designing new interfaces if that's what makes sense.
The goal is that a script executing environment ( for example, CQFM ) should not have to know whether a script is a cqparts script or a regular old python script--- as long as the script imports cqgi and calls show_object, it should work.

@dcowden sorry for the delay; I still want to respond to this, I just have to find the time ;)

No worries! take your time, we're all volunteers!

The typical pattern followed for creating a parametric model is

define parameters
build model (with optional paths, like debug)
display model

However, the problem with this method is that the request to display is done after the model has been made.
Therefore the only way to change parameters is to intervene at a higher level (ie: higher than the Python interpreter running it, which is what cqgi does now).
So I think there is no clean solution if everything is run in __main__.
However... does everything have to be run in __main__?
The above steps to create a model look a lot like any function:

define parameters
process parameters
output

So if a cube in the current cadquery mindset is made with:
import cadquery

# define parameters
size = 10

# build model
cube = cadquery.Workplane('XY').box(size, size, size)

# display model
show_object(cube)

Instead, could it be:
import cadquery
from cadquery.cqgi import debug, show_object

def cube(size=10):
    obj = cadquery.Workplane('XY').box(size, size, size)
    debug(cube.faces(">Z").workplane())
    return obj

show_object(cube)

now show_object takes in a function that:

defines only named parameters, all with default values
returns a cadquery.Workplane instance

show_object can use inspect to look at the function's parameters and their default values.
I know this is one step toward cqparts, but I don't see any other way that keeps the code strictly python.

@jmwright  @fragmuffin thanks. Let break this down and take the conversation in steps, since its pretty complex.  First, Are we  in agreement that there must be four phases of model resolution:
(1) read model -- we read the model ( somehow), and understand what parameters and such it offers
(2) set parameters/options -- we allow the user and/or executing environment to manipulate the exposed params and options
(3) execution -- we run the code ( this takes a while for complex models )
(4) render output -- we show the graphical result. This may be on a different process than the execution, or may be in process.
Are we all in agreement that solutions would follow these 4 phases?

@dcowden That sounds right to me.

@fragmuffin As a side note, I've mentioned cqparts in the reworked FreeCAD module documentation here.

@jmwright nice!

@dcowden yep, I also think that's right.

ok cool!   so given these 4 phases,  lets also define a few terms:
the script code is executable code that is interpreted in step 1 and executed to produce object output ( for now lets assume this output is in the form of OCC shape objects )
the executing environment is code interfacing with the user, providing visual representations of the output OCC shape objects, and interfaces to view the script code and, possibly, to change the parameters it exposes.
Right now, I think we have these  executing environments in mind:

cqfm, which loads a script from the filesystem, and displays objects on screen using freecad
a web based viewer, which stores scripts in a database, and then displays objects in a users' browser after running the script on the server,
the cadquery documentaion, where the scripts run and then are used to produce images along with their original source
a developer's machine, where the user may essentially not have an executing environment at all ( or, more precisely, has whatever executing environment comes with CQGI by default )

What we need is a set of interfaces that allow the 4 phases, but without the script code and the executing environment directly touching each other. If we can achieve this, we know that both parts are independent
From a cqparts viewpoint, there are two problems with the current approach:

the show_object method is magical. It is not imported, and in the best case it must be implemented by the executing environment, which is a problem
the current parse method cannot be used to produce CQModel objects for any types of scripts other than those for which it is designed ( standard python scripts that call show_object )

In this example by @fragmuffin
import cadquery
from cadquery.cqgi import debug, show_object

def cube(size=10):
    obj = cadquery.Workplane('XY').box(size, size, size)
    debug(cube.faces(">Z").workplane())
    return obj

show_object(cube)

We've solved issue #1 with an explicit cqgi import.   An executable model is represented as a function-- the names and values are the default parameters, the return value is the object.  The metadata would be computed by inspecting the functions' parameters.
This solution isn't too bad from the script side.  There are some peculiarities ( for example, what does it mean to call show_object several times with the same function or with different functions).
But more importantly, I think this solution leaves too much work to the executing environment.  All executing environments would need to do the same code to inspect the function, learn its parameters, store a reference to the function, and then call it when requested by the user.  I'd like cqgi to do this work as well, so that it is common and shared.
Another limitation is that it doesnt provide much support for the executing environments' support for showing data to the user.  CQGI's  BuildResult contemplates a bunch of information the end user probably wants-- the execution time of the script, whether it was successful, and, of course, the objects.   I think it is important that this is a full object, because it's likely that it might be serialized-- for example if the environment wishes to save a rendered set of objects without re-calculating them, or to send it over the wire in the case of a web based solution.
One final limitation is that the notion of passing a function for direct execution by the executing environment omits security concerns.  cqgi today adds some extra machinery that allows the executing environment to change the locals and globals in scope to narrow how dangerous a script may be-- again, with web execution environments in mind.
We need a way to clean up the script side, but without throwing out all of the work cqgi is currently doing to make it easier for the executing environment.
I need to think a bit more about this, but honestly I think most of what is currently in cqgi is fine. I like the abstractions that BuildResult, CqModel, and ShapeResult provide.   I think we just need more methods to convert scripts into CqModel objects for execution.
I'll try to noodle through this and come up with an idea.

now show_object takes in a function that:

defines only named parameters, all with default values
returns a cadquery.Workplane instance

show_object can use inspect to look at the function's parameters and their default values.

This sounds very reasonable (let me add I am a programmer and not a CAD expert).
That is what hit me when looking at cqgi -- it is trying really hard to reimplement function calling! Only the parameters appear to be global variables, the return value is accumulated to a list during the execution and the function has no name.

show_object(cube)

That's another way of saying that the function cube should be decorated by decorator show_object.
It is funny how cadquery tries to really hard to capture the design intent of the CAD but the structure of the script is actually quite alien to someone used to working with python all the time.
My take would be probably similar to
import cadquery
from cadquery import cqgi

@cqgi.part
def cube(size=10):
    obj = cadquery.Workplane('XY').box(size, size, size)
    cqgi.debug(cube.faces(">Z").workplane())
    return obj

Where cube is a factory function for cubes. When called, a shape is returned. This shape could be further copied/cloned and each copy would have its own position but shared the shape. The resulting shape would be fully defined so it can have a technical drawing. I am referring to #90 here.

i like the clarity of the above, when the part in question is going to be used from somewhere else.  One of the goals of the original cqgi spec was to reduce boilerplate to a minimum. This resulted in removing the imports and, also allowing the author to create just a plain old python file, not a file that declares a function.
Early cqgi designs had scripts that looked like:
import cadquery
from cadquery import cqgi

def build(**kwargs):
    obj = cadquery.Workplane('XY').box(size, size, size)
    cqgi.debug(cube.faces(">Z").workplane())
    return obj

This is extremely similar to the proposal above, with the exception of using a pre-defined method name instead of an arbitrary one with a decorator.   Of course it is limited because one python file cannot contain > 1 function.
What motivated the move away from that was that it seemed bad to have so much boilerplate for a simple thing.  Maybe that was the wrong idea,because the average person interested in cq has been much more 'geeky' than i originally intended/hoped. I think clearly the community doesn't like the magic of the current way of working.
Another motivating factor originally was that I wanted it to be possible to run a cq script from the command line.  the above would have to have an additional invocation of the function at the end to actually run it, which is kind of annoying.  But, at some point along the way I lost this functionality anyway by removing the need to import show_object. I'd like to recover this ability as a part of the solution.
I could get behind the above @zwn's proposal above.  We would accept that a cadquery script MUST be executed by a cqgi compliant container.  To retain the ability to run cq scripts from the command line, I could implement a main function in cqgi that runs a script, such as:
python cqgi.py /usr/src/cube.py
So we'd have the above interface exposed by scripts,  and then we'd have the following cqgi executors:

command line
sphix doc
cadquery freecad module
adam's new gui
zwn's new gui

And then we'd need to go through all of the examples and change their syntax.
I'm ok with this direction but I need a +1 from a lot of folks-- that'd include @fragmuffin @gntech @fragmuffin and @adam-urbanczyk


Customize Colors in Settings Page

This is a pull request to add functionality requested in issue #1370.
Basically, a new Settings > Custom Colors page has been created. Each color allows for its background, border and name (what you see when hovering over the color in Create Task, also for filtering by color name) to be customized. Also, each color has a checkbox labeled "Selectable?" that allows colors to not even be shown at all when creating a task. So if you only want to define and use a handful of colors, you don't need to see all sixteen colors.
Upgrade instructions / compatibility details: it should all work without a hitch after updating your code base (see details below).

I tried to be as backwards compatible and to change as few things as possible to accomplish this task. The most important decision was not changing how tasks.color_id is defined in the schema. Basically, I don't know how other people or tools might be relying on that column being a text based color name, and that string being one of the hard coded colors in Kanboard. So I chose to work around that instead of implementing a better data structure.

I opted for populating the colors table at runtime based on Model\Color::default_colors instead of having those inserts hardcoded in the schema migration files. This way it will adapt to local modifications (custom colors) any project may have when upgrading.

I left calls to getDefaultColors instead of the new getColors in a couple of places where I thought it made sense. For example, color projects on the Grantt formatter I think are better suited with the default pastel palette. Let me know if you'd rather I change this so user defined colors are used everywhere.

I chose to use a VARCHAR as the primary key for the new colors table, and choose the defaultColors' key as the ID, for consistency with tasks.color_id. I understand this isn't very proper, and it may not even make sense semantically later on (a 'yellow' color_id with a background of #ff0000 after user customizes it), but again, I tried to add this feature changing as few code as possible and trying not to break anything in existing installations.

In order to also retain the exact same order of colors when creating a task (for UX-backwards compatibility reasons), and since this is currently defined by the color's order in the defaultColors array, I added a colors.position column that I order the results by.

Having said that, if you'd rather I rework this so it's properly done even if it that means changing how tasks.color_id is defined, let me know.

I left Api\App::getColorList as is since I believe it's used to get a list of "available colors" from the API by tools that integrate with Kanboard. So I guess the current behavior is appropriate: get a list of custom colors that are usable, and not return those marked as not selectable by the user in the new Custom Colors page.

I added a few new strings to the translations files, including Spanish translations since they're the ones I can vouch for. I added them to the rest of the files as comments since that seems to be the MO for strings that don't have yet a translation.

I work with MySQL so I'm not sure if the migrations I created for sqlite and Postgres are totally correct. Also, the full database dumps on app/Schema/Sql/ seem like they are autogenerated (actual dumps) so I didn't add the definition of the new table colors to them. Should I?

In terms of managing data of these custom colors, the order in which they appear to the user in the Create Task view can be altered by changing the values of colors.position manually in the database. And to force a "reset to default colors", one can just truncate the colors table entirely.

Functional tests: I believe UserApi::testGetColorList already tests enough, since customizing colors is not available through the API so colors can't be changed through it.

Unit tests: I added a new test case for Model\Color as there wasn't any and that Model class underwent a lot of changes. Writing unit tests isn't my forte so I tried to mimicking similar tests on the code base.

Thanks for submitting your pull-request and your patience. If you have time to fix the comments, I will be able to merge your pull-request and do more tests.

Closing, PR never updated.


Introduce bazel rule for doing mixer codegen.

This PR bazel-ifies the code in //tools, adding a generate.bzl file that includes a new build rule mixer_proto_library.
Example usage:
mixer_proto_library(
    name = "go_default_library",
    protos = ["my_new_aspect.proto"],
)

The PR also enables the previously commented out tests and rearranges their setup to make them work with bazel (and exercise the new build rule). Part of that work included adding in programmatic gofmt and goimport organization to our generated code.  The rest of that work included adding build rules for all of the testdata to generate the file descriptors in advance of the tests.
There were edits to the bazel_to_go.py script to include the template generated code in the builds, as well.
There are probably several aspects of the generate script that can be cleaned up, but I anticipate having to revisit this when the code generation story is fleshed out a bit more. So, I'm holding off on trying to make it shiny for now.

This change is

Jenkins job mixer/presubmit passed

Jenkins job mixer/pilot-regression passed

Jenkins job mixer/e2e-smoketest passed

Jenkins job mixer/presubmit passed

Thanks for the thorough review - caught a number of important issues. I think the current set of commits now addresses all concerns.
PTAL.

Jenkins job mixer/presubmit passed

build mixer/e2e-smoketest

Jenkins job mixer/presubmit passed


Building and Running from the Verilog Sources, out of the box results in Error

Execution of
$make simulator
in the
builds/<ARCH>_<CPU>_verilator/
directory results in
%Warning-DEPRECATED: Verilog_RTL/mkTop_HW_Side_edited.v:7: Deprecated -msg in configuration files, use -rule instead.
%Error: Exiting due to 6 warning(s) make: *** [../../builds/Resources/Include_verilator.mk:52: simulator] Error 1
How to resolve this error?

This was fixed in commit 874ab85d by updating the lint_off statements in the Verilator config file.


add a suppression for UBSan

Scope & Purpose
Follow-up PR to https://github.com/arangodb/arangodb/pull/15574. Contains the same changes as the original PR, but now has a CI-compatible branch name.
Add a suppression for UBSan that removes a false positive from being reported at server startup.
This affects only the LogContext object, which has been added in 3.10/devel only. So no backports are needed.

[ ] :hankey: Bugfix
[ ] :pizza: New feature
[ ] :fire: Performance improvement
[ ] :hammer: Refactoring/simplification

Checklist

[ ] Tests

[ ] Regression tests
[ ] C++ Unit tests
[ ] integration tests
[ ] resilience tests

[ ] :book: CHANGELOG entry made
[ ] :books: documentation written (release notes, API changes, ...)
[ ] Backports

[ ] Backport for 3.9: (Please link PR)
[ ] Backport for 3.8: (Please link PR)
[ ] Backport for 3.7: (Please link PR)

Compilation succeeded on Windows now.
There is a clang-format error, but that is because clang-format interprets LogContext.h as objective C code for no obvious reasons.


Text Extractor

Microsoft PowerToys version
0.77.0
Installation method
PowerToys auto-update
Running as admin
None
Area(s) with issue?
TextExtractor
Steps to reproduce
When you go into capture mode to select the screen capture area it sometimes seems to show a mangled version of the desktop.

✔ Expected Behavior
I'd expect to see the desktop as it was before pressing the key to launch Text Extractor.

❌ Actual Behavior
You get the mangled desktop as shown in the first image.
Other Software
No response

This is a known bug with some display configurations. Not sure what causes it to happen, but it is being tracked in another issue #21676. A /bugreport would be helpful to understand what is going on with your system to narrow down the bug

Here you go. The annoying thing is it doesn't happen all the time so it's difficult to replicate. As you see in the images I have a 3440x1440 external screen and then the 1920x1200 laptop screen. I wonder if the bug is somehow connected to whichever window/desktop had focus last??? I know it sounds odd but to "make the problem go away" I had some luck moving the window I wanted to capture text from (moving, not just clicking on it). Even then I didn't really track down any repeatable steps. I hope that helps.
PowerToysReport_2024-01-23-14-40-11.zip

@AlquistArj that is very helpful! In previous reports it always sounded like the issue was consistent. Now knowing that it is intermittent will go a long way in finding what is the root issue.
I am going to close this issue since this bug is being tracked in #21676 but feel free to comment again, or on that issue if you have any additional information to share
/dup #21676


journal: International Journal of Science and Research (IJSR)

Journal Request
Journal name:
International Journal of Science and Research (IJSR)

Calls for papers URL:
https://www.ijsr.net/

CSS selector:

Other information:

I have tried to find a page on the journal website that publishes calls for papers but could not find any. If you could provide a link to a page that can be scraped, please do. I will keep this issue open for a little while in case the person who created this request wants to reply.


New unrar versions use different date format

Hi,
Over at SiCKRAGETV/SickRage we're using py-unrar2 to postprocess media files.
Users have been reporting errors when switching to v5.30 of unrar, because apparently unrar has changed output of file dates, causing unrar2/unix.py, line 179 to fail parsing the file dates.
We have an open bug on this at SiCKRAGETV/sickrage-issues#2613 with relevant Tracebacks, user versions, Linux distro's and exact packages used.

@yk4ever if the try/except is an ok solution for you I can PR. Not sure if that is the best route, just needed something to make it work in the mean time regardless of which unrar is installed.


Use relative image references in markdown files

Two options for images in the same folder as the Readme.md it is referenced in:

Using HTML syntax

Absolute:
Relative:

Using markdown syntax

Absolute: ![](https://github.com/FCCVienna/FCCVienna/blob/master/graphics/Logo1_white.png?raw=true)
Relative: ![](Logo1_white.png?raw=true)

Personally I would prefer relative markdown references.

LTGM :+1:


Is Virtualizing working?

I'm unable to virtualize a MultiSelectTreeView.
I tried to add  VirtualizingStackPanel.IsVirtualizing ="True" ScrollViewer.CanContentScroll="True" in the demo XAML, without success.  Is Virtualization supported ? If yes, what is the procedure / code / restriction to add to make it work for the demo version?

Virtualisation is not supported and it will cause a lot of pain to implement. It's not easy already for a flat list (done that, still only 99 % reliable), so I won't even start for a hierarchical tree. Whoever wants to try it is welcome to do that. I'm accepting pull requests for that but will do thorough tests. Don't forget keyboard navigation, just for a hint.


feat(1.6): add BOM.Declarations

This adds .Declarations to the BOM struct.
Closes #157.

I'm keeping this as a draft for now since it depends on the JSF Signature type from #161, which can potentially be reused here.

@mcombuechen Thanks! Could you please resolve the merge conflict whenever you get the time?

@nscuro rebased and conflict free, should be ready for review now.


Toon shader material pass.

Use ShaderGraph for custom (simple) flat approach. Lots of good examples out there, it doesn't need to be sophisticated.
Combined with slightly rounded corners on the tiles, I think it will look pretty good.
Skybox?

Tried the unity open project shader, https://www.youtube.com/watch?v=GGTTHOpUQDE, but not compatible with 2022.


Automated Package Upgrade

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Transition to PDM

See #35

It seems that PDM also has trouble with different version constraints for different python versions https://github.com/pdm-project/pdm/issues/46

Closing as #22 was merged, thus this is no longer needed!


Add Nginx ingress controller + various tweaks | ⚠ Breaking changes in some variable names

This PR adds the Nginx ingress controller and the possibility to use a helm _values.yaml file for both it and Rancher. It also tweaks the variable names to make them more consistent.
Last but not least, a lot of the logic related to load-balancers, including Klipper, has been tweaked and cleaned up!
This fixes #293.

@otavio This turned out to be a big PR with various tweaks, and because of some breaking changes in the variable names, was the occasion to push v1.5.0.
Bottom line, you can now use Nginx and also have the possibility to tweak its default settings via a nginx_values.yaml values file if you want to) or via a HelmChartConfig after deployment. Here's its default config, which seems to work great.
https://github.com/kube-hetzner/terraform-hcloud-kube-hetzner/blob/851ac92eb4ca8c383362d24acdb9ae28360d3f27/locals.tf#L318-L333.
To activate Nginx ingress, just set these variables in your kube.tf:
enable_traefik = false
enable_nginx = true

However, if you see possible tweaks or adjustments, PRs always welcome! 🙏

I didn't add haproxy yet. I am wondering if I would be able to use flux to update haproxy settings, if need.

Hey @otavio, good to hear from you! I thought you were using Nginx; anyways, PR welcome for HAProxy; just please follow the same path as Nginx, so grep for "nginx" in any code editor to see what was done for it.
About flux, what is it? If needed, along with HAProxy and it is a standard tool that can be installed via HelmChat definitions, yes, sure, please add it; if not, then if it can be installed separately by the user, it is wiser to leave it out as anything that is not needed for the deployment phase shouldn't be included.


Trying to disassemble d64 file

Hello,
I'm MB. A very nice and polite guy.
Trying to disassemble a d64 file but just getting BRK on every line.
This tool is supposed to be able to disassemble C64 binary files, right?

D64 files are disk images that contain a variety of contents, both code and data. DCC6502 will disassemble any code blocks, as long as you know the load address. Extracting code from a D64 file is not easy to do, since each program split the disk in different ways.

See also https://vice-emu.sourceforge.io/vice_toc.html#TOC367


Why is RegFlushKey() called after DeleteProfile() and SetDefaultProfile()?

MFCMAPI code (for example, here) calls RegFlushKey() after DeleteProfile() and SetDefaultProfile(). There's no comment or documentation (that I could find) explaining why that's done or if it's necessary.
Would it be possible to add something to the docs, or a code comment explaining when it's required?

As noted in the RegFlushKey  docs it just ensures the changes are written to disk. Is it causing a problem?

No, not at all - just curious as to why it's required (and if it's required at all). My assumption was that if it's required, then it would already be called by DeleteProfile() and SetDefaultProfile() themselves, or that the docs for these functions would explicitly say that RegFlushKey() should be called after them. Not seeing either of those made me wonder what's the best way to handle it, that's all. :) Feel free to close this out, thanks!

I probably observed at one point the changes weren't committed immediately and this caused refresh issues in mfcmapi - something like that. Would have been nice if I left a comment in there. :)


HDDS-5468. Avoid long sleep in TestPeriodicVolumeChecker

What changes were proposed in this pull request?
Eliminate the need for costly sleep in TestPeriodicVolumeChecker:
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 132.95 s - in org.apache.hadoop.ozone.container.common.volume.TestPeriodicVolumeChecker

https://github.com/apache/ozone/runs/3112345557#step:4:923
by:

manually calling checkAllVolumeSets instead of waiting for the real executor to schedule it,
and using FakeTimer to "advance" time between the calls.

https://issues.apache.org/jira/browse/HDDS-5468
How was this patch tested?
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.276 s - in org.apache.hadoop.ozone.container.common.volume.TestPeriodicVolumeChecker

https://github.com/adoroszlai/hadoop-ozone/runs/3115013489#step:4:1100

Thanks @adoroszlai , the fake timer way is great, I also happen to learn this idea from @sodonnel 's patch https://github.com/apache/ozone/pull/2429, and plan to do a similar fix for this test.
The patch LGTM with some inline comments on the old code comments.

Thanks @guihecheng for the review, @bshashikant for reviewing and committing it.


FVTT 11 - Module validation error during update

The following error occurs when update module is performed in FVTT v11:

I'll check it out. But I also haven't verified with with V11 so that may be
the issue.
On Tue, May 30, 2023, 22:00 Valyar @.***> wrote:

The following error occurs when update module is performed in FVTT v11:
[image: image]
https://user-images.githubusercontent.com/63558984/242163351-865cbaa9-0b24-4e18-b7c3-cd258649cadb.png
—
Reply to this email directly, view it on GitHub
https://github.com/ThroughlyDruxy/tor2e-npc-parser/issues/16, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AHR6IXGAUWVRDF24UTHF2KTXI3F55ANCNFSM6AAAAAAYU4WKSM
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Whisper-WebUI support intel Arc A770 GPU

This project is good, and would like to also have hard support using my GPU which is intel Arc  A770. How to utilize the Intel OpenVino feature/OneAPI under Whisper-WebUI.
I think it may start to include some rewrite of the app.py

I have the requirement too , hope to have the function soon, thanks!!

Hi, I can't test this since I don't have intel GPU, but I'm looking into this:

intel-extension-for-pytorch

Maybe this is the way to go.

Hi, I can't test this since I don't have intel GPU, but I'm looking into this:

intel-extension-for-pytorch

Maybe this is the way to go.

A friend of mine wrote a Whisper-WebUI that supports IPEX, but he didn't want to Pull requests because it was a destructive change.

In this guide:

https://intel.github.io/intel-extension-for-pytorch/xpu/latest/tutorials/getting_started.html

It seems to be as simple as just adding the additional dependency intel_extension_for_pytorch and adding xpu as a device,
But I can't test this because I don't have an intel GPU device.
Since this needs aditional dependency, I think it's wise to handle it in a separate branch.
If someone can make PR into intel-gpu, I would appreciate it!