fix some problem on Unity 5.2,replace deprecated shader

First of all, thank you Stephen,for your excellent work.

Here is my issue, we use your CritterAI in our project, because of Unity 5 deprecate some shader,so CritterAI can not draw the navigation mesh in Unity Editor,I try to fix this problem, and replace a shader that unity 5 provide

location: ..\critterai-master\src\main\Assets\CAI\util-u3d\DebugDraw.cs

public static Material SimpleMaterial
{
    get
    {
        if (!mSimpleMaterial)
        {
            /* /// Unity 5.2 DO NOT support Line/Colored Blended anymore
            mSimpleMaterial = new Material(
                "Shader \"Lines/Colored Blended\" {"
                + "SubShader { Pass { "
                + "	BindChannels { Bind \"Color\",color } "
                + "	Blend SrcAlpha OneMinusSrcAlpha "
                + "	ZWrite Off Cull Off Fog { Mode Off } "
                + "} } }");
            */
            /// using Hidden/Internal-Colored to replace
            //////////////////////////////////////////////////////
            var drawLine = Shader.Find("Hidden/Internal-Colored");
            mSimpleMaterial = new Material(drawLine);
            //////////////////////////////////////////////////////
            mSimpleMaterial.hideFlags = HideFlags.HideAndDontSave;
            mSimpleMaterial.shader.hideFlags = HideFlags.HideAndDontSave;
        }
        return mSimpleMaterial;
    }
}

The other option is to include a "Resources" file or point to a file with the AssetDatabase instead and load it from there. I had a similar problem with a Shader I could no longer use in Unity 5.

@KellanHiggins ,yeah, that's another way to fix this, but I still use unity5.2 built-in shader may be better, anyway thany you for your advise.

Hi All,
Yeah, there is going to be a lot of small Unity incompatibilities building up in this old project.  If your solution doesn't work in all situations, here is the full Unity recommended configuration.  Found it somewhere when I was upgrading code in the utilities project:
        /// <summary>
        /// A shared material suitable for simple drawing operations.
        /// </summary>
        public static Material SimpleMaterial
        {
            get
            {
                if (!mSimpleMaterial)
                {
                    var shader = Shader.Find("Hidden/Internal-Colored");
                    mSimpleMaterial = new Material(shader);
                    mSimpleMaterial.hideFlags = HideFlags.HideAndDontSave;
                    // Turn on alpha blending
                    mSimpleMaterial.SetInt("_SrcBlend", (int)UnityEngine.Rendering.BlendMode.SrcAlpha);
                    mSimpleMaterial.SetInt("_DstBlend", (int)UnityEngine.Rendering.BlendMode.OneMinusSrcAlpha);
                    // Turn backface culling off
                    mSimpleMaterial.SetInt("_Cull", (int)UnityEngine.Rendering.CullMode.Off);
                    // Turn off depth writes
                    mSimpleMaterial.SetInt("_ZWrite", 0);
                }
                return mSimpleMaterial;
            }
        }

ok, thanks again, Stephen


QLIPP Pipeline 2D write fix

Fixed writing bug in 2D stokes, switched to this writing method for the birefringence channel as well.

Dont merge until after the workshop

Looks fine to me.  You can merge when you feel fit

Ah i forgot about this, I think that the newest PR has these changes + more

I will close this PR


Support composite primary keys

This seems like it would be easy to accommodate in the generated PrimaryKey() functions.
Here's what Gorm compound key annotations look like.

Yes that's planned 👍 I started with simple indexes, then I'll redesign the index package to support compound indexes and more index algorithms.

are integers the only primary key type supported right now?
is there a way to store a UUID as the primary key? github.com/google/uuid stores UUIDs as 16 bytes, but I suppose could also store as a string. Are UUIDs a good idea for a DB like this, or are sequential ints better for keys? If I recall correctly, bolt is more efficient if you append records rather than insert them in the middle of a bucket, so if this is the case, a int sequential key may be better in some cases.

No, you can use any scalar type as a primary key.
Example:
CREATE TABLE foo (
  some_id TEXT PRIMARY KEY NOT NULL
)

Support for composite primary keys has been added to v0.14.0 (cf: 8983d68daf1d030e5a2282ac39cdf76d637bdac8)


Enable coredumps to generate backtraces (don't merge)

@springmeyer —
We should wait to hear back from travis re sudo: false + ulimit first, right?

Great work @lbud. I think we should merge this and go with sudo:required for for now. Hopefully https://github.com/travis-ci/travis-ci/issues/3754 will turn up a solution soon and if not we can re-assess.

Just confirmed that backtraces are now working fabulously on travis after @lbud's pull request. We know that osrm-backend v4.6.0 had a crashing bug when shared mem was tested so I enabled the test and now see a great backtrace showing in the travis logs (this is release mode):
Thread 1 (Thread 0x2ba871c0e5c0 (LWP 6249)):
#0  0x00002b3f06095e55 in boost::filesystem::detail::status(boost::filesystem::path const&, boost::system::error_code*) () from /home/travis/build/Project-OSRM/node-osrm/lib/binding/osrm.node
#1  0x00002b3f0603f9c0 in populate_base_path(std::unordered_map<std::string, boost::filesystem::path, std::hash<std::string>, std::equal_to<std::string>, std::allocator<std::pair<std::string const, boost::filesystem::path> > >&) () from /home/travis/build/Project-OSRM/node-osrm/lib/binding/osrm.node
#2  0x00002b3f0603c74f in OSRM_impl::OSRM_impl(libosrm_config&) () from /home/travis/build/Project-OSRM/node-osrm/lib/binding/osrm.node
#3  0x00002b3f0603d2a3 in OSRM::OSRM(libosrm_config&) () from /home/travis/build/Project-OSRM/node-osrm/lib/binding/osrm.node
#4  0x00002b3f06039f26 in node_osrm::Engine::Engine(libosrm_config&) () from /home/travis/build/Project-OSRM/node-osrm/lib/binding/osrm.node
#5  0x00002b3f060379f1 in node_osrm::Engine::New(v8::FunctionCallbackInfo<v8::Value> const&) () from /home/travis/build/Project-OSRM/node-osrm/lib/binding/osrm.node
#6  0x000000000082a11c in v8::internal::FunctionCallbackArguments::Call(void (*)(v8::FunctionCallbackInfo<v8::Value> const&)) ()
#7  0x000000000084c991 in v8::internal::Builtin_HandleApiCallConstruct(int, v8::internal::Object**, v8::internal::Isolate*) ()


[PlanetwideSpray] Product spraying three-level production increase agent？

Can the product be sprayed with a third-level production enhancer before being stored in the warehouse to facilitate use and transportation?
For example, now it is: fuel rods without spraying the production enhancer

Expected results: Fuel rods sprayed with production enhancer

There are other situations, such as: mined iron ore and copper ore, production foundation (the foundation sprayed with production increase agent can reduce sand consumption)

I've push an update v1.0.1.
you can now set Spray All Cargo = true in the config file to spray all item grab by sorters, including the product.


Hot reload/replace doesn't work

After update dependency, hot reload/replace doesn't work.

This template doesn't support webpack 3 yet. Double check you're not updating webpack; keep it at version 2.x.x if you need HMR.
You can track Webpack 3 status on https://github.com/vuejs-templates/webpack/issues/751


Fixed Myriad Query Benchmarks

I noticed that in your latest run the Myriad.ECS query benchmarks are broken. This was due to a mistake on my part, when moving some of the code into _BenchUtils I managed to lose the line that actually executes the setup CommandBuffer! Sorry about that.
I've also implemented the GetSetComponentsT1 benchmark for Myriad and have added it to the readme feature matrix.
Summary

Fixed Myriad.ECS benchmarks for QueryT1 and QueryT5
Added GetSetComponentsT1 for Myriad.ECS
Updated readme to add Myriad.ECS to the feature matrix

Approximate Results
These benchmarks were run on my PC (Ryzen 7950X) so are not directly comparable to the Mac Mini results, but it gives us an approximate idea where Myriad sits until the next time you run the benchmarks:
| Namespace         | Type                     | Mean      | Ratio | Allocated |
|------------------ |------------------------- |----------:|------:|----------:|-
| Friflo.Engine.ECS | QueryFragmentedT1_Friflo |  29.64 ns |  1.00 |         - |
| Myriad            | QueryFragmentedT1_Myriad |  80.59 ns |  2.72 |         - |
| Arch              | QueryFragmentedT1_Arch   | 293.60 ns |  9.91 |         - |
|                   |                          |           |       |           |
| Friflo.Engine.ECS | QueryT1_Friflo           |  30.32 ns |  1.00 |         - |
| Myriad            | QueryT1_Myriad           |  55.08 ns |  1.82 |         - |
| Arch              | QueryT1_Arch             | 124.89 ns |  4.12 |         - |
|                   |                          |           |       |           |
| Myriad            | QueryT5_Myriad           |  71.49 ns |  0.82 |         - |
| Friflo.Engine.ECS | QueryT5_Friflo           |  87.07 ns |  1.00 |         - |
| Arch              | QueryT5_Arch             | 229.30 ns |  2.63 |         - |

Made a short run with
dotnet run -c Release --filter *myriad* --job Short

No NA like before. 👍

Type
Mean
Allocated

CommandBufferAddRemoveT2_Myriad
69,738.91 ns
-

CreateWorld_Myriad
1,518.94 ns
19776 B

GetSetComponentsT1_Myriad
858.60 ns
-

QueryFragmentedT1_Myriad
182.24 ns
-

QueryT1_Myriad
97.29 ns
-

QueryT5_Myriad
135.84 ns
-

hi,
I added a Debugger-Watch screenshot in the readme to explain the meaning of the Watch column.
Showing components directly in debugger simplifies debugging significant.
In Myriad I see ID & Version but components.

Aha I see, I misunderstood what you meant by watch. I thought you meant observing the component values (i.e. they're not hidden away in native memory or something like that).


xla_spawn: RuntimeError: Cannot re-initialize CUDA in forked subprocess. To use CUDA with multiprocessing, you must use the 'spawn' start method

🐛 Bug
I am attempting to train a model on a Colab TPU, and got this error:
WARNING:root:TPU has started up successfully with version pytorch-1.11
/usr/local/lib/python3.7/dist-packages/pytorch_lightning/loops/utilities.py:95: PossibleUserWarning: `max_epochs` was not set. Setting it to 1000 epochs. To train without an epoch limit, set `max_epochs=-1`.
  category=PossibleUserWarning,
GPU available: False, used: False
TPU available: True, using: 8 TPU cores
IPU available: False, using: 0 IPUs
HPU available: False, using: 0 HPUs

  | Name             | Type       | Params
------------------------------------------------
0 | backbone         | ResNet     | 23.5 M
1 | online_encoder   | NetWrapper | 33.0 M
2 | online_predictor | MLP        | 2.1 M
3 | target_encoder   | NetWrapper | 33.0 M
------------------------------------------------
21.0 M    Trainable params
23.5 M    Non-trainable params
44.5 M    Total params
178.069   Total estimated model params size (MB)
/usr/local/lib/python3.7/dist-packages/pytorch_lightning/trainer/trainer.py:1937: PossibleUserWarning: The number of training batches (1) is smaller than the logging interval Trainer(log_every_n_steps=50). Set a lower value for log_every_n_steps if you want to see logs for the training epoch.
  category=PossibleUserWarning,
Epoch 0:   0% 0/2 [00:00<?, ?it/s] Exception in device=TPU:3: Cannot re-initialize CUDA in forked subprocess. To use CUDA with multiprocessing, you must use the 'spawn' start method
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/torch_xla/distributed/xla_multiprocessing.py", line 330, in _mp_start_fn
    _start_fn(index, pf_cfg, fn, args)
  File "/usr/local/lib/python3.7/dist-packages/torch_xla/distributed/xla_multiprocessing.py", line 324, in _start_fn
    fn(gindex, *args)
  File "/usr/local/lib/python3.7/dist-packages/pytorch_lightning/strategies/launchers/xla_spawn.py", line 99, in _wrapping_function
    results = function(*args, **kwargs)
  File "/usr/local/lib/python3.7/dist-packages/pytorch_lightning/trainer/trainer.py", line 811, in _fit_impl
    results = self._run(model, ckpt_path=self.ckpt_path)
  File "/usr/local/lib/python3.7/dist-packages/pytorch_lightning/trainer/trainer.py", line 1236, in _run
    results = self._run_stage()
  File "/usr/local/lib/python3.7/dist-packages/pytorch_lightning/trainer/trainer.py", line 1323, in _run_stage
    return self._run_train()
  File "/usr/local/lib/python3.7/dist-packages/pytorch_lightning/trainer/trainer.py", line 1353, in _run_train
    self.fit_loop.run()
  File "/usr/local/lib/python3.7/dist-packages/pytorch_lightning/loops/base.py", line 204, in run
    self.advance(*args, **kwargs)
  File "/usr/local/lib/python3.7/dist-packages/pytorch_lightning/loops/fit_loop.py", line 266, in advance
    self._outputs = self.epoch_loop.run(self._data_fetcher)
  File "/usr/local/lib/python3.7/dist-packages/pytorch_lightning/loops/base.py", line 204, in run
    self.advance(*args, **kwargs)
  File "/usr/local/lib/python3.7/dist-packages/pytorch_lightning/loops/epoch/training_epoch_loop.py", line 208, in advance
    batch_output = self.batch_loop.run(batch, batch_idx)
  File "/usr/local/lib/python3.7/dist-packages/pytorch_lightning/loops/base.py", line 204, in run
    self.advance(*args, **kwargs)
  File "/usr/local/lib/python3.7/dist-packages/pytorch_lightning/loops/batch/training_batch_loop.py", line 88, in advance
    outputs = self.optimizer_loop.run(split_batch, optimizers, batch_idx)
  File "/usr/local/lib/python3.7/dist-packages/pytorch_lightning/loops/base.py", line 204, in run
    self.advance(*args, **kwargs)
  File "/usr/local/lib/python3.7/dist-packages/pytorch_lightning/loops/optimization/optimizer_loop.py", line 207, in advance
    self.optimizer_idx,
  File "/usr/local/lib/python3.7/dist-packages/pytorch_lightning/loops/optimization/optimizer_loop.py", line 256, in _run_optimization
    self._optimizer_step(optimizer, opt_idx, batch_idx, closure)
RuntimeError: Cannot re-initialize CUDA in forked subprocess. To use CUDA with multiprocessing, you must use the 'spawn' start method
Traceback (most recent call last):
  File "/content/scratch_refactor/src/run.py", line 42, in <module>
    pretrainer.fit(model=ssl_model, datamodule=pretraining_data)
  File "/usr/local/lib/python3.7/dist-packages/pytorch_lightning/trainer/trainer.py", line 771, in fit
    self._fit_impl, model, train_dataloaders, val_dataloaders, datamodule, ckpt_path
  File "/usr/local/lib/python3.7/dist-packages/pytorch_lightning/trainer/trainer.py", line 721, in _call_and_handle_interrupt
    return self.strategy.launcher.launch(trainer_fn, *args, trainer=self, **kwargs)
  File "/usr/local/lib/python3.7/dist-packages/pytorch_lightning/strategies/launchers/xla_spawn.py", line 80, in launch
    start_method=self._start_method,
  File "/usr/local/lib/python3.7/dist-packages/torch_xla/distributed/xla_multiprocessing.py", line 395, in spawn
    start_method=start_method)
  File "/usr/local/lib/python3.7/dist-packages/torch/multiprocessing/spawn.py", line 198, in start_processes
    while not context.join():
  File "/usr/local/lib/python3.7/dist-packages/torch/multiprocessing/spawn.py", line 154, in join
    exit_code=exitcode
torch.multiprocessing.spawn.ProcessExitedException: process 3 terminated with exit code 17

I am not sure what's going on here, as no CUDA devices are present!
From the error message it appears there is an issue with the optimizer step; I am using a custom optimizer, so I will paste the optimizer code here:
class LARS(Optimizer):
    """
    Layer-wise Adaptive Rate Scaling for large batch training.
    Introduced by "Large Batch Training of Convolutional Networks" by Y. You,
    I. Gitman, and B. Ginsburg. (https://arxiv.org/abs/1708.03888)
    """

    def __init__(
        self,
        params,
        lr=required,
        momentum=0.9,
        use_nesterov=False,
        weight_decay=0.0,
        exclude_from_weight_decay=None,
        exclude_from_layer_adaptation=None,
        classic_momentum=True,
        eeta=EETA_DEFAULT,
    ):
        """Constructs a LARSOptimizer.
        Args:
        lr: A `float` for learning rate.
        momentum: A `float` for momentum.
        use_nesterov: A 'Boolean' for whether to use nesterov momentum.
        weight_decay: A `float` for weight decay.
        exclude_from_weight_decay: A list of `string` for variable screening, if
            any of the string appears in a variable's name, the variable will be
            excluded for computing weight decay. For example, one could specify
            the list like ['batch_normalization', 'bias'] to exclude BN and bias
            from weight decay.
        exclude_from_layer_adaptation: Similar to exclude_from_weight_decay, but
            for layer adaptation. If it is None, it will be defaulted the same as
            exclude_from_weight_decay.
        classic_momentum: A `boolean` for whether to use classic (or popular)
            momentum. The learning rate is applied during momeuntum update in
            classic momentum, but after momentum for popular momentum.
        eeta: A `float` for scaling of learning rate when computing trust ratio.
        name: The name for the scope.
        """

        self.epoch = 0
        defaults = dict(
            lr=lr,
            momentum=momentum,
            use_nesterov=use_nesterov,
            weight_decay=weight_decay,
            exclude_from_weight_decay=exclude_from_weight_decay,
            exclude_from_layer_adaptation=exclude_from_layer_adaptation,
            classic_momentum=classic_momentum,
            eeta=eeta,
        )

        super(LARS, self).__init__(params, defaults)
        self.lr = lr
        self.momentum = momentum
        self.weight_decay = weight_decay
        self.use_nesterov = use_nesterov
        self.classic_momentum = classic_momentum
        self.eeta = eeta
        self.exclude_from_weight_decay = exclude_from_weight_decay
        # exclude_from_layer_adaptation is set to exclude_from_weight_decay if the
        # arg is None.
        if exclude_from_layer_adaptation:
            self.exclude_from_layer_adaptation = exclude_from_layer_adaptation
        else:
            self.exclude_from_layer_adaptation = exclude_from_weight_decay

    def step(self, epoch=None, closure=None):
        loss = None
        if closure is not None:
            loss = closure()

        if epoch is None:
            epoch = self.epoch
            self.epoch += 1

        for group in self.param_groups:
            weight_decay = group["weight_decay"]
            momentum = group["momentum"]
            eeta = group["eeta"]
            lr = group["lr"]

            for p in group["params"]:
                if p.grad is None:
                    continue

                param = p.data
                grad = p.grad.data

                param_state = self.state[p]

                # TODO: get param names
                # if self._use_weight_decay(param_name):
                grad += self.weight_decay * param

                if self.classic_momentum:
                    trust_ratio = 1.0

                    # TODO: get param names
                    # if self._do_layer_adaptation(param_name):
                    w_norm = torch.norm(param)
                    g_norm = torch.norm(grad)

                    device = g_norm.get_device()

                    trust_ratio = torch.where(
                        w_norm.ge(0),
                        torch.where(
                            g_norm.ge(0),
                            (self.eeta * w_norm / g_norm),
                            torch.tensor(
                                [1.0],
                                device=device
                            ),
                        ),
                        torch.tensor([1.0],
                        device=device
                        ),
                    ).detach()

                    scaled_lr = lr * trust_ratio
                    if "momentum_buffer" not in param_state:
                        next_v = param_state["momentum_buffer"] = torch.zeros_like(
                            p.data,
                            device=device
                        )
                    else:
                        next_v = param_state["momentum_buffer"]

                    # next_v.mul_(momentum).add_(grad, alpha=scaled_lr)

                    #instead of above ^ add_() with alpha, use the following
                    # to work around trust_ratio item() call;
                    # avoid accelerator <--> CPU communication
                    next_v.mul_(momentum).add_(torch.mul(grad, scaled_lr)) #TODO{make sure this works as expected}
                    if self.use_nesterov:
                        update = (self.momentum * next_v) + (scaled_lr * grad)
                    else:
                        update = next_v

                    p.data.add_(-update)
                else:
                    raise NotImplementedError

        return loss

    def _use_weight_decay(self, param_name):
        """Whether to use L2 weight decay for `param_name`."""
        if not self.weight_decay:
            return False
        if self.exclude_from_weight_decay:
            for r in self.exclude_from_weight_decay:
                if re.search(r, param_name) is not None:
                    return False
        return True

    def _do_layer_adaptation(self, param_name):
        """Whether to do layer-wise learning rate adaptation for `param_name`."""
        if self.exclude_from_layer_adaptation:
            for r in self.exclude_from_layer_adaptation:
                if re.search(r, param_name) is not None:
                    return False
        return True

I am wondering if the CUDA/Nvidia environment variables have something to do with this? (see output of os.environ in Environment section) – do I somehow need to remove CUDA-related information from the environment?
Environment
Output of collect_env_details.py script:
collect_env_details 100%[===================>]   2.54K  --.-KB/s    in 0s

2022-07-15 16:35:52 (30.2 MB/s) - ‘collect_env_details.py’ saved [2598/2598]

WARNING:root:TPU has started up successfully with version pytorch-1.11
* CUDA:
	- GPU:
	- available:         False
	- version:           10.2
* Packages:
	- numpy:             1.21.6
	- pyTorch_debug:     False
	- pyTorch_version:   1.11.0+cu102
	- pytorch-lightning: 1.6.5
	- tqdm:              4.64.0
* System:
	- OS:                Linux
	- architecture:
		- 64bit
		-
	- processor:         x86_64
	- python:            3.7.13
	- version:           #1 SMP Sun Apr 24 10:03:06 PDT 2022

Additional details:

Any other relevant information: output of os.environ

environ({'CUDNN_VERSION': '<IP_ADDRESS>', 'LD_LIBRARY_PATH': '/usr/local/nvidia/lib:/usr/local/nvidia/lib64', 'CLOUDSDK_PYTHON': 'python3', 'LANG': 'en_US.UTF-8', 'HOSTNAME': '58bea502a81e', 'XRT_TPU_CONFIG': 'tpu_worker;0;<IP_ADDRESS>:8470', 'OLDPWD': '/', 'CLOUDSDK_CONFIG': '/content/.config', 'DATALAB_SETTINGS_OVERRIDES': '{"kernelManagerProxyPort":6000,"kernelManagerProxyHost":"<IP_ADDRESS>","jupyterArgs":["--ip=<IP_ADDRESS>"],"debugAdapterMultiplexerPath":"/usr/local/bin/dap_multiplexer","enableLsp":true}', 'ENV': '/root/.bashrc', 'NCCL_VERSION': '2.7.8', 'TF_FORCE_GPU_ALLOW_GROWTH': 'true', 'NO_GCE_CHECK': 'False', 'PWD': '/', 'HOME': '/root', 'LAST_FORCED_REBUILD': '20220712', 'DEBIAN_FRONTEND': 'noninteractive', 'LIBRARY_PATH': '/usr/local/cuda/lib64/stubs', 'GCE_METADATA_TIMEOUT': '3', 'GLIBCPP_FORCE_NEW': '1', 'TBE_CREDS_ADDR': '<IP_ADDRESS>:8008', 'SHELL': '/bin/bash', 'GCS_READ_CACHE_BLOCK_SIZE_MB': '16', 'PYTHONWARNINGS': 'ignore:::pip._internal.cli.base_command', 'CUDA_VERSION': '11.1.1', 'NVIDIA_DRIVER_CAPABILITIES': 'compute,utility', 'COLAB_TPU_ADDR': '<IP_ADDRESS>:8470', 'SHLVL': '0', 'PYTHONPATH': '/env/python', 'TBE_EPHEM_CREDS_ADDR': '<IP_ADDRESS>:8009', 'GLIBCXX_FORCE_NEW': '1', 'PATH': '/opt/bin:/usr/local/nvidia/bin:/usr/local/cuda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/tools/node/bin:/tools/google-cloud-sdk/bin', 'LD_PRELOAD': '/usr/lib/x86_64-linux-gnu/libtcmalloc.so.4', 'TPU_NAME': 'grpc://<IP_ADDRESS>:8470', 'JPY_PARENT_PID': '42', 'TERM': 'xterm-color', 'CLICOLOR': '1', 'PAGER': 'cat', 'GIT_PAGER': 'cat', 'MPLBACKEND': 'module://ipykernel.pylab.backend_inline', 'ENABLE_DIRECTORYPREFETCHER': '1', 'USE_AUTH_EPHEM': '1', 'PYDEVD_USE_FRAME_EVAL': 'NO'})

cc @kaushikb11 @rohitgr7 @akihironitta

Hey @adamcatto
This happens when you try to call cuda functions in the main process before calling e.g. Trainer.fit(), and then try to call cuda functions again somewhere during trainer.fit. Please check in your code that you're not calling .to("cuda") or similar device operations when using the TPU accelerator. I see some device logic in that optimizer code.

Thanks @awaelchli turned out the issue was apparently that assigning device = g_norm.get_device() did not retain XLA device information, so initializing tensors using this device resulted in CUDA tensor. I changed the assignment to device = g_norm.device and it worked. Strangely enough, removing device calls and initializing the tensor without device resulted in device mismatch, which I would have thought pytorch-lightning would handle. I wonder what the issue there is...

Lightning can only handle the transfer of data from the dataloader to the device automatically and placing the model weights on the device. Any other tensors that you create you need to move yourself. You can use the self.device attribute on the LightningModule if you need that device information.


User Settings

Allow User To Adjust Settings and Have Them Affect The Display. These Are:

[x] Date Format
[x] Currency Format
[ ] Default Number Rows
[ ] Dark Mode

Completed Date format and Currecnty format with merge of reporting.,


Swift 4 support

Is there plans for support for Swift 4? Are you open to PRs, and if so, could an overview of what needs to be done for support?
Thanks!

swift 5 since yesterday 🤦♂

Setting <preference name="UseSwiftLanguageVersion" value="5" /> works fine for me and Xcode sets the correct compiler level:

As documented in the README try adding this to your plugin.xml

Sidenote: my PR #57 makes Swift 4 the new default. :)


Adding devcontainers support

Description
Adding devcontainers support and requirements.txt

@emanuel-quix - can you raise PRs on dev branch please? I've changed branch to dev but it messes up the commit history which is undesirable. Thanks.


checkpoints

HRFuser/checkpoints/cascade_rcnn_hrfuser_t_1x_stf_r1248_4mod_latest.pth is not a checkpoint file

Could you please clarify what your issue is? You need to first download the checkpoints from here and put it in the correct checkpoints folder. The .pth file can then be loaded by the framework.


2018.08.07-17:30Z

AGENDA
location https://meet.jit.si/play

...

I want go join the meeting, don't forget me. ^_^


 It's a silly bug in my code. I will find a chance to fix it and let you know as soon as I have done it.

@gregsadetsky Just fixed the bug. Just refresh the page and it should work. No upgrade needed. :)

That's fantastic, just confirmed it to be working again. Thank you!


ID_ATTR  gets duplicated

In the last update (0.0.17) the ID_ATTR  is based on a timestamp. This causes duplicated id:s when two or more tags are created within the same timeframe.
In previous versions it was based on an incremented value ware the issue newer occoured.
What was the reason of the change?

This is a duplicate of #295


Multiple quality improvements

This pull request is focused on resolving occurrences of Sonar rules pmd:AppendCharacterWithChar - Append Character With Char
pmd:ImmutableField - Immutable Field
squid:SwitchLastCaseIsDefaultCheck - "switch" statements should end with a "default" clause
squid:UselessParenthesesCheck - Useless parentheses around expressions should be removed to prevent any misunderstanding
You can find more information about the issues here:
https://dev.eclipse.org/sonar/coding_rules#q=pmd:AppendCharacterWithChar
https://dev.eclipse.org/sonar/coding_rules#q=pmd:ImmutableField
https://dev.eclipse.org/sonar/coding_rules#q=squid:SwitchLastCaseIsDefaultCheck
https://dev.eclipse.org/sonar/coding_rules#q=squid:UselessParenthesesCheck
Please let me know if you have any questions.
M-Ezzat

I am not sure whether you do not agree with these changes or not. Please close this PR if not.

Merged in 92724f6.


ctr + shift + scroll doesn't change transparancy with useAcrylic set to true

I am new to the new windows terminal but I am experiencing an issue where the transparency is not applied with "useAcrylic" set to true in my "profiles.json" file as shown in another issue post. I built it with visual studio 2017 and "Microsoft Windows [version 10.0.18898.1000]". I cloned the repository today.
Is there an issue or is it because of my lack of knowledge with this awesome new fancy terminal?
Thanks!

What if you set the transparency manually in the profiles.json? Does the transparency work? Is the window in focus? Are you sure you have saved the changes of your profiles.json? Try deinstalling and rebuilding it and then change again to true.

There are other things that affect acrylic that are out of our control. For example, acrylic doesn't render through remote desktop sessions, and IIRC, it doesn't render on battery saver either. It is also well documented that it only renders on windows that are actively focused.
If your profile has useAcrylic set, you can change the opacity of the acrylic with Ctrl+Shift+mouse wheel

Thank you for your suggestions but I have rebuilt it several times with fresh clones of the repo. I have verified that low battery mode was off and I am not using it through a remote session and the window is focused. Changing the AcrylicOpacity setting doesn't do anything. I will provide the profiles.json file.

I tried your profiles settings and they work for me. Maybe an issue with the Windows version? I am on 18362.

Would me uploading my compiled version help?

I can't change the transparency by Ctrl+Shift+Mouse wheel too.
I have checked the source code of CascadiaSettings.cpp and AppKeyBindings.cpp.
And seems there doesn't exist any key binding about Ctrl+Shift+Mouse for change transparency.
But at the conference, they actually perform this key binding.
I guess they didn't commit this feature yet.
Just a guess, I am not sure that is the reason.

The key binding must exist since mKay00 said it worked for him.. I will try to find it when I have time. What is your windows version garyparrot? It seems to be linked somehow but I am not sure.

I am running 18362.30
I just find out I can actually change the transparency by mouse wheel.
But I have to keep scrolling the wheel in the same direction very hard.

I have tried setting the scroll sensitivity to the maximum but it still doesn't work... It is very interesting that it works for you! We are getting close!

The "keybinding" isn't actually set as a KeyBinding, since KeyBindings are for key combos, while this is a mouse interaction.
Mouse wheel events are handled here:
https://github.com/microsoft/terminal/blob/master/src/cascadia/TerminalControl/TermControl.cpp#L696-L717
I'd set a breakpoint there to make sure it's getting hit for you.

Wow, that makes sense.
Mike Griese thanks for your reply! It helps me make this clear.

Thanks I’ll try!

@PolarToCartesian Did you ever figure this out?

Yes, sorry I forgot to report it here... I had issues with windows insider (I received updates too fast) which meant that things weren't as stable as other versions. I decided to wait for the release version!

I just realized that the issue was due to me having transparency off in windows because of my visual handicap.

In the release version, 1.0, neither backgroundTransparency / acrylicTransparency with useAcrylic set to true with a backgroundImage (tried both png and jpg) in settings.json nor the ctrl + shift + mouse wheel work for me, no matter how hard/long I scroll. The Transparency Effects is set on in Windows.


Please cut a minor

I'd like to take advantage of some of the work @janus-reith did back on May 20. Specifically I want to use the upgraded version of MUI as v3 is meh especially now that I've had some time in another project to work with the Chakra UI 1.0 pre-release. I'd cut my own right now on my fork I'm just not sure which commit to point it at and I feel others would benefit from a minor while the next major is prepared.
Could maintainers please cut a minor and push up a new docker image with that work included? Or, if that's not feasible, let us know a good commit SHA where the product was stable without any breaking changes after May 20?

I started cherry-picking my way through some of the commits to get MUI 4 installed and saw the codebase wasn't stable due to parallel dependency upgrades. Also, as a downstream consumer I find microcommits—left unsquashed—causing a bit of cognitive overhead I feel would be better utilized in a MUI upgrade in my own fork.
As a result, I'm going to close this and wait while release blockers are fixed and then consider dumping my work later and re-implementing once trunk is closer to a release-ready state.


ska delete upgrade

Closes #79

Codecov Report
Attention: Patch coverage is 84.61538% with 2 lines in your changes missing coverage. Please review.

Project coverage is 93.14%. Comparing base (28bca4a) to head (d281e78).

Files
Patch %
Lines

src/cli.rs
50.00%
1 Missing :warning:

src/generic_modes.rs
80.00%
1 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##           master      #80      +/-   ##
==========================================
+ Coverage   92.95%   93.14%   +0.18%
==========================================
  Files          16       16
  Lines        2258     2260       +2
==========================================
+ Hits         2099     2105       +6
+ Misses        159      155       -4

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Updated xguardian to use HTTPS

Thank you for the contribution. It was merged directly as 466de9db5bc3567d16a276fa457180051711788c to keep commit history cleaner. Your contribution is still credited to you.


HELP-56667: Fixed e2e k8s test failure

Proposed changes
Fixed E2E test failure introduced by https://github.com/mongodb/mongodb-atlas-cli/pull/2812

Checklist

[x] I have signed the MongoDB CLA
[x] I have added tests that prove my fix is effective or that my feature works
[ ] I have added any necessary documentation in document requirements section listed in CONTRIBUTING.md (if appropriate)
[ ] I have addressed the @mongodb/docs-cloud-team comments (if appropriate)
[ ] I have updated test/README.md (if an e2e test has been added)
[x] I have run make fmt and formatted my code

Further comments

K8S tests are green: https://spruce.mongodb.com/version/6613bd1a08f509000763bdc0/tasks?sorts=STATUS%3AASC%3BBASE_STATUS%3ADESC


django-raster rendering raster url

i want to add raster functionality in django using postgis database using django-raster package and this docs.
here my code :
models.py
from django.contrib.gis.db import models
class RasterWithName(models.Model):
raster = models.RasterField()
name = models.TextField()
add raster using console :
from django.contrib.gis.gdal import GDALRaster
from myapp.models import RasterWithName
gdal_raster = GDALRaster('C:/Users/username/Desktop/image.tif')
rast = RasterWithName(name='one', raster=gdal_raster)
rast.save()
but i am very confused with Rendering tiles and urls.
docs say :
/raster/tiles/layer_id/{z}/{x}/{y}.png where the layer_id is the primary key of a raster layer. This structure can be used directly in online mapping software such as OpenLayers or Leaflet. An example request could look like this: /raster/tiles/23/8/536/143.png, returning a tile in png format of the layer with ID pk=23 at zoom level z=8 and indexes x=536 and y=143
but indexes x,y mean some random x,y coordinate in image ?anyway i using this url http://<IP_ADDRESS>:8000/raster/tiles/1/8/536/143.png or http://<IP_ADDRESS>:8000/raster/tiles/1/8/20/40.png(origin x,y in my image) and i take a black window in my browser,any idea where i have wrong in my url rendering ?

In your code example you create your own raster model. That is not compatible with the django-raster package. The goal of django-raster is to avoid having to create and manage raster models.
In your case, make sure django-raster is correctly installed, see https://django-raster.readthedocs.io/en/stable/installation.html).
Then the raster files itself should be stored using the RasterLayer model that comes with the django-raster package. The easiest way to add your image is to use the django admin site. Simply create a new RasterLayer in the admin and upload your file using the rasterfile field.

Also answered this question in https://gis.stackexchange.com/questions/288122.


You cant delete agents

It would be nice addition to be able to delete agents, since test agents will take up place on the dashboard

This is now possible within the Carter Dashboard.


Non consistent results for fluxes accross different platforms.

When generating a star object with same input, the computed track data differ of few percents between different platform.
Differences are more sensible when:

looking at large time (5000-10000 Myrs)
looking at quantities like Leuv and Lx
looking at round values (ie Mstar =1.0 instead of 0.999)

This is for instance the result I got on my Mac
>>> star = mors.Star(Mstar=0.9999, Omega=1.0001)
>>> star.Value(1e4, 'Leuv')
3.181539021554143e+28
>>> star = mors.Star(Mstar=1.0, Omega=1.0)
>>> star.Value(1e4, 'Leuv')
3.1992107463029277e+28

And the result I got on the Kapteyn cluster and on the Github CI
>>> star = mors.Star(Mstar=0.9999, Omega=1.0001)
>>> star.Value(1e4, 'Leuv')
np.float64(3.1816559317522773e+28)
>>> star = mors.Star(Mstar=1.0, Omega=1.0)
>>> star.Value(1e4, 'Leuv')
np.float64(3.2484555118015116e+28)

The .Value does an interpolation from track data. But doing the interpolation myself gives the same result. So it is really at the stage of the star object creation that things differ.

I added the data point to my previous test to trigger this bug in a new branch testing. You can see workflow results here.

Any idea to approach this @timlichtenberg , @nichollsh ? I would be curious to see which result you get from your computer.

This is the result I get on my desktop computer (Ubuntu 20.04.6 LTS, Linux 5.4.0)
>>> star = mors.Star(Mstar=0.9999, Omega=1.0001)
>>> star.Value(1e4, 'Leuv')
np.float64(3.184700102777826e+28)
>>> star = mors.Star(Mstar=1.0, Omega=1.0)
>>> star.Value(1e4, 'Leuv')
np.float64(3.1830231535644867e+28)

Which is also different to the values you gave above

Whaouh, this is dreadful... The workflow runs automatically on different python version. But I need to look into the exact version number of the dependencies.

This sounds to me like an interpolation issue, although I haven't tested that specifically. Looking at MORS, the way it interpolates is a little odd? It seems to use a bespoke method for handling it, rather than using the more advanced routines in Scipy. I can imagine that this might have some issues in it.

Is this the function responsible?
https://github.com/FormingWorlds/MORS/blob/0196097290e6db9cf754c12cd81b015d5b2813eb/src/mors/stellarevo.py#L764
Can we add a test for this to start with?

I found that the computation of the time grid is responsible for the reproducibility issue. Default is to compute an adaptive time step with the Rosenbrock scheme (set in parameters.py), which seems to be sensitive to round-off errors when time evolves. Switching to fixed time step methods (forward Euler, RK4) leads to reproducible results between platforms and I will make this the default option. Fixed-time stepping is more computationally expensive (20000 points instead of 300 points with Rosenbrock) but it seems a decent option since we only consider one star system. Still, it will remain possible to switch back to the adaptive scheme or set more restrictive options (maximum time step) to make it more robust.

