[Bug] RuntimeError: CUDA out of memory

:skull: Bug

Hello,
Whenever I train nnDetection on my data, the network first trains for a few epochs and then I get the following error "RuntimeError: CUDA out of memory. Tried to allocate 436.00 MiB (GPU 0; 10.76 GiB total capacity; 7.83 GiB already allocated; 345.44 MiB free; 9.38 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF" (full error message below). I am using a rtx2080 gpu and 12 threads for augmentations.
Some of my data images contain nearly 200 instances, could that be an issue since the error occurs when the code is trying to compute the iou between 2 sets of boxes (of sizes N and M) as a NxM tensor (if there are too many instances then the tensor might be too big). How can I solve that problem ?
Traceback (most recent call last):
File "/home/ma2257/.conda/envs/nndet_v2/bin/nndet_train", line 33, in
sys.exit(load_entry_point('nndet', 'console_scripts', 'nndet_train')())
File "/home/ma2257/new_nnDetection/nnDetection/nndet/utils/check.py", line 58, in wrapper
return func(*args, **kwargs)
File "/home/ma2257/new_nnDetection/nnDetection/scripts/train.py", line 69, in train
_train(
File "/home/ma2257/new_nnDetection/nnDetection/scripts/train.py", line 289, in _train
trainer.fit(module, datamodule=datamodule)
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 553, in fit
self._run(model)
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 918, in _run
self._dispatch()
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 986, in _dispatch
self.accelerator.start_training(self)
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/accelerators/accelerator.py", line 92, in start_training
self.training_type_plugin.start_training(trainer)
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/plugins/training_type/training_type_plugin.py", line 161, in start_training
self._results = trainer.run_stage()
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 996, in run_stage
return self._run_train()
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 1045, in _run_train
self.fit_loop.run()
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/loops/base.py", line 111, in run
self.advance(*args, **kwargs)
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/loops/fit_loop.py", line 200, in advance
epoch_output = self.epoch_loop.run(train_dataloader)
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/loops/base.py", line 111, in run
self.advance(*args, **kwargs)
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/loops/epoch/training_epoch_loop.py", line 130, in advance
batch_output = self.batch_loop.run(batch, self.iteration_count, self._dataloader_idx)
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/loops/batch/training_batch_loop.py", line 101, in run
super().run(batch, batch_idx, dataloader_idx)
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/loops/base.py", line 111, in run
self.advance(*args, **kwargs)
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/loops/batch/training_batch_loop.py", line 148, in advance
result = self._run_optimization(batch_idx, split_batch, opt_idx, optimizer)
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/loops/batch/training_batch_loop.py", line 202, in _run_optimization
self._optimizer_step(optimizer, opt_idx, batch_idx, closure)
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/loops/batch/training_batch_loop.py", line 396, in _optimizer_step
model_ref.optimizer_step(
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/core/lightning.py", line 1618, in optimizer_step
optimizer.step(closure=optimizer_closure)
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/core/optimizer.py", line 209, in step
self.__optimizer_step(*args, closure=closure, profiler_name=profiler_name, **kwargs)
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/core/optimizer.py", line 129, in __optimizer_step
trainer.accelerator.optimizer_step(optimizer, self._optimizer_idx, lambda_closure=closure, **kwargs)
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/accelerators/accelerator.py", line 292, in optimizer_step
make_optimizer_step = self.precision_plugin.pre_optimizer_step(
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/plugins/precision/native_amp.py", line 59, in pre_optimizer_step
result = lambda_closure()
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/loops/batch/training_batch_loop.py", line 236, in _training_step_and_backward_closure
result = self.training_step_and_backward(split_batch, batch_idx, opt_idx, optimizer, hiddens)
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/loops/batch/training_batch_loop.py", line 537, in training_step_and_backward
result = self._training_step(split_batch, batch_idx, opt_idx, hiddens)
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/loops/batch/training_batch_loop.py", line 307, in _training_step
training_step_output = self.trainer.accelerator.training_step(step_kwargs)
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/accelerators/accelerator.py", line 193, in training_step
return self.training_type_plugin.training_step(*step_kwargs.values())
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/pytorch_lightning/plugins/training_type/training_type_plugin.py", line 172, in training_step
return self.model.training_step(*args, **kwargs)
File "/home/ma2257/new_nnDetection/nnDetection/nndet/ptmodule/retinaunet/base.py", line 146, in training_step
losses, _ = self.model.train_step(
File "/home/ma2257/new_nnDetection/nnDetection/nndet/core/retina.py", line 125, in train_step
labels, matched_gt_boxes = self.assign_targets_to_anchors(
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/torch/autograd/grad_mode.py", line 27, in decorate_context
return func(*args, **kwargs)
File "/home/ma2257/new_nnDetection/nnDetection/nndet/core/retina.py", line 249, in assign_targets_to_anchors
match_quality_matrix, matched_idxs = self.proposal_matcher(
File "/home/ma2257/new_nnDetection/nnDetection/nndet/core/boxes/matcher.py", line 93, in call
return self.compute_matches(
File "/home/ma2257/new_nnDetection/nnDetection/nndet/core/boxes/matcher.py", line 302, in compute_matches
match_quality_matrix = self.similarity_fn(boxes, anchors)  # [num_boxes x anchors]
File "/home/ma2257/.conda/envs/nndet_v2/lib/python3.8/site-packages/torch/amp/autocast_mode.py", line 12, in decorate_autocast
return func(*args, **kwargs)
File "/home/ma2257/new_nnDetection/nnDetection/nndet/core/boxes/ops.py", line 102, in box_iou
return box_iou_union_3d(boxes1.float(), boxes2.float(), eps=eps)[0]
File "/home/ma2257/new_nnDetection/nnDetection/nndet/core/boxes/ops.py", line 157, in box_iou_union_3d
inter = ((x2 - x1).clamp(min=0) * (y2 - y1).clamp(min=0) * (z2 - z1).clamp(min=0)) + eps  # [N, M]
RuntimeError: CUDA out of memory. Tried to allocate 436.00 MiB (GPU 0; 10.76 GiB total capacity; 7.83 GiB already allocated; 345.44 MiB free; 9.38 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
bypassing sigterm
Best regards,
Joe

Dear @JoeNajm ,
thank you for the problem report. Indeed, a very high number of objects might be rather difficult to handle right now: the planning stage already includes an approximation to determine the maximum number of objects in a patch which is seen during training. Since we can only approximate the number, it might underestimate the consumption if there is an extremely large amount of objects. The easiest fix, is to increase the offset here: https://github.com/MIC-DKFZ/nnDetection/blob/c45a49dc7044cd061f2a0e9efc0b0e331485f3d1/nndet/planning/estimator.py#L68
This will increase the safety buffer during the estimation and thus yield a smaller patch size (and potentially adapted architectures). After changing the line, it is necessary to rerun the planning the stage (nndet_prep XXX -o prep=nothing prep.plan=True.
Best,
Michael

Dear @mibaumgartner
Thank you for your response, I've been trying to increase the offset (went from 768 to 1100) but I still get the error (although less frequently). I was wondering what is the maximum offset I can choose?
(I am using a nvidia GeForce RTX:2080 with a memory of 11019MiB)
Best,
Joe


(feat)facepile - New Directive

Closes #275
Code coverage @100% for this directive

Coverage increased (+0.02%) to 97.443% when pulling 96c728b3dba6d1c646e89af5668c11ee777e8a5a on tobiaswest83:issue-275 into 526e5bd7f2caff871204d04f2524ba8fdba3fae4 on ngOfficeUIFabric:dev.


Added parameter "enable_pi_correction" to control if Tikhonov pi correction is used

I compare this implementation to another one which does not use Tikhonov pi correction, therefore it would be great to have an extra parameter to disable it.

LGTM


3713 bitshuffle decompression

There is apparently a need to perform compression and decompression on the GPU, two advantages for this:

prevents the transfer of uncompressed data, since most of the time the tranfer to the GPU over PCIe is the limiting factor
alleviate the slow power9 processor when it comes to bitshuffling (this is due to the small vectorial data-types)

Changelog: Implement bitshuffle-LZ4 decompression in OpenCL

close #3713

For now, the code is not complete, the last bits are not properly decompressed / shuffled properly.

Nice! I'm reviewing it. For macos we might force wg=1.

Apparently, there is a bug line 476 of the kernel where there is an invalid read and write ...
Index (346112) exceeds static array size (8592)
	Kernel: bslz4_decompress_block
	Entity: Global(2243584,0,0) Local(0,0,0) Group(2191,0,0)
	  store i8 %20, i8 addrspace(3)* %arrayidx22, align 1, !dbg !106
	At line 476 (column 26) of input.cl:
	  (source not available)

Invalid read of size 1 at global memory address 0x1b000000237423
	Kernel: bslz4_decompress_block
	Entity: Global(2243584,0,0) Local(0,0,0) Group(2191,0,0)
	  %20 = load i8, i8 addrspace(1)* %arrayidx20, align 1, !dbg !102
	At line 476 (column 28) of input.cl:
	  (source not available)

Invalid write of size 1 at local memory address 0x2000000054c00
	Kernel: bslz4_decompress_block
	Entity: Global(2243584,0,0) Local(0,0,0) Group(2191,0,0)
	  store i8 %20, i8 addrspace(3)* %arrayidx22, align 1, !dbg !106
	At line 476 (column 26) of input.cl:
	  (source not available)

Validated on Nvidia, Power9, AMD GPU and Intel CPU.
TODO: validate on intel-gpu (Beignet)

Looks good.


Wrong use of "module com.sun.tools.jxc" in /bin/*.sh|bat

Hey,
compiled master branch on my maschine to run xjc with openjdk 11. Just saw in the bin/*.sh|bat files, that com.sun.tools.jxc ist used. As I saw, the module name changed to
org.glassfish.jaxb.jxc and    org.glassfish.jaxb.xjc
Keep up the good work, see attached git diff with fixed module name.
Greetings,
Mustafa
patch.txt

the thing here is  that module names in scripts are correct. What is wrong is the content of the zip distribution which should contain just bundle jars ("old" com.sun. artifacts). and dependencies and not all smaller module artifacts (such as istack, txw2 etc).

See https://github.com/eclipse-ee4j/jaxb-ri/blob/master/jaxb-ri/xjc/src/main/java/module-info.java
The module name is org.glassfish.jaxb.xjc

what is supposed to be in the binary distribution is https://github.com/eclipse-ee4j/jaxb-ri/blob/master/jaxb-ri/bundles/xjc/src/main/java/module-info.java instead, that is artifact with com.sun.tools.xjc module name.
The difference between these two artifacts is that com.sun.tools.xjc = com.sun.codemodel + com.sun.xml.dtdparser + com.sun.tools.rngdatatype + com.sun.tools.rngom + com.sun.xml.xsom + com.sun.istack.tools + org.glassfish.jaxb.xjc. I do not think consumers of JAXB should care about these, quite low-level, libraries, all they want is just xjc.

Thanks for explaining. I get the problem, so the assembly missing the "wrapper" module here:
https://github.com/eclipse-ee4j/jaxb-ri/blob/master/jaxb-ri/bundles/ri/src/main/assembly/assembly.xml
after line 80 something like
com.sun.xml.bind:jaxb-xjc
I will close this issue and delete my pull request
KR
M


Promise created but not returned: False-Positive?

Bluebird version: v3.4.1 (latest)
Platform version:  Node.js v4.4.3 + Express v4.14.0
Did this issue happen with earlier version of bluebird?
Unknown, although I have seen a few issues related to this.

I have a stack trace that looks like this (truncated for brevity):
Warning: a promise was created in a handler but was not returned from it
    at processImmediate [as _immediateCallback] (timers.js:383:17)
From previous event:
    at Runner.ensureConnection (.../node_modules/knex/lib/runner.js:186:39)
    at Runner.run (.../node_modules/knex/lib/runner.js:41:44)
    at QueryBuilder.Target.then (.../node_modules/knex/lib/interface.js:32:43)
    at Object.module.exports.findById (.../services/Service.js:57:4)
...
From previous event:
    at module.exports (.../middleware/auth.js:14:4)
...

The first event is referencing part of a service of mine that makes use of the knex NPM module. However, as there are no issues on that repository's issue tracker related to this (that I can find), I'm assuming it has something to do with the code I've written elsewhere.
So, looking at the event before that, I find a call made in my auth.js sub-module. Line 14 is a then which expects a result from the following auth verification service method:
var Promise = require('bluebird');
var jwt = require('jsonwebtoken');

module.exports.verify = function(token) {
	return Promise
		.resolve(jwt.verify(token, SECRET))
		.catch(jwt.JsonWebTokenError, function (error) {
			var message = error.message;
			throw new SpecializedError(message);
		});
};

In other words, I am returning a resolved promise result, where the result is produced synchronously. I then add a catch-handler onto the promise before returning, rethrowing the error as a special type. If it helps, the calling then itself looks like this:
Service.verify(auth)
	.then(function (decoded) {
		req.auth = decoded; // express request object
		next(); // express next method
	})
	.catch(function (error) {
		// handle error
	});

It seems like this function is causing the warning, although I'm almost positive that this is a valid return of a promise. The then which handles it seems to be working properly, and I can't seem to find anything else that would cause the warning to be propagated.
Thoughts?

Add a return null; at the end of your .then() call.

That was the issue. I guess I didn't realize that's the portion of the call it was referring to. Thanks!


New web stack POC

Hi all,
I spent some time translating the docs to mkdocs.
This now runs easily with mkdocs serve.
It can be build with mkdocs build
It can be auto-deployed to GitHub pages with mkdocs gh-deploy

As I've stated elsewhere, I'm happy to help maintain the docs.
What are the projects thoughts on moving to this as it seems much more maintainable.

That looks great! Personally the 2 main issues I have with the current doc is:

Not enough nesting allowed https://github.com/perses/website/issues/23
pages within a same section are ordered by their title alphabetically, which is too restrictive (you may want to have an "Introduction" coming first then a "Conclusion" for instance :D)

I dont know much the current framework though, maybe these could be solved somehow.. but by any chance does your mkdocs-based website solve these 2 problems?

Yes, nesting is arbitrary.
Yes, ordering is set by you in nav of mkdocs.yml

Here the structure is
docs/
docs/docs/dac
                         /index.md
                         /something.md

The nav section of mkdocs.yaml
nav:
  - 'Home': 'index.md'
  - 'Docs':
      - 'docs/index.md'
      - 'Authentication': 'docs/authentication.md'
      - 'DAC':
        - 'X': 'docs/dac/something.md'
        - 'Page One': 'docs/dac/index.md'
  - 'Demo': 'https://demo.perses.dev'

Great! Btw does it support switching Perses versions easily like we have currently?

It can be auto-deployed to GitHub pages with mkdocs gh-deploy

For the moment the website is served on a VM behind a reverse proxy (traefik) that helps to ensure we have a proper certificat for the DNS perses.dev.
Will it be possible to keep this way ?

Are you able to support the mermaid schema ? Just to know if it will help to fix the current issue https://github.com/perses/website/issues/30

Great! Btw does it support switching Perses versions easily like we have currently?

would be so cool to be able to fix https://github.com/perses/website/issues/13 with this change

Versioning
Yes: https://squidfunk.github.io/mkdocs-material/setup/setting-up-versioning
See here: https://agardnerit.github.io/persesdocpoc

Check the gh-pages branch of this repo. Each docset is pushed to a dedicated folder. index.html does the redirect and versions.json is the reference list.
The commands are:
mike deploy 0.2 --push
# When ready to make 0.2 the "latest" version
mike set-default 0.2 --push

Serving
Yes. mkdocs build ultimately translates HTML + markdown to static files.
You can how however you like. FWIW Github pages allows setting a custom domain so that could be an option should you wish to retire that VM.
Diagrams
Yes: https://squidfunk.github.io/mkdocs-material/reference/diagrams/

Hey!
@agardnerIT thanks for handling that.
I've been thinking about the same thing, especially after spend a lot of time upgrading template and not having any success, customization on docs is being very trick, we've been using it in Prometheus Operator but the template is not very flexible.
I'm good for this adoption, especially because mdoks using material theme is a very nice experience, I'm using it internally on my company to another matters.
I'd love to know how I can support with on this journey.

great ! thank you for your quick response @nicolastakashi !
@agardnerIT please let us know how we can help you to make this migration, and thank you for proposing it ! 🙏

I’ll start working on this. Should we lift and shift the docs “as-is” or take the opportunity to “split” the user journey path into two sides:

Perses the dashboard spec path
Perses “the tool”

1 would cater towards other vendors and those who wish to support the DAC spec (import Perses config and translate to vendor, support exporting to Perses format etc.)
2 would cater for those who wish to use Perses as a product

By the way, when performing the changes, could you also add the Linux Foundation footer please ? This is part of the https://github.com/cncf/toc/issues/1411 tasks:

Ensure LF footer is on your website and guidelines are followed (if your project doesn't have a dedicated website, please adopt those guidelines for the README file).

Would be cool if it's possible to have it !

I agree with @Nexucis about this as is change.
Regarding docs rebrand if you want we can talk to our website mantainer on the prometheus operator, he did a very nice job and maybe might have some experience to share.

Also in my Christmas list, it will be interesting to have a place for blog post or at least be able to reference external blog post.  👼
We could start by this one: https://horovits.medium.com/unveiling-perses-the-gitops-friendly-metrics-visualization-tool-f05b5324d7da.
I think Dotan makes a great introduction about Perses :)

Thanks all. I'm arranging KCD Sydney this week but I'll get on this next week.
The material theme does indeed look like they have blog capabilities but for speed, I'll add a "Resources" page where we can (to start) just link out to external content.
I'll lift and shift as-is for speed + add the LF banner.

Work in progress PR: https://github.com/perses/website/pull/34

Thanks to @agardnerIT we have a beginning of a new website stack (see #35).
Before removing the previous website, I would like to see the versioning working. I didn't take that much time to understand how it is supposed to work, specially since the doc is outside of this repository.
In the meantime @agardnerIT you had some ideas to rework the website. Would you mind to share what you have in mind ? Would be interesting to rework this website :). Specially the home page. I think home page and introduction could be merged. (and also updated. Because the introduction is still saying we are part of the cordash community which is not the case anymore)

After spending some time playing with the versioning, my conclusion is: it's not compatible with the multi repo documentation.
That's unfortunate.

@agardnerIT you had some ideas to rework the website

My opinion is that there are a few personas who would be interested in Perses:

Someone wanting to use Perses as a product
Someone wanting to build compatibility with Perses (think other projects or Vendors who offer UIs and want to interop with Perses).

For the first set of people, they'd want to know all about Perses as a standalone product. The dashboard, how to create projects, dashboards and how to get data into / or otherwise visualise their data using PErses. They would also want to know how to spin up, host, maintain, secure and monitor a Perses instance / cluster.
Firs the second set, they'd be more interested in seeing how "their stuff" could co-exist / be replaced by / migrate to or translate into or out of Perses format.

After spending some time playing with the versioning, my conclusion is: it's not compatible with the multi repo documentation.

It would take a little bit of tweaking the template but I can imagine that anything commits to main trigger an auto build and push to the root of gh-pages. Thus main is always effectively latest.
Then a Github action that responds to new Git tags being created. So I create a v2 tag which builds and pushes to gh-pages and creates a v2 docs folder. Then we find a way (perhaps custom dropdown?) to link to https://perses.dev/v2 which contains the docs at that tag.
Yes, the "OOTB" mike tool may not work, but it's still feasible.

sorry for the long time to reply @agardnerIT !
Perhaps for the multi repo / multi versionning issue, we could have the perses documentation on perses.dev and then later the perses-operator on anothre sub domain, like operator.perses.dev for example. Same for helm if we need a doc at some point helm.perses.dev
That would solve the multi-versionning + multi repo issue at the same time in a simple way (with no weird script).
Regarding your opinion about how the doc should guide the user, it looks really interesting, I am looking forward to see the improvement you want to make if you still want to do it of course.

The new website is finally deployed. Thank you to everyone that made that possible.
I am closing this issue as it was about the new stack which is used now. For design or others questions, it should go in another issue if there is still an interest.


Feat : Switch GPS on in Activity

Fix #97

@Swati4star , could you please review the PR.
Actually while squashing multiple commits I get a lot of errors, so I had to close down the other two PRs for the same issue


takePhoto and Frame Processor❓

Question
I want to run OCR on an image taken as well in a live stream. Now that there are frame processor plugins like https://github.com/rodgomesc/vision-camera-ocr, I wonder if it is possible to use it for a photo taken as well.
What I tried
No response
VisionCamera Version
2.12.0
Additional information

[ ] I am using Expo
[X] I have read the Troubleshooting Guide
[X] I agree to follow this project's Code of Conduct
[X] I searched for similar questions in the issues page as well as in the discussions page and found none.

Hey!
For running algorithms from a captured Image, you probably want to write a React Native Native Module and pass the photo file string to it. There's not much more I can provide to make this easier except the JSI Image HostObject (working on this)


Update dependencies for newer version of minimatch

As discussed in #49, some of koa-hbs dependencies depend on an outdated version of minimatch. The latter has a security vulnerability in versions below 3.0.2. I've updated glob and mocha to the latest versions to get<EMAIL_ADDRESS>Tests run fine when executing npm run-script test.

looks good. I'll try and get this on npm soon


This patch is useful for listing tar contents as a tree.

Code added to strip trailing '/'.
It prevent listing extra entry.
Consider the following input (output of tar -t):
dotfiles/
dotfiles/zsh/
dotfiles/tmux/
dotfiles/vim/

Original Output:
dotfiles
├──
├── tmux
│   └──
├── vim
│   └──
└── zsh
    └──

New Output:
dotfiles
├── tmux
├── vim
└── zsh

Looks sensible to me! I'll just test it locally shortly, amd if it works I'll merge :smile:


[Feature request] Pass github credentials as container variables

it would be pretty useful to be able to push our github credentials when we start the container. Github is likely to be something a lot of people will leverage with the supernetops container so facilitating its usage would be great

Set the following env variables via -e or --env-file option to docker run:
SNOPS_GIT_USERNAME
SNOPS_GIT_PASSWORD
SNOPS_GIT_HOST


quantized model for pose tracking

Please make sure that this is a solution issue.
System information (Please provide as much relevant information as possible)

Have I written custom code (as opposed to using a stock example script provided in Mediapipe):
OS Platform and Distribution (e.g., Linux Ubuntu 16.04, Android 11, iOS 14.4):
MediaPipe version:
Bazel version:
Solution (e.g. FaceMesh, Pose, Holistic):
Programming Language and version ( e.g. C++, Python, Java):

MediaPipe pose tracking is a highly efficient ML solution that runs in real-time.
The GPU is very expensive and the edge devices have limited resource and computational power.
So we need to use the DSP delegate for the edge devices.
Is there a way to run quantized model of Mediapipe on the DSP ?
Thank you.

Hi @karimsadoune,
Could you elaborate your query with complete details and needed support which you are referring to. Thank you!

hi @kuaashish,
We have a mediapipe model for pose tracking on the CPU or GPU, Can we run it on the DSP of the Quectel SC66 module
(SC66 LTE Smart Module series | Quectel) ?
Thank you

Hi @karimsadoune,
Unfortunately, MediaPipe does not have quantized model to build the solutions on the DSP devices. MediaPipe has tested successfully on this edge devices as mentioned in the documentation and has limited resources for the new feature.
We will let you know if there is any specific update on the above request. Thank you!

Hi @karimsadoune,
Unfortunately, MediaPipe does not have quantized model to build the solutions on the DSP devices. MediaPipe has tested successfully on this edge devices as mentioned in the documentation and has limited resources for the new feature.
We will let you know if there is any specific update on the above request. Thank you!

Thanks

Hi @karimsadoune,
Could we move this issue to close status as it has been resolved and does not require further support as of now from our end.
Thank you!

Hi @karimsadoune, Could we move this issue to close status as it has been resolved and does not require further support as of now from our end. Thank you!

yes of course

Hi @karimsadoune,
Thanks for the confirmation! Closing this issue as it has been resolved. Thank you!


Need indicate which agent are executing the action

Below is the house building JaCaMo example. There are a lot of agents.
It is difficult to know which agent make which action in the system log.

Solved!


Cannot run in docker

I was trying to follow https://github.com/comments-ink/dci-project-stories?tab=readme-ov-file#2-run-in-docker but failed.
Because of some requirements issues I

changed docker image to python:3.10.14-slim-bookworm
set requirements to django-comments-ink==0.4.0

(please let me know I you would like a PR for this)
But, when I try to run the django container, I get "IsADirectoryError: [Errno 21] Is a directory: '..'" in dotenv.read_dotenv("..") in manage.py, which I don't understand :cry:
I can run the project in my host OS (https://github.com/comments-ink/dci-project-stories#3-run-in-your-host-os), so the issue is probably only related to docker.

Hi @gamboz, thanks for reporting it.
Yes, the docker part needs to be updated.
I will take a look sometime during the week and let you know.
If you want to send a PR, it would be very nice.


[Feature]: Support for Microsoft Edge Add-ons

Prerequisites

[X] I have verified that this issue is not a duplicate. (Search here  to find out.)

Is your feature request related to a problem? Please describe.
The ShareSwitch extension is currently only available through the Chrome Web Store.
I find it inconvenient that users cannot access this extension directly from the Microsoft Edge addons store.
Describe the solution you'd like
I intend to make this extension officially available in the Microsoft Edge Add-ons Store as well.
Describe alternatives you've considered
An alternative solution would be to continue using the Chrome Web Store to install the extension on Edge.
However, this is not ideal as it requires additional steps.
Additional context
No response
Do you want to implement this feature yourself?

[X] Yes, I will implement this by myself and send a pull request

ToDo

[ ] Perform operational verification with Edge
[ ] If there are any problems, fix them
[ ] Register as a Microsoft Edge extension developer
[ ] Submit the extension to the Microsoft Edge Add-ons website

ShareSwitch is now available on the Microsoft Edge Add-ons website.
https://microsoftedge.microsoft.com/addons/detail/shareswitch/pmhkogjeogmpenpjeciapeebfkbnamni?hl=en


Looking for a way to hook the ClickLinkGesture from the TextEditor

I believe the ctrl+click gesture is implemented in ClickLinkGesture and this class has access to all kinds of goodies like ICodeEditor so it can listen to onKeyDown events and so on. I need the same capability (to listen to Control Key in TextEditor from my VS code extension) so I can build a consistent UI experience in my custom WebView. Any ideas how I can do that?
https://user-images.githubusercontent.com/18707114/170118103-09a1c428-29bd-4da4-b64d-a831500fff12.mp4

I think you're talking about just getting keypresses inside an unfocused webview, right? If so, this is by design. Webviews only get keypresses events if they are focused (much like normal dom elements).
They still get mouse events though and you can check the keyboard state on the mouse events (e.ctrlKey)

Yes I understand the webview is not getting keypress when it does not have the keyboard focus, that's why I'm asking for this new feature which is a way to get the ctrl key state from the VS code IDE via some new vscode api so that I can show an underline in my WebView when I Ctrl+Hover over a symbol that I'm showing there as shown in the video thereby making my WebView UI consistent with the text editor UI.

We don't expose low level information such as use key states to extensions. See https://code.visualstudio.com/api/extension-capabilities/overview for details
However as I noted you should be able to use event.ctrlKey on mouse events inside the webview to do what you are looking for

Yes, mouse move works and provides the ctrlKey state and I'm using that, but often people want to hit ctrl after they move the mouse over the symbol, and this is the customer complaint I'm trying to solve.

From: Matt Bierner @.>
Sent: Friday, May 27, 2022 5:54 PM
To: microsoft/vscode @.>
Cc: Chris Lovett @.>; Author @.>
Subject: Re: [microsoft/vscode] Looking for a way to hook the ClickLinkGesture from the TextEditor (Issue #150307)
We don't expose low level information such as use key states to extensions. See https://code.visualstudio.com/api/extension-capabilities/overviewhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fcode.visualstudio.com%2Fapi%2Fextension-capabilities%2Foverview&data=05|01|clovett%40microsoft.com|1ad8b0ed4b764aae60b108da40449646|72f988bf86f141af91ab2d7cd011db47|1|0|637892960575844579|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=hH3eU7u1Jm03KAYs8x0QPPeJ5FK5foIojfDYWpFqTPE%3D&reserved=0 for details
However as I noted you should be able to use event.ctrlKey on mouse events inside the webview to do what you are looking for
—
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fvscode%2Fissues%2F150307%23issuecomment-1140123106&data=05|01|clovett%40microsoft.com|1ad8b0ed4b764aae60b108da40449646|72f988bf86f141af91ab2d7cd011db47|1|0|637892960575844579|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=UR%2F8qXeY6CKkZcPHksl734t0AsfUMCZ9R%2BZiOnpeMjs%3D&reserved=0, or unsubscribehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAEOXFKQIQOXGK4X376H2RELVMFVDNANCNFSM5W2VGZ4Q&data=05|01|clovett%40microsoft.com|1ad8b0ed4b764aae60b108da40449646|72f988bf86f141af91ab2d7cd011db47|1|0|637892960575844579|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=6FuWx9GxYLpPtarWqABvkvPhrgrRQe6t29K11ufR7VM%3D&reserved=0.
You are receiving this because you authored the thread.Message ID: @.***>


Invalidate cache itemstack and state after failed recipe completion

A couple changes related to #7
First, delay the recipe lookup until after there is confirmed to be a non-null item. Previously the recipe lookup would run before a guaranteed item was found, which means that recipe would always be null, even if the input check found an applicable item.
This change defers the recipe lookup to after finding an item, so that recipe will not be null (for an input item) after the new input item is set.
Secondly, if the input consumption failed due to null recipe or other factor, reset the cached itemstack and the mark state. This part is what addresses the issue in #7.
Fixes #7

i can? release?


User123

Airavat victim not show please sir solve the problem

You may not have configured everything correctly. I have attached 2 tutorial videos in the readme section watch them it will solve your problems.


Question about anchor size settings

Hi,
I use this code to train other data sets that tpr has been 0% and tnr has been 100%. Is the size of the anchor related to the radius of the nodule? I see the code in the select_samples function for data.py in the code below, if it always  prints (['iou large', iou[mask]]), is it because the box size is set incorrectly?
I hope you have time to answer my questions.

No. Anchor size should be selected as close to radius size. It seems that iou large means you detected the box because iou >= th

Thank you for your reply! I also want to ask if loss doesn't go down, and TPR is always 0%, what's the reason? I think the data and labels are correct.

Can you reproduce the Luna dataset?

Ok, I will download the data set again to see if there is any problem with the code. Thank you！


cdnjs.cloudflare.com

This is the Content Delivery Network for Javascript files for cloudflare, a load balancing service
I believe this is a FP

@muxcc

fix, done


Remove disabling of web ui buttons

change for #9481
remove button disable logic for FileView and Browse
kept disable logic in Paginator but changed color of selected item
for extra clarity

pr-link: Alluxio/alluxio#9485
change-id: cid-02dfe79ff1059bb1a91e78f95d5189514348fb9b

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/4677/
Test PASSed.

@calvinjia PTAL, thanks

alluxio-bot, merge this please.


Remove usage of full_like/ones_like/zeros_like ops in eltwise composite where tensor-scalar support is available

In tt-eager,
Some of the eltwise-binary ops did not have tensor-scalar support, so eltwise composite/backward ops that were implemented used full_like/ones_like/zeros_like to convert scalar to tensor and pass it for binary operations.

Since now we have #14172 , we can modify our implementations in various eltwise ops

[x] #14924

[x] #14879

[x] #14880

[x] #14713

[x] #14714

[x] #14928

[x] #14929

[x] #14930

All the PR merged to main. Hence closing


[Event Request] Codeunit 80 "Sales-Post" - OnBeforeUpdateReturnReceiptNo

Hi, would it be possible to add PreviewMode to the OnBeforeUpdateReturnReceiptNo event in codeunit 80 - "Sales-Post"?
local procedure UpdateReturnReceiptNo(var SalesHeader: Record "Sales Header"; var NoSeriesMgt: Codeunit NoSeriesManagement; var ModifyHeader: Boolean)
var
    IsHandled: Boolean;
begin
    IsHandled := false;
    OnBeforeUpdateReturnReceiptNo(SalesHeader, PreviewMode, ModifyHeader, IsHandled);
    if IsHandled then
        exit;

    with SalesHeader do
        if Receive and ("Return Receipt No." = '') then
            if ("Document Type" = "Document Type"::"Return Order") or
                (("Document Type" = "Document Type"::"Credit Memo") and SalesSetup."Return Receipt on Credit Memo")
            then
                if not PreviewMode then begin
                    ResetPostingNoSeriesFromSetup("Return Receipt No. Series", SalesSetup."Posted Return Receipt Nos.");
                    TestField("Return Receipt No. Series");
                    "Return Receipt No." := NoSeriesMgt.GetNextNo("Return Receipt No. Series", "Posting Date", true);
                    ModifyHeader := true;

                    // Check for posting conflicts.
                    if ReturnRcptHeader.Get("Return Receipt No.") then
                        Error(SalesReturnRcptHeaderConflictErr, "Return Receipt No.")
                end else
                    "Return Receipt No." := PostingPreviewNoTok;

    OnAfterUpdateReturnReceiptNo(SalesHeader);
end;

[IntegrationEvent(false, false)]
local procedure OnBeforeUpdateReturnReceiptNo(var SalesHeader: Record "Sales Header"; PreviewMode: Boolean; var ModifyHeader: Boolean; var IsHandled: Boolean)
begin
end;

This will bring the event into line with events OnBeforeUpdateShippingNo and OnBeforeUpdatePostingNo in the same codeunit.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 41782.


Support '--recursive' flag

See https://github.com/mariocasciaro/npm-workspace/issues/19
Changes:

'dot folders' such as '.git' are no longer traversed
'node_modules' and 'bower_components' folders are not traversed
if recursive flag is set, npm-workspace will search all
non-excluded descendent folders for modules to npm i and link.

Thanks,
Iain B.

Looks great, thanks for that!


python3Packages.sqlmap: 1.5.11 -> 1.5.12

Motivation for this change
Update to latest upstream release 1.5.12
Things done

Built on platform(s)

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

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

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

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

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

[x] Fits CONTRIBUTING.md.

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

2 packages built:

python38Packages.sqlmap
sqlmap (python39Packages.sqlmap)


style(UI): update components

:tada: This PR is included in version 1.1.2-beta.1 :tada:
The release is available on:

v1.1.2-beta.1
GitHub release

Your semantic-release bot :package::rocket:

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

v1.2.0
GitHub release

Your semantic-release bot :package::rocket:


For loop variables not being typed when using generalized iteration with __iter metamethod

The typechecker seems to be unable to infer the types of variables declared in the for ... in list when using generalized iteration with the __iter metamethod defined.

type Iterable = typeof(setmetatable(
    {},
    {}::{
        __iter: (self: Iterable) -> () -> (number, string)
    }
))

local t: Iterable

for a, b in t do end

This is fixed in the new solver.


support a way to download subset of github release assets

In cf-for-k8s, we'd like to remove disableAutoChecksumValidation: true from our entry for kpack, for example.
That block looks like this:
  - path: github.com/pivotal/kpack
    githubRelease:
      slug: pivotal/kpack
      tag: v0.0.8
      disableAutoChecksumValidation: true
    includePaths:
    - release-0.0.8.yaml

And when we remove the disableAutoChecksumValidation line, we get the error:
Error: Syncing directory 'config/_ytt_lib': Syncing directory 'github.com/pivotal/kpack' with github release contents: Finding checksums in release notes: Expected to find sha256 checksum for file 'logs-v0.0.8-linux.tgz'
...even though the only file in our include path is release-0.0.8.yaml.
Here's the kpack release page in case that's helpful: https://github.com/pivotal/kpack/releases/tag/v0.0.8

bump

i was thinking more about this... i think a better solution here is to have checksums in release notes for all assets included (not sure why kpack folks only did it for one file). vendir today checks integrity of downloaded asset (in this case github release is considered to be "one" thing), and at a later stage it includes/excludes files. it's going to be quite unnatural to intermingle the too since files could even be rearranged (there wouldnt be any connection to original checksum).
do you think we can pursue adding checksums for all files to kpack asset?

That's definitely something we could pursue but I worry that those changes are unlikely to get prioritized by pack folks.
I'd also be okay marking this general issue as "won't fix" - I just want to make sure we're being intentional here.
I'll defer to whichever decision you're leaning towards - just let us know.

added assetNames for githubRelease sync: https://github.com/k14s/vendir/commit/1bf2caa4f5fb74b3ca65e28dc8f78f8aee024c1c. will be available in v0.12.0+.

included in https://github.com/k14s/vendir/releases/tag/v0.12.0


Improve CARGO_ENCODED_RUSTFLAGS and CARGO_ENCODED_RUSTDOCFLAGS variables docs

What does this PR try to resolve?
close https://github.com/rust-lang/cargo/issues/10555
It has been improved according to the three requirements in the issue.

:pushpin: Commit 26a499b98401900fc347b7ad6500fc7fdc35016b has been approved by epage

:sunny: Test successful - checks-actions
Approved by: epage
Pushing a2c71c5cc384c7450638b9b4396271796ebe0564 to master...


Update docs for google provider

http://passportjs.org/docs/google
Right now the docs lead you towards using the OpenID provider, which no longer works.  It should use the OAuth2 module instead:
https://github.com/jaredhanson/passport-google-oauth
Is the docs site open source?  I'm happy to make the change.

https://github.com/passport/www.passportjs.org


Outdated version on npm

Hi,
Could you update aws-mqtt on npm? Npm's version is missing some key features such as last will testament.
Cheers!

Published 1.0.0


Manually parse cookies

IMPORTANT: PRs without the template will be CLOSED
Description of your pull request and other information

Iterate over split cookie chunks to skip invalid values instead of failing fast like http.cookies.SimpleCookie does. This allows to preserve all cookie values, even invalid ones.
Fixes #4776
Template

Before submitting a pull request make sure you have:

[x] At least skimmed through contributing guidelines including yt-dlp coding conventions
[x] Searched the bugtracker for similar pull requests
[x] Checked the code with flake8 and ran relevant tests

In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[ ] Fix or improvement to an extractor (Make sure to add/update tests)
[ ] New extractor (Piracy websites will not be accepted)
[x] Core bug fix/improvement
[ ] New feature (It is strongly recommended to open an issue first)

Relevant CPython issue: https://github.com/python/cpython/issues/92936

All right, I am composing a testing suite for the cookie parsing, derived from the CPython tests.
Will push the tests to test/test_YoutubeDL.py when they are done.

Extracting the class immediately seems to make more sense, potentially placing it into cookies.py (with the tests moved to test_cookies.py)? Or should the class reside within common.py for now?

Yes, that file isn't in yt-dl but looks plausible: take advice from @pukkandan.

Extracting the class immediately seems to make more sense, potentially placing it into cookies.py (with the tests moved to test_cookies.py)?

That makes sense

Late now, but Lenient doesn't properly describe what is being done, ie fixing a defect in the parsing implemented in SimpleCookie.load(). Any of Fixed, Better, Improved, Correct would be more accurate ...

It is not a defect but a design choice as the comment in the code suggests, and lenient describes the behavior of the cookie accurately.


AOL Provider - feature request

If you can implement http://www.aol.com/ provider in the future. https://identity.aol.com/documentation/start/oauth2/api-details/

I contacted their customer support. I'll try to get a key.


test-test-pr1

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

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

jdiasjdoa

123

@DominicWrege merge

merge

@NixOS/nixpkgs-merge-bot merge

@NixOS/nixpkgs-merge-bot merge

@NixOS/nixpkgs-merge-bot merge

@NixOS/nixpkgs-merge-bot merge

@NixOS/nixpkgs-merge-bot merge

@NixOS/nixpkgs-merge-bot merge

@NixOS/nixpkgs-merge-bot merge

@NixOS/nixpkgs-merge-bot merge

@NixOS/nixpkgs-merge-bot merge

@NixOS/nixpkgs-merge-bot merge

@NixOS/nixpkgs-merge-bot merge

@NixOS/nixpkgs-merge-bot merge

@NixOS/nixpkgs-merge-bot merge

@NixOS/nixpkgs-merge-bot merge


support headers in response declaration

See if response headers can be supported in declaration

My swaggervel integartion results in response body
{"result_code":500,"result_title":"Server Unreachable","result_string":"The server didn't respond. Please try again."}
why this happen? please give me a solution.

@shinijaQB - swaggervel has nothing to do with this project. If you have an issue with it, please open a ticket on the right repository.

How to i write annotations. Now i written in controller apis. Is it a good
way?
On Wed, Sep 9, 2015 at 4:42 PM, Ron<EMAIL_ADDRESS>wrote:

@shinijaQB https://github.com/shinijaQB - swaggervel has nothing to do
with this project. If you have an issue with it, please open a ticket on
the right repository.
—
Reply to this email directly or view it on GitHub
https://github.com/swagger-api/swagger-core/issues/144#issuecomment-138878063
.

My swaggervel parameters are like this,
@SWG\Parameter(
*             name="body",
*             description="users details",
*             paramType="body",
*              required=true,
*              allowMultiple=false,
*              type="string",
*          ),
and i created a model schema for it. But when i click on scema datas are
not displaying in body. what to do for it?
On Wed, Sep 9, 2015 at 6:14 PM, Shinija Kmohandas <
<EMAIL_ADDRESS>wrote:

How to i write annotations. Now i written in controller apis. Is it a good
way?
On Wed, Sep 9, 2015 at 4:42 PM, Ron<EMAIL_ADDRESS>wrote:

@shinijaQB https://github.com/shinijaQB - swaggervel has nothing to do
with this project. If you have an issue with it, please open a ticket on
the right repository.
—
Reply to this email directly or view it on GitHub
https://github.com/swagger-api/swagger-core/issues/144#issuecomment-138878063
.

My swaggervel integration for my one controller function work as well.But
when i add swagger resource in next controller it turns to page error What
is the right method?
On Thu, Sep 10, 2015 at 12:09 PM, Shinija Kmohandas <
<EMAIL_ADDRESS>wrote:

My swaggervel parameters are like this,
@SWG\Parameter(
*             name="body",
*             description="users details",
*             paramType="body",
*              required=true,
*              allowMultiple=false,
*              type="string",
*          ),
and i created a model schema for it. But when i click on scema datas are
not displaying in body. what to do for it?
On Wed, Sep 9, 2015 at 6:14 PM, Shinija Kmohandas <
<EMAIL_ADDRESS>wrote:

How to i write annotations. Now i written in controller apis. Is it a
good way?
On Wed, Sep 9, 2015 at 4:42 PM, Ron<EMAIL_ADDRESS>wrote:

@shinijaQB https://github.com/shinijaQB - swaggervel has nothing to
do with this project. If you have an issue with it, please open a ticket on
the right repository.
—
Reply to this email directly or view it on GitHub
https://github.com/swagger-api/swagger-core/issues/144#issuecomment-138878063
.

How can upload image in swaggervel?


No way to add obstacles by editing settings.yaml in the ranged-ik branch

In the master branch you can add obstacles like boxes and spheres by editing settings.yaml, but in the ranged-ik branch editing that config file does not add obstacles into the environment. Upon further investigation, there is no logic that reads the "obstacles" part in the yaml. I hope there is some way to add and visualize environment obstacles to test the environment collision avoidance feature offered by RangedIK.

Hi @MadCreeper,  the CollisionIK branch builds upon ncollide3d for collision avoidance, which is deprecated and brings compile errors (#7). ncollide3d is superseded by the Parry project. In theory, the collisionik method can be implemented using Parry. That's on our radar, but I probably won't have the availability to implement it in the near future. In the meantime, I encourage you to try some more advanced collision avoidance method, e.g., Proxima.


ERROR ReferenceError: google is not defined

Is this a regression?

[ ] Yes, this behavior used to work in the previous version

The previous version in which this bug was not present was
No response
Description
Installed packages and dependencies:
npm install<EMAIL_ADDRESS>npm install @types/google.maps

In .ts file
import { GoogleMap, MapGeocoder } from '@angular/google-maps';

var g = new google.maps.Geocoder();  // <-- causing error.

DEBUG CONSOLE:
at executeInitAndCheckHooks (c:\project\node_modules\@angular\core\fesm2015\core.mjs:2411:9)
at refreshView (c:\project\node_modules\@angular\core\fesm2015\core.mjs:12013:21)
at refreshEmbeddedViews (c:\project\node_modules\@angular\core\fesm2015\core.mjs:13026:17)
at refreshView (c:\project\node_modules\@angular\core\fesm2015\core.mjs:12022:9)
at refreshComponent (c:\project\node_modules\@angular\core\fesm2015\core.mjs:13072:13)

Reproduction
Steps to reproduce:
1.
2.
Expected Behavior
no error
Actual Behavior
ReferenceError: google is not defined
Environment

Angular: 14.2
CDK/Material: 13.2
Browser(s): Chrome Version 107.0.5304.108 (Official Build) (64-bit)
Operating System (e.g. Windows, macOS, Ubuntu): Windows 10
VSC Version: 1.73.1 (user setup)
Date: 2022-11-09T04:27:29.066Z
Electron: 19.0.17
Chromium: 102.0.5005.167
Node.js: 16.14.2
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.19044

This means that you're trying to use the Google Maps API before it has been loaded. There's more info about loading the API here https://github.com/angular/components/blob/main/src/google-maps/README.md.


Add "nasopharyngeal swabs" to items list

Many hospitals are running short of swabs for taking COVID-19 test samples, and are now using STI swabs or other kinds of swabs for testing. A few hospitals have already written in "nasopharyngeal swab" to the free-response "other" field on the items list.
Although the average person may not have these, community STI clinics/ Planned Parenthoods, etc. could have a supply of these to donate.

This is a good suggestion. I would use slightly different language, as I see several other variants:
'Test Swabs': [
        'testing swabs', 'Swabs to test covid-19', 'swabs,', 'swabs',
        'Quidel 403C Swab Specimen Flocked Tube Flexible Minitip 50 UTM', 'flocked swabs']
'STD. Cotton Swabs': ['sterile cotton-tipped swabs (BD #220531)', 'Sterile cotton tipped swabs (BD #220531)'],
    'Nasopharyngeal Test Swabs': ['nasalpharyngeal swabs', '6" plastic nasal swabs', 'NP SWABS'],
    'Oral/mouth Test Swabs': ['mouth swabs']

at least some of which are also used for test-sample collection.

I second this add. The correct medical term is Nasopharyngeal swabs or "NP swabs" for short --- they are very specific, and not just a long Q-Tip. The swab tip is a special material that swabs AND scrapes (we are testing for virus in your cells to indicate infection, not necessarily surface virus) and the handle must be specific (aka NOT wood) as it messes with the downstream biochemistry.
Currently, due to shortage, other viral test kits are being accepted. Unfortunately for the downstream lab work, I strongly do not think we should offer colloquial terms such as "mouth swabs".  A well meaning human could donate Q-Tips, and although that is nice, is useless for the testing effort.

The US Air Force had to fly in 500,000 swabs 2 weeks ago from ... Italy (at it's height =/ )
Copan is an Italian manufacturer.

More hospitals seem to be open to taking 3D printed face shields from the community now as well, and grassroots efforts seem to be springing up everywhere. There is need for a centralized database for which hospitals will accept it and what their specifications are, unless OSCMS is keeping a list somewhere that we don't know about.

See my post in #general:
https://findthemasks.slack.com/archives/C010HB27BU5/p1585801842227300
A huge 3D print/makerspace/manufacturer network is using our US and CA data
to develop a match algorithm. They have used it to become Shield Net
http://shield-net.org. They can currently produce (as a network) ~900,000
face shields per day.
Best,
L
http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail
Virus-free.
www.avg.com
http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail
<#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
On Sat, Apr 4, 2020 at 2:24 PM Catherine Chang<EMAIL_ADDRESS>wrote:

More hospitals seem to be open to taking 3D printed face shields from the
community now as well, and grassroots efforts seem to be springing up
everywhere. There is need for a centralized database for which hospitals
will accept it and what their specifications are, unless OSCMS is keeping a
list somewhere that we don't know about.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/findthemasks/findthemasks/issues/368#issuecomment-609091087,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO7TMQVVISO7ZU7WJB2653TRK6QQDANCNFSM4LW6ATJQ
.

I can do this.

I'm trying to work on this but am having trouble testing it because of issues involving a local test environment.  Should I just submit a pull request for review without testing?

@cchang-adi can this be closed?

yes


Create univ-bba

@seddikbenz I am closing this request because you made the correct one (#2591) and I already merged it. Thank you.


Accept CFT templates in YML format

The utility today accepts templates in only JSON format as input.
Please extend support for YML templates as well since many enterprises use YML as a standard for their CFT templates.

Hi @padmadt - the tool does support YML templates today.  That could be made more obvious in the documentation.  Are you having an issue running the tool with YML templates?


2.0.50 crashes randomly

Been experiencing random crashes for a few versions now. Not sure how to reproduce but it always happens immediately after I open Sol with keyboard shortcut (Command + Space). Reopening the application seems to resolve the issue.
Crash Log:
Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       KERN_INVALID_ADDRESS at 0x000052ad15a5d418
Exception Codes:       0x0000000000000001, 0x000052ad15a5d418

Termination Reason:    Namespace SIGNAL, Code 11 Segmentation fault: 11
Terminating Process:   exc handler [84924]

Thread 0 Crashed::  Dispatch queue: com.apple.main-thread
0   libobjc.A.dylib               	    0x7ff819ddf49d objc_msgSend + 29
1   Foundation                    	    0x7ff81b179f20 -[NSMetadataQuery _recreateQuery] + 2350
2   Foundation                    	    0x7ff81b179562 -[NSMetadataQuery startQuery] + 56
3   sol                           	       0x100b7d569 0x100b58000 + 152937
4   libdispatch.dylib             	    0x7ff819fd1d91 _dispatch_call_block_and_release + 12
5   libdispatch.dylib             	    0x7ff819fd3033 _dispatch_client_callout + 8
6   libdispatch.dylib             	    0x7ff819fdffcf _dispatch_main_queue_drain + 954
7   libdispatch.dylib             	    0x7ff819fdfc07 _dispatch_main_queue_callback_4CF + 31
8   CoreFoundation                	    0x7ff81a28f205 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 9
9   CoreFoundation                	    0x7ff81a24ef2f __CFRunLoopRun + 2452
10  CoreFoundation                	    0x7ff81a24df31 CFRunLoopRunSpecific + 560
11  HIToolbox                     	    0x7ff823cc9dad RunCurrentEventLoopInMode + 292
12  HIToolbox                     	    0x7ff823cc9bbe ReceiveNextEventCommon + 657
13  HIToolbox                     	    0x7ff823cc9918 _BlockUntilNextEventMatchingListInModeWithFilter + 64
14  AppKit                        	    0x7ff81d2e25d0 _DPSNextEvent + 858
15  AppKit                        	    0x7ff81d2e147a -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1214
16  AppKit                        	    0x7ff81d2d3ae8 -[NSApplication run] + 586
17  AppKit                        	    0x7ff81d2a7d02 NSApplicationMain + 817
18  sol                           	       0x100b66cf9 0x100b58000 + 60665
19  dyld                          	    0x7ff819e1a41f start + 1903

Weird, I've disabled some of the spotlight file search code (NSMetadataQuery). Maybe that will help. Update 2.1.1, give it a try, and let me know.

Will do, thanks

Any news here @joshuachapnick-bc ? still experiencing crashes?


Error attempting to play tracks via Google's Unlimited Subscriptions

I've added an album to My Library that I don't own, but I can access through my active Google Music subscription. It plays properly in Chrome, Safari, and Firefox, but when I attempt to play those songs through Radiant Player I get a "Blocked Plug-in".

I removed my install (of v1.3.1), and cloned the repo (commit 7806af2d446e8f3799e1c9e89ec1300d3437956a). After building, it asked me to upgrade Flash in Safari, which I did. The built version works fine now - I have no way of knowing if that's because of the Flash update or because of my using the bleeding edge version.
If it's the former, then I'd still call this a bug since it didn't tell me what was wrong. If it was the latter, then this should be closed upon the next release.

This was due to https://support.apple.com/en-us/HT202681
Updating Flash fixed the player for me.

This was fixed in #258 as you've discovered, and will show a useful message next time the plugin is blocked.


Remove the event listener for unloading when navigating

I got a somewhat similar issue to what was reported with #329 and #330. When calling signinRedirect, on Chrome everything seems fine. With Firefox (at least on v99.0.1), what I see happening is that the page does redirect to the OIDC provider, but oddly an infinite barrage of API requests get made when they shouldn't - as if its trying to reload my website over and over. I can only guess this must be a bug in Firefox itself to do with making an event listener before navigating or something?
I tried listening to different events (e.g. beforeunload, visibilitychange, etc. instead of unload), performing the window event listening outside of the promise function (to see if ensuring that its done before navigate could help) but neither of these make a difference. The only thing that seems to fix this is actually removing the event listening and making the promise never resolve.
The tests here end up suffering however; as the author of #329 pointed out, its not easy to write proper tests for a promise that never resolves. The only thing I could do here was wait a "significant enough amount of time" that things should have executed (definitely not that nice), unless there's a better idea of how to carry this out?

Closes/fixes #issue
Checklist

[ ] This PR makes changes to the public API
[x] I have included links for closing relevant issue numbers

@kherock Can you have a look at this?

great work, thanks for contributing


How to prepare .wav files for training

Hello, I have collection of .wav files with following characteristics:
Size - 54,628,204 bytes (54.6 MB on disk)
Sample rate - 44,100
Bits per sample - 16
Duration - 05:10
Audio channels - 2
What are optimal values for wavenet_params.json file?
Are there any additional actions I should take on preparing the data?

Just run train.py script as stated in home page of this repo. It should do resampling and other necessary things internally.


Add pyproject.toml and refactor CI pipelines

Reference Issues/PRs

Fixes #1482
Fixes #1728
Fixes #1803
Fixes #1832

See also #1150
Refactoring of github actions workflows started in #1321
Currently blocked by:

[x] #1644
[x] #1661
[x] #1662
[x] #1792
[x] #1747
[x] #1783
[x] #1803
[x] update installation instructions in docs/source/installation.rst

What does this implement/fix? Explain your changes.
This is a rather substantial effort involving changes to how sktime is build and distributed. The main changes are:

Add pyproject.toml (see PEP 621 and PEP 633]. The intention behind is to collect all package matadata and dependencies in one place.
Add sets of optional dependencies:

all_extras all "soft" dependencies
dev packages useful for development and testing
binder packages required for binder and running notebook examples
docs packages required to build the documentation

Add section to build time dependencies.
Refactor existing CI/CD pipelines to use the new build configuration.
Introduced a new CI/CD pipelines for running tests across win, mac, linux and py37, py38, py39 with github actions.
Removed the obsolete requirements files.
Include wheels build for macosx on arm64.

Removed

❌ Drop support for python3.6
❌ Drop appveyor and azure pipelines

Does your contribution introduce a new dependency? If yes, which one?
It does not introduce any new runtime/install dependencies but it could introduce an optional development depencency/build system such as poetry to simplify development/build/distribution.
What should a reviewer concentrate their feedback on?
This PR introduces changed to the CI/CD pipelines that would hopefully allow to drop appveyor and azure pipelines in favor of github actions which would simplify the current build and maintenance process.
Any other comments?
PR checklist
For all contributions

[x] I've added myself to the list of contributors.
[x] Optionally, I've updated sktime's CODEOWNERS to receive notifications about future changes to these files.
[x] I've added unit tests and made sure they pass locally.

@mloning if this is a potential way forward it would be great to trigger the CI runs in order to check that everything runs as expected. I tried that locally with act but some of the steps fail since it's hard to reproduce the build env exactly.

My initial plan is to simplify the pipelines:

try to run all on github actions since it support the main os hosts
use cibuildwheel to build wheels across the matrix of win, linux, mac and python 3.6, 3.7, 3.8, 3.9
publish to PyPI

After testing locally it seems that cibuildwheel does not work well with pure python distributions, an alternative would be to simply use python -m build --sdist --wheel.
Are there any C extensions for sktime?

minor comment: is all (morally) the same as all_extras so far? If so, I'd suggest to keep the old name all_extras to avoid to break users' CI/CD which may use pip install sktime[all_extras] or similar.

it would be great to trigger the CI runs

Slightly weird, the familiar button to run the CI does not appear. Not sure why, is everything correct?
This is how it looks like to me:

Hmmm, I'm not sure but maybe the unresolved file conflicts are still blocking? Couldn't find any relevant information in the docs about it so I'm guessing here.

might be - would you mind merge/resolving?

I rebased on the latest main and resolved the conflict.

I rebased on the latest main and resolved the conflict.

Yes, that was it - now I can "approve and run". Good luck with the tests...

uh-oh, you made the linter unhappy, since there are no newlines at the end of the files!
I corrected your terrible mistake 😁 - I hope you don't mind, just so it runs through the interesting part.

uh-oh, you made the linter unhappy, since there are no newlines at the end of the files!
I corrected your terrible mistake grin - I hope you don't mind, just so it runs through the interesting part.

Thanks!

I'm having some challenges understanding the build process and in particular the contents on the setup.py where a lot is happening. Any chance there exists documentation about it?

To be clear I understand the code but I'm missing the why.

Same here - I think that only @mloning can answer, he created the original script a couple years ago.
Might be best to ping him on slack if you expect there to be a back/forth of questions.

I think some of it might be copy-pasted from scikit-learn, so it may be worth investigating there, to.

It seems that a lot of the build code is quite incompatible with tools like build specifically

how cython extensions are (not) declared/discovered
setup.py
custom build scripts inside the package sktime/setup.py
more build tools inside the package sktime/_build_utils
and build_tools in the project root

It's quite challenging to piece together what's really happening. On top of that both extensions

sktime/distances/elastic_cython.pyx
sktime/classification/shapelet_based/mrseql/mrseql.pyx

that seem to require all this extra configuration are marked for removal, and the share the following header:
# TODO remove in v0.10.0
# the functionality in this file is depreciated and to be replaced with a version
# based on numba.

Maybe it is worth to deal with that first since then the build pipeline might be simplified. Correct me if I'm wrong but replacing the current extensions with numba will leave only pure python code without necessity for compilation.
I'll join slack and try to initiate the discussion about this over there. I only joined discord but it seems a bit quiet. Is slack the preferred communication channel?

I'll join slack and try to initiate the discussion about this over there. I only joined discord but it seems a bit quiet. Is slack the preferred communication channel?

We've been using slack for developer communication, and discord for events mostly, like community meet-up or dev meetings.
User questions and troubleshooting comes in through three channels currently: GitHub discussions, gist, and discord.
We may want to clean up this proliferation of communication tools at some point, but that's just my opinion...

FYI, here's the "remove cython" project: https://github.com/alan-turing-institute/sktime/projects/24
@TonyBagnall runs the board. Once on slack, I'd recommend to ping @mloning, @freddyaboulton (for CI/CD) and @TonyBagnall (for cython removal)

FYI, here's the "remove cython" project: https://github.com/alan-turing-institute/sktime/projects/24 @TonyBagnall runs the board. Once on slack, I'd recommend to ping @mloning, @freddyaboulton (for CI/CD) and @TonyBagnall (for cython removal)

Great! There is already a thread on slack about this issue (you're tagged as well, provided I used the right handle :wink: )

There is already a thread on slack about this issue

Yes, I saw this after I posted only.

Hi @lmmentel, sorry for the slow reply, in case you're not aware of this already, we're having a CI/CD session tomorrow, would be good to discuss your suggested changes there.
I may have missed discussions elsewhere, a few general comments:

A lot of the setup.py related code is quite old and was originally copied from scikit-learn.
Moving everything to GitHub Actions would simplify things, but may slow down CI/CD due to the limit on parallel jobs. Moving away from appveyor would be good.
Using cibuildwheel seems like a good idea.

@mloning thanks for the context! I wasn't aware of the CI/CD session, but It would be great if I could join the discussion. Although I'm trying to go step by step, the changes I'm exploring here are rather severe so it would definitely be useful to discuss and get broader perspective.
I don't have any numbers yet in terms of timing of different CI workflows but that would be interesting to collect.

but It would be great if I could join the discussion

on discord, tomorrow as part of the community collaboration session starting at 1pm UTC. We'll might have some introductions to new community members and a stand-up first, so I'd expect the CI/CD overview to start around 1:15pm.

There's one other reason why relying on multiple platforms may be preferable over using a single one: sometimes CI platforms break down or make changes which break our pipelines and it may be easier to have some other platform to fall back on in these cases (makes it easier to isolate issues, prevents total standstill of dev work, etc).

@mloning that is true although I would not underestimate the maintenance effort required to support multiple different technologies for essentially doing the same job. I like to think about it in terms of tradeoffs rather that optimal solutions since with a particular technology choice you gain some desired feature while incurring some debt.

@lmmentel yes good point!

quick Q: with #1792 merged there should no longer be blockers? Or are there still? E.g., #1747?

quick Q: with #1792 merged there should no longer be blockers? Or are there still? E.g., #1747?

There are a few things to iron out still but it looking good. I cannot consistently reproduce #1747, my guess is that since it's testing predicted values against expectation it might not be a good test. Thanks for your insight in the comment. I will leave it without changes for now unless I can reproduce the test failure.
I am facing some issues with python 3.9 and windows. Annoying thing is that it is not directly related to sktime but to pystan not supporting windows, see pystan on windows. Here are some quotes:

PyStan requires a working C++ compiler. Configuring such a compiler is typically the most challenging step in getting PyStan running.

PyStan is tested against the mingw-w64 compiler which works on both Python versions (2.7, 3.x) and supports x86 and x64.

Due to problems with MSVC template deduction, functions with Eigen library are failing. Until this and other bugs are fixed no support is provided for Windows + MSVC. Currently, no fix is known for this problem, other than to change the compiler to GCC or clang-cl.

I'm trying to get around this with conda but there are still some configuration details I need to tune. I'll make an update once I have the solution pinned down.

@fkiraly I managed to fix the last issue with installing the wheel on windows :tada: , it wasn't a broken wheel but the path mixup in testing. I want to remove the appveyor and azure pipelines integrations if you agree. But all the code other changes should be ready for review.

Ah, I see! A path typo then?
I think we should ask all core devs to review this, since it is so crucial, maybe give it a period of one or two weeks?
Also, currently, "build wheels and push to pypi" fails for macos-10.15 and ubuntu-20.04.

Quick question:
I'm not a GitHub actions expert, so here's a series of potentialyl stupid questions caused by me wanting to be on the safe side.

how do we avoid accidental release on pypi?
when is the release workflow triggered, which file defines the trigger? Should not be trigger on "Pr to main", right, because then we would release accidentally any time someone updates a PR? Would you kindly be able to point to file and line where the trigger is defined? As said, I'm not good at GitHub actions but feel this is something myself and others reviewing may want to convince themselves of.
when we release, is there a step of using test.pypi first, before moving to actual pypi? Can you point to relevant file/line?

Besides - excellent and really crucial work imo that I couldn't have done! Thanks a million times, @lmmentel!

Ah, I see! A path typo then?

Yup, I tried running the test from sktime root and wrong version was being imported.

I think we should ask all core devs to review this, since it is so crucial, maybe give it a period of one or two weeks?

I'm happy to walk through the changes if that would be helpful and if it is possible to find a slot that would fit everyone. Maybe one of our regular meetings?

Also, currently, "build wheels and push to pypi" fails for macos-10.15 and ubuntu-20.04.

Yup, sometimes macports.org is not available (usually round midnight) and then downloading libomp.tbz2 fails. Restarting the job should fix it.

how do we avoid accidental release on pypi?

Do you have any specific "accident" scenarios in mind?

when is the release workflow triggered, which file defines the trigger? Should not be trigger on "Pr to main", right, because then we would release accidentally any time someone updates a PR? Would you kindly be able to point to file and line where the trigger is defined? As said, I'm not good at GitHub actions but feel this is something myself and others reviewing may want to convince themselves of.

I was testing the release flow with a push trigger since running the flow on the actual release trigger would require creating a lot of fake releases. In the cleanup I restored the actual release trigger https://github.com/alan-turing-institute/sktime/blob/2a08ee82150029288ee2488036d0829c82a43598/.github/workflows/build-wheels-upload-to-pypi.yml#L4 The workflow will only be run after someone authorized creates a release manually in github.

when we release, is there a step of using test.pypi first, before moving to actual pypi? Can you point to relevant file/line?

No there is no deploy to test pypi. Do you think it is needed? If so, what for?

Do you have any specific "accident" scenarios in mind?

wrong trigger event being set (push, not release)
a maintainer following the release process incorrectly (click on wrong buttons in GitHub GUI). Accidental release should be more than one click away, if possible.

I'm happy to walk through the changes if that would be helpful and if it is possible to find a slot that would fit everyone. Maybe one of our regular meetings?

Yes, how about the Jan 14 one?

Do you have any specific "accident" scenarios in mind?

wrong trigger event being set (push, not release)
This should be picker up in the review process. I guess CI files won't change that much so little risk here, however special attention should be paid when reviewing changes involving CI.
a maintainer following the release process incorrectly (click on wrong buttons in GitHub GUI). Accidental release should be more than one click away, if possible.

I don't have a solution to human error problem except limiting the number of people authorized to push that button :wink: In case of error we can delete the release from pypi, increment version and do it again.

I'm happy to walk through the changes if that would be helpful and if it is possible to find a slot that would fit everyone. Maybe one of our regular meetings?

Yes, how about the Jan 14 one?

Works for me!

This should be picked up in the review process. I guess CI files won't change that much so little risk here, however special attention should be paid when reviewing changes involving CI.

Yes, makes sense. You should probably add yourself and @freddyaboulton to CODEOWNERS then?

I don't have a solution to human error problem except limiting the number of people authorized to push that button 😉 In case of error we can delete the release from pypi, increment version and do it again.

Is there a way to have two release buttons, one for test-pypi and one for pypi proper? With the expectation that the process is (a) release on test-pypi, (b) inspect and check, (c) release on pypi? Where the technology does not allow a release on pypi if a release on test-pypi has not happened for the same version and wheels?

Yes, makes sense. You should probably add yourself and @freddyaboulton to CODEOWNERS then?

OK.

Is there a way to have two release buttons, one for test-pypi and one for pypi proper? With the expectation that the process is (a) release on test-pypi, (b) inspect and check, (c) release on pypi? Where the technology does not allow a release on pypi if a release on test-pypi has not happened for the same version and wheels?

For extra button or other UI elements you would have to talk to github directly since it's their UI. I'm not sure I understand why would you want do a test release.

For extra button or other UI elements you would have to talk to github directly since it's their UI. I'm not sure I understand why would you want to do a test release.

The buttons are purely metaphorical, I do not suggest to develop UI elements or hack the GitHub one. Sorry, I should have made myself more clear here.
What I mean, in the current release workflow (see build_tools/make_release.py) there are a couple of "test" steps like upload to test pypi and install from it. There is a further expectation that there is a round of expert inspection before the actual release. The "button" would be whathever it means to then trigger a GitHub actions workflow with ordinary developer IDE and GitHub user interfaces.

The buttons are purely metaphorical, I do not suggest to develop UI elements or hack the GitHub one. Sorry, I should have made myself more clear here.

Got it, I didn't catch that from what you wrote.

What I mean, in the current release workflow (see build_tools/make_release.py) there are a couple of "test" steps like upload to test pypi and install from it. There is a further expectation that there is a round of expert inspection before the actual release. The "button" would be whathever it means to then trigger a GitHub actions workflow with ordinary developer IDE and GitHub user interfaces.

I checked the file and it seems like a bit of an overkill and insufficient at the same time. Indeed there is a a few steps that build and install:
        ...
        MakeDist(),
        UploadToTestPyPI(),
        InstallFromTestPyPI(),
        ...

but I don't think we should use it as is since it can to more harm than good:

it will build and upload wheels to pypi only for the platform on which the script is invoked which is a bit random, compared to the comprehensive build of wheels in the CI with coverage of all supported platforms and python versions
it will build and upload to pypi a wheel for a single python version which will use whatever python version is found on the host
after uploading, downloading and installing the wheel it will only test a single platform/single python version

I don't think I can see any benefit of doing a tests upload of a single (or multiple) wheel to pypi before a release. I'm open to being convinced otherwise but I would suggest to revise the process and consider dropping it.
What I would suggest is to craft a release according to a release process/checklist/script and have all the changes put as  a PR. After that PR is reviewed the responsible person can create the actual release on github which will trigger the workflow that will build the wheels, test all of them and upload to pypi.

I don't think I can see any benefit of doing a tests upload of a single (or multiple) wheel to pypi before a release. I'm open to being convinced otherwise but I would suggest to revise the process and consider dropping it.

Hm, why not? It does capture basic install errors and easy-to-detect breakage across all versions, before it goes on pypi. With the pypi upload, the clock starts ticking as soon as it's up, i.e., installs all around the world breaking as soon as it's there.
In my imagination - and that's perhaps also what @mloning thought - we should at least rule out issues that do not depend on version and OS.

What I would suggest is to craft a release according to a release process/checklist/script and have all the changes put as a PR. After that PR is reviewed the responsible person can create the actual release on github which will trigger the workflow that will build the wheels, test all of them and upload to pypi.

How would that be different from the test.pypi workflow?

(this is a discussion we should also probably have with more people, in the Jan 14 dev meeting)

I don't think I can see any benefit of doing a tests upload of a single (or multiple) wheel to pypi before a release. I'm open to being convinced otherwise but I would suggest to revise the process and consider dropping it.

Hm, why not? It does capture basic install errors and easy-to-detect breakage across all versions, before it goes on pypi. With the pypi upload, the clock starts ticking as soon as it's up, i.e., installs all around the world breaking as soon as it's there. In my imagination - and that's perhaps also what @mloning thought - we should at least rule out issues that do not depend on version and OS.

That test is already covered in the CI/CD workflow, after the wheels are build on each platform and python version they are installed and tested. Going for the round trip to pypi and back does not change the wheels so additional checks seem redundant.

What I would suggest is to craft a release according to a release process/checklist/script and have all the changes put as a PR. After that PR is reviewed the responsible person can create the actual release on github which will trigger the workflow that will build the wheels, test all of them and upload to pypi.

How would that be different from the test.pypi workflow?

I have a feeling that we are not talking about the same things here. I'm referring to the workflow here https://github.com/lmmentel/sktime/blob/enh-add-pyproject-toml-issue-1482/.github/workflows/build-wheels-upload-to-pypi.yml when talking about what happens (automatically) after creating and publishing a release on github. Could you elaborate on what you mean by test.pypi workflow.

(this is a discussion we should also probably have with more people, in the Jan 14 dev meeting)

Would it worth linking to this PR in the invite or announcing it on slack so that people have a chance to read though and get some context before the discussion?

@lmmentel, you have some conflicts with the installation.rst?

@lmmentel, you have some conflicts with the installation.rst?

Must've been some recent changes, let me rebase.

A monumental achievement!
I've focused inspecting the documentation, binder, .github/workflows, pyproject.toml, and setup.py . All looks sensible, although my experience is not deep here. The changes all look sensible, and the working CI/CD seems to be evidence that this is also functional.
I left some comments, all look minor, but I'd recommend to go throught hem.
Further, one question: what is going on in benchmarking - why is that being changed?

Thanks for the comments @fkiraly ! I made some changes and followed most of your suggestions. If you spot anything please let me know.
There was a testing issues with benchmarking module on macosx as far as I remember. It was related to the testing code hard coding relative paths which resulted in a bit unpredictable behavior. I replaced the hard coded paths with a pytest tmppath fixture. I had to understand the code being tested and while reading through the model there were some obvious refactors so I couldn't resist and just made the updates. Should've probably wrote an issue but it was quicker without it :slightly_smiling_face:

@fkiraly is there a time line for merging this? I'm happy for it to go in. I guess if it all goes wrong (sure it wont!) we can just reverse it?

@fkiraly is there a time line for merging this? I'm happy for it to go in. I guess if it all goes wrong (sure it wont!) we can just reverse it?

@TonyBagnall, as discussed in the core dev meeting yesterday: asap, as soon as we are happy!

@fkiraly I rebased the branch on top of latest main. I had to do manual edits in several places and unfortunately cannot guarantee that the documentation has no errors since it was not a straighforward change given that same files we modified and then modified content was moved to different files. That makes it hard to track changes. Before merging consider build the docs locally to make sure they are as expected.

@fkiraly should be ready to merge :slightly_smiling_face:


fix: use html parser over xml

Please describe the changes this PR makes and why it should be merged:
Fixed #276
Status

[x] Code changes have been tested against prettier, or there are no code changes
[x] I know how to update typings and have done so, or typings don't need updating

Semantic versioning classification:

[x] This PR changes the codebase

[ ] This PR includes breaking changes (methods removed or renamed, parameters moved or removed)
[ ] This PR changes the internal workings with no modifications to the external API (bug fixes, performance improvements)

[ ] This PR only includes non-code changes, like changes to documentation, README, etc.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 2 (0.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 59.652%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

packages/utils/index.ts
0
2
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1407

Relevant Lines:
2455

💛  - Coveralls


Qt 5's new build hook breaks popular qmake pattern

Issue description
With new Qt 5 hook user must run preConfigure to ensure that specially-crafted qmake gets in path or use $QMAKE -- otherwise it won't work. This breaks a rather popular pattern of doing configurePhase = "qmake PREFIX=$out";. I think this is a good use case and we shouldn't break it.
From what I see in the hook it sets several things in envHook and then adds qmake to PATH only in preConfigureHook. Why can't we add it earlier? Maybe do it in some other hook? I would have proposed a patch myself but I can't understand at which point envHooks are called -- there is no mention of them in setup.sh.
cc @ttuegel

This breaks a rather popular pattern of doing configurePhase = "qmake PREFIX=$out";. I think this is a good use case and we shouldn't break it.

This pattern should be discouraged; it makes it impossible to take advantage of the new multiple-outputs features. More generally, we should discourage overriding individual phases rather than writing a custom builder. Each phase does much more than call one command and overriding individual phases is likely to break things.
We should export a qmakeConfigurePhase from qtbase that calls all the pre- and post-hooks and encourage maintainers to do configurePhase = qmakeConfigurePhase instead.

Why can't we add it earlier?

It has to be prefixed to PATH after everything else so that the local qmake binary is found before any others.

I would have proposed a patch myself but I can't understand at which point envHooks are called -- there is no mention of them in setup.sh.

I don't remember where this is documented, but each of the envHooks is called once for every (transitive) dependency.

Sounds good to me. I can mass-replace those today. Why won't we also run qmake by default, like cmake does?

It's a question whether most Qt users also use qmake... but we might add qt.qmake attribute for that purpose (including mainly a hook to override configurePhase).

... so like you just do buildInputs = [ cmake ];, you could do the same with qmake.

Indeed, I've not thought of this. I like adding qmakeHook (analogous to autoreconfHook) derivation more than qmakeConfigurePhase string attribute -- what do you think?

The main advantage I see is that build-input hooks are very flexible – if there is a need, they can change any phase, any variables, etc... and you don't need to touch any of the "call sites".

Alright, I'll go on and try to implement this.

so like you just do buildInputs = [ cmake ];, you could do the same with qmake.

Oh, I like this idea even better. Also, this way we can offload all that awful symlink-farm business from the qtbase setup hook into the qmake setup hook.


Found a small error in  sfw_planner.cpp

Hello.
Thanks again for your help.
I found a very small mistake in the program.
In sfw_planner.cpp, on lines 144 and 145 :
std::printf("%.2f, ", (i * angvel_step));
std::printf("%.2f, ", (i * (-angvel_step)));
but I think angvel is a mistake for linvel, isn't it?

Yes, angvel_step is the correct one.
I have fix it.

Thank you for your confirmation.


Added 2018 Tax changes + married filing separately

Added in the new 2018 tax changes and married but filing separately.

With the new tax changes coming in today, added the new brackets and married but filing separately. Thanks for the great work on this code.


Karma deprecated

Just setup karma and then realized its deprecated 😣
https://github.com/Leaflet/Leaflet/issues/8939
https://github.com/ArnaudBuchholz/training-ui5con18-opa/issues/15
https://github.com/SAP/openui5-sample-app/issues/199

Let's hope your efforts are not totally in vain. I also recently stumped upon the issue you mentioned. Looking forward for an update on this one.


Improved Java False Positives with a println Semantic

Added default semantic for PrintWriter.println
This has drastically improved the results for Securibench

Apart from my comment, and this is probably unrelated to this specific PR: I tried to run the benchmark on master, and that also failed, albeit with a different error:
[info] - should report secure *** FAILED ***
[info]   [False positive] Source was found to taint the sink (BenchmarkFixture.scala:77)

It's probably due to missing prereqs - any idea what's wrong?

Currently it uses ScalaTest to drive the benchmark - a failed test will mean either we got a false positive or a false negative. BenchmarkFixture.scala overrides withFixture to determine if this should tally on either false positive, false negative, true positive, or true negative and then write this to either console or the specified file. joern-benchmarks makes sure to route the output to benchmarks/README.md.


onsubmit should be a SubmitEvent

Description
onsubmit should be a SubmitEvent, not a FocusEvent
Fixes #2691
This is a breaking change as it changes the public API for the onsubmit event
Checklist

[x] I have reviewed my own code
[ ] I have added tests

I didn't get to checking everything but it's a good idea to check them and make sure they're correct


LowerFilters wrong list

HKEY_LOCAL_MACHINE\system\ControlSet001\Control\Class{71a27cdd-812a-11d0-bec7-08002be2092f}
Since iorate.sys & rdyboost.sys isn't available

rdyboost not available since https://github.com/DjArt/WinB/issues/10.

601198f73e9611d41df6e25a590692bb99f2afee fixed