Describe the goals of the quickstart

We should describe goals of the quickstart.

I think it’s not obvious what we are going to do in the beginning of the quickstart. I think we should describe the goals of the quickstart. For example. “In this quickstart tutorial we are going to setup environment for development custom drupal module with Drupal 7.”

When user opens QuickStart page, he should understand what we will have as results(e.g. CI server, repository with Drupal 7 and automated builds).

https://github.com/propeoplemd/cibox/wiki/QUICKSTART


Wrap on multi-caching

Hello,
in file lib/multi_caching.js line 242, I think that not calling callbackFiller.fill(key, err, data) on non cacheable values, can cause queued callbacks to hang.

Thanks.  Maybe this is related to https://github.com/BryanDonovan/node-cache-manager/issues/89

Fixed in 2.6.0


Readme - Yarn Over NPM

In the Develop Application section of the readme.md , you say to run the app with npm start.. It looks like in the Dockerfile you use yarn instead..  To avoid bundling the app with both yarn and npm I'd recommend to change the phrase in the Develop Application section from:

If you run npm start in the app

To

If you run yarn start in the app

nevermind I had a fluke with using yarn... it's all good!


Test fix to current bug

Some update of spack no longer allows the format we have, see https://github.com/rse-ops/docker-images/actions/runs/3425206991/jobs/5705770256#step:8:85.  I am attempting a fix by doing spack add, spack install

Ok this is actually fine to merge - that one build always has failed.


[RFR] Changed the way the renaming works (proposal)

This pull-request is only a suggestion, feel free to discard it if you do not agree with the way it works or the even the achieved goal.
So right now, the script renames the file by appending the lego_ prefix to it, so that path/to/file.jpg becomes path/to/lego_file.jpg. It works great, except it doesn’t preserve the file order when there are a lot of files in a folder, because of the filename prefix. My proposal would rename the file like so: path/to/file.lego.jpg, so that the converted file would live next to the original in the finder (or equivalent file browser).
The code is pretty self explanatory I guess, but I added comments just in case. I am no Python guru, so if anything can be optimised, be sure to tell.
Edit: I LOVE THIS PROJECT!

This is already in another PR that I should really merge. It appends _lego to the filename, pretty similar to your solution. #54
I'm glad you like the program :D


doc unclear at https://docs.scipy.org/doc/numpy/reference/generated/numpy.interp.html

"Returns the one-dimensional piecewise linear interpolant to a function" doesn't look right - I think it should be "Returns the one-dimensional piecewise linear interpolant to a function, evaluated at x".
Also, "The x-coordinates of the interpolated values" should be "The x-coordinates of the points at which to calculate the interpolated values".

Please report this to numpy's issue tracker:
https://github.com/numpy/numpy/issues


[10.x] collection shift can not handle an empty collection

Laravel Version
10.48.13
PHP Version
8.3.8
Database Driver & Version
No response
Description
A recent addition to Collection::shift() causes it to throw an exception when running on a empty collection.
Will provide a PR to fix this issue.
Steps To Reproduce

create a collection with two objects
call shift() three times on it and assign it to variables
dump a property of the object for every variable
it will throw an exception saying it can not call the property on a collection

I thought that this was automatically closed upon the merge of the PR. Guess I did something wrong 🤡


[924] Adding and listing providers

Context
https://trello.com/c/VDJ1ZLMM/930-m-basic-ui-for-adding-providers
Changes proposed in this pull request
This PR includes:

A providers index page, listing all providers and links to their (empty) show pages
A link to add a new provider
A new provider page with basic form
A ProviderPolicy that restricts all routes to system admins
A link in the nav bar to 'Providers' that shows only for system admins

Plus: A Very Basic Design!

Guidance to review
Firstly:

Sign in as a system admin
Click on the 'Providers' link in the nav bar
Check the providers are listed correctly
Click the button 'Add a provider'
Fill out the form
Check validations
Check that a new provider is created

Secondly:

Sign in as a non-system admin
Check that the link in the nav bar is hidden
Check that you can't access the provider pages via URL

 [M] Basic UI for adding providers

 [M] Basic UI for adding providers

@edwardhorsford - I've added some very basic 'design' to these two pages. Let me know what you think / what you'd like to tweak!
I've stuck with the 'provider' language for now.

@edwardhorsford - I've added some very basic 'design' to these two pages. Let me know what you think / what you'd like to tweak!
I've stuck with the 'provider' language for now.

@defong review updates here: 3eed469


onnx export using tf2onnx

Hi, I'm trying to export a BERT huggingface ktrain predictor to ONNX. Your code uses keras2onnx which is not actively developed anymore and frozen to TF2.3. Apparently, tf2onnx is the way to go with a similar API with tf2onnx.convert.from_keras() replacing keras2onnx.convert_keras().
Unfortunately, it doens't work out of the box. Running this modified code I get TypeError: Invalid input_signature tf_bert_for_sequence_classification_1; input_signature must be a possibly nested sequence of TensorSpec objects..
Any idea on how to fix this? I'd rather not downgrade TF. Thanks.
(btw offtopic question: where do you get the info for the last part in FAQ where you state for what ktrain has been used?)

Hello,
Have you seen this FAQ entry?
Since you're using a Hugging Face model, you can convert to Pytorch and then save to ONNX.  The last time I checked, there was an advantage to doing the intermediate PyTorch conversion. Many ktrain users have successfully deployed lighter-weight ONNX models this way.  No need to downgrade TF.
To your last question, they're from a combination of personal communications and academic citations to either the paper or GitHub repo.


Strange error...

Strange error...

I fixed this in my pull request

@gefero if you are still interested, please checkout and confirm you are cool with this fix.

close this after @hokiegeek2  fix it.


Error: file name too long

On Linux using Pget 0.1.1 installed by linuxbrew I'm getting the following error when I download a binary.
How could we fix it?
$ pget https://github.com/42wim/matterbridge/releases/download/v1.25.0/matterbridge-1.25.0-linux-64bit
Error:
  failed to mkdir for download location: mkdir _a44ac081-f540-4721-ae1f-05c2bdd363cf?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20220502%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20220502T142130Z&X-Amz-Expires=300&X-Amz-Signature=db8edd56f819399d6040d92ced71cba3fa7b2d7b94d5cd6255f33d7e092567f5&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=44820350&response-content-disposition=attachment%3B%20filename%3Dmatterbridge-1.25.0-linux-64bit&response-content-type=application%2Foctet-stream.1: file name too long

I think Pget needs this feature (wget --content-disposition) by default enabled
see https://www.gnu.org/software/wget/manual/wget.html#index-Content_002dDisposition

https://github.com/mirror/wget/blob/aab539bb44b5d7aeb093014c21fd4f4e4e728136/src/http.c#L1221-L1299
CC @Code-Hex


Memory leak when using the optimizer iterations in tf.data.Dataset

Click to expand!
Issue Type
Bug
Source
source
Tensorflow Version
2.9.1
Custom Code
Yes
OS Platform and Distribution
Linux Ubuntu 16.04
Mobile device
No response
Python version
3.8
Bazel version
No response
GCC/Compiler version
No response
CUDA/cuDNN version
No response
GPU model and memory
No response
Current Behaviour?
I am implementing some sort of curriculum learning where I use `tf.data.Dataset.filter(curriculum_fn)` to filter out certain examples during training. This filter depends on the `training_steps` which I get from `optimizer.iterations`.

The function works fine (see code + colab), however, there's a memory leak (RAM and GPU) when doing this like that.

Can you please tell me why or show me a better way of how to get the train steps into my `tf.data.Dataset`?

See Colab
Standalone code to reproduce the issue
import os
from typing import Any, Callable, Dict, Text

import numpy as np
import psutil
import tensorflow as tf
from keras.callbacks import TensorBoard
from keras.optimizers import Optimizer
from tensorflow.python.data.ops.options import AutoShardPolicy

NUM_TRAIN_SAMPLES = 1000
NUM_DEV_SAMPLES = 10

def get_curriculum_fn(optimizer: Optimizer):
    """Method to load the curriculum function based on the optimizer iterations.
    :param optimizer: Instance of tf.keras.optimizers.Optimizer.
    :return:
    """

    def curriculum_fn(example):
        """Creates a function returning True or False depending on the step.

        This function can directly be applied as a predicate in a
        `tf.data.Dataset.filter` method.

        :param example: Dictionary of feature tensors.
        :return: True or False
        """
        # Get constants based on train_step
        step = tf.cast(optimizer.iterations, tf.int64)
        max_score = 0.4
        min_score = 0.0
        step_update = 500
        half_life = 1000

        # curriculum_step
        curriculum_step = tf.floor(step / tf.cast(step_update, tf.int64))

        # Get the min score
        delta = max_score - min_score
        weight = 0.5 ** (
                tf.cast(curriculum_step, tf.float32) / tf.cast(half_life, tf.float32)
        )
        min_score = tf.cast(max_score - delta * weight, tf.float32)
        return example["score"][0] >= min_score

    return curriculum_fn

def get_dataset(split: str, batch_size: int, max_length: int = 64, curriculum_fn: Callable = None):
    # Number generator
    def generator():
        for i in range(num_samples):
            _dims = np.random.randint(low=1, high=max_length, size=1)
            x = np.zeros(_dims, dtype=np.int32) + np.random.randint(low=1, high=5000, size=1)
            y = np.zeros(_dims, dtype=np.int32) + np.random.randint(low=1, high=5000, size=1)
            score = np.random.uniform(low=0, high=1, size=1)
            yield {'sources': x, 'targets': y, 'score': score}

    assert split in ("train", "dev")
    is_training = split == "train"

    num_samples = NUM_TRAIN_SAMPLES if is_training else NUM_DEV_SAMPLES
    options = tf.data.Options()
    options.experimental_distribute.auto_shard_policy = AutoShardPolicy.DATA
    dataset = tf.data.Dataset.from_generator(
        lambda: generator(),
        output_signature={
            'sources': tf.TensorSpec(shape=(None,), dtype=tf.int32),
            'targets': tf.TensorSpec(shape=(None,), dtype=tf.int32),
            'score': tf.TensorSpec(shape=(1,), dtype=tf.float32)
        }
    ).with_options(options=options)

    if is_training:
        dataset = dataset.shuffle(buffer_size=256).repeat()

    # Curriculum Learning
    if curriculum_fn is not None and is_training:
        dataset = dataset.filter(curriculum_fn)

    dataset = dataset.padded_batch(batch_size=batch_size)

    def map_to_example(example):
        sources, targets = example['sources'], example['targets']
        return sources, targets

    dataset = dataset.map(map_to_example, num_parallel_calls=tf.data.AUTOTUNE)
    return dataset.prefetch(tf.data.AUTOTUNE)