Just put here the sequence call when creating a star object for future debugging.
star.py calls _LoadEvoTracks calls RE.EvolveRotation
rotevo.py` EvolveRotation calls _CreateTracks calls phys.ExtendedQantities
physicalmodel.py ExtendedQuantities calls RotationQuantities calls StarEvo.Rstar
stellarevo.py Rstar calls Value calls _ValueSingle calls _Interpolation1D

Cool, nice detective work! Just a thought, if rounding errors are the problem, have you considered using exact representations, e.g. using the decimals package?
https://docs.python.org/3/library/decimal.html

Cool, nice detective work! Just a thought, if rounding errors are the problem, have you considered using exact representations, e.g. using the decimals package?
https://docs.python.org/3/library/decimal.html

Will not investigate further since the fixed time stepping is preferred anyway. Will go back to this only in case of efficiency issue.

Closed by https://github.com/FormingWorlds/MORS/pull/23


Error in mounted hook: "TypeError: Invalid attempt to spread non-iterable instance"  when using VsTable

Your OS: POPOS 20.04
Node.js version 12.19.0
Vuesax version: github:jd-0001/vuesax#1d6c70c6e9813d50d01982733b828a63b712acb6
Browser version: firefox 83.0 (64-bit)
Which package manager did you use for the install?
npm

i tried to embed the simplest vstable code and getting error stated in title
<template>
  <div>
      <vs-table>
    <template #thead>
      <vs-tr>
        <vs-th>
          Name
        </vs-th>
        <vs-th>
          Email
        </vs-th>
        <vs-th>
          Id
        </vs-th>
      </vs-tr>
    </template>
  </vs-table>
</div>
</template>

haven't even tried to insert body yet
error:
[Vue warn]: Error in mounted hook: "TypeError: Invalid attempt to spread non-iterable instance"

found in

---> <VsTable>
       <Index> at src/views/orders/Index.vue
         <Main> at src/layouts/main/Main.vue
           <App> at src/App.vue
             <Root>

You must use  for check if data is loaded.

thank you , works fine now


Create Switcher / Add component

Set a component when creating a new switcher.

Change component description to not required. It might make possible to create the document while attaching it to the switcher document.

Modification already implemented.


Work around Webpack import problem

Note: The patch here is suboptimal; see https://github.com/akx/Proj4Leaflet/commit/a1c61f9e5e57c72ab59a89dc39b78518b538f995 for a better one!
When using Webpack, leaflet and proj4 may be exported as ES6 style modules that export the actual object as .default; so, if the modules have .default, use that.
The symptom for this issue is "TypeError: proj4.defs is not a function" (for ease of googling).
This is related to

https://github.com/DefinitelyTyped/DefinitelyTyped/issues/15663
#139

Hi, and thanks, but our position on this is that it's a Webpack issue, and not something we will hack around.
See discussion in #139 and #145.

I understand your view there. Slippery slope and so on.
On the other hand this makes proj4leaflet unusable with (increasingly popular) systems such as create-react-app, which don't let you edit the Webpack configuration unless you "eject" the configuration and take full responsibility of it. 😥

Maybe I don't fully understand the situation, but I guess it must also mean that Proj4 is unusable from create-react-app?
It seems that like a better solution to either fix Proj4, if their method of exporting isn't correct, or use
a better Webpack configuration. Fixing it in Proj4Leaflet instead must be a hack?

I think that this has to be either a problem for create-react-app or proj4, we are too far down the chain to fix this problem with webpack.

proj4 works fine using ES6 module syntax in modules that are transpiled by Babel.
The ES6 code
import proj4 from 'proj4';
console.log(proj4);

outputs function proj4(fromProj, toProj, coord) { ... } in the browser console as expected.
The code is transpiled into
'use strict';
var _proj = require('proj4');
var _proj2 = _interopRequireDefault(_proj);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
console.log(_proj2.default);

by Babel -- that is, the object containing default is peeled into, if it's tagged as an ES module (by the convention Babel uses).
I'll dig a little deeper into what's happening – looks like Webpack is treating proj4leaflet as an AMD module, so this might not have fixed anything after all . . .

Maybe a better solution would be to distribute Proj4Leaflet as a conventional CommonJS module, without UMD wrapper, and also include a "built" version with UMD wrapper for people who don't use a build tool and pull it in with a script tag?

Okay, I think I got to the bottom of things here.
The issue is in the interplay of Webpack (or any other ES6-compatible bundler really) and how Proj4 is packaged since  the commit https://github.com/proj4js/proj4js/commit/7224e912ea0b7ca62bd0441946bed87c636169f4.
Act 1: The Module Field
Webpack honors the module field in package.json.

If that field is present, Webpack uses it as the entry point to the package, in order to be more efficient about tree shaking and bundling and so on. The module is then compiled as an ES6 module, with the assumption that its users are also ES6 savvy.
If that field is not present, Webpack uses the main field, and does not expect the module to be an ES6 module, but a plain old CommonJS module.

Act 2: Proj4
Proj4's package.json, referenced in the commit linked above, does contain a module field, so Webpack bundles it as one, i.e. with the default object (Proj4) exported as {default: Proj4}. This means that users would import it as import Proj4 from 'proj4';, and, well, see my earlier comment.

If Proj4's package.json is patched to not contain the module field, proj4leaflet starts working in a bundle, as Webpack no longer bundles Proj4 in ES6 style, but uses the dist/proj4-src.js UMD module.

Act 3: Fixing Proj4leaflet
Because this issue stems from that "misunderstanding" in Webpack, distributing Proj4Leaflet as CJS would not really fix the issue (lest it is using ES6 import for the dependencies, which can then be transpiled by Babel with the interop require code).
I have a better, improved fix here (though I figured I wouldn't make a PR before I got green light from you guys first): https://github.com/akx/Proj4Leaflet/commit/a1c61f9e5e57c72ab59a89dc39b78518b538f995
Basically, it does the same thing interopRequireDefault would, and peels the default away if it detects Proj4 has been bundled as an ES6 module.

@akx Hello, do you know if there is any progress about this issue? I've just run into it in my new app which uses
"leaflet": "1.2.0",
"proj4": "2.4.3", //2.3.x is not working either
"proj4leaflet": "1.0.1",
"webpack": "3.5.2"

and the proj4leaflet is calling proj4.defs(code, def); which does not exists because it is inside default property.
All the related bug reports at webpack/proj4/proj4leaflet are closed but none of them seems to provide solution apart from blaming webpack.
Feels to me like everyone who uses webpack/rollup must be stucked now like me. Your PR above looks promising but it's not released yet is it?

For some reason I haven't even seen @akx's comment until now. Thanks for the detailed and thorough examination of the problem!
I see two options for us:

Merge #145, which is more or less exactly the same patch as @akx link to above
Turn Proj4Leaflet into a real ES6 module; we could the use the module field ourselves, which would be used by ES6 bundlers like Webpack, and we could point index to a bundled version with UMD wrapper; we could do the bundling with Rollup, exactly like Leaflet itself does from version 1.1.0 and forward

Option 2 seem like the good long term solution, but option 1 is way quicker, and personally I don't think I even have the time for that one. So, probably go with option 1 for now and make a release as soon as possible.
@pthorin any chance you have the time to look at this?

For anxious people like myself, when can we expect the release?

Published version 1.0.2 that contains this fix.
Thanks again @akx for the detailed write-up, really made me understand this problem; I think your fix is sufficient for now.

Thanks @akx for this and @liedman for the release.
I will try to look into the option 2-solution after this week, when I'm back at work.

@pthorin I thought about it, but I ended up thinking it's not worth it. I don't think anyone wins on us building and bundling stuff. The current method works for everyone and is easy to understand, although not elegant.

For some reason, even after this fix usage in TS projects with import statements and Webpack build is broken. For instance:
import * as L from 'leaflet';
import * as MarkerCluster from 'leaflet.markercluster';
import * as proj4 from 'proj4';
import * as proj4leaflet from 'proj4leaflet';

Everything works fine except the proj4leaflet classes and functions. Apparently the Proj does not attach itself to the L and results in:
Cannot read property 'CRS' of undefined
at
mapOptions = {
	crs: new L.Proj.CRS(mapSettings.crs, mapSettings.projection,
		{ resolutions: mapSettings.resolutions, origin: mapSettings.origin /*, zoomAnimation: true*/ })
}

If I switch to require statements, it works but I lose intellisense/typings support and also wouldn't like to change the way we load dependencies just in one component and just for the sake of proj4leaftlet.

@brgrz
try this:
import * as proj4 from 'proj4leaflet';

mapOptions = {
	crs:  new proj4.CRS(mapSettings.crs, mapSettings.projection,
		{ resolutions: mapSettings.resolutions, origin: mapSettings.origin /*, zoomAnimation: true*/ })
}

@GeorgeKnap nope.. Property 'CRS' does not exist on type 'typeof ... '

@brgrz interesting. it works like this in my Angular app. Make sure you use proj4leaflet: 1.0.2

Hi, I'm trying to use proj4leaflet with webpack 4 and am running into very similar issue.
Using these versions
"proj4": "~2.4.3",
"proj4leaflet": "^1.0.2",

I keep running into
proj4leaflet.js:52 Uncaught TypeError: proj4.defs is not a function
    at NewClass._projFromCodeDef (proj4leaflet.js:52)
    at NewClass.initialize (proj4leaflet.js:36)
    at new NewClass (leaflet-src.js:301)
    at NewClass.initialize (proj4leaflet.js:90)
    at new NewClass (leaflet-src.js:301)
    at Object.registerLeafletSrid (SridProvider.js:29)
    at app.js:132
    at Object.invoke (angular.js:5097)
    at angular.js:4894
    at forEach (angular.js:408)

I've tested thoroughly I think, and only thing that helps is changing https://github.com/kartena/Proj4Leaflet/blob/master/src/proj4leaflet.js#L18 to
if (proj4.default) {

Why is that? Is it possible to solve this differently?

For anyone else who might run into this, I made it work by just using
import * as L from 'leaflet';
import 'proj4leaflet';

hello，I have tried ，but it does not work as I  use  "npm run build"


Update voyager docs

[x] Make it clear that it should work with any cluster including GKE.
[ ] Certificate does not explain when to use HTTP Ingress
[x] Certificate does not explain how to write the provider secret.

https://github.com/appscode/voyager/pull/51

kubectl get ingress.voyager.appscode.com


Undefined XMLHttpRequest

Hey mate,
I've upgraded from 4.4.1 to 4.4.3 and I'm getting error when I run my code in browser (not while compiling by webpack).
The error is about calling property XMLHttpRequest of undefined in file and line https://github.com/pyrsmk/qwest/blob/master/src/qwest.js#L19
When I rollback to 4.4.1 everythings works fine.

My tests are running well. In your case global seems to be undefined, which is set to this. If the library is not wrapped, this should be window. So, if global is undefined, it should be because window is not reached.

It's used inside my class and packed with webpack. As I said 4.4.1 is OK, there must be some particular change that causes this.

Yep, the change : https://github.com/pyrsmk/qwest/commit/6259f5d521d03973f2555ce7367658f025136586
Because of : https://github.com/pyrsmk/qwest/issues/78#issuecomment-214465087
I think I should changed this line by : var global = typeof window != 'undefined' ? window : self

Tell me if it's working now ;)

Then? ^^


Register all types annotated with @UriParams for reflection

@UriParam's are configured via direct java method calls in Camel 3 (we source code generate configurer classes).

ah right so maybe better to see if we can remove those configuration classes at all and only add them when it is needed

@davsclaus 'es point is true about @UriParam without s but this PR is about @UriParams with s. Having said that, the we might want to generate the configurers in the Camel side also for @UriParams but as long as that's not the case, I think this PR makes sense.

UriParams (with an s) are just a reference for a configuration class which has UriParam (no s). So there are no reflection or special for this. Its used for tooling to know how to follow where there are options that it need to extract and put in the camel-catalog and so on.

Let me re-check my assumptions. The native tests for the adjusted telegram (hosted inside camel-quarkus tree) were failing unless I registered TelegramConfiguration for reflection. Then I saw most extensions were registering their @UriParams annotated configs for reflection. So I concluded they all have to be registered. Let me check if the itests are failing for other extensions if I do not register their @UriParams. Perhaps there is something wrong in my adjusted telegram.

There should be an auto generated class that maps parameters with a method call

There should be an auto generated class that maps parameters with a method call

Yes, I can see two of them: for the component and for endpoint. But there is none for the configuration, whose getters/setters are apparently hit too. The stacktrace at the bottom is for Dozer in native mode (jvm mode works) with the @uriParams registration for reflection turned off. You mean that it should work without the registration, right?
2019-12-05 14:28:57,095 ERROR [org.apa.cam.qua.cor.FastCamelContext] (main) Error starting CamelContjava.lang.RuntimeException: org.apache.camel.FailedToCreateRouteException: Failed to create route roext (camel-1) due to exception thrown: Failed to create route route2 at: >>> To[dozer:simpleMapping?ute2 at: >>> To[dozer:simpleMapping?mappingFile=simple-mapping.xml&targetModel=org.apache.camel.quarmappingFile=simple-mapping.xml&targetModel=org.apache.camel.quarkus.component.dozer.it.model.Customekus.component.dozer.it.model.CustomerB] <<< in route: Route(route2)[From[direct:mapWithEndpoint] -> rB] <<< in route: Route(route2)[From[direct:mapWithEndpoint] -> [To[dozer:simp... because of Failed [To[dozer:simp... because of Failed to resolve endpoint: dozer://simpleMapping?mappingFile=simple-mato resolve endpoint: dozer://simpleMapping?mappingFile=simple-mapping.xml&targetModel=org.apache.camel.quarkus.component.dozer.it.model.CustomerB due to: The targetModel parameter is required for dozepping.xml&targetModel=org.apache.camel.quarkus.component.dozer.it.model.CustomerB due to: The targetr endpoints: org.apache.camel.FailedToCreateRouteException: Failed to create route route2 at: >>> ToModel parameter is required for dozer endpoints
        at org.apache.camel.quarkus.core.CamelMainRecorder.[dozer:simpleMapping?mappingFile=simple-mapping.xml&targetModel=org.apache.camel.quarkus.component.dstart(CamelMainRecorder.java:81)
        at io.quarkus.deployment.steps.Main$start78.deploy_0(Main$start78.ozer.it.model.CustomerB] <<< in route: Route(route2)[From[direct:mapWithEndpoint] -> [To[dozer:simp.zig:97)
        at io.quarkus.deployment.steps.Main$start78.deploy(Main$start78.zig:36)
        at io.quarkus.runn.. because of Failed to resolve endpoint: dozer://simpleMapping?mappingFile=simple-mapping.xml&targeer.ApplicationImpl.doStart(ApplicationImpl.zig:169)
        at io.quarkus.runtime.Application.start(ApplicatModel=org.apache.camel.quarkus.component.dozer.it.model.CustomerB due to: The targetModel parametertion.java:94)
        at io.quarkus.runtime.Application.run(Application.java:218)
        at io.quarkus.runner.Gen is required for dozer endpoints
        at org.apache.camel.reifier.RouteReifier.doCreateRoute(RouteReifieeratedMain.main(GeneratedMain.zig:41)
Caused by: org.apache.camel.FailedToCreateRouteException: Failr.java:386)
        at org.apache.camel.reifier.RouteReifier.createRoute(RouteReifier.java:108)
        at org.apaed to create route route2 at: >>> To[dozer:simpleMapping?mappingFile=simple-mapping.xml&targetModel=che.camel.quarkus.core.FastModel.start(FastModel.java:61)
        at org.apache.camel.quarkus.core.BaseModeorg.apache.camel.quarkus.component.dozer.it.model.CustomerB] <<< in route: Route(route2)[From[directl.startRoute(BaseModel.java:327)
        at org.apache.camel.quarkus.core.BaseModel.startRouteDefinitions(B:mapWithEndpoint] -> [To[dozer:simp... because of Failed to resolve endpoint: dozer://simpleMapping?aseModel.java:320)
        at org.apache.camel.quarkus.core.BaseModel.startRouteDefinitions(BaseModel.java:mappingFile=simple-mapping.xml&targetModel=org.apache.camel.quarkus.component.dozer.it.model.Custome299)
        at org.apache.camel.quarkus.core.FastCamelContext.startRouteDefinitions(FastCamelContext.java:rB due to: The targetModel parameter is required for dozer endpoints
        at org.apache.camel.reifier.Ro139)
        at org.apache.camel.impl.engine.AbstractCamelContext.doStartCamel(AbstractCamelContext.java:2597)
        at org.apache.camel.impl.engine.AbstractCamelContext.lambda$doStart$2(AbstractCamelContext.javauteReifier.doCreateRoute(RouteReifier.java:386)
        at org.apache.camel.reifier.RouteReifier.createRout:2445)
        at org.apache.camel.impl.engine.AbstractCamelContext.doWithDefinedClassLoader(AbstractCamelCe(RouteReifier.java:108)
        at org.apache.camel.quarkus.core.FastModel.start(FastModel.java:61)
        at orontext.java:2462)
        at org.apache.camel.impl.engine.AbstractCamelContext.doStart(AbstractCamelContext.java:2443)
        at org.apache.camel.support.service.ServiceSupport.start(ServiceSupport.java:117)
        at og.apache.camel.quarkus.core.BaseModel.startRoute(BaseModel.java:327)
        at org.apache.camel.quarkus.corg.apache.camel.impl.engine.AbstractCamelContext.start(AbstractCamelContext.java:2352)
        at org.apachre.BaseModel.startRouteDefinitions(BaseModel.java:320)
        at org.apache.camel.quarkus.core.BaseModel.se.camel.quarkus.core.CamelMain.doStart(CamelMain.java:47)
        at org.apache.camel.support.service.ServitartRouteDefinitions(BaseModel.java:299)
        at org.apache.camel.quarkus.core.FastCamelContext.startRouceSupport.start(ServiceSupport.java:117)
        at org.apache.camel.quarkus.core.CamelMainRecorder.start(CteDefinitions(FastCamelContext.java:139)
        at org.apache.camel.impl.engine.AbstractCamelContext.doStaamelMainRecorder.java:79)
        at io.quarkus.deployment.steps.Main$start78.deploy_0(Main$start78.zig:97)rtCamel(AbstractCamelContext.java:2597)
        at org.apache.camel.impl.engine.AbstractCamelContext.lambda
        at io.quarkus.deployment.steps.Main$start78.deploy(Main$start78.zig:36)
        at io.quarkus.runner.Appl$doStart$2(AbstractCamelContext.java:2445)
        at org.apache.camel.impl.engine.AbstractCamelContext.doWicationImpl.doStart(ApplicationImpl.zig:169)
        at io.quarkus.runtime.Application.start(Application.jaithDefinedClassLoader(AbstractCamelContext.java:2462)
        at org.apache.camel.impl.engine.AbstractCamelva:94)
        at io.quarkus.runtime.Application.run(Application.java:218)
        at io.quarkus.runner.GeneratedMContext.doStart(AbstractCamelContext.java:2443)
        at org.apache.camel.support.service.ServiceSupport.ain.main(GeneratedMain.zig:41)
Caused by: org.apache.camel.ResolveEndpointFailedException: Failed tostart(ServiceSupport.java:117)
        at org.apache.camel.impl.engine.AbstractCamelContext.start(AbstractC resolve endpoint: dozer://simpleMapping?mappingFile=simple-mapping.xml&targetModel=org.apache.camelamelContext.java:2352)
        at org.apache.camel.quarkus.core.CamelMain.doStart(CamelMain.java:47)
        at org.apache.camel.support.service.ServiceSupport.start(ServiceSupport.java:117)
        at org.apache.camel.quarkus.core.CamelMainRecorder.start(CamelMainRecorder.java:79)
        ... 6 more
Caused by: org.apache.camel.ResolveEndpointFailedException: Failed to resolve endpoint: dozer://simpleMapping?mappingFile=simple-mapping.xml&targetModel=org.apache.camel.quarkus.component.dozer.it.model.CustomerB due to: The targetModel parameter is required for dozer endpoints
        at org.apache.camel.impl.engine.AbstractCamelContext.getEndpoint(AbstractCamelContext.java:803)
        at org.apache.camel.impl.engine.DefaultRouteContext.resolveEndpoint(DefaultRouteContext.java:127)
        at org.apache.camel.reifier.SendReifier.resolveEndpoint(SendReifier.java:41)
        at org.apache.camel.reifier.SendReifier.createProcessor(SendReifier.java.quarkus.component.dozer.it.model.CustomerB due to: The targetModel parameter is required for dozer :34)
        at org.apache.camel.reifier.ProcessorReifier.makeProcessorImpl(ProcessorReifier.java:571)
        at endpoints
        at org.apache.camel.impl.engine.AbstractCamelContext.getEndpoint(AbstractCamelContext.javorg.apache.camel.reifier.ProcessorReifier.makeProcessor(ProcessorReifier.java:537)
        at org.apache.caa:803)
        at org.apache.camel.impl.engine.DefaultRouteContext.resolveEndpoint(DefaultRouteContext.javamel.reifier.ProcessorReifier.addRoutes(ProcessorReifier.java:250)
        at org.apache.camel.reifier.Route:127)
        at org.apache.camel.reifier.SendReifier.resolveEndpoint(SendReifier.java:41)
        at org.apache.cReifier.doCreateRoute(RouteReifier.java:384)
        ... 21 more
Caused by: java.lang.IllegalArgumentExceptamel.reifier.SendReifier.createProcessor(SendReifier.java:34)
        at org.apache.camel.reifier.Processorion: The targetModel parameter is required for dozer endpoints
        at org.apache.camel.component.dozer.Reifier.makeProcessorImpl(ProcessorReifier.java:571)
        at org.apache.camel.reifier.ProcessorReifier.mDozerComponent.createEndpoint(DozerComponent.java:48)
        at org.apache.camel.support.DefaultComponent.akeProcessor(ProcessorReifier.java:537)
        at org.apache.camel.reifier.ProcessorReifier.addRoutes(ProccreateEndpoint(DefaultComponent.java:240)
        at org.apache.camel.impl.engine.AbstractCamelContext.getEndpoint(AbstractCamelContext.java:755)
        ... 28 more
essorReifier.java:250)
        at org.apache.camel.reifier.RouteReifier.doCreateRoute(RouteReifier.java:384)
        ... 21 more
Caused by: java.lang.IllegalArgumentException: The targetModel parameter is required for dozer endpoints
        at org.apache.camel.component.dozer.DozerComponent.createEndpoint(DozerComponent.java:48)
        at org.apache.camel.support.DefaultComponent.createEndpoint(DefaultComponent.java:240)
        at org.apache.camel.impl.engine.AbstractCamelContext.getEndpoint(AbstractCamelContext.java:755)
        ... 28 more

yes it should, if not we may need to refine our process as what Claus did was exactly done to avoid reflection but there may be some edge cases

OK, I can file a Camel JIRA for this, but I suggest to merge the current PR because it's substantial part is the removal of the registration code from the individual extensions.

I would first investigate case by case as we should not register for reflection classes that are not required

Created https://issues.apache.org/jira/browse/CAMEL-14263


[BUG] Excel Reference files produce errors when containing certain functions

When attaching an Excel file as a Reference, if the sheet contains the function SWITCH, no rows will load and the reference data will be blank.
This does not happen with all functions - for example, IF statements load correctly (if anyone else runs into this problem before it is fixed, a complex IF statement can theoretically replace SWITCH with the same functionality)
This also only affects that spreadsheet. Other spreadsheets in the same file will still load correctly

Interesting! I did not realize SWITCH was a newer function of Excel (as of Excel 2019) - Microsoft Site on SWITCH. It is likely the open source functionality to read Excel files included in CardMaker is old enough to not recognize/support it either (ClosedXML).
As a workaround (for now), can you use the switch logic provided in the CardMaker application?
#(switch;key;keytocheck1;value1<repeat>)#

(see the manual for more info)

This appears to be functional after an upgrade to the latest ClosedXML. Check it out in the latest pre-release CardMaker v.<IP_ADDRESS>-unstable.v.a7


panic: runtime error: invalid memory address or nil pointer dereference

What did you do?
Restarted prometheus
What did you expect to see?
Started prometheus
What did you see instead? Under which circumstances?
Environment
Linux

System information:

Linux 4.4.0-38-generic x86_64

Prometheus version:

prometheus, version 1.3.0 (branch: master, revision: 18254a172b1e981ed593442b2259bd63617d6aca)
  build user:       root@d363f050a0e0
  build date:       20161101-17:06:27
  go version:       go1.7.3

Prometheus configuration file:

insert configuration here

Logs:

INFO[0726] All requests for rebuilding the label indexes queued. (Actual processing may lag behind.)  source=crashrecovery.go:528
INFO[0726] Checkpointing fingerprint mappings...         source=persistence.go:1372
INFO[0726] Done checkpointing fingerprint mappings in 99.016883ms.  source=persistence.go:1395
WARN[0726] Crash recovery complete.                      source=crashrecovery.go:151
INFO[0726] 98806 series loaded.                          source=storage.go:359
INFO[0726] Starting target manager...                    source=targetmanager.go:76
INFO[0726] Listening on :9090                            source=web.go:240
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x10 pc=0x637b3a]

goroutine 275 [running]:
panic(0x1764a00, 0xc4200140a0)
	/usr/local/go/src/runtime/panic.go:500 +0x1a1
regexp.(*Regexp).FindStringSubmatchIndex(0x0, 0x0, 0x0, 0x7, 0x1, 0x0)
	/usr/local/go/src/regexp/regexp.go:922 +0x7a
github.com/prometheus/prometheus/relabel.relabel(0xc44612d440, 0xc420037a80, 0xc44612d440)
	/go/src/github.com/prometheus/prometheus/relabel/relabel.go:59 +0x6e3
github.com/prometheus/prometheus/relabel.Process(0xc420064e40, 0xc420483620, 0x3, 0x3, 0x6)
	/go/src/github.com/prometheus/prometheus/relabel/relabel.go:35 +0x158
github.com/prometheus/prometheus/retrieval.populateLabels(0xc420064e40, 0xc4204d4480, 0xc481be8c70, 0xc476d043a8, 0x0, 0x1)
	/go/src/github.com/prometheus/prometheus/retrieval/targetmanager.go:461 +0x39e
github.com/prometheus/prometheus/retrieval.targetsFromGroup(0xc420064c60, 0xc4204d4480, 0x0, 0xc4204e6d00, 0x1, 0x0, 0xc495381130)
	/go/src/github.com/prometheus/prometheus/retrieval/targetmanager.go:523 +0x1b1
github.com/prometheus/prometheus/retrieval.(*targetSet).runProviders.func1(0xc452d13510, 0xc498ebbec0, 0xc495381a40, 0xc452d13520, 0xc452d13508, 0x8, 0x2426580, 0xc45741ece0)
	/go/src/github.com/prometheus/prometheus/retrieval/targetmanager.go:298 +0x4d6
created by github.com/prometheus/prometheus/retrieval.(*targetSet).runProviders
	/go/src/github.com/prometheus/prometheus/retrieval/targetmanager.go:330 +0x2dc

Can you include your config file please, in particular all relabel stanzas?

all relabel_configs of such type
  relabel_configs:
    - source_labels: [__address__]
      regex: (.*)(:80)?
      target_label: __param_target
      replacement: ${1}
    - source_labels: [__param_target]
      regex: (.*)
      target_label: instance
      replacement: ${1}
    - source_labels: []
      regex: .*
      target_label: __address__
      replacement: <blackbox1>:9115

  relabel_configs:
    - source_labels: []
      regex: .*
      target_label: __address__
      replacement: <address>
    - source_labels: []
      regex:
      target_label: instance
      replacement: <needed value>
    - source_labels: []
      regex:
      target_label: job
      replacement: <needed value>

after asking for relabel_configs I suppose that the problem with latest one. I will also try redefine these parts.

Hmm, I think your problem is the empty regexes in the last two actions. Try removing those.


Timon/scope filter stats window

Checklist

[x] I have read the Contributor Guide
[x] I have read and agree to the Code of Conduct
[x] I have added a description of my changes and why I'd like them included in the section below

Description of Changes
Adds a scope filter, similar to flamegraph filter, to the stats panel.

Moves the Filter component out of the flamegraph file.
Implements the Filter component for the stats file to filter scopes.

Demo

I am not sure how serialization works. The current options seem to implement serde but they dont seem to be saved anywere.


[cli] print query result without additional message

What changed?
Query result will be printed without leading message "Query result as JSON"

Why?
Previously, this message prevented to pipe result to different tools like jq

How did you test it?
unit test

Potential risks

Coverage decreased (-0.02%) to 68.664% when pulling 7635f8e1fcf843fca05a4ab2221cac6c9a83833b on mantas-sidlauskas:json into befd8954e06a1ee178d6d3eb168628282053d95d on uber:master.


Don't define JENV_DIR from the 1st 'java' file param

This logic originates from one of the first ever commits of jenv:
c6819eaf6a60dc4e8ba1cb2de48dfb9eba4547b0.
I'm not sure what justifies this behaviour, but there have been at least
two issues reporting this as breaking expectations: #151 and #162.
So I'm proposing removing it with this patch.
Fixes #151. Fixes #162.

WDYT @gcuisinier? Is this a mistake?

Sorry @gcuisinier, any thoughts? I'm happy to do more investigation here if you have any ideas.


Bug: MockBuilder ignores originally provided mock service

Description of the bug
MockBuilder(ServiceToTest, SomeService).mock(SomeService) shouldn't throw an error.
An example of the bug
Link: https://codesandbox.io/s/vibrant-mclaren-yw2j29

v14.1.2 has been released and contains a fix for the issue. Feel free to reopen the issue or to submit a new one if you meet any problems.


Thank you!

@sonalkum @Sreyan88 Hello,
I just wanted to thank you for this model! It's very nice and I think I will be able to put it to good use for my research and projects :)
I have a few questions though...

What is the difference between GAMA and GAMAIT? Can you elaborate in detail as it was not very clear to me?

What is the maximum length of audio that can be analyzed? 10sec?

Can you provide a streamlined inference demo colab notebook so that its easier to setup and run?

Thank you very much.
Sincerely,
Alex

Hi @asigalov61, thank you for your appreciation.

GAMA-IT is GAMA instruction tuned on CompA-R dataset.
Yes, maximum length of audio that can be analyzed is 10 seconds.
You can use https://github.com/Sreyan88/GAMA/blob/main/gama_inf_single_audio.py for inferring on single audio and can use this code with notebooks as well.

@sonalkum Thank you very much for your responses :)


Drop support for Scala 2.9

This won't work while twirl is being cross-built against scala 2.9. The new method was added in 2.10. You can see this with:
sbt ++2.9.3 compile

[error] twirl/compiler/src/main/scala/play/twirl/compiler/TwirlCompiler.scala:458: value reportThrowable is not a member of scala.tools.nsc.interactive.Global
[error]           PresentationCompiler.global.reportThrowable(new Throwable("Timeout in getFunctionMapping"))
[error]                                       ^
[error] twirl/compiler/src/main/scala/play/twirl/compiler/TwirlCompiler.scala:463: value reportThrowable is not a member of scala.tools.nsc.interactive.Global
[error]               PresentationCompiler.global.reportThrowable(new Throwable("Throwable in getFunctionMapping", t))
[error]                                           ^

We could probably add this method implicitly just for scala 2.9, to get rid of the deprecation warning. But we may just drop scala 2.9 support anyway, as it doesn't support jdk 8.

My vote is to drop Scala 2.9, the existing Twirl releases are more than adequate.

@jroper @pvlugter I updated this PR to start removing support for 2.9. The build seems to be failing for a reason that is unrelated to my change

@benmccann try rebasing on master. A few more changes were needed for the bump to play 2.4.0-M3 in the docs project that you made the other day.

I think some more changes are needed to build.sbt to remove the 2.9 cross-building.
I'm not sure about this, but should we bump to Twirl 1.1.0?

@richdougherty sounds good to me.

@pvlugter what do you think? Can we merge this PR?

The PR as it stands only removes the scripted test. The build file needs to be updated to remove 2.9 cross building. Also the 2.9 specific source directories should be removed too.

Closing this in favor of #74.


Internal Error – 500 – when trying to log in with sessions in memcached

Changed [session.PROVIDER] to memcached, can't login anymore. Restored back to memory and it works again.

Check gitea.log for errors


Closes #1173: Variable support for font size, weight, and gradient color stops

Hmm, roborazzi is failing for not only the variant properties test, but for the eight variable test images that I updated in this PR.

Hmm, roborazzi is failing for not only the variant properties test, but for the eight variable test images that I updated in this PR.

Logged in #1186. We'll have to just ignore it until I can implement a fix.


Execute multiple rpcs in a test case for testing different param values

Example
- testcase:
      name: if_ethernet_duplex_mode
      id: 2
      description: >
          This test is to define the duplex mode in an interface.
      rpcs:
          - template: if_ethernet_duplex_mode.xml
            target: candidate
            operation: edit-config
            commit: true
            params:
                   name: "GigabitEthernet0/0/0/4"
                   duplex_mode: "FULL"
      rpcs:
          - template: if_ethernet_duplex_mode.xml
            target: candidate
            operation: edit-config
            commit: true
            params:
                   name: "GigabitEthernet0/0/0/4"
                   duplex_mode: "HALF"

Implemented in #97


Instructions for building for Nvidia cards incorrect in readme

cmake statement should be
cmake -DBUNDLE=cudaminer ..

thanks. fixed


🐛 inconsistent behavior of unused exports with --fix flag

Prerequisites

[X] I'm using the latest version
[X] I've read the relevant documentation
[X] I've searched for existing issues
[X] I've checked the list of known issues
[X] I've read the issue reproduction guide

Reproduction url
https://stackblitz.com/edit/knip-fix-example-y2fu4h2n?file=re-export.js&view=editor
Reproduction access

[X] I've made sure the reproduction is publicly accessible

Description of the issue
Hi!
I’ve encountered an issue related to the detection of unused exports.
Description
When running Knip on the following code without the --fix flag, no issues are reported:
import { A } from './export.js';
A;
export { A } from './export.js';

However, when running Knip with the --fix flag, it correctly detects that A is an unused export.

Expected Behavior
Knip should identify unused exports, regardless of whether the --fix flag is used.
Potential Fix
While reviewing the codebase, I noticed the following line in the collectUnusedExports function:
if (!isFix && exportedItem.isReExport) continue;

Link to the line of code
It seems that re-exports are being excluded unless the --fix flag is used. Maybe we need to adjust the logic to ensure that re-exports are not excluded during the collection of unused exports?

In this small example it may look a bit silly, but the logic is for larger reports where it's not convenient to have duplicates (i.e. re-exports) reported of essentially the same export.
The fix mode removes exports including re-exports, and that's what you're seeing in this minimal example. Note that the includeEntryExports flag is of influence here as well.
While I agree this might be confusing at times, I think the current behavior makes sense. Would you agree? Maybe there are ways we could improve? With better output, or in docs perhaps.

Thank you for the explanation. To simplify things, I’ve created a refined reproduction that focuses solely on the issue we discussed (without the  includeEntryExports flag).
I agree that avoiding duplicate re-exports in reports is convenient for larger projects. However, IMHO, I still think the behavior should be consistent, and the detailed reports are acceptable—similar to how users expect many issues to be reported when running Knip for the first time.
That said, refining the documentation to clarify this behavior would also work for me.
Would it also make sense to introduce a flag to control whether re-exports are ignored?


V0.1.6 bug fixes

Issue #, if available:
#70
#35
#137
#139
Description of changes:
Quick bug fixes for the v1.6.0 release
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Tests were performed manually to verify each bug fix. I am not including automated test results here because none of the new code is covered by those tests.


Tooltip Displaying Value for Wrong GLineSeries Intermittently

Instructions: replace text surrounded by '*' with your case, please delete this line.
Create chart with 2 GLineSeries and Labels. Use the following style for the tooltip:
        <lvc:CartesianChart.Resources>
            <Style TargetType="lvc:DefaultTooltip">
                <Setter Property="ShowTitle" Value="True"></Setter>
                <Setter Property="ShowSeries" Value="False"></Setter>
                <Setter Property="FontSize" Value="12"></Setter>
                <Setter Property="FontWeight" Value="Bold"></Setter>
                <Setter Property="Height" Value="45"></Setter>
                <Setter Property="BorderThickness" Value="0"></Setter>
            </Style>
        </lvc:CartesianChart.Resources>

Extra notes
When hovering over various points in the second GLineSeries, sometimes the correct value is displayed and sometimes the value from the first series is displayed in the tooltip. Images are attached.

I am using

Live-Charts version
LiveCharts.Geared <IP_ADDRESS>

.Net Version
4.6.2

Windows
Windows 10

I 'fixed' this by settings the SelectionMode to OnlySender, so not really a bug.
        <lvc:CartesianChart.Resources>
            <Style TargetType="lvc:DefaultTooltip">
                <Setter Property="ShowTitle" Value="True" />
                <Setter Property="ShowSeries" Value="False" />
                <Setter Property="SelectionMode" Value="OnlySender" />
                <Setter Property="FontSize" Value="12" />
                <Setter Property="FontWeight" Value="Bold" />
                <Setter Property="Height" Value="45" />
                <Setter Property="BorderThickness" Value="0" />
            </Style>
        </lvc:CartesianChart.Resources>

Thanks,
James

Just realized that the label values are not included in the tooltip now. I'll have a look at the LiveCharts source code and see if I can work it out.
Thanks,
James


Find configuration files with ".yml" suffix

Goals

[ ] When looking for the default configuration file, in addition to files ending with ".yaml" also consider ".yml".

[ ] If both are present, prefer ".yaml" over ".yml".

[ ] All TODO#32 comments are addressed.

Estimate: ❓h

I will make a PR for this soon.


What is the current state of this project?

Is it deprecated in favor of https://gitlab.com/tim-m89/clr-haskell/?

Yes

Yes

And I guess, clr-haskell covers most of the functionality in http://hackage.haskell.org/package/hs-dotnet/?


Add get_solargis iotools function

[ ] Closes #xxxx
[x] I am familiar with the contributing guidelines
[ ] Tests added
[x] Updates entries in docs/sphinx/source/reference for API changes.
[x] Adds description and name entries in the appropriate "what's new" file in docs/sphinx/source/whatsnew for all changes. Includes link to the GitHub Issue with :issue:`num` or this Pull Request with :pull:`num`. Includes contributor name and/or GitHub username (link with :ghuser:`user`).
[x] New code is fully documented. Includes numpydoc compliant docstrings, examples, and comments where necessary.
[ ] Pull request is nearly complete and ready for detailed review.
[x] Maintainer: Appropriate GitHub Labels (including remote-data) and Milestone are assigned to the Pull Request and linked Issue.

This PR adds a fetching function for Solargis irradiance data. Given that such functions for SolarAnywhere and Solcast has been added in the previous release, it seems fitting to also have it for Solargis.

@kandersolar The data returned from Solargis is in XML format, thus the lxml python package is required. Can that be added to the pvlib's list of optional packages?

I’m okay with including lxml. Another option is the built-in Python module xml.etree.ElementTree but I don’t recommend it.

Can we get away with using the standard library by specifying parser='etree' in pd.read_xml? If not, I'm also fine with adding lxml to the optional dependencies.

Works like a charm! Thanks 😄

Two things I don't like is the summarization naming (e.g., '5_MIN', 'HOURLY'). For the CAMS functions we use the name "time_step". Also, perhaps we should allow for the time steps to follow the ISO 8601 naming convention by mapping with this dictionary:
 {'PT05M': 'MIN_5', 'PT10M': 'MIN_10', 'PT15M': 'MIN_15', 'PT30': 'MIN_30', 'PT60M': 'HOURLY', 'PT1H': 'HOURLY', 'P1D': 'DAILY', 'P1M': 'MONTHLY', 'P1Y': 'YEARLY'}

Last, I don't like how the irradiance units change depend on the time step:

The variable units depend on the time frequency, e.g., the unit for sub-hourly irradiance data is W/m^2, for hourly data it is Wh/m^2, and for daily data it is kWh/m^2.


Poses of microwave and hingecabinet

Hi,
I'm converting the Mujoco kitchen scene to a different format. Unfortunately, the result doesn't look like what is shown in the paper/on the website:  (see poses of the "microwave" and "hingecabinet")

Where can I find the true transformations for the microwave and hingecabinet?
Thanks!

Hi,
You could maybe take a look at this file in the adept_envs repo, which contains all of the transformations for each of the components: https://github.com/google-research/relay-policy-learning/blob/master/adept_models/kitchen/kitchen.xml

Thanks! Yes, I used that file when converting to URDF. But these transforms do not match the image (seen above) for the microwave and hingecabinet (actually also the the sliding cabinet, but this translation mismatch is smaller).
Another dummy check you can do: The microwave is clearly not aligned with any world axis, i.e. its orientation in euler angles can't be a multiple of pi/2. But there is no such number in the xml files (at least I can't find any). Where are the correct transforms for these objects defined?

Perhaps you could re-raise this issue in the adept_envs repo? (https://github.com/google-research/relay-policy-learning/issues) I'm personally not familiar with the details of the environment, so maybe the developers of it could help you more.
Doing some more searching, it looks like there's another location where the microwave is defined here which is not axis-aligned: https://github.com/google-research/relay-policy-learning/blob/master/adept_envs/adept_envs/franka/assets/franka_kitchen_jntpos_act_ab.xml#L78


Add travis configuration

The fields in this config are described here: https://docs.travis-ci.com/user/languages/rust/

Try this (update the protobuf version):
# need be superuser so as to successfully compile & install protobuf library
sudo: true

# make sure protobuf library is installed for build to succeed
install:
  - wget https://protobuf.googlecode.com/files/protobuf-2.4.1.tar.gz
  - tar -xzvf protobuf-2.4.1.tar.gz
  - cd protobuf-2.4.1
  - ./configure --prefix=/usr
  - make
  - make check
  - sudo make install
  - cd ./../

Might work with apt install. On my Ubuntu machine I am getting
"protobuf-compiler is already the newest version (3.0.0-9.1ubuntu1).", thus it should probably get 3+.
Although when you google "protobuf 3 install", there is a sea of posts describing how to install it manually. No idea if there is a reason behind it.


Possible bug in Freebayes getting stuck while assessing the genotype at one position

Hello,
I noticed Freebayes missed a call at position chr9:133738406 and from this point on it skipped also other calls, which are clearly visible from the bam file. Here what I see in the log file and with IGV at that position and at another position which should be called.
filtered genotype alleles
built haplotype alleles, now there are 1 genotype alleles
reference:17485M:133738405:17485:CCGTGAAGACCTTGAAGGTAGGCTGGGACTGCCGGGGGTGCCCAGGGTACGTGGGGCAAGGCGTCTGCTGGCATTAGGCGATGCATCTGCCTGGAAGTCTACCTCCTGCCTGCTGTCCGAGGGCTTCATTGGCGCCACGGAATTGACTTTTCCGTCTTATATCATTCCTGTGTCTTTGTAGGAGTGGAATCATTCTCATAGTCCGAGTGTGTTTCCACATATGGTGAGAGCTGACAAGCATGGAGGGGTTTTGGTGTAAAAAGATTAGTCATTTGGAGAGGTTTTCTCATTTTATGGCAAGGTTCTTTTAAAGCCGTGGATTTCCATGCTGTTCGTGCGG [...]TCTGCCCTCCTCGGCCTCCCAAAGTGCTGGGATTACAGGCGTGAGCCACCACACCCAGCAGTCTCTTCAGTGTATTTAGCTGTGTTGATCCTGATTCATCTGATGGGTGAAGGAATATTGGAAATAAGGATAATCCCTGTGGTGTTTC
no alternate genotype alleles passed filters at chr9:133738405
processing position 133738407 in sequence chr9
processing position 133738408 in sequence chr9
processing position 133738409 in sequence chr9
processing position 133738410 in sequence chr9
processing position 133738411 in sequence chr9
processing position 133738412 in sequence chr9
processing position 133738413 in sequence chr9
processing position 133738414 in sequence chr9
processing position 133738415 in sequence chr9
processing position 133738416 in sequence chr9

I mapped trimmed fastq reads agains hg19 using STAR and then I performed Freebayes call using this command:
$ freebayes --bam input.bam --fasta-reference genome.fa --report-all-haplotype-alleles --region chr9:133738380-133747600 --min-coverage 400 --min-alternate-fraction 0.008 --pooled-continuous > output.vcf

I also tryed to play around by removing --pooled-continuous, adding --legacy-gls --min-repeat-entropy 0 --use-best-n-alleles 4 (all together) and using different versions (version v1.2.0 and v1.3.2-dirty). Nothing has changed except for the running time, that is faster with the newest version. I hope I gave all the necessary information, would be great to solve the problem!
Attached also the entire log file.
log_issue.txt.gz

This is unexpected. Would you be able to share the data from one failing
case?
On Fri, Apr 17, 2020, 18:23 valeandri<EMAIL_ADDRESS>wrote:

Hello,
I noticed Freebayes missed a call at position chr9:133738406 and from this
point on it skipped also other calls, which are clearly visible from the
bam file. Here what I see in the log file and with IGV at that position and
at another position which should be called.
filtered genotype alleles
built haplotype alleles, now there are 1 genotype alleles
reference:17485M:133738405:17485:CCGTGAAGACCTTGAAGGTAGGCTGGGACTGCCGGGGGTGCCCAGGGTACGTGGGGCAAGGCGTCTGCTGGCATTAGGCGATGCATCTGCCTGGAAGTCTACCTCCTGCCTGCTGTCCGAGGGCTTCATTGGCGCCACGGAATTGACTTTTCCGTCTTATATCATTCCTGTGTCTTTGTAGGAGTGGAATCATTCTCATAGTCCGAGTGTGTTTCCACATATGGTGAGAGCTGACAAGCATGGAGGGGTTTTGGTGTAAAAAGATTAGTCATTTGGAGAGGTTTTCTCATTTTATGGCAAGGTTCTTTTAAAGCCGTGGATTTCCATGCTGTTCGTGCGG [...]TCTGCCCTCCTCGGCCTCCCAAAGTGCTGGGATTACAGGCGTGAGCCACCACACCCAGCAGTCTCTTCAGTGTATTTAGCTGTGTTGATCCTGATTCATCTGATGGGTGAAGGAATATTGGAAATAAGGATAATCCCTGTGGTGTTTC
no alternate genotype alleles passed filters at chr9:133738405
processing position 133738407 in sequence chr9
processing position 133738408 in sequence chr9
processing position 133738409 in sequence chr9
processing position 133738410 in sequence chr9
processing position 133738411 in sequence chr9
processing position 133738412 in sequence chr9
processing position 133738413 in sequence chr9
processing position 133738414 in sequence chr9
processing position 133738415 in sequence chr9
processing position 133738416 in sequence chr9
[image: image]
https://user-images.githubusercontent.com/63858464/79575052-6f259980-80c1-11ea-981a-a610e49aa409.png
[image: image]
https://user-images.githubusercontent.com/63858464/79575236-c297e780-80c1-11ea-8a70-724b5c05fe89.png
I mapped trimmed fastq reads agains hg19 using STAR and then I performed
Freebayes call using this command:
$ freebayes --bam input.bam --fasta-reference genome.fa --report-all-haplotype-alleles --region chr9:133738380-133747600 --min-coverage 400 --min-alternate-fraction 0.008 --pooled-continuous > output.vcf
I also tryed to play around by removing --pooled-continuous, adding --legacy-gls
--min-repeat-entropy 0 --use-best-n-alleles 4 (all together) and using
different versions (version v1.2.0 and v1.3.2-dirty). Nothing has changed
except for the running time, that is faster with the newest version. I hope
I gave all the necessary information, would be great to solve the problem!
Attached also the entire log file.
log_issue.txt.gz
https://github.com/ekg/freebayes/files/4493767/log_issue.txt.gz
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/ekg/freebayes/issues/613, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABDQEJSSYAJXLFKYILZLZDRNB7AHANCNFSM4MK36HRQ
.

Hello Erik,
thank you for considering my issue! I just sent you an email with the bam file I used for the call. Hope this helps!

Hello Erik,
I was just wondering if you managed to work on this. I hope you received my email with the data.


Cannot set expiration with SET command

package main

import (
	"fmt"

	"github.com/fzzy/radix/redis"
)

func main() {
	c, err := redis.Dial("tcp", ":6379")
	if err != nil {
		panic(err)
	}
	r := c.Cmd("SET", "a", "a", "EX 3600")
	fmt.Println(r.Err)
}

On my machine, this program outputs: ERR syntax error. While it works fine if I remove the "EX 3600" parameter.
My Redis version:
$ redis-server --version
Redis server v=2.8.4 sha=00000000:0 malloc=jemalloc-3.4.1 bits=64 build=a44a05d76f06a5d9
$ redis-cli
<IP_ADDRESS>:6379> SET a a EX 3600
OK

I just found that it works when I use c.Cmd("SET", "a", "a", "EX", "3600"). Is it intended?

This isn't really to do with the driver, it's simply how redis works. Your
command is sent to redis as an array. When using redis-cli it automatically
splits into an array on spaces (unless you explicitly wrap in quotes),
while in the driver your simply giving the array elements
On Tue, Jul 7, 2015, 5:21 AM Alexandre Cesaro<EMAIL_ADDRESS>wrote:

I just found that it works when I use c.Cmd("SET", "a", "a", "EX", "3600").
Is it intended?
—
Reply to this email directly or view it on GitHub
https://github.com/fzzy/radix/issues/67#issuecomment-119134840.

Ok but in the Redis doc, setting the expiration looks like one argument not two. I think there should be an example somewhere in the doc because it is not very intuitive.

Unfortunately the redis project and its documentation are separate from
this one, so I can't really make any changes to their docs. I could modify
the docs for radix a bit maybe, I just don't want to over document
On Tue, Jul 7, 2015, 11:01 AM Alexandre Cesaro<EMAIL_ADDRESS>wrote:

Ok but in the Redis doc, setting the expiration looks like one argument
not two. I think there should be an example somewhere in the doc because it
is not very intuitive.
—
Reply to this email directly or view it on GitHub
https://github.com/fzzy/radix/issues/67#issuecomment-119230367.

I am not sure adding one sentence in Cmd description and / or adding one more command in the "Cmd and Reply" example would be over documenting :-)
That is your call, but I am quite confident it would help other people.

So what I did was went ahead and replaced one of the examples in the Cmd and Reply section with one which demonstrates this behavior better. If more people come forward having this issue I'll go ahead and add a more explicit explanation of what's going on. Thanks for submitting the issue!

Perfect :+1:


refactor roi_max_align_2d and roi_average_align_2d

@Hakuyume can you review this?

@Hakuyume kindly ping.

jenkins, test this please

Jenkins CI test (for commit 24841c9473d83ee381452524ba1218a40f910140, target branch master) failed with status FAILURE.

Jenkins, test this please.

Jenkins CI test (for commit 679e76b069e9f1789817cae9c0c18fb91e94f37b, target branch master) failed with status FAILURE.

Jenkins, test this please.

Jenkins CI test (for commit 679e76b069e9f1789817cae9c0c18fb91e94f37b, target branch master) failed with status FAILURE.

The Jenkins failure
tests.chainer_tests.functions_tests.connection_tests.test_convolution_nd.TestConvolutionND_use_chainerx_false__chainerx_device_None__use_cuda_true__cuda_device_0__use_cudnn_always__cudnn_deterministic_false__autotune_false__cudnn_fast_batch_normalization_false__use_ideep_never_param_80_{b_dtype=float32,  dims=(3, 4, 3), autotune=False, cover_all=False, groups=1, dilate=1,  nobias=True, contiguous='C', W_dtype=float32,  x_dtype=float32}.test_backward

is unrelated to the PR.


108 implement coordinates generically for references to built in structs

Codecov Report

Merging #109 (d0539ad) into main (c2df702) will decrease coverage by 1.03%.
The diff coverage is 63.82%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
@@            Coverage Diff             @@
##             main     #109      +/-   ##
==========================================
- Coverage   97.77%   96.74%   -1.03%
==========================================
  Files          30       30
  Lines        6012     6200     +188
==========================================
+ Hits         5878     5998     +120
- Misses        134      202      +68

Files Changed
Coverage Δ

src/types/record/stranded_genomic_interval.rs
87.28% <57.69%> (-12.72%)
:arrow_down:

src/types/record/genomic_interval.rs
85.71% <65.21%> (-14.29%)
:arrow_down:

src/types/record/named_interval.rs
79.62% <65.21%> (-5.72%)
:arrow_down:

src/types/record/interval.rs
87.03% <68.18%> (-12.97%)
:arrow_down:


[google_maps_flutter] Convert to Pigeon

Part of https://github.com/flutter/flutter/issues/117844
This is a case where we may want to build more instance-tracking functionality into Pigeon itself before doing a conversion, since we currently use per-instance channels.

[ ] google_maps_flutter_android
[ ] google_maps_flutter_ios

This is a large enough API surface that it would almost certainly be best done incrementally, by converting parts of the API in individual PRs.

Heatmaps are all that's left now. Migrating those will let us clean up a fair number of JSON conversion utility methods on the native sides, but now that almost everything is converted there's much less chance of someone adding new code starting off following the wrong pattern by looking at the existing code, so that last step is low priority.


Illogical water capacity display

Device: BWT Perla
Version: 2.0209
Hello, I installed the integration a few days ago and noticed some discrepancies in the displayed water capacity in HA compared to the readings on the display of the system. What do the values in the integration mean?

Interesting observation, I never checked it, I can reproduce it.
Regarding the other values, the BWT device shows treated water, while app and integration show blended water (more about the difference in #5).
But for the capacity it seems to be something different.
The documentation states:

Rest-Kapazität von Säule 1 (Vollenthärtetes Wasser)

so I just assumed the same formula applies here. To find the correct formula, we probably need to collect a few more datapoints:

BWT
Integration
Hardness In
Hardness Out

325
8432
21
4

178
4626
21
4

14
406

257
7178

@Nitrox912 can you send your hardness in and out values, so I can add them to the table and play around with it?

I might have found a pattern, still need to fully confirm it: The API value / hardness_in = BWT display value .
Now the interesting part is, what's the most useful value for users? Are the values shown on the BWT actual remaining capacities, meaning if they are zero it needs to refresh? If so they would be interesting and I could calculate them from the API values.

In my system, the hardness in is set to 23 and the hardness out is set to 4.
This specification has the highest value to determine how much water each respective column can still soften before it needs to regenerate. I would prefer the value displayed by the BWT device in the integration.
However, I have no idea if the values even interest anyone. It was just about traceability for me.

Thanks, it confirms my assumption. Based on past values from my device I can confirm the BWT shows the amount of water each column can still treat to 0°dH.
I feel, to make it consistent with the other values, I should calculate the amount of blended water a column can still produce. Then it matches the output values, difference in output = difference in sum of capacities.
I start the implementation. For future reference, the formula I came up with is raw / (hardness_in - hardness_out) and it matches past values.

I released version v0.5.1 with the newly calculated values. Thanks for bringing it up.


Changes required to build on Debian 11 "Bullseye"

FWIW, to avoid errors (missing libs) at the linker stage, I had to replace -lcrypto.1.1 with -lcrypto and -lssl.1.1 with -lssl. This fixes the following errors:
/usr/bin/ld: cannot find -lssl.1.1
/usr/bin/ld: cannot find -lcrypto.1.1

After that, there was another error:
/usr/bin/ld: CMakeFiles/io.dir/apib_iothread.cc.o: undefined reference to symbol 'pthread_create@@GLIBC_2.2.5'
/usr/bin/ld: /lib/x86_64-linux-gnu/libpthread.so.0: error adding symbols: DSO missing from command line

This was fixed by adding the -pthread flag in the linker stage.

I'm glad that you all had a chance to work on this. Is there a chance that either of you could contribute a PR for the necessary changes to the cmake stuff? I'm no longer at Apigee or Google and I'm not sure that I'll be able to merge them, but if no one responds I may fork this project since I still use it in other contexts!