MSBuild SDKs version property is not expanded

Steps to reproduce
Directory.Build.props file:
<Project>

  <PropertyGroup>
    <LocalPackageVersion>2.0.0-local</LocalPackageVersion>
  </PropertyGroup>

  <Import Project="Sdk.props" Sdk="SharpGenTools.Sdk" Version="$(LocalPackageVersion)" Condition="'$(MSBuildProjectExtension)' == '.csproj'" />

</Project>

Expected behavior
SharpGenTools.Sdk/2.0.0-local is resolved and imported.
Actual behavior
SharpGenTools.Sdk/$(LocalPackageVersion) fails to be resolved by NuGet resolver.
Log:
Resolving SDK 'SharpGenTools.Sdk/$(LocalPackageVersion)'...

Environment data
Process = "C:\Program Files\dotnet\dotnet.exe"
MSBuild executable path = "C:\Program Files\dotnet\sdk\5.0.100-preview.5.20261.11\MSBuild.dll"
Command line arguments = ""C:\Program Files\dotnet\sdk\5.0.100-preview.5.20261.11\MSBuild.dll" -maxcpucount -verbosity:m /t:Restore;Build /bl "-distributedlogger:Microsoft.DotNet.Tools.MSBuild.MSBuildLogger,C:\Program Files\dotnet\sdk\5.0.100-preview.5.20261.11\dotnet.dll*Microsoft.DotNet.Tools.MSBuild.MSBuildForwardingLogger,C:\Program Files\dotnet\sdk\5.0.100-preview.5.20261.11\dotnet.dll""
MSBuild version = "16.7.0-preview-20258-02+26f6d1d87"

Source
ProjectImportElement.ParsedSdkReference contains unexpanded properties from XML element, but Evaluator.ExpandAndLoadImportsFromUnescapedImportExpressionConditioned doesn't expand them before passing to SDK resolvers.

Cross-referencing my SharpGen branch.

This is not supported as SDKs are parsed before any part of the project like properties, items, etc.  I have an open issue to log an error if you try to put expandable characters in there.
https://github.com/microsoft/msbuild/issues/1518

@jeffkl

This is not supported as SDKs are parsed before any part of the project like properties, items, etc.

Even explicit imports? I was under impression properties were evaluated simultaneously with the properties during the 1st pass. That's why you can put a Condition on an Import.

I have an open issue to log an error if you try to put expandable characters in there.

Well, logging is great, but isn't it better to just expand the properties (and log error only if evaluation failed)?
I use explicit imports, without this working I have to force PackageVersion to always be sth like 42.42.42, and even then, this issue makes it impossible to run tests on building a tagged release.
I can put together a PR for that, if MSBuild team considers it okay.

Yes technically explicit imports would be possible to make work.  But we also need to consider the pros and cons of making it work in one scenario (<Import />) but not in another (<Project Sdk="" /> and <Sdk />).  I'm a little worried that it would cause confusion.  That said, <Import /> elements have conditions and are different from <Project /> but <Sdk /> looks the same but is treated a lot differently under the covers.

@jeffkl but is this consistency worth more than feature-completeness? From my PoV, <Import /> is already inconsistent. Some properties are evaluated, some are not. It's the choice between 2 inconsistencies, one is more feature-complete than the other, and that one actually blocks some legitimate scenarios.

As an alternative you can put the version info in a global.json as described at https://docs.microsoft.com/en-us/visualstudio/msbuild/how-to-use-project-sdk?view=vs-2019#how-project-sdks-are-resolved

@japj but that doesn't allow referencing MSBuild properties, does it? This is kind of the whole point of this issue. Imagine there is a lot of logic to compute version property. There is no way to use the computed value to resolve SDK. There is no benefit from moving from explicit versioned SDK imports to (explicit non-versioned SDK imports)+(global.json).

The version of an imported SDK must match across the entire build session, so I'm not sure it makes sense to support property expansion there.

that one actually blocks some legitimate scenarios.

Can you expand on that, please?

@rainersigwald SharpGen repo has a custom versioning logic. If repo is built on local PC (not via Azure DevOps CI), version string is $(VersionPrefix)-local (sth like 2.0.0-local), whereas on CI it can either be a release build (version string is taken verbatim from build environment variable), or a nightly build (with VersionSuffix generated by AzDO, like 2.0.0-ci.1024). This logic is, naturally, in Directory.Build.props. The repo dev workflow steps are:

Build
Pack
Copy built *.nupkgs to SdkTests\LocalPackages
Restore & Build & Run SdkTests\SdkTests.sln

SdkTests must know the just-built package version to restore. This is only possible if these properties become expandable. I have implemented a workaround for now (change all non-release builds to use 42.42.42 as a version), but that still makes it impossible to run SdkTests when building a tagged release.
I have already fixed this issue in my local MSBuild branch and I've refactored ProjectImportElement along the way. It still needs some work (add proper tests, for instance).
By the way, one can inject properties visible in <Project Sdk="..." /> and <Sdk /> via command line or via Directory.Build.rsp. It's just a matter of knowing how really flexible MSBuild is (or how to make it so).

one can inject properties visible in <Project Sdk="..." /> and <Sdk /> via command line or via Directory.Build.rsp.

This is what I wanted to do. See: https://github.com/microsoft/msbuild/issues/1518#issuecomment-329839989

https://github.com/microsoft/msbuild/pull/5378#issuecomment-643624644

I personally welcome this change but if we're allowing versions then we can move the MinimumVersion/MaximumVersion representation to global json. Thus we don't need to add additional version attributes. Either we specify a version or don't, which will infer from global json. For SDK packages from NuGet, specifying dependencies of required base SDK packages should be more than enough for resolving dependent SDKs transitively. NuGetSdkResolver should be able to do just that!


Error: Type of "Success" (boolean)  is not supported. Use objects or arrays of objects.

How can i solve the problem? Here is the json file with some fields with boolean value

now i see the reason why not supported

boolean value outside the object is not permitted, inside the object is okay!

I also faced this issue, here's a good explanation : https://stackoverflow.com/questions/46195599/type-of-id-number-in-user-json-is-not-supported-use-objects-or-arrays-of-ob


chore: [not for review] testing removing maven_install gapic-generator-java

This is not for merge. I'm checking the effect of removing maven_install rule.

It failed Run bazelisk --batch test //test/integration/... in ci-maven / build (11) and 17.
(16:14:33) ERROR: /home/runner/work/gapic-generator-java/gapic-generator-java/BUILD.bazel:5:12: no such target '@maven//:com_google_api_gapic_generator_java': target 'com_google_api_gapic_generator_java' not declared in package '' defined by /home/runner/.cache/bazel/_bazel_runner/1f815583ebc8da6875b9074f31ba9a5d/external/maven/BUILD and referenced by '//:protoc-gen-java_gapic'
(16:14:33) Analyzing: 71 targets (198 packages loaded, 3658 targets configured)


Ith score

In the case of ITH cna, IQR is distribution of the coefeffiient values of Pearson correlation between malignant cells for each sample taken from the gene expression matrix derived from the cnv heatmap
In the case of ITHgex, can I say that iqr is obtained from the scaling gene expression matrix?
I did the same with the matrix from infercnv(R), and I expected that the two values would be different, but the correlation was completely different, so I asked because I thought there might be some misunderstanding.

gex score was roughly comparable, but cna score was completely different.
I used infercnv.reference.txt and infercnv.observation.txt created by infercnv :: run
did I use right files?

or If the CNV plots are incomparable, is the difference natural?

yes, then I'd also expect the ITH score to be different. But in that case it would be interesting to know why the plots are not comparable in the first place.
infercnvpy is not an exact re-implementation of the infercnv algorithm, but in my examples the final results were quite similar.

thank you for comment
I solved it,  I used<EMAIL_ADDRESS>It has same order of ITH cna score with "infercnvpy.tl.ithcna"


make the default instructions the same region as the previous default…

… so images stay visible
previously the default region was used us-west-2
when upgrading all my images were gone because I did not know what region my bucket was in
I was able to find it via Refile.store.instance_variable_get(:@bucket).location_constraint but that took me some digging ...
@jnicklas

Huh. Isn't the default us-east?

yeah I think you are right ... our bucket was created via the aws console ... not sure how it worked without specifying the region ...


Add fallback fonts

Should solve issue #266

I do believe this is a good idea, not sure it will solve that issue, but it certainly might. @jessepollak Any issues with my merging this in?

Seems great to me — feel free to merge :)


Update README.md

This seemed to be to old README with the old branding. I just 1-to-1 copied the README from the root to here.

Thanks for the PR! Haha sometimes it's hard to keep track of all the READMEs


Help with HTML sizing (font and boxes)

Hello, I am new to html and I am having some trouble with some of the details. I want to change the font of some of the text but I am struggling to see exactly where I can do that. Sometimes it seems like "fs=#" allows me to change it, but for this text box I can't find it.

I also don't know how to reduce the whitespace/box size here:

I would want the grey box to end in line with the gif, but again I am struggling to locate what to change in the code to do this. Any HTML pointers would be great! The code is located here. Thank you!

I am no HTML expert (limited experience), and I cannot guarantee I can figure it out, but I will look at your code and see if I can help out in any way.

Don't try to do it with CSS directly. Instead, use something like this...
<p class="fs-5">To assess
In other words, you change font size for the entire paragraph using bootstrap-defined classes. Here the class is "fs-5". There are other sizes as well. Here's the relevant section in bootstrap docs.
https://getbootstrap.com/docs/5.1/utilities/text/#font-size

@pbogden Thank you! I didn't realize you could just stick that anywhere and it would adjust the font size, but that definitely works! Do you have any thoughts or documentation on adjusting the "white space" of the boxes so that it lines up better? Should I be looking at the containers or is that something else? https://getbootstrap.com/docs/5.1/layout/containers/

I'd be careful about the documentation.  I think you might be talking about this...
https://getbootstrap.com/docs/5.0/utilities/flex/#align-items
But I'm not sure.  Don't spend a lot of time on it, and ping me in piazza if I'm slow to respond here.
Remember, this is about giving you a fish, not teaching you to fish.  It was good that you asked me your question.  If you have another specific request about styling that involves changing the bootstrap itself, then please let me know and I'll help you out. Can you give me something more specific?

Hi Sophia. It sounds like professor Bogden answered your question, but I found this to be a helpful resource in adjusting typography.
https://getbootstrap.com/docs/5.0/content/typography/

Closed per resolution of issue in class.


Feature/smart dropdown alignment

A refactor of the DDR menus to fix the dropdown alignment bug and add smarter configuration / utility functions. Closes #69.
Menu changes:

Adds some constants to use as configuration settings for easy menu updates:

