ValueError: Error when checking model input: expected convolution2d_input_1 to have shape (None, 96, 128, 1) but got array with shape (0, 1, 96, 128)

Can you please help me figure this, the code previously worked with Theano but now has problem with TF.
@fchollet

mona@pascal:~/computer_vision/kaggle_distracted_driver$ python run_keras_simple.py
/usr/local/lib/python2.7/dist-packages/sklearn/cross_validation.py:44: DeprecationWarning: This module was deprecated in version 0.18 in favor of the model_selection module into which all the refactored classes and functions are moved. Also note that the interface of the new CV iterators are different from that of this module. This module will be removed in 0.20.
  "This module will be removed in 0.20.", DeprecationWarning)
Using TensorFlow backend.
I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcublas.so.8.0 locally
I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcudnn.so.5.0 locally
I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcufft.so.8.0 locally
I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcuda.so.1 locally
I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcurand.so.8.0 locally
Read train images
Load folder c0
Load folder c1
Load folder c2
Load folder c3
Load folder c4
Load folder c5
Load folder c6
Load folder c7
Load folder c8
Load folder c9
Directory doesnt exists
('Train shape:', (0, 1, 96, 128))
(0, 'train samples')
('Split train: ', 0)
('Split valid: ', 0)
('Split holdout: ', 0)
Traceback (most recent call last):
  File "run_keras_simple.py", line 210, in <module>
    validation_data=(X_test, Y_test), verbose=1)
  File "/usr/local/lib/python2.7/dist-packages/keras/models.py", line 672, in fit
    initial_epoch=initial_epoch)
  File "/usr/local/lib/python2.7/dist-packages/keras/engine/training.py", line 1117, in fit
    batch_size=batch_size)
  File "/usr/local/lib/python2.7/dist-packages/keras/engine/training.py", line 1030, in _standardize_user_data
    exception_prefix='model input')
  File "/usr/local/lib/python2.7/dist-packages/keras/engine/training.py", line 124, in standardize_input_data
    str(array.shape))
ValueError: Error when checking model input: expected convolution2d_input_1 to have shape (None, 96, 128, 1) but got array with shape (0, 1, 96, 128)

code:
# -*- coding: utf-8 -*-

import numpy as np
np.random.seed(2016)

import os
import glob
import cv2
import math
import pickle
import datetime
import pandas as pd

from sklearn.cross_validation import train_test_split
from keras.models import Sequential
from keras.layers.core import Dense, Dropout, Activation, Flatten
from keras.layers.convolutional import Convolution2D, MaxPooling2D
from keras.utils import np_utils
from keras.models import model_from_json
from sklearn.metrics import log_loss

def get_im(path):
    # Load as grayscale
    img = cv2.imread(path, 0)
    # Reduce size
    resized = cv2.resize(img, (128, 96))
    return resized

def load_train():
    X_train = []
    y_train = []
    print('Read train images')
    for j in range(10):
        print('Load folder c{}'.format(j))
        path = os.path.join('..', 'input', 'imgs', 'train', 'c' + str(j), '*.jpg')
        files = glob.glob(path)
        for fl in files:
            img = get_im(fl)
            X_train.append(img)
            y_train.append(j)

    return X_train, y_train

def load_test():
    print('Read test images')
    path = os.path.join('..', 'input', 'imgs', 'test', '*.jpg')
    files = glob.glob(path)
    X_test = []
    X_test_id = []
    total = 0
    thr = math.floor(len(files)/10)
    for fl in files:
        flbase = os.path.basename(fl)
        img = get_im(fl)
        X_test.append(img)
        X_test_id.append(flbase)
        total += 1
        if total%thr == 0:
            print('Read {} images from {}'.format(total, len(files)))

    return X_test, X_test_id

def cache_data(data, path):
    if os.path.isdir(os.path.dirname(path)):
        file = open(path, 'wb')
        pickle.dump(data, file)
        file.close()
    else:
        print('Directory doesnt exists')

def restore_data(path):
    data = dict()
    if os.path.isfile(path):
        file = open(path, 'rb')
        data = pickle.load(file)
    return data

def save_model(model):
    json_string = model.to_json()
    if not os.path.isdir('cache'):
        os.mkdir('cache')
    open(os.path.join('cache', 'architecture.json'), 'w').write(json_string)
    model.save_weights(os.path.join('cache', 'model_weights.h5'), overwrite=True)

def read_model():
    model = model_from_json(open(os.path.join('cache', 'architecture.json')).read())
    model.load_weights(os.path.join('cache', 'model_weights.h5'))
    return model

def split_validation_set(train, target, test_size):
    random_state = 51
    X_train, X_test, y_train, y_test = train_test_split(train, target, test_size=test_size, random_state=random_state)
    return X_train, X_test, y_train, y_test

def split_validation_set_with_hold_out(train, target, test_size):
    random_state = 51
    train, X_test, target, y_test = train_test_split(train, target, test_size=test_size, random_state=random_state)
    X_train, X_holdout, y_train, y_holdout = train_test_split(train, target, test_size=test_size, random_state=random_state)
    return X_train, X_test, X_holdout, y_train, y_test, y_holdout

def create_submission(predictions, test_id, loss):
    result1 = pd.DataFrame(predictions, columns=['c0', 'c1', 'c2', 'c3', 'c4', 'c5', 'c6', 'c7', 'c8', 'c9'])
    result1.loc[:, 'img'] = pd.Series(test_id, index=result1.index)
    now = datetime.datetime.now()
    if not os.path.isdir('subm'):
        os.mkdir('subm')
    suffix = str(round(loss, 6)) + '_' + str(now.strftime("%Y-%m-%d-%H-%M"))
    sub_file = os.path.join('subm', 'submission_' + suffix + '.csv')
    result1.to_csv(sub_file, index=False)

# The same as log_loss
def mlogloss(target, pred):
    score = 0.0
    for i in range(len(pred)):
        pp = pred[i]
        for j in range(len(pp)):
            prob = pp[j]
            if prob < 1e-15:
                prob = 1e-15
            score += target[i][j] * math.log(prob)
    return -score/len(pred)

def validate_holdout(model, holdout, target):
    predictions = model.predict(holdout, batch_size=128, verbose=1)
    score = log_loss(target, predictions)
    print('Score log_loss: ', score)
    # score = model.evaluate(holdout, target, show_accuracy=True, verbose=0)
    # print('Score holdout: ', score)
    # score = mlogloss(target, predictions)
    # print('Score : mlogloss', score)
    return score

cache_path = os.path.join('cache', 'train.dat')
if not os.path.isfile(cache_path):
    train_data, train_target = load_train()
    cache_data((train_data, train_target), cache_path)
else:
    print('Restore train from cache!')
    (train_data, train_target) = restore_data(cache_path)

batch_size = 64
nb_classes = 10
nb_epoch = 2
# input image dimensions
img_rows, img_cols = 96, 128
# number of convolutional filters to use
nb_filters = 32
# size of pooling area for max pooling
nb_pool = 2
# convolution kernel size
nb_conv = 3

train_data = np.array(train_data, dtype=np.uint8)
train_target = np.array(train_target, dtype=np.uint8)
train_data = train_data.reshape(train_data.shape[0], 1, img_rows, img_cols)
# train_data = train_data.transpose((0, 3, 1, 2))
train_target = np_utils.to_categorical(train_target, nb_classes)
train_data = train_data.astype('float32')
train_data /= 255
print('Train shape:', train_data.shape)
print(train_data.shape[0], 'train samples')

X_train, X_test, X_holdout, Y_train, Y_test, Y_holdout = split_validation_set_with_hold_out(train_data, train_target, 0.2)
print('Split train: ', len(X_train))
print('Split valid: ', len(X_test))
print('Split holdout: ', len(X_holdout))

model_from_cache = 0
if model_from_cache == 1:
    model = read_model()
else:
    model = Sequential()
    model.add(Convolution2D(nb_filters, nb_conv, nb_conv,
                            border_mode='valid',
                            input_shape=(img_rows, img_cols, 1)))
    model.add(Activation('relu'))
    model.add(Convolution2D(nb_filters, nb_conv, nb_conv))
    model.add(Activation('relu'))
    model.add(MaxPooling2D(pool_size=(nb_pool, nb_pool)))
    model.add(Dropout(0.25))

    model.add(Flatten())
    model.add(Dense(128))
    model.add(Activation('relu'))
    model.add(Dropout(0.5))
    model.add(Dense(nb_classes))
    model.add(Activation('softmax'))

    model.compile(loss='categorical_crossentropy', optimizer='adadelta', metrics=["accuracy"])

    '''
    model.fit(train_data, train_target, batch_size=batch_size, nb_epoch=nb_epoch,
              show_accuracy=True, verbose=1, validation_split=0.1)
    '''
    model.fit(X_train, Y_train, batch_size=batch_size, nb_epoch=nb_epoch,
            validation_data=(X_test, Y_test), verbose=1)

score = model.evaluate(X_test, Y_test, show_accuracy=True, verbose=0)
print('Score: ', score)
score = model.evaluate(X_holdout, Y_holdout, show_accuracy=True, verbose=0)
print('Score holdout: ', score)
validate_holdout(model, X_holdout, Y_holdout)
save_model(model)

cache_path = os.path.join('cache', 'test.dat')
if not os.path.isfile(cache_path):
    test_data, test_id = load_test()
    cache_data((test_data, test_id), cache_path)
else:
    print('Restore test from cache!')
    (test_data, test_id) = restore_data(cache_path)

test_data = np.array(test_data, dtype=np.uint8)
test_data = test_data.reshape(test_data.shape[0], 1, img_rows, img_cols)
# test_data = test_data.transpose((0, 3, 1, 2))
test_data = test_data.astype('float32')
test_data /= 255
print('Test shape:', test_data.shape)
print(test_data.shape[0], 'test samples')
predictions = model.predict(test_data, batch_size=128, verbose=1)

create_submission(predictions, test_id, score[0])

The first problem might be that your X_train is empty. Is that intentional?
('Train shape:', (0, 1, 96, 128))

The second problem might be that you're mixing the Theano and TensorFlow image_dim_ordering. What setting did you use in your Keras config?
This looks like Theano ordering (channels, rows, cols):
('Train shape:', (0, 1, 96, 128))

while this looks like TensorFlow ordering (rows, cols, channels):
    model.add(Convolution2D(nb_filters, nb_conv, nb_conv,
                            border_mode='valid',
                            input_shape=(img_rows, img_cols, 1)))

Both orderings should work, as long as you set image_dim_ordering correctly and consistently use the same ordering in all your inputs and shapes.

u need check the train data's and the target data's format

@bxwhl this is a bad comment that doesn't help humans.

@monajalal Did you ever resolve this?  I'm having a similar problem (although I never converted from Theano), where I need to create a "None" dimension.
Here are some details:

Using Anaconda as my virtual environment
Keras version 2.0.6
TensorFlow version 1.1.0