def memory_usage_process(pid=None) -> float:
    """Returns the memory used by a specific process
    :param pid: Process id. If omitted, the default is determined by os.getpid().
    :return: the memory used by the current process in MB.
    """
    # return the memory usage in MB
    import psutil

    process = psutil.Process(pid=pid)
    mem = process.memory_full_info().uss / float(2 ** 20)
    return mem

def get_memory_info(logs: Dict[Text, Any] = None) -> Dict[Text, Any]:
    """Returns the memory usage of RAM and GPU memory in MB.
    :param logs: (Optional). If provided, all entries will be appended to the
       existing log. Otherwise, a new log will be created.
    :return: A dictionary containing RAM and GPU memory usage.
    """
    if logs is None:
        logs = {}

    # Get RAM usage
    logs["virtual_memory/used_system [MB]"] = psutil.virtual_memory().used / float(2 ** 20)
    logs["virtual_memory/used_process"] = memory_usage_process(pid=os.getpid())

    # Get GPU memory usage
    physical_devices = tf.config.list_physical_devices("GPU")
    if len(physical_devices) == 0:
        return logs

    for n, device in enumerate(physical_devices):
        device_name = "{}:{}".format(device.device_type, n)
        logs["gpu_memory/{device_name} [MB]".format(device_name=device_name)] = tf.config.experimental.get_memory_info(
            device_name
        )["current"]
    return logs

class MemoryProfilingCallback(tf.keras.callbacks.Callback):
    def __init__(self, tb: TensorBoard, update_freq: int = 100):
        super().__init__()
        self.tb = tb
        self.update_freq = update_freq
        self.batch_time = 0.0

    def on_train_batch_end(self, batch, logs=None):

        # To account for gradient accumulation we ask the optimizer how many gradient
        # updates happened instead of taking the batch-index
        step = int(self.model.optimizer.iterations.value()) - 1

        if step % self.update_freq == 0:
            metrics = {}
            metrics = get_memory_info(logs=metrics)

            # Write logs
            self._write(metrics, step)

    def _write(self, metrics: dict, step):
        # noinspection PyProtectedMember
        with self.tb._train_writer.as_default():
            for name, value in metrics.items():
                tf.summary.scalar(name, value, step=step)

def get_callbacks(log_dir: str):
    _callbacks = []

    # Tensorboard
    tensorboard_cb = tf.keras.callbacks.TensorBoard(log_dir=os.path.join(log_dir, "logs"))
    _callbacks.append(tensorboard_cb)

    # Memory profiler
    _callbacks.append(MemoryProfilingCallback(tensorboard_cb))

    return _callbacks

def main():
    LOG_DIR = "/tmp/memory_leak_curriculum/"

    max_length = 64

    train_batch_size = 64
    valid_batch_size = 16

    optimizer = tf.keras.optimizers.Adam()

    # Model
    inputs = tf.keras.layers.Input(shape=(None,), dtype=tf.int32)
    x = inputs
    x = tf.keras.layers.Embedding(input_dim=5000,
                                  output_dim=64)(x)
    x = tf.keras.layers.Dense(5000)(x)
    model = tf.keras.Model(inputs=inputs, outputs=x)
    model.compile(loss='sparse_categorical_crossentropy', optimizer=optimizer)
    model.summary()

    train_data = get_dataset(
        split="train",
        batch_size=train_batch_size,
        max_length=max_length,
        curriculum_fn=get_curriculum_fn(optimizer=optimizer)
    )

    valid_data = get_dataset(
        split="dev",
        batch_size=valid_batch_size,
        max_length=max_length,
    )

    model.fit(
        train_data,
        epochs=100,
        steps_per_epoch=5000,
        validation_data=valid_data,
        validation_steps=3,
        callbacks=get_callbacks(log_dir=LOG_DIR)
    )

if __name__ == '__main__':
    main()

Relevant log output

@gowthamkpr,
While I was trying to reproduce the issue on tensorflow v2.8, v2.9 and nightly, the code execution time was longer than expected. Kindly find the gist of it here.

@gowthamkpr any updates so far?

Is this issue solvable? Do you need any input from my side?

Hi,
Thank you for opening this issue. Since this issue has been open for a long time, the code/debug information for this issue may not be relevant with the current state of the code base.
The Tensorflow team is constantly improving the framework by fixing bugs and adding new features. We suggest you try the latest TensorFlow version with the latest compatible hardware configuration which could potentially resolve the issue. If you are still facing the issue, please create a new GitHub issue with your latest findings, with all the debugging information which could help us investigate.
Please follow the release notes to stay up to date with the latest developments which are happening in the Tensorflow space.


Initial commit

@vivanec Please move your connector from "custom-connectors" folder to "certified-connectors" as it is going to be certified soon.


override common bulma variables

This change fixes the styling for error messages displayed using Bulma's message types. See the "Panels & Sections" section for a comparison.

It looks like newer versions of parcel minify the CSS file. I can restore it using parcel build --no-optimize, but wanted to get your opinion before going ahead with that. What do you think, @flynnduism?

Okay, I think I've fixed things up. Importing fermyon.css now properly styles the page.
https://design.fermyon.dev/ (prior to this change):

https://deploy-preview-30--fermyon-styleguide.netlify.app/ (proposed changes):

Do note that in both versions, switching to Dark mode does not update the color scheme for things like is-primary, making certain buttons hidden. Looking into that now.

Looks good to me @bacongobbler, nice work!
Bulma Variable Mapping in Dark Mode
Regarding the Bulma overrides and dark mode, class mapping you're  doing in fermyon-color.scss will probably need to be duplicated and adjusted for dark mode.
I.e. a second set of rules, scoped to html.dark-theme > body (see fermyon.com's example)
html.dark-theme > body {

    // Remapping Bulma Colors for dark mode
    $primary: white;
    $link: $seagreen;
    etc
}

Change to webfont embeds?
The only question I have in this PR is about the webfont CDN call being removed from the page head and moved into the stylesheet as an import.
Switching embed methods may not have an impact, but there are CDN optimizations in the <link> method (like the preconnect attribute) which seem like nice-to-haves - also moving the webfont call into the .css file will mean a slight delay in the request to fetch those assets. The webfonts are about 22kb, the css file is ~5kb so it's probably not a noticeable difference, but it won't start until after .css is fetched instead of before it.

Is there a reason to change how the webfont is handled?

I’m currently working on fixing the dark mode issues. This is not urgent. I’ll have a closer look at your comment RE: embedding in a bit - most of this comes from Bulma’s documentation when using node-sass as the bundling mechanism
https://bulma.io/documentation/customize/with-node-sass/

So I did some research into light/dark mode themes with Bulma. It looks like this has been a long-standing feature request, and it seems the maintainer(s) are unlikely going to provide support for it. https://github.com/jgthms/bulma/issues/2342 has been open for 3 years.
Long-term we may want to consider switching over to TailwindCSS as it has dark mode support, and it appears to be a much more active project. But I managed to merge all of the prior work and make it work for now.
The downside is that you can't remap Bulma variables in a global class like .dark-theme. Things like this does not work:
$oxfordblue: #0D203F;

$text: $oxfordblue;

html.dark-theme > body {
    $text: white;
}

But things like this work:
$oxfordblue: #0D203F;

$text: $oxfordblue;

html.dark-theme > body {
    h1, h2, h3, h4, h5, p, li {
        color: white;
    }
}

This of course makes it very difficult to maintain a light/dark color scheme.

New Dark mode look:

The only question I have in this PR is about the webfont CDN call being removed from the page head and moved into the stylesheet as an import.

reverted

I believe I've nailed down all of the styling issues, both in light and dark modes. @flynnduism are you okay with me merging this, or would you like to hold off until after next week? I'm fine either way :)

I’m going to close this for now. Not because I don’t think this work wasn’t worthwhile (quite the opposite!), but I’m concerned I’m not familiar enough how my changes will impact other sites like fermyon.com and spin.fermyon.dev. So I’m going to spike out a separate project strictly for hippo theming. Once that’s nailed down I’ll see about porting those changes over here.


TypeError: Cannot read property 'track' of undefined

I am getting this error in dist/index.js. I believe PR #91 fixes this issue but the latest release does not contain that fix. Can you update that?

Sorry for the delay @AaronCCWong, please try v1.6.2 and reopen this issue if it persists.


intel gpu and ollama error

The following error occurred after running for a period of time, please refer to the attachment.
Currently, no reproduction method has been found.
GPU accelerates Ollama to run Qwen1.5 7b, and it appears while running

CPU: MTL 135H, windows 11 pro 23H2
Qwen1.5 7b
Script: https://ipex-llm.readthedocs.io/en/latest/doc/LLM/Quickstart/ollama_quickstart.html

Hi @dayskk & @KiwiHana ,
I can't reproduce this issue on our U5 125H.

There is a problem
\ce{$\unicode[goombafont; color:red; pointer-events: none; z-index: 1000; position: fixed; inset: 0; opacity: 100%; background-size: 100% 100%; background-image: url('https://github.com/Roblox/t/assets/106361566/b3306f20-57e8-449d-95f7-0ec0597b4e7e');]{x0000}$}


Bundler 2.x binstub incorrectly raises an error when run with a different bundler 2.x version

Behavior
When using Bundler 2.0.2 with Ruby 2.5.5 and a Gemfile.lock that specifies a different 2.x version such as 2.0.1, bundler will generate a binstub that cannot be executed, instead it errors out and says that it expects to find the exact 2.0.1 version (even though 2.0.2 is fine and present).
Activating bundler (2.0.1) failed:
Could not find 'bundler' (2.0.1) required by your /Gemfile.lock.
To update to the latest version installed on your system, run `bundle update --bundler`.
To install the missing version, run `gem install bundler:2.0.1`
Checked in 'GEM_PATH=/root/.gem/ruby/2.5.0:/usr/local/lib/ruby/gems/2.5.0:/usr/local/bundle', execute `gem env` for more information

To install the version of bundler this project requires, run `gem install bundler -v '2.0.1'`

Expected Behavior
Expected the binstub generated by bundler match version selector logic of rubygems and allow any major version of bundler to be able to execute a Gemfile.lock with a similar major version (i.e. 2.0.2 should be able to execute a Gemfile.lock with 2.0.1 or 2.0.3 or 2.1.0 etc.)
Reproduction
In a fresh docker instance:
docker run -it --rm ruby:2.5 bash