How the nav is aligned (defaults to right).
If dropdowns should be included.
If nested dropdowns should be included (third level and beyond).
If a custom dropdown icon is used (this would be in place of Bootstrap's caret).

Simplifies how tag attributes (class, href, target, etc.) are generated so we:

have better readability,
can extract common operations into utility functions,
and reduce the number of methods being called.

Todo:

NavPrimary and NavSecondary are the same thing. Need a better idea of what "secondary" means in this context, and then I want to modify the template to fit.
Still a lot of reused code, so any suggestions about further simplifications would be great.

But this branch got a little messy because I was adding misc updates while setting up RRMA.
Misc changes (in order of appearance):

Load SVG sprite file (all.svg) by default, so we can start off with key icons: caret, social, etc.
Restore the DNN home URL call as a comment.
Remove YouTube annotations by adding iv_load_policy=3 to embed link.
Add variables for controlling blockquote font style.
Set footer color.
Improve footer links:

Only handle plain / hover color with global links (.footer a).
Make .footer-brand inline-block.
Handle link bottom border specifically in .footer-lower.

@Accuraty, a few different changes here, but I'd be especially interested in your feedback on the DDR menu work.


Run Jupyter notebook examples in Github Actions as a sanity check on changes

Issue
We cannot currently detect when changes in the library break important features used by the notebook examples.
Changes
Add a step to continuous integration that installs IJulia, then runs three representative notebooks (one composition, one stratification, and another); if any throws an exception (e.g. due to a changed import or API change) the build fails.
The new workflow uses yaananth/run-notebook to run the notebooks.
@Xiaoyan-Li

Is there any way to cache the Julia compilation, and only compile StockFlow?
Could try removing some requirements, too, but I dunno if there'd be much success with that.

Is there any way to cache the Julia compilation, and only compile StockFlow?

Sorry, I think I understand your question, and I think it's coming from the phrase 'most of which is precompiling Julia'; that was not the thing I meant to say. Instead I meant to say: most of that 15 minutes is spent precompiling StockFlow.jl and its dependencies, not compiling 'Julia'. My apologies!
What I was seeing was that notebooks appear to need a full precompile of StockFlow.jl and its dependencies before running, like you'd get from Pkg.precompile(). If Pkg.precompile() wasn't performed before running the notebook, running the notebook caused a precompile anyways.
The few times I was successful in caching the precompilation artifacts, something else would break like IJulia when the cache was used (the notebook would complain of not finding the julia kernel), while the precompile time confusingly happened anyways.

Could try removing some requirements, too, but I dunno if there'd be much success with that.

I think it'd certainly help speed up the example checking if there are any dependencies we could remove, especially if we're depending on a large but unused library. I'll have to look into it (unless ya'll know a tool for detecting unused deps?).

Ran grep a few times on the folder for some dependency names I haven't seen much of
Combinatorics is only imported in PrimitiveStockFlowInPaper.jl, don't know what it's used for, if anything.
CompTime isn't anywhere
Graphviz_jll isn't anywhere
JSON isn't anywhere
LinearAlgebra isn't anywhere
StaticArrays data types show up in a few papers, but it's never imported; maybe comes from Catlab?
StatsBase is only imported in visualization.jl, don't know what it's used for, if anything.
StringManipulation isn't anywhere
Tables isn't anywhere
@Xiaoyan-Li would need to say if any of these are important, but we can probably cut a lot of them.

Nevermind looks like all the things I listed are dependencies for the other packages we import

Had an idea; we could try multithreading the tests.

I remember Eric mentioned he has the same problem in Modellab when it calls the julia code and run the models. Probably we can double check with him does he has better idea to solve the precompile problem.

Had an idea; we could try multithreading the tests.

If we ran all three notebooks at the same time, hypothetically the upper bound of runtime is the longest one (4m 19s), ignoring resource allocation difficulties. The question would be, how do we multithread the notebook running?
We could run separate github actions jobs, but then each would have its own compilation. Instead of one 16 minute build, we instead would have three 14-16 minute builds, one per notebook. Unfortunately, as far as I know, you can't say 'up to this point is a single build, but then these steps, run in parallel' with github actions.
We could manually run them in a multithreaded way, but I've experienced builds like that in the past, and you often get very confusing output, and tracking down errors isn't always easy. The output needs to be sensibly captured from each runner in some way and then turned into a single log (elsewise you have a bunch of different builds all weaving their logs in and out of each other).
Since this is merged, I think what I'll do is file an issue for future improvements in the regression test area covering these and linking this PR.


fix: fullscreen-modal width wrong

General

✏ 消除全屏弹窗左右多余的间隙

[x] Pull request template structure not broken

Type

ℹ What types of changes does your code introduce?

👉 Put an x in the boxes that apply

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

Checklist

ℹ Check all checkboxes - this will indicate that you have done everything in accordance with the rules in CONTRIBUTING.

👉 Put an x in the boxes that apply.

[x] My code follows the style guidelines of this project
[x] Is the code format correct
[x] Is the git submission information standard?
[x] My code follows the style guidelines 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
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

ModalWrapper expose setModalHeight is missing


Feature map(xgb.fmap) and XGBoost dump file(xgb.dump) upload request.

Hi Far0n,
I am currently using XGBoost to select feature interaction for my LR model, I find your work very interesting, however I have encountered a problem to get the XgbFeatureInteractions.exe runing with my xgb.dump file.
I am using scala language and XGBoost4j package running on Spark version 1.6, so I am not sure if the XGBoost dump file that my project created is having a different format from yours, so it would be really nice if you can upload the files xgb.fmap and xgb.dump that were mentioned in README.md in your project so that I can do a format check to see what wrong with my dump file.
Thank you.

Problem solved, I have figured it out, turns out my xgb.dump lacks tree number lines.
For someone who might be interested how I solved this dump file problem:
Here is the code I wrote in Scala:
`
def createFeatureMap(savePath:String, featureNames:Array[String]): Unit = {
val writer = new PrintWriter(savePath, "UTF-8")
for (i <- 0 until featureNames.length) {
writer.print(i + "\t" + featureNames(i) + "\t" + "q\n")
}
writer.close()
}
val modelInfos = xgBoostModel.booster.getModelDump("../xgb.fmap", withStats = true)
def saveDumpModel(modelPath: String, modelInfos: Array[String]): Unit = {
val writer = new PrintWriter(modelPath, "UTF-8")
for (i <- 0 until modelInfos.length) {
writer.print(s"booster[$i]:\n")
writer.print(modelInfos(i))
}
writer.close()
}
`
XGBDumpFile.zip
You can firstly call createFeatureMap and the feature map will be saved in specified location.
Then prepare your XGBoost model dump(in the code above is modelInfos) and pass it into saveDumpModel Function then you will get a dump file that can be parsed by XGBFI.
The attached files are my created xgb.fmap and xgb.dump just to give you a reference.

Thx for your feedback @SimonZhao777. I'll have a look at the dump and try to make xgbfi compatible with this format.

@Far0n The attached xgb.dump file is already compatible with your solution, the former version that I created does not contain this line "writer.print(s"booster[$i]:\n")" in function saveDumpModel, so after adding this line, it's working now. Thank you for work!


chore(main): release 2.23.2

:robot: I have created a release beep boop
2.23.2 (2024-09-23)
Bug Fixes

add gradio route (bf531a5)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/ai4os/ai4-dashboard/releases/tag/v2.23.2 :sunflower:


fix: Detect tty for prqlc prompt

Closes https://github.com/PRQL/prql/issues/3228

FYI @aj-bagwell — not sure if this is a helpful @ or not — feel free to ignore if not.
The approach in https://github.com/PRQL/prql/pull/2885/files#diff-5042ecb23fbc2e8750e6452e008e9e96007bc06be4dff012653aedeaede02865R410 didn't seem to detect a tty correctly (or at least how I'm thinking about a TTY, where someone is typing into stdin, rather than piping text in).
More details in #3228. I spent 20 minutes looking through dependencies — it seems like clio is calling the same code, though the code changes slightly by versions, so I'm likely missing something.
We're v happy to stick with this for a bit while upgrades percolate through the ecosystem.

Thanks for working on this! Could we add a test for this?

