Feature request: Support a "warning" level for linting

It would be really nice if, like ignore, we could select specific issues to turn into warnings rather than errors. That is, it would still output a warning to stdout, (perhaps separating errors and warnings), but it would still return with exit status 0.
Use case:
A large, older codebase that contains a lot of linting issues regarding specific rules. (For example, a codebase that predates type annotations.) By allowing warnings, we can make these issues visible to developers for fixing as they lint their changes, but we don't have to have a separate configuration for our pre-commit hooks, CI tools, etc. to ensure they ignore these issues.

Yeah, this would be nice to have. It would also be helpful for editor integrations, since the LSP can differentiate between warnings and errors.

Any thoughts on what the API should look like?
ESLint lets you map from rule name to level, like:
...
"eqeqeq": "error",
"curly": "warning",
...

Which makes sense, though they also use that system to turn errors on and off -- and we instead have the Flake8-like ignore and select system.
The most basic thing would be a map from check code prefix to level, like:
[tool.ruff.severity]
"F401" = "warning"
"F481" = "error"
# Probably also want to support prefixes.
"E" = "warning"

Not really sure... Naively, it appears to me that the most consistent way to configure it would be to have warn and extend-warn (or warning & extend-warning).
This file contains what I'm doing currently for the project that inspired this request.
I enabled more linting than we previously had (everything I viewed as potentially appropriate for this app), but I put everything that raised an error into the ignore field. With this feature, lines 78-102 would've been in a warn section instead of inside ignore, with the goal of eventually emptying the warn section by consensus.

fwiw bandit has four severity levels: undefined, low, medium and high.
https://github.com/PyCQA/bandit/blob/af9f8dc09f7239f3c3481177a24a72dcb41ed450/bandit/core/constants.py#L8

I would recommend against the implementation of warning (or severity levels). I wrote about why in this blog post (and also in a as-of-yet-unreleased talk).
In my opinion, it's one of those features (along with disable comments) that gets copied over and over mostly because other linters have them. The fact that no linter docs ever recommend when to use these features is a sign of that in my opinion.
I can potentially see a benefit for this while seeing the errors in an editor, but it shouldn't IMO impact the behavior of the linter.
In elm-review there are no severity levels (nor disable comments): rules are enforced or they are not. Though to be taken with a grain of salt: the linter also has a lot less false positives than is probably possible for Python because of the target language.

A large, older codebase that contains a lot of linting issues regarding specific rules

This is exactly the kind of problem that the proposal in #1149 aims to solve, and is a much better solution.

I can potentially see a benefit for this while seeing the errors in an editor, but it shouldn't IMO impact the behavior of the linter.

How would the editor show the proper type of diagnostic to the user if the linter doesn't provide that information?

If by "type of diagnostic" you mean warning or error, it wouldn't be able to. I meant to say that this feature request could be useful for editors for that purpose. But that otherwise severity levels is not useful or recommended.

@not-my-profile - I'm considering adding this, but since you've been working on the violation API a lot, I wanted to get your feedback first. Here's a proposal.

Add a Severity enum, with Warning and Error for now (which map to the LSP's DiagnosticSeverity).
Add a const on the Violation trait that allows rules to define their default severity, like AUTOFIX. All rules will be Error for now, so we could consider omitting this at the moment.
Add a warnings = [...] setting in pyproject.toml, that's functionally similar to fixable. All rules are errors by default, so users can downgrade them to warnings like so: warnings = ["B"].
In the CLI output, and in ruff-lsp, differentiate errors from warnings.

This wouldn't include making it possible to run Ruff and only show warnings, or only show errors (e.g., ruff --select warnings), but we could do that in the future.

Thanks for consulting with me :) I would hold off on adding any such constants to the Violation trait till we have implemented rule categories #1774 ... I am not sure if adding constants to Violation is the best way to model non-autofix-related rule metadata ... I'll have to think about it.

Add a Severity enum, with Warning and Error for now (which map to the LSP's DiagnosticSeverity).

LSP also supports other levels:

error
warning
information
hint

I think it might make more sense to support all of them via a configuration like:
[tool.ruff.severities]
B = "information"

e.g., ruff --select warnings

I don't think we should overload rule selectors for this. I think I'd prefer a dedicated CLI option like --severity to specify the minimum level that is reported.

Thanks for consulting with me :)

Of course! You're driving a lot of the work on the violations API. Definitely want your help figuring these parts out :)

LSP also supports other levels...

Yeah I've considered this... I wasn't sure if they would really be relevant to us. Like Clippy only has allow, warn, deny, and none. I'm not sold either way.

I don't think we should overload rule selectors for this. I think I'd prefer a dedicated CLI option like --severity to specify the minimum level that is reported.

Makes sense -- just an example to articulate what I wasn't planning to do on the first pass. I agree that the API you're suggesting is better.

I wasn't sure if they would really be relevant to us.

I am not sure either. I still think
[tool.ruff.severities]
B = "warning"

is better than
[tool.ruff]
warning = ["B"]

because the former is more expressive, e.g.
[tool.ruff.severities]
B = "warning"
B007 = "error"

Like Clippy only has allow, warn, deny, and none.

These are not defined by clippy ... these are the Rust lint levels:

allow
warn
force-warn
deny
forbid

But what you're saying makes sense ... I think it's ok to start out with just supporting "warning" & "error".
Actually I think we probably should rather model this after clippy since I think it would probably make sense for us to also support "force-warn" and "forbid" (which basically is "force-deny").
So we could have:
[tool.ruff.levels]
B = "warn"
B007 = "deny"

We could actually also deprecate our ignore setting in favor of e.g.
[tool.ruff.levels]
E501 = "allow"

