Sample variant call VCF files not copied to upload directory

Here is a portion of my config file:
- algorithm:
    align_split_size: 5000000
    aligner: novoalign
    mark_duplicates: true
    platform: illumina
    realign: gatk
    recalibrate: gatk
    remove_lcr: true
    variantcaller: freebayes
  analysis: variant2
  description: SA733_A51755
  files:
  - /shahlab/tfunnell/bcbio_work/CX5461_yeast/input/SA733_A51755_C7GJEANXX_8_1.fastq.gz
  - /shahlab/tfunnell/bcbio_work/CX5461_yeast/input/SA733_A51755_C7GJEANXX_8_2.fastq.gz
  genome_build: sacCer3
  metadata:
    batch: SA733
    phenotype: normal
...
upload:
  dir: /shahlab/tfunnell/bcbio_work/CX5461_yeast/output

There is output in the freebayes directory, but no VCF files in the upload directory; only the bam files, qc output and project related files have been copied.

Tyler;
Sorry about the issue. It looks like this output is the normal half of a tumor/normal pair. Is that right? If so, the normal samples get included in the VCF with the tumor in the batched file (ouput/project_*/SA733-freebayes.vcf.gz). If you're looking for germline calls, the development version of bcbio (bcbio_nextgen.py upgrade -u development) will output a -germline.vcf.gz file with those based on non-somatic shared calls between tumor and normal. Hope this helps.


PyTorch Lightning - RuntimeError: cannot register a hook on a tensor that doesn't require gradient

Describe the bug
When trying to use a SparseML callback with Pytorch Lightning, the following error is raised RuntimeError: cannot register a hook on a tensor that doesn't require gradient.
Please note I use a local copy of PyTorch lightning bolt SparseMLCallback because their _TORCH_MAX_VERSION does not match yours (I've made a PR for it to allow PT < 1.13.100. The only difference if that I do not check the torch.__version__
Expected behavior
It should train :)
Environment
Include all relevant environment information:

OS [e.g. Ubuntu 18.04]: Arch Linux
Python version [e.g. 3.7]: 3.9.15
SparseML version or commit hash [e.g. 0.1.0, f7245c8]: <IP_ADDRESS>30315
ML framework version(s) [e.g. torch 1.7.1]: Torch 1.12.1
Other Python package versions [e.g. SparseZoo, DeepSparse, numpy, ONNX]:
Other relevant environment information [e.g. hardware, CUDA version]: I tried only on CPU

To Reproduce
Exact steps to reproduce the behavior:
Just run the training.py of this repo: https://github.com/clementpoiret/sparseml_register_hook_bug/
Pytorch Lightning SparseMLCallback hasn't been updated for a while, maybe its way to do is outdated?
Errors
/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/lightning_fabric/accelerators/cuda.py:219: UserWarning: Can't initialize NVML
  warnings.warn("Can't initialize NVML")
/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/trainer/connectors/accelerator_connector.py:737: UserWarning: You passed `Trainer(accelerator='cpu', precision=16)` but native AMP is not supported on CPU. Using `precision='bf16'` instead.
  rank_zero_warn(
Using bfloat16 Automatic Mixed Precision (AMP)
GPU available: False, used: False
TPU available: False, using: 0 TPU cores
IPU available: False, using: 0 IPUs
HPU available: False, using: 0 HPUs
Loading `train_dataloader` to estimate number of stepping batches.
/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/trainer/connectors/data_connector.py:224: PossibleUserWarning: The dataloader, train_dataloader, does not have many workers which may be a bottleneck. Consider increasing the value of the `num_workers` argument` (try 12 which is the number of cpus on this machine) in the `DataLoader` init to improve performance.
  rank_zero_warn(

  | Name     | Type         | Params
------------------------------------------
0 | backbone | EfficientNet | 20.2 M
1 | loss     | MSELoss      | 0
------------------------------------------
355 K     Trainable params
19.8 M    Non-trainable params
20.2 M    Total params
80.812    Total estimated model params size (MB)
Sanity Checking: 0it [00:00, ?it/s]/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/trainer/connectors/data_connector.py:224: PossibleUserWarning: The dataloader, val_dataloader 0, does not have many workers which may be a bottleneck. Consider increasing the value of the `num_workers` argument` (try 12 which is the number of cpus on this machine) in the `DataLoader` init to improve performance.
  rank_zero_warn(
Epoch 0:   0%|                                                                 | 0/16 [00:00<?, ?it/s]Traceback (most recent call last):
  File "<stdin>", line 13, in <module>
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 608, in fit
    call._call_and_handle_interrupt(
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/trainer/call.py", line 38, in _call_and_handle_interrupt
    return trainer_fn(*args, **kwargs)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 650, in _fit_impl
    self._run(model, ckpt_path=self.ckpt_path)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 1103, in _run
    results = self._run_stage()
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 1182, in _run_stage
    self._run_train()
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 1205, in _run_train
    self.fit_loop.run()
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/loops/loop.py", line 199, in run
    self.advance(*args, **kwargs)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/loops/fit_loop.py", line 267, in advance
    self._outputs = self.epoch_loop.run(self._data_fetcher)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/loops/loop.py", line 199, in run
    self.advance(*args, **kwargs)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/loops/epoch/training_epoch_loop.py", line 213, in advance
    batch_output = self.batch_loop.run(kwargs)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/loops/loop.py", line 199, in run
    self.advance(*args, **kwargs)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/loops/batch/training_batch_loop.py", line 88, in advance
    outputs = self.optimizer_loop.run(optimizers, kwargs)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/loops/loop.py", line 199, in run
    self.advance(*args, **kwargs)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/loops/optimization/optimizer_loop.py", line 202, in advance
    result = self._run_optimization(kwargs, self._optimizers[self.optim_progress.optimizer_position])
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/loops/optimization/optimizer_loop.py", line 249, in _run_optimization
    self._optimizer_step(optimizer, opt_idx, kwargs.get("batch_idx", 0), closure)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/loops/optimization/optimizer_loop.py", line 370, in _optimizer_step
    self.trainer._call_lightning_module_hook(
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 1347, in _call_lightning_module_hook
    output = fn(*args, **kwargs)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/core/module.py", line 1744, in optimizer_step
    optimizer.step(closure=optimizer_closure)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/core/optimizer.py", line 169, in step
    step_output = self._strategy.optimizer_step(self._optimizer, self._optimizer_idx, closure, **kwargs)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/strategies/strategy.py", line 234, in optimizer_step
    return self.precision_plugin.optimizer_step(
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/plugins/precision/native_amp.py", line 68, in optimizer_step
    return super().optimizer_step(
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/pytorch_lightning/plugins/precision/precision_plugin.py", line 119, in optimizer_step
    return optimizer.step(closure=closure, **kwargs)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/sparseml/pytorch/optim/manager.py", line 172, in step
    return self._perform_wrapped_step(*args, **kwargs)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/sparseml/pytorch/optim/manager.py", line 209, in _perform_wrapped_step
    self._wrapped_manager.update(
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/sparseml/pytorch/optim/manager.py", line 589, in update
    mod.scheduled_update(module, optimizer, epoch, steps_per_epoch)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/sparseml/pytorch/sparsification/modifier.py", line 620, in scheduled_update
    self.update(module, optimizer, epoch=epoch, steps_per_epoch=steps_per_epoch)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/sparseml/pytorch/sparsification/modifier.py", line 452, in wrapper
    out = func(*args, **kwargs)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/sparseml/pytorch/sparsification/pruning/modifier_pruning_base.py", line 354, in update
    self.check_mask_update(module, epoch, steps_per_epoch)
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/sparseml/pytorch/sparsification/pruning/modifier_pruning_base.py", line 374, in check_mask_update
    self._module_masks.enabled = True
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/sparseml/pytorch/sparsification/pruning/mask_params.py", line 227, in enabled
    self._create_hooks()
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/sparseml/pytorch/sparsification/pruning/mask_params.py", line 515, in _create_hooks
    self._gradient_hooks[idx] = param.register_hook(
  File "/home/cp264607/anaconda3/envs/SparseML/lib/python3.9/site-packages/torch/_tensor.py", line 430, in register_hook
    raise RuntimeError("cannot register a hook on a tensor that "
RuntimeError: cannot register a hook on a tensor that doesn't require gradient

Additional context
Add any other context about the problem here. Also include any relevant files.

@bfineran it happens also with torch==1.13.1.
I checked parameters with requires_grad==False
for name, param in model.named_parameters():
    if not param.requires_grad:
        print(name)

I got every parameter of the backbone except my custom classifier. So in my model, I have done:
self.backbone = registry.create(model_name, pretrained=pretrained)

# Set requires_grad for backbone to True
for param in self.backbone.parameters():
    param.requires_grad = True

Printing all parameters with requires_grad==False returns nothing after that, but the problem stays the same: RuntimeError: cannot register a hook on a tensor that doesn't require gradient
Maybe it comes from that?
  - !TrainableParamsModifier
    start_epoch: 0.0
    end_epoch: eval(num_epochs)
    trainable: false
    params: __ALL__

A simple workaround I found is to pass the register_hook call if requires_grad is false, where
def _create_hooks(self):
    for idx, (param, layer) in enumerate(zip(self._params, self._layers)):
       ...
        if self._gradient_hooks[idx] is None:
            self._gradient_hooks[idx] = param.register_hook(
                partial(self._hook_mask_gradient, idx))

becomes
def _create_hooks(self):
    for idx, (param, layer) in enumerate(zip(self._params, self._layers)):
       ...
        if self._gradient_hooks[idx] is None:
            self._gradient_hooks[idx] = param.register_hook(
                partial(self._hook_mask_gradient,
                        idx)) if param.requires_grad else None

If, according to you, it's the way to go, I can open a PR. But I don't know how to carefully test it.

Hi @clementpoiret
We've continued this thread in PR #1463 - let us know either way, thanks!
Best, Jeannie / Neural Magic

Hi @clementpoiret closing this for now since the branch hasn't been updated for a few months. Happy to circle back anytime.


Failed to verify some or all of the following files

When I tired to reinstall the xivalexander <IP_ADDRESS> version, this window pops up. And I re-download for many times, but it still not work.

I've just fixed the files. Try downloading again.

It can be installed now, Thank you!

Hi could you tell me where to put the dll files ? For non steam thankyou
On Thu, 9 Dec 2021, 18:36 Vincent, @.***> wrote:

When I tired to reinstall the xivalexander <IP_ADDRESS> version, this window
pops up. And I re-download for many times, but it still not work.
[image: image]
https://user-images.githubusercontent.com/31463131/145401963-3bbf0dc4-b481-44c8-9c08-c74f9a87469b.png
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Soreepeong/XivAlexander/issues/226, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AVWIXUV3AAEZEPX5A574N6DUQCSWTANCNFSM5JWNRHOA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Hi could you tell me where to put the dll files ? For non steam thankyou
…
On Thu, 9 Dec 2021, 18:36 Vincent, @.***> wrote: When I tired to reinstall the xivalexander <IP_ADDRESS> version, this window pops up. And I re-download for many times, but it still not work. [image: image] https://user-images.githubusercontent.com/31463131/145401963-3bbf0dc4-b481-44c8-9c08-c74f9a87469b.png — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub <#226>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AVWIXUV3AAEZEPX5A574N6DUQCSWTANCNFSM5JWNRHOA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

I unzipped the zip file into one folder on desktop, just put there

Just extract all files and run the Loader; it will offer to either load XivAlexander right away or install it.


Add policy listener support

Add support for listener keyword in CNP to redirect matching traffic to an Envoy listener.
Waiting for merge of these PRs:

[x] #21808
[x] #22398

Please review commit-by-commit.
Traffic can now we redirected to Envoy listeners via Cilium Network Policy `listener` option.

Rebased.

Now using tip of cilium/proxy (1st commit updated).

/test

Dropped commit from https://github.com/cilium/cilium/pull/21805 to get past base image lint.

/test

/test

/test

/test

I have fixed build-commits breakage locally by adding GetListener() definitions to the 9th (2nd to last) commit locally. Will wait for more Ci builds to complete before pushing.

On a similar note to above, it might be wise to change listener to a object with a name field anyways, just to future proof it in case you need to add additional configuration options to the listener reference in the policy rules.

I'll do this, and add a namespace field for CCNP use. Not sure how to refer to the CEC yet.. right now a listener must contain the namespace and CEC name in the reference, e.g. some-ns/foo-cec/my-custom-listener, but there is no restriction on the namespace, as you noticed.

@chancez Added the unit testing you asked for, and changed the listener name in policy to a structured type. Added GetNamespace() method to PolicyContext to be able to default to the enclosing rule's namespace if namespace is left out. Just noticed that I did not add defaulting to "default" if rule's namespace is empty (i.e., as in CCNP). Left the this change into a separate commit so that it will be easier for you to review, will squash before merge :-)

/test

@chancez Yes, CNPs using a shared CCEC defined listener is a valid use case. We currently disambiguate between CEC and CCEC defined listeners (in listener names) by the fact that CCEC do not have a namespace and CEC's do. Given this we need:

CNPs should only be able to refer to listeners defined in CECs in their own namespace, or in CCECs for shared listeners
CCNPs should only be able to refer to listeners defined in CCECs

For the above a namespace in a CNP or CCNP Listener reference is not useful at all.
I'm also a bit ambivalent about using the envoyConfig keyword in the CNP/CCNP. IMO something more generic would be better. Thoughts/opinions/ideas?

I'm also a bit ambivalent about using the envoyConfig keyword in the CNP/CCNP. IMO something more generic would be better. Thoughts/opinions/ideas?

Or then make it even more explicit, and in addition to removing the namespace reference (that is not needed), replace envoyConfig with these two, out of which one must be specified:

cec: Name of a CiliumEnvoyConfig resource in the same namespace as a CNP (only valid for a CNP)
ccec: Name of a CiliumClusterwideEnvoyConfig resource

Alternative names for these two could be the current envoyConfig and sharedEnvoyConfig, or more abstractly, resource and clusterResource, or some variation thereof.

@chancez Added a new commit addressing the namespacing issue you pointed out. This removes namespace from the listener reference, as the listener must either be in the same namespace as the rule (for CNP rules), or be non-namespaced listener (always for CCNP, optionally for CNP rules). To achieve this I added a clusterwideEnvoyConfig that can be used in place of envoyConfig, when referring to a listener defined in (non-namespaced) ClusterwideCiliumEnvoyConfig.
I still hope we can come up with better names for envoyConfig and clusterwideEnvoyConfig fields, if possible.

/test

@jrajahalme yeah this looks great. I'm not sure what's best for naming, I think the main things we should consider is if we will need to extend this in the future, then a nested structure is better, as it will let us add more fields easily later.
I also think we could still use a single envoyConfig field rather than a sharedEnvoyConfig, and just add kind field to it, like RoleBindings do with roleReferences. Eg:

I still think we could still use a single envoyConfig field rather than a clusterwideEnvoyConfig, and just add kind field to it, like RoleBindings do with roleReferences. Eg:
  envoyConfig:
    name: foo-cec
    kind: CiliumClusterwideEnvoyConfig # optional, if unset, it's equal to kind: CiliumEnvoyConfig

@chancez It would seem kind should default to CiliumEnvoyConfig for CNPs and CiliumClusterwideEnvoyConfig for CCNPs, especially since reference to a CEC is not allowed from a CCNP?

@chancez Added explicit kind to envoyConfig, squashed late commits together to be ready for merging.

@christarazi Addressed your comments and rebased :-)

/test


chore(main): release 1.1.0

:robot: I have created a release beep boop
1.1.0 (2024-09-13)
Features

add support for specifying 'ticket number' and 'ticket system' (#56) (a62c52f)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v1.1.0
:sunflower:


IP address spoofing

I observed code and see that config allows templating for headers and requests. But what about to add default IP address spoofing solution that adds headers for each HTTP attack
https://github.com/MHProDev/MHDDoS/blob/main/start.py#L566
`
("X-Forwarded-Proto: Http"
f"X-Forwarded-Host: {self._target.raw_host}, <IP_ADDRESS>"
f"Via: {spoof}"
f"Client-IP: {spoof}"
f'X-Forwarded-For: {spoof}'
f'Real-IP: {spoof}'
)
`

@bmirnoff, The problem here is that X-Forwarded-* headers are usually set by the load balancers. I can't be 100% confident, but it feels like these headers would be overwritten by the reverse proxy servers on the target side


Setup preview

We need to setup NextJS preview mode so that editors can make changes without going immediately live. Here's a brief step-by-step of this process:

[ ] Open preview API route and set preview mode
[ ] Handle preview mode in getStaticProps
[ ] Install payload-admin-bar
[ ] Handle preview exit

This is related to this issue


Get SwiftSyntax ready for building in a unified build with other projects

Avoid recompiling SwiftSyntax for every project that depends on it by building all of these projects in a unified build.
This PR gets SwiftSyntax ready for the unified build by providing a --multiroot-data-file command line option with which the workspace for the unified build can be specified. Furthermore it sets environment variables that configure the builds of downstream jobs to use local dependencies.
See https://github.com/apple/swift/pull/28005

@swift-ci Please test


Possible memory leakage in v1.0.0 (related with neureka.devices.CustomDeviceCleaner )

I have started using neureka 1.0.0 in my java project recently. Thank you very much for sharing this great project. I in desperate need of your help with solving a possible memory leakage.  OutOfMemoryError will be raised as neureka functions calls grows. The following message from eclipse might help:
One instance of neureka.devices.CustomDeviceCleaner loaded by sun.misc.Launcher$AppClassLoader @ 0x3c0013e70 occupies 16,455,983,640 (99.20%) bytes. The memory is accumulated in one instance of java.lang.Object[], loaded by , which occupies 16,455,983,584 (99.20%) bytes.
Thread java.lang.Thread @ 0x430d0b2e0 Thread-10 has a local variable or reference to neureka.devices.CustomDeviceCleaner @ 0x3e03d0818 which is on the shortest path to java.lang.Object[6153400] @ 0x6e4ee2580. The thread java.lang.Thread @ 0x430d0b2e0 Thread-10 keeps local variables with total size 424 (0.00%) bytes.
Significant stack frames and local variables
neureka.devices.CustomDeviceCleaner.run()V (CustomDeviceCleaner.java:52)
neureka.devices.CustomDeviceCleaner @ 0x3e03d0818 retains 16,455,983,640 (99.20%) bytes
The stacktrace of this Thread is available. See stacktrace. See stacktrace with involved local variables.
My program was running on JDK 8 (Intel CPU, Windows 11 x64) .

Maybe I should call MutableTensor.delete() for each Tensor. My problem should be solved.

I've just found calling delete() on Tensor Object does not solve the problem. There are still a huge number of neureka.devices.ReferenceCounter, CustomDeviceCleaner$ReferenceWithCleaup object in my heap after i tried to call delete() on each Tensor used in the computing.

It seems to me that the field 'list' of CustomDeviceCleaner is not cleared when unregistering happens.
final class CustomDeviceCleaner implements DeviceCleaner, Runnable
{
private final ReferenceQueue _referenceQueue = new ReferenceQueue<>();
private final long _timeout = 60 * 1000;
private int _registered = 0;
List<Object> list = new ArrayList<>();

static class ReferenceWithCleanup<T> extends PhantomReference<T>
{
    private final Runnable _action;

    ReferenceWithCleanup(T o, Runnable action, ReferenceQueue<T> queue) {
        super( o, queue );
        _action = action;
    }
    public void cleanup() {
        _action.run();
    }
}

@Override
public void register(Object o, Runnable action) {
    synchronized ( _referenceQueue ) {
        list.add(new ReferenceWithCleanup<Object>(o, action, _referenceQueue));
        _registered++;
        if ( _registered == 1 ) new Thread( this::run ).start();
    }
}

Thank you so much for finding and reporting this issue!
I will push a fix soon.

Great! Thank you for responding so quickly

I merged a hand full of general improvements from another branch which
already includes a rewrite of the device cleaner.
Based on my testing this should not produce any memory leaks.
A similar design is used in other projects as well. So it should be ok.
But can you verify this using the latest commit hash from main and verify in your code as well?
If you are using Gradle, you can check out the snapshot like this:
allprojects {
	repositories {
		//...
		maven { url 'https://jitpack.io' }
	}
}
// ...
dependencies {
	implementation 'com.github.Gleethos:neureka:241a79873c1c1da817a792282168af3914be9d6c' //main hash
}

I want to make sure that this is really fixed before I make a full release.
So it would be of great great help if you could approve the changes.

I will try it. Thank you.
On Tue, Dec 10, 2024 at 10:07 AM Daniel Nepp @.***>
wrote:

I merged a hand full of general improvements from another branch which
already includes a rewrite of the device cleaner.
Based on my testing this should not produce any memory leaks.
A similar design is used in other projects as well. So it should be ok.
But can you verify this using the latest commit hash from main and verify
in your code as well?
If you are using Gradle, you can check out the snapshot like this:
allprojects {
repositories {
//...
maven { url 'https://jitpack.io' }
}
}
// ...
dependencies {
implementation 'com.github.Gleethos:neureka:241a79873c1c1da817a792282168af3914be9d6c' //main hash
}
I want to make sure that this is really fixed before I make a full release.
So it would be of great great help if you could approve the changes.
—
Reply to this email directly, view it on GitHub
https://github.com/Gleethos/neureka/issues/26#issuecomment-2531734731,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADDQNAHHJLA2CZGG6YGODG32E3YQ7AVCNFSM6AAAAABS52GHZSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKMZRG4ZTINZTGE
.
You are receiving this because you modified the open/close state.Message
ID: @.***>

Confirmed. No memory leakage.  FYI, I have to use it like this:
    <dependency>
        <groupId>com.github.Gleethos</groupId>
        <artifactId>neureka</artifactId>
        <version>241a79873c1c1da817a792282168af3914be9d6c</version>
        <exclusions>
            <exclusion>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-api</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.jetbrains.kotlin</groupId>
                <artifactId>kotlin-stdlib-jdk7</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.jetbrains.kotlin</groupId>
                <artifactId>kotlin-stdlib-jdk8</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

I am using JAVA 8, I wonder if the coming release will not depend on kotlin stdl libs and a snapshot version slf4j-api.  Anyway, thank you. Great project!

Currently I have the following dependencies configured:
    implementation group: 'com.google.errorprone', name: 'error_prone_annotations', version: '2.27.0'
    implementation group: 'org.jspecify', name: 'jspecify', version: '1.0.0'
    implementation 'org.jocl:jocl:2.0.5'
    implementation group: 'org.slf4j', name: 'slf4j-api', version: '[1+, )'

This is different from before in that now the slf4j requirement is now less specific,
and as well as two annotation libraries for static analysis...
Kotlin is only used in the test suite.
I hope that is compatible with your usage sites!

You have to exclude kotlin-stdlib for it to work?
That should not be necessary. This dependency should not be part of neureka.

You have to exclude kotlin-stdlib for it to work? That should not be necessary. This dependency should not be part of neureka.

I saw kotlin-stdlib in the result of IntellijIdea's Analyze Dependencies function. It is not a big deal. I can remove it.

I dispatched the release as version 1.0.1. Thank you again for the bug reports and also
thank you for using Neureka, I hope it continues to provide value for you and
the projects you use it in.

I am using JAVA 8

Oh and just for your information, Neureka is also fully upwards compatible, so
if you are not using it in a legacy project stuck on Java 8, feel free
to use newer Java versions like 21.


Gh 261 iterable concat null pointer exception

Related Issue

Resolve #261

Codecov Report

Merging #262 (d51af12) into develop (f91f89d) will increase coverage by 0.92%.
The diff coverage is 90.75%.

:exclamation: Current head d51af12 differs from pull request most recent head 1db5e21. Consider uploading reports for the commit 1db5e21 to get more accurate results

@@              Coverage Diff              @@
##             develop     #262      +/-   ##
=============================================
+ Coverage      81.13%   82.05%   +0.92%
- Complexity      1534     1545      +11
=============================================
  Files            185      184       -1
  Lines           4268     4253      -15
  Branches         430      428       -2
=============================================
+ Hits            3463     3490      +27
+ Misses           627      586      -41
+ Partials         178      177       -1

Impacted Files
Coverage Δ

...main/java/uk/gov/gchq/koryphe/adapted/Adapted.java
89.47% <ø> (ø)

...java/uk/gov/gchq/koryphe/adapted/InputAdapted.java
100.00% <ø> (ø)

...hq/koryphe/adapted/StateAgnosticOutputAdapter.java
100.00% <ø> (ø)

.../koryphe/binaryoperator/AdaptedBinaryOperator.java
100.00% <ø> (ø)

...gchq/koryphe/binaryoperator/BinaryOperatorMap.java
69.23% <ø> (ø)

.../koryphe/binaryoperator/KorypheBinaryOperator.java
88.88% <ø> (-11.12%)
:arrow_down:

.../java/uk/gov/gchq/koryphe/composite/Composite.java
86.95% <ø> (ø)

.../uk/gov/gchq/koryphe/function/AdaptedFunction.java
64.28% <ø> (ø)

...java/uk/gov/gchq/koryphe/function/FunctionMap.java
60.00% <ø> (ø)

.../uk/gov/gchq/koryphe/function/KorypheFunction.java
100.00% <ø> (ø)

... and 85 more

Continue to review full report at Codecov.

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


query the same list 2times......query help

database structure ...
user:{
    user1:{
      name:'abc'
   },
    user2:{
        name:'xyz'
    },
     .................
    }
 items:{
     item1:{
        status:'un solved'
           name:'abc'
     },
    item2:{
       status:'solved '
          name:'abc'
 },
    item3:{
    status:'un solved '
        name:'xyz'
  },
}

am using aa tab view in solved tab want to show the solves item and in un solved view want to show the item unsolved...
1 of alll i query the list orderbychlid:name and getting all the item of the specific user .... successfuly
problem is that how to show the solved and unsolved item who to get by query
more on am  using this approach and it work but display data of specific user
ngOnInit()
{
   this.items = af.database.list('/items', {
      query: {
        orderByChild: 'name',
        equalTo: this.Subject
      }
    })
     filterBy(name);

}
  filterBy(data){
      this.userSubject.next(data);
  }

any best way to  differnce btw solved un_solved this .....  ?

@shamrozwarraich You can use the same approach you did for the name field.
   this.items = af.database.list('/items', {
      query: {
        orderByChild: 'status',
        equalTo: this.Subject
      }
    })
    this.statusSubject.next('solved');

Please try to keep these kind of questions to Stackoverflow as they provide a better medium for fielding questions. Ideally the Github repo would contain troubleshooting of issues like setting up and getting the API to work properly. This question is more so "I need to do ____" which is best suited for Stackoverflow.


Consolidate "gas object" and "gas payment" in apis

To refer to the gas object, we call it "Gas Payment" or "Gas Object", which needs a consolidation for consistency. gasObject is in TransactionEffects whilst gasPayment is in TransactionData.

which one is the term we are using?


Allow specification of enable_flow_logs

Hah, now we're hitting Terraform AWS provider deprecations.

Let me see if I can fix this.


#97: isolated peek using Flatpak

Addresses https://github.com/iancleary/personal-ansible/issues/97


io.netty.channel.socket.nio.AbstractNioChannel     doRegister() ？？

@Override
protected void doRegister() throws Exception {.............
selectionKey = javaChannel().register(eventLoop().selector, 0, this);
what does the  "opt==0" means ?
1=OP_READ
2=OP_WRITE
8=OP_CONNECT
16=OP_ACCEPT
0=??
but ,I found that:
NioEventLoop.has method :
private static void processSelectedKey(SelectionKey k, AbstractNioChannel ch) {
............
....................
try {
int readyOps = k.readyOps();
if ((readyOps & (SelectionKey.OP_READ | SelectionKey.OP_ACCEPT)) != 0 || readyOps == 0) {
unsafe.read();
if (!ch.isOpen()) {
// Connection already closed - no need to handle write.
return;
}
}
........
"readyOps==0"   ,why?
thanks you!

There are two way to register interested events:
1.Channel.register()
2.SelectionKey.interest(int)
netty use 2.
After binding channel to selector(that is, register the channel to selector with 0), netty will invoke fireChannelActive()->fire a read event->HeadContext.unsafe.doBeginRead()->SelectionKey.interestOps(int) to set interestOps.
protected void doBeginRead() throws Exception {
if (inputShutdown) {
return;
}
    final SelectionKey selectionKey = this.selectionKey;
    if (!selectionKey.isValid()) {
        return;
    }

    final int interestOps = selectionKey.interestOps();
    if ((interestOps & readInterestOp) == 0) {
        selectionKey.interestOps(interestOps | readInterestOp);
    }
}

It took me a day to find the place to register “SelectionKey.OP_ACCEPT”，finally，I found that，case 1 eq case 2
        selector = Selector.open();
        serverSocket = ServerSocketChannel.open();
        serverSocket.configureBlocking(false);
//        SelectionKey sk = serverSocket.register(selector, SelectionKey.OP_ACCEPT); // case 1
        SelectionKey sk = serverSocket.register(selector, 0); //case 2
        serverSocket.socket().bind(new InetSocketAddress(port));
        sk.attach(new Acceptor());


The catalog rule is not applying after updating the product.

Bagisto Version: Master
Steps To reproduce--
1. Log in as an admin.
2. Click on promotion inside the marketing tab.
3. Create a catalog rule for any variant of the configurable product.
4. Go to the shop and view the same configurable product.
5. Go to the admin panel and update the price of the same configurable product.
6. Visit the shop and view the updated product.
Expected result: The catalog rule should be applied if the admin is updating the product's price.
Actual result: The catalog rule is not applying after updating the product.

@Sanjaybhattwebkul
We need to re-index catalog rule after price updates in product.
Please run below command:
php artisan product:price-rule:index
Command will automatically trigger using cron in case of production.


Add Brightness Control extension

Description
This extension is a quick and simple tool helping you to increase and decrease the brightness of the your display using AppleScript.
Screencast
https://user-images.githubusercontent.com/10830749/180639351-d8a37182-d26a-4636-8de4-4dee902f65dc.mp4
Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

Hi @CaliCastle 👋
Thank you so much for your contribution.
However I'm wondering if the extension is actually faster than pressing your default hotkeys for increasing and decreasing brightness?

Hi @CaliCastle 👋
Thank you for your contribution to our store. I will merge it in a bit 🙂


Initial Memory Size

We have found an issue when loading large policies causing the Wasmtime to throw a "wasm trap: out of bounds memory access" error.  We were able to pull in the source code into our project and change the minimum memory page size from 2 to 3 and that resolved our issue.  We also tried updating the maximum memory size, but that did not seem to resolve the issue.
Unless we are doing something wrong, we would like to have an optional parameter on the CreatePolicyInstance to be able to specify the initial page size.

I can add a ctor parameter for that; could you tell me actually which line raised the wasm trap (curiosity)?

Does the change in the linked commit work for you?

@christophwille, yes that will work great.  Thanks for the quick response.

Shipped in 0.90.


ConnectionAborted in 1.2.1

During connection to the server, sometimes I get "ERROR: Connection error" from lapin. It wouldn't be a problem if not the fact, I'd like to have a health check which connects to RabbitMQ to see if dep is reachable. I'm working on reusing connection but that's not the issue I guess.
The error isn't isn't propagated, after all connection is successfull, I'm getting Ok result and connection.status().connected() returns true.
But the log::error! happened and it's a bit upsetting because I'm not sure if I can simply ignore it.
Using the newest lapin 1.2.1, however, the error also has been seen on 1.0.0.
I also forked lapin to expand error info: https://github.com/frondeus/lapin/tree/wpo_connection_error
and I noticed that it is IO error: connection aborted.
I'm connecting to the two different VHOSTs, synchronously (by using .wait() in a for loop), but unfortunately, everything is so fast and it happens in the same second, so logs may not be in right order :(
My logs:
https://gist.github.com/frondeus/c5d4848aa72ca28d818f9337762d9e24
Is lapin simply trying to reconnect? Or maybe error happens at the moment when I close the connection but my logs are in wrong order?

Is your source code available somewhere?
If you get this, the connection definitely should end up in an error state and the error be propagated, maybe you are recreating a new connection somehow?

Also, which OS are you running this on?
The ConnectionAborted you're seeing is actually created by lapin: https://github.com/CleverCloud/lapin/blob/master/src/io_loop.rs#L182

Is your source code available somewhere?
Unfortunately, no - Code is proprietary.

maybe you are recreating a new connection somehow?
I have no reconnection code, plus I was just creating new connection for each /health request. It has changed now, I'm reusing connection but I can see in the logs that it still happens sometimes, but just once during startup (when I create a connection). What's more, the main thread can connect to the same VHOSTs, and receives messages properly.

Also, which OS are you running this on?
Ubuntu 18.04 in docker container.

The ConnectionAborted you're seeing is actually created by lapin
That's correct. I was also thinking about using tracing library in my fork to have a better understanding of what's going on (and for which connection it fails). I'm gonna do it but in next few months (after the first official release of our app :))

Fwiw, I’ve started switching to tracing for 2.0
On Wed 19 Aug 2020 at 15:03, Wojciech Polak<EMAIL_ADDRESS>wrote:

Is your source code available somewhere?
Unfortunately, no - Code is proprietary.
maybe you are recreating a new connection somehow?
I have no reconnection code, plus I was just creating new connection for
each /health request. It has changed now, I'm reusing connection but I
can see in the logs that it still happens sometimes, but just once during
startup (when I create a connection). What's more, the main thread can
connect to the same VHOSTs, and receives messages properly.
Also, which OS are you running this on?
Ubuntu 18.04 in docker container.
The ConnectionAborted you're seeing is actually created by lapin
That's correct. I was also thinking about using tracing library in my
fork to have a better understanding of what's going on (and for which
connection it fails). I'm gonna do it but in next few months (after the
first official release of our app :))
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/CleverCloud/lapin/issues/296#issuecomment-676319619,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABWNXRP6LENYRKXRRXNYKTSBPEQHANCNFSM4PVGJQYQ
.

Do you think you could extract a "minimal" reproducer and maybe send that to me (privately if necessary)? With some details about the environment?

Closing for inactivity.
Please reopen an issue if the problem persists, with a sample program that reproduces the error


Update source-foundations to use design tokens

As a first step to introducing design tokens we want to add them directly to source-foundations so they are used to generate the existing tokens this package exports. Consumers of the package will see no difference: rather than the TS objects and variables being created and updated by hand, they'll be automatically generated from a set of common design tokens. By not publishing these as a separate package their use is slightly under the radar, allowing us to experiment without the burden of having to support usage elsewhere. Eventually it's likely these will be moved out to a separate package and become another dependency.
Prototype source-design-tokens package: https://github.com/guardian/csnx/pull/896
### Tasks
- [x] https://github.com/guardian/csnx/issues/987
- [x] https://github.com/guardian/csnx/issues/988
- [x] https://github.com/guardian/csnx/issues/989
- [x] https://github.com/guardian/csnx/issues/990
- [x] Build remaining set of tokens
- [x] Investigate outputting tokens as TypeScript
- [x] Generate spacing tokens as TS
- [x] Consume spacing tokens in Source Foundations
- [x] Generate size tokens as TS
- [x] Generate colour tokens as TS
- [x] Generate typography tokens as TS
- [x] Generate breakpoint tokens as TS
- [x] Consume typography tokens in Source Foundations
- [x] Consume remainder of tokens in Source Foundations
- [ ] Investigate generating token JSON from Figma

@jamesmockett is this finished now?


definition for directive information entity does not apply to all bearers

From<EMAIL_ADDRESS>on April 08, 2014 09:18:47
The definition for directive information entity reads:
An information content entity whose concretizations indicate to their bearer how to realize them in a process.
This does not seem correct for all their bearers. As an ICE, a directive information entity can be borne by inanimate objects, such as a piece of paper. However, in what sense does the directive information entity indicate to the paper how to realize the instructions?
Original issue: http://code.google.com/p/information-artifact-ontology/issues/detail?id=161

From<EMAIL_ADDRESS>on June 25, 2014 08:09:35
I haven't seen any comments on this issue. Is there any interest in pursuing it?


onDone not triggered for parallel states

Description
I was studying parallel states and more specifically trying out the example in the documentation (https://xstate.js.org/docs/guides/final.html#parallel-states). The onDone function does not get fired when children states get into the final state.
This issue might be related to https://github.com/davidkpiano/xstate/issues/335?
Expected Result
As the example in the documentation, onDone should be fired when the children get into the final state.
Actual Result
onDone is not fired when the children get into the final state.
Reproduction
https://codesandbox.io/s/nifty-ganguly-8bnei
Additional context
Latest version of xstate (4.8.0)

Try doing it in a child parallel state, rather than directly on the machine.

It works only for the first parallel child moving to a final state.
The second onDone is also not being fired:
https://codesandbox.io/s/infallible-haze-h73e2
You can change the order of events sent to see it.
In any case, if that onDone in the machine level does not work, how would you fill up data to pass context to the parent?

what would be the direction here?

I have the same problem.

Wrapping the whole thing in as a child state worked. But it's a bug anyway.

Looking into this now.

I was fetching all resources needed by a webpage before displaying it.
It works for me to do it as I did, by wrapping it as a child state. I don't have to have this fixed now, but it should be documented. Because it took me some time to figure this out.

@davidkpiano maybe we could also add a dev-only working when we find onDone defined on the root? As it can't work (because the machine is determined by then, like you have said) then we could just surface misusage to the user early.

My use-case is similar to @knobo. Fetching from different sources and moving on with the parent state afterwards. service.onDone(...) worked as pointed out.
I liked the idea of adding this use-case in the documentation. Would have saved me some time 😅


Video URI on Android incorrect [🐛]

Description
When picking a video file from an Android device, the URI returned doesn't work, when I visit the returned URI in Chrome, it says file does not exist.
Works fine on iOS
Sample response from the launchImageLibrary:
{"fileName": "90510942_824331778088534_328930688839450624_n.mp4", "fileSize": 320924, "uri": "content://com.google.android.apps.photos.contentprovider/-1/2/content%3A%2F%2Fmedia%2Fexternal%2Fvideo%2Fmedia%2F48/ORIGINAL/NONE/2051731147"}
How to repeat issue and example

step to reproduce the issue
...

Solution
What needs to be done to address this issue?
Additional Information

Image Picker version: ^3.1.1
React Native version: ^0.61.5
Platform: Android
Development Operating System: macOS
Dev tools: Android Studio

Any solution for this ?

Any solution for this ?

Any solution for this ?

+1

Any solution for this ?

+1

this is a very serious problem and a solution is needed.

this is a very serious problem and a solution is needed.

Any solution for this ?

I applied a temporary solution;
yarn add react-native-fs
import RNFS from 'react-native-fs';

async videoUrlCopy(uri, fileName) {
        const destPath = `${RNFS.TemporaryDirectoryPath}/${fileName}`;
        await RNFS.copyFile(uri, destPath);
        await RNFS.stat(destPath);
        return destPath;
    }

Any solution for this ?

I applied a temporary solution;
yarn add react-native-fs
import RNFS from 'react-native-fs';

async videoUrlCopy(uri, fileName) {
        const destPath = `${RNFS.TemporaryDirectoryPath}/${fileName}`;
        await RNFS.copyFile(uri, destPath);
        await RNFS.stat(destPath);
        return destPath;
    }

I can't understand the problem you'r facing. For iOS and Android the image file you get is the copy of the original image after applying any width and height constraints.
For video file in iOS you get a compressed copy of the original file (default behaviour of the picker) where as on android we don't make a copy of the original file but give temporary access to the original file for that session via content URI. I can make a copy of the original video file in temp cache directory like I do for android images, but don't know if it's the right way to handle video files.

I can't understand the problem you'r facing. For iOS and Android the image file you get is the copy of the original image after applying any width and height constraints.
For video file in iOS you get a compressed copy of the original file (default behaviour of the picker) where as on android we don't make a copy of the original file but give temporary access to the original file for that session via content URI. I can make a copy of the original video file in temp cache directory like I do for android images, but don't know if it's the right way to handle video files.

I can't understand the problem you'r facing. For iOS and Android the image file you get is the copy of the original image after applying any width and height constraints.
For video file in iOS you get a compressed copy of the original file (default behaviour of the picker) where as on android we don't make a copy of the original file but give temporary access to the original file for that session via content URI. I can make a copy of the original video file in temp cache directory like I do for android images, but don't know if it's the right way to handle video files.

The method(providers) used negatively affects many plugins.
The method you(temp cache) suggested will be very helpful in this regard.
We will not need additional development.

I can't understand the problem you'r facing. For iOS and Android the image file you get is the copy of the original image after applying any width and height constraints.
For video file in iOS you get a compressed copy of the original file (default behaviour of the picker) where as on android we don't make a copy of the original file but give temporary access to the original file for that session via content URI. I can make a copy of the original video file in temp cache directory like I do for android images, but don't know if it's the right way to handle video files.

The method(providers) used negatively affects many plugins.
The method you(temp cache) suggested will be very helpful in this regard.
We will not need additional development.

@sekizlipenguen @Janak-Nirmal @arhmnsh What do you want to do with the video file?

Play it in your app? (Content URI will do for that)
Upload to ur backend? (Content URI will do for that)
Share it with other apps? (I don't know how share works)

@arhmnsh why do u enter the URI in chrome, thats not how it works.
Tell your use cases.

@sekizlipenguen @Janak-Nirmal @arhmnsh What do you want to do with the video file?

Play it in your app? (Content URI will do for that)
Upload to ur backend? (Content URI will do for that)
Share it with other apps? (I don't know how share works)

@arhmnsh why do u enter the URI in chrome, thats not how it works.
Tell your use cases.

I want use recorded video uri (example returned uri "content://com.xiaomi_app.imagepickerprovider/cacheDir/rn_image_picker_lib_temp_24ef6f34-5e12-45ef-b231-6b07f37b4870.mp4") with RNFS or react-native-ffmpeg, but if i do:
const fileStat = await RNFS.stat(res.uri)

RNFS return:
Error: File does not exist

Any idea to fix it? I have to save it first?

I want use recorded video uri (example returned uri "content://com.xiaomi_app.imagepickerprovider/cacheDir/rn_image_picker_lib_temp_24ef6f34-5e12-45ef-b231-6b07f37b4870.mp4") with RNFS or react-native-ffmpeg, but if i do:
const fileStat = await RNFS.stat(res.uri)

RNFS return:
Error: File does not exist

Any idea to fix it? I have to save it first?

+1 Same issue I am facing from today! Any quick fix?

+1 Same issue I am facing from today! Any quick fix?

@sekizlipenguen @Janak-Nirmal @arhmnsh What do you want to do with the video file?

Play it in your app? (Content URI will do for that)
Upload to ur backend? (Content URI will do for that)
Share it with other apps? (I don't know how share works)

@arhmnsh why do u enter the URI in chrome, thats not how it works.
Tell your use cases.

How can I upload to a custom backend from contentUri?

@sekizlipenguen @Janak-Nirmal @arhmnsh What do you want to do with the video file?

Play it in your app? (Content URI will do for that)
Upload to ur backend? (Content URI will do for that)
Share it with other apps? (I don't know how share works)

@arhmnsh why do u enter the URI in chrome, thats not how it works.
Tell your use cases.

How can I upload to a custom backend from contentUri?

@ravirajn22  currently getting uri like this content://com.google.android.apps.photos.contentprovider/-1/2/content%3A%2F%2Fmedia%2Fexternal%2Fvideo%2Fmedia%2F124/ORIGINAL/NONE/1711542917

@ravirajn22  currently getting uri like this content://com.google.android.apps.photos.contentprovider/-1/2/content%3A%2F%2Fmedia%2Fexternal%2Fvideo%2Fmedia%2F124/ORIGINAL/NONE/1711542917

@sekizlipenguen @Janak-Nirmal @arhmnsh What do you want to do with the video file?

Play it in your app? (Content URI will do for that)
Upload to ur backend? (Content URI will do for that)
Share it with other apps? (I don't know how share works)

@arhmnsh why do u enter the URI in chrome, thats not how it works.
Tell your use cases.

@ravirajn22 I just put it in chrome to check if the URI is valid, and it wasn't. If the URI is valid, it should play the video in chrome, as it does on iOS.
When uploading the URI to backend, it gives error on Android, whereas it works fine on iOS.

Just curious about the implementation. I found there is a method getAppSpecificStorageUri to make a file copy inside the app specific storage for future use, but why it only applied to the photos rather than also include for the vidoes?

Any solution for this ?

I applied a temporary solution;
yarn add react-native-fs
import RNFS from 'react-native-fs';

async videoUrlCopy(uri, fileName) {
        const destPath = `${RNFS.TemporaryDirectoryPath}/${fileName}`;
        await RNFS.copyFile(uri, destPath);
        await RNFS.stat(destPath);
        return destPath;
    }

Not working in android 9

@sekizlipenguen I am trying to implement your solution, but its not working for me, were you able to play the video from that path returned by your function? after implementing your solution I got the uri like this : uri:  file://data/user/0/za.co.{appname}/cache/rn_image_picker_lib_temp_e4ef1c56-ca23-4f81-85f2-a11da9725138.mp4 should this be working or am I missing something?

We also want to upload the file to server and the video uploads with "zero" bytes (using 'react-native-blob-util'). We assume this is because react-native-blob-util considers this as a link and does not get the proper bytes? Not sure about this.

@sekizlipenguen @Janak-Nirmal @arhmnsh What do you want to do with the video file?

Play it in your app? (Content URI will do for that)
Upload to ur backend? (Content URI will do for that)
Share it with other apps? (I don't know how share works)

@arhmnsh why do u enter the URI in chrome, thats not how it works.
Tell your use cases.

I don't think Content URI is enough to upload to our backend. When trying to upload the file to firebase storage, I get a Permission Denial error when using the Content URI.
Permission Denial: reading com.google.android.apps.photos.contentprovider.impl.MediaContentProvider uri content://com.google.android.apps.photos.contentprovider/-1/2/content:/media/external/video/media/36/ORIGINAL/NONE/video/mp4/1860530892 from pid=7391, uid=10154 requires the provider be exported, or grantUriPermission()

Any solution?

@UmarFarooqCA
What we're doing is checking if the URI of the file starts with content://, if it does we use RNFS to create a temporary copy of that file. We make the upload using the URI of the temporary copy and delete it once we finishes.

@rdjuric
Thanks for the reply. yes, I also tried react-native-fs but exists(filepath: string): Promise<boolean> returned false file does not exists!. work fine on images

@UmarFarooqCA
No worries! Here's the piece of code we use in case it helps:
if (path.startsWith('content://')) path = await copyVideo(path, fileName);

// copyVideo is this
export async function copyVideo(uri, fileName) {
	const destPath = `${RNFS.TemporaryDirectoryPath}/temp_${fileName}.mp4`;
	await RNFS.copyFile(uri, destPath).catch((err) => console.log(err));
	const a = await RNFS.stat(destPath);
	return destPath;
}

@rdjuric
I got an error!
Possible Unhandled Promise Rejection (id: 0): Error: File does not exist promiseMethodWrapper@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.<my_app>&modulesOnly=false&runModule=true:5573:45 stat@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.<my_app>&modulesOnly=false&runModule=true:295180:30 copyVideo$@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.<my_app>&modulesOnly=false&runModule=true:294916:74 tryCatch@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.<my_app>&modulesOnly=false&runModule=true:1651:23 http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.<my_app>&modulesOnly=false&runModule=true:1631:34 tryCatch@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.<my_app>&modulesOnly=false&runModule=true:1651:23 invoke@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.<my_app>&modulesOnly=false&runModule=true:1689:30 http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.<my_app>&modulesOnly=false&runModule=true:1695:19 tryCallOne@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.<my_app>&modulesOnly=false&runModule=true:28890:16 http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.<my_app>&modulesOnly=false&runModule=true:28991:27 http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.<my_app>&modulesOnly=false&runModule=true:30165:26 _callTimer@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.<my_app>&modulesOnly=false&runModule=true:30065:17 _callReactNativeMicrotasksPass@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.<my_app>&modulesOnly=false&runModule=true:30100:17 callReactNativeMicrotasks@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.<my_app>&modulesOnly=false&runModule=true:30308:44 __callReactNativeMicrotasks@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.<my_app>&modulesOnly=false&runModule=true:5946:46 http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.<my_app>&modulesOnly=false&runModule=true:5724:45 __guard@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.<my_app>&modulesOnly=false&runModule=true:5929:15 flushedQueue@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.<my_app>&modulesOnly=false&runModule=true:5723:21 flushedQueue@[native code] invokeCallbackAndReturnFlushedQueue@[native code]

I used react-native-file-access to solve content:// problem.

:tada: This issue has been resolved in version 5.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

When I install version 5, I get this error while running app on android.
Execution failed for task ':react-native-image-picker:compileDebugJavaWithJavac'.

I was facing this issue on Android 13 but other Android versions were working fine for me so I came up with a hack to solve it. I hope it may also help others.
The main problem I was facing was "fileName" did not have the file extension in it instead it was plain "file id". So I simply handled the file names with no extension using mimeType. E.g. these were the responses on Android 10 and Android 13 for me:
Android 10
"fileObject": {"assets": [{"bitrate": 14752151, "duration": 11, "fileName": "raw:/storage/emulated/0/Download/1000000036.mp4", "fileSize": 20774041, "height": 1280, "type": "video/mp4", "uri": "content://com.android.providers.downloads.documents/document/raw%3A%2Fstorage%2Femulated%2F0%2FDownload%2F1000000036.mp4", "width": 720}]}
Android 13
"fileObject": {"assets": [{"bitrate": 14752151, "duration": 11, "fileName": "1000000036", "fileSize": 20774041, "height": 1280, "type": "video/mp4", "uri": "content://media/picker/0/com.android.providers.media.photopicker/media/1000000036", "width": 720}]}
Android 10 fileName key had .mp4 extension in the end Android 13 did not. So this is what I did
     const options = {
        mediaType: 'video',
        videoQuality: 'low',
        storageOptions: {
          skipBackup: true,
          path: 'images',
        }
      }
      launchImageLibrary(options, (response) => {
        console.log('Response launchImageLibrary: ', response);
        if (response.didCancel) {
          console.log('User cancelled');
        } else if (response.error) {
          console.log('Error: ', response.error);
        } else {
        let extension = '.mp4'
        let mimetype= response.assets[0].type
        if (mimetype.includes('video/x-msvideo')) { extension = '.avi' }
        if (mimetype.includes('video/mp4')) { extension = '.mp4' }
        if (mimetype.includes('video/mpeg')) { extension = '.mpeg' }
        if (mimetype.includes('video/ogg')) { extension = '.ogv' }
        if (mimetype.includes('video/mp2t')) { extension = '.ts' }
        if (mimetype.includes('video/webm')) { extension = '.webm' }
        if (mimetype.includes('video/3gpp')) { extension = '.3gp' }
        if (mimetype.includes('video/3gpp2')) { extension = '.3g2' }
        response.assets[0].fileName= response.assets[0].fileName + extension
        // call UPLOAD API here with response
        }
      })

Do note that my Backend API was using fileName key to save file so after this hack video uploads on Android 13 also started working fine for me. Hope it helps someone.


update packages

:white_check_mark: Build TheIdServer 4.2.1-fix-dependencies1-0037 completed (commit https://github.com/Aguafrommars/TheIdServer/commit/3513a633dd by @)


Replace the .xml files with the compressed version

Currently, all the guides are published in two versions:

uncompressed (main one): https://iptv-org.github.io/epg/guides/af/arianaafgtv.com.epg.xml
compressed: https://iptv-org.github.io/epg/guides/af/arianaafgtv.com.epg.xml.gz

Because of GitHub restrictions, we can't upload files larger than 50Mb to GitHub Pages, and the other day the tvtv.us guide exceeded that limit: https://github.com/iptv-org/epg/actions/runs/2908910223
To get around the limit and continue to provide guides, we'll have to give up the uncompressed version of the files and only upload .gz files to GH Pages.
This update does exactly what:

disables the generation of uncompressed files
replaces all links with new ones

Any reason for changing the compressed filename from .epg.xml.gz to .xml.gz? If it was kept the same then anyone already using the compressed files wouldn't need to do anything. This way you are forcing everyone to update their player settings.

I agree, it would be better to keep the old name. I'll redo it now.

Done.


Installing plugin datasource breaks arcpy

See thread here:
https://community.esri.com/t5/python-questions/running-arcpy-script-from-powershell-after/td-p/1261897/page/3
Steps to reproduce:

build and install ProDataReader sln
in python shell, run arcpy.CreateFileGDB_management(dir, name)

unhandled exception

This is related to this issue:
https://community.esri.com/t5/python-questions/running-arcpy-script-from-powershell-after/m-p/1322400#M68482
A comprehensive fix is forthcoming in 3.2.


Cannot run project on Ubuntu bash on Windows

Related to https://github.com/sysgears/apollo-fullstack-starter-kit/issues/89 and a recent commit (https://github.com/sysgears/apollo-fullstack-starter-kit/commit/9db68821d3b6c4e10dc3d3851b7f1829f517cafd) it appears that a dependency of the package wait-for-port is not allowing the project to run. Error info found here.

Hopefully https://github.com/sysgears/apollo-fullstack-starter-kit/commit/bcd282fec6fc455b1e09568f15deb36b08e60558 will fix this problem. But I'm not sure, we need to check

I'll check and report back.

This problem is now resolved.

@josephdburdick Cool. Thank you so much Joe, for testing this!


Wiki implementation

We use Taiga as a way to plan our project. We also document planned changes and long-form conversations in wiki pages. Are there any plans to implement the Taiga wiki in Taiga Mobile? Thanks for the great app, by the way - very helpful for us!

We have this in our backlog with low priority, since it seems there are not many people using the wiki option in Taiga. Unfortunately, we are a bit short on resources (both human and time), so we try to implement the most used features first. Anyway, thanks for reaching out, we'll move it up in backlog and implement this feature as soon as we sort out other more urgent tasks.


ERROR:torch.distributed.elastic.multiprocessing.api:failed (exitcode: 1) local_rank: 3 (pid: 55662) of binary: /usr/bin/python3

Hi!
I'm running into this issue and not sure how to solve it. I get this error when I run it using 8 GPUs. Note that I'm using Llama2 instead of Llama1. I'm using AMD GPUs if this makes a difference.
[W reducer.cpp:1300] Warning: find_unused_parameters=True was specified in DDP constructor, but did not find any unused parameters in the forward pass. This flag results in an extra traversal of the autograd graph every iteration,  which can adversely affect performance. If your model indeed never has any unused parameters in the forward pass, consider turning this flag off. Note that this warning may be a false positive if your model has flow control causing later iterations to have unused parameters. (function operator())
[W reducer.cpp:1300] Warning: find_unused_parameters=True was specified in DDP constructor, but did not find any unused parameters in the forward pass. This flag results in an extra traversal of the autograd graph every iteration,  which can adversely affect performance. If your model indeed never has any unused parameters in the forward pass, consider turning this flag off. Note that this warning may be a false positive if your model has flow control causing later iterations to have unused parameters. (function operator())
[W reducer.cpp:1300] Warning: find_unused_parameters=True was specified in DDP constructor, but did not find any unused parameters in the forward pass. This flag results in an extra traversal of the autograd graph every iteration,  which can adversely affect performance. If your model indeed never has any unused parameters in the forward pass, consider turning this flag off. Note that this warning may be a false positive if your model has flow control causing later iterations to have unused parameters. (function operator())
[W reducer.cpp:1300] Warning: find_unused_parameters=True was specified in DDP constructor, but did not find any unused parameters in the forward pass. This flag results in an extra traversal of the autograd graph every iteration,  which can adversely affect performance. If your model indeed never has any unused parameters in the forward pass, consider turning this flag off. Note that this warning may be a false positive if your model has flow control causing later iterations to have unused parameters. (function operator())
[W reducer.cpp:1300] Warning: find_unused_parameters=True was specified in DDP constructor, but did not find any unused parameters in the forward pass. This flag results in an extra traversal of the autograd graph every iteration,  which can adversely affect performance. If your model indeed never has any unused parameters in the forward pass, consider turning this flag off. Note that this warning may be a false positive if your model has flow control causing later iterations to have unused parameters. (function operator())
[W reducer.cpp:1300] Warning: find_unused_parameters=True was specified in DDP constructor, but did not find any unused parameters in the forward pass. This flag results in an extra traversal of the autograd graph every iteration,  which can adversely affect performance. If your model indeed never has any unused parameters in the forward pass, consider turning this flag off. Note that this warning may be a false positive if your model has flow control causing later iterations to have unused parameters. (function operator())
[W reducer.cpp:1300] Warning: find_unused_parameters=True was specified in DDP constructor, but did not find any unused parameters in the forward pass. This flag results in an extra traversal of the autograd graph every iteration,  which can adversely affect performance. If your model indeed never has any unused parameters in the forward pass, consider turning this flag off. Note that this warning may be a false positive if your model has flow control causing later iterations to have unused parameters. (function operator())
[W reducer.cpp:1300] Warning: find_unused_parameters=True was specified in DDP constructor, but did not find any unused parameters in the forward pass. This flag results in an extra traversal of the autograd graph every iteration,  which can adversely affect performance. If your model indeed never has any unused parameters in the forward pass, consider turning this flag off. Note that this warning may be a false positive if your model has flow control causing later iterations to have unused parameters. (function operator())
WARNING:torch.distributed.elastic.multiprocessing.api:Sending process 55659 closing signal SIGTERM
WARNING:torch.distributed.elastic.multiprocessing.api:Sending process 55660 closing signal SIGTERM
WARNING:torch.distributed.elastic.multiprocessing.api:Sending process 55661 closing signal SIGTERM
WARNING:torch.distributed.elastic.multiprocessing.api:Sending process 55663 closing signal SIGTERM
WARNING:torch.distributed.elastic.multiprocessing.api:Sending process 55664 closing signal SIGTERM
WARNING:torch.distributed.elastic.multiprocessing.api:Sending process 55665 closing signal SIGTERM
WARNING:torch.distributed.elastic.multiprocessing.api:Sending process 55666 closing signal SIGTERM
ERROR:torch.distributed.elastic.multiprocessing.api:failed (exitcode: 1) local_rank: 3 (pid: 55662) of binary: /usr/bin/python3
Traceback (most recent call last):
  File "/usr/local/bin/torchrun", line 8, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.10/dist-packages/torch/distributed/elastic/multiprocessing/errors/__init__.py", line 346, in wrapper
    return f(*args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/torch/distributed/run.py", line 794, in main
    run(args)
  File "/usr/local/lib/python3.10/dist-packages/torch/distributed/run.py", line 785, in run
    elastic_launch(
  File "/usr/local/lib/python3.10/dist-packages/torch/distributed/launcher/api.py", line 134, in __call__
    return launch_agent(self._config, self._entrypoint, list(args))
  File "/usr/local/lib/python3.10/dist-packages/torch/distributed/launcher/api.py", line 250, in launch_agent
    raise ChildFailedError(
torch.distributed.elastic.multiprocessing.errors.ChildFailedError:
============================================================
train.py FAILED
------------------------------------------------------------
Failures:
  <NO_OTHER_FAILURES>
------------------------------------------------------------
Root Cause (first observed failure):
[0]:
  time      : 2023-11-14_13:01:15
  host      : nid005022
  rank      : 3 (local_rank: 3)
  exitcode  : 1 (pid: 55662)
  error_file: <N/A>
  traceback : To enable traceback see: https://pytorch.org/docs/stable/elastic/errors.html
============================================================
srun: error: nid005022: task 0: Exited with exit code 1
srun: launch/slurm: _step_signal: Terminating StepId=4915815.0

I appreciate your help!
Thanks

This issue may be caused when the loss is nan (unstable training).
I think that it might be addressed by tuning hyperparameters or floating points.

The issue got solved. I was using Llama2 instead of LLama v1.
Hope this can help someone in the future!

Hi!
How can I solve the loss is nan problem?
I appreciate your help! Thx!


Background Image?

I prepared a pixel for pixel background image, 240x240.
Is there a mechanism for rendering that in Tempe?
In the Hughes library, there is a function to open an image file and convert it to RGB565 buffer for display. I'm thinking this exists, or almost exists, in Tempe but can't quite figure it out.

Has a sudden thought -- since I'm using the Hughes library underneath Tempe, gc9a01_mpy, I realized that I could draw a background image using that before making tempe calls. Well, that did and didn't work. It did draw the image at first, but as soon as Tempe started refreshing the image disappears. Next I tried adding it up the Tempe update function. This "works", in that an image is drawn, but you see the updated rectangular regions being redrawn with black background (not surprising since Tempe doesn't know there's an image there). That also slows down the updated rate significantly, like 5 or 10 times slower.
I also wonder, are there two competing buffers in this case? Hughes driver has a working buffer, and Tempe has a separate working buffer. Should these be the same?


break out kubernetes tests into another run

@lachie83,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


Support output to JSON

It'd be nice if we could support CSV and JSON output formats.

fixed in https://github.com/omnisci/log-scraper/commit/0c78d7546b0a9bb484dec085e347bc6846a4bf16


Generic test to verify that Aggregate state is only manipulated through event handlers

Having seen bits of code from multiple Axon projects, I notice that one of the major pitfalls in Axon is that internal aggregate state (counters, lists, etc) is inadvertently manipulated while handling commands, instead of through the event handlers. This can easily introduce bugs since it will cause the aggregate in memory to differ from the same aggregate when it is recreated by replaying the events from scratch (f.i. after restarting application).
It would be nice it there was a generic test to verify that aggregate state is only manipulated through event handlers. One way to verify this would be to

Create an aggregate with internal state by firing a batch of commands (might be random commands, or user-defined list).
Store the current aggregate internal state, and store any events caused by these commands
Create a new instance of the aggregate and apply each of the events
Compare the internal state of the new aggregate with the internal state of the stored aggregate.

If state was manipulated outside of the event handlers, then the 2 aggregates will differ and the test should fail. The test can indicate which aggregate fields contain the differences.
Alternatively, static code analysis can be used to detect field assignments in non-eventhandler methods

This can be implementing by enhancing the test fixtures. When a command is "given", the fixture can reconstruct a copy of the aggregate using the generated events.


Add optional support for image loading through Canvas.Image

Now that there is support for the Canvas API through node-canvas, I think it makes sense to also support image loading through the Canvas.Image class from the same module.
I am willing to work on this, but would need a few pointers, as I am new to the JSDom internals.
I have looked at the HTMLCanvasElementImpl class and understand roughly how to patch this into HTMLImageElementImpl. The main problem I am currently facing is that I'm not sure how i am supposed to load the binary image files. Should I use resourceLoader for this, or ist that only for text files?
This relates to #189, but since this is about an actual implementation through node-canvas, I thought it might be better to open a separate issue.

Should I use resourceLoader for this, or ist that only for text files?

Yes, resourceLoader is for all resources used for a specific Window. You should fine the resourceLoader in this.ownerDocument._resourceLoader (iirc). It takes care of automatically canceling requests when window.close is called and firing an error event when the request fails (which might actually not be applicable for every case, but I haven't found one yet, so we've left it in there).

Ok, but how to load the binary data with it? So far I have tried:
resourceLoader.download(url, null, document._cookieJar, null, (error, data) => {...}

As well as:
resourceLoader.load(this, url, data => {...}

In both cases, data is a string.

The actual request is done with the request library, which "specifies" encoding: utf-8 by default, you should be able to provide an option object with that set to null to get a Buffer.

Ah, great! This works, I get binary data now:
resourceLoader.download(value, { encoding: null }, document._cookieJar, null, (error, data) => {...}

I have a feeling I should be using resourceLoader.load instead, as that appears to be handling the closed windows and all, but there is no way to pass on encoding options to that, unfortunately (it only receives these arguments: (element, url, callback)).

Another reason for using resourceLoader.load() is that only this function handles loading of local files... But there really is no way to pass on the encoding option here. File loading is always done with utf8 encoding also, and the data that it is reading into is a string, not a buffer. It looks like this would require quite a few changes to resourceLoader, unfortunately.

Please feel free to fix resource loader :)

Great, I shall try : )
What do you think is best: To add an optional encoding parameter at the end of each function's argument list, behind callback (and hence not changing the calling sequence), or to insert it before callback and adjusting all the places where they are called? People maybe expect the callback to be the last argument?
I also wonder if we really need an encoding parameter, or if it's simply a binary parameter, indicating we want binary data instead of the default encoding option.

Hmm, this is getting more tricky... The way the resource loader is currently implemented, "load" gest triggered as soon as the data is loaded, before the image data is actually parsed. There can still be an error in the data itself, which should not trigger a load event, but an error event instead. Oh dear.

Forget that last comment. I can throw an error from the callback and it triggers an error event instead of the load event.

So I have created PR #1366 for this. I think it's pretty complete, but there is one open question: I think it would be nice to add a non-standard method similar to HTMLCanvasElement.toBlob(), called HTMLCanvasElement.toBuffer(), which would allow people to easily export the render image in a node.js enivronment:
var image = new Image();
image.addEventListener('load', function(event) {
    var canvas = document.createElement("canvas");
    canvas.width = canvas.height = 1000;
    var ctx = canvas.getContext('2d');
    ctx.drawImage(image, 0, 0);
    canvas.toBuffer(function(buffer) {
        var fs = require('fs'),
            out = fs.createWriteStream(__dirname + '/out.jpg');
        out.write(buffer);
    }, "image/jpg");
});

image.src = 'http://assets.paperjs.org/images/marilyn.jpg';

Alternatively, we could consider adding a non-standard Blob.buffer property to Blob:
    canvas.toBlob(function(blob) {
        var fs = require('fs'),
            out = fs.createWriteStream(__dirname + '/out.png');
        out.write(blob.buffer);
    }, "image/png");

What do you think?

Wow, awesome PR! I'm going to have a hard time reviewing it too soon due to standards meetings all week, but I'm excited.
As for nonstandard methods, what we usually do for those is add a jsdom.canvasToBlob(...) or jsdom.blobToBuffer(...) or similar.

Glad you like it! And I can add this, that's easy. jsdom.canvasToBlob() isn't needed since that is standard, but jsdom.blobToBuffer(...) would be useful indeed! And jsdom.canvasToBuffer(...) might be a nice short-cut to have.
The patch currently fails some tests, I need to look into this another day, as it's late here now.

With 2e4db590ced63ab43fe05ca2cae939dd0365b55b, this is now possible:
canvas.toBlob(function(blob) {
    var fs = require('fs'),
        out = fs.createWriteStream(__dirname + '/out.jpg');
    out.write(jsdom.blobToBuffer(blob));
}, "image/jpg");

But I may need some help with this one failing test. It seems quite bizarre to me, I am not sure what that particular test is actually trying to achieve.

I forgot to mention. The created document needs this setting for the FetchExternalResources feature:
    let document = jsdom.jsdom('', {
        features: {
          FetchExternalResources : ["img"]
        }
    });

This can be closed as #1366 has been merged in.

Hello guys if someone is reading here, i just upgraded to latest jsdom version.
I have some comments in the codebase of fabricjs written before i joined and of wich i fail to determine the root cause:
if (fabric.isLikelyNode) {
        replacement.src = canvasEl.toBuffer(undefined, fabric.Image.pngCompression);
        // onload doesn't fire in some node versions, so we invoke callback manually
        _this._element = replacement;
        !forResizing && (_this._filteredEl = replacement);
        callback && callback(_this);
      }

Can we say that with latest jsdom the image.onload event should be fired 100% sure?

i meant, using:
var document = jsdom.jsdom('', {
    features: {
      FetchExternalResources : ['img']
    }
});

and no errors going on,
can i trust image.onload with node-canvas?

@asturur yes with this configuration, no issues are currently known. That's how we're using it in https://github.com/paperjs/paper.js
Cheers!

@lehni i m trying to improve fabricjs support for node since jsdom should provide all i need since version 9.
i m stuck with images and dataurls and can't figure how. Are you available for some help in case?

@lehni i m trying to improve fabricjs support for node since jsdom should provide all i need since version 9.
i m stuck with images and dataurls and can't figure how. Are you available for some help in case?


Blockframe: New Detail pages

User story
As a WebX team member, I want to design News and Case Studies pages in a templated manner so that we can align on the scope and anticipate design/content/engineering needs early in the website redesign process.
Background & context
New detail pages include News and Case studies pages.
Working links

Blockframe working space

Acceptance criteria

[x] Blockframe new detail pages
[ ] Review with design and or/design lead

Requested design to review via slack: Jillian and Audrey

@yudonoodles thanks looks great! left a few clarifying comments


feat(avoidance): add feature to guard unfeasible path

Description
INTERNAL LINK: https://tier4.atlassian.net/browse/RT0-29472
MERGED WITH: https://github.com/tier4/autoware_launch.x2/pull/492

Tests performed

Not applicable.
Effects on system behavior

Not applicable.
Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.

[ ] I've confirmed the contribution guidelines.
[ ] The PR follows the pull request guidelines.

In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.

[ ] The PR follows the pull request guidelines.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[ ] There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.

@satoshi-ota @takayuki5168 Avoidance周りに他にもバグが多く、実機実験待ちリストに加えて現地で検証しても、デグレが起きたかどうかの判別が難しそうであるため、一旦マージしてしまおうと思います。


PHP 8.3 Support needed

PHP8.3 Support
When on PHP 8.3, it gives error
Your environment
Ubuntu 23, PHP 8.3
Problem 1
- Root composer.json requires bilfeldt/laravel-request-logger * -> satisfiable by bilfeldt/laravel-request-logger[v0.1.0, v0.2.0, v0.3.0, v1.0.0, v1.0.1, v1.0.2, v1.1.0, v2.0.0, v2.1.0, v2.2.0, v3.0.0].
- bilfeldt/laravel-request-logger v3.0.0 requires php ~8.1.0 || ~8.2.0 -> your php version (8.3.1; overridden via config.platform, same as actual) does not satisfy that requirement.
Problem 2
- bilfeldt/laravel-route-statistics is locked to version v3.0.0 and an update of this package was not requested.
- bilfeldt/laravel-route-statistics v3.0.0 requires php ~8.1.0 || ~8.2.0 -> your php version (8.3.1; overridden via config.platform, same as actual) does not satisfy that requirement

Added in v3.1.0


openai.error.RateLimitError: The server had an error while processing your request. Sorry about that!

`dorin@RO-6SBXTQ3:/mnt/c/Users/dorinvlas/Documents/AI Generated/the-compiler$ python3 the_compiler/the_compiler.py
Command output: Hello, World
Traceback (most recent call last):
File "/mnt/c/Users/dorinvlas/Documents/AI Generated/the-compiler/the_compiler/the_compiler.py", line 357, in
solution = compiler.compile(input_spec, k, T, b, vth, timeout, confidence_threshold=confidence, max_iterations=max_iterations, convergence_threshold=convergence_threshold, convergence_count=convergence_count)
File "/mnt/c/Users/dorinvlas/Documents/AI Generated/the-compiler/the_compiler/the_compiler.py", line 321, in compile
translated_spec = self.spec_interpreter.translate(input_spec)
File "/mnt/c/Users/dorinvlas/Documents/AI Generated/the-compiler/the_compiler/the_compiler.py", line 289, in translate
translated_spec = self.LLM.generate_thoughts(prompt, 1)[0]
File "/mnt/c/Users/dorinvlas/Documents/AI Generated/the-compiler/the_compiler/the_compiler.py", line 50, in generate_thoughts
response = openai.Completion.create(
File "/home/dorin/.local/lib/python3.10/site-packages/openai/api_resources/completion.py", line 25, in create
return super().create(*args, **kwargs)
File "/home/dorin/.local/lib/python3.10/site-packages/openai/api_resources/abstract/engine_api_resource.py", line 153, in create
response, _, api_key = requestor.request(
File "/home/dorin/.local/lib/python3.10/site-packages/openai/api_requestor.py", line 230, in request
resp, got_stream = self._interpret_response(result, stream)
File "/home/dorin/.local/lib/python3.10/site-packages/openai/api_requestor.py", line 624, in _interpret_response
self._interpret_response_line(
File "/home/dorin/.local/lib/python3.10/site-packages/openai/api_requestor.py", line 687, in _interpret_response_line
raise self.handle_error_response(
openai.error.RateLimitError: The server had an error while processing your request. Sorry about that!`
OpenAI recommends this information to mitigate the ratelimit risk: https://github.com/openai/openai-cookbook/blob/main/examples/How_to_handle_rate_limits.ipynb
**Thanks @kyegomez and to all contributors for your efforts!

@dorinvlas
Hey please excuse me for my late response, I am here for you.
I've just pushed a monumental update


hands_on_materials

BART hands-on material page (tutorials.html) added. It includes links to all the recent demos, webinars and git repos (2016-2022).

Thanks Efrat!  This branch cannot be merged due to conflicts. I tried to fix this using the github interface, but this did not work. Can you make a clean pull request (you can remove my merge commit)?

Hi Martin,
Thanks for your email. Since you said that the branch cannot be merged, I'm
not sure what you mean by making a clean pull request.
Could you please give me more specific instructions?
Thank you,
Efrat
On Tue, Apr 5, 2022 at 8:45 PM Martin Uecker @.***>
wrote:

Thanks Efrat! This branch cannot be merged due to conflicts. I tried to
fix this using the github interface, but this did not work. Can you make a
clean pull request (you can remove my merge commit)?
—
Reply to this email directly, view it on GitHub
https://github.com/mrirecon/bart/pull/282#issuecomment-1089761097, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ANDC77WOFVMUTRGSELUPNSLVDUCG3ANCNFSM5SRONWIA
.
You are receiving this because you authored the thread.Message ID:
@.***>

@EfratShimron to do a rebase locally first, something like: git pull --rebase origin/gh-pages. If all went well, you can then push -f to your remote branch and the PR should update.

Thanks, Efrat!
A couple of minor things I noticed:

There are some typos in the quick links: "Referencess" and "List of features" - "List of Features".
And can you make the fonts as large as they were? It looks a bit too small too me.
The quick example with the binder link should be on the home page I think.
Only the tutorials page has the title changing (and it should be capitalized)
There is a line missing on the home page below the quick links
The image is jumping around a bit when clicking on the links, so there is probably something different between the pages.

Hi Martin,
I fixed the issues you mentioned, please take a look.
btw I think that the image could be jumping around due to browser issues, because not all of the sub-pages have the same length. I made sure that the html code of the different sub-pages is identical for the top part.


Gun Knockback

Add knockback to the player when the gun is being shot.

@Galaxy25 Did we get this in?


Some bugs in your demo

The plugin seems to be VERY useful. But here: http://albatrossdigital.github.io/widgetbootstrap/
there are some bugs (Tested on Chrome and Firefox)

Entering "Source" and going back to WISYWIG mode break columns
Seems that the "Alert box" doesn't work at all

And a suggestion: maybe it's better not to insert blank images by default into the columns?

Error from Firebug:
"Error: [CKEDITOR.dialog.openDialog] Dialog "widgetbootstrapAlert" failed when loading definition.
http://albatrossdigital.github.io/ckeditor-sandbox/plugins/dialog/plugin.js
Line 3036"

1-in \ckeditor\plugins\widgetbootstrap\dialogs  just rename the .js file to "widgetbootstrapAlert.js"
2-in "widgetbootstrapAlert.js" file rename the dialoge name to "widgetbootstrapAlert" like this
CKEDITOR.dialog.add( 'widgetbootstrapAlert', function( editor ) {...


NDRS-857/sample memory metrics in consensus

Reduces heap measuring of large collections by sampling only a subset of their contents.

bors r+

bors r+


Output the (column, row) of a patternmatch when outputing at the INFO level

Output the (column, row) of a patternmatch when outputing at the INFO level

Issue: #681
Description
This is part one of issue #681, adding the row and column to the debug output while not supporting named patterns yet.
Checklist
Checklist before merging:

[x] CHANGELOG.md updated
[x] README.md up-to-date

That said, this is recalculating the coords every time it spits out logging output, which is a lot. It would definitely be worth memoising pattern_position, if it's straightforward to do so.

Sure. Yeah. I'll do that!


finish implementation of RequestPredicate

RequestPredicate has 5 methods that are not implemented and currently throw UnsupportedOperationException.
    @Override
    default RequestPredicate and(Predicate<? super ServerRequest> other) {
        throw new UnsupportedOperationException();
    }

    @Override
    default RequestPredicate negate() {
        throw new UnsupportedOperationException();
    }

    @Override
    default RequestPredicate or(Predicate<? super ServerRequest> other) {
        throw new UnsupportedOperationException();
    }

    static RequestPredicate whenRequest() {
        throw new UnsupportedOperationException();
    }

    static RequestPredicate any(RequestPredicate... predicates) {
        throw new UnsupportedOperationException();
    }

This is documented in the current docs, it's must have for 1.0 or it shall be removed.

Reviewed this with @barchetta, here are some thoughts..
The name RequestPredicate is mis-leading as this is more than a filter, it's actually some sort of delegating handler with sugar code to implement conditional handlers.
This is already do-able today with a normal Handler, without magic one can delegate to other handlers simply by invoking the method.
E.g.
private void myConditionalHandler(ServerRequest req, ServerResponse res) {
    if(req.isXXX()){
       // do the work
       req.send("OK");
    } else {
     // ignore
      req.next();
    }
}

As a result if the condition is met the request is processed, if not and no other handler in the chain processes the request a response with 404 code will be returned.
What's interesting is that ServerRequest does not have methods to implement simple condition that would be of interest when writing such conditional handlers. RequestPredicate does offer a few that seem to be potentially useful:

isGet
isPost
isPut
isDelete
isHead
containsHeader
containsQueryParameter
containsPathParam
containsCookie
accepts
hasContentType

One could ask why does RequestPredicate implement Predicate<ServerRequest> at all, when it's not of real use. We could make RequestPredicate a proper functional interface by having default implementation for all methods, so that the user could implement it as a lambda.
In this case we could overload Routing.rules to add new variants of the handler methods to take a predicate parameters, however this would be redudant for not much gain: this can already be implemented with a handler and simple java logic, minus the nice sugar code for filtering requests easily.
Instead of finishing the implementation of RequestPredicate, adding these "sugar" methods to ServerRequest feels a better choice. It's simple and does not overload our API.


Reassemble filters on the server side

--filter label=foo=bar, was been translated on the server side to
--filter label=foo --filter=bar
This PR fixes this back to what the user specified.
Signed-off-by: Daniel J Walsh<EMAIL_ADDRESS>

@edsantiago @jwhonce PTAL
@jwhonce I am not sure if this should be fixed here or to fix the protocol.  IE Should filers be a
map[string]string
rather then
map[string][]string

@baude PTAL

Probably fixes https://github.com/containers/libpod/issues/6387

Fixes: https://github.com/containers/libpod/issues/6580

Will look on Monday. Thank you, Dan, but I hope you're able to recharge today.

@edsantiago I am always charged, although my wife is yelling at me now, so I am heading to the beach. :^) And you should not be here either.

@edsantiago I am always charged, although my wife is yelling at me now, so I am heading to the beach. :^) And you should not be here either.

She was right to do so ;-) Hope you enjoyed surfing.

LGTM. Given an image with LABEL version="1.0":
$ ./bin/podman-remote --url $MYSOCK images -f label=foo=bar
REPOSITORY  TAG     IMAGE ID  CREATED  SIZE
$ ./bin/podman-remote --url $MYSOCK images -f label=version=1..
REPOSITORY  TAG     IMAGE ID  CREATED  SIZE
$ ./bin/podman-remote --url $MYSOCK images -f label=version=1.0
REPOSITORY      TAG     IMAGE ID      CREATED         SIZE
localhost/test  latest  c46c4c460591  34 seconds ago  5.85 MB

/lgtm


[MNOE-291] Fix association cache bug

@cesar-tonnoir @xaun before I merge, could you point to my branch and confirm that this fixes the problem?
The cache will be slightly less efficient but we won't have stale data anymore.

This will supersede #195 #241

Tested on my local - wasn't able to reproduce the bug. All good!


Update deps

Description
Purpose

updating the deps should be safe -- unless you want to try npm update --no-save


Add macOS 13 support

Add new macOS major version condition.
That's actually all of that. Haven't tested it, since I'm on Apple silicon it it failed to build because of arc.

Thanks!


[WIP] Performance - execution

:white_check_mark: Build AElf <IP_ADDRESS>4 completed (commit https://github.com/AElfProject/AElf/commit/b34dbe8b37 by @zhxymh)

:x: Build AElf <IP_ADDRESS>2 failed (commit https://github.com/AElfProject/AElf/commit/655e3e4e12 by @zhxymh)

:white_check_mark: Build AElf <IP_ADDRESS>5 completed (commit https://github.com/AElfProject/AElf/commit/40a8e36049 by @zhxymh)

:white_check_mark: Build AElf <IP_ADDRESS>5 completed (commit https://github.com/AElfProject/AElf/commit/09a9bb8c1f by @loning)


Add Python 3.13 to the matrix build

Python 3.13 was just released Oct 7, 2024 (https://docs.python.org/3/whatsnew/3.13.html).
Add it to our matrix build: https://github.com/C2QA/bosonic-qiskit/blob/main/.github/workflows/python-package.yml#L18
The other versions of Python in our matrix build are still supported: https://devguide.python.org/versions/
Consider upgrading our other python-based workflows:

https://github.com/C2QA/bosonic-qiskit/blob/main/.github/workflows/pydoctor.yml
https://github.com/C2QA/bosonic-qiskit/blob/main/.github/workflows/python-publish.yml
https://github.com/C2QA/bosonic-qiskit/blob/main/.github/workflows/jupyter-matrix.yml

In the Set up Python step of deploy jobs (from both pydoctor.yml and python-publich.yml), the version of Python to use is based on symver 3.x. Apparently this does not automatically leverage the most recently available version of Python that is actually available because of checking of a local cache for a matched version (see details).
To automatically use the most recent Python version, check-latest: true needs to be placed directly with python-version: '3.x' in the action.

It appears that there is an issue with the qiskit-aer package installing with Python 3.13 on Windows (see failed job).
The primary error is CMake Error at cmake/conan.cmake:61 (message): Conan: Unknown MSVC compiler version [1942].
This may be an issue related to the Windows based github runner image.

I submitted a Github issue to qiskit-aer for the Python v3.13.1 build failure: https://github.com/Qiskit/qiskit-aer/issues/2277

Updated python-package.yml to exclude the matrix build combination of os: windows-latest and python-version: 3.13.
Will include windows-latest and python 3.13 when Qiskit/qiskit-aer#2277 is resolved.
This issue will be closed per the following PR: https://github.com/C2QA/bosonic-qiskit/pull/141


Reduce builds and perf tests for previous versions

Description
Reduce builds and perf tests for previous versions
Issues Resolved
List any issues this PR will resolve, e.g. Closes [...].
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #3251 (956231c) into main (c0449fe) will decrease coverage by 0.29%.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##             main    #3251      +/-   ##
==========================================
- Coverage   91.74%   91.46%   -0.29%
==========================================
  Files         172      172
  Lines        4991     4991
==========================================
- Hits         4579     4565      -14
- Misses        412      426      +14

Impacted Files
Coverage Δ

src/system/temporary_directory.py
64.44% <0.00%> (-28.89%)
:arrow_down:

src/system/os.py
94.73% <0.00%> (-5.27%)
:arrow_down:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


L2: Separate operator and prover binaries

Separate the prover from the operator so they can be run alone

Duplicate #815