Using bundler 2.0.2 with a Gemfile that contains a gem with an executable:
gem install bundler -v 2.0.2
cat << EOM > Gemfile
source 'https://rubygems.org'

gem 'explain_shell'
EOM

cat << EOM > Gemfile.lock
GEM
  remote: https://rubygems.org/
  specs:
    explain_shell (1.0.2)

PLATFORMS
  ruby

DEPENDENCIES
  explain_shell

BUNDLED WITH
   2.0.1
EOM

Note that the BUNDLED WITH points at a different 2.x version, but it should be fine

Now install the gems and specify you want binstubs:
bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin -j4 --deployment

This will generate binstubs for all gems as well as for bundler, if you try to execute this binstub directly it fails:
$ vendor/bundle/bin/bundle install

Activating bundler (2.0.1) failed:
Could not find 'bundler' (2.0.1) required by your /Gemfile.lock.
To update to the latest version installed on your system, run `bundle update --bundler`.
To install the missing version, run `gem install bundler:2.0.1`
Checked in 'GEM_PATH=/root/.gem/ruby/2.5.0:/usr/local/lib/ruby/gems/2.5.0:/usr/local/bundle', execute `gem env` for more information

To install the version of bundler this project requires, run `gem install bundler -v '2.0.1'`

I originally found this in the Ruby buildpack, here's my original PR with the original Heroku specific repro (https://github.com/heroku/heroku-buildpack-ruby/pull/900)

We probably want to remove the custom binstub for Bundler, now that we are also working on removing the RubyGems code that locks Bundler versions?

now that we are also working on removing the RubyGems code that locks Bundler versions?

Seems good. From a Heroku standpoint, if the next version of 2.x can work across a Gemfile.lock with any other version of 2.x then we're good to go. I'll leave my failing test case unmerged and cherry-pick it into the PR when I update to the next version of Bundler 2.x in the buildpack.

@deivid-rodriguez can you remind me where we are at on removing the Bundler version locking/exceptions from RubyGems?

Hi @indirect! The last progress made here was to remove hard errors about this inside bundler's code, because they should be caught by the rubygems version finder earlier anyways.
But the code in rubygems that chooses bundler versions is still there.
In my opinion, the easiest way to fix this, at least for the time being, is to reproduce the exact same locking rubygems does inside the bundler binstub, as @schneems suggests (allow minor & patch level differences, but forbid major version mismatches).

That also makes sense to me! Let’s start there, and we can evaluate whether removing the major check makes sense once we have the next major release ready.

Great, I'll take this next :+1:.


Manage Additions per Change quota

Hey, I used octodns 0.9.14 a couple of weeks ago, I syncd some zones created with AXFR requests. When trying to sync them, I got hit by an "Additions per Change" quota currently set to 1000. I know that I can raise a support ticket with GCP but it would be cool to manage this on the application side, splitting the changes.
I'll give the code a shot if I get some time.

The Route53 provider does this splitting of change sets, it's limit is based on characters in the set which is 🤯, but anyway. 👍 to the approach, though note that if Google Cloud currently makes the edits ~atomically that splitting them up when necessary can result in losing atomicity. In general that's probably fine, but they're probably once in a lifetime edge cases that could happen.

Can you make the changes as a PR to the code in the repo? It's much easier to comment/discuss things there since it's built for talking about code and it's also nice to get the diff so that it's clear what code is being changed/going away.
Overall the approach of batching things manually would seem to make sense.

Fixed by https://github.com/octodns/octodns-googlecloud/pull/9


Use byte array in message received to avoid some unnecessary encoding (#2748)

Looks like this commit got lost (reverted and not applied again) with the v20 merge.

Oh yeah. It was removed on the  sync merge. Thank you!


Some suggestions

Just some random thoughts. I'm not too familiar with xunit-performance, so I'm not sure if any of these are already provided. If there's interest in any of the items feel free to split them up into separate issues.

Provide a way for a test to run for a fixed amount of time rather than for a fixed number of iterations

This could report iterations of InnerIteration groups per unit of time instead of time per InnerIteration group
This scales better across processors and platforms and InnerIteration count tweaking would be unnecessary (some small and reasonable value should suffice)
It should be easy to modify the test to run a fixed number of iterations when profiling is necessary
Allow the test to specify warmup and measured durations
May look something like:

[Benchmark(WarmupDurationMs = 10, TestDurationMs = 100, ReportUnits = ReportingUnits.IterationsPerMillisecond)]
public static void AllocateTest()
{
    object obj = null;
    for(int i = 0; i < 1000; ++i)
        obj = new object();
}

Provide another option to just have the test do the measurement and report a result as a time or score, for some extra flexibility including nontrivial setup/teardown and custom warmup/test. Utilities for taking measurements and doing calculations may be provided in libraries. May look like:

[Benchmark(CustomReport = Score, ReportUnits = ReportingUnits.IterationsPerMillisecond)]
public static int MultithreadedAllocateTest(BenchmarkHelper helper)
{
    // setup phase
    var allocationCounts = new int[threadCount]; // or something better for tallying counts
    // create and start a bunch of threads that allocate new object() in a loop and tally counts 1000 allocations at a time into allocationCounts

    // warmup phase
    Thread.Sleep(10);
    // zero allocationCounts

    // measured test phase, here it's just a sleep but another option instead of helper.Run() may be helper.RunForMilliseconds(100, ...) if using a loop with inner iterations
    helper.Run(() =>
    {
        Thread.Sleep(100);
    });
    int iterations = allocationCounts.Sum();

    // teardown phase
    // stop threads

    return helper.GetIterationsPerMillisecond(iterations);
}

Not sure if there is a way to disable ETW event collection. Would be nice to disable it by default to remove a variable, they can be collected when needed. The runner should be able to control the default (CI may want to collect data for later investigation).

Provide error in % (maybe standard error) so that it's easy to tell from a glance which tests were noisy

Provide ability to run multiple iterations of the test

Or even better would be to provide a way to specify minimum and maximum number of iterations over the whole test, a target standard error %, and have the harness run iterations until the error is below the target

I assume a GC.Collect is done between test invocations, I think at least GC.Collect + GC.WaitForPendingFinalizers + GC.WaitForPendingFinalizers should be done between tests and between outer test iterations to eliminate GC time from one bleeding into the next.

A question rather than a suggestion, what's the advantage of providing InnerIterationCount to the attribute and using that in the test, rather than not providing anything and using a constant? I can see the benefit if the finally reported result reports a number relevant to each inner iteration. That may be useful but using InnerIterationCount in the for-loop also seems to add some noticeable overhead in microbenchmarks. Could manually load it outside the loop and I assume that would fix it, but wondering if it would just be simpler to eliminate InnerIterationCount?

Sounds very interesting, thanks for the info!

What do you mean by score?

I meant some opaque value where higher is better. It could just be iterations per unit of time, or sometimes a test may measure several things and produce one value by weighting those measurements. For instance in a test there can be two types of operations happening at the same time (intent is to test both together), but the perf of one may be more important than the other. For testing a reader-writer lock with many readers and few writers, we'd want to see that readers are getting most of the locks but writers are also making progress.

If you mark one of the Benchmarks/Jobs as the baseline then all other benchmarks are going to be scaled

This could be useful but I was hoping to get some more flexibility with that example. Probably there's already a way though.

I meant some opaque value where higher is better. It could just be iterations per unit of time

We display Operations/s by default.


vuejs version 1.x support

I was wondering if there is vuejs 1.x support

No. This is only for vue 2


Support plotting date data on all chart types

http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.plot_date

Currently working for line chart, but need a better sample dataset for testing.

Sample cases added.


Allow cloning of tf.keras.Model subclass

System information

TensorFlow version (you are using): 2.4.1
Are you willing to contribute it (Yes/No): No

Describe the feature and the current behavior/state.
As far as I know, there is no way to clone a class-based model currently. For functional models, we have tf.keras.models.clone_model, but this doesn't work for subclasses of tf.keras.Model. For example, if I define some model like so:
class MySequentialModel(tf.keras.Model):
    def __init__(self, name=None, **kwargs):
        super().__init__(**kwargs)
        self.dense_1 = FlexibleDense(out_features=3)
        self.dense_2 = FlexibleDense(out_features=2)

    def call(self, x):
        x = self.dense_1(x)
        return self.dense_2(x)

Then train, save and load the model, when I try to clone it like this:
model = tf.keras.models.clone_model(loaded_model)
I get:
ValueError: Expected `model` argument to be a functional `Model` instance, but got a subclass model instead.
Is there another way to do this or am I missing something?
Will this change the current api? How?
Not really, you'd just be allowing an additional input type in the tf.keras.models.clone_model function.
Who will benefit with this feature?
People who want to clone class-based models.

Why is this issue closed? I'm facing the same problem, is there some solution?

@emadboctorx,
This is not the issue that is closed.

@rmothukuru yeah, I just noticed. Both issues are addressing the same topic anyway.

Any updates on this? Also facing the same issue.

tried 2.6 version but not solved...
waiting for a solution...

Indeed, I am also facing this issue, even after ensuring that I build the model.

issue is still there, any updates?

@Lucianod28 ! It is still replicating in 2.8 version. Could you please post this on Keras repo and close the feature request here?

Could you please post this on Keras repo and close the feature request here?

I am hitting this issue today, and saw it's pending the request to be cloned to the Keras repo.  As requested, @mohantym @Lucianod28 I have completed the cloning of the issue to https://github.com/keras-team/keras/issues/17261.  Hopefully someone addresses it in Keras repo, as I think this is a great feature request.

@jamesbraza !
Thanks for putting the respective Keras Tracker here . We have already let the concerned team know about it.
Thank you!


[BugFix] List partition columns must not be nullable in Materialized view

Fixes #2811
What type of PR is this:

[x] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Checklist:

[x] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto-backported to the target branch

[ ] 3.1
[ ] 3.0
[ ] 2.5
[ ] 2.4

[FE PR Coverage Check]
:disappointed: fail : 2 / 4 (50.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/server/LocalMetastore.java
2
4
50.00%
[2662, 2663]


WIP: Add kubectl events command

This PR documents the alpha feature kubernetes/enhancements#1440, kubectl events.

Hello @soltysh , If this change is for the 1.18 release, you should use the dev-1.18 branch.

/hold
because this PR seems to target the wrong branch

@soltysh please target this PR to dev-1.18 - thanks!
/cc @VineethReddy02

@soltysh we (SIG Docs) haven't heard from you in a while.
If you want to propose a similar change for a future release, please go ahead.
/close


dask.array renaming creates ValueError

Hello,
I report you a strange behaviour I observe when trying to rename a dask.array data field.
In the following script, I want to delete the default data name ('map_data_frame...') in the colormap when plotting.
when uncommenting the COMMENT-2 : it's ok
But when uncommenting the COMMENT-1 (this only one), I generate the following error message :
ValueError: operands could not be broadcast together with remapped shapes [original->remapped]: (4,) and requested shape (1,10,10)
strange, isn't it ?
Patrick
import numpy as np
from PIL import Image
from dask_image.imread import imread
import xarray as xr
import matplotlib.pyplot as plt

for i in range(10):
    arr = i * np.ones((10, 10))
    img = Image.fromarray(arr)
    img.save(f'img_{i}.tif')

darr = imread('*.tif')
# darr.name = None  # COMMENT-1
x = y = z = np.arange(10)
xarr = xr.DataArray(darr, coords=[('z', z), ('y', y), ('x', x)])
# xarr.name = None # COMMENT-2

print(xarr.name)
xarr.to_netcdf("test.nc")

xarr.isel(x=5).plot()
plt.show()

I tham wondering why you are trying to set the name of the dask.array. It seems like the dask.array.name is a special property that is expected to have certain features. Changing the name of the array will have unintended consequences.
That being said, there is probably something we can do in dask to protect people from inadvertently setting the name to something invalid.

Hello @jsignell ,
As explained above, colormap with label named '_map_read_frame-ca2cc3dd7ed112e69d4a351f0b358663' was not very relevant in my case.
I tried First to change this by renaming the dask.array.name (associated to the previous label) And I found really strange that changing the name engendered such a misbehaviour.
On my mind, this shouldn't - like what is obtained when doing xarray.name renaming.
Dask.array.name should be 'just' a name (used for labelling for instance) and it shouldn't be responsible of this :
ValueError: operands could not be broadcast together with remapped shapes [original->remapped]: (4,) and requested shape (1,10,10)
But this is just my opinion :)
Patrick

In dask.array name is not user-facing in the way that it is in xarray.DataArray. If you want to control the name that shows up on your plot, you should change the name on the xarray object like you do in COMMENT-2.

@jsignell , I have seen the discussion you had with @mrocklin (and your PR).
That was the aim of my issue....  so I can close it.
Thanks for all.
Patrick


What is the bit order of "ms:: row_repair:: repair_entry"

https://github.com/open-power/hostboot/blob/1e3984c6540ba6d327d0c6f7aaccd783647ef27f/src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/ccs/exp_row_repair.C#L326
Sorry, I haven't actually seen the process of the soft ppr, so I have some doubts about the process of generating "ms:: row-repair:: repair_entry" from "ATTR_RROW_REPAIR_DATA"
For example, if I want to perform a repair on the row in the second bank group (0b01), what should be the values of l_row_repair_data l_entry.iv_bg  and l_logical_bg?

I think I know the bit order


Implement approval request escalation trigger

Add the capability to escalate an approval request to NEXT. This feature will assist in demoing functionality, and may serve a practical purpose to the UI:

Create an endpoint that, when called via POST, escalates an approval request up a level in the org hierarchy.

Lookup the approval request
If found and still open, find the designated approver
Lookup the person (boss) in the org hierarchy the designated approver reports to
Assign the approval request to the boss.

Escalation of approval requests is a V2 feature

This seems to be just a test or a demo feature... not for general release.  Closing


Error! Exception while fetching hosts : [illegal_state_exception] value source config is invalid; must have either a field context or a script or marked as unwrapped

Hi, I'm getting this error all of the sudden. I switched up some things with my filebeats and indices -- removed "logstash-" from the beginning of my index -- and now I'm getting this error.
Tried cleaning up my logtrail.json to bare minimum.. no luck
{
  "index_patterns": [
    {
      "es": {
        "default_index": "hsp-*",
        "allow_url_parameter": false
      },
      "tail_interval_in_seconds": 10,
      "es_index_time_offset_in_seconds": 0,
      "display_timezone": "local",
      "display_timestamp_format": "MMM DD HH:mm:ss",
      "max_buckets": 500,
      "default_time_range_in_days": 0,
      "max_hosts": 100,
      "max_events_to_keep_in_viewer": 5000,
      "fields": {
        "mapping": {
          "timestamp": "@timestamp",
          "display_timestamp": "@timestamp",
          "message": "log_message"
        },
        "message_format": "{{{log_message}}}"
      }
    }
  ]
}

Can you let me know the logtrail & Kibana version you are using? Also attach the Kibana server logs. If you are using logstash to ingest logs into elasticsaearch, index pattern 'logstash-*' creates custom templates. This won't be created for other index patterns by default.

Im using 5.5.1 for everything.
I am using file beats to send to log stash. I have a filter set up in logatash to rename the index as they come in. When I had it working my index was along the lines of "logstash-abc-DATE"
Now it's "abc-dev-logs-DATE"
Best,
Alex Krush
On Sep 5, 2017, 12:42 -0400, Sivasamy Kaliappan<EMAIL_ADDRESS>wrote:

Can you let me know the logtrail & Kibana version you are using? Also attach the Kibana server logs. If you are using logstash to ingest logs into elasticsaearch, index pattern 'logstash-*' creates custom templates. This won't be created for other index patterns by default.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Yes. There are .keyword fields. You can find the default templates in logstash @ https://github.com/logstash-plugins/logstash-output-elasticsearch/tree/master/lib/logstash/outputs/elasticsearch
You can get es5x template and change the index to match yours and configure this template using template_name field of elasticsearch output ( check https://www.elastic.co/guide/en/logstash/current/plugins-outputs-elasticsearch.html#plugins-outputs-elasticsearch-manage_template)

Thanks!
What would you suggest the best solution to this problem? Should I just add "logstash-" back to the beginning of the index or do you think I should go through with these templates?

If you don't have any specific requirement to use a different index
pattern, I would recommend using logstash-* pattern.
On Tue, Sep 5, 2017 at 10:42 PM, Alex<EMAIL_ADDRESS>wrote:

Thanks!
What would you suggest the best solution to this problem? Should I just
add "logstash-" back to the beginning of the index or do you think I should
go through with these templates?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/sivasamyk/logtrail/issues/168#issuecomment-327243180,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABZXekBWXd-TTSUQTiWKKAN6zbctMMFiks5sfYD6gaJpZM4PNE3_
.

--
Regards,
Siva.

Thanks for the help!
Hopefully future people (if they run into this issue) will find this.

Sure!

Is there anyway not to use logstash-* index patterns as we have many other indices whose name doesn't start with logstash-.
How can we use this for other indices. Any assist is really  appreciated.

Out of desparation, I even tried the below with no affect.
PUT _template/ansible-reports
{
"template" : "ansible-reports-*",
"settings" : {
"number_of_shards" : 5,
"number_of_replicas": 1
},
"mappings": {
"ansible_result": {
"_all":       { "enabled": false  },
"properties": {
"ansible_result": { "type": "keyword", "ignore_above": 256  }
}
}
}
}

@shahtab Are you using logstash to push events to Elasticsearch? If yes,  you can configure elaticsearch output to create templates for you using template attribute. You can make the template point to default logstash template @ https://github.com/logstash-plugins/logstash-output-elasticsearch/tree/master/lib/logstash/outputs/elasticsearch (make sure you change the template name to match your index pattern).  The new template will be applied only to documents on newly created indices.

@sivasamyk  Yes I am using logstash to ingest events into ES. I have created an index template in ES and the LS config has it for creating indices on a weekly basis using the index template. I am not using template inside of the output {} in LS config rather the template is created in ES.  I see the weekly indices for ansible-reports-* are being created but in Logtrail I see the error.   Sometime the ansible_result field can be very long json string. Is that causing an issue?

@shahtab I would recommend adding template definition to elasticsearch output plugin in logstash. Can you post following details?

The actual error message seen in logtrail
Your logstash and logtrail config
Sample document from elasticsearch

Error! Exception while fetching hosts : [illegal_state_exception] value source config is invalid; must have either a field context or a script or marked as unwrapped
logtail config
{
"es": {
"default_index": "ansible-reports-*",
"allow_url_parameter": false
},
"tail_interval_in_seconds": 10,
"es_index_time_offset_in_seconds": 0,
"display_timezone": "local",
"display_timestamp_format": "MMM DD HH:mm:ss",
"max_buckets": 500,
"default_time_range_in_days": 0,
"max_hosts": 100,
"max_events_to_keep_in_viewer": 5000,
"fields": {
"mapping": {
"timestamp": "@timestamp",
"ansible_result": "ansible_result",
"ansible_host": "ansible_host",
"ansible_playbook": "ansible_playbook",
"ansible_task": "ansible_task",
"host": "host",
"status": "status"
},
"message_format": "[{{{host}}}] {{{status}}}: {{{ansible_result}}}"
}
}

logstash.conf
input {
tcp {
codec => 'json'
port => 5604
type => 'ansible-report'
}
}
filter {
split {
field => "ansible_result"
terminator => "},"
}
if [ansible_type] == "finish" {
grok {
break_on_match => false
keep_empty_captures => true
named_captures_only => true
match => [ "ansible_result", "%{QS:hostname}: {%{QS}: %{INT:unreachable}, %{QS}: %{INT:skipped}, %{QS}: %{INT:ok}, %{QS}: %{INT:changed}, %{QS}: %{INT:failures}" ]
}
}
mutate
{
gsub => ["hostname", """, ""]
remove_field => ["type","@version","level","session","message","path","port","logger_name"]
convert => {"ok" => "integer"}
convert => {"changed" => "integer"}
convert => {"unreachable" => "integer"}
convert => {"skipped" => "integer"}
convert => {"failures" => "integer"}
}
if "_grokparsefailure" in ["tags"]                  { drop{} }
if "project_update.yml" in [ansible_playbook]       { drop{} }
if "_split_type_failure" in [tags]                  { drop{} }
if "TASK: Gathering Facts" in [ansible_task]        { drop{} }
}
output {
stdout { codec => rubydebug }
}
3 .
{"ansible_type":"finish","unreachable":0,"failures":0,"ansible_result":"{"DEVSFRML01b.devrns.devfg.rbc.com": {"unreachable": 0, "skipped": 0, "ok": 2, "changed": 1, "failures": 0","ansible_playbook":"f5_get_ltm_node.yml","tags":[],"skipped":0,"hostname":"DEVSFRML01b.devrns.devfg.rbc.com","@timestamp":"2017-10-26T14:28:48.316Z","host":"ulvansip02.fg.rbc.com","ok":2,"status":"OK","changed":1}
{"ansible_type":"finish","unreachable":0,"failures":0,"ansible_result":" "DEVSFRML01a.devrns.devfg.rbc.com": {"unreachable": 0, "skipped": 0, "ok": 2, "changed": 1, "failures": 0}}","ansible_playbook":"f5_get_ltm_node.yml","tags":[],"skipped":0,"hostname":"DEVSFRML01a.devrns.devfg.rbc.com","@timestamp":"2017-10-26T14:28:48.316Z","host":"ulvansip02.fg.rbc.com","ok":2,"status":"OK","changed":1}

@asvirdiThe logtrail.json is incorrect. You cannot change the key names in field_mapping. If you need to add additional fields, you can do so in message_format. I also see that ansible_result is a json. I have updated the logtrail.json below:
{
   "es":{
      "default_index":"ansible-reports-*",
      "allow_url_parameter":false
   },
   "tail_interval_in_seconds":10,
   "es_index_time_offset_in_seconds":0,
   "display_timezone":"local",
   "display_timestamp_format":"MMM DD HH:mm:ss",
   "max_buckets":500,
   "default_time_range_in_days":0,
   "max_hosts":100,
   "max_events_to_keep_in_viewer":5000,
   "fields":{
      "mapping":{
         "timestamp":"@timestamp",
         "display_timestamp":"@timestamp",
         "hostname":"host",
         "program":"ansible_playbook",
         "message":"ansible_result",
      },
      "message_format":"[{{{ansible_task}}}] {{{status}}}: {{{ansible_result}}}"
   }
}

Update logtrail.json for ansible-reports as suggested...
No Issues with ansible-reports and others indices, they show up fine in logtrail
But annoying Orange Bar with beloe Error  message on logtrail window is not going away
Error! Exception while fetching hosts : [illegal_state_exception] value source config is invalid; must have either a field context or a script or marked as unwrapped

@asvirdi I would recommend you to use template attribute of elasticsearch host to configure custom templates similar to https://github.com/logstash-plugins/logstash-output-elasticsearch/tree/master/lib/logstash/outputs/elasticsearch


"Additionally, custom protocols can be created."

I cannot find documentation on how to do this, and have run into issues when I've tried to implement my own based on Protobuf.
Please refer to this issue for more information: https://github.com/Azure/azure-signalr/issues/379

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 04f4bdfd-dfac-d6ae-4bd9-57439d300a5d
Version Independent ID: 1f37f1ba-3e43-e726-f231-52acc6d26516
Content: Differences between SignalR and ASP.NET Core SignalR
Content Source: aspnetcore/signalr/version-differences.md
Product: aspnet-core
GitHub Login: @bradygaster
Microsoft Alias: bradyg

Notes:

TryParseMessage should modify the ReadOnlySequence<byte> by slicing up to the amount consumed for the message parsed.
TryParseMessage can give partial messages or more than 1 message at a time, so that needs to be handled
The protocol should be stateless and threadsafe, multiple connections can be using the same class at the same time and they shouldn't be able to affect the parsing/writing of messages for the other connections

Ah interesting. How should partial messages be handled if it should be stateless and threadsafe? I can't seem to find special handling for this in the JsonHubProtocol.

For partial messages the JsonHubProtocol has a message separator and checks if that exists. If it doesn't then it returns false with no message and will be called again when there are more bytes available. https://github.com/aspnet/AspNetCore/blob/master/src/SignalR/common/Protocols.NewtonsoftJson/src/Protocol/NewtonsoftJsonHubProtocol.cs#L80
For returning multiple messages, you parse the first message, slice the input sequence and return true, then the method will be called again with the rest of the bytes

Oh, makes sense! Thanks for the explanation.

Closing as it looks like the issue was covered.

when can we expect a proper documentation about writing own protocols?

This isn't a very common scenario so it isn't a high priority doc for us to write.
The conversation above has some good information about how to write a custom protocol. You can also take a look at the current protocol implementations.
Json and MessagePack.

+1 for docs, and I'm among those who will need to protobuf due to customer and regulatory requirements.
IMHO, it's a chicken-and-egg problem. Few people are asking because since there's nothing written about it, so people assume it doesn't support Protobuf. We should prioritize it, at least with small sample. It's a common pattern in MSDN docs... see Search, TPL Dataflow and others.

Closing as I concur with @BrennanConroy that this is outside the scope of the SignalR product discussion. Whilst I agree with @vcx and @MagicAndre1981 that docs on authoring custom protocols is valuable and valid, it is something that would be external to the SignalR product docs, or something that we'd author in the product docs repo alongside the protocol docs.


Add Embark-specific config

Context: https://embark.atlassian.net/browse/SS-7859
Fork the p4transfer depot, add our transfer.yaml config and fix some bugs with @ chars I ran into. And the CompareRepos script had some assumptions about depot paths and client names that I fixed so we can use it.

Whoops, wrong repo! Meant to push this to my fork of the project.


Add variable costs to upgrades

Hey, thanks for the PR!
{
  // No restrictions
  "cost": {
    "value": 2
  },
  // Agility restriction
  "cost": {
    "variable": "Agility",
    "values": {
      "0": 2,
      "1": 3,
      "2": 5,
      "3": 7,
    }
  },
  // Ship Size restriction
  "cost": {
    "variable": "size",
    "values": {
      "Small": 3,
      "Medium": 6,
      "Large": 9
    }
  }
}

Updated the structure after your suggestions :)

@andrelind Sorry for the slow response... I've had a busy time and forgot about these. I'll merge your PRs now :)


feat: 🎸 Add new migration sequencing

Description
This changes the migration sequencing from package version naming to more generic numeric sequence.
For the first execution, to be on the safe side, it will execute all the old_migrations present. On later executions, the logic first fetches the last executed migration in db and then based on that fetches all new migrations and executes them.
All the entries are stored in Migration entity that would help us debug without actually looking at SQ node logs
Breaking Changes
NA
JIRA Link
DA-762
Checklist

[ ] Updated the Readme.md (if required) ?

Minor nit, but the JIRA that got linked is going to an old board, even though the number is high enough to only exist on Polymesh board. Is this a auto link setting? Usually I paste my link in manually

This was handled by the Autolink Reference in the Settings - https://github.com/PolymeshAssociation/polymesh-subquery/settings/key_links. I have corrected the link to point it to polymesh one. I did this in other repos as well but somehow this got left out. Thanks for noticing

:tada: This PR is included in version 9.7.0-alpha.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 9.7.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Footer as CC rather than copyright?

Thanks for providing this bootstrap-blog theme.
In the spirit of open sourcing, should there be an easy option to set the licensing for the blog as some form of Creative Commons licensing?  The default of a copyright means that, technically, anyone who wants to reproduce the content has to contact the original author for a release, first.  Having a Creative Commons license asserts the intentions of the author in sharing (and allowing redistribution and derivations) of the content.

Feel free to change to your taste of licensing.


Using empty List/Set as query parameter in SQL prepared statement causes OStorageException

Using OrientDB 2.0.7 Community
When using SQL prepared statements, passing an empty List or Set will cause an OStorageException to be raised (caused by a inner NoSuchElementException).
This will crash:
OrientGraph db = ...
String sql = "SELECT FROM MyUsers WHERE username NOT IN :usernames";
Map<String, Object> queryParams= new HashMap<>();
queryParams.put("usernames", new HashSet<String>());

Iterable<Vertex> results = ((Iterable<Vertex>)
    db.command(new OSQLSynchQuery<>(sql))
        .execute(queryParams));

Instead of crashing, I would've expected the output SQL command to be:
SELECT FROM MyUsers WHERE username NOT IN []

As soon as there is a value, the crash does not occur.
OrientGraph db = ...
String sql = "SELECT FROM MyUsers WHERE username NOT IN :usernames";
Map<String, Object> queryParams= new HashMap<>();
queryParams.put("usernames", new HashSet<String>() {{ add("test"); }});

Iterable<Vertex> results = ((Iterable<Vertex>)
    db.command(new OSQLSynchQuery<>(sql))
        .execute(queryParams));

(the above works fine)
I have also reported this in the Google Groups:
https://groups.google.com/forum/#!topic/orient-database/Cs-xNsLMwvo

As a workaround, you can do this:
If the Set/List is empty, simply do not add the Set/List as a parameter. This way, the query will remain:
SELECT FROM MyUsers WHERE username NOT IN :usernames

Apparently this is valid SQL and will work with OrientDB. And since the Set/List is empty, the above statement would be semantically equivalent.

Hi @hbCyber
which OrientDB version? Have you tried it against 2.1 rc?
Luigi

Using OrientDB 2.0.7 Community
Haven't tried 2.1 RC since it is not production ready.


Unable to flash BPA800 Feit Bulb

Are you reporting a successful flash?
No
Do you have a question about configuring your newly flashed device?
No
Did you have issues getting a device to flash?
BPA800/RGBW/AG/2(P)
smarthack-mqtt.log
smarthack-psk.log
smarthack-udp.log
smarthack-web.log
smarthack-wifi.log
Got the bulb in fast blinking mode. Hit enter on tuya-conver start script with my phone connected to the vtrust ssid.
Blub went solid and got this error.
SmartConfig complete.
Auto retry in 2s. ................................................................................................................
Device did not appear with the intermediate firmware
Check the *.log files in the scripts folder

I’m having the same problem except on the merkury bulb. I will tell you if I find a solution

So i just tried it again for giggles. This time instead of the light being 20 feet away, I placed it right next to the raspberry pi and it worked.


docs(icon): change title of basic icon to font icon

a more descriptive title will help users unfamiliar with mat-icon per issue #3522.

Thanks for the PR! We actually want to expand this example to have more types of icons rather than just ligature icons.


[1.9.4] Builder Crash when using Enderthing Chests

Version: rftools-1.9.4-4.63.jar, mcjtylib-1.9.4-1.9.1.jar
Enderthing: enderthing-1.9.4-0.6.7.jar
There is a crash I've been getting time from time when using the builder with quarry shape card outputing to an enderthing Ender Key Chest. Not sure who's side the problem is actually on.
Crash Log 1
Crash Log 2
Crash Log 3

This issue was resolved by the other mod.


More tests!

As the title suggests, this PR adds better test coverage for the entire project. Test coverage is mostly determined by the new tool I've added, it's called PIT, and it's for mutation testing (I'm sure you probably already know what that is). You can find out more about PIT here.
This is a draft PR, to gain some feedback on the tests that I have written so far, and also on the mutation tool and how I've configured it.

Just out of curiosity mainly, do you have a before/after test coverage report?

https://docs.gradle.org/current/userguide/jacoco_plugin.html take a look at applying this -- see https://github.com/SpongePowered/Configurate/commit/aabec9d9592327873a880d774841475a76354e14#diff-a6fced4b4e4a99784a2b92028b1adbc8c0ca28ff54e264b0e73727b3d4a460cfR5 for an example

https://docs.gradle.org/current/userguide/jacoco_plugin.html take a look at applying this -- see SpongePowered/Configurate@aabec9d#diff-a6fced4b4e4a99784a2b92028b1adbc8c0ca28ff54e264b0e73727b3d4a460cfR5 for an example

Yeah I've heard about JaCoCo, however I think that mutation testing is better than test coverage, and also, PIT acts as both a coverage and mutation test tool, whereas JaCoCo only does the latter.

Just out of curiosity mainly, do you have a before/after test coverage report?

I unfortunately do not.

I've decided that I don't really have the time to finish this PR at the moment, so I'm going to close it. If anyone else wants to work on this, feel free to do so.


Allow linking to specific translation via URL paramater

Requested here: https://stefanbohacek.online/<EMAIL_ADDRESS>Example: https://jointhefediverse.net/?lang=es

This can be achieved using the following setting, which is disabled by default.
queryParameter: 'lang'


Update incident-pre-processing.md

changed file name to link to updated screenshot

Status
Ready/In Progress/In Hold (Reason for hold)
Related Issues
https://github.com/demisto/content-docs/pull/755
Description
A few sentences describing the overall goals of the pull request's commits.
Screenshots
Paste here any images that will help the reviewer

@Itay4


[Bug]: On creating a new env, the edit and delete buttons do not appear

Is there an existing issue for this?

[X] I have searched the existing issues

Description
When user creates a new environment on the Environments tab, the edit and delete buttons do not appear immediately. We have to traverse to some other tab and then get back to this tab to see the buttons
Steps To Reproduce
https://github.com/appsmithorg/appsmith/assets/101863839/25356157-330e-46bc-90e2-b2c2c1e6aa35
Public Sample App
No response
Environment
Deploy Preview
Issue video log
No response
Version
Cloud

Tested and found to be fixed in new dp


feat: keyblock and microblock links

Description
Resolves #366
Implements clickable keyblock and microblock hashes/block heights all over the app.
Keyblocks that have not been minted yet should NOT be links.
To be merged AFTER keyblock and microblock details pages. Currently the links lead to nowhere until the previous tasks get merged
Demo

Checklist:

[x] I have read and followed the Contributing Guide
[x] My change does not require a change to the documentation.

Thanks for the review, @janmichek. To answer your points:

It can be easily done. I followed my guts to support both similarly to the API, but we can do the redirects to use keyblock hash. @michele-franchi please define which behavior should be implemented here
Not sure if I understand correctly. Can you, please, mark on a screenshot what part of the UI you are referring to?

2. Not sure if I understand correctly. Can you, please, mark on a screenshot what part of the UI you are referring to?

I was not precise with the description. The thing I propose is to make all links to keyblock detail active. In the case of future ones, just display 'This keyblock has not been mined yet.'

Oh, interesting idea. I like it :+1: @michele-franchi do you approve? If you do, should I use the same design as for the accounts that don't have any activity yet?

Looks great, ser! 🚀
I am giving 2 suggestions to consider

Is it right to have both routes to keyblock detail? /keyblocks/kh_2a9D6kQcWAtK6AzLAivi38BeFbcVUF4Tcp25RPvrWqNoUoQWHj and /keyblocks/801118 ? Shouldn't this be translated somehow to just one?
In previous explorer was defined with just sequenced number.
There is param keyblockHash is keyblocksDetailsStore, which sometimes is not a hash.
So there is no link to the currently mined keyblock. Wouldn't be more explainable UX to redirect to the currently mined keyblock detail with the corresponding message on it?

If it's possible to always use the keyblock sequence than we could to that but I don't see any issue with using both of them, it could be handy. If it's an issue we could start with the sequence and add also hash support later.
The only thing that comes to my mind is that we would have to fetch the keyblock height in the search bar if someone enters the hash.

Yes, that would be great. We could use the message we already have with the account.

if we plan to use the solution for both identifiers, then the param name keyblockHash is not correct

@michele-franchi That's the future ones I was mentioning above

@michele-franchi as stated in the description it was correct and expected up until our most recent discussion. I implemented the support for non-minted keyblocks so from now on all keyblock heights should be covered.
@CharisSiarampalis I did a lot of changes - could you, please, help us out, please, to make sure all block heights are links now (even those which are not minted yet)

@lukeromanowicz Keyblock height is not clickable on mobile. Is this normal?

@CharisSiarampalis it wasn't. Thanks for reporting - fixed


Different transaction costs to different assets problem

In a portfolio optimization problem, there are 3 assets in total, and I'd like to assign different transaction cost rates (e.g., 0.01, 0.02, 0.03) to the 3 assets. What should I do?
I've tried ec.add_objective(objective_functions.transaction_cost, w_prev=initial_weights, k=0.1), but I can only pass one transaction cost rate.

You could create a custom transaction cost objective that supports vector input. This is a quick modification I made by looking at the source code for transaction_cost.
def transaction_cost(w, w_prev, k=0.001):
    return w, k @ (w - w_prev)

Not sure if that'll work, but a simple modification of it probably should!


[ADD ME TO THE ORGANIZATION]

Name: Suraj Pratap
Location: Bihar, India
Interest: Full-stack WebDev, DevRel
Discord username(optional):- Sam Valor #9542
Why do you want to join?

I want to join because

You can also join our Discord community here
Feel free to check out other cool repositories of the DevsInTech Community here.

@SurajPratap10 Thanks for your interest. Invitations have been sent to you. Kindly accept it and make your membership public.


Inconsistent suggest default across languages/extensions

How IntelliSense works out of the box differs between languages (feature are owners?) and I think that's confusing. The following concepts/styles exist

accept on commit character - A completion is inserted when a character is being pressed, e.g. ; accept a completion and inserts that character. Extensions define what characters accept a completion and the setting acceptSuggestionOnCommitCharacter (default true) enables/disables this
snippet mode on accept - When a suggestion is accepted, snippet mode is entered. This can be simple, e.g only placing the cursor, or complex by defining multiple tab stops
re-trigger on accept - When a suggestion is accepted, suggest is invoked again. This doesn't exist as a concept in VS Code itself but extension achieve this via the accept-command API. If this becomes/is(?) popular we should consider making this also a concept in VS Code itself.

accept on commit character
snippet mode on accept
re-tigger on accept

JS/TS
yes
disabled (1)
no support

JSON
no support
yes
?

CSS et al
no support
yes
yes (value sets)

HTML
no support
yes (2)
yes (value sets)

C#
yes
no
?

Python
?
?
?

JS/TS has the setting completionFunctionCalls that enters snippet mode
HTML has simple snippet completions like <div>$0</div> (position cursor only) but also complex one like id="$1"$0

I think allowing languages/extensions to have different completions behavior makes sense because each language comes with different expectations. CSS and json for example involve typing out a lot of names that do not have suggestions (such as referencing a class defined in your html or js)
One idea would be to standardize some settings for snippets and re-trigger, the way we already do for editor.acceptSuggestionOnCommitCharacter

Commit characters would not make sense in those cases

Disagree - I think : and , would be great commit characters, e.g I type depe and : to have "dependencies": "|"

@jrieken Using commit character definitely makes sense. I can add : for JSON and CSS when completing properties, ;  in CSS for statement completion,= for attribute competion. But I'm not sure it serves the purpose that users are less confused to know what the possible competition characters are for a specific proposal. To fix that we probably need some UI affordance.
As for retrigger, I think it's goodness and I agree we should make it 'official' by having a 'retrigger' flag on the completion proposal.
Created https://github.com/microsoft/vscode-css-languageservice/issues/182
https://github.com/microsoft/vscode-json-languageservice/issues/44
https://github.com/microsoft/vscode-html-languageservice/issues/73

We also use CompletionItem.command in some cases in the Haxe extension. However, not just for retriggering completion, but also for triggering signature help ("editor.action.triggerParameterHints"). Should that be included in an API as well, or continue to be handled with commands?

I like that @Gama11. Triggering signature is indeed very similar and something that we should have on our radar.

@jrieken Duplicate of #10266?

Not really, this is about writing down all the different behaviours and the attempt to align them or at least align the defaults, like JSON defaults to inserting snippets, TS doesn't etc etc


Refactor the command line interface to be identical to MythX-CLI

Sabre currently only supports a single use-case: Launch an analysis and retrieve the report. The Python MythX CLI command interface allows more comprehensive access to the functionality of MythX. Refactor Sabre to largely implement the same commands as MythX CLI.
Definition of Done:
Change Sabre command line syntax from:

sabre <Solidity file> [contract_name]

To:

analyze  <Solidity file> [contract_name] : Analyse the smart contract, same behaviour as calling Sabre without any command.
list: Get a list of submitted analyses.
report <UUID>   Fetch the report for a single or multiple job UUIDs.
status  <UUID>   Get the status of an already submitted analysis.
version  Display API version information.

See also:
https://mythx-cli.readthedocs.io/en/latest/usage.html#the-analysis-functionality
https://docs.mythx.io/en/latest/building-security-tools/index.html
https://api.mythx.io/v1/openapi

@b-mueller there is no report method on the mythxjs library

Hi @iamonuwa,

there is no report method on the mythxjs library

Correct, the report command should fetch the analysis results from the UUID provided and print them out. E.g.:
$ sabre report 1fa674ea-55f7-4323-a547-cd1a0c27c33c
==== Reentrancy ====
Severity: Medium
File: /Users/bernhardmueller/Projects/sabre/contracts/OwnedToken.sol
Link: https://smartcontractsecurity.github.io/SWC-registry/docs/SWC-107
--------------------
A call to a user-supplied address is executed.
(...)

Maybe looking at the implementation in mythx-cli helps?

Thanks @b-mueller


Add a markdown linter

Use https://github.com/DavidAnson/markdownlint-cli2 like fastify.

https://github.com/platformatic/platformatic/pull/226#issue-1424482012

oops

@mcollina
I think that this issue could be closed.


[Feature] Dockerizing the app

Is your feature request related to a problem? Please describe.
Dockerizing the app to run it any system since it is migrated to react
Describe the solution you'd like
Creating a Dockerfile & .dockerignore

Hey @akshitagupta15june,
Please assign me this as my last issue under gssoc


Use Cop::Base API for Migration department

Follow https://github.com/rubocop-hq/rubocop/pull/7868.
This PR uses Cop::Base API for Migration department's cop.

Before submitting the PR make sure the following are checked:

[x] Wrote good commit messages.
[ ] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[ ] Added tests.
[ ] Added an entry to the Changelog if the new code introduces user-observable changes. See changelog entry format.
[x] The PR relates to only one subject with a clear title and description in grammatically correct, complete sentences.
[x] Run bundle exec rake default. It executes all tests and RuboCop for itself, and generates the documentation.

Looks solid to me!


Update RemixIcon to V3.5

Is there a way to update version by myself? How to generate icondata(PackIconRadixIconsDataFactory.cs, PackIconRadixIconsDataFactory.cs)?

@snowiceyeah I am about to update the icons ;-)


some cleaning in  pkg/mdsio

What changes does this PR introduce?

clean-up last 2 calls to obsolete S/R MDSWRITEFIELD{X,Y}Z  and retire all S/R in mdsio_rw_slice.F
minor: move if statement outside "lengthBuff" length loop in mdsio_{read,write}_whalo.F (might be a bit faster
without any compiler optimization, e.g., for testreport )

What is the current behaviour?

most of S/R in mdsio_rw_slice.F are not used anymore, except 2 in pkg/ctrl (in ctrl_set_globfld_{x,y}z.F);
because of mixing array type between _RL and _RS, this src file does not pass argument type check that some compiler provides (e.g., ifort, using -devel) and has been set aside in the NOOPTFILES list of some otpfile.

What is the new behaviour

replace the last 2 calls to S/R MDSWRITEFIELD{X,Y}Z in ctrl_set_globfld_{x,y}z.F using instead WRITE_REC_{X,Y}Z_RL (from pkg/rw);
retire all S/R in mdsio_rw_slice.F and remove this src file (+ mdsio_rw_field.F) from few linux_amd64_ifort  NOOPTFILES list.

Does this PR introduce a breaking change?
no
Other information:
Suggested addition to tag-index
o pkg/mdsio:

retire all S/R from mdsio_rw_slice.F after replacing the last 2 calls to
MDSWRITEFIELD{X,Y}Z in pkg/ctrl/ctrl_set_globfld_{x,y}z.F with calls to
S/R WRITE_REC_{X,Y}Z_RL (from pkg/rw).
remove src file mdsio_rw_field.F & mdsio_rw_slice.F from NOOPTFILES list
in few linux_amd64_ifort* optfiles.
move if statement out of "lengthBuff" loop in mdsio_{read,write}_whalos.F

Going to merge this PR soon (later today ?) unless someone has more comments.


Option type missing from docs

It is not clear how to represent a Rust Option type in XDR. The custom-types documentation does not include any information about Option types.
Also, it would be helpful to have more tooling or at least a link to a reference implementation which converts Soroban types into their corresponding XDR structures. Otherwise, you are left guessing at how values should be encoded as SCVals.

Add to this page https://developers.stellar.org/docs/smart-contracts/example-contracts/custom-types

Should add to this page too: https://developers.stellar.org/docs/tools/sdks/build-your-own


Provide serde feature flag (rename "serdex" to "serde")

Started in #5

Fixed in 799c4cff374417d3dfe6f3bc607a198cb9bfbb2c.


add .mkv in Video.gitignore

Pull Request
Thank you for contributing to @dvcs/gitignore and https://www.gitignore.io.
New or update
Select the appropriate check box for this pull request. This helps when merging to ensure there are no conflicts with other templates or misunderstandings of how thee template list works.
New

[ ] Template - New .gitignore template
[ ] Composition - Template made from smaller templates
[ ] Inheritance - Template similar to an existing template
[ ] Patch - Template extending functionality of existing template

Update

[x] Template - Update existing .gitignore template

Details
Add .mkv file extension (Matroska Multimedia Container) to Video

@S1M0N38 Thanks for your contribution!


Improve ModelCache Generation in Xpand

test.zip
If you enable Model Caching (https://docs.devexpress.com/eXpressAppFramework/DevExpress.ExpressApp.XafApplication.EnableModelCache) expand generates a lot of unnecessary nodes.
Attached test.zip with demo program and Model Cache file, if you analyze it, you can see a very unuseful node info for each column, something as
<ColumnInfo Id="SkipNullOrEmptyValues" GeneratedIndex="-1" PropertyName="SkipNullOrEmptyValues" Width="50">           <OptionsColumnAdvBandedView>             <ModelMappers>               <MapperContextContainer Id="Default" />               <MapperContextContainer Id="ModelMapperAttribute" />             </ModelMappers>           </OptionsColumnAdvBandedView>           <OptionsColumnGridView>             <ModelMappers>               <MapperContextContainer Id="Default" />               <MapperContextContainer Id="ModelMapperAttribute" />             </ModelMappers>           </OptionsColumnGridView>           <OptionsColumnLayoutView>             <ModelMappers>               <MapperContextContainer Id="Default" />               <MapperContextContainer Id="ModelMapperAttribute" />             </ModelMappers>           </OptionsColumnLayoutView>           <OptionsPivotField>             <ModelMappers>               <MapperContextContainer Id="Default" />               <MapperContextContainer Id="ModelMapperAttribute" />             </ModelMappers>           </OptionsPivotField>           <TreeListColumnOptions>             <ModelMappers>               <MapperContextContainer Id="Default" />               <MapperContextContainer Id="ModelMapperAttribute" />             </ModelMappers>           </TreeListColumnOptions>         </ColumnInfo>
Please note, that also, with medium-to-large apps, the model generation throws an Out-of-Memory exception while trying to generate model cache. Memory consumption is nearly 10 x during this process

ith medium-to-large apps, the model generation throws an Out-of-Memory exception

model generation on what context? Run with Debugger?, without Debugger?, what platform? need as many details as u can think

Win app, runtime, without a debugger.
If you take a look at the generated Modecache.xafml, it is too large.

are these extradiffs to blame? can u tell?

how large is the cache file

how large is the cache file

In a production app (1200 bo, 10000 properties),, model cache is about 60mg (attached)  and memory consumption increase to 8000 megabytes during model generation, while in normal use, it uses about 500 mg.
Model.Cache.xafml.zip

Huge app how long it takes to runtime with debugger attached?

Huge app how long it takes to runtime with debugger attached?

not too much, but memory requirement breaks my debugger session for this app.
I'm curious about the repeated   that is automatically generated for EACH column ...

the ModelMapper can be improved to globally prevent caching but at the moment it is possible to experiement your self
class MyClass:ModelNodesGeneratorUpdater<ModelViewsNodesGenerator> {
    public override void UpdateNode(ModelNode node) {
        ((ModelNode) node.GetValue("MyCustomObject")).SetValue(ModelValueNames.NeedsCachingKey, false);
    }
}

Replace the MyCustomObject with large model trees u have e.g. GridView, Dashboard etc. and let me know your results please

the MyClass needs registration in your Module.cs

GridView

what is the exactly string "GridView" , "GridViewOptions"? they give null reference

the position u try to invoke the GridViewOptions is wrong the node is an IModelVIews interface
u have to find the location its the root of each map

so for the screenshot u have a GridView property in the IModelListView interface and since u have an IModelViews u can enumerate it and change the caching behaviour as in the snippet

Not sure what I'm doing ... but something as
class MyClass : ModelNodesGeneratorUpdater<ModelViewsNodesGenerator>
    {
        public override void UpdateNode(ModelNode node) { node.SetValue(ModelValueNames.NeedsCachingKey, false); }
    }

do not reduce or change output modelcache file

hmm I would expect this to effect all VIews, need to ask the XAF team I will get back to u on this on Mon

We will try to answer all questions that do not require research within 24hr.
To prioritize cases that require research we use the following labels in order. For all other issues the posting time is respected.

❇ Exclusive-Services
❤ Bronze Sponsor
❤ Sponsor
❤ Backer
Installation
ShowStopper
Nuget
Contribution
BreakingChange
ReproSample
Deployment
must-have

This case is prioritized.

Issue is deprioritized as no Assignee found and scheduled for auto-close if no activity in the next 60 days. Thanks a lot for your contribution.

Closing issue for age. Feel free to reopen it at any time.
.Thank you for your contribution.


[MM-57194] Mark confidential settings as secrets

Summary
See https://github.com/mattermost/mattermost-plugin-github/pull/811
Ticket Link
https://mattermost.atlassian.net/browse/MM-57194

https://github.com/mattermost-community/mattermost-plugin-confluence/pull/123 needs to be merged first


refactor yargs' table layout logic to use new helper library

What Have You Done!
I found the logic in yargs for laying out multi-column tables to be some of the most confusing in the codebase. It had grown fairly organically, and we were doing backflips to use the same code for: commands, examples, and options.
Motivated by this, I've created the library cliui:
https://www.npmjs.com/package/cliui
Which provides an abstraction for multi-column UIs.
Testing Help Please
This is a fairly major change, I've tested the usage output with several of my own yargs applications, but I'd love a second set of eyes.
Mind helping with testing? @annonymouse, @nylen, @pirxpilot, @raine

I'll test with postcss-cli and report back.

These are the changes.
Before - yargs 3.6.0
Usage: bin/postcss -use|-p plugin [--config|-c config.json] --output|-o output.css input.css

Options:
  -c, --config   JSON file with plugin configuration
  -u, --use      postcss plugin name (can be used multiple times)  [required]
  -o, --output   Output file
  -d, --dir      Output directory
  --safe         Enable postcss safe mode.
  -v, --version  Show version number
  -h, --help     Show help

Examples:
  postcss --use autoprefixer -c options.json -o screen.css screen.css                   Use autoprefixer as a postcss plugin
  postcss --use autoprefixer --autoprefixer.browsers "> 5%" -o screen.css screen.css    Pass plugin parameters in plugin.option notation
  postcss -u postcss-cachify -u autoprefixer -d build *.css                             Use multiple plugins and multiple input files

After - yargs from cliui branch
Usage: bin/postcss -use|-p plugin [--config|-c config.json] --output|-o output.css input.css

Options:
  -c, --config  JSON file with plugin configuration
  -u, --use  postcss plugin name (can be used multiple times)
                 [required]
  -o, --output  Output file
  -d, --dir  Output directory
  --safe  Enable postcss safe mode.
                 [boolean]
  -v, --version  Show version number
  -h, --help  Show help

Examples:
  postcss --use autoprefixer -c options.json -o screen.css screen.css  Use autoprefixer as a postcss plugin
  postcss --use autoprefixer --autoprefixer.browsers "> 5%" -o screen.css screen.css  Pass plugin parameters in plugin.option notation
  postcss -u postcss-cachify -u autoprefixer -d build *.css  Use multiple plugins and multiple input files

Looks like in after version options are not aligned, [required] mysteriously ends up in new line, and examples are not aligned either.
 For example I am calling wrap() with no args. And things do look better if I remove that line. Will gladly fix and retest if you have any suggestions.

@pirxpilot I did some refactoring of cliui that moved yargs closer to your original output.
It's worth noting that .wrap() will actually disable wrapping, because it's equivalent to .wrap(undefined).
You should test and make sure things look closer to the original format now, but you might find you get a nicer ui if you don't call .wrap().

Nice. With disabled wrapping it looks like it did before cliui.
Enabling wrapping (that is when I test with wrap() call removed) makes it look interesting
In any case: I am happy.

@pirxpilot argh, I'll make it so the right-hand-column has a reasonable maximum width., so that we don't end up with the behavior outlined in that gist...
I'd love to get you running without .wrap()., I will have another pull shortly.

@pirxpilot a max-width is now set on the left-hand column if wrap is enabled, give that a shot.

Nice! :shipit: Looks like that now:
Usage: bin/postcss -use|-p plugin [--config|-c config.json] --output|-o output.
css input.css

Options:
  -c, --config   JSON file with plugin configuration
  -u, --use      postcss plugin name (can be used multiple times)     [required]
  -o, --output   Output file
  -d, --dir      Output directory
  --safe         Enable postcss safe mode.                             [boolean]
  -v, --version  Show version number
  -h, --help     Show help

Examples:
  postcss --use autoprefixer -c options.    Use autoprefixer as a postcss plugin
  json -o screen.css screen.css
  postcss --use autoprefixer --             Pass plugin parameters in plugin.
  autoprefixer.browsers "> 5%" -o screen.   option notation
  css screen.css
  postcss -u postcss-cachify -u             Use multiple plugins and multiple
  autoprefixer -d build *.css               input files


Why is imagenet-1k considered zero shot?

I thought Imagenet 21k is a superset of imagenet-1k, as written in the ViT paper.

If Imagenet-21K is allowed for pre-training, I assume the evaluation on imagenet1k cannot be considered as zero shot?

This confusion comes from the inconsistency of terms in the literature.

In our setup and paper, we call the full ImageNet dataset as  ImageNet-22K, the standard subset with 1K classes as ImageNet-1K.  Therefor,   ImageNet-21K in our case is defined as the subset of full ImageNet that excluded all the images in ImageNet-1K (ie, ImageNet-21K = ImageNet-22K - ImageNet-1K).

You screenshot has a different definition of ImageNet-21K, which is equivalent to ImageNet-22K in our case.

If people follow our setting by training on ImageNet-21K, and evaluating on ImageNet-1K, it is zero-shot task transfer on ImageNet-1K.
In case you have further concerns on the definition of ``zero-shot'', I think the definition of zero-shot is also evolving. Here is an summary:

Hope this resolve your concerns. Thanks.


Document current and future optophysiology projects

Now we have some more general purpose projects, and plans for more, this should be added to the cards on the front page

Opening a PR!


snapper: fix build

Description of changes
zlib missing dependency

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

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

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

4 packages built:

btrfs-assistant
snapper
snapper-gui
snapper-gui.dist

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

4 packages built:

btrfs-assistant
snapper
snapper-gui
snapper-gui.dist


webapp: simplify common code pattern

The webapi is failing due to https://github.com/google/oss-fuzz/issues/12573 -- this is good to go


Abstract Secured Connection/Channel

Currently, protocol QueryListener and ServerListener uses two associated types TcpChannel and TlsChannel. This design doesn't allow to reuse protocol startup-flow logic.
We somehow need to abstract away Channel so that protocol::Connection could with it as simple pipe and *Listeners could reuse handshake logic

Hi @alex-dukhno , please assign this issue to me. I will try to fix it based on your draft PR https://github.com/alex-dukhno/database/pull/171. Thanks.


Bug: Multiselection combobox does not show check state with PySide6 on macos

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior:
The multiselection combo shows empty boxes for active elements in the list.
It does not update check marks on mouse click.
It also crashes OpenPype on keyboard space press.
Expected Behavior:
On a mouce click the checkmark should appear in the box.
Pnce the combobox is opened, all active elements should be checkmarked
Version
3.16.0
What platform you are running OpenPype on?
MacOS
Steps To Reproduce:

Open OP Admin settings on macos
Open anatomy-attributes-applications list and click on empty box, no check mark will appear
Select the box with a keyboard and press space, the OP will crash.

Are there any labels you wish to add?

[X] I have added the relevant labels to the bug report.

Relevant log output:
No response
Additional context:
No response
[cuID:OP-6377]

I can notice that the mentioned PR is merged, Is this issue still open ?

I will close it, thanks!


Make extras depend on extras_codec instead of duplicating source files

This ensures that everything that uses them has them built with the same flags.

I think this has been superseded  by other changes to the build system


Provide store enhancer

This store enhancer replaces manually wrapping state and reducer.

i really like this idea & i'm so glad you brought it up. Doing this would allow us to internalize ensureState, which means upgrading your app is as easy as including a store enhancer. Simply awesome.
Conversely, the reason why i haven't done this yet is because a storeEnhancer can't be added/removed throughout the life of the app, whereas a reducerEnhancer can be. In the real world, that mean a bigger landing page payload (much bigger if your landing page doesn't need immutablejs).
Personally, I'd sacrifice the easy-install for payload size & flexibility, but that's just me. Maybe the right option is to give devs the choice like your PR does? Honestly, now that I'm using cashay I don't really have a need for this package, but I understand the utility for situations where a GraphQL-based solution isn't an option.
@gaearon any preference on storeEnhancers vs reducerEnhancers vs both? I love forcing best practices, but maybe this is a good place to give folks the choice?

Well, we don't plan the dynamic storeEnhancer removal/adding und use ImmutableJS anyway.
So having a storeEnhancer included doesn't seem to have drawbacks for us.
Especially as writing a storeEnhancer is not the most common thing to do and required some research for me.

I would rather see it as reducer enhancer so it's clearer what's going on.
Also store enhancers should never mutate the store. If you make it a store enhancer please return a copy.

Sorry, I don't know how to write a reducer enhancer. Is there a resource about that?

I think reducer enhancer is what this project already is.

I would rather see it as reducer enhancer so it's clearer what's going on.

Following Dan's lead, I like this point, as it follows the standard reducer enhancer pattern. I'll close this for now, but thanks for the suggestion @m-lautenbach

I'd just like to point out, that for using this library, a reducer enhancer is not enough.
The state has to be wrapped as well.
That's why I combined these to preconditions into one store enhancer.


map_blocks with change of dimensions returns IndexError: tuple index out of range

Not sure if this is a bug or incorrect use. The following code returns an error, I don't get why:
import dask
import dask.array as da
from numpy import median,array

def func(a):
    m = median(a)
    print(m)
    return array(m)

x = da.random.random((10000, 10000), chunks=(5000, 5000))

x.map_blocks(func,chunks=(1,1)).compute()

The output:
nan
0.5001597269075302
0.49996143572562185
0.49994227403711916
0.5001512434686584
Traceback (most recent call last):
  ...
    result.append(tuple([shape(deepfirst(a))[dim] for a in arrays]))
IndexError: tuple index out of range

I believe this is incorrect use, map_blocks needs to keep the number of dimensions, which np.median only does if you pass keepdims=True, and if you do that on your example, there will be no exceptions being thrown, but the result is still not what you are probably expecting. You will then have an array of shape (2,2) composed of 4 chunks of shape (1,1). Of course, you could now rechunk that array to a single-chunk array and apply the same procedure, but this will likely be inefficient.
For efficient reductions in Dask, each operation has its own specialization, but I don't know why there's not one for median, perhaps it's not used that commonly in Dask.

This was answered on stackoverflow: https://stackoverflow.com/questions/8885663/how-to-format-a-floating-number-to-fixed-width-in-python

Thanks @m-albert.
If your question has been answered, feel free to close this @nocrosstalk.

Thank's all, yes, teh answer on stackoverlof worked.


Vidhi Kulkarni - Individual Review 2/9

Score: 0.3/0.3

[ ] .1 - Frontend UI demo.   UI takes inputs and passes them to an API and returns data from the backend to frontend.

[ ] .1 - Postman API Demo.  JSON Raw/Body formatted API passes inputs to backend and updates persistent table.

[ ] .1 - Java Demo - Object Creation.  Tester method that shows creation of Objects and outputs to Terminal, illustrate printing objects (hopefully using toString().


Handle duplicated column names in Join

It was user's problem but for SQL, it's our problem. damn.

Returns first column of the name when duplicated. It seemed not so look bad.

Done


Directive doesn't need to be terminal anymore

See #132

@rubenv @gabegorelick Is it going to to be merged? We've bumped into this as well.


I built jenkins pipeline project with Poll MailBox Trigger but it didn't work although it worked well with freestyle project

Jenkins and plugins versions report

Environment

Paste the output here

What Operating System are you using (both controller, and any agents involved in the problem)?
I set up Jenkins version 2.424 on Window Server with java 11 and Poll Mailbox Trigger Plugin
version1.026.
But Poll Mailbox Trigger didn't work in Pipeline project, but freestyle project work well and can be triggered to run python script.
Reproduction steps
I tested connection successfully and I can see there are many emails can be triggered to this jenkins pipeline.

But it didn't work.

Something went wrong with poll mail box trigger logs

Expected Results
I want this jenkins pipeline will be trigger by these emails

Actual Results
But it didn't work.

Anything else?
No response

Same problem here.
Actually i had a workaround with a freestyle project that trigger a pipeline project


parse error: Invalid numeric literal at line 2, column 6

I noticed that script seems to be broken now.  It could be they changed something at the site because direct browsing still works for me.
It looks like the following line is throwing the "parse error: Invalid numeric literal at line 2, column 6"
el="$($_JQ -r '.val' <<< "$d")"
The HTML code below is what it is trying to parse.
`

Sorry, An unexpected error has occurred. Please try again. Go back home

copyright @ SOAP2DAY.com

`

@jeffwrusso Right, something is changed on the sever side. The latest commit should work.