For sure we should have one — but it should be in our tests already! e.g. https://github.com/PRQL/prql/blob/9743446298ce4e72424239c234288a6c54173d74/crates/prqlc/tests/test.rs#L65
I think possibly it isn't picking it up because it's not a terminal, whereas the error was happening while we were in a terminal but not a tty? (I'm not tight on these concepts...)

Thank you for pointing that out. It seems difficult to test this....


freebsd add few more procctl x86_64 constants.

@bors r+

:pushpin: Commit e979ba6138535f539f0053e49d81d45e5ffb655f has been approved by JohnTitor
It is now in the queue for this repository.

:hourglass: Testing commit e979ba6138535f539f0053e49d81d45e5ffb655f with merge 29284f4b00a5952e9bb63e5b7dbf5ecb14d77415...

:broken_heart: Test failed - checks-actions

@bors retry

:hourglass: Testing commit e979ba6138535f539f0053e49d81d45e5ffb655f with merge 7f9adf87386c161009501882573dc2c4fab10cd2...

:sunny: Test successful - checks-actions, checks-cirrus-freebsd-12, checks-cirrus-freebsd-13, checks-cirrus-freebsd-14
Approved by: JohnTitor
Pushing 7f9adf87386c161009501882573dc2c4fab10cd2 to master...


Add in middleware support for swagger-node-express

It is quite common (and built into express) to have a piece of middleware act upon a request. Swagger doesn't have this capability, but it would be relatively straightforward to add (and quite useful). So, I added in a middleware construct:
For starters, in the Swagger constructor there is a new property:
this.middleware = [];
There is also a new helper method to add middleware:
Swagger.prototype.addMiddleware = function(m) {
this.middleware.push(m);
}
And finally, the code that actually calls out to the middleware BEFORE calling into the action of method:
var success = true;
if (self.middleware.length) {
_.forEach(self.middleware, function(m) {
var ret = m(req, res, spec, self.allModels);
if (ret) {
var message = ret.message || 'An unexpected error has occurred';
var code = ret.code || 500;
res.send(JSON.stringify({
'message': message,
'code': code
}), code);
success = false;
return success;
}
});
}
if (success) {
callback(req, res, next);
}
As the middleware could literally be anything (additional validation of the request, additional error handling, adding object / properties to the req / res, etc.), I wanted to pass as much information to them as possible. As such, I chose the req and res of the request, followed by the spec of the method (so that someone could turn off a particular piece of middleware with an additional spec property, the middleware can access the spec to see the parameters or description or whatever, etc.), followed lastly by any models that are defined inside swagger.
This is similar, but implemented differently, to #87. This is all handled inside swagger, whereas #87 handles an array of actions.

+1

Closing as #207 will completely replace the implementation in this project.


Some issue with total number population with Action and / confirmed case numbers

Describe the bug
Some issue with total number population with Action and / confirmed case numbers
To Reproduce
Steps to reproduce the behavior:
for eg: Click on Karnataka
expand the table
calculated confirmed case +Active  + vaccine does administered.
number varies it cross more that 1 Cr but total population is 95.9 L
as on today 8/11 :
Expected behavior
Vaccine does Adminstered with population + confirmed case /Active case should tally
I can add few more details if required.

I believe the summation that you are trying to achieve doesn't include the mutually exclusive sets.
Wouldn't Confirmed Cases include the Active Cases?
Also what if a person was under the Confirmed Cases, then recovered and got the vaccine dose?


Added clone, first, and last methods from the jQuery API

I think I have this pull request configured right... to be honest, I'm not a github expert.

I feel like I have no idea what I'm doing, but I've changed the lien you've suggested


Remove sr300 wake up options

Please ensure the above guidelines for contributing are met.
Fixes Issue: Related to librealsense [PR 240] (https://github.com/IntelRealSense/librealsense/pull/240)
Changes proposed in this pull request:

Temporarily removed the Wake Up options for SR300
Updated the default values for SR300 camera options

@reaganlo As discussed, we should revert the changes to defaults for now.

@mdhorn Done

@mdhorn As discussed added it back again.

New defaults match multiple tested cameras with 3.10.xx firmware.
👍  Approved.


Splitting PR #197 into smaller pieces

This part includes:

Stricter type checks in unit tests
Addition of PyArrowSerializer

The goal is to find what causes systematic failure of python3.6 build on travis

Codecov Report

Merging #201 into master will decrease coverage by 0.21%.
The diff coverage is 83.33%.

@@            Coverage Diff             @@
##           master     #201      +/-   ##
==========================================
- Coverage   86.17%   85.95%   -0.22%
==========================================
  Files          68       69       +1
  Lines        3544     3568      +24
  Branches      532      535       +3
==========================================
+ Hits         3054     3067      +13
- Misses        391      399       +8
- Partials       99      102       +3

Impacted Files
Coverage Δ

petastorm/tf_utils.py
80.86% <0%> (-0.71%)
:arrow_down:

petastorm/reader_impl/shuffling_buffer.py
85.29% <0%> (ø)
:arrow_up:

petastorm/reader_impl/same_thread_executor.py
100% <100%> (ø)
:arrow_up:

petastorm/workers_pool/process_pool.py
90.3% <100%> (-1.17%)
:arrow_down:

petastorm/reader_impl/pyarrow_serializer.py
89.47% <89.47%> (ø)

petastorm/weighted_sampling_reader.py
92% <0%> (-4%)
:arrow_down:

petastorm/test_util/reader_mock.py
79.48% <0%> (-2.57%)
:arrow_down:

petastorm/reader_impl/worker_loop.py
94.31% <0%> (-2.28%)
:arrow_down:

petastorm/reader_impl/reader_v2.py
89.18% <0%> (-0.68%)
:arrow_down:

... and 2 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 3bb18f8...314fb07. Read the comment docs.


2024-12-18_05-47-34_master-next_aws-cli-v2

Automatically created.

Backport failed for kirkstone-next, because it was unable to cherry-pick the commit(s).
Please cherry-pick the changes locally and resolve any conflicts.
git fetch origin kirkstone-next
git worktree add -d .worktree/backport-10853-to-kirkstone-next origin/kirkstone-next
cd .worktree/backport-10853-to-kirkstone-next
git switch --create backport-10853-to-kirkstone-next
git cherry-pick -x 0fd8e962f1bd61a776c12518c3bf93975f8b1c13

Backport failed for scarthgap-next, because it was unable to cherry-pick the commit(s).
Please cherry-pick the changes locally and resolve any conflicts.
git fetch origin scarthgap-next
git worktree add -d .worktree/backport-10853-to-scarthgap-next origin/scarthgap-next
cd .worktree/backport-10853-to-scarthgap-next
git switch --create backport-10853-to-scarthgap-next
git cherry-pick -x 0fd8e962f1bd61a776c12518c3bf93975f8b1c13

Successfully created backport PR for styhead-next:

#10858


Revoke old certificates before generating new ones

Allow pem to revoke old certificates before generating new ones. Not standalone at the moment, they are revoked before generating new ones.
Flag name: revoke_old
PR #4814
Similar to #1754

@bre7 Hi! Hope you are doing well! I noticed that you don't have any tests on your PR. Can you add test coverage? Thanks! 👍

Hi Tk. I must say I'm really new to Ruby 😓 Not sure how to start with tests, any examples on the repo ?

Hi @bre7. Search for any spec files related to the attributes you added. Let me know how it goes! 👍

PR was closes by Krause since the implementation was too destructive. New PR should only revoke expired/about-to expire ? Using the same criteria as force ?

Any update on this? This is a pretty important missing feature for us

While I understand how destructive this can be, I would love to be able to implement this. We often want to renew all of our certificates en mass (even though some of them don't expire for 6+ months). Would love to have a --force-revoke option that will renew/revoke old certs even if they are 30+ days out. Perhaps having the two options of --force and --force-revoke (with the proper warnings / documentation) will serve everyone's purpose while protecting the average user from destroying certificates that he or she needs.

Plugins might be the way to go. I'm not sure how to separate the function to a plugin. The code it quite simple since it's already in PEM:
def revoke_old_certificates
        UI.important "Revoking existing Push Certificates."

          certificate.all.select { |crt| crt.name == PEM.config[:app_identifier] }.each { |crt| revoke(crt) }
      end


Follow References for traits

It'd be great if I could go to the trait definitions or see the definition of methods defined by traits. Also parent seeing the definition for method calls and $this method calls would also be amazing.
Examples:

This issue was moved to felixfbecker/php-language-server#331


Added LSET method,update switch and enum class

LSET method added to list

yes thank you for input, test are in the making


fix: edge case where request has invalid multiple values for same field

Reason for This PR
when http request has nested level of data then there will be panic in function mount of dataTree structure
Description of Changes
this PR make the mount function be able to handle such edge case. Test cases are provided in the PR
License Acceptance
By submitting this pull request, I confirm that my contribution is made under
the terms of the MIT license.
PR Checklist

[x] All commits in this PR are signed (git commit -s).
[x] The reason for this PR is clearly provided (issue no. or explanation).
[x] The description of changes is clear and encompassing.
[x] Any required documentation changes (code and docs) are included in this PR.
[x] Any user-facing changes are mentioned in CHANGELOG.md.
[x] All added/changed functionality is tested.

@tungfinblox Could you, please add comments on how this new algo works? I understand that there are not many changes, but it would be nice to document them. I'll review the PR early next week. Thanks a lot 👍🏻

I tried to test this change with our integrational tests (https://github.com/roadrunner-server/rr-e2e-tests), but the output is not the same. I'm not digging at the logic of the changes, but these tests also should be passed.
To check that, you may clone the repo with the e2e tests. Use replace in the go.mod to replace http plugin:
replace (
	github.com/roadrunner-server/http/v3 => ../plugins/http
)

Go to the php_test_files subfolder and execute composer u.
Then go to the plugins->http and run tests with the FormData name.

So, what particularly failed:
Previously, if you tried to add data to the form like:
	form.Add("key", "value")
	form.Add("key", "value2")

As a result, only value2 will be available.
But if you use a key[] syntax, both value and value2 will be available under the key.
After you change, there is no difference, key is the same as key[].

I tried to test this change with our integrational tests (https://github.com/roadrunner-server/rr-e2e-tests), but the output is not the same. I'm not digging at the logic of the changes, but these tests also should be passed.
To check that, you may clone the repo with the e2e tests. Use replace in the go.mod to replace http plugin:
replace (
	github.com/roadrunner-server/http/v3 => ../plugins/http
)

Go to the php_test_files subfolder and execute composer u.
Then go to the plugins->http and run tests with the FormData name.

So, what particularly failed:
Previously, if you tried to add data to the form like:
	form.Add("key", "value")
	form.Add("key", "value2")

As a result, only value2 will be available. But if you use a key[] syntax, both value and value2 will be available under the key.
After you change, there is no difference, key is the same as key[].

Hey I've just reverted what caused that.

Great, thanks 👍🏻

Hey @tungfinblox 👋🏻
rr-e2e-tests tests are still failing. Could you please update a description with an ample reason for this PR (with an explanation)? I'm sorry, but I still don't understand what case led to a panic (no description) and what you did to resolve that.

Hey :wave:
Sorry that I didn't took care of the old test cases. I've just fixed them now.
About the comment, I tried to put it above the mount method but maybe it's not clear enough.

Basically what I did is ignore empty value of a key in dataTree structure to handle the edge case that we got when using Laravel Backpack. In Go code it's something like this that will cause old code to panic:
	form := url.Values{}
	form.Add("arr", "")
	form.Add("arr[x][y][z]", "y")
	form.Add("arr[x][y][e]", "f")

I hope that is clearer for you now. Feel free to ask more question so that I can explain more.

Ah, sorry, it should be all arr. Now I see 😃

Thanks @tungfinblox 👍🏻


add regenerator-runtime to fix bugs about babel >= 7.5.0

I had a error about regeneratorRuntime is not defined in dist/index.js of this module. I want fixed add core-js: stable version (I think this will help) and regenerator-runtime: stable-version. If you think this update will fix the bug, please try it and merge it. If you want conctact me, you can text me to<EMAIL_ADDRESS>or @KingBousing in Twitter. Greeting from Venezuela

Hi, would be best if you can start a new issue and link it to this PR. Thanks.

Is this being considered? I'm currently getting this error as well.

I'm on it.

I'm not getting this error. You'll have to post a repro.

If this issue persists, please open an issue and we'll continue from there.


cannot get ansible backend running

Hi,
trying to run a simple test via ansible:
testinfra --connection=ansible --ansible-inventory=/etc/ansible/hosts --hosts=test -v pakete.py
if run locally it works.
if run via ansible I always get following error:
RuntimeError: host unreachable: {'msg': u'SSH Error: data could not be sent to the remote host. Make sure this host can be reached over ssh', 'unreachable': True, 'changed': False}
if i try to run ansible on this host i get no error:
ansible test -m ping
XXXX | SUCCESS => {
"changed": false,
"ping": "pong"
}
ansible <IP_ADDRESS>
config file = /etc/ansible/ansible.cfg
configured module search path = /etc/ansible/roles/
This is py.test version 2.5.1, imported from /usr/lib/python2.7/dist-packages/pytest.pyc
setuptools registered plugins:
testinfra-1.0.2 at /usr/local/lib/python2.7/dist-packages/testinfra/plugin.pyc
Thanks :-)

Hi, can you paste your ansible.cfg and inventory ?

Hi,
ansible.cfg (only differences from default):
[defaults]
inventory      = /etc/ansible/hosts
gathering = explicit
host_key_checking = False
remote_user = orc
private_key_file = /root/orc_rsa
retry_files_enabled = False
[privilege_escalation]
become_ask_pass=True
[ssh_connection]
pipelining = True
inventory:
[test]
pod1-bl1.system.rot.hybris.com
in the mean time it set up an ansible with version 1.9.4 - works without problems
so it looks like thats a problem with version 2 of ansible

Hi, did you resolve your issue ? I cannot reproduce it, I think something is wrong in your setup but the relevant error message is hidden somewhere. If you feel enough confident with python you can debug the ansible code in testinfra/utils/ansible_runner.py. Also calling testinfra with -vvs will output more informations about what testinfra is doing.

Hi, i resolved the issue by downgrading the ansible version to 1.9
unfortunately i do not have version 2 running any more so i do not have the possibility to debug. sorry.

was eager to test again. upgraded ansible to v<IP_ADDRESS>. kept the old configs and tried to run testinfra - no problems. so looks like my old setup was wrong. sorry for the inconvinience and thank you for the help.


best practice for injecting dependency into activities

The activity is very easy when it is self contained (i.e. send an http request, manipulate a string etc). What is the best practice to inject dependencies into these activities (i.e. injecting a db client so that an activity can update a db entry)?
i.e.
func init() {
	activity.Register(Activity)
}

func Activity(ctx context.Context, status string) error {
	// need instance of dbClient
        dbClient.updateStatus(status)
	return nil
}

To get instance of dbClient, I can

store the dbClient globally under a singleton or something, but I'm trying to avoid globals.
construct the client in the activity, but that means I'm reconstructing the client over and over again

What is the best practice for this? It feels like I'm missing something important since this should be a very common use case (sorry I'm new to Go, so maybe there is something language-specific to this solution).

You can pass anything your activity needs via the context to your activity.
Here is how it works:

Before you start your worker, set whatever you need as value to a context (below code happen at where you setup your worker):

    myThriftClient := ... // create my thrift client
    myContext := context.WithValue(context.Background(), "my_thrift_client", myThriftClient)

Use the context created in step1 as BackgroundActivityContext of the worker options that you use to start your worker:

    workerOptions := cadence.WorkerOptions{
		MetricsScope:          myScope,
		Logger:                myLogger,
		BackgroundActivityContext: myContext,
	}
    worker := cadence.NewWorker(service, domain, taskList, workerOptions)

In your activity code, retrieve your thrift client from the context:

    func MyActivity(ctx context.Context) error {
      myThriftClient := ctx.Value("my_thrift_client").(ThriftClient)
      // now you can make thrift calls using myThriftClient
    }

Really appreciate the detailed response @mfateev !


PSR-2 - lower case constants

As in PSR-2 defined, PHP constants should be lower case. So we have to remove the <exclude name="Generic.PHP.LowerCaseConstant" /> from our ruleset.

Done with https://github.com/inpsyde/php-coding-standards/commit/e150a7f3a0a008e2de5b542b08b9688be75cc22f


C# build flake: failure to fetch dotnet SDK on Windows

Log snippet:
dotnet-install: Downloading primary link https://dotnetcli.azureedge.net/dotnet/Sdk/2.1.504/dotnet-sdk-2.1.504-win-x64.zip
dotnet-install: Unable to download https://dotnetcli.azureedge.net/dotnet/Sdk/2.1.504/dotnet-sdk-2.1.504-win-x64.zip.
dotnet-install: Downloading legacy link https://dotnetcli.azureedge.net/dotnet/Sdk/2.1.504/dotnet-dev-win-x<IP_ADDRESS>4.zip
dotnet-install: The resource at https://dotnetcli.azureedge.net/dotnet/Sdk/2.1.504/dotnet-dev-win-x<IP_ADDRESS>4.zip is not available.
T:\src\github\grpc\src\csharp\install_dotnet_sdk.ps1 : Could not download

".NET Core SDK" with version = 2.1.504

An error occurred while sending the request.

Unable to connect to the remote server

A connection attempt failed because the connected party did not properly

respond after a period of time, or established connection failed because

connected host has failed to respond <IP_ADDRESS>:443

    + CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorExcep

   tion

    + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorExceptio

   n,install_dotnet_sdk.ps1

T:\src\github\grpc>exit /b 1

[ID: 1491971] Build finished after 138 secs, exit value: 1

Warning: Permanently added 'localhost' (ECDSA) to the list of known hosts.

From https://source.cloud.google.com/results/invocations/d1bd4a27-7c25-4dba-9cdc-aa16010a9f72/targets/grpc%2Fcore%2Fpull_request%2Fwindows%2Fgrpc_basictests_csharp/log
Seen in https://github.com/grpc/grpc/pull/25108

Are these flakes still happening?

I think they do, but they are relatively rare.

Closing as this issue is currently not actionable.


Type 'User' does not conform to protocol 'DefaultsSerializable'

Xcode 13.3
macOS Monterey 12.3.1
M1

https://github.com/sindresorhus/Defaults/blob/main/workaround.md
This is fixed in Xcode 14.

Thank you, solved!


Epic: Streamline and publish build process

Some pipelines like for example some buildpack pipelines and stemcell building run internally. They should be publicly available.
Build failures on OBS often stay unnoticed so monitoring or mail notification should be put in place to not miss any issues.
The SLE parts should be updated from SLE 15 SP1 to SP2.
Acceptance criteria

[ ] All product related pipelines are publicly visible
[ ] No confidential information is visible without login in the pipelines
[ ] Build failures in any step result in a notification
[ ] Every SLE part is updated to SLE15 SP2
[ ] All dependencies are up to date and links point to openSUSE Leap 15.2
[ ] The Cloud:Platform OBS subproject provides only actively used projects and packages

@thardeck we need to breakdown in multiple independent issues so it can be tackle in different moments and by other team members.


No iOS8 solution for pinning views to top/bottomLayoutGuide

New Issue Checklist

[x] I have filled out this issue template.
[x] I have looked at the Documentation
[x] I have read the F.A.Q.

Issue Info

Info
Value

Platform
ios

Platform Version
8.0

SnapKit Version
3.0.1

Integration Method
cocoapods/

Issue Description
In v0.21.0 it was possible to make constraints by pinning them to the bottom of the topLayoutGuide like this:
view.snp_makeConstraints { make in
        make.top.equalTo(viewController.topLayoutGuideBottom)
}

This has been removed in fc298ae and replaced with UILayoutGuide but there is no replacement for iOS8 since topLayoutGuide is only available in iOS9+:
view.snp_makeConstraints { make in
        make.top.equalTo(topLayoutGuide.snp.bottom)
}

@tomquist Ack, sorry I've left out the UIViewController DSL from the 3.0.0 release. I'll try and get this added back in by end of next week.

@robertjpayne that would be great. I use those all the time

@robertjpayne if you want to give a couple of first steps, I'm sure we could get a PR going.

@sahandnayebaziz you can look at ConstraintViewDSL and ConstraintLayoutGuideDSL you're basically going to want to implement a ConstraintViewControllerDSL.
Please make sure it's only available on iOS/tvOS though.

Hi @tomquist
Are you sure that topLayoutGuide is only available in iOs 9+ the documentation says iOS 7.0+.
Reference:
topLayoutGuide
bottomLayoutGuide

Yea actually @tomquist did you actually try this? I was just going to implement this but I believe it's unecessary.
You should be able to do:
self.container.snp.makeConstraints { (make) -> Void in
  make.top.equalTo(vc.topLayoutGuide.snp.bottom)
  make.bottom.equalTo(vc.bottomLayoutGuide.snp.top)
}

In iOS 8+ via SnapKit. The name is confusing it's actually UILayoutSupport rather than a UILayoutGuide.

Closing this as I believe it's no longer an issue and resolved by above comment ^^

Did't work for me, when I use navigationController. It's start from screen bottom, and my code
    func loadWebView() -> Void {
        let webConfiguration = WKWebViewConfiguration()
        webView = WKWebView(frame: .zero, configuration: webConfiguration)
        webView.uiDelegate = self
        view.addSubview(webView)

        webView.snp.makeConstraints { (maker) in
            maker.left.right.equalTo(view)
            maker.top.equalTo(topLayoutGuide.snp.top)
            maker.height.equalTo(300)
        }

        let myURL = URL(string: "http://bbs.iosre.com/")
        let myRequest = URLRequest(url: myURL!)
        webView.load(myRequest)
    }

and show me

@jacinzhang maker.top.equalTo(topLayoutGuide.snp.top) should probably be maker.top.equalTo(topLayoutGuide.snp.bottom)?

@robertjpayne  thanks, I'm careless.


fuel.sh claim issue fixed myself it was not cloudfire...

please change 132 line in fuel.sh to
xpath = '//*[@id="app"]/div/div[2]/div[3]/button'

we dont have something in line 132

we dont have something in line 132

134

Hi,
I don't think your solution is particularly addressing the Cloudflare issue, which doesn't seem to be triggering the "click to prove you are human" prompt in the GUI at the moment anyway. As mentioned in other responses, Cloudflare comes at a cost, and projects that use it often turn it on and off as needed.
Using a rigid XPath such as //*[@id="app"]/div/div[2]/div[3]/button can be problematic because any change in the document structure can invalidate your XPath. Instead, using a more flexible approach like //button[contains(text(), 'Send to warehouse')] identifies the same element based on its text content. This method is less likely to break if the document structure changes, making the script more robust and maintainable.
For these reasons, we won't be changing the code. However, you are welcome to modify it in any way you wish if you find that it works better for your specific case.
Thanks for your understanding.


Add IDNIC/Kadabra as user to Cilium

Please ensure your pull request adheres to the following guidelines:

[ ] For first time contributors, read Submitting a pull request
[ ] All code is covered by unit and/or runtime tests where feasible.
[ ] All commits contain a well written commit description including a title,
description and a Fixes: #XXX line if the commit addresses a particular
GitHub issue.
[ ] If your commit description contains a Fixes: <commit-id> tag, then
please add the commit author[s] as reviewer[s] to this issue.
[x] All commits are signed off. See the section Developer’s Certificate of Origin
[ ] Provide a title or release-note blurb suitable for the release notes.
[ ] Are you a user of Cilium? Please add yourself to the Users doc
[ ] Thanks for contributing!

Fixes: #issue-number
<!-- Enter the release note text here if needed or remove this section! -->

Looks like my formatter did some formatting, please let me know if this shouldn't be expected.

Thanks for the addition @ardikabs ! Would you be interested in doing a case study for the CNCF about how you use Cilium? We would just need 30 minutes for an interview and you can see some examples here https://www.cncf.io/case-studies/?_sft_lf-project=cilium


Add an API call that returns configuration details, including reasoner

reasoner + approach in use (arachne, slme+elk, etc) (easy)
list of ontologies in import chain, plus versionIRIs (easy)
stats on average reasoner invocation time, number of invocations (will take a bit of extra work)

The noctua client can simply get this as a json blob through barista and display as a json blob for debugging, no fanciness necessary

Honestly, I'd prefer not having an API call for the versioning, but rather add it to the current "--version" information.
For the live stats, it would be nice to follow the same pattern as:
http://barista.berkelybop.org/status
http://noctua.berkeleybop.org/status

Should we make a swagger definition for these? Not clear what kicks are

Just toy demonstration toy.

A swagger definition could be made, but it wouldn't be usable without a fair change in plumbing for the three components as they are not written up from swagger tooling.

As well, these are not particularly supposed to be public rest APIs, but rather programming APIs.

swagger can be authored directly rather than generated from inline annotations.
Long term goal: all web APIs should have operations and payloads documented using a standard framework, e.g. openAPI/swagger.

I'd agree in principle for end-user APIs (e.g. AmiGO, Biolink)--I think it's a great idea and solid format. That said, I think there are some important caveats.
First, I think this makes less sense for programming (I do there there is a distinction) and diagnostic "APIs" (e.g. minerva line or something that is intended for nagios to consume).
As well, and unfortunately I cannot find an issue to reference, there is overhead for bolting these things on after the fact. The tooling for JS (as of December when I tried to apply the node/express version to the amigo api) is very weak and has serious issues for after-the-fact adoption, being really tooled to be used within their larger swagger/express framework. The python environment (at that point) seemed much more mature and flexible in this regard; I have no idea about java.
Now, all that said, it depends on what we are trying to accomplish. It would seem to be that need a way for minerva to report what is loaded, the reasoner, and the code point largely for debugging--I'd think these are probably not generally useful, so having them available from the command line (possibly invoked for the noctua client to pick up) would be fine.
The reasoner usage might be useful for tying things back to load in nagios and graylog, so it may be that we'd want to actually have that in something simple for the former or just directly in the logging.

http://noctua-dev.berkeleybop.org:6800/status

@goodb Truly lovely.

Moving this straight to "Done" so as not to confuse @vanaukenk

@kltm @cmungall @goodb
Do you think we can close this ticket?  Thx.

@kltm regarding yesterday discussion on a standalone landing page, seems like it could use those configs too as runtime variables

@lpalbou The runtime environment is not currently available there. We can continue using the current infrastructure for now and revisit it when we start doing larger refactors.


Ability to switch between \n new lines instead of \r\n on Windows

I see this has been addressed before but does not appear to be implemented yet:
https://github.com/adobe/brackets/issues/10095
https://github.com/adobe/brackets/issues/12995
https://github.com/adobe/brackets/pull/13152
https://github.com/adobe/brackets/issues/10106
Any feedback on this guys, I am currently forced to use notepad++ because brackets default to CR LF instead I want the default to be UNIX's line endings LF since the majority of PHP projects built with brackets on a Windows client, will run on a UNIX system.

I was having the same problem. Search for "Newline" in the extensions and install (probably the first extension). You will see in the botton, right side, a new option to change between CRLF and LF. Worked for me.

@rfrozza That worked like a bomb, for now, the workaround will have to do. Thank you very much.


respect installed multilanguage middleware

do redirect if we have a real hit, but do never auto create redirects when url does not start with a language slug (ie /de/ or /en/ or /en-us/ - must be in LANGUAGES, though). as the middleware will redirect to /lang/original-404-maybe/ anyway, and we will fetch it then!

also: tests!

see also #16 #2

revised opinion: still auto create redirects, only dont for /! let's see how this goes

revised opinion: still auto create redirects, only dont for /! let's see how this goes

0.4.1!

0.4.1!


added logging in place of (most) print statements

probably needs to wait until the docs are merged.

Closes #36.


SECURITY: Assert that no one else can hijack/override the RS connection

It's only the USER who launched rsc who can login
Since we're using su to authenticate, it's only the USER with their password who can login to the RStudio Server

Another scenario is where user alice authenticate a http://:.  Now, if user bob would access http://:, they would get the authentication screen.  And, because it's only USER who can login in, bob would never be able to login as themself.


Created one responsive navbar with logo and search bar with search algorithm #22

Pull Request Description
Overview
This pull request introduces a new Navbar component to the application. The Navbar includes a logo and a search box, enhancing the user interface and allowing users to search for specific algorithms.
Features

Navbar Component: A responsive navigation bar with the following features:

Logo: Displays the application logo.
Search Box: Allows users to input search terms related to algorithms (e.g., "bubble sort", "merge sort").
Routing: Implements routing functionality that directs users to the relevant algorithm page based on the search term entered.

Implementation Details

The search functionality checks if the entered term matches specific keywords associated with algorithms, allowing for partial matches (e.g., "bubble" will redirect to the Bubble Sort page).
Enhanced UI with a gradient background and styled input fields for better user experience.

Screenshots
)

why did you added merge sort?
It is assigned to another person

okk

removed mergesort algorithm please accept my new PR


error: Found argument 'file.fastq' which wasn't expected, or isn't valid in this context

Wanted behavior: Run chopper directly on input files

I noticed that I can run chopper in a pipe like this:
cat file.fastq | chopper --minlength 1350 --maxlength 1600 --quality 10 > test.fastq

But it seems I cannot run it directly on the file like this:
chopper --minlength 1350 --maxlength 1600 --quality 10  file.fastq> test.fastq

Resulting in:
error: Found argument 'file.fastq' which wasn't expected, or isn't valid in this context

Maybe you could consider adding this functionality to make the use of this tool more straightforward?

Hi,
Yes, that would be possible, I will put your request on the list :-)
Wouter

Any progress on this? :)

I can't implement chopper in my pipeline. I've tried piping with subprocess.Popen, but get the same error.

That should work, in principle. Which (python?) code leads to that error?

My bad. I found a mistake in my code.
It seems to work doing this:
input1 = 'barcode37.fastq'
cmd_cat = ['cat', input1]
fastq = subprocess.Popen(cmd_cat, stdout=subprocess.PIPE)

cmd_chopper = ['chopper', '-l', '1','-q', '3','--headcrop', '30', '--tailcrop', '30', '--threads', '12']

reads_trim = open('test.fastq', 'w')
chopper = subprocess.Popen(cmd_chopper, stdin=fastq.stdout, stdout=reads_trim)

It seems like you are reinventing a workflow system like snakemake. Maybe that solves the needs that you try to take care of in your python code.
I can also recommend the python shlex module, which you could use to avoid splitting the arguments in a list:
import shlex
cmd_chopper = shlex.split('chopper -l 1 -q 3 --headcrop 30 --tailcrop 30 --threads 12')

@wdecoster Any update of this issue? I also found this property to be very useful. If you agree, I would be happy to implement this feature and make a PR.

Oh, that would be great! :)

Implemented thanks to @JMencius! I will make a new release soon.


VM stuck at cloud-init running "init-local"

I was following your video on creating a ubuntu template with cloud-inti on proxmox using packer but ran into this issue -

The VM doesn't proceed further than this an the script is still waiting for SSH to be accessible

Have you faced this issue or do you possibly know of any fix ? Any help is appreciated

I am facing the same issue for ubuntu focal with exactly the same error messages. Unfortunately, I have not found a solution myself yet. Mainly because I have no idea how to debug this.

If I am trying to use 22.04 jammy, I get stuck at the following screen:

In both cases, packer stops at Waiting for SSH to become available... until it eventually times out.

Can you guys share the logs of your machines and user-data conf?

Absolutely! For user-data, I only changed the user to ubuntu and set the password to ubuntu:
#cloud-config
autoinstall:
  version: 1
  locale: en_US
  keyboard:
    layout: de
  ssh:
    install-server: true
    allow-pw: true
    disable_root: true
    ssh_quiet_keygen: true
    allow_public_ssh_keys: true
  packages:
    - qemu-guest-agent
    - sudo
  storage:
    layout:
      name: direct
    swap:
      size: 0
  user-data:
    package_upgrade: false
    timezone: Europe/Berlin
    users:
      - name: ubuntu
        groups: [adm, sudo]
        lock-passwd: false
        sudo: ALL=(ALL) NOPASSWD:ALL
        shell: /bin/bash
        passwd: $6$exDY1mhS4KUYCE/2$zmn9ToZwTKLhCw.b4/b.ZRTIZM30JZ4QrOQ2aOXJ8yk96xpcCof0kxKwuX1kqLG/ygbJ1f8wxED22bTL4F46P0

How can I send you the server logs? Since I do not get any further, there is no SSH connection set up yet.

@davosian have you found any fix for it ?

I've got the same error, I was trying with ssh username and password auth for the ubuntu jamy. I switch to ssh key auth and it works.
In user-data
#cloud-config
autoinstall:
  version: 1
  locale: en_US
  keyboard:
    layout: en
  ssh:
    install-server: true
    allow-pw: true
    disable_root: false
    ssh_quiet_keygen: true
    allow_public_ssh_keys: true
  packages:
    - qemu-guest-agent
    - sudo
  storage:
    layout:
      name: direct
    swap:
      size: 0
  user-data:
    package_upgrade: false
    timezone: Europe/Paris
    users:
      - name: ubuntu
        groups: [adm, sudo]
        lock-passwd: false
        sudo: ALL=(ALL) NOPASSWD:ALL
        shell: /bin/bash
        #passwd: test
        # - or -
        ssh_authorized_keys:
         - ssh-rsa AAAAB3Nz.......

In ubuntu-server-jammy-docker.pkr
   ssh_username = "ubuntu"

    # (Option 1) Add your Password here
    #ssh_password = "${var.vm_ssh_password}"
    # - or -
    # (Option 2) Add your Private SSH KEY file here
    ssh_private_key_file = "~/.ssh/id_rsa"

    # Raise the timeout, when installation takes longer
    ssh_timeout = "30m"

I hope that it will fix your issue.

Hi @EsharkyTheGreat & @davosian
I had the similar issues and it helped me to set the following options:
https://github.com/xcad2k/boilerplates/blob/de7670a9068201b2eb5316ee539ca4446ca10cff/packer/proxmox/ubuntu-server-jammy/ubuntu-server-jammy.pkr.hcl#L90-L93
After settings these options it was a firewall blocking in my home lab. Maybe this helps finding the issue.

Thanks a lot for the tip @dortlii . Will have to give it another shot 👍

Check if you can get a DHCP lease.
Also, for me it worked some time ago from my Mac, now, since I got Ventura, even though the HTTP server starts, it seems it does not reach it. I installed a Ubuntu machine in Proxmox and build the images from there.

Most likely these types of issues are network issues, @EsharkyTheGreat can you comment if this is still an issue?

Issue gone cold.

This is also an issue for me. I don't know how to show the debug logs, but this is all i got from it:
ubuntu-server-focal-test-1.proxmox.ubuntu-server-focal-test-1: output will be in this color.

==> ubuntu-server-focal-test-1.proxmox.ubuntu-server-focal-test-1: Creating VM
==> ubuntu-server-focal-test-1.proxmox.ubuntu-server-focal-test-1: Starting VM
==> ubuntu-server-focal-test-1.proxmox.ubuntu-server-focal-test-1: Starting HTTP server on port 8366
==> ubuntu-server-focal-test-1.proxmox.ubuntu-server-focal-test-1: Waiting 5s for boot
==> ubuntu-server-focal-test-1.proxmox.ubuntu-server-focal-test-1: Typing the boot command
==> ubuntu-server-focal-test-1.proxmox.ubuntu-server-focal-test-1: Waiting for SSH to become available...
==> ubuntu-server-focal-test-1.proxmox.ubuntu-server-focal-test-1: Timeout waiting for SSH.
==> ubuntu-server-focal-test-1.proxmox.ubuntu-server-focal-test-1: Stopping VM
==> ubuntu-server-focal-test-1.proxmox.ubuntu-server-focal-test-1: Deleting VM
Build 'ubuntu-server-focal-test-1.proxmox.ubuntu-server-focal-test-1' errored after 20 minutes 21 seconds: Timeout waiting for SSH.

==> Wait completed after 20 minutes 21 seconds

==> Some builds didn't complete successfully and had errors:
--> ubuntu-server-focal-test-1.proxmox.ubuntu-server-focal-test-1: Timeout waiting for SSH.

==> Builds finished but no artifacts were created.

this is also my current user-data file:
#cloud-config
autoinstall:
  version: 1
  locale: en_US
  keyboard:
    layout: us
  ssh:
    install-server: true
    allow-pw: true
    disable_root: true
    ssh_quiet_keygen: true
    allow_public_ssh_keys: true
  packages:
    - qemu-guest-agent
    - sudo
  storage:
    layout:
      name: direct
    swap:
      size: 0
  user-data:
    package_upgrade: false
    timezone: Asia/Manila
    users:
      - name: cindrmon
        groups: [adm, sudo]
        lock-passwd: false
        sudo: ALL=(ALL) NOPASSWD:ALL
        shell: /bin/bash
        # passwd: your-password
        # - or -
        ssh_authorized_keys:
          - <my_public_key>

and my ubuntu-server-focal.pkr.hcl file:
# Ubuntu Server Focal
# ---
# Packer Template to create an Ubuntu Server (Focal) on Proxmox
# From Christian Lempa: https://github.com/ChristianLempa/boilerplates/blob/main/packer/proxmox/ubuntu-server-focal/ubuntu-server-focal.pkr.hcl

# Variable Definitions
variable "proxmox_api_url" {
    type = string
}

variable "proxmox_api_token_id" {
    type = string
}

variable "proxmox_api_token_secret" {
    type = string
    sensitive = true
}

# Resource Definition for the VM Template
source "proxmox" "ubuntu-server-focal-test-1" {

    # Proxmox Connection Settings
    proxmox_url = var.proxmox_api_url
    username = var.proxmox_api_token_id
    token = var.proxmox_api_token_secret
    insecure_skip_tls_verify = true

    # VM General Settings
    node = "proxmox"
    vm_id = "998"
    vm_name = "ubuntu-server-focal-test-1"
    template_description = "Ubuntu Server Focal Image"

    # VM OS Settings
    # (Local ISO)
    iso_file = "local:iso/ubuntu-20.04.5-live-server-amd64.iso"
    iso_storage_pool = "local"
    # or (Download ISO)
    // iso_file = "https://www.releases.ubuntu.com/focal/ubuntu-20.04.5-live-server-amd64.iso"
    // iso_checksum = "5035be37a7e9abbdc09f0d257f3e33416c1a0fb322ba860d42d74aa75c3468d4"
    unmount_iso = true

    # VM System Settings
    qemu_agent = true

    # VM Hard Disk Settings
    scsi_controller = "virtio-scsi-pci"

    disks {
        disk_size = "10G"
        // format = "qcow2"
        storage_pool = "local-lvm"
        storage_pool_type = "lvm"
        type = "scsi"
    }

    # VM CPU Settings
    cores = "1"

    # VM Memory Settings
    memory = "1024"

    # VM Network Settings
    network_adapters {
        model = "virtio"
        bridge = "vmbr0"
        firewall = false
    }

    # VM Cloud-Init Settings
    cloud_init = true
    cloud_init_storage_pool = "local-lvm"

    # PACKER Boot Commands
    boot_command = [
        "<esc><wait><esc><wait>",
        "<f6><wait><esc><wait>",
        "<bs><bs><bs><bs>",
        "autoinstall ds=nocloud-net;s=http://{{ .HTTPIP }}:{{ .HTTPPort }}/ ",
        "--- <enter>"
    ]
    boot = "c"
    boot_wait = "5s"

    # PACKER AutoInstall Settings
    http_directory = "http"

    ## (Optional) Bind IP Address to Port
    // http_bind_address = "<IP_ADDRESS>"
    // http_bind_address = "<IP_ADDRESS>"
    // http_port_min = 8802
    // http_port_max = 8802

    ssh_username = "cindrmon"

    ## Option 1) Add Your Own Password
    # ssh_password = ""

    ## or Option 2) Add Private SSH Key
    ssh_private_key_file = "~/.ssh/ubuntuserver_lzh"

    # Raise the timeout, when installation takes longer
    ssh_timeout = "20m"
}

build {

    name = "ubuntu-server-focal-test-1"
    sources = ["source.proxmox.ubuntu-server-focal-test-1"]

    # Provisioning Cloud-Init Integration
    ## 1) Post-Install
    provisioner "shell" {
        inline = [
            "while [ ! -f /var/lib/cloud/instance/boot-finished ]; do echo 'Waiting for cloud-init...'; sleep 1; done",
            "sudo rm /etc/ssh/ssh_host_*",
            "sudo truncate -s 0 /etc/machine-id",
            "sudo apt -y autoremove --purge",
            "sudo apt -y clean",
            "sudo apt -y autoclean",
            "sudo cloud-init clean",
            "sudo rm -f /etc/cloud/cloud.cfg.d/subiquity-disable-cloudinit-networking.cfg",
            "sudo sync"
        ]
    }

    ## 2) Cleanup
    provisioner "file" {
        source = "files/99-pve.cfg"
        destination = "/tmp/99-pve.cfg"
    }

    ## 3) Preperation
    provisioner "shell" {
        inline = [ "sudo cp /tmp/99-pve.cfg /etc/cloud/cloud.cfg.d/99-pve.cfg" ]
    }
}

I just troubleshooted this issue, and for me it was probably networking. I initially thought I could run the script from my windows desktop and target the proxmox server I have running in my homelab on the same network. However, I was using WSL and I think it NATs a different IP space than what the host uses. I ended up running an LXC debian container on proxmox and installing packer there along with the scripts needed. Worked instantly on the first try.


bayeslite dependency on pexpect is missing from readme

Perhaps the readme should refer people to setup.py for the up-to-date list of dependencies?

It should be put in setup.py tests_require.  I probably didn't notice
that it wasn't part of the standard CPython distribution.

Fixed in ca1029312431fd87cd5634a71537bdf2864aefd5.


Test building libm5.a

https://github.com/jlpteaching/comparch/blob/44628b364568d5216c892bc022432e799237c51e/modules/gem5/_posts/2000-03-01-assignment2.md#L83

I'm not sure the directions to build libm5.a will work generally. I think you should specifically specify the libm5.a target.

I was confused.


Update version number for #284

The code in this repository supports the latest version of rescript, which is 10, but the npm version has not been updated because the version number has not changed.

This PR should be reviewed and accepted.


Styling fixes for UI components

Here are a couple of styling issues noticed on the UI components:

[ ] The styles for detail links should have better contrast and match better with different backgrounds
[ ] It would be great if calls to action were more button-like
[ ] The color of description text, should be closer to grey, instead of blue, to fit better with each style of notifications
[ ] The pagination indicators don't have enough contrast on banner notifications
[ ] Consider adding some sort of transition when the bell closes/opens
[ ] The animation for banners is a bit jarring, and not consistent between left and right
[ ] The animation for floating notifications is not consistent between left and right
[ ] There could be more padding in notifications on larger devices

:rocket: Issue was released in v0.7.0 :rocket:


dont work with LargeMotor on ev3

I use the jessie 2015-30-12. And i cannot work with LargeMotor. The brick start normally, update are ok, python3.4 is ok.
`import ev3
from ev3 import lego
from ev3.lego import LargeMotor
Left=LargeMotor('outA')
Traceback (most recent call last):
File "", line 1, in
File "build/bdist.linux-armv5tejl/egg/ev3/lego.py", line 211, in init
File "build/bdist.linux-armv5tejl/egg/ev3/ev3dev.py", line 334, in init
ev3.ev3dev.NoSuchMotorError: No such motor port=outA type=lego-ev3-l-motor>`

ping @ddemidov: does this look like your old ev3dev-lang-python?

does this look like your old ev3dev-lang-python?

No. It does look like topikachu/python-ev3 though. @Hchristian, it looks like you have the wrong library. You need to either open the issue in python-ev3 repo, or install this library (see here for instructions).


View mode doesn't work when switching boards

I have just installed this wonderful extension on Firefox and noticed that View Mode doesn't work when I switch boards.
And it would also be nice to have an option to collapse individual list instead of all.
Browser ver: 69.0b5 (64-bit) & 70.0a1(64-bit)
Extension: Installed from AMO

Hello, sorry for delay in response but I'm on vacations :)
Thank you for report issue.
I can reproduce the first one with "view mode". I'll try fix it in the next version.
But I don't understand the second one. Can you describe it more specific? Triangle on left of the list title, should collapse only one list.
Best regards.

Hi,
Thank you for your response. I hope you are enjoying your vacation!
Actually when I am trying to collapse any particular list, all the lists collapse. You can see it happening in this screencast. I am using Firefox Developer Edition in the shared screencast.

I cannot reproduce this. I've checked this on my FF Developer Edition 69.0b8 (64-bit), and it work on my machine :D
Do you have any other extensions or scripts for Trello? Or maybe some others extensions that can changing page content like Adblock? Can you disable them, refresh trello page and try again?

hmm, okay, let me check with a new clean Firefox profile

Okay, so I have found the issue, it is not related to any other extension. It happens only when I enable Content Blocking and set Cookies field to All third-party cookies

Ok, thanks for help in the problem detection :)
I'll try look at this as on the first issue.

Hello, I've fixed the first bug, and publish new version. But the second one is pretty annoying...
I need lists ids to know which ones should I hide. To do this, I making ajax to Trello to get those ids, but when you block cookies, this ajax return a error 401... I didn't found any easy solution for this :(
I'll not close issue to keep this in mind, maybe next time I'll find solution.
Best regards.


invalid hook call

It gives this error when I run it:
Uncaught Error: Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:

You might have mismatching versions of React and the renderer (such as React DOM)
You might be breaking the Rules of Hooks
You might have more than one copy of React in the same app.

i use react 18 .

@ehsan-esfahani76 Can you move this issue to my forked version of this repository? https://github.com/cyntler/react-doc-viewer

I also have the same Error but I use React v.17.0.1

I am receiving the same error. I am using React v.18.1.0. Any suggestions are very much appreciated.

Any updates? The same issue on React v.17.0.2

@ShlemenKirill @clio001 @evgen-kent Does this problem also occur at this fork: https://github.com/cyntler/react-doc-viewer? Please check it.

@ShlemenKirill @clio001 @evgen-kent Does this problem also occur at this fork: https://github.com/cyntler/react-doc-viewer? Please check it.

That specific problem does not but I do get the following error:
DocumentNav.js?a1f2:16 Uncaught TypeError: Cannot read properties of undefined (reading 'split')
    at DocumentNav (DocumentNav.js?a1f2:16:1)
    at renderWithHooks (react-dom.development.js?ac89:16175:1)
    at mountIndeterminateComponent (react-dom.development.js?ac89:20913:1)
    at beginWork (react-dom.development.js?ac89:22416:1)
    at HTMLUnknownElement.callCallback (react-dom.development.js?ac89:4161:1)
    at Object.invokeGuardedCallbackDev (react-dom.development.js?ac89:4210:1)
    at invokeGuardedCallback (react-dom.development.js?ac89:4274:1)
    at beginWork$1 (react-dom.development.js?ac89:27405:1)
    at performUnitOfWork (react-dom.development.js?ac89:26513:1)
    at workLoopSync (react-dom.development.js?ac89:26422:1)
DocumentNav @ DocumentNav.js?a1f2:16
renderWithHooks @ react-dom.development.js?ac89:16175
mountIndeterminateComponent @ react-dom.development.js?ac89:20913
beginWork @ react-dom.development.js?ac89:22416
callCallback @ react-dom.development.js?ac89:4161
invokeGuardedCallbackDev @ react-dom.development.js?ac89:4210
invokeGuardedCallback @ react-dom.development.js?ac89:4274
beginWork$1 @ react-dom.development.js?ac89:27405
performUnitOfWork @ react-dom.development.js?ac89:26513
workLoopSync @ react-dom.development.js?ac89:26422
renderRootSync @ react-dom.development.js?ac89:26390
performConcurrentWorkOnRoot @ react-dom.development.js?ac89:25694
workLoop @ scheduler.development.js?bcd2:266
flushWork @ scheduler.development.js?bcd2:239
performWorkUntilDeadline @ scheduler.development.js?bcd2:533
DocumentNav.js?a1f2:16 Uncaught TypeError: Cannot read properties of undefined (reading 'split')
    at DocumentNav (DocumentNav.js?a1f2:16:1)
    at renderWithHooks (react-dom.development.js?ac89:16175:1)
    at mountIndeterminateComponent (react-dom.development.js?ac89:20913:1)
    at beginWork (react-dom.development.js?ac89:22416:1)
    at HTMLUnknownElement.callCallback (react-dom.development.js?ac89:4161:1)
    at Object.invokeGuardedCallbackDev (react-dom.development.js?ac89:4210:1)
    at invokeGuardedCallback (react-dom.development.js?ac89:4274:1)
    at beginWork$1 (react-dom.development.js?ac89:27405:1)
    at performUnitOfWork (react-dom.development.js?ac89:26513:1)
    at workLoopSync (react-dom.development.js?ac89:26422:1)
DocumentNav @ DocumentNav.js?a1f2:16
renderWithHooks @ react-dom.development.js?ac89:16175
mountIndeterminateComponent @ react-dom.development.js?ac89:20913
beginWork @ react-dom.development.js?ac89:22416
callCallback @ react-dom.development.js?ac89:4161
invokeGuardedCallbackDev @ react-dom.development.js?ac89:4210
invokeGuardedCallback @ react-dom.development.js?ac89:4274
beginWork$1 @ react-dom.development.js?ac89:27405
performUnitOfWork @ react-dom.development.js?ac89:26513
workLoopSync @ react-dom.development.js?ac89:26422
renderRootSync @ react-dom.development.js?ac89:26390
recoverFromConcurrentError @ react-dom.development.js?ac89:25806
performConcurrentWorkOnRoot @ react-dom.development.js?ac89:25706
workLoop @ scheduler.development.js?bcd2:266
flushWork @ scheduler.development.js?bcd2:239
performWorkUntilDeadline @ scheduler.development.js?bcd2:533
react_devtools_backend.js:4026 The above error occurred in the <DocumentNav> component:

    at DocumentNav (webpack-internal:///./node_modules/@cyntler/react-doc-viewer/dist/components/DocumentNav.js:23:63)
    at div
    at O (webpack-internal:///./node_modules/styled-components/dist/styled-components.browser.esm.js:31:90691)
    at HeaderBar (webpack-internal:///./node_modules/@cyntler/react-doc-viewer/dist/components/HeaderBar.js:24:63)
    at div
    at O (webpack-internal:///./node_modules/styled-components/dist/styled-components.browser.esm.js:31:90691)
    at Fe (webpack-internal:///./node_modules/styled-components/dist/styled-components.browser.esm.js:31:88240)
    at AppProvider (webpack-internal:///./node_modules/@cyntler/react-doc-viewer/dist/state/index.js:27:26)
    at DocViewer (webpack-internal:///./node_modules/@cyntler/react-doc-viewer/dist/index.js:73:27)
    at div
    at eval (webpack-internal:///./node_modules/@emotion/react/dist/emotion-element-cbed451f.browser.esm.js:57:66)
    at eval (webpack-internal:///./node_modules/@chakra-ui/layout/dist/chakra-ui-layout.esm.js:927:24)
    at VStack
    at Proposal (webpack-internal:///./resources/js/components/Proposal/Proposal.tsx:20:21)
    at div
    at eval (webpack-internal:///./node_modules/@emotion/react/dist/emotion-element-cbed451f.browser.esm.js:57:66)
    at div
    at eval (webpack-internal:///./node_modules/@emotion/react/dist/emotion-element-cbed451f.browser.esm.js:57:66)
    at eval (webpack-internal:///./node_modules/@chakra-ui/layout/dist/chakra-ui-layout.esm.js:927:24)
    at VStack
    at div
    at MainWrapper (webpack-internal:///./resources/js/components/wrappers/MainWrapper/MainWrapper.tsx:82:23)
    at eval (webpack-internal:///./resources/js/views/Dashboard/Dashboard.tsx:120:37)
    at Routes (webpack-internal:///./node_modules/react-router/index.js:920:5)
    at Router (webpack-internal:///./node_modules/react-router/index.js:854:15)
    at BrowserRouter (webpack-internal:///./node_modules/react-router-dom/index.js:119:5)
    at EnvironmentProvider (webpack-internal:///./node_modules/@chakra-ui/react-env/dist/chakra-ui-react-env.esm.js:120:24)
    at ColorModeProvider (webpack-internal:///./node_modules/@chakra-ui/color-mode/dist/chakra-ui-color-mode.esm.js:191:21)
    at ThemeProvider (webpack-internal:///./node_modules/@emotion/react/dist/emotion-element-cbed451f.browser.esm.js:96:64)
    at ThemeProvider (webpack-internal:///./node_modules/@chakra-ui/system/dist/chakra-ui-system.esm.js:117:27)
    at ChakraProvider (webpack-internal:///./node_modules/@chakra-ui/provider/dist/chakra-ui-provider.esm.js:23:24)
    at ChakraProvider (webpack-internal:///./node_modules/@chakra-ui/react/dist/chakra-ui-react.esm.js:520:23)
    at LoginProvider (webpack-internal:///./resources/js/components/context/LoginContext.tsx:68:23)
    at RecoilRoot_INTERNAL (webpack-internal:///./node_modules/recoil/es/index.js:4371:3)
    at RecoilRoot (webpack-internal:///./node_modules/recoil/es/index.js:4537:5)
    at Suspense
    at App (webpack-internal:///./resources/js/App.tsx:88:37)

Consider adding an error boundary to your tree to customize error handling behavior.
Visit https://reactjs.org/link/error-boundaries to learn more about error boundaries.
overrideMethod @ react_devtools_backend.js:4026
logCapturedError @ react-dom.development.js?ac89:18572
update.callback @ react-dom.development.js?ac89:18605
callCallback @ react-dom.development.js?ac89:13122
commitUpdateQueue @ react-dom.development.js?ac89:13143
commitLayoutEffectOnFiber @ react-dom.development.js?ac89:23290
commitLayoutMountEffects_complete @ react-dom.development.js?ac89:24578
commitLayoutEffects_begin @ react-dom.development.js?ac89:24564
commitLayoutEffects @ react-dom.development.js?ac89:24502
commitRootImpl @ react-dom.development.js?ac89:26779
commitRoot @ react-dom.development.js?ac89:26638
finishConcurrentRender @ react-dom.development.js?ac89:25848
performConcurrentWorkOnRoot @ react-dom.development.js?ac89:25765
workLoop @ scheduler.development.js?bcd2:266
flushWork @ scheduler.development.js?bcd2:239
performWorkUntilDeadline @ scheduler.development.js?bcd2:533
react-dom.development.js?ac89:26874 Uncaught TypeError: Cannot read properties of undefined (reading 'split')
    at DocumentNav (DocumentNav.js?a1f2:16:1)
    at renderWithHooks (react-dom.development.js?ac89:16175:1)
    at mountIndeterminateComponent (react-dom.development.js?ac89:20913:1)
    at beginWork (react-dom.development.js?ac89:22416:1)
    at beginWork$1 (react-dom.development.js?ac89:27381:1)
    at performUnitOfWork (react-dom.development.js?ac89:26513:1)
    at workLoopSync (react-dom.development.js?ac89:26422:1)
    at renderRootSync (react-dom.development.js?ac89:26390:1)
    at recoverFromConcurrentError (react-dom.development.js?ac89:25806:1)
    at performConcurrentWorkOnRoot (react-dom.development.js?ac89:25706:1)
DocumentNav @ DocumentNav.js?a1f2:16
renderWithHooks @ react-dom.development.js?ac89:16175
mountIndeterminateComponent @ react-dom.development.js?ac89:20913
beginWork @ react-dom.development.js?ac89:22416
beginWork$1 @ react-dom.development.js?ac89:27381
performUnitOfWork @ react-dom.development.js?ac89:26513
workLoopSync @ react-dom.development.js?ac89:26422
renderRootSync @ react-dom.development.js?ac89:26390
recoverFromConcurrentError @ react-dom.development.js?ac89:25806
performConcurrentWorkOnRoot @ react-dom.development.js?ac89:25706
workLoop @ scheduler.development.js?bcd2:266
flushWork @ scheduler.development.js?bcd2:239
performWorkUntilDeadline @ scheduler.development.js?bcd2:533

Same error here

I got the same error

@NriotHrreion fork or original?

@NriotHrreion fork or original?

Had the same issue in original library, fork works perfectly, @cyntler thank you!

@Alina-sul Nice to hear it! ;) Thanks for the fork using.

@ShlemenKirill @clio001 @evgen-kent Does this problem also occur at this fork: https://github.com/cyntler/react-doc-viewer? Please check it.

That specific problem does not but I do get the following error:
DocumentNav.js?a1f2:16 Uncaught TypeError: Cannot read properties of undefined (reading 'split')
    at DocumentNav (DocumentNav.js?a1f2:16:1)
    at renderWithHooks (react-dom.development.js?ac89:16175:1)
    at mountIndeterminateComponent (react-dom.development.js?ac89:20913:1)
    at beginWork (react-dom.development.js?ac89:22416:1)
    at HTMLUnknownElement.callCallback (react-dom.development.js?ac89:4161:1)
    at Object.invokeGuardedCallbackDev (react-dom.development.js?ac89:4210:1)
    at invokeGuardedCallback (react-dom.development.js?ac89:4274:1)
    at beginWork$1 (react-dom.development.js?ac89:27405:1)
    at performUnitOfWork (react-dom.development.js?ac89:26513:1)
    at workLoopSync (react-dom.development.js?ac89:26422:1)
DocumentNav @ DocumentNav.js?a1f2:16
renderWithHooks @ react-dom.development.js?ac89:16175
mountIndeterminateComponent @ react-dom.development.js?ac89:20913
beginWork @ react-dom.development.js?ac89:22416
callCallback @ react-dom.development.js?ac89:4161
invokeGuardedCallbackDev @ react-dom.development.js?ac89:4210
invokeGuardedCallback @ react-dom.development.js?ac89:4274
beginWork$1 @ react-dom.development.js?ac89:27405
performUnitOfWork @ react-dom.development.js?ac89:26513
workLoopSync @ react-dom.development.js?ac89:26422
renderRootSync @ react-dom.development.js?ac89:26390
performConcurrentWorkOnRoot @ react-dom.development.js?ac89:25694
workLoop @ scheduler.development.js?bcd2:266
flushWork @ scheduler.development.js?bcd2:239
performWorkUntilDeadline @ scheduler.development.js?bcd2:533
DocumentNav.js?a1f2:16 Uncaught TypeError: Cannot read properties of undefined (reading 'split')
    at DocumentNav (DocumentNav.js?a1f2:16:1)
    at renderWithHooks (react-dom.development.js?ac89:16175:1)
    at mountIndeterminateComponent (react-dom.development.js?ac89:20913:1)
    at beginWork (react-dom.development.js?ac89:22416:1)
    at HTMLUnknownElement.callCallback (react-dom.development.js?ac89:4161:1)
    at Object.invokeGuardedCallbackDev (react-dom.development.js?ac89:4210:1)
    at invokeGuardedCallback (react-dom.development.js?ac89:4274:1)
    at beginWork$1 (react-dom.development.js?ac89:27405:1)
    at performUnitOfWork (react-dom.development.js?ac89:26513:1)
    at workLoopSync (react-dom.development.js?ac89:26422:1)
DocumentNav @ DocumentNav.js?a1f2:16
renderWithHooks @ react-dom.development.js?ac89:16175
mountIndeterminateComponent @ react-dom.development.js?ac89:20913
beginWork @ react-dom.development.js?ac89:22416
callCallback @ react-dom.development.js?ac89:4161
invokeGuardedCallbackDev @ react-dom.development.js?ac89:4210
invokeGuardedCallback @ react-dom.development.js?ac89:4274
beginWork$1 @ react-dom.development.js?ac89:27405
performUnitOfWork @ react-dom.development.js?ac89:26513
workLoopSync @ react-dom.development.js?ac89:26422
renderRootSync @ react-dom.development.js?ac89:26390
recoverFromConcurrentError @ react-dom.development.js?ac89:25806
performConcurrentWorkOnRoot @ react-dom.development.js?ac89:25706
workLoop @ scheduler.development.js?bcd2:266
flushWork @ scheduler.development.js?bcd2:239
performWorkUntilDeadline @ scheduler.development.js?bcd2:533
react_devtools_backend.js:4026 The above error occurred in the <DocumentNav> component:

    at DocumentNav (webpack-internal:///./node_modules/@cyntler/react-doc-viewer/dist/components/DocumentNav.js:23:63)
    at div
    at O (webpack-internal:///./node_modules/styled-components/dist/styled-components.browser.esm.js:31:90691)
    at HeaderBar (webpack-internal:///./node_modules/@cyntler/react-doc-viewer/dist/components/HeaderBar.js:24:63)
    at div
    at O (webpack-internal:///./node_modules/styled-components/dist/styled-components.browser.esm.js:31:90691)
    at Fe (webpack-internal:///./node_modules/styled-components/dist/styled-components.browser.esm.js:31:88240)
    at AppProvider (webpack-internal:///./node_modules/@cyntler/react-doc-viewer/dist/state/index.js:27:26)
    at DocViewer (webpack-internal:///./node_modules/@cyntler/react-doc-viewer/dist/index.js:73:27)
    at div
    at eval (webpack-internal:///./node_modules/@emotion/react/dist/emotion-element-cbed451f.browser.esm.js:57:66)
    at eval (webpack-internal:///./node_modules/@chakra-ui/layout/dist/chakra-ui-layout.esm.js:927:24)
    at VStack
    at Proposal (webpack-internal:///./resources/js/components/Proposal/Proposal.tsx:20:21)
    at div
    at eval (webpack-internal:///./node_modules/@emotion/react/dist/emotion-element-cbed451f.browser.esm.js:57:66)
    at div
    at eval (webpack-internal:///./node_modules/@emotion/react/dist/emotion-element-cbed451f.browser.esm.js:57:66)
    at eval (webpack-internal:///./node_modules/@chakra-ui/layout/dist/chakra-ui-layout.esm.js:927:24)
    at VStack
    at div
    at MainWrapper (webpack-internal:///./resources/js/components/wrappers/MainWrapper/MainWrapper.tsx:82:23)
    at eval (webpack-internal:///./resources/js/views/Dashboard/Dashboard.tsx:120:37)
    at Routes (webpack-internal:///./node_modules/react-router/index.js:920:5)
    at Router (webpack-internal:///./node_modules/react-router/index.js:854:15)
    at BrowserRouter (webpack-internal:///./node_modules/react-router-dom/index.js:119:5)
    at EnvironmentProvider (webpack-internal:///./node_modules/@chakra-ui/react-env/dist/chakra-ui-react-env.esm.js:120:24)
    at ColorModeProvider (webpack-internal:///./node_modules/@chakra-ui/color-mode/dist/chakra-ui-color-mode.esm.js:191:21)
    at ThemeProvider (webpack-internal:///./node_modules/@emotion/react/dist/emotion-element-cbed451f.browser.esm.js:96:64)
    at ThemeProvider (webpack-internal:///./node_modules/@chakra-ui/system/dist/chakra-ui-system.esm.js:117:27)
    at ChakraProvider (webpack-internal:///./node_modules/@chakra-ui/provider/dist/chakra-ui-provider.esm.js:23:24)
    at ChakraProvider (webpack-internal:///./node_modules/@chakra-ui/react/dist/chakra-ui-react.esm.js:520:23)
    at LoginProvider (webpack-internal:///./resources/js/components/context/LoginContext.tsx:68:23)
    at RecoilRoot_INTERNAL (webpack-internal:///./node_modules/recoil/es/index.js:4371:3)
    at RecoilRoot (webpack-internal:///./node_modules/recoil/es/index.js:4537:5)
    at Suspense
    at App (webpack-internal:///./resources/js/App.tsx:88:37)

Consider adding an error boundary to your tree to customize error handling behavior.
Visit https://reactjs.org/link/error-boundaries to learn more about error boundaries.
overrideMethod @ react_devtools_backend.js:4026
logCapturedError @ react-dom.development.js?ac89:18572
update.callback @ react-dom.development.js?ac89:18605
callCallback @ react-dom.development.js?ac89:13122
commitUpdateQueue @ react-dom.development.js?ac89:13143
commitLayoutEffectOnFiber @ react-dom.development.js?ac89:23290
commitLayoutMountEffects_complete @ react-dom.development.js?ac89:24578
commitLayoutEffects_begin @ react-dom.development.js?ac89:24564
commitLayoutEffects @ react-dom.development.js?ac89:24502
commitRootImpl @ react-dom.development.js?ac89:26779
commitRoot @ react-dom.development.js?ac89:26638
finishConcurrentRender @ react-dom.development.js?ac89:25848
performConcurrentWorkOnRoot @ react-dom.development.js?ac89:25765
workLoop @ scheduler.development.js?bcd2:266
flushWork @ scheduler.development.js?bcd2:239
performWorkUntilDeadline @ scheduler.development.js?bcd2:533
react-dom.development.js?ac89:26874 Uncaught TypeError: Cannot read properties of undefined (reading 'split')
    at DocumentNav (DocumentNav.js?a1f2:16:1)
    at renderWithHooks (react-dom.development.js?ac89:16175:1)
    at mountIndeterminateComponent (react-dom.development.js?ac89:20913:1)
    at beginWork (react-dom.development.js?ac89:22416:1)
    at beginWork$1 (react-dom.development.js?ac89:27381:1)
    at performUnitOfWork (react-dom.development.js?ac89:26513:1)
    at workLoopSync (react-dom.development.js?ac89:26422:1)
    at renderRootSync (react-dom.development.js?ac89:26390:1)
    at recoverFromConcurrentError (react-dom.development.js?ac89:25806:1)
    at performConcurrentWorkOnRoot (react-dom.development.js?ac89:25706:1)
DocumentNav @ DocumentNav.js?a1f2:16
renderWithHooks @ react-dom.development.js?ac89:16175
mountIndeterminateComponent @ react-dom.development.js?ac89:20913
beginWork @ react-dom.development.js?ac89:22416
beginWork$1 @ react-dom.development.js?ac89:27381
performUnitOfWork @ react-dom.development.js?ac89:26513
workLoopSync @ react-dom.development.js?ac89:26422
renderRootSync @ react-dom.development.js?ac89:26390
recoverFromConcurrentError @ react-dom.development.js?ac89:25806
performConcurrentWorkOnRoot @ react-dom.development.js?ac89:25706
workLoop @ scheduler.development.js?bcd2:266
flushWork @ scheduler.development.js?bcd2:239
performWorkUntilDeadline @ scheduler.development.js?bcd2:533

Were you able to resolve it?

still "invalid hook call" in both
react-doc-viewer and @cyntler/react-doc-viewer. Do anyone know how to resolve this bug?

@muskan-javed Give me more informations about it - versions of your react, @cyntler/react-doc-viewer, module bundler etc.

Same here ..


RFC: improve quality of coverage reports by parsing source files for functions

This alters---and perhaps improves---our ability to quantify coverage. It leverages @jakebolewski's JuliaParser.jl to extract the beginning/end line range of "simple" function expressions. It then amends the coverage information by inserting 0 instead of nothing for functions that were never compiled.
This is not perfect. Here are deficits that I'm aware of currently:

It misses functions defined inside a for f in (:min, :max, ...) @eval begin... style block (this error will contribute to overly-optimistic estimates of coverage)
It falsely penalizes end statements and the initial function f(...) line in a multi-line function (this error will contribute to overly-pessimistic estimates of coverage)

There is also the genuine risk of the line count getting "out of sync", since the logic for extracting line numbers is not entirely trivial. I haven't seen it yet, but frankly I've only tested against a single source file.
I suspect both of these deficits may be fixable, so I am not certain this is yet worth merging. OTOH, I am not entirely certain I want to dump a huge amount of effort into this; if this is viewed as a step forward, perhaps we should go for it. But thanks to Jake it was surprisingly easy to get this far; maybe it wouldn't be so much harder to fix one or both of these problems (but I don't have any good ideas yet).

You would also have to turn off inlining, but this might be a step forward.

We can just do that with --inline=no now.

@timholy, with the second bullet point, does that apply to only functions that were not caught before, or does it apply to all functions?

I'd like to try this out on JuMP, it seems like a great step forward.

Looking at it a bit more, unfortunately the line numbering is borked. I think this needs to be fixed in JuliaParser.

See https://github.com/jakebolewski/JuliaParser.jl/issues/13

OK, I think I've fixed both of the problems above. I hacked around the line number problem by first finding the file position corresponding to the beginning of each new source line, and then using that to keep track of where I am in the file. And it seems that with proper line number accounting, my concerns about end, etc, went away.

One remaining problem is: what to do about whole files that lack tests? In that case, there is no *.cov file.

AFAICT, this will never pass travis; it seems that Pkg uses the old REQUIRE file to install dependencies, so JuliaParser does not get installed. Consequently, this PR fails its tests. You can, of course, try it locally (it works for me).

+1000
This is a vastly better state of affairs than previously. I'd stopped looking at coverage results, since adding a single test gave you a 90% coverage statistics rate.

@timholy couldn't you (as a bandaid) Pkg.add JuliaParser in the .travis.yml.
This is going to be ace!!
The for f in (:min, :max, ...) @eval begin... issue seems similar to coverage not testing for different datatypes (is coverage just the wrong metric?)...

@hayd, once this gets merged that change wouldn't be necessary anymore. So I'm not sure it's worth it.
Yes, there absolutely are subtleties (or really, not-so-subtleties...) that this does not handle well. I don't currently have any great ideas about how to take the next step, though. It seems you want some kind of summary number.

Getting good coverage results, or any notion of "coverage percentage", is going to be difficult in any language that does runtime code generation.  I think we just have to look at this as a flawed, but useful metric.  Even Stefan's suggestion, instrumenting basic blocks, only will work for code that has actually been generated.  This is complicated by things that generate code at runtime, an example being stagedfunctions.
@timholy, I don't know what packages you have used but maybe we should agree to a non-trivial one to test on.  Glancing at the code, doesn't this have issues with functions that are not at the toplevel of the file.
ex.
begin
    func() = ...
end

or
module Foo
    module Bar
        func() = .....
    end
end

I'll look into making JuliaParser easier to use for this application.  There have been some regressions in terms of compatibility with base during the 0.4 dev period.

My earlier worries about non-toplevel functions were erased by later commits---basically I think this is perfect :smile:. Aside from generated code, the one exception I know of is this construction:
@doc """
This is the best function I ever wrote.
""" ->
f(x) = 2x

The reason is that because of the ->, the line number for that expression does not appear inside the function body, in contrast with a function defined just as
f(x) = 2x

Oh, regarding your question about testing on a package; my email to julia-dev tested two "mystery" packages, but both have a nontrivial amount of code (>2k lines each, one was over 4k).

BTW, I've removed the "RFC"; I'm not planning on pushing any more patches. I do wonder about hooking this into PackageEval and seeing if we can come up with coverage fractions for all registered packages. That could happen either before or after merging this.

LGTM

I think getting coverage numbers in PackageEval is definitely possible.

@timholy can you tag a new version of Coverage when you are ready? I have limited internet access

Hmm, I just did a push on Images, and indeed it modified my coverage stats: https://coveralls.io/builds/1701691. (Alternative: https://github.com/timholy/Images.jl/pull/243#issuecomment-68954451) I expect it to go down, but not to 0%. Seems like something is wrong.
The part I can't understand is that the first element in that array of Dicts looks like this:

which seems entirely reasonable. Any insights about why that file nevertheless is scored as having 0% coverage on Coveralls?

Here's a gist of the JSON-encoded output: https://gist.githubusercontent.com/timholy/e5c42bf97adee7ee4333/raw/36edd536817030d278d840976936d11e327504bd/JSON-parsed coverage stats

Oh, actually, Images has had broken coverage data for a long time: the last good one I found dated from August 21, although there must have been a more recent one because the badge is a different number.
https://coveralls.io/r/timholy/Images.jl?page=14
Dunno what's going on, anyone have a clue?

OK, I'm getting reports for HDF5, so clearly it's something specific to Images. It would be interesting to debug, but I'm not sure how to go about that.


image to text app

Related Issue
Closes #193
Email id used to regsiter for VSoc'24
<EMAIL_ADDRESS>Description
Added application to scan text from  image
Type of PR

[ ] Bug fix
[ ] Feature enhancement
[ ] Documentation update
[ ] Security enhancement
[X] Other (specify): Project

check in issue by entering [X] in boxes
Screenshots / Videos (if applicable)

Checklist

[X] I have performed a self-review of my code.
[X] I have read and followed the Contribution Guidelines.
[X] I have tested the changes thoroughly before submitting this pull request.
[X] I have provided relevant issue numbers, screenshots, and videos after making the changes.
[ ] I have commented my code, particularly in hard-to-understand areas.
[X] I have followed the code style guidelines of this project.
[X] I have checked for any existing open issues that my pull request may address.
[X] I have ensured that my changes do not break any existing functionality.
[X] Each contributor is allowed to create a maximum of 4 issues per day. This helps us manage and address issues efficiently.
[X] I have read the resources for guidance listed below.
[X] I have followed security best practices in my code changes.

fix css of page after generating text

Done.

Good @kom-senapati


what is your mean of AP?

HI:
your research work is very excellent as a reference for us,
could you tell me what is  your testing rule on AP, is it<EMAIL_ADDRESS>or AP@0.5:0.95?
thanks.

Hi @chriszxk,
Thanks for reaching out regarding your confusion.
We've used<EMAIL_ADDRESS>Regards,

Hi @chriszxk,
Thanks for reaching out regarding your confusion.
We've used<EMAIL_ADDRESS>Regards,

Hi, thank you for your kindly reply , so , is the evaluation<EMAIL_ADDRESS>follow the rule of VOC2007 or VOC2012, or COCO? because the different rule will get different values.

Hi @chriszxk,
Thanks for reaching out regarding your confusion.
We've used<EMAIL_ADDRESS>Regards,

Thank you for your kindly answer, I want to enquire anathor question, do you follow Voc2007 or Voc2012 rule, when you compute<EMAIL_ADDRESS>thank you in advance.

Hi @chriszxk,
Let me restructure your question a bit so it can be referenced if anyone else has the similar question.
Which interpolation was used?

11 point interpolation
All point interpolation

I've used all point interpolation as it is the standard way of computing AP when following PASCAL VOC standard after 2010.
I hope this answered your question. If this was not what you asked, please elaborate your question a bit.
Regards,

Hi @chriszxk,
Let me change your question a bit so it can be referenced if anyone else has the similar question.
Which interpolation was used?

11 point interpolation
All point interpolation

I've used all point interpolation as it is the standard way of computing AP when following PASCAL VOC standard after 2010.
I hope this answered your question. If this was not what you asked, please elaborate your question a bit.
Regards,

Thank you,
your answer perfectly solve my question.
Sincerely,