I am creating an example fairly closely following this tutorial.
And here are the relevant snippets of code:
from keras.models import Sequential
from keras.layers import Dense, Activation, Dropout
from keras.layers import LSTM,TimeDistributed,SimpleRNN
from keras.utils.data_utils import get_file
import numpy as np
from time import sleep
import random
import sys

...
X = np.zeros((len(sentences), maxlen, len(chars)), dtype=np.bool)
y = np.zeros((len(sentences),maxlen, len(chars)), dtype=np.bool) # y is also a sequence , or  a seq of 1 hot vectors
for i, sentence in enumerate(sentences):
    for t, char in enumerate(sentence):
        X[i, t, char_indices[char]] = 1

for i, sentence in enumerate(next_chars):
    for t, char in enumerate(sentence):
        y[i, t, char_indices[char]] = 1

...
model = Sequential()
model.add(LSTM(512, return_sequences=True, input_shape=(maxlen, len(chars))))  # original one
model.add(LSTM(512, return_sequences=True)) #- original
model.add(Dropout(0.2))
model.add(TimeDistributed(Dense(len(chars))))
model.add(Activation('softmax'))
model.compile(loss='categorical_crossentropy', optimizer='rmsprop')

...
history=model.fit(X, y, batch_size=128, nb_epoch=1,verbose=0)

...
seed_string="brutus:\nbeing so moved, he will not spare"
x=np.zeros((1, len(seed_string), len(chars)))
for t, char in enumerate(seed_string):
    x[0, t, char_indices[char]] = 1.
preds = model.predict(x, verbose=0)[0]

At this last line, it errors out, with the following error:
ValueError: Error when checking : expected lstm_13_input to have shape (None, 40, 39) but got array with shape (1, 39, 39)

I have played with the dimensionality of the seed_string and the x generated from it, but no matter how I try to adjust them, I have some sort of mis-match, always due to this requirement of None.
I looked at Reshape's code and an example of how to use it, but since Keras' Reshape is meant for model layers, I don't even understand how I could use it to reshape the input to the prediction, and Numpy has no way to reshape creating a None dimension (at least not to my knowledge).

@lazarillo I came across the same problem, and I don't understand how to make the None shape

Okey I seemed to have used input_shape (256,256,3) for my CNN which resulted in my model requiring (None, 256, 256, 3) shapes for single value prediction.
So what I did was create an array: nop = np.array([None])
And then append to it the shape: img = np.append(nop, resized_img)

I was getting this error in my softmax layer. I found out that I had not done to_categorical() on my labels.

Hi, I'm working on a sentiment analysis project in python with keras using CNN and word2vec as an embedding method.
according to my code, I set my input shape, 15 and 512 so when I want to predict the polarity of a new sentence say:"I am so sorry" for example, with the length: 4 - I face this error:
**

expected conv1d_1_input to have shape (15, 512) but got array with shape (4, 512)

**
``
and this is a part of my code:

model = Sequential()
model.add(Conv1D(32, kernel_size=3, activation='elu', padding='same',
input_shape=(max_tweet_length, vector_size)))
model.add(Conv1D(32, kernel_size=3, activation='elu', padding='same'))
model.add(Conv1D(32, kernel_size=3, activation='elu', padding='same'))
model.add(Conv1D(32, kernel_size=3, activation='elu', padding='same'))
model.add(Dropout(0.25))
model.add(Conv1D(32, kernel_size=2, activation='elu', padding='same'))
model.add(Conv1D(32, kernel_size=2, activation='elu', padding='same'))
model.add(Conv1D(32, kernel_size=2, activation='elu', padding='same'))
model.add(Conv1D(32, kernel_size=2, activation='elu', padding='same'))
model.add(Dropout(0.25))
model.add(Dense(256, activation='relu')
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Flatten())
model.add(Dense(2, activation='softmax'))

all I can do is making new python file and load all my related models such as word2vec ... and change the input shape on it like this:
model111 = Sequential()
 model111.add(Conv1D(32, kernel_size=3, activation='elu', padding='same',
 input_shape=(len(final), 512)))
 model111.add(Dense(256, activation='relu'))
 model111.add(Dense(256, activation='relu'))
 model111.add(Dropout(0.5))
 model111.add(Flatten())
 model111.add(Dense(2, activation='softmax'))

I wanna know whether this method is ok or not?? any efficient solution would be really appreciated


Research CAR Mirror as a Kubo plugin

See https://github.com/ipfs/kubo/blob/master/docs/plugins.md.  If we can register new commands, this could simplify things a bit, allowing us to keep our logic separate from Kubo (no forking) but still easily run it with the Kubo daemon.

Starting point at https://github.com/fission-codes/kubo-car-mirror-plugin

Looks like we'll either want a daemon plugin (receives a CoreAPI) or a daemon internal plugin (Receives an IpfsNode).
https://pkg.go.dev/github.com/ipfs/kubo/plugin?utm_source=godoc#PluginDaemon
https://pkg.go.dev/github.com/ipfs/kubo/plugin?utm_source=godoc#PluginDaemonInternal
Will come back to this later.

Ah, I see that Dsync is a Kubo daemon plugin as well.  Looking there for inspiration.

Closed by #9


[Testing] Adjust sonarcloud and inegration tests

Adjusts sonarcloud to ignore the scenarios folder and other folders for code duplication.
Adjusts integration test workflows to run when there is changes to pyproject.toml.

Going to test against my own fork in main instead.


Proposal: delete Twitter account

Changes introduced with this PR
This proposal aims to delete the ContainerSSH Twitter account. Please discuss in the comments.

By contributing to this repository, I agree to the contribution guidelines.

Maybe we should put this on ice until we have a decision from the CNCF around the sandboxing? Otherwise, I'm all for deleting and avoiding social media, so +1 from me (that's a vote for yes).
I think we can let this proposal stay open until the CNCF decision?
What's your opinions, @bencurio, @tsipinakis?

I think that it may be worthwhile for the project to keep social channels, even if it only exist as a placeholder. This ensures that no one else can register our username.
At the moment, my opinion is to wait for the CNCF decision and leave this proposal open.

I agree with @bencurio, I think keeping the username is important for the ContainerSSH branding. If we end up setting up an RSS feed on the website it would be trivial to setup a bot to post only new entries to Twitter while having minimal interaction/maintenance for the account.
My vote is also to delay this until we have an answer for CNCF and re-evaluate then.

Closing proposal, postponing until we have an answer from CNCF.


Fixed #31157 -- Fixed displaying read-only JSONField values in admin.

Refs #31157  See https://code.djangoproject.com/ticket/31157

Should we add a test with an invalid JSON dict such as {(1, 2): 3}?

https://github.com/django/django/blob/b4f50ba61657a1528c4dd9821174f0e02f032233/tests/postgres_tests/test_json.py#L506-L510
This test covers that, data is validated before being stored as JSONField

This test covers the form field. The data comes from the model. But I'm not sure that we can get invalid JSON from postgres.
I also agree with what @charettes said in the ticket. We should probably wait for a complete implementation of JSONField to take care of this issue.

@dbxnr Thanks :+1: Welcome aboard :boat:
I reorganized commits, rebased from master, and pushed edits.


chore(ui): migrate Badge component to Typescript

Summary

Migrated the Badge component to TypeScript, enhancing code quality, maintainability, and scalability.
Utilised static typing to minimize runtime errors and improve the development experience.
Refactored the component for cleaner, more maintainable code.

Changes Made

TypeScript Migration:

Converted Badge component files to TypeScript.
Added comprehensive type annotations.
Created Badge.types.ts for custom types.

Refactoring:

Made necessary adjustments to address TypeScript-detected issues.
Further refactored for cleaner and more understandable code.
Added "to do" notes where there's duplicate logic between components e.g. Message

Testing:

Organised tests by what they check for better readability and maintenance.
Added edge case coverage for default rendering with no props, additional CSS classes and handling undefined icons
Verified component behaviour using Storybook.
Updated tests to use vitest.

Cleanup:

Removed deprecated code. It wasn't needed for any .js components.

Documentation:

Updated Storybook documentation.

Release:

Generated a changeset file.

Related Issues

https://github.com/cloudoperators/juno/issues/213

Screenshots
Screenshots: Deprecated .js code on the left, migrated .ts code on the right (see notes)

Testing Instructions

Run Storybook
Run Badge tests

Checklist

[x] I have performed a self-review of my code.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have added tests that prove my fix is effective or that my feature works.
[x] New and existing unit tests pass locally with my changes.
[x] I have made corresponding changes to the documentation (if applicable).
[x] My changes generate no new warnings or errors.

Aw! Thank You so much for the review, @andypf! 💪


Bug: capture property doesn't work with SVG renderer

https://codesandbox.io/s/frosty-villani-1xxxr?file=/index.js
Only works with canvas renderer

I'm trying to use the capture property to not allow text from interfering with the node:drag function. I tried CSS targeting with user-select, but that didn't help with the drag function

If you wanna make the text shape do not response the node:drag, you should assign draggable: false instead of capture.
P.S. the demo you provided is not configured with drag-node


There are no Cool Append blobs, correct?

This page says that Append blobs aren't supported for blob-level tiering:

Archive storage and blob-level tiering only support block blobs.

My understanding is that Append blobs do not support tiering at all - They are always hot even when they are in a cool storage account.
Please confirm?

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

ID: 30c49a6b-e628-4aab-dc7f-fc88264b88f0
Version Independent ID: 3da34196-ac73-5fd9-c473-51a07226f83a
Content: Premium, Hot, Cool, and Archive storage for blobs - Azure Storage
Content Source: articles/storage/blobs/storage-blob-storage-tiers.md
Service: storage
GitHub Login: @kuhussai
Microsoft Alias: kuhussai

That's not correct. The default account tier applies to both block and append blobs in the account. Blob-level tiering, however, can only be performed on block blobs.

Oh - thanks @kuhussai!
So while I'm here: how best to move existing append blobs to the cool tier?
Changing the default just affects new append blobs, append blobs can't be tiered individually, azcopy does not support append blobs (IIUC)