The nice thing about the Rust terminology is that "allow" and "deny" are semantic opposites (while "ignore" and "error" aren't).

Yeah I generally agree.
My only hesitation around modeling this after Clippy is that the API will be new to most users, whereas warning and error are more common (e.g. they also map 1:1 to the LSP).
But... it'd be nice to have a unified API for turning errors "on" and "off", and for setting their severities, as with Clippy. (E.g., if we add [tool.ruff.severities] but use it in conjunction with select and ignore, you could turn the B rules "off" and set their severity to "warning", which is strange.)

@charliermarsh should we add this to a milestone or pin it in some way? Might be useful for someone looking at the repository as an overview. This could also be placed in some sort of ROADMAP.md, which we can also update for a version 2 or whatever (I presume version 2 could be adding a formatter, version 3 type hinting? if we are planning to go for those)

I'd really like this to support more than just "error" and "warning".
While discussion in this issue is mostly about editor, ruff is also used in CI and CI apps also use severities. Gitlab defines 5 and none of them is warning nor error...
Approach proposed by @not-my-profile would make it possible to handle - if severity list is extended or free form supported.
Why such granularity may be useful in CI?
Because ruff includes rules of really varying importance. If you have an important fix to deploy it may pass review with imports not sorted properly (isort rule) but not with a serious security issue detected by a bandit rule.

Having configurable severity levels is important for pipelines. Having gitlab levels (potentially preconfigured) would add a lot of value.
Right now everything is major. I have added a script to postprocess the generated json file, but it is very hard to decide on the levels.

Any progress here or when we think this will go into a version?

If user configuration of lint levels is desired, I think it could be reasonable to follow the design specified in Rust's manifest-lint RFC, since it gives pretty good reasoning for design choices and was thought through pretty thoroughly. Something like:
select = ["E", "F", "B"]

[lints]
E123 = "warn"
F456 = { level = "error", priority = 100 }

(priority probably isn't really required). Naming the table something like lints instead of severity has the benefit that it makes sense if you want to add per-lint config that isn't only severity level, e.g.
[lints.E123]
option-a = "syrup"
ignore = "**/pancakes.py"

Jenkins CI has a plugin called warnings-ng for reporting issues from various tools. see https://github.com/jenkinsci/warnings-ng-plugin/blob/main/doc/Documentation.md#issues-history-new-fixed-and-outstanding-issues
Unfortunately ruff format is not supported yet. If we could have that it might be able to detect which warnings are new and which are old. This would make it easier to start using ruff in a repo with a lot of warnings by using a baseline.
see https://github.com/jenkinsci/warnings-ng-plugin/blob/main/SUPPORTED-FORMATS.md

I think having a "info" level in addition to "warning" and "error" could be nice for some lints like PTH (flake8-use-pathlib), which i usually enable to remind me and others when we could be using pathlib, but we don't want to strictly enfore that. I'm not sure about other IDEs, but VSCode also supports displaying with an info level.

Personally, I use --add-noqa for these kind of info lints. Then I get the info however I look at the codebase, can search for them if e.g. I want to look at migrating to using pathlib, and get in-IDE popups (in VSCode) with the rule details.
Maybe having customisability of --add-noqa would be a solution to this use case? So for example you can specify a rule(set) e.g.:
ruff --add-noqa PTH or ruff --add-noqa D4 etc...?

Maybe having customisability of --add-noqa would be a solution to this use case? So for example you can specify a rule(set) e.g.:
ruff --add-noqa PTH or ruff --add-noqa D4 etc...?

This is possible by just combining it with --select. So, your examples would become
ruff check --select PTH --add-noqa
ruff check --select D4 --add-noqa

This should only add noqa comments for the selected rules.

Since it hasn't been explicitly mentioned yet, I'd also like to point one use case of autofixing.
For some eslint project, I have turned the most common autofixable lint errors into warnings so that I am aware of them while editing. Since I personally am auto-formatting on save (and fixing all these autofixables at once) I don't need them to be marked as warnings, but not everyone else on the team might be, I still want these to cause the CI lint pass to fail.
Thus, perhaps a way of specifying the level/severity of all autofixable rules at once on a machine-by-machine basis, e.g. by a parameter to the language server, would make sense here.

pls do this. I just want to put a warning on unused imports, nothing else

Jenkins CI has a plugin called warnings-ng for reporting issues from various tools. see https://github.com/jenkinsci/warnings-ng-plugin/blob/main/doc/Documentation.md#issues-history-new-fixed-and-outstanding-issues
Unfortunately ruff format is not supported yet. If we could have that it might be able to detect which warnings are new and which are old. This would make it easier to start using ruff in a repo with a lot of warnings by using a baseline.
see https://github.com/jenkinsci/warnings-ng-plugin/blob/main/SUPPORTED-FORMATS.md

Unit support was actually added in #968


remove compatible basepath code

Signed-off-by: Vinayakswami Hariharmath<EMAIL_ADDRESS>

/cc @naveenpaul1

@v-harihar please remove the clusterversions from the bundle folder


Added Filtering using language parameter

This PR adds the optioon to filter songs based on the language.
Fixed #112 issue
So this works something like this first the user can write the name of the song and then from the language dropdown he/she can select the language of it so filtering is preformed in this way.
And if for that particular song there is no language available it displays no data found
https://github.com/Satyam1923/Spring-Music-Player/assets/135015856/dc6a675a-05db-4707-bf57-ed4fb2d90aee
Checklist
Make sure to check off all the items before submitting. Mark with [x] if done.

[ x] I have performed a self-review of my code
[x ] I have commented my code, particularly in hard-to-understand areas
[x ] My changes generate no new warnings
[x ] I am working on this issue under GSSOC

@Riddhi162
Your website is not showing previous design and color.
Make sure you made the change in current current updated repository.

okay i created another pull request pls check

@Riddhi162
Add the artist section that u have removed


Loading Python Exported Model into TorchSharp

Originally posted in dotnet/TorchSharp by @jimquittenton:
https://github.com/dotnet/TorchSharp/issues/586
The naming scheme for layers are different in the ResNet example model found in this repo and the ResNet models found in TorchVision, which prevents a model saved from Python from being loaded in TorchSharp using this example code.
Original post:

Hi,
I'm new to TorchSharp and am having trouble loading a python trained ResNet18 model. I've been following this article: https://github.com/dotnet/TorchSharp/blob/main/docfx/articles/saveload.md and have exported my python model using the 'save_state_dict' function in this script: https://github.com/dotnet/TorchSharp/blob/main/src/Python/exportsd.py .
In TorchSharp I have copied the ResNet model from https://github.com/dotnet/TorchSharpExamples/blob/main/src/CSharp/Models/ResNet.cs and then call the following:
int numClasses = 3;
ResNet myModel = ResNet.ResNet18(numClasses);
myModel.to(DeviceType.CPU);
myModel.load(mPath);
The load() line throws an exception with message Mismatched module state names: the target modules does not have a submodule or buffer named 'conv1.weight'.
If I examine the state_dict from 'myModel' prior to load(), it contains entries like:
{[layers.conv2d-first.weight, {TorchSharp.Modules.Parameter}]}
{[layers.bnrm2d-first.weight, {TorchSharp.Modules.Parameter}]}
{[layers.bnrm2d-first.bias, {TorchSharp.Modules.Parameter}]}
{[layers.bnrm2d-first.running_mean, {TorchSharp.torch.Tensor}]}
{[layers.bnrm2d-first.running_var, {TorchSharp.torch.Tensor}]}
{[layers.bnrm2d-first.num_batches_tracked, {TorchSharp.torch.Tensor}]}
{[layers.blck-64-0.layers.blck-64-0-conv2d-1.weight, {TorchSharp.Modules.Parameter}]}
{[layers.blck-64-0.layers.blck-64-0-bnrm2d-1.weight, {TorchSharp.Modules.Parameter}]}
{[layers.blck-64-0.layers.blck-64-0-bnrm2d-1.bias, {TorchSharp.Modules.Parameter}]}
whereas the corresponding entries prior to saving from python are:
conv1.weight     torch.Size([64, 3, 7, 7])
bn1.weight       torch.Size([64])
bn1.bias         torch.Size([64])
bn1.running_mean         torch.Size([64])
bn1.running_var          torch.Size([64])
bn1.num_batches_tracked          torch.Size([])
layer1.0.conv1.weight    torch.Size([64, 64, 3, 3])
layer1.0.bn1.weight      torch.Size([64])
layer1.0.bn1.bias        torch.Size([64])
I tried amending the ResNet.cs code to reflect the python names, but could not get them to exactly match.
I also tried calling load() with strict=false myModel.load(mPath, false);. This seemed to get past the Mismatched names exception, but throws another exception with message Too many bytes in what should have been a 7 bit encoded Int32.
I've been struggling with this for a couple of days now so would really appreciate any help you guys could offer.
Thanks
Jim

Hi Niklas
Firstly I've been away until today so apologies for the late reply. I saw the pull request you made is now merged in so I tried cloning the main repo and building TorchSharp locally. I got it building to an extent but couldn't build the Test projects or run the examples due to cuda dependencies  (I'm on a CPU only machine so only used the cpu version of libtorch so far). I'm assuming this change fixes loading of the weights and skipping layers as per your message, but so far have not able to test it as yet. Do you have an idea as to when this would make it onto a nuget  package (as that would be way easier for me)?
As for the changing of the ResNet layer names, I had a go at changing them and started by creating a spreadsheet matching up all the torchvision model names to those in the TorchSharp ResNet18 State_Dict (I've attached this so you can see the differences), but while I can see the lists of (name, module) being built up in say BasicBlock, I can't see a way to prevent the name of the root module 'layers' becoming part of the final name. Also the AddLayer() method adds the block name into each (string, module) tuple as well as passing it into the  delegate for BasicBlock so this means it ends up being in the final name twice. If you could start me off in resolving these issues then I'd be happy to have a go at the rest of the renaming.
Thanks
Jim
torchsharp-resnet18-names.xlsx

Hi!
The PR contains a ResNet with the right names, but the loading of weights will still be a manual thing, in a way -- you can pass the path to the weights file into the ResNet factory method, and it gives you the option to skip the last Linear layer so that you can repurpose it for your own classification:
        public static Modules.ResNet resnet18(int num_classes = 1000,
                string weights_file = null,
                bool skipfc = true,
                Device device = null)

This will be in the next release, which will probably be next week some time.

@jimquittenton -- can I close this now?


Question: Can beatpulse be used with MVC 5 apps and full framework windows services?

I realize this is intended for Core, but we are trying to implement the health check pattern for all our internal applications.  Most of these are written on full framework with MVC 5.  Some are just TopShelf based windows services and don't have a web server at all.
I'm looking around for libraries to help with this effort.  Would be be possible to use parts of this project such as the actual checkers (sql server, rabbitmq, etc) running outside of asp.net core?

Nope, BeatPulse is only for asp.net core 2.1 and not future features are planned. Please read the readme.md.

This seems to indicate otherwise:
https://github.com/Xabaril/BeatPulse/issues/73
The comments suggest that the OWIN middleware is done.

This is true, but after Microsoft announce HealthChecks for ASP.NET Core 2.2 the Xabaril team decide to port all liveness into this new abstractions and discontinue this project for future release, only 3.0 maintainement.


Update to: Filter out disconnected path and include a new axon predicate

Added ilxtr.hasAxonLeadingToSensorySubcellularElementIn predicate to identify axons.
Handled new terms that belong to the CL namespace.
Updated connectivity_models function to return a distinct list.
Set connectivity_paths function to return connected paths only as a default setting.
Updated npo.py example script to use mapknowledge-0.19.2.
Added a function to draw all knowledge, similar to flatmap-server's sckan_connectivity.py.
Added a new example script: npo_summary.py.

@napakalas it would have been better to have had several PRs for these changes, one for each distinct issues:

Add ilxtr.hasAxonLeadingToSensorySubcellularElementIn predicate to identify axons.
Handle new terms that belong to the CL namespace.
Returning a distinct list from Npo.connectivity_models().
Code related to identifying and managing disconnected paths.
Updated examples.

So far as this PR goes, I've merged it into a new branch from which I'll cherry-pick things for a new release -- in particular the disconnected path stuff could do with some tweaking.

Thanks @dbrnz,
In the future I will do as you suggested.


"No loader found for resource .po" when editing PO file

Godot version
v4.0.3.stable.official [5222a99f5]
System information
Windows 10
Issue description
When .po files are edited, the following error is printed to the output when returning to the editor window.
No loader found for resource: res:/path_to.po.
Steps to reproduce
Issue description.
Minimal reproduction project
N/A

This is a known issue when editing files that are valid resources in the script editor. I'm not sure how it could be avoided.

I've used an external editor (not the built-in script editor).

I encountered this issue but surprisingly with .mo files, rather than .po files.
I'm editing and generating these files with POEdit.
This was tested in and still occurs in v4.3.dev6.official [89850d553]
The full error looks like this:

I'm also attaching a reproduction project to make it easier to test.
no_loader.zip


Slider suggested method

To make the slider responsive I find that I need to set the height of the slider dynamically. Use for example the resize or orientation change and the slider wont resize properly for mobile. You can try to set this as in the height property at creation but I feel it made it glitchy for some reason.

Maybe this is fixed in the current version.
Here I couldn't see any issues about the responsive behavior
http://materializecss.com/fullscreen-slider-demo.html
http://materializecss.com/media.html


g_init

I was wondering why the MLP parameters are all initialized to mean 1? (The paper says mean 0)
Also why are there two "bands" for each periodic dimension? The paper says the final MLP bias is initialized using N(c, 0.02c) where c \in (0,pi], but the code uses the two bands and initializes 0 and 1 for x and y frequencies respectively (for band 1), and vice versa for band 2.
Thanks

Good catch - probably should be w_init instead of g_init! Might've been changed when we published the code (from the internal version). I'll check in the next week or so if this has significant impact.
Also: check-out the pytorch version that is linked in the Readme.md! Lasagne is outdated - in our team nobody uses it anymore.


Out of Memory Issues when Training

I'm following the steps as described in this blog entry in order to run the CIFAR classification. Preprocessing Provider.lua works fine, but training won't seem to work due to memory problems.
When running the regular command line CUDA_VISIBLE_DEVICES=0 th train.lua, I'm getting the following output:
{
  learningRate : 1
  momentum : 0.9
  epoch_step : 25
  learningRateDecay : 1e-07
  batchSize : 128
  model : "vgg_bn_drop"
  save : "logs"
  weightDecay : 0.0005
  backend : "nn"
  max_epoch : 300
}
==> configuring model
THCudaCheck FAIL file=/tmp/luarocks_cutorch-scm-1-9668/cutorch/lib/THC/generic/THCStorage.cu line=41 error=2 : out of memory
/Users/artcfa/torch/install/bin/luajit: /Users/artcfa/torch/install/share/lua/5.1/nn/utils.lua:11: cuda runtime error (2) : out of memory at /tmp/luarocks_cutorch-scm-1-9668/cutorch/lib/THC/generic/THCStorage.cu:41
stack traceback:
    [C]: in function 'resize'
    /Users/artcfa/torch/install/share/lua/5.1/nn/utils.lua:11: in function 'torch_Storage_type'
    /Users/artcfa/torch/install/share/lua/5.1/nn/utils.lua:57: in function 'recursiveType'
    /Users/artcfa/torch/install/share/lua/5.1/nn/Module.lua:126: in function 'type'
    /Users/artcfa/torch/install/share/lua/5.1/nn/utils.lua:45: in function 'recursiveType'
    /Users/artcfa/torch/install/share/lua/5.1/nn/utils.lua:41: in function 'recursiveType'
    /Users/artcfa/torch/install/share/lua/5.1/nn/Module.lua:126: in function 'cuda'
    train.lua:47: in main chunk
    [C]: in function 'dofile'
    ...edja/torch/install/lib/luarocks/rocks/trepl/scm-1/bin/th:145: in main chunk
    [C]: at 0x0107712bd0

So apparently CUDA reports to be out of memory. I've compiled the NVIDIA CUDA samples and ran the deviceQuery sample in order to get some stats on this:
./deviceQuery Starting...

 CUDA Device Query (Runtime API) version (CUDART static linking)

Detected 1 CUDA Capable device(s)

Device 0: "GeForce GT 650M"
  CUDA Driver Version / Runtime Version          7.5 / 7.5
  CUDA Capability Major/Minor version number:    3.0
  Total amount of global memory:                 1024 MBytes<PHONE_NUMBER> bytes)
  ( 2) Multiprocessors, (192) CUDA Cores/MP:     384 CUDA Cores
  GPU Max Clock rate:                            900 MHz (0.90 GHz)
  Memory Clock rate:                             2508 Mhz
  Memory Bus Width:                              128-bit
  L2 Cache Size:                                 262144 bytes
  Maximum Texture Dimension Size (x,y,z)         1D=(65536), 2D=(65536, 65536), 3D=(4096, 4096, 4096)
  Maximum Layered 1D Texture Size, (num) layers  1D=(16384), 2048 layers
  Maximum Layered 2D Texture Size, (num) layers  2D=(16384, 16384), 2048 layers
  Total amount of constant memory:               65536 bytes
  Total amount of shared memory per block:       49152 bytes
  Total number of registers available per block: 65536
  Warp size:                                     32
  Maximum number of threads per multiprocessor:  2048
  Maximum number of threads per block:           1024
  Max dimension size of a thread block (x,y,z): (1024, 1024, 64)
  Max dimension size of a grid size    (x,y,z):<PHONE_NUMBER>, 65535, 65535)
  Maximum memory pitch:<PHONE_NUMBER> bytes
  Texture alignment:                             512 bytes
  Concurrent copy and kernel execution:          Yes with 1 copy engine(s)
  Run time limit on kernels:                     Yes
  Integrated GPU sharing Host Memory:            No
  Support host page-locked memory mapping:       Yes
  Alignment requirement for Surfaces:            Yes
  Device has ECC support:                        Disabled
  Device supports Unified Addressing (UVA):      Yes
  Device PCI Domain ID / Bus ID / location ID:   0 / 1 / 0
  Compute Mode:
     < Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >

deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 7.5, CUDA Runtime Version = 7.5, NumDevs = 1, Device0 = GeForce GT 650M
Result = PASS

So I thought maybe 1 GB of total available CUDA memory simply wasn't enough. I modified the sample code so it could run on the CPU without using CUDA (which you can find here) and now it starts up and begins training.
However, after around 9 / 390 training samples, it crashes with the message luajit not enough memory, so that doesn't appear to work either.
Am I doing something wrong? What can I do to run this?

try his branch: https://github.com/szagoruyko/cifar.torch/tree/cpu

Tried it, same result as with my custom cpu code linked above. I started it with the following command line:
CUDA_VISIBLE_DEVICES=0 th train.lua --type float
Resulting in the following output:
{
  learningRate : 1
  type : "float"
  momentum : 0.9
  epoch_step : 25
  learningRateDecay : 1e-07
  batchSize : 128
  model : "vgg_bn_drop"
  save : "logs"
  backend : "nn"
  weightDecay : 0.0005
  max_epoch : 300
}
==> configuring model
nn.Sequential {
  [input -> (1) -> (2) -> (3) -> output]
  (1): nn.BatchFlip
  (2): nn.Copy
  (3): nn.Sequential {
    [input -> (1) -> (2) -> (3) -> (4) -> (5) -> (6) -> (7) -> (8) -> (9) -> (10) -> (11) -> (12) -> (13) -> (14) -> (15) -> (16) -> (17) -> (18) -> (19) -> (20) -> (21) -> (22) -> (23) -> (24) -> (25) -> (26) -> (27) -> (28) -> (29) -> (30) -> (31) -> (32) -> (33) -> (34) -> (35) -> (36) -> (37) -> (38) -> (39) -> (40) -> (41) -> (42) -> (43) -> (44) -> (45) -> (46) -> (47) -> (48) -> (49) -> (50) -> (51) -> (52) -> (53) -> (54) -> output]
    (1): nn.SpatialConvolution(3 -> 64, 3x3, 1,1, 1,1)
    (2): nn.SpatialBatchNormalization
    (3): nn.ReLU
    (4): nn.Dropout(0.300000)
    (5): nn.SpatialConvolution(64 -> 64, 3x3, 1,1, 1,1)
    (6): nn.SpatialBatchNormalization
    (7): nn.ReLU
    (8): nn.SpatialMaxPooling(2x2, 2,2)
    (9): nn.SpatialConvolution(64 -> 128, 3x3, 1,1, 1,1)
    (10): nn.SpatialBatchNormalization
    (11): nn.ReLU
    (12): nn.Dropout(0.400000)
    (13): nn.SpatialConvolution(128 -> 128, 3x3, 1,1, 1,1)
    (14): nn.SpatialBatchNormalization
    (15): nn.ReLU
    (16): nn.SpatialMaxPooling(2x2, 2,2)
    (17): nn.SpatialConvolution(128 -> 256, 3x3, 1,1, 1,1)
    (18): nn.SpatialBatchNormalization
    (19): nn.ReLU
    (20): nn.Dropout(0.400000)
    (21): nn.SpatialConvolution(256 -> 256, 3x3, 1,1, 1,1)
    (22): nn.SpatialBatchNormalization
    (23): nn.ReLU
    (24): nn.Dropout(0.400000)
    (25): nn.SpatialConvolution(256 -> 256, 3x3, 1,1, 1,1)
    (26): nn.SpatialBatchNormalization
    (27): nn.ReLU
    (28): nn.SpatialMaxPooling(2x2, 2,2)
    (29): nn.SpatialConvolution(256 -> 512, 3x3, 1,1, 1,1)
    (30): nn.SpatialBatchNormalization
    (31): nn.ReLU
    (32): nn.Dropout(0.400000)
    (33): nn.SpatialConvolution(512 -> 512, 3x3, 1,1, 1,1)
    (34): nn.SpatialBatchNormalization
    (35): nn.ReLU
    (36): nn.Dropout(0.400000)
    (37): nn.SpatialConvolution(512 -> 512, 3x3, 1,1, 1,1)
    (38): nn.SpatialBatchNormalization
    (39): nn.ReLU
    (40): nn.SpatialMaxPooling(2x2, 2,2)
    (41): nn.SpatialConvolution(512 -> 512, 3x3, 1,1, 1,1)
    (42): nn.SpatialBatchNormalization
    (43): nn.ReLU
    (44): nn.Dropout(0.400000)
    (45): nn.SpatialConvolution(512 -> 512, 3x3, 1,1, 1,1)
    (46): nn.SpatialBatchNormalization
    (47): nn.ReLU
    (48): nn.Dropout(0.400000)
    (49): nn.SpatialConvolution(512 -> 512, 3x3, 1,1, 1,1)
    (50): nn.SpatialBatchNormalization
    (51): nn.ReLU
    (52): nn.SpatialMaxPooling(2x2, 2,2)
    (53): nn.View(512)
    (54): nn.Sequential {
      [input -> (1) -> (2) -> (3) -> (4) -> (5) -> (6) -> output]
      (1): nn.Dropout(0.500000)
      (2): nn.Linear(512 -> 512)
      (3): nn.BatchNormalization
      (4): nn.ReLU
      (5): nn.Dropout(0.500000)
      (6): nn.Linear(512 -> 10)
    }
  }
}
==> loading data
Will save at logs
==> setting criterion
==> configuring optimizer
==> online epoch # 1 [batchSize = 128]
/Users/artcfa/torch/install/bin/luajit: not enough memory..................] ETA: 30m18s | Step: 5s52ms  ```

The error happens around 10/390, long before the first epoch has finished training.

Hi, i had the same problem on a Macbook Pro when I tried
th train.lua --type=float

The problem is related to luajit, which cannot allocate that much memory. So I installed torch with
the following options:
TORCH_LUA_VERSION=LUA51 ./install.sh

which solved the problem. This will result in torch using lua instead of luajit.

nvidia-smi
Sometimes a process may occupy too much GPU memory, you can try to kill this process. I have encountered /usr/lib/xorg/Xorg occupies around 1800 Mb GPU memory.


Set-AuthenticodeSignature does not handle MIME type "application/timestamp-reply"

Description: Problem:
When using Set-AuthenticodeSignature and specifying a TimeStampServer http URL, if the time stamp server returns content/MIME type of: "application/timestamp-reply" the cmdlet returns an unknown error with a status of "ASN1 bad tag value met". This is non-compliant according to RFC3161 for Time-Stamp protocol via HTTP.
Expected - Set-AuthenticodeSignature with a specified timestampserver URL appropriately handles the "application/timestamp-reply" content/MIME, commits the authenticode signature as well as the timestamp from said server without error.
Additionally, the success case today is when using Set-AuthenticodeSignature with a specified timestampserver URL and the response is content/MIME type of "application/octet-stream" the cmdlet returns without error, the authenticode signature is committed and the timestamp is commited without error.

TFS:6897298

We could certainly use a better repro here if someone has one. Either way, it's a fairly low-pri issue, moving it out.

$test = Set-AuthenticodeSignature -Certificate $cert -IncludeChain All -FilePath C:\Powershell
\script.ps1 -TimeStampServer "http://sha256timestamp.ws.symantec.com/sha256/timestamp"
$test.StatusMessage

set-authenticodesignature c:\test.ps1 -certificate $mycert -hashalgorithm "SHA256" -timestampserver "http://sha256timestamp.ws.symantec.com/sha256/timestamp"
will reproduce this error.  Please consider bumping this up in priority, as it stops us from timestamping signed scripts according to Microsoft's new timestamping standards.  Thanks!

Not sure if there's much we can do here, it appears that the cmdlet simply passes the signing to the native CryptUIWiz API which is returning this error.  Looking at the CryptAPI, it appears they only support octet-stream.  They would need to support timestamp-reply and this cmdlet should just work.
Best way to get this supported is to open or upvote a issue here: https://wpdev.uservoice.com/

Vote here to support Jordan Chan proposal "Cryptuiwiz to support timestamp-reply"

User Voice is no longer up... Anyone knows where we can follow this issue?

Sorry I don't know, and I am less interested in this as I have switched to http://timestamp.digicert.com  which works with PowerShell.
Note : Anyone using legacy VeriSign and symantec time stamping services should switch to digicert : https://knowledge.digicert.com/alerts/migration-of-legacy-verisign-and-symantec-time-stamping-services.html


Add The Blood Scheme

This Scheme will be my last for a while, since I think I've been doing this too quickly, but still, this is The Blood, a Dark Red Colour Scheme I created.

The name of the color scheme might get changed if it gets into the game.


Update report-server-executionlog-and-the-executionlog3-view.md

Amended TimeStart, TimeEnd, TimeDataRetrieval, TimeProcessing and, TimeRendering descriptions to make the document more readable.

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

@GaryAshby Thank you for this change. It is much clearer now that you have made these improvements. @maggiesMSFT Maggie, I am going to approve this as the wording and descriptions seem very clear. But let me know if you have any concerns. Thank you! #sign-off

@GaryAshby Thank you for this change. It is much clearer now that you have made these improvements. @maggiesMSFT Maggie, I am going to approve this as the wording and descriptions seem very clear. But let me know if you have any concerns. Thank you! #sign-off

@rothja: I'm sorry - only the author of this article, @maggiesMSFT, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.

@rothja: I'm sorry - only the author of this article, @maggiesMSFT, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.

Thanks @rothja and @maggiesMSFT . I’ve delete my branch to clean up. Thanks for all your hard work. Have a wonderful day and have fun.

Thanks @rothja and @maggiesMSFT . I’ve delete my branch to clean up. Thanks for all your hard work. Have a wonderful day and have fun.

Thanks, @GaryAshby and @rothja ! I appreciate your work!

Thanks, @GaryAshby and @rothja ! I appreciate your work!


Fix compile gcc from cygwin

By letting CMake handle the windows library suffix (.lib or .a)
First contribution Hope requirements are met

Thanks


Please tell me how you can remove or add items?

When I remove an item, the old information remains in the component and does not change.
https://user-images.githubusercontent.com/38227632/104191918-cecd8d00-5426-11eb-835f-5ed3c9c36ff5.mov

thanks, I figured it out, made it through the states
https://codesandbox.io/s/6l664oq74r?file=/src/index.js:580-626

thanks, I figured it out, made it through the states
https://codesandbox.io/s/6l664oq74r?file=/src/index.js:580-626


Face detection is not working with portrait mode below nougat devices ?

Face detection is not working with portrait mode below nougat devices ?
do you have nay idea to fix it?

'm also facing same problem. If you solved that let me know. Thank you


⚠ Bofrost.es has degraded performance

In 2a9eb3b, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1534 ms

Resolved: Bofrost.es performance has improved in e435d8f after 6 minutes.


Add arm64 build

comment out protoc-gen-lint as it does not have arm64 build (could make it conditional)

4hrs to build, insane. Trying out another approach in #35 which might be caching intermediate layers in GH cache and might be faster going forward. For now merging this just to get an image out to test.


Random Image

Home page should show an image at random, and endlessly fade in/out between the pics

https://codepen.io/cliffpyles/pen/tuwHG
Inspiration ^


[BUG] - api_get_specification is broken

Describe the bug
The api_get_specification HTTP endpoint seems to be completely broken. There are two bugs here:
Bug 1:
            task, solve_id = conda_store.register_solve(db, specification)
            task.wait()

The task here can be a str sometimes, which causes a ValueError. I think it needs to be wrapped into AsyncResult here.
Bug 2:
        return {"solve": solve.packages}

There's no .packages in Solve anymore. This was introduced when the DB schema was refactored, way before I was even part of the project. The new proper name is package_builds.
Expected behavior
The endpoint returns some data instead of raising an error.
How to Reproduce the problem?
Just call the endpoint. Some tests call it as well, which is how I noticed, but maybe those tests expect status codes 500 or 400, so they all pass. Those tests need to be looked at.
Output
This is printed to the terminal:
'str' object has no attribute 'wait'

Versions and dependencies used.
Current main (988445bfbc7de8e34ee36e2128471a9869c605cd).
Anything else?
No response

@peytondmurray can you check if this is still an issue?

A quick search of the tests doesn't show any that directly send a GET to /api/v1/specification/, every one of them is a POST. But sending a GET to /api/v1/specification/ indeed raises an error, and I get a 500 response from the server:

Closing in favor of #615, should be fixed by #913.


Add annotations for exception methods

Adds @method annotations to GuzzleException, as suggested in #1257, in order to help IDEs and static analysis tools.

Thanks a lot @jyggen


[Enhancement] Method makes literal string comparisons passing the literal as an argument [HTTPClientHandler]

Search before asking

[X] I had searched in the issues and found no similar issues.

Enhancement Request

located at:
eventmesh-runtime/src/main/java/org/apache/eventmesh/runtime/admin/handler/HTTPClientHandler.java line 179,182,185
analysis and explanation:
This line is in the form of String str = str.equals("someOtherString");
A NullPointerException may occur if the String variable str is null. If instead the code was restructured to String str = "someOtherString".equals(str);that is, call equals() on the string literal, passing the variable as an argument, then this exception could never happen as both equals() check for null.
Describe the solution you'd like
Adjust the code to String str = "someOtherString".equals(str).
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

I would like to work on this.

I would like to work on this.

@ChelseaChanu Welcome, you can submit a pr first.


modeling relative intakes of different types of food

We need an OWL design pattern and possible materialized pre-composed classes representing relative intakes, e.g. reduced fruit/vegetable in diet, increased sugar from carbonated beverages. This is for https://github.com/cmungall/environmental-conditions/
The food classes would themselves come from foodon. But I would suggest that the intakes are represented as activities and live somewhere else. These may naturally cluster with activities in a physical activity ontology (e.g. sedentary activity, exercise activity, cc @mateolan )

Agreed, definitely have been working on including eating and eating
patterns in the physical activity ontology . We just need to get Physical
Activity ontology pushed up to GitHub to make this more seamless. Love your
help with that. ;-)
On Mon, Aug 8, 2016 at 5:03 PM, Chris Mungall<EMAIL_ADDRESS>wrote:

We need an OWL design pattern and possible materialized pre-composed
classes representing relative intakes, e.g. reduced fruit/vegetable in
diet, increased sugar from carbonated beverages. This is for
https://github.com/cmungall/environmental-conditions/
The food classes would themselves come from foodon. But I would suggest
that the intakes are represented as activities and live somewhere else.
These may naturally cluster with activities in a physical activity ontology
(e.g. sedentary activity, exercise activity, cc @mateolan
https://github.com/mateolan )
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/FoodOntology/foodon/issues/15, or mute the thread
https://github.com/notifications/unsubscribe-auth/ABmTI7peh8Pkbsq_f2In3LgM91HJ-LoPks5qd8PpgaJpZM4JfmE9
.

This issue may have resolution now in the Ontology for Nutritional Studies (ONS) which handles dietary pattern.  See: https://github.com/enpadasi/Ontology-for-Nutritional-Studies


goenv global and local to use latest Patch Version when unspecified

Same behaviour as goenv install 1.20.
e.g.:
goenv install 1.20 && goenv global 1.20
Currently responds goenv: version '1.20' not installed

Ah I see; so we need to port the behavior from install into global/local. Should be straightforward enough!

Will work on this next.

any ETA on this one ?

Apologies! Have been quite busy with life so I hadnt had much time to look at it. Will try to get it in the next week or so.

Looks like this is failing during validation in goenv-prefix when writing the version file.

fixed in goenv 2.1.13


Properly update GitLab

GitLab 8.1 was released a few days ago, however I spawned my C1 instance before this release. How to properly update GitLab on a GitLab C1 image ? Is this possible ? Is this recommendable ?

Yes it is possible, you have to follow instruction in the official GitLab documentation https://about.gitlab.com/downloads/#raspberrypi2


Jetpack Compose support milestone

Now Compose in beta03, any milestone to support Jetpack Compose? :))))

Hello @mochadwi ,
there are no plans to support Compose right now. It is still not available to general population, as it still requires canary version of Android Studio. But after things get 3-stable (as in *.*.3 version rule for Android Studio), sure - Compose support is possible 😄

Awesome👍👏😊 thanks for the updates

For those wants to use Markdown support for Jetpack compose, as alternative we can use this https://github.com/jeziellago/compose-markdown
Or we can also still use TextView as AbstractComposeView or AndroidView in Compose afaik

Thanks @mochadwi for the information. It seems, though, that the library is using Markwon internally so it might not be an alternative, more like an option. Still, good to know 👍
I'm going to close this issue now until further developments

Compose now stables: https://developer.android.com/jetpack/androidx/releases/compose#versions 🎉

For those wants to use Markdown support for Jetpack compose, as alternative we can use this https://github.com/jeziellago/compose-markdown
Or we can also still use TextView as AbstractComposeView or AndroidView in Compose afaik

other references: https://github.com/halilozercan/compose-richtext

Maybe it is time to reopen? Would be really nice to get compose version of toMarkdown method that returns annotatedString.

I am also migrating to compose, :-)

We're currently migrating a screen which uses Markwon from Fragment to Compose. It would be really nice if Markwon provides native Compose support, especially since Compose is now already at version 1.4 😃 Thank you! 🙏🏼

If your only requirement is handling Markdown-style hyperlinks and not formatting, please have a look at my MarkdownLinkText composable which I just wrote as a workaround.


fix: wrong parameters order

This checklist is used to make sure that common guidelines for a pull request are followed.

For new extensions:

[ ] My extension description/summary conforms to the Extension Summary Guidelines.

About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update src/index.json automatically.
The precondition is to put your code inside this repository and upgrade the version in the pull request but do not modify src/index.json.

spring

build

help

duplicated with another PR
https://github.com/Azure/azure-cli-extensions/pull/5591


Bug fix for forward refs in generics

Change Summary
Converts string to Forward Refs to allow for generic case
Also to fix discriminated unions allows Literals to pass through replace types unchanged.
Related issue number
fix #6130
Selected Reviewer: @dmontagu

I see this is breaking one of the discriminated union tests, do you have an idea of how to resolve that? If we can get that fixed I'd be happy to merge this.

Hi David - so I've been trying to figure this out, this much I know:
The test used to fail for me in python3.10, then I added the check for is Literal (it was failing because the string in the literal was being converted to a ForwardRef)
I fixed it, but then when I uploaded I found it was producing the same bug in python3.9 and below, but not 3.10 or 3.11. I don't understand this because it should use the same function. It must be something to do with the conditional imports based on version that are changing the behaviour. I'll look into it some more and see what I can find but any thoughts on it would be appreciated!

I've had a follow up thought on this - 3.9 or less does not have the list dict features, so it's possible there is a different part of the code that executes instead of replace args but that has a similar role.

@dmontagu All tests fixed - should be good to merge


Add a Gitter chat badge to README.md

casey/just now has a Chat Room on Gitter
@casey has just created a chat room. You can visit it here: https://gitter.im/just-because/Lobby.
This pull-request adds this badge to your README.md:

If my aim is a little off, please let me know.
Happy chatting.
PS: Click here if you would prefer not to receive automatic pull-requests from Gitter in future.

Thanks but no thanks, those tracking parameters are gross.


referenced repo is no longer available

The referenced repo is no longer available.

@lukeed, this is also mentioned in issue #3016. Do you have an updated link for the demo source code? Or would you prefer we remove the mentions from the page (as @adaptive is suggesting)?

fixes #3016 (Just for github workflow)

we have an internal transfer request in progress. sorry i missed the mention


[F40] Can't update DevPod

Describe the bug
Opening DevPod and clicking on [Install now] makes it loading indefinitely.
Probably related on why some buttons that should open in the browser don't work at all.
What did you expect to happen?
Well, to update.
Output of rpm-ostree status
State: idle
AutomaticUpdates: stage; rpm-ostreed-automatic.timer: last run 15min ago
Deployments:
  ostree-image-signed:docker://ghcr.io/ublue-os/bluefin-dx:latest
                   Digest: sha256:6cf03db9f52c9464009fc82c4d9a4dadf836cde728cc101e0496497d7659281c
                  Version: 40.20240527.0 (2024-05-27T16:53:29Z)
                     Diff: 25 upgraded

● ostree-image-signed:docker://ghcr.io/ublue-os/bluefin-dx:latest
                   Digest: sha256:b2427086c53a19908c1a66c950be9c38360965366342e933a5c15fd9861ebebf
                  Version: 40.20240526.0 (2024-05-26T18:47:01Z)

  ostree-image-signed:docker://ghcr.io/ublue-os/bluefin-dx:latest
                   Digest: sha256:2111bb2be0572ddf24b3776b23f25ab40a81c7974c3ec08874d3264faa8187e1
                  Version: 40.20240526.0 (2024-05-26T17:36:12Z)

Output of groups
superman wheel docker incus-admin lxd libvirt

Extra information or context

Related https://universal-blue.discourse.group/t/devpod-update-keeps-spinning/211/3

/usr is mounted read-only so the update button inside the application will not work.
We are now using a copr to provide the updated packages.
For things like this, updates will be handled at the image level.


On close of Site set-up status panel (which appears during new site creation using custom site design) site updates are not displayed until manual browser refresh

Category

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

When creating a new site using a custom site design(with action to add webpart to landing page etc), a panel with close option(at top right corner of the panel) will open up on the right showing the set-up status for the new site. If the user click on close of the panel during the site updation process or after the site updation process completion the site does NOT show custom site design updates.

Expected or Desired Behavior
Even on close of the set-up status panel, site should refresh to show the custom site design updates.
Observed Behavior
Only on manual browser refresh custom site design updates is displayed.
Steps to Reproduce

Go to Sharepoint.aspx page
Click on + Create Site
Select custom Site Design option
Enter new site details and click on Next button
Click on Finish
New site will be displayed with a overlay panel opened up on the right showing the set-up status for the new site
Click on Close (top right of the panel)
Default site template without custom site design updates is displayed.

I guess you want to add some SPFx to the custom site design.
The SPFx relay on the Dom element, so it not add the page directly without initializing. So the site need manual to refresh.
Some enhancement are needed but maybe it should not be treated as bug.

Agree. Would be glad if it is addressed as enhancement.


Add coverage task to mocha target

Closes demurgos/turbo-gulp#48

Codecov Report

Merging #60 into master will increase coverage by 0.47%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master      #60      +/-   ##
==========================================
+ Coverage   66.19%   66.66%   +0.47%
==========================================
  Files          35        2      -33
  Lines         840       39     -801
  Branches       87        3      -84
==========================================
- Hits          556       26     -530
+ Misses        223       13     -210
+ Partials       61        0      -61

Impacted Files
Coverage Δ

src/lib/task-generators/pug.ts

src/lib/utils/project.ts

src/lib/utils/utils.ts

src/lib/target-tasks/_typescript.ts

src/lib/project-tasks/index.ts

src/lib/project-tasks/lint.ts

src/lib/task-generators/clean.ts

src/lib/options/tslint.ts

src/lib/targets/_base.ts

src/lib/targets/node.ts

... and 25 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 f9dc186...e49e9e7. Read the comment docs.


Fixed #99: Changed default sort order for submited licenses, removed …

Changed default sort order for submitted licenses to submissionDatetime in descending order
Moved redundant CSS from xml_upload and license_information files
Generalized CSS using bootstrap

@ithompson4  I am not sure if this sorting would work. This compares string and would classfiy April>May

LGTM. Thanks!
Can you also do this with archived license requests?

Ok, I will do it.


Bot Proposal: "Needs Version Info"

Background
We get a large number of incoming issues that do not include important information such as the VS Code version the author was using when they encountered the issue.
For bugs, this information helps us know whether a bug we thought we fixed has come back, or if the user just isn't on a version that contains the fix.
Similarly for feature requests, it is helpful to know when a user is asking for a feature that has already been implemented whether they are unable to discover the existing feature (in which case we might consider increasing visibility), or if they're simply on a version that doesn't have the feature yet (in which case we ask them to upgrade).
We previously had a bot to request version information, but it had a couple issues and is currently disabled.
As evidence for the need of version information, querying the string "what version" against the set of vscode issues yields around 1,300 results. This is information that previously a team member had to request and wait for, but now will be requested immediately by the bot, which should then make the turnaround time much smaller.
Proposal
On new issue
If the issue author is a maintainer, do nothing.
Otherwise, if the issue has a vscode version string, do nothing.
Otherwise, trigger a comment to be created requesting more info (and possibly stating the latest stable version is XXX and users should be on it), and add the needs more info label.
On update to issue
If the only activity on the issue is the comment requesting version info, and the issue now contains version info, remove the needs more info label.
Potential issues
Some team members complained of the old bot that it created too much noise in the issue timeline and required them to do more work in label management as now they had to remove the needs more info label in addition to what other triage work they performed. By augmenting the bot to remove the label itself, some of this work will no longer be needed. Further, we could look into making the bot delete its comment, but I believe that should be avoided for the sake of transparency.

I am not keeping track of this but I don't remember when I have asked for the version the last time.  IMO this is totally overrated and add bureaucracy to the whole process

I ask for it a lot, OS version is especially important for me on Windows
This is my saved reply (more generic than just version):

It looks like your report is missing some important information, See this wiki page for more info on how to report actionable terminal issues.

But still, the bot seems a little overly aggressive imo.

I am not sure I would need this. However, I often set the "needs more info" label when the description is slim. Maybe the bot should just do that?

@bpasero It's hard to know what "slim" means programatically. Maybe instead of this version approach we could look at training a model.

I put up a new Action that will clean up after itself (remove its comment and the label) once the issue has been modified to contain version info. It will also not flag feature requests, so long as they leave the template intact (I added a NEEDS_VERSION_INFO_IGNORE flag to a comment in the template and instructed users to not remove it).
This should hopefully address @jrieken and @isidorn complaints about extra work needed on the inbox tracker's side, as the bot will have no lasting impact for users that do add the version info.
As for @bpasero's suggestion we flag "slim" issues, the idea behind this is that containing version info is an indicator f the slimness of the issue. If this ends up not holding out we can look into other ways of programmatically determining if the issue needs more information.

I put up a new Action that will clean up after itself (remove its comment and the label) once the issue has been modified to contain version info.

I think I wasn't clear: I am not interested in the version info, I don't want that the bot annoys users to add this. It makes the process for them more pain full and I still have to ask my questions. I understand that this is important for some of us (like the exact windows version for terminal issues) but how is this a general issue? Yes, I also keep asking the same questions, like attaching CPU profiles, attaching snippets etc but I use saved replies for that I am not forcing that onto all issue authors nor on the whole team.

Everything what Joh just said applies to me as well. I like my issues as clean as possible.
Idea: every auto assigned label can opt into this behavior. So for example if the bot figures out it is a terminal issue, Daniel can configure the bot that for temrinal issue the bot asks for the version number.

Either the bot knows this per area or (and I believe that simpler) we have the same as we now have for "caused by extension", e.g a fast way to insert a saved reply. I always find it hard to find the right saved reply and I would very much like to type /r perf_ext  and that would insert default replies for how to profile the extension host. Others might have /r win_ver to ask the user to insert the exact windows version etc

Daniel can configure the bot that for temrinal issue the bot asks for the version number.

I don't really want this either for the annoy problem. I don't think this can be solves because so many things do not need version info and currently my saved reply works just fine. Sure it would be nice to always have version info before I go to the notification but I don't think it's worth it to annoy most users about this.
Perhaps even better would just be the new label ~needs version info that acts much the same as ~needs more info, then I can use that instead of my saved reply. I haven't tried using it yet though. It's easier than remembering and typing out a command and can be done in fewer key strokes (l, vers, enter).

out a command and can be done in fewer key strokes (l, vers, enter).

My struggle is that focus is too often in the comment box and I am too stupid to move out of there

I don't think it's worth it to annoy most users about this

This would only apply to the set of users that report an issue from the web UI rather than the internal flow, and then only those that disregard our asking for version info in the issue template. Over the past ~12 hours, that's been three people. One of which was a "we've put the information in your clipboard", who then pasted their clipboard on being notified by the bot (they might have pasted it regardless, but this at least nudges them in the direction of double checking). The other was an instance where version info really does help, as they later posted their version to be 1.4.3_x64, which suggests something strange regardless. The third just closed the issue themselves, not sure whats going on there but 🤷♀
https://github.com/microsoft/vscode/issues/93478
https://github.com/microsoft/vscode/issues/93476
https://github.com/microsoft/vscode/issues/93449
Maybe we can wait and see how this plays out in real world use cases?

https://github.com/microsoft/vscode/issues/93478
☝ I think's that actually bot. A good and a bad sample of how the bot works. Yes, if an issue only contains the placeholder message -> the YES add a comment, if you ask me close the issue right away. But now, with the comment added I already now what this is, there is no more reason to wait for the user to add version info and anything alike

For #93478 the flows are:
With Bot:
Inbox tracker asks what language/extension they're using and then closes as caused by extension
Without bot:
Inbox tracker asks for them to paste
Waits for them to paste
Inbox tracker asks what language/extension they're using and then closes as caused by extension
It removes inbox tracker work and lead time

Inbox tracker asks what language/extension they're using and then closes as caused by extension

My definition of the inbox tracker role is to assign item to owners, e.g in this case the inbox trackers see formatting and assigns this to formatting-owner. That's it.

Okay, but that doesn't change the overall comparison

Sure - not disagreeing on that. I say the version info has no value, it should not be the blocker here. The lack of any information should be.

I agree, like Ben earlier said we're really looking for issues which are "thin" in their descriptions. But absent a String#isThin() method, we're using presence of the version information we specifically request as an indicator. If this ends up not being a good indicator, we can try other things, like developing a NLP model or something. But if version number works 95% of the time, the time taken to develop and maintain such a model would be a waste.
We could potentially omit references to version number in the bot's comment to avoid people adding a version number to an otherwise sparse issue.

Another case: https://github.com/microsoft/vscode/issues/93487
Would anyone not ask for their VS Code version as an initial step in debugging this?

Would anyone not ask for their VS Code version as an initial step in debugging this?

That depends - you might have a dupe for this because there is a regression, you might know right  away what this is because you refactored something in that area. There is no generic answer. The thing that's almost always true is that the feature are owner knows best

Sure the owner might know of a recent code change or ongoing issue, but in all the cases they don’t (and even if they do), it would still help to know if this is, for instance Insiders or Stable.
We still haven’t seen any examples of people being upset that they were asked to include version information. If those start appearing I think that’d be a good indication to reconsider.

We still haven’t seen any examples of people being upset that they were asked to include version information.

👋 I am upset. And then, really? Is that the approach? We add pointless bureaucracy till people scream?
Don't get me wrong. I am all for useful issues and all against useless issues. Not english? Useless. No content? Useless. Thin? Useless. And while version information surely plays into this, it is not the only single thing. If I see an issue which says "with latest insiders format on save is broken" then that's a good issue.
Detecting a good issue is hard, using a regex to fish for a version number is easy but that doesn't make it a good check for declaring if an issue is good or not.

Inclusion of the string “insiders” does count as a version, just by the way.

but it's main responsibility is to route issues to the actual feature area owner.

⬆  from https://github.com/microsoft/vscode/wiki/Issue-Tracking#inbox-tracking-and-issue-triage. The inbox tracker doesn't need to ask these questions, I don't know under what assumption you are doing this?

All I’m saying is that we should validate those hypotheses before taking on those tasks.

Agree, but don't do it in the field on real people. How about looking at issues that weren't actionable (closed as needs more info) because the version info was missing?

This bot effort is all about reducing the effort it takes to work with issues as we scale. And while version info isn't always important, it is often important and can change the amount of time it takes to action an issue from 5+ minutes to locally verify or multiple back-and-forths into 10 seconds if they're on an old version for example. Version info is also an example of something that is very easy to fetch, relatively easy to scan for and most developers have the expectation that they would need to include version information in a bug report anyway
We could "solve" this for the majority of cases and very rarely need to ask for version info again by having the bot identify issues that lack it, and keeping the issue out of the triage queue until version info is provided.
I'm all for adding the little more friction for user reporting when it can save us more time and make dealing with notifications less of a chore. It is extremely easy for the user to get their version info, we could have the bot use a picture that points out how to get it. Note also we could have the bot be quite permissive/optimistic and still pass it on to the inbox tracker/area owner if the user commented and the bot couldn't detect a version.

Extending this, if we do spot a version and it's several months old, the bot could also keep that out of the inbox tracker queue and make a comment like this:

It looks like you're on an old version of VS Code, could you try updating to see if it still reproduces and comment with the results?

Then when the user comments it goes into the inbox tracker queue. All these little things we could be doing will save us each a lot of time in aggregate, and that time saved will double when we have double the users.

This has been disabled for now.

I'm late to the party, but here are my 2 cents:
I think it is fair to assume that an incoming issue is either coming from latest stable or from latest insiders.
So what I do is: regardless of the version in the issue, I just try to reproduce on master. If I cannot reproduce, then I tell the people I cannot reproduce and show them a screenshot or a screen recording of me trying to reproduce and failing and inviting them to reproduce in insiders.

Those using GitHub's predefined replies might be interested in using /needsMoreInfo as part of your reply (on a separate line). That will add the label and a comment from the bot.

Moving to a model where the bot first categorizes issues into feature areas, then is able to request additional info based on them.


Consolidate Kube deploy docs

Signed-off-by: Usha Mandya<EMAIL_ADDRESS>Consolidate docs to maintain one version of Kube deploy docs instead of the duplicates within Mac and Windows topics. This PR also moves detailed info from the Kubernetes section in User Manual to the Kube deployment guide.

@StefanScherer Could you PTAL?


Use http.Client with Timeout for SSE will Cause Subscription Error

go-marathon use the same http.Client for both regular HTTP API requests and SSE subscription:
（https://github.com/gambol99/go-marathon/blob/master/subscription.go#L182）:
	// Try to connect to stream, reusing the http client settings
	stream, err := eventsource.SubscribeWith("", r.httpClient, request)

If r.httpClient have Timeout set, which is needed for normal HTTP API calls, SSE Timeout Error will be raised:
[go-marathon] ERROR watch SSE failed: stream ERROR: net/http: request canceled (Client.Timeout exceeded while reading body)

My gut feeling is that we should ignore / disallow the timeout setting on the HTTP client instance when it comes to SSE: That timer covers reading the body, something which (to my understanding) will never finish during an ongoing SSE stream.

With #297 merged, we now accept another HTTP client specific to SSE subscriptions and return an error if the timeout is set.
Closing issue as resolved.


[SPARK-9172][SQL] Make DecimalPrecision support for Intersect and Except

JIRA: https://issues.apache.org/jira/browse/SPARK-9172
Simply make DecimalPrecision support for Intersect and Except in addition to Union.
Besides, add unit test for DecimalPrecision as well.

Merged build triggered.

Merged build started.

Test build #37771 has started for   PR 7511 at commit 9fb0d49.

Test build #37771 has finished for   PR 7511 at commit 9fb0d49.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Wait for #7510 to solve the compilation error.

retest this please

Merged build triggered.

Merged build started.

Test build #37772 has started for   PR 7511 at commit 9fb0d49.

Test build #37772 has finished for   PR 7511 at commit 9fb0d49.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

cc @cloud-fan for review

lgtm

Merged build triggered.

Merged build started.

Test build #37795 has started for   PR 7511 at commit 4d29d10.

Thanks - merging this in.

Test build #37795 has finished for   PR 7511 at commit 4d29d10.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.


web_client error: cannot find module 'canvas'

The first step of setting up the web_client example, npm install, fails with:
npm ERR! code 1
npm ERR! path ../../../prismarine-viewer
npm ERR! command failed
npm ERR! command sh -c node viewer/prerender.js && webpack
npm ERR! node:internal/modules/cjs/loader:922
npm ERR!   throw err;
npm ERR!   ^
npm ERR!
npm ERR! Error: Cannot find module 'canvas'
npm ERR! Require stack:
npm ERR! - ../../../prismarine-viewer/viewer/lib/atlas.js
npm ERR! - ../../../prismarine-viewer/viewer/prerender.js
npm ERR!     at Function.Module._resolveFilename (node:internal/modules/cjs/loader:919:15)
npm ERR!     at Function.Module._load (node:internal/modules/cjs/loader:763:27)
npm ERR!     at Module.require (node:internal/modules/cjs/loader:991:19)
npm ERR!     at require (node:internal/modules/cjs/helpers:92:18)
npm ERR!     at Object.<anonymous> (../../../prismarine-viewer/viewer/lib/atlas.js:2:27)
npm ERR!     at Module._compile (node:internal/modules/cjs/loader:1102:14)
npm ERR!     at Object.Module._extensions..js (node:internal/modules/cjs/loader:1131:10)
npm ERR!     at Module.load (node:internal/modules/cjs/loader:967:32)
npm ERR!     at Function.Module._load (node:internal/modules/cjs/loader:807:14)
npm ERR!     at Module.require (node:internal/modules/cjs/loader:991:19) {
npm ERR!   code: 'MODULE_NOT_FOUND',
npm ERR!   requireStack: [
npm ERR!     '../../../prismarine-viewer/viewer/lib/atlas.js',
npm ERR!     '../../../prismarine-viewer/viewer/prerender.js'
npm ERR!   ]
npm ERR! }

Subsequent npm installs or npm run build-start (even after e.g. my first guess npm install --save canvas) seem to error with
ERROR in ../../../asap/asap.js 64:11-18
Module not found: Error: Can't resolve 'process/browser' in '../../../asap'
 @ ../../../promise/index.js 6:11-26
 @ ../../../event-promise/index.js 1:14-32
 @ ../../../prismarine-world/src/world.js 4:13-37
 @ ../../../prismarine-world/index.js 1:0-42
 @ ../../viewer/lib/worldView.js 3:28-65
 @ ../../viewer/index.js 3:13-49
 @ ./index.js 7:30-65

Remove the "prismarine-viewer": "file:../..", in the package.json and do npm install prismarine-viewer

Remove the "prismarine-viewer": "file:../..", in the package.json and do npm install prismarine-viewer

Thanks, it's running now, but it always times out:
Connected to localhost:25565 (de8fdb9498a81150bd0149c6fcc7b24cecdd157be43dfcfc4b9014314652f3cc)
Forwarding socket with token de8fdb9498a81150bd0149c6fcc7b24cecdd157be43dfcfc4b9014314652f3cc
Connected to localhost:25565 (5b274b4949ff83f606d6b5ca70c59a2d5a66ea323b47f99ead3ceca08cb1e63b)
Forwarding socket with token 5b274b4949ff83f606d6b5ca70c59a2d5a66ea323b47f99ead3ceca08cb1e63b
TCP connection closed by remote (de8fdb9498a81150bd0149c6fcc7b24cecdd157be43dfcfc4b9014314652f3cc)
Websocket connection closed (de8fdb9498a81150bd0149c6fcc7b24cecdd157be43dfcfc4b9014314652f3cc)
TCP connection closed by remote (5b274b4949ff83f606d6b5ca70c59a2d5a66ea323b47f99ead3ceca08cb1e63b)
Websocket connection closed (5b274b4949ff83f606d6b5ca70c59a2d5a66ea323b47f99ead3ceca08cb1e63b)
Connected to localhost:25565 (b0d1b137f45d2976dff9f846bbe0aaf31969205b4485ff25d6257524abb3fe28)
Forwarding socket with token b0d1b137f45d2976dff9f846bbe0aaf31969205b4485ff25d6257524abb3fe28
Connected to localhost:25565 (24a6b2d8b679140361ceb90539470cc6105bd91a549dc8fea0b1ab745c6861a4)
TCP connection closed by remote (b0d1b137f45d2976dff9f846bbe0aaf31969205b4485ff25d6257524abb3fe28)
Websocket connection closed (b0d1b137f45d2976dff9f846bbe0aaf31969205b4485ff25d6257524abb3fe28)
Forwarding socket with token 24a6b2d8b679140361ceb90539470cc6105bd91a549dc8fea0b1ab745c6861a4
TCP connection closed by remote (24a6b2d8b679140361ceb90539470cc6105bd91a549dc8fea0b1ab745c6861a4)
Websocket connection closed (24a6b2d8b679140361ceb90539470cc6105bd91a549dc8fea0b1ab745c6861a4)

[14:31:33 INFO]: UUID of player pviewer_person is b5ccc8ad-2c12-3b62-8f45-77cd3f4061a3
[14:31:33 INFO]: pviewer_person joined the game
[14:31:33 INFO]: pviewer_person[/<IP_ADDRESS>:54835] logged in with entity id 1 at ([world]8.5, 56.0, 8.5)
14:31:48 INFO]: pviewer_person lost connection: Timed out
[14:31:48 INFO]: pviewer_person left the game
[14:32:47 INFO]: UUID of player pviewer_person is b5ccc8ad-2c12-3b62-8f45-77cd3f4061a3
[14:32:47 INFO]: pviewer_person joined the game
[14:32:47 INFO]: pviewer_person[/<IP_ADDRESS>:54852] logged in with entity id 3 at ([world]8.5, 56.0, 8.5)
[14:33:02 INFO]: pviewer_person lost connection: Timed out
[14:33:02 INFO]: pviewer_person left the game

(There are so many errors because I refresh localhost:8080 to try and reconnect, but then it just times out again)

Thanks, it's running now, but it always times out:
Connected to localhost:25565 (de8fdb9498a81150bd0149c6fcc7b24cecdd157be43dfcfc4b9014314652f3cc)
Forwarding socket with token de8fdb9498a81150bd0149c6fcc7b24cecdd157be43dfcfc4b9014314652f3cc
Connected to localhost:25565 (5b274b4949ff83f606d6b5ca70c59a2d5a66ea323b47f99ead3ceca08cb1e63b)
Forwarding socket with token 5b274b4949ff83f606d6b5ca70c59a2d5a66ea323b47f99ead3ceca08cb1e63b
TCP connection closed by remote (de8fdb9498a81150bd0149c6fcc7b24cecdd157be43dfcfc4b9014314652f3cc)
Websocket connection closed (de8fdb9498a81150bd0149c6fcc7b24cecdd157be43dfcfc4b9014314652f3cc)
TCP connection closed by remote (5b274b4949ff83f606d6b5ca70c59a2d5a66ea323b47f99ead3ceca08cb1e63b)
Websocket connection closed (5b274b4949ff83f606d6b5ca70c59a2d5a66ea323b47f99ead3ceca08cb1e63b)
Connected to localhost:25565 (b0d1b137f45d2976dff9f846bbe0aaf31969205b4485ff25d6257524abb3fe28)
Forwarding socket with token b0d1b137f45d2976dff9f846bbe0aaf31969205b4485ff25d6257524abb3fe28
Connected to localhost:25565 (24a6b2d8b679140361ceb90539470cc6105bd91a549dc8fea0b1ab745c6861a4)
TCP connection closed by remote (b0d1b137f45d2976dff9f846bbe0aaf31969205b4485ff25d6257524abb3fe28)
Websocket connection closed (b0d1b137f45d2976dff9f846bbe0aaf31969205b4485ff25d6257524abb3fe28)
Forwarding socket with token 24a6b2d8b679140361ceb90539470cc6105bd91a549dc8fea0b1ab745c6861a4
TCP connection closed by remote (24a6b2d8b679140361ceb90539470cc6105bd91a549dc8fea0b1ab745c6861a4)
Websocket connection closed (24a6b2d8b679140361ceb90539470cc6105bd91a549dc8fea0b1ab745c6861a4)

[14:31:33 INFO]: UUID of player pviewer_person is b5ccc8ad-2c12-3b62-8f45-77cd3f4061a3
[14:31:33 INFO]: pviewer_person joined the game
[14:31:33 INFO]: pviewer_person[/<IP_ADDRESS>:54835] logged in with entity id 1 at ([world]8.5, 56.0, 8.5)
14:31:48 INFO]: pviewer_person lost connection: Timed out
[14:31:48 INFO]: pviewer_person left the game
[14:32:47 INFO]: UUID of player pviewer_person is b5ccc8ad-2c12-3b62-8f45-77cd3f4061a3
[14:32:47 INFO]: pviewer_person joined the game
[14:32:47 INFO]: pviewer_person[/<IP_ADDRESS>:54852] logged in with entity id 3 at ([world]8.5, 56.0, 8.5)
[14:33:02 INFO]: pviewer_person lost connection: Timed out
[14:33:02 INFO]: pviewer_person left the game

(There are so many errors because I refresh localhost:8080 to try and reconnect, but then it just times out again)


IMoviePy Error: The file src/temp/final_tts.mp3 Could not be found!

I get this error, its strange, I even tried to move an mp3 file to that directory and it still does not work.
[CONVERTER] Failure : Pitch has not been changed to - LOW
[WinError 2] The system cannot find the file specified
Generate Button Clicked
Path:  C:/Users/andre/OneDrive/Documents/GitHub/BeAnonymous
Include Intro:  True
Video:  0
Music:  0
Script:  test
[TTS GENERATOR] Success : Normal TTS has been Generated
[CONVERTER] Success : Outputfile has been deleted
[CONVERTER] Failure : Pitch has not been changed to - LOW
[WinError 2] The system cannot find the file specified

Looking at the logs & error above, it looks like the generated TTS  file is being deleted even before the converter can process it to change the pitch and generate final_tts.mp3. I know the code is quite messy. For now, you can modify converter's code to prevent it from deleting the generated output file. This might help you get it to work.
Please ensure you have installed the requirements correctly. I recommend using a virtual environment. Additionally, make sure FFMPEG is available to the application.

I promise I'll start working on code improvements this July 😭 LoL

I think this can be solved, If I implement something like a Producer & Consumer Thread for the deletion process of normal TTS mp3.


add proper error handling to wallet send form

This PR adds proper api error handling to the wallet send form, so that we display errors like Not enough money to make this transaction. in the UI instead of failing silently. Also switches to the simple send backend api which does not take title, description etc.

I am not able to test this with the latest cardano-node. I have restored a wallet with 0 money in it and I am able to send Ada from it. The backend is not returning "not enough money to send" error. I end up sending money from wallet with zero money in it to the same wallet and I and up with money in that wallet:

@akegalj: has something changed on the backend?

@darko-mijic yeah this is pretty buggy on the backend side. Sometimes I could rig it correctly by restarting the backend often enough until the correct error message came.
@akegalj if you send more money than the wallet has it throws a really strange 500 internal server error. So that error handling is broken on the backend side.

OK, thanks @DominikGuzei. I suggest we keep this open until we can verify the functionality introduced here.

I have verified this and it works great. I will close this PR and create a new one against the master branch since our workflow has been updated.


Running this program requires OpenGL version 2.1 or higher.

I am running an application and it reports an error "Running this program requires OpenGL version 2.1 or higher. The program will now exit".
How can I resolve this?
I have installed NVIDIA graphics card drivers on the physical machine, and executing "nvidia smi" is not a problem on both the physical machine and the container, but not on the window system

Is it related to the use of Ubuntu Server 22 on the physical machine? Should I use the desktop version instead?


Content for Methods Page

Moving the MoTrPAC study docs table from the Releases page to the Methods page.

This request needs to be discussed with the Pipelines team prior to implementation.


fix(stages): include block range in headers checkpoint

Codecov Report

Merging #2950 (c65f560) into alexey/execution-progress (d86a2a7) will increase coverage by 27.62%.
The diff coverage is 93.25%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@                      Coverage Diff                       @@
##           alexey/execution-progress    #2950       +/-   ##
==============================================================
+ Coverage                      43.65%   71.27%   +27.62%
==============================================================
  Files                           1030      515      -515
  Lines                         134430    67255    -67175
==============================================================
- Hits                           58683    47939    -10744
+ Misses                         75747    19316    -56431

Flag
Coverage Δ

integration-tests
17.24% <0.00%> (-0.03%)
:arrow_down:

unit-tests
66.22% <93.25%> (+25.43%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

crates/stages/src/pipeline/sync_metrics.rs
75.00% <25.00%> (-2.78%)
:arrow_down:

crates/primitives/src/stage/checkpoints.rs
88.97% <89.28%> (+2.03%)
:arrow_up:

crates/stages/src/stages/headers.rs
93.99% <100.00%> (+78.80%)
:arrow_up:

... and 692 files with indirect coverage changes


Fixed clause_to_engine bug not finding the right db bind key

fixes #1210

Checklist:

[X] Add tests that demonstrate the correct behavior of the change. Tests should fail without the change.
[X] Add or update relevant docs, in the docs folder and in code.
[  ] Add an entry in CHANGES.rst summarizing the change and linking to the issue.
[X] Add .. versionchanged:: entries in any relevant code docs.
[X] Run pre-commit hooks and fix any issues.
[X] Run pytest and tox, no tests failed.

@davidism I added the requested newlines. I also narrowed down the types and used isinstance checks to confirm the type of class containing the table. That was after digging through the SA code to determine where the "table" attribute came from. That might mean this fix won't work for other situations, but I haven't found other classes with a table attribute that seem like they'd come into play here. I also parameterized the test to confirm it works with 2.0 style.


Add num_cpus to System module

Signed-off-by: Mike Fiedler<EMAIL_ADDRESS>

Resolves #4226
Wanted to minimize conditional logic or using flags.

Maybe a more explicit naming?

Sure, open to suggestions. num_cpus_active, num_cpus_online

cpu_count ?

I find the "cpu" terminology quite confusing, as it's actually the maximum number of concurrent threads the hardware can process at the same time - multicore and hyperthreading abstracts cpu_count away from the number of sockets or even the number of physical cores. However, referring to cpus as the number of threads the hardware can support seems to be pretty common terminology so I think cpu_count is the best so far.

Maybe cores ?

Should we plan for big.LITTLE core flags too? Maybe in a separate PR?

Options core_count, available_cores, online_cores?

A quick and dirty research on other langs:

Java: availableProcessors
Python: cpu_count
C#: ProcessorCount
Go: NumCPU
Ruby: nprocessors
Haskell: getNumProcessors
Rust: num_cpus
Erlang: logical_processors_available

It seems that cpu and processors are the used terms

It looks like cpu_count has the most votes? I like core but cpu is a little more explicit.

And if that's the choice then cpu > processors

I like calling them logical processors - it makes it clear what the number represents - but it might be too verbose.

Thanks for the feedback everyone! I've added a commit incorporating the name change and docs update.

@mverzilli Done!


[BUG][Functional] pcx routes only allow targeting one subnet group, not entire vpc CIDR range

Required Basic Info

Accelerator Version:  v1.3.5

Describe the bug

pcx routes only allow targeting one subnet, not entire vpc CIDR range
see example

Failure Info

Not a failure, simply a feature gap

Steps To Reproduce

use a sample config file, with a local workload account based VPC which is NOT TGW attached
On a workload account named {account-name} on VPC named {vpcname}, add the following config

          "pcx": {
            "source": "operations",
            "source-vpc": "Central",
            "source-subnets": "App",
            "local-subnets": "App"
          }

On that same VPC, add the following to the route table (i.e. {vpcname}VPC_Common):
                {
                  "destination": {
                    "account": "operations",
                    "vpc": "Central",
                    "subnet": "App"
                  },
                  "target": "pcx"
                }

Add the following to the CentralVPC_Common route table on the Central VPC, Central OU:
                {
                  "destination": {
                    "account": "{account-name}",
                    "vpc": "{vpcname}",
                    "subnet": "App"
                  },
                  "target": "pcx"
                }

This works as expected, adding the route to the workload accounts App subnet CIDR's to the Central VPC
but Central should be able to communicate with all subnets in the peered VPC
subnet field is mandatory and removal causes SM to fail
we also do not support adding multiple routes to the same pcx in the same route table

Expected behavior

add ability to drop the subnet parameter (maintain it as optional parameter for existing customers)
use the VPC CIDR range for route creation, rather than the subnets
true for both ends of the connection

Additional context

Customers need to join all workloads in App, Data, Management to the MAD

Fixed in this PR :
https://github.com/aws-samples/aws-secure-environment-accelerator/pull/877


Add preference to delete files permanently by default.

VSCode Version: 1.5.2
OS Version: Ubuntu

When running vscode on a server (ssh -Y ... to that server), delete to trash bin seems not working. You will get an error msg every time when deleting a file. This is annoying.

Steps to Reproduce:

login to another machine via ssh -Y ... and run code there.
try to delete a file.

Starting with our 1.6 release you can hold the Shift key while clicking on delete in the menu and that will bypass the trash. Would that help?

That's nice 😊

This is now very easy in 1.6: you can either press shift when selecting the "Delete" option from the context menu or by just pressing the delete key and holding shift. I think this is good enough and typical OS behaviour. Closing.


Updating documentation

The system documentation, both internal and external, was disorganized and outdated. This feature branch updates and redistributes the documentation appropriately, across the About page, Help page, GitHub monorepo root README, and GitHub schedulizer client sub-directory README.

not ready yet...


chore: outdated dependencies

Hi @ojemuyiwa there is a conflict with supported.browsers.js - i believe this file is now untracked + part of git ignore on master so perhaps you just have to rebase from master to fix


Undefined variable.

} catch (error) {log.error('Device: ${deviceHost} ${deviceName}, did finish launching error: ${error}');
DeviceHost is not defined, shouldn't this be ${host} ? line 113, index.js

Please increase the time-out value from 5000 to 15000, some boxes take a little bit longer to connect.
In openwebifdevice.js on line 380 there is a typo.
await this.openwebif.impulseGenerato.stop();
should be
await this.openwebif.impulseGenerator.stop();


Manually bump OIS in Airnode

Description
Airnode's CI flow currently doesn't use frozen lock files. This means that even patch releases of OIS get installed and this breaks airnode-examples (eg. '1.1.1' won't match the current version of '1.1.2').
To resolve this with minimal fuss for the v0.8.0 Airnode release the ois version was pinned to '1.1.1' (instead of '^1.1.1').
The package will need to be manually updated in future, paying special attention to the airnode-examples.
There may be a slicker alternative to the above, feel free to suggest something or raise it on Slack.
Also refer to https://github.com/api3dao/airnode/pull/1428

Found the cause of the issue and it's because of how we create our docker containers... Working on a fix.

TLDR: There is nothing wrong, but we need to use a specific (pinned) version of the OIS package. See: https://github.com/api3dao/ois/issues/31#issuecomment-1241046424
The reason we have this failure on the CI, specifically in airnode-examples is because we use the snapshot packages published to local NPM registry. They are regular NPM packages (e.g. dist folder is published, without dependencies). The docker containers then use the local registry to install that package. This installs the published content of the monorepo package, but it also installs all the transitive dependencies (e.g. the content of the package.json) and it adheres to the semver, since there is no yarn.lock anymore. This results in<EMAIL_ADDRESS>being installed.

I've rebased @amarthadan PR to master (with pinned ois version) https://github.com/api3dao/airnode/tree/deployments-common-bucket-emo and the CI is passing.
Moving the issue to DONE. This is something that needs to be mentioned in OIS for which there is a separate issue: https://github.com/api3dao/ois/issues/31


Error Post Of Undefined

Hi,
I am getting error as :
Uncaught TypeError: Cannot read property 'post' of undefined

Below is the code:
<audio-recorder
                upload-url="/api/upload/audio"
                :attempts="1"
                :headers="headers"
                :time="1"
                :start-record="callback"
                :stop-record="callback"
                :start-upload="mystartfunction"
                :successful-upload="mysuccessfunction"
                :failed-upload="myfailfunction"/>

Please suggest

I guess the problem in http client. Look at https://github.com/grishkovelli/vue-audio-recorder/blob/master/demo/index.js#L7

@grishkovelli How can I bind the name of the recording in post request user want to save with name?


Updated the function that obtains dns name server address to be compa…

…tible with iOS 7.
Changed the Bonjour advertisement names so that the runtime wouldn't complain about it's length any more.
Updated gitignore for modern user specific Xcode project files.

Cool bro , cracked that 😉


Reject transaction if any input object is overloaded

It is possible for users to create many transactions with the same shared input object, in a rate that is faster than the rate Sui can execute them serially. This PR adds a basic rate limiting mechanism: reject signing or submitting new transactions, if one of its input object ID has > 1000 pending transactions. This scheme is not bulletproof, but should help the case when users are unintentionally generating too much load.
If the overall approach looks ok, I will add tests.

Overall LGTM


Remove stop/start options from workload UI

As k8s doesn't support start/stop for workloads, we are not going to support it in Rancher. Need to remove from the UI

Version - 2.0 master 4/2
Verified fixed


Non HAOS support?

Hey I'm running my Home assistant in a docker image.
I just got onstar2mqtt working in docker as well but mqtt just has the VIN/available topic.
Is there a way to get the devices and such via HACs?

Thanks! I was using the michaelwoods/onstar2mqtt repo!
I'll dig into the code base a bit and see if I can help with that API issue.
I don't even currently have OnStar service right now. Was considering putting a Pi or something in my car to sync the data but if this can work it might be worth the subscription!


Standard installation of ROCm 4.5 leaves linker unable to find shared objects

Following the installation guide https://rocmdocs.amd.com/en/latest/Installation_Guide/Installation_new.html using the amdgpu-install --usecase=hiplibsdk,rocm method leaves the system unable to run Tensorflow-rocm. This is due to several necessary libraries being missing from locations in the LD_LIBRARY_PATH. Prepending a manually extended LD_LIBRARY_PATH fixes this and enables training on the GPU:
$ LD_LIBRARY_PATH="/opt/rocm/rocblas/lib/:/opt/rocm/rccl/lib/:/opt/rocm/hsa/lib/:/opt/rocm/hip/lib/:/opt/rocm/miopen/lib/:/opt/rocm/hipfft/lib/:/opt/rocm/rocrand/lib/::$LD_LIBRARY_PATH" python3 mlp\ classifier.py
OpenCL is unaffected by this.
OS: Ubuntu 20.4.3
CPU: Ryzen9 5900X
GPU: AMD Radeon RX6800

export LD_LIBRARY_PATH=/opt/rocm/lib should satisfied.
The reason is tensorflow-rocm build with /opt/rocm-4.3.1, the current version ROCm is /opt/rocm-4.5.0

It works, but this should probably be added to the documentation.

Hi @PMunkes
Thanks for reaching out.
Good to know that exporting library path solves the issue.
I will work with Documentation team on these changes.
Thank you.

Docs updated with this information now.
https://rocmdocs.amd.com/en/latest/Installation_Guide/Installation_new.html#post-install-actions

Thanks.


how to plot such figure?

hi,
can I know how to plot figure 2? Especially the colorful 3d mesh on the top right side of the figure 2? maybe which package you used. or which code snippets used by you in the repo. thank you!
bestanoy

I believe the visualization of skinning weights is generated here, which is called by this script.

thank you for your reply. can i know which batchsize you used for such great performance?

Hi, the details of optimization is included in the supplement of the paper

Hi, the details of optimization is included in the supplement of the paper

thank you!


Update to comms 0.4.51 (hopefully? <3)

I think I did it correctly

Merged! Thanks for contributing.


Scatter estimates

The code estimates the "scatter" term with a grid search. There might be a better way to get that. The trick is to assume an inverse Gamma conjugate prior and choose the limit where inverse Gamma converges to a uniform distribution. In this case, both the best estimate of the coefficient and the scatter term can be derived analytically.

I don't think we can implement the analytic method of @tingyuansen -- that requires that the input data are heteroskedastic, which they are not.  I think we should either close this, or re-title it to "faster optimization of scatter estimates".  I leave it up to @annayqho

Just to make sure I understand. I suppose David meant the data have to be homoskedastic? The heteroskedasticity is exactly why this estimate does not work.

yes, what @tingyuansen says

I disagree that the implemented code is beyond this analytic formula. In "_do_one_regression", what it does is averaging the chi2 distances (over all wavelength and spectrum). This is mathematically exactly the same as the analytic formula. In fact, in the analytic formula, we only average over the chi2 distance in all spectrum, for a fixed wavelength. Thus, I would argue that the analytic formula is actually more flexible (less assumptions) than the grid search.

I am not sure what you mean.  Let's work with math -- send a pdf file by email to all of us with the math of what you think the grid search is doing and what the analytic formula does.  If what the code currently does can be solved with an analytic formula, there is a bug in the code, because what it is supposed to be doing is finding the maximum likelihood for
logL = 0.5 * sum((data - mean)**2 / (sigma**2 + s**2)) + 0.5 * sum(log(sigma**2 + s**2))

where mean has parameters, and s is a parameter.  When the sigma values are different for every data point (as they are in our case), this has no analytic form, or if it does, you need to publish that asap!
But as I say, let's move to a pdf document, where you say what you think the do_one_regression code is doing, and what the analytic formula would do.  @annayqho can you work with @tingjuansen to check that you agree that everything is the way it should be?

Hi David,
For the coefficient errors (in the other post), I agree that I should write down the math more carefully in a pdf.
As for this post, I think the situation is more "motivational" than "mathematical".
I agree that the exact formula you stated above has no analytic formula. But if we substitute (sigma^2 + s^2) = q^2 , I think we agree that q^2 has an analytic solution (from the pdf I sent last week). The analytic formula still holds when q is a function of lambda (please let me know if you disagree).
Perhaps my question is that I haven't fully grasped the physical motivation to parse the error term in sigma^2 + s^2. In the current grid search, s is independent of both the labels and lambda. It seems to me that q^2 formalism might be cleaner, more flexible (because it is a function of lambda) and perhaps more physically relevant -- i.e. how much intrinsic scatters are there among the labels, given a fixed lambda.

No, I don't agree -- sigma is a N-element vector so sigma2 + s2 is an N-element vector.  I don't see this as having an analytic formula.  Every sigma is different -- heteroskedastic!  Does that answer your question about motivation?

@tingyuansen , you're right that the code steps through each potential value of scatter and calculates the chi squared of the resulting best-fit model. However, your line "in the current grid search, s is independent of both the labels and lambda" worries me. s is in fact dependent on lambda (or at least, it should be!) as it is solved for in each separate map() call. Look at line 168 of train_model: the map() function is called, which calls do_one_regression for each pixel separately and thus solves for a scatter value at each pixel separately. Does that answer your question?

Also, "The analytic formula still holds when q is a function of lambda" -- but q would be a function of object AND of lambda, right? because sigma is the observational uncertainty, which is simply the error on each pixel reported by APOGEE. So even holding lambda fixed, q varies along the object axis.

Hi Anna & David,
Many thanks.
Maybe I don't understand what map() is doing. My understanding is that the blob send all the arrays to "_do_one_regression_at_fixed_scatter". This function gives an array of "chi". All values in the "chi" array are then summed in line 88 "chis_eval[jj] = np.sum(chi*chi) - logdet_Cinv". If this is the case, the chis_evals are summed over all objects and lambda. However, if you confirm that the map indeed parse the array such that the sum is over objects but not lambda, then I should rest my case.
Assuming that this is the case, s^2 and q^2 are both only a function of lambda (averaged over all the objects). In fact, it is intuitive clear that there is no way to derive s (or q) as a function of both lambda and objects -- in this case there are the same number of parameters (#lambda * #objects) to observed values (the flux values as a function of lambda and object). So I disagree that s actually solve the heteroskedasticity in full (but see below)
Regarding Anna question's on q - the analytic formula gives an estimate of q only as a function of lambda (not objects). In the analytic formula does not care about sigma^2.
I agree with David that, s^2 and q^2 are slightly different, s^2 takes care of the observed errors (i.e. giving less weight for noisy data) while estimating the bias (averaged over all objects), while q^2 estimate the bias as a whole, ignoring the noise.
I we want to approximate "s" with the analytic formula for "q", one can imagine giving different weight to each spectrum (by "copying" more spectrum with high S/N) and apply the analytic formula. In this case, I believe the analytic formula for q should be exactly the same as s. Perhaps this is what David asked for (analytic formula for s).
Cheers,
Yuan-Sen

If there is no heterskedastic sigma**2 in do_one_regression, then the code has a bug in it!