The default account tier applies to any blob that does not have an explicit tier set (you'll see "Hot Inferred" or "Cool-Inferred" as the access tier value for these blobs). Since you cannot set an explicit tier on append blobs using SetBlobTier, changing the default account tier to Cool will apply to both existing and new append blobs within your account.


opencore-amr download source failed

Hi, the certificate has expired when i try
curl -L https://kent.dl.sourceforge.net/project/opencore-amr/opencore-amr/opencore-amr-0.1.5.tar.gz
Do you know if there another place to download from?

Have seen your commit!


Restore error handling and logging on deployment

See deploy getter in SoftwareDeliveryMachine. Should use runWithLog.
A failed deployment now produces no feedback at all, but remains apparently pending.

Fixed


[Feature] Adopt a release branch strategy

Adopt a release branch strategy.
We need to be able to quickly cut patch releases.

Closing, done.


ENH Adds LayerList context

Adds LayerList context. Currently we only have a Selection[Layer] context. For the file menu (#4865) we needed LayerList because we needed the number of layers present (NOT number of layers selected) and could not obtain this from Selection[Layer]. The number of layers present is required for the enablement status of the CommandId.DLG_SAVE_LAYERS command.
Note this was originally part of #4865 but move to separate PR to aid review and git blame.
References
ref: https://github.com/napari/napari/pull/4865#discussion_r1292895534

Thanks folks I think all comments have been addressed and we have three approvals, so I'm merging now!


Actuator health-check fails with an Enterprise Vault namespace

Describe the bug
Using Spring Boot 2.2.2, with dependency:
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-vault-config</artifactId>
    </dependency>

I get Spring Cloud Vault version 2.2.0.
In my company, we use Vault Enterprise, so my configuration looks like this:
spring.cloud.vault:
  host: vault.mycompany.tld
  port: 443
  scheme: https
  namespace: companyVault/myNamespace
  authentication: APPROLE
  app-role:
    role: spring_client
    role-id: xxxxxxxx-d37c-2d70-9b22-xxxxxxxxxx
    secret-id: xxxxxxxx-f949-0392-d8d1-xxxxxxxxxx
  kv:
    enabled: true
    backend: kv
    application-name: app

and my application correctly gets its properties from Vault.
But the health-check fails, as reported by another user on Stack-Overflow.
The problem seems to be that the namespace header is sent also for health-check requests, whereas it should not be.

Same. We decided to turn off vault health indicator in application.yml
management:
  health:
    vault:
      enabled: false

Thanks for report. The actual issue we have here is that don't have any documentation which paths are namespaced and which are globally available. I filed spring-projects/spring-vault#534 to address the imperative (non-reactive) health check.


FEAT: Add ability to compile for subdirectory as final html target

It might be nice to be able to specify a target directory when compiling html from the collection of notebooks. On the QuantEcon lecture site this would be akin to compiling for the py directory which would enable the python lecture source to be independent.

this is a lower priority for QuantEcon as we are migrating to use individual buckets.


Get real current notifications

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

Project coverage is 59.56%. Comparing base (26c6af2) to head (11160d7).

Files with missing lines
Patch %
Lines

src/desktop_notifier/backends/macos.py
7.69%
12 Missing :warning:

:exclamation:  There is a different number of reports uploaded between BASE (26c6af2) and HEAD (11160d7). Click for more details.
HEAD has 10 uploads less than BASE

Flag
BASE (26c6af2)
HEAD (11160d7)

pytest
12
2

Additional details and impacted files
@@             Coverage Diff             @@
##             main     #198       +/-   ##
===========================================
- Coverage   85.13%   59.56%   -25.58%
===========================================
  Files          10       10
  Lines         895      868       -27
===========================================
- Hits          762      517      -245
- Misses        133      351      +218

Flag
Coverage Δ

pytest
59.56% <7.69%> (-25.58%)
:arrow_down:

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

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


Floating point bug in percent formatting

Formatting a percent value with format string "0%" (no decimals) doesn't work properly
Examples:
numbro(0.811).format('0%') => "81.10000000000001%"
numbro(1.1).format('0%') => "110.00000000000001%"
numbro(1.15)format('0%) => "114.99999999999999%"
numbro(5.1).format('0%') => "509.99999999999994%"
numbro(9.8).format('0%') => "980.0000000000001%"
This is numbro version 2.2.0

I'm getting the same issue as well with the latest version 2.3.1.
numbro(83.5458).format('0%');
numbro(83.5458).format({output: "percent"});
// 8354.58%

Do you guys have any updates regarding this issue?


Roll engine 49445ce4949b..009b1d5a94cd (4 commits)

https://github.com/flutter/engine/compare/49445ce4949b...009b1d5a94cd
git log 49445ce4949bf0d28506a6b22e28b4264f624e5f..009b1d5a94cd21d138d1aa80e7a03ce4f8248377 --no-merges --oneline
009b1d5a9 Roll fuchsia/sdk/core/mac-amd64 from 1F71B9KuZAVZz0LDQW_g0bbfWsxEgQkDpHPKrkc97xYC to lKQ0yBPnk1oXLyNM7XhqSDl5llP6Cx2GWkQjS0ExozcC (flutter/engine#9779)
fbe50c6a6 Roll fuchsia/sdk/core/mac-amd64 from bYFmlYp6Mc82r7dw58IaEny3_mnq-yZW06Ccr19j0lIC to 1F71B9KuZAVZz0LDQW_g0bbfWsxEgQkDpHPKrkc97xYC (flutter/engine#9778)
51c3c11b8 fix objcdoc generation (flutter/engine#9772)
f076a60c9 Roll fuchsia/sdk/core/mac-amd64 from EYnRdXFT9l-d8Qkz4zeTRXnqfV3KQzpQhoPs1r0-740C to bYFmlYp6Mc82r7dw58IaEny3_mnq-yZW06Ccr19j0lIC (flutter/engine#9771)
The AutoRoll server is located here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff (garyq@google.com), and stop
the roller if necessary.

Trybots failed. These were the failed builds: https://cirrus-ci.com/task/4828996066344960

Commit queue failed; closing this roll.


DebDepl_v0.2

Updated the documentation on Deb installation (experimental); killed quite some errors and security issues and clarified stuff.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.M3tal_Warrior seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


How to determine the deployment url and artifact values in init.gradle, uploadArchive task will pick while executing

In the Build.gradle, I have defined uploadArchive task and jar in the project.
jar {
	baseName = 'GradleVersionParam'
}

uploadArchive {
    repositories {
       mavenDeployer {
            repository(url: ReleaseURL) {
                authentication(userName: Username, password: Password)
            }
            snapshotRepository(url: SnapshotURL ) {
                authentication(userName: Username, password: Password)
            }
        }
    }
}

Approach is to do validation pre and post upload, when I am executing uploadArchives, rootname for the project is 'JAVADEMO' and baseName is 'GradleVersionParam', both are different, so the artifact gets created with baseName. I am not able to be fetch baseName of the artifact in init.gradle at the global level. We have applications running on v4.1 to v6.5 of Gradle. So expectation is run init.gradle for all Gradle verions
projectsEvaluated {

    rootProject.allprojects {

   Upload uploadTask = (Upload) project.tasks.uploadArchives;

    gradle.addListener(new TaskExecutionListener() {

    void beforeExecute(Task task) {
if (task.name.matches("publish.*PublicationTo.*Repository") ) {
                        def publication = task.publicationInternal
                        println("Remote => $publication.artifactId $publication.groupId $publication.version  $task.repository.url")
                        groupId = "$publication.groupId"
                        artifactId = "$publication.artifactId"
                        version = "$publication.version"
                        repoURL = "$task.repository.url"
                    }

                    if (task.name.matches("uploadArchives")) {
                        uploadTask.repositories.mavenDeployer {
                            if ( pom.getGroupId() != 'unknown' ){
                                groupId = pom.getGroupId()
                            }
                            println("pom.getArtifactId()--->"+pom.getArtifactId())
                            if ( pom.getArtifactId() != 'empty-project' ) {
                                artifactId = pom.getArtifactId()
                            }
                            println("pom.getVersion--->"+pom.getVersion())
                            if ( pom.getVersion() != '0') {
                                version = pom.getVersion()
                            }

                            if ( version.contains('SNAPSHOT') ) {
                                repoURL = snapshotRepository.url
                            } else {
                                repoURL = repository.url
                            }
                        }
                    }
             }
                void afterExecute(Task task, TaskState state) {
              }
      }
}

I am not able fetch the configuration details of the uploadArchives task just before the execution time like Artifactname, version, groupId and the url where it is getting uploaded.
Expected values to fetch before the uploadArchives task execution :
ArtifactID
GroupID
version
Url
I have put this query on  various public forums even on Gradle discussion forum, but could not get any response. Can you please assist.

Sorry that we've taken so long to get back to you on this.
UploadArchive has been deprecated and partially removed in Gradle 7.  maven-publish is the replacement mechanism and it does not currently expose the final URL either, but you should be able to look at the publication associated with the PublishToMavenRepository task and verify that the group/version/artifactId are what you would expect.  You might also be able to confirm that the right repository is being used or disable any PublishToMavenRepository tasks that should not be used.
I'm going to close this issue since we do not intend to provide an API specifically for this use case at this time.
Thanks!


Fix bug: fourslash test does not recognize tsconfig.json.

Adding // @Filename: tsconfig.json to a fourslash test makes no effect. The reason is we are using ts.readConfigFile() which reads the config file from disk. Change to this.host.readFile() instead.

Hi @hoanhtien, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

It looks like you're a Microsoft contributor (Tien Nguyen). If you're full-time, we DON'T require a Contribution License Agreement. If you are a vendor, please DO sign the electronic Contribution License Agreement. It will take 2 minutes and there's no faxing! https://cla.microsoft.com.

TTYL, MSBOT;

Fourslash already supports directive comments (e.g. //@module: commonjs). What's the intent of this?

Along the lines of what Ryan mentions, if we did this we need:

fourslash to give an error when you mix directives and tsconfig
more tests on the various ways in which this works/would work (particularly for more complex file arrangements) to ensure that future tests are doing what we expect and people don't start writing lots of tsconfig based tests that give a false sense of security (ex fourslash does its own weird file resolution that doesn't match the compiler itself)

@RyanCavanaugh The intent here is to some kind of test to verify that tsconfig.json is found and parsed correctly. We don't have this kind of test right now and moving forward there will be more work requiring it e.g. I am planning to expose tsconfig.json errors by adding it into tsserver response for open and projectInfo commands.
@danquirk Those are good points. If you guys think fourslash is a decent way to test tsconfig.json, I will move forward with improving this pull request.

@RyanCavanaugh we have no way to test tsconfig.json LS scenarios. this adds that.

:+1:


Single trace log of ProxyResolver#tls.connect prints 4.4 MB of data to output pane

This makes using logs quite difficult

Still in today's Insiders? (https://github.com/microsoft/vscode/issues/197549)

Seeing another case of that. Reopening the original issue.


locker not support Redis v6.0.16

my redis server version is 6.0.16
and the locker use the PXAT is new in redis 6.2
so i cant use it...

Hi @xieyj-apple,
What do think if there was a FallbackPX option allowing you to use PX instead?

Hi @xieyj-apple,
FallbackSETPX option has been added in v0.0.94


Builds errors when trying to use CLI tool

Steps to reproduce
Node version: v14.17.6

install the CLI tool from /bin/ so that you have datahub command available
cd into directory with CSV data and datapackage.json
run datahub show

Full logs:
❯ node -v
v14.17.6

~/code/datasets
❯ ls
population

~/code/datasets
❯ cd population

~/code/datasets/population master*
❯ datahub show
  ____                   _             _        _
 |  _ \    ___    _ __  | |_    __ _  | |      / \     _ __    _ __
 | |_) |  / _ \  | '__| | __|  / _` | | |     / _ \   | '_ \  | '_ \
 |  __/  | (_) | | |    | |_  | (_| | | |    / ___ \  | |_) | | |_) |
 |_|      \___/  |_|     \__|  \__,_| |_|   /_/   \_\ | .__/  | .__/
                                                      |_|     |_|
Using dataset found in: /Users/anuveyatsu/code/datasets/population
  ✔ Getting portal tools...
  ✔ Preparing app environment
  ⠇ Building app...
    Displaying dataset at http://localhost:3000
Error: Command failed: cd /Users/anuveyatsu/code/datasets/population/portal-experiment && yarn && yarn build
warning " ><EMAIL_ADDRESS>has unmet peer dependency<EMAIL_ADDRESS>warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>warning " ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>Browserslist: caniuse-lite is outdated. Please run:
npx browserslist@latest --update-db

Why you should do it regularly:
https://github.com/browserslist/browserslist#browsers-data-updating
Browserslist: caniuse-lite is outdated. Please run:
npx browserslist@latest --update-db

Why you should do it regularly:
https://github.com/browserslist/browserslist#browsers-data-updating
Browserslist: caniuse-lite is outdated. Please run:
npx browserslist@latest --update-db

Why you should do it regularly:
https://github.com/browserslist/browserslist#browsers-data-updating

Error occurred prerendering page "/". Read more: https://err.sh/next.js/prerender-error
TypeError: Cannot read property 'sample' of undefined
    at getDataForViewSpec (/Users/anuveyatsu/code/datasets/population/portal-experiment/.next/server/pages/index.js:438:29)
    at addView (/Users/anuveyatsu/code/datasets/population/portal-experiment/.next/server/pages/index.js:380:30)
    at getStaticProps (/Users/anuveyatsu/code/datasets/population/portal-experiment/.next/server/pages/index.js:749:28)
    at processTicksAndRejections (internal/process/task_queues.js:95:5)
    at async renderToHTML (/Users/anuveyatsu/code/datasets/population/portal-experiment/node_modules/next/dist/next-server/server/render.js:28:109)
    at async /Users/anuveyatsu/code/datasets/population/portal-experiment/node_modules/next/dist/export/worker.js:26:6
    at async /Users/anuveyatsu/code/datasets/population/portal-experiment/node_modules/next/dist/build/tracer.js:3:470

> Build error occurred
Error: Export encountered errors on following paths:
        /
    at /Users/anuveyatsu/code/datasets/population/portal-experiment/node_modules/next/dist/export/index.js:30:1103
    at async /Users/anuveyatsu/code/datasets/population/portal-experiment/node_modules/next/dist/build/tracer.js:3:470
    at async /Users/anuveyatsu/code/datasets/population/portal-experiment/node_modules/next/dist/build/index.js:39:69
    at async /Users/anuveyatsu/code/datasets/population/portal-experiment/node_modules/next/dist/build/tracer.js:3:470
    at async /Users/anuveyatsu/code/datasets/population/portal-experiment/node_modules/next/dist/build/index.js:21:731
    at async /Users/anuveyatsu/code/datasets/population/portal-experiment/node_modules/next/dist/build/tracer.js:3:470
error Command failed with exit code 1.

    at ChildProcess.exithandler (child_process.js:390:12)
    at ChildProcess.emit (events.js:400:28)
    at maybeClose (internal/child_process.js:1055:16)
    at Socket.<anonymous> (internal/child_process.js:441:11)
    at Socket.emit (events.js:400:28)
    at Pipe.<anonymous> (net.js:675:12) {
  killed: false,
  code: 1,
  ✔ Getting portal tools...
  ✔ Preparing app environment
  ✖ Building app...
    → error Command failed with exit code 1.
    Displaying dataset at http://localhost:3000
(node:58400) UnhandledPromiseRejectionWarning: Error: Command failed: cd /Users/anuveyatsu/code/datasets/population/portal-experiment && yarn && yarn build
warning " ><EMAIL_ADDRESS>has unmet peer dependency<EMAIL_ADDRESS>warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>warning " ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>warning "babel-jest > babel-preset-jest > babel-preset-current-node-syntax ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>Browserslist: caniuse-lite is outdated. Please run:
npx browserslist@latest --update-db

Why you should do it regularly:
https://github.com/browserslist/browserslist#browsers-data-updating
Browserslist: caniuse-lite is outdated. Please run:
npx browserslist@latest --update-db

Why you should do it regularly:
https://github.com/browserslist/browserslist#browsers-data-updating
Browserslist: caniuse-lite is outdated. Please run:
npx browserslist@latest --update-db

Why you should do it regularly:
https://github.com/browserslist/browserslist#browsers-data-updating

This is because the folder you are running datahub show from does not have a datapackage.json. At the moment portal.js only supports folders with package.json. We have to add this feature as well.

@risenW i suggest we do that check up front and output a useful error message if no datapackage.json

@risenW i suggest we do that check up front and output a useful error message if no datapackage.json

Yes, I will work on that.

@risenW I've figured out why I had this issue + identified further issue:

views property in datapackage.json was causing an error, e.g., try this dataset - https://github.com/datasets/population
README.md is required to build the app

@risenW I've figured out why I had this issue + identified further issue:

views property in datapackage.json was causing an error, e.g., try this dataset - https://github.com/datasets/population
README.md is required to build the app

I've updated the description of this issue.

I’ll add some more robust checks to fix this concerns. Working on it atm.


Finalise colour scheme

Must have royal blue (RGB 1, 33, 97 hex 012161).

https://coolors.co/b80c09-034732-012161-ffba08-0c120c


global: WIP serializers refactoring

Refactoring of serializers.

Addresses #39

Looks good. Thanks a lot for also fixing the import sorting problems. Only problems as I can see:

[ ] Move DoJSON serialiser to Invenio-MARC21.
[ ] Fix license headers.

Can you also add a Co-authored-by: Lars Holm Nielsen<EMAIL_ADDRESS>to the bottom.

cc: @jmartinm (since you were starting to play with this part)

Fixed license headers, DoJSON moved and the TODO removed.

ES timing out...


Don't buffer more than a few heartbeats

Buffering heartbeats can cause trauma on the server after restart.
Related to these PRs:
https://github.com/chef/omnibus-pushy/pull/91
https://github.com/chef/oc-pushy-pedant/pull/54
https://github.com/chef/opscode-pushy-client/pull/84

Knife:
https://github.com/chef/knife-push/pull/45


make proxy service have upload byte limit

Closes: https://issues.redhat.com/browse/RHOAIENG-8080
Description
When uploading to the Pipeline Service, it does not limit the request on the bytes sent. this issue is been currently addressed on client side  for pipeline in this PR https://github.com/opendatahub-io/odh-dashboard/pull/2874
To overall limit the upload body limit , changes are been done in backend side

How Has This Been Tested?

Create a file of > 1 mib ( to do this run openssl rand -hex 25000000 > mb-50.yaml)
2.Undo the changes made in this PR https://github.com/opendatahub-io/odh-dashboard/pull/2874
Go to Pipeline Page and click on import pipeline
Import the created file
See if error is thrown

Test Impact
No test impacted

Request review criteria:

Self checklist (all need to be checked):

[x] The developer has manually tested the changes and verified that the changes work
[x] Commits have been squashed into descriptive, self-contained units of work (e.g. 'WIP' and 'Implements feedback' style messages have been removed)
[x] Testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
[ ] The developer has added tests or explained why testing cannot be added (unit or cypress tests for related changes)

If you have UI changes:

[ ] Included any necessary screenshots or gifs if it was a UI change.
[ ] Included tags to the UX team if it was a UI/UX change (find relevant UX in the SMEs section).

After the PR is posted & before it merges:

[ ] The developer has tested their solution on a cluster by using the image produced by the PR to main

/lgtm
/approve


Task 1407: Prevent duplicate downvotes or upvotes

Fixes the following issues on the parent repository (Duplicates have been omitted from this list):

Number of votes is not working correctly · Issue #283
Should be unable to uncast someone else's votes · Issue #301

To reproduce the original issue:

Using the most the recent published version of the extension, create a new board with at least one feedback item. Navigate to the 'Vote' tab, and vote for an item. Click quickly and you can reproduce the behavior of a new vote registering on the board but not on the associated item.

Note:

There is a separate task to try and repair the vote count on existing boards. This fix will work on existing boards but will only prevent additional vote miscounts.

I have tested these changes with the additional package updates which were in the main repository for this project and they behaved as expected.


remove mecab-pyhon3 from requirements.txt

This PR fixes the bug that mecab-python3 does not work on Windows machines (https://github.com/mjpost/sacrebleu/issues/74, https://github.com/OpenNMT/OpenNMT-tf/issues/653).
I removed the mecab from requirements.txt and it now asks to manually install the module when tokenizing Japanese sentences.

Hello, I'm the maintainer of mecab-python3. I noticed you've had issues with that package not working on Windows.
I am working on getting Windows wheels released (see here; help testing would be appreciated!), but you could also use fugashi, another MeCab wrapper I maintain that already has working Windows wheels.
If I can help with this in any way let me know.

Thanks, @polm! @MorinoseiMorizo, what do you think? I imagine you are just hoping to have this completed, but maybe this other solution would be preferable?

Thanks, @polm and @mjpost.
I think this bug has a large impact on other software that uses sacrebleu, so it should be fixed as fast as we can.
I may make a PR later that changes Japanese tokenizer from mecab-python3 to fugashi, but this time, my suggestion is just to merge this PR and fix the bug on installation.
Thanks!

This is now released as sacrebleu 1.4.9. Thank you very much, @MorinoseiMorizo!


[Feature Request] Add Abyss items to Rare Templates

Hi,
I found a previous request #731 where you mention that full support was added, but I don't see them under the Rare Templates section.
I can definitely import them, but it would be nice to be able to craft new ones to determine what the best stats are without having to manually edit to see the results.
Could Abyss jewels and Stygian Vise be added to Rare Templates?
Thanks for your great work, as always!

They aren't in the rare templates, but you can craft them (and any other
base type in the game) by using the "Craft item..." button in the items tab.
On Fri, 14 Dec. 2018, 3:21 am corosou<EMAIL_ADDRESS>wrote:

Hi,
I found a previous request #731
https://github.com/Openarl/PathOfBuilding/issues/731 where you mention
that full support was added, but I don't see them under the Rare Templates
section.
I can definitely import them, but it would be nice to be able to craft new
ones to determine what the best stats are without having to manually edit
to see the results.
Could Abyss jewels and Stygian Vise be added to Rare Templates?
Thanks for your great work, as always!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Openarl/PathOfBuilding/issues/1317, or mute the
thread
https://github.com/notifications/unsubscribe-auth/ASTQ01wBTVxAk_mnf96-C0Yd6XoKoaGJks5u4mJOgaJpZM4ZRuXa
.


speculative fix for failed spatial updates in scenecomposer window

Since there's a big:

//TODO: refresh does not work

and I seem to remember seeing it when doing the ExternalChangeScanner changes, I refactored the methods there to do the same thing in this case.
I haven't actually verified that it works in this instance, yet.

Thanks for looking into this issue @neph1. I'm curious, does this fix also address the issue of the 'AnimComposer' node and its child animations not updating?

I would think so, but I haven't tested. The original use case worked and I remember specifically adding support in ExternalChangeScanner for the new animation system.


[Focus areas] Scope and goals for code development

This is a first attempt to implement the proposal in issue #44.

Thx!


Cannot read properties of undefined (reading 'themeDefs') TypeError: Cannot read properties of undefined (reading 'themeDefs')

Constantly getting an undefined on the current(state) call here https://github.com/cosmology-tech/interchain-ui/blob/02de661f1de495c98e4700149ad14a06c3795ae2/src/models/store.ts#L120
leading to an undefined error on the currentState.themeDefs @ L123, but I am passing in a valid themeDefs to the ThemeProvider. I have no idea what is causing the state to not be set properly
    <ThemeProvider
      defaultTheme='dark'
      themeDefs={[
        {
          name: 'CUSTOM',
          vars: {
            font: {
              body: 'font-size: 100px;',
            },
            fontSize: {
              sm: '200px',
              md: '240px',
              lg: '200px',
            },
          },
        },
      ]}
      customTheme='CUSTOM'
    >

Similarly, if i have my css with
html {
  font-size: 62.5%;
}

this seems to break the interchain-ui visuals. Is the theme provider font configuration able to override the interchain ui to be 100% to counter the 62.5% on the main css?


Added basic SVN driver

Added SVN driver to available drivers - some of the function names don't quite match with the command being run.
Credentials are loaded from SVN_USERNAME and SVN_PASSWORD environment variables.

@justnom I added the username, password to the config. https://github.com/etsy/Hound/blob/master/config-example.json#L19-L24

@kellegous awesome! I was just about to integrate you changes from the config branch into this when I see you've already committed it :) Thanks for the help!


Incorporate ITO blocks

The libraries are not always loaded at the beginning of the scripts. We should improve this and structure clear ITO blocks.

Hey team,
Let's check this in the lesson today, before Hannes joins.
Kind regards,
Julian Peters


Company mode display seems off

First off, I love these themes and I appreciate all the hard work that goes into them. I'm trying to ensure that I'm loading my themes properly. It seems that my company mode, while sharing some of the colors of my loaded themes, is not styled appropriately. Here's a screenshot of what I'm looking at:

Here's my config:
(use-package doom-themes
  :ensure t
  :config
  (setq doom-themes-enable-bold nil
        doom-themes-enable-italic nil)
  (load-theme 'doom-molokai)
  (doom-themes-visual-bell-config)
  (doom-themes-neotree-config))

If this is the way it is designed to look, that's fine. I want to ensure that I'm not doing something wrong first.

That is certainly a bug, but I am unable to reproduce it.
Could you add this to your config (after the load-theme call):
(set-face-attribute 'tooltip nil :inherit nil :background "#21242b" :foreground "#bbc2cf")

If that works, then I know what to fix. If it doesn't, run the following and tell me what each face's Background color is:

M-x describe-face RET tooltip
M-x describe-face RET company-tooltip

Here is the output of M-x describe-face RET tooltip:
Face: tooltip (sample) (customize this face)

Documentation:
Face for tooltips.

Defined in ‘tooltip.el’.

           Family: unspecified
          Foundry: unspecified
            Width: unspecified
           Height: unspecified
           Weight: unspecified
            Slant: unspecified
       Foreground: #bbc2cf
DistantForeground: unspecified
       Background: #21242b
        Underline: unspecified
         Overline: unspecified
   Strike-through: unspecified
              Box: unspecified
          Inverse: t
          Stipple: unspecified
             Font: unspecified
          Fontset: unspecified
          Inherit: nil

Here is the output of M-x describe-face RET company-tooltip:
Face: company-tooltip (sample) (customize this face)

Documentation:
Face used for the tooltip.

Defined in ‘company.el’.

           Family: unspecified
          Foundry: unspecified
            Width: unspecified
           Height: unspecified
           Weight: unspecified
            Slant: unspecified
       Foreground: unspecified
DistantForeground: unspecified
       Background: #515151
        Underline: unspecified
         Overline: unspecified
   Strike-through: unspecified
              Box: unspecified
          Inverse: unspecified
          Stipple: unspecified
             Font: unspecified
          Fontset: unspecified
          Inherit: tooltip

[back]

I have yet to reproduce this issue. I suspect another plugin may be responsible. Have you tried doom-molokai and company on a blank Emacs install?

It's been a while. Is this still an issue? If not, I'll go ahead and close this in a couple days.

@hlissner go ahead and close this. I nuked my Emacs config 2x since I posted this and eventually the problem went away. Apologies for not informing you sooner! Keep up the great work.


Fixing broken link and changing release note date

Description of the change:
Reason for the change:
Link to original source:

Closes #

Hello @Whatthefoxsays,Thanks again for the PR! We appreciate your contribution and look forward to                                              continued collaboration. Thanks!                                             Team SendGrid DX


Proposals Changes - Different Stakes for Alliances and Campaigns

Campaigns: 2.5% stake with 75,000 cap
Alliances: 1% stake and 15,000 cap.
Implementation -
Alliance and campaigns use the same stake caps at the moment
This will change it so they use different stake caps - need to introduce 2 new settings for this

Hello, I have some questions:

The 2.5% and 1% are based on the percentage of Seeds required, right?
Is the 75,000/15,000 cap the maximum amount of Seeds an alliance/campaign proposal can stake?
Just to make sure, the percentages aren't settings as well, right?


Codeblocks stopped formatting and highlighting

VSCode Version: 1.0.0
OS Version: Windows 8.1

Steps to Reproduce:

start a code block with ```csharp
enter code
end code block with ```
Although they all seem to work here...

Before updating to version 1.0 code blocks would highlight in md and the preview; not after
when enter { } automatic indenting and formatting would occur; not after the update
Example:
There is no coloring or formatting in this codeblock...
Comments also don't show green like they did before
public string LastName { get; set; }
public string FirstName { get; set; }

public string FullName
{
get { return FirstName + " " + LastName; }
}

Code blocks are highlighting here. You probabby have some extension makes problem.

I checked; no extensions are installed... I updated VS Code a couple days ago to 1.0 and have experienced this problem since.  Yes, code blocks do display as expected on GitHub but not in VS Code.

It's because they moved C# support out of the main code base and into its own extension. See https://code.visualstudio.com/docs/languages/csharp#_installing-c35-support
The extension is available here: https://marketplace.visualstudio.com/items?itemName=ms-vscode.csharp
You can also refer to issues like https://github.com/Microsoft/vscode/issues/5424#issuecomment-211198084 or https://github.com/Microsoft/vscode/issues/5403#issue-148895180

Thank you; after working through the errors created by my company proxy I was able to install the extension and everything seems to be working again.


Incorrect ipd in one eye Beat Saber

Description

When running Beat Saber the right eye is incorrect. I suspect the ipd settings are funky but I'm not 100% sure. I have not had time to see if it happens with other games but I will in a few hours. The steam UI overlay and steam home look normal. The left eye looks correct, seems to be facing the correct direction, no warping. The right eye feels as if its pointed outward away from the bridge of my nose and there is significant warping.

General Troubleshooting

[x] I carefully followed the instructions in the README and successfully completed the setup wizard
[x] I read the ALVR GitHub Wiki

Environment
https://linux-hardware.org/?probe=4752729a61
Hardware
Note: for Linux, an upload to the hw-probe database is preferred: hw-probe -all -upload
CPU:
Ryzen 9 7900X
GPU:
AMD RX 7900 XT
GPU Driver Version:
AMDGPU 24.1.2
Audio:
Pipewire
Installation
ALVR Version:
v20.8.1
ALVR Settings File:
session.json
(is this the right file?)
SteamVR Version:
2.6.2
Install Type:

[ ] Packaged (exe, deb, rpm, etc)
[x] Portable (zip)
[ ] Source

OS Name and Version (winver on Windows or grep PRETTY_NAME /etc/os-release on most Linux distributions):
Arch Linux

This is a beat saber bug.


What to do about FAIL -fontforge-check: Glyphs do not have points at extremas!

Observed behaviour
I have run the "add extremas" in Glyphs and this altered 10-15 glyphs but I still get this error.
Expected behaviour
Should I now ignore it this error or is there an efficient method for finding/fixing the problem shapes?
Resources and exact process needed to replicate
Aplos-Regular.ttf.zip

I spent some time looking into what could be done with my font using existing tools to check. I tried red arrow and it helped me find some non flat curve points that resolve from PS bezier into in a TTF quadratic shape that does lack an extrema. Thanks to Kostas for noticing it in the TTF output! I also found non flat and no straight lines that I could fix and fixed them. And I merged some shapes to see if issues showed up post-merge. They do. So I fixed those. But I still get the extrema error in FL. It think now that the most useful thing would be to have the error report which glyph/s has/have the issue by name and or by glyph number. I am also of two minds about if this should be a "Warning" or a "Fail". The argument for fail is that if you really don't have an extrema at the top of let's say O this could cause catastrophic rendering errors - BUT- you could also have a design that deliberately works to get a shape that can't be made unless you violate a rule. (Mathew Carter has given examples of this ) then the fail is arguably too strong. My feeling is that especially if there is reporting about where the errors are found we could more reasonably assume that designers or others will be able to take steps to remedy the problem.

BTW - with the red arrow issues fixed I was able to use the Glyphs add extrema tool to somehow fix something the red arrow script did not see and now I don't get the extrema error.

we don't have fontforge checks anymore


Support richer instruction sets

More instructions: The Jolt codebase currently implements the RISC-V 32-bit Base Integer instruction set (RV32I), but the Jolt construction is highly flexible. Add support for the RISC-V “M”  extension for integer multiplication and division, as described in the Jolt paper. Further, Jolt can trivially support the 64-bit variant RV64IM.

@GUJustin @moodlezoup potentially interested in tackling this if an open issue, might need a few eyes on my PR drafts as I implement this 😄

Hi @mw2000, feel free to give it a shot! My suggestion would be to start with just the instructions/subtables for the (32-bit) M extension (i.e. the stuff in jolt-core/src/jolt/instruction and jolt-core/src/jolt/subtable). The rest of the work shouldn't be too bad either, but will require some refactoring (as described in the Jolt paper, the M extension introduces the notion of "virtual instructions", which complicates things a bit)

Sounds good! I'll make small atomic PRs for the instructions and pass them over for review.
More than happy to break this issue into smaller ones (and use this as the bucket) if it makes sense for tracking (assuming 1 issue = 1 PR)

Sure, go for it. Thanks for taking this on!

Hey guys, still on it. I should have something up in next couple days

Great, let me know if you have any questions!

Hey @moodlezoup Was implementing the non-virtual multiplication instructions, MUL, MULU and MULHU. I was able to get the first two running just fine, but running into some trouble with MULHU.
With this context, i wanted to understand what exactly a subtable is and if you could add more color to the jolt_instruction_test! Macro

hi. are people working on rest of the instructions such as div and rem?

@Ethan-000  Feel free to dm me on TG, my handle is that_one_nerdy
Right now we've been coordinating over DM, but happy to create a group or something similar


Remove the unused flag local variable

here we need to remove the useless assignment of imagedata as null ,
path: jme3-desktop/src/main/java/com/jme3/app/state/MjpegFileWriter.java
file: MjpegFileWriter.java

remove the local variable


An exception occured during compiling

Environment:
Windows10 x64
Python 3.5.0
The versions of pip and setuptools are the latest.
FFmpeg-4.0-x64 shared and dev ("\bin" has already insert into PATH)
All libraries in requirements.txt were installed.
Installation:
Library: av-7.0.0 (Other versions also tried)
Tried Method:

PyPI

pip install av==7.0.0

setuptools

python setup.py build --ffmpeg-dir=D:\ffmpeg
Exception Occured:
Two method returned the same error.
...（leave out）
running cythonize
building 'av.buffer' extension
error: [WinError 2] The system cannot find the file or directory specified.

As of PyAV 8.0.0, binary wheels are provided which will greatly simplify installation and should solve your issue.


feat(db): implement ConfigInterface for MockDb

Type of Change

[ ] Bugfix
[ ] New feature
[x] Enhancement
[ ] Refactoring
[ ] Dependency updates
[ ] Documentation
[ ] CI/CD

Description

Additional Changes

[ ] This PR modifies the API contract
[ ] This PR modifies the database schema
[ ] This PR modifies application configuration/environment variables

Motivation and Context

The main motivation is to have MockDb stubs, help to void mocking, and invocation of external database api's.
For more information check https://github.com/juspay/hyperswitch/issues/172
Fixes https://github.com/juspay/hyperswitch/issues/997.
How did you test it?

Checklist

[x] I formatted the code cargo +nightly fmt --all
[x] I addressed lints thrown by cargo clippy
[x] I reviewed submitted code
[ ] I added unit tests for my changes where possible
[ ] I added a CHANGELOG entry if applicable

Thanks for the PR, @PanGan21!


can we just use *.py file instead *.ipynb as tutorial

it looks *.ipynb always cause many setup issue

Hi @loveJasmine sure, happy to accept PRs- this would be a great contribution!


NovaForm submitCallback not working

I looked at the code and it should work but I am currently doing a simple console.log but the call back isn't fired even when the props are available. Any idea?

Hard to say without more data. Do you have a link to your code?

<NovaForm currentUser={Meteor.user()}                      collection={Lectures}                      methodName="lectures.new"                      submitCallback={function(doc){                             console.log(doc);                             doc = _.extend(doc, {                               createdAt: new Date(),                               courseId: Meteor.userId()                             });                             return document;                       }}                       successCallback={(res)=>{                         Messages.flash("A lecture was added.", "success");                      }}/>
I am currently working on adding a new prop to pass those values. submitCallback is just not fired even though I don't see any issue with the code. No idea.

Looking at the code, even if it were called it wouldn't really do much. I'll push a commit to improve it.

Also I would recommend just using hidden fields to pass data. Seems like the simplest way to do it to me.

I did it adding a new field. I am guessing I will try it later again. Thanks, thou!


Add command option for --private-key

Is there a way to pass the --private-key file into the playbook command?

@gosolid published to npm


Check that either a HTTP 200 video URL or a text description of at least 140 characters is entered in the form

It can be both.
If a HTTP 200 video URL is entered, the text description can be any size.
/!\ Don't forget to sanitize the user inputs (but you probably already did :)

done


Fix glob pattern on Windows

Fixes #184.

Hey! Tests are OK, but please override your commit if you can, commitlint fails due to unsemantic title.

Thanks!


PhysicsDirectBodyState2D: add get_contact_local_velocity_at_position

This is the 2D analogue of the method introduced for 3D in https://github.com/godotengine/godot/pull/58880.

Thanks!


feat(docs): api cheat sheet

This is an mvp of an api cheat sheet page. Please share feedback on the approach before I spend more time dialing in the styling. Target audience here is someone more familiar with baseui and needs quick access to the finer details about api types and the source code referenced.

grabs all types.js files from src directory
transforms that file into a list of exported types
if an exported type is an object type definition, include its properties
includes line numbers for each type/property definition. rendered page links directly to the line
docs site reads COMMIT_REF from netlify build env
reorganizes testing to include scripts directory
bundles documentation site file generation into a single script

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.2 out of 3 committers have signed the CLA.:white_check_mark: gergelyke:white_check_mark: chasestarr:x: renovate[bot]You have signed the CLA already but the status is still pending? Let us recheck it.

I think it makes perfect sense 👍

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.2 out of 3 committers have signed the CLA.:white_check_mark: gergelyke:white_check_mark: chasestarr:x: renovate[bot]You have signed the CLA already but the status is still pending? Let us recheck it.

This is how the page looks like with better styling: https://deploy-preview-1761--baseui.netlify.com/cheat-sheet/

There's a link called 'API cheat sheet', but I removed the sidebar from this page to allow for faster ctrl + f functionality


question: editing existing files planned?

Question
Hello!
I have got a question concerning both the roadmap (#1) and the README of this project.  The README states that editing existing files is not supported, yet.  The roadmap does not mention whether such a feature would be scheduled for future releases.
Thus, I was wondering whether editing existing files is planned or if such functionalities would be beyond this project's scope.

Hello and thanks for the question.
I have no plans to support reading/modifying existing files. My focus is on creating a robust featureful library for writing Excel files. Reading/modifying is just too big a secondary task.


Align question spacing across pages

Align title/question spacing across pages.
Radios have a spacing of 3 units after the title/question. This brings all the other question pages in line with them.
Follow up on https://github.com/alphagov/govuk-coronavirus-vulnerable-people-form/pull/143#issuecomment-602461862

Need to check this change with Tim but I think it's a good idea.

Need to check this change with Tim but I think it's a good idea.

Approved!


Verify content(OpenPGP/MIME signed message + pub key) with detached signature

maybe it's a sister of #240
It seems PGPainless identifies an input source as armored(maybe because we have a pub key here)

// SPDX-FileCopyrightText: 2022 Paul Schaub<EMAIL_ADDRESS>//
// SPDX-License-Identifier: Apache-2.0

package org.pgpainless.decryption_verification;

import static org.junit.jupiter.api.Assertions.assertTrue;

import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.nio.charset.StandardCharsets;

import org.bouncycastle.openpgp.PGPException;
import org.bouncycastle.util.io.Streams;
import org.junit.jupiter.api.Test;
import org.pgpainless.PGPainless;
import org.pgpainless.decryption_verification.cleartext_signatures.InMemoryMultiPassStrategy;

public class VerifyDetachedSignatureTest {

    @Test
    public void verify() throws PGPException, IOException {
        String signedContent = "Content-Type: multipart/mixed; boundary=\"------------26m0wPaTDf7nRDIftnMj4qjE\";\n" +
                " protected-headers=\"v1\"\n" +
                "From: Denys<EMAIL_ADDRESS>+
                "To<EMAIL_ADDRESS>+
                "Message-ID<EMAIL_ADDRESS>+
                "Subject: Signed + pub key\n" +
                "\n" +
                "--------------26m0wPaTDf7nRDIftnMj4qjE\n" +
                "Content-Type: multipart/mixed; boundary=\"------------RQxi6oNuQI1n8MnuNglORR5s\"\n" +
                "\n" +
                "--------------RQxi6oNuQI1n8MnuNglORR5s\n" +
                "Content-Type: text/plain; charset=UTF-8; format=flowed\n" +
                "Content-Transfer-Encoding: base64\n" +
                "\n" +
                "U29tZSBpbXBvcnRhbnQgdGV4dA0KDQo=\n" +
                "--------------RQxi6oNuQI1n8MnuNglORR5s\n" +
                "Content-Type: application/pgp-keys; name=\"OpenPGP_0xC32089CD6AF8D6CE.asc\"\n" +
                "Content-Disposition: attachment; filename=\"OpenPGP_0xC32089CD6AF8D6CE.asc\"\n" +
                "Content-Description: OpenPGP public key\n" +
                "Content-Transfer-Encoding: quoted-printable\n" +
                "\n" +
                "-----BEGIN PGP PUBLIC KEY BLOCK-----\n" +
                "\n" +
                "xjMEYIucWBYJKwYBBAHaRw8BAQdAew+8mzMWyf3+Pfy49qa60uKV6e5os7de4TdZ\n" +
                "ceAWUq/NF2RlbmJvbmQ3QGZsb3djcnlwdC50ZXN0wngEExYKACAFAmCLnFgCGwMF\n" +
                "FgIDAQAECwkIBwUVCgkICwIeAQIZAQAKCRDDIInNavjWzm3JAQCgFgCEyD58iEa/\n" +
                "Rw/DYNoQNoZC1lhw1bxBiOcIbtkdBgEAsDFZu3TBavOMKI7KW+vfMBHtRVbkMNpv\n" +
                "unaAldoabgPOOARgi5xYEgorBgEEAZdVAQUBAQdAB1/Mrq5JGYim4KqGTSK4OESQ\n" +
                "UwPgK56q0yrkiU9WgyYDAQgHwnUEGBYKAB0FAmCLnFgCGwwFFgIDAQAECwkIBwUV\n" +
                "CgkICwIeAQAKCRDDIInNavjWzjMgAQCU+R1fItqdY6lt9jXUqipmXuqVaEFPwNA8\n" +
                "YJ1rIwDwVQEAyUc8162KWzA2iQB5akwLwNr/pLDDtOWwhLUkrBb3mAc=3D\n" +
                "=3DyJxA\n" +
                "-----END PGP PUBLIC KEY BLOCK-----\n" +
                "\n" +
                "--------------RQxi6oNuQI1n8MnuNglORR5s--\n" +
                "\n" +
                "--------------26m0wPaTDf7nRDIftnMj4qjE--\n";
        String signature = "-----BEGIN PGP SIGNATURE-----\n" +
                "\n" +
                "wnsEABYIACMWIQTBZCjWAcs5N4nPYdTDIInNavjWzgUCYguNRQUDAAAAAAAKCRDDIInNavjWzoxf\n" +
                "AQCOCu6bityLBbY1MPF+smwYLjkJvzEHf+ErXC7KkI4mnAEAn7FPPOzJAwWENv8a//0zg4P9Ymdr\n" +
                "uyp1EJ1tsavXRQA=\n" +
                "=K5yW\n" +
                "-----END PGP SIGNATURE-----\n";
        String pubkey = "-----BEGIN PGP PUBLIC KEY BLOCK-----\n" +
                "Version: PGPainless\n" +
                "\n" +
                "mDMEYIucWBYJKwYBBAHaRw8BAQdAew+8mzMWyf3+Pfy49qa60uKV6e5os7de4TdZ\n" +
                "ceAWUq+0F2RlbmJvbmQ3QGZsb3djcnlwdC50ZXN0iHgEExYKACAFAmCLnFgCGwMF\n" +
                "FgIDAQAECwkIBwUVCgkICwIeAQIZAQAKCRDDIInNavjWzm3JAQCgFgCEyD58iEa/\n" +
                "Rw/DYNoQNoZC1lhw1bxBiOcIbtkdBgEAsDFZu3TBavOMKI7KW+vfMBHtRVbkMNpv\n" +
                "unaAldoabgO4OARgi5xYEgorBgEEAZdVAQUBAQdAB1/Mrq5JGYim4KqGTSK4OESQ\n" +
                "UwPgK56q0yrkiU9WgyYDAQgHiHUEGBYKAB0FAmCLnFgCGwwFFgIDAQAECwkIBwUV\n" +
                "CgkICwIeAQAKCRDDIInNavjWzjMgAQCU+R1fItqdY6lt9jXUqipmXuqVaEFPwNA8\n" +
                "YJ1rIwDwVQEAyUc8162KWzA2iQB5akwLwNr/pLDDtOWwhLUkrBb3mAc=\n" +
                "=pXF6\n" +
                "-----END PGP PUBLIC KEY BLOCK-----\n";

        DecryptionStream verifier = PGPainless.decryptAndOrVerify()
                .onInputStream(new ByteArrayInputStream(signedContent.getBytes(StandardCharsets.UTF_8)))
                .withOptions(
                        new ConsumerOptions()
                                .addVerificationOfDetachedSignatures(new ByteArrayInputStream(signature.getBytes(StandardCharsets.UTF_8)))
                                .addVerificationCerts(PGPainless.readKeyRing().keyRingCollection(pubkey, true).getPgpPublicKeyRingCollection())
                                .setMultiPassStrategy(new InMemoryMultiPassStrategy())
                );

        Streams.drain(verifier);
        verifier.close();
        OpenPgpMetadata metadata = verifier.getResult();
        assertTrue(metadata.isVerified());
    }
}

Originals
doc.sig.txt
doc.txt
Just in case I'd like to add I can verify the content with gpg via gpg --verify doc.sig doc

Is this happening on pgpainless-core:1.0.3?

@vanitasvitae One more thing. Maybe we can have an option where we can say PGPainless that we are trying to verify a non-armored source. When we verify OpenPGP/MIME signed message the signed part can't be armored.

Is this happening on pgpainless-core:1.0.3?

Sorry, I've forgotten to add that. Yup, it's 1.0.3
implementation('org.pgpainless:pgpainless-core:1.0.3') {
        // exclude group: 'org.bouncycastle' because we will specify it manually
        exclude group: 'org.bouncycastle'
    }

I will see if I can come up with a fix and maybe a good API for that :)

Can you verify that this message is in fact intact?
The logic path my code follows is the same as in this test, which works.
It appears that the signature is broken, as the signature is properly initialized and processed. Finally the verify() call returns false, indicating a broken message.
This is also what Sequoia-PGP tells me:
$ sq verify --signer-cert=pubkey --detached signature signedContent
Error verifying checksum from C16428D601CB393789CF61D4C32089CD6AF8D6CE:
           Message has been manipulated
1 bad checksum.
Error: Verification failed

Furthermore, I'm not able to verify the signature using gpg either:
$  gpg --no-default-keyring --keyring ./ring --trust-model always --import pub
gpg: keybox './ring' created
gpg: key C32089CD6AF8D6CE: public key<EMAIL_ADDRESS>imported
gpg: Total number processed: 1
gpg:               imported: 1
$ gpg --no-default-keyring --keyring ./ring --trust-model always --verify sig signed
gpg: Signature made Tue Feb 15 12:23:49 2022 CET
gpg:                using EDDSA key C16428D601CB393789CF61D4C32089CD6AF8D6CE
gpg: BAD signature from<EMAIL_ADDRESS>[unknown]

This is strange :D

Agree. Verification of an OpenPGP/MIME signed message is confusing me too. Need to be very accurate with sources(signed content and signature) - otherwise you will receive strange results

Let me check using the original files. Right now I'm using the strings from the provided test. Maybe there is some encoding issues?

What about CRLF? it seems it's important

Do you use my source or copy-paste?

The originals you uploaded work. Looks like CR/LF was stripped when copying to the test case.

Let me check using the original files. Right now I'm using the strings from the provided test. Maybe there is some encoding issues?

Yup, I think it can be a reason

Please look here https://datatracker.ietf.org/doc/html/rfc3156#section-5. Some explanation about CR/LF

Processing the CR/LF is done by BC. However, when copying the data to the test case, your IDE converted "\r\n" to "\n", which breaks signature verification.
That combined with yet another armor detection bug in pgpainless (I hate armor detection and my code for that is a mess...) resulted in the bug.
Replacing "\n" back with "\r\n" and doing a minor change in the DecryptionStreamFactory (I will create another patch release for that) fixes the test.

PGPainless-1.0.4 was released and will be available on Maven Central in a few hours \o/


Enhance AAD privileged access part 2 - implementing PIM for Groups, consideration of new privileged roles and consideration of a maximum # of privileged role assignments

💡 Summary
This epic is about enhancing the ScubaGear AAD policies pertaining to highly privileged access (section 7). It is a continuation of #697.
AAD policy enhancement issues:

#792
#758
#540
#282
#760
#919
#920

Goal
The goal is to improve the AAD secure configuration baseline by including Microsoft functionality PIM for Groups into policy checks, the consideration of new highly privileged roles and the consideration of limiting the non global admin privileged role assignments to a specific maximum number per tenant. Another goal is to implement calculation and scoring the effectiveness of a tenant's least privileged access role assignments.

#282 has been deferred to Halibut so I'm removing from the Glacier epic. See the issue for details.


Avoid using iteration to determine existence of a vnf value

fix #475

@byteocean
Automated tests fail. Could you take a look and fix that before we further comment the code ? Thanks.

@byteocean Automated tests fail. Could you take a look and fix that before we further comment the code ? Thanks.

it should be fixed now. the current code is also with changes following existing comments.

rebased to main.


Added Pre-Loader and Cursor

Description:
Added Pre-Loader in HomePage and Custom Cursor on all Pages.This Improves the overall User Experience of the Website.
Changes Made:

Added Script.js that contains js for cursor and loader
modified style.js for styling of cursor and loader
modified index.html,abouts.html,contributors.html,faq.html to implement custom cursor.

Issue Mentioned:
Closes #176
Additional Context:
N/A

@mdazfar2 Pre-Loader has been removed,you can merge it now

@mdazfar2 Alright,Removed the Default Cursor,Kindly Review

@mdazfar2 Can you check again,I removed the Default cursor,changed every cursor styling to be cursor:none ,it should not appear on most of the page,you might still be able to see the cursor appear if you hover your some links like FAQ or social media icons like Github etc, if those are removed user wont know if those icons can be clicked or not.So I think those are good at their place
Also the cursor has a lazy animation that triggers on mouse movement,that makes it look like its delayed,if you have any more changes,you can tell me.

@mdazfar2 can you merge it, if there is no issue now


feat: Split Schedules based on Environment

Feature scope
Configuration (settings parsing, validation, etc.)
Description
It would be helpful to be able to have schedules split by environment. We have a use case where some schedules are run in staging, while other schedules are run in production. The current state is that all schedules (both staging & production) are loaded into both environments, but we do not turn on the production jobs in staging and vice versa for staging jobs.
The outcome of this would be clearer differentiation between what should be running in the respective environments and reduced human error in the use of the tool (someone accidentally turning on a staging job in production for example).
May be resolved by:

https://github.com/meltano/airflow-ext/pull/36

Hi, @devon-seitz-cirrusmd - we did discuss this and are interested in this feature.
For the use case you have in mind, what do you think of a plural environments: array being added as a list of environments to run against, versus a singular environment: declaration that pairs the schedule to one and only one environment?
Note, for test purposes, users could presumably force an execution using meltano schedule run, but the declaration would make the orchestration and scheduling features have a strong affinity to only the environment(s) named in the declaration.

@aaronsteers just so I make sure I am on the same page, it would be something like the below? In the first example the schedule would be active in both environments, and in the second example only in staging? If so that is a much better idea and I love it!
`
schedules:

name: example1
interval: "@hourly"
extractor: tap-postgres--example1
loader: target-snowflake--example1
transform: skip
start_date: 2022-06-14 18:35:29.947934
environments: [staging, production]
`

`
schedules:

name: example2
interval: "@hourly"
extractor: tap-postgres--example2
loader: target-snowflake--example2
transform: skip
start_date: 2022-06-14 18:35:29.947934
environments: [staging]
`

Yep, exactly that! Optionally you could use this syntax but yaml tests both the same so there'd be no functional difference between the two declarations.

environments:
- staging
- production

Presumably, we'd have to update the airflow logic as well to respect this new specification.
To keep this from being a breaking change for users, we could start with a rule: if any schedules declare their environments, then all should. That way revising users would continue to get their current behaviors until they start to move to explicit environment declarations.
What do you think?

Speaking with @DouweM, he suggested (and I agree) that it could be cleaner to declare environment-specific schedules under the environment declaration.
There are a few challenges with this approach though. As of today, Meltano does not let you split an environment definition across files, so then all schedules relevant to the environment would need to be in the same yaml file as other environment properties.

#6727

Additionally, and similar to the above logic, we probably need to assert that if any schedules are defined at the environment level, then all should be. With this logic in place, an environment could override base schedules and simply declare schedules: [] as an empty set, which would disable all schedules from running against the environment.
Most likely the effect of allowing environment-specific schedules is that once a use adopts the new convention, they'd like remove the base schedules: declaration and move all schedules under the appropriate environment definition.

WIP here:

https://github.com/meltano/airflow-ext/pull/36

Still relevant


Secrets handling in Helm charts not safe

Hi,
Secrets handling in Helm charts are not encrypted.
Would it be possible to remove the process that creates secrets from the Helm charts.
In this case we could create sealed secrets manually as a separate process beforehand and Helm chart would be just responsible for deploying the application.
Best regards
//Lars

Could you review and see if this is covered by https://github.com/linkedin/datahub/pull/1782 already?

Hi @mars-lan, my impression is that it fixes the issue with passwords verbatim in configmap and moves them to secret instead. We use sealed secrets (https://github.com/bitnami-labs/sealed-secrets) for our secrets, and I do not fully understand if the changes is allowing us to use that. When will #1782 get merged to master branch?
BR
//Lars

HI @themightylaz,
There is only one secret, "GMS_SECRET" which we will be creating after #1782. The secret-template file for the same is under helm-chart, "datahub-gms".
we are currently auto-generating secret using "{{ randAlphaNum 10 | b64enc | quote }}". Is it possible to do the same in sealed-secrets or do we need to rely on Kubeseal to generate secret?
Thanks.

@themightylaz FYI #1782 has been merged now.


add TIL models

TIL models are 100 pixels at 50 microns (mpp=0.5). I used the TIL prediction text file to calculate this using TCGA-3C-AALI-01Z-00-DX1. The whole slide has a base resolution of 0.25 mpp, and the patches are 200 pixels at that resolution. So this gives 50 micron patches. and here the patches are resized to 20x which is almost definitely 0.5 mpp (https://github.com/SBU-BMI/u24_lymphocyte/blob/11f06b253b36e2398edbffd8e478a777ff05cf79/patch_extraction/save_svs_to_tiles.py#L60)
But do the TIL models only consider the center of the patch? So are the patches overlapping?
The work is happening in the https://github.com/kaczmarj/patch-classification-pipeline/tree/add/luad-prad-models branch... not the best name.

inceptionv4 model seems to work, but vgg and resnet models do not work yet. both models run fine but the predictions are almost all zero. there could be a problem with processing the inputs.

here are results on a sample brca slide:

closed by #21


InvalidImageName after deploying to kubernetes cluster with image "map[bar:registry.example.com/foo/bar:tag]"

Information

[X] I didn't find a similar issue

werf.yaml
configVersion: 1
project: bar
---
image: bar
dockerfile: Dockerfile
context: .

deployment.yaml
---
spec:
  containers:
   - name: bar
      image: {{ .Values.werf.image }}

and then i run using command werf converge --repo registry.example.com/foo/bar
Version
latest
Result
InvalidImageName when deploying to kubernetes cluster
Expected result
can using valid image name

I guess you already figured it out, but there should be {{ .Values.werf.image.bar }}

yes, i just change to be {{ tuple "bar" . | werf_image }} in deployment.yaml


sfdx command is outdated

the hardcoded "sfdx" command that's prepended in SfdxCommand.js  seems to no longer work. Should be replaced with "sfdx-cli".

@rossMac96 sorry for getting to this so late. sfdx should still be a valid command and we will eventually want to move to the new sf executable. Are you receiving a particular warning or error message?


Hidden torch.flatten block in ResNet module

🐛 Bug

This bug arise when last 2 layers (avg pool and fc) are changed to nn.Identity
To Reproduce
Steps to reproduce the behavior:
import torch
import torch.nn as nn
import torchvision
resnet = torchvision.models.resnet18()
resnet.avgpool = nn.Identity()
resnet.fc = nn.Identity()
img = torch.randn([1,3,256,256])
resnet(img).shape
Result: torch.Size([1, 32768])

Expected result: torch.Size([1, 8, 8, 512])
Additional context

https://github.com/pytorch/vision/blob/main/torchvision/models/resnet.py
line 243 to delete

@1paragraph Try overwriting the forward method or building a Sequential model by combining the parts of the ResNet you want to use (from conv1 to layer4).
I'm closing the issue as I believe I addressed it. If you have more questions, feel free to reopen. :)


[Question] Issue with get_modality_length_grouped_indices when using only multimodal input

Question
Hello @haotian-liu ,
I've been working on visual instruction tuning using image-text pair data and came across the following error:
  File "/LLaVA/llava/train/llava_trainer.py", line 127, in __iter__
    indices = get_modality_length_grouped_indices(self.lengths, self.batch_size, self.world_size, generator=self.generator)
  File "/LLaVA/llava/train/llava_trainer.py", line 64, in get_modality_length_grouped_indices
    lang_indices, lang_lengths = zip(*[(i, -l) for i, l in enumerate(lengths) if l < 0])
ValueError: not enough values to unpack (expected 2, got 0)

Upon inspecting the code, I believe the issue arises from the function get_modality_length_grouped_indices:
def get_modality_length_grouped_indices(lengths, batch_size, world_size, generator=None):
    mm_indices, mm_lengths = zip(*[(i, l) for i, l in enumerate(lengths) if l > 0])
    lang_indices, lang_lengths = zip(*[(i, -l) for i, l in enumerate(lengths) if l < 0])

    assert len(mm_indices) > 0, "Should have at least one multimodal sample."
    assert len(lang_indices) > 0, "Should have at least one language sample."

It seems that the implementation requires at least one text-to-text data sample, leading to the error when only using multimodal data. Is there a particular reason for this design choice? I'm specifically interested in multimodal data (image, text) to text tasks, and I'm wondering how to proceed. One solution I considered was adding at least one text-to-text data sample. Would this be the best approach, or is there a more optimal solution?
Thank you for your time and guidance.

Hi, you can simply set that option to False. Or you can pull the latest repo, as I have just updated the repo in https://github.com/haotian-liu/LLaVA/commit/a546269905945b732289c19c764fec34f4338989 so that this is handled more gracefully. Thanks.

Thank you !


Fixes of AutoParallel bug

This PR fixes the bug that AutoParallel sets variables as don't_replicate_nodes, but not for variable initializers and snapshot nodes. This can break variable collections in meta graph because variable initializers and snapshot nodes could be replicated with different names.
This issue is already discussed in #9906.

Can one of the admins verify this patch?

Benoit, are you reviewing this?

Thanks Martin. I'm taking a look.

@sj6077, Thanks for the contribution! I'm not sure how updating initializers and snapshot nodes inside C++ auto_parallel.cc would help, as the C++ code doesn't return the modified metagraph back. Currently they have to be on the python side, for example, like this.
We do plan to come up with a better solution that avoids importing and exporting graph and thus directly uses session.run with ConfigProto to specify the optimizers (currently this is not possible because metagraph is not passed to the optimizer, that's why the ptb code has to use the tf_optimizer.OptimizeGraph interface).
However, once we solved the problem of passing metagraph to the optimizer, we don't need to use import/export or tf_optimizer any more and I think it may make sense to update initializers and snapshot nodes inside C++ auto_parallel.cc and we can revisit this issue.
I don't know about your use case. Could you provide some skeleton code/usage pattern to show how this change would help? Thanks.

class UpdateCollection(object):
  """Update collection info in MetaGraphDef for AutoParallel optimizer."""

  def __init__(self, metagraph, model):
    self._metagraph = metagraph
    self.replicate_states(model.initial_state_name)
    self.replicate_states(model.final_state_name)
    self.update_snapshot_name("variables")
    self.update_snapshot_name("trainable_variables")

  def update_snapshot_name(self, var_coll_name):
    var_list = self._metagraph.collection_def[var_coll_name]
    for i, value in enumerate(var_list.bytes_list.value):
      var_def = variable_pb2.VariableDef()
      var_def.ParseFromString(value)
      # Somehow node Model/global_step/read doesn't have any fanout and seems to
      # be only used for snapshot; this is different from all other variables.
      if var_def.snapshot_name != "Model/global_step/read:0":
        var_def.snapshot_name = with_autoparallel_prefix(
            0, var_def.snapshot_name)
      value = var_def.SerializeToString()
      var_list.bytes_list.value[i] = value

  def replicate_states(self, state_coll_name):
    state_list = self._metagraph.collection_def[state_coll_name]
    num_states = len(state_list.node_list.value)
    for replica_id in range(1, FLAGS.num_gpus):
      for i in range(num_states):
        state_list.node_list.value.append(state_list.node_list.value[i])
    for replica_id in range(FLAGS.num_gpus):
      for i in range(num_states):
        index = replica_id * num_states + i
        state_list.node_list.value[index] = with_autoparallel_prefix(
            replica_id, state_list.node_list.value[index])

According to the example that you mentione, there is update_snapshot_name for metagraph collection. This is because variable, variable_snapshot, variable_initializer are all together defined for a variable, but snapshot and initializer are differently managed in auto_parallel. With this PR, the update_snapshot_name could be removed.

@zhangyaobit I addressed your comments, thank you for the review.

Jenkins, test this please.

@benoitsteiner I addressed your comments, I didn't know about the usage of snapshot nodes.

Jenkins, please test this.

Jenkins, please test this.

Jenkins, test this please.


New implementation of HeightTree

The HeightTree is the data structure that maps between document line numbers and visual Y positions. It handles both the varying heights of lines (e.g. due to word-wrapping) and the collapsing of lines (e.g. due to folding).
Where the old implementation was based on a red-black tree, the new implementation is inspired by B+ trees.
We no longer need a separate memory allocation for every line in the document. This should dramatically reduce the memory consumption: a comment in the old code indicated that each line took 56 bytes of memory.
But that was in 32-bit days; in a 64-bit process the old implementation actually needed 88 bytes per line.
The new implementation should need 168 bytes per leaf node which holds 8-16 lines, i.e. we need 10.5-21 bytes per line for the leaf nodes.
It additionally needs 456 bytes per inner node (for the inner node and its children array). The level just above the leafs holds 64-256 lines per inner node, i.e. we need 1.8-7.2 bytes per line for the second level.
Thus the total memory consumption of the new tree should in the worst case still be below 29.2 bytes per line (168/8 + sum(456/(8**lvl) for lvl in range(2,100))).
However after freshly loading a large document from disk we should be close to the best case which in total is just 12.4 bytes per line (168/16 + sum(456/(16**lvl) for lvl in range(2,100))).
Apart from the reduced memory usage, the behavior of the new tree should be identical to the old behavior.
In particular, all operations (line insertion, line deletion, collapsing, uncollapsing, line<->Y queries) maintain their externally-visible behavior and their O(lg N) run-time.
set_DefaultLineHeight runs in O(N) now (previously could take O(N lg N)).

I saw the comment in mainline about changing the implementation, and was curious what an improvement might look like, particularly from my other interests in trying to add some sort of lazy file loading mechanism (just a dream right now, see: #382 )
On a 750MB test file this change reduces RAM gives a healthy reduction from ~7.5GB to ~5GB.
Nice work!


Add tsx for easily running TypeScript files

Potentially add tsx as a dev dependency to easily run Typescript files.
tsx can apparently handle ESM better than ts-node.

Related: https://github.com/DylanSp/typescript-node-starter/issues/9, https://github.com/DylanSp/typescript-node-starter/issues/33.


Chinese input is not supported

希望可以支持输入中文

I need chinese support too.

Latest version supported chinese input in macos:

最新版本支持在 macos 中输入中文：

这个已经更新好久了，你知道的有点晚了😄

最新版本支持在 macos 中输入中文：

这个已经更新好久了，你知道的有点晚了😄

Yes, I just learned that I wanted to use this widget in a project before, but it couldn't be used because it didn't support Chinese. Now I can finally use it! Happy! Thank you to the engineers in the project team.
是啊，我刚刚知道的，之前想在项目中用这个 widget，就是因为不支持中文，所以没办法用起来，现在终于可以用起来了！开心！感谢项目组的工程师。

This issue could be closed now.


Fix color issues on add post form

Very unfortunately, you can't use color state lists in shapes until API 21 :(
So, I removed them from the new shapes I had defined, instead being forced to duplicate the shapes.
I also added a manual tint setting for the spinner (which is only necessary until we get around to switching our base theme to an AppCompat theme).
And I lightened the disabled button color, since it was still too dark to appear "disabled".

@1zaman Plz review? I'm not super excited about these workarounds but I think it's the best we can do for the short term.

:+1: