VG-4898: Fixes task validation

Scott, please review? These changes get task validation back to it's previous state. I've tested many scenarios.

Codecov Report

Merging #81 into master will increase coverage by -0.02%.

@@            Coverage Diff             @@
##           master      #81      +/-   ##
==========================================
- Coverage   79.75%   79.73%   -0.02%
==========================================
  Files         113      113
  Lines        7447     7452       +5
  Branches     1095     1097       +2
==========================================
+ Hits         5939     5942       +3
- Misses       1508     1510       +2

Impacted Files
Coverage Δ

app/src/cart/cart-items-query.js
92.4% <66.66%> (-1.06%)
:x:

Continue to review full report at Codecov.

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


sliding is choppy

the "surface" script works, but is very broken and choppy. how could that be fixed

Any update on this? I can't get it to work normally at all :(
Ive tried numbers between 1-100 and also 0-1 but nothing works. It just glitches weirdly with no sliding

no, nothing that ive found. sorry :(

I'll try and remake the sliding for my "GorillaMotion" update to it where I fix and add things. I'll update you when its ready

About 40% through now as I had a massive break and had to redo some stuff


Prevent SmartLook from initialising locally

Is your feature request related to a problem? Please describe.
SmartLook, that we use for analytics on the site, initializes during local testing and as a result it is recorded in the visitor data.
Describe the solution you'd like
A local/dev/test flag that disables the SmartLook tracker.

Hey! I'm interested in this one


Evaluate WizardLM-2 8x22B

hey,
Not sure if you have seen: https://prollm.toqan.ai/leaderboard
In my opinion the most interesting takeaway is if you filter by advanced in code-recent category (unseen in training) the only model that rival propetiary models with that selection is wizardlm-2 8x22b
It would be really interesting to see if your benchmark will also score it so high

@krzysiekpodk Evaluating a 160B model at FP16 is beyond my available resources as a hobbyist 😢 but I can blow some of this month's cloud GPU budget on trying the 4-bit quants - any preferences?

@krzysiekpodk Results are somewhat mixed:

Original Mixtral-Instruct-8x22B performs quite well no matter the quant: AWQ GPTQ and EXL2 are all within spitting distance of each other.
WizardLM2 8x22B AWQ appears to be broken and scores poorly. I could not find a GPTQ. EXL2 performs well.

thank you!! This is interesting as it looks like good scores are still not consistent across different benchmarks for oss models, maybe its time for leaderboard of leaderborads? :D


[BUG] sktime not allowing me to use exogenous multivariate data

Describe the bug
 1 pipe.fit(y=y_train, fh=fh, X=X_train)
  2 y_pred = pipe.predict(fh=fh, X=X_test, y=y_test)

4 frames
/usr/local/lib/python3.7/dist-packages/sktime/utils/validation/series.py in _check_is_univariate(y)
22     """Check if series is univariate."""
23     if isinstance(y, pd.DataFrame):
---> 24         raise ValueError("Data must be univariate, but found a pd.DataFrame")
25     if isinstance(y, np.ndarray) and y.ndim > 1:
26         raise ValueError(
ValueError: Data must be univariate, but found a pd.DataFrame
Is there a way to use multivariate data in an X dataframe that will not give me this error?

hi @roboswell , could you pls provide the full code to reproduce? Pls also take care of formatting the code

in general, X can be multivariate - the error message sounds like it's coming from the y though.
Not all forecasters can handle multivariate y. As @aiwalter said, full code to reproduce the problem would be helpful.

I already see that sth is wrong here:

pipe.predict(fh=fh, X=X_test, y=y_test)

y should not be given in predict()

yes, it's _predict(self, fh, X)

hi @roboswell , could you pls provide the full code to reproduce? Pls also take care of formatting the code/exception message

The actual dataframe is huge, so I can't reproduce the whole thing, but here is a snapshot:

import sktime
df['date'] = pd.to_datetime(df.date)
df['date'] = df['date'].dt.date
df.sort_values(by=['date', 'country'], inplace=True)
df.index=pd.MultiIndex.from_arrays(df[['date','country']].values.T, names=['date','country'])
df.index.freq = 'M'
df=df.drop('country', axis='columns')
df=df.drop('date', axis='columns')
from sktime.utils.data_processing import from_multi_index_to_nested
df = from_multi_index_to_nested(df, instance_index='date')
from sktime.forecasting.model_selection import temporal_train_test_split
y = df.fatalities
X = df
y_train, y_test, X_train, X_test = temporal_train_test_split(X,y, test_size=96)
import numpy as np
from sktime.forecasting.base import ForecastingHorizon
fh = np.arange(1, 12)
from sktime.forecasting.compose import ForecastingPipeline
from sktime.transformations.series.adapt import TabularToSeriesAdaptor
from sklearn.preprocessing import StandardScaler
from sktime.forecasting.compose import make_reduction
from xgboost.sklearn import XGBRegressor
regressor = XGBRegressor
forecaster = make_reduction(regressor, window_length=24, strategy="recursive", scitype="tabular-regressor")
pipe = ForecastingPipeline(steps=[
("standardscaler", TabularToSeriesAdaptor(StandardScaler())),
("forecaster", forecaster)])
pipe.fit(y=y_train, fh=fh, X=X_train)
y_pred = pipe.predict(fh=fh, X=X_test, y=y_test)

ValueError                                Traceback (most recent call last)
 in ()
----> 1 pipe.fit(y=y_train, fh=fh, X=X_train)
2 y_pred = pipe.predict(fh=fh, X=X_test, y=y_test)
4 frames
/usr/local/lib/python3.7/dist-packages/sktime/forecasting/base/_base.py in fit(self, y, X, fh)
109
110         self._set_fh(fh)
--> 111         y, X = check_y_X(y, X)
112
113         self._X = X
/usr/local/lib/python3.7/dist-packages/sktime/utils/validation/forecasting.py in check_y_X(y, X, allow_empty, allow_constant, enforce_index_type)
55         allow_empty=allow_empty,
56         allow_constant=allow_constant,
---> 57         enforce_index_type=enforce_index_type,
58     )
59
/usr/local/lib/python3.7/dist-packages/sktime/utils/validation/forecasting.py in check_y(y, allow_empty, allow_constant, enforce_index_type)
134         allow_empty=allow_empty,
135         allow_numpy=False,
--> 136         enforce_index_type=enforce_index_type,
137     )
138
/usr/local/lib/python3.7/dist-packages/sktime/utils/validation/series.py in check_series(Z, enforce_univariate, enforce_multivariate, allow_empty, allow_numpy, enforce_index_type)
88
89     if enforce_univariate:
---> 90         _check_is_univariate(Z)
91
92     if enforce_multivariate:
/usr/local/lib/python3.7/dist-packages/sktime/utils/validation/series.py in _check_is_univariate(y)
22     """Check if series is univariate."""
23     if isinstance(y, pd.DataFrame):
---> 24         raise ValueError("Data must be univariate, but found a pd.DataFrame")
25     if isinstance(y, np.ndarray) and y.ndim > 1:
26         raise ValueError(
ValueError: Data must be univariate, but found a pd.DataFrame

this is actually coming from fit

y_train, y_test, X_train, X_test = temporal_train_test_split(X,y, test_size=96)

you have to switch it to temporal_train_test_split(y, X, test_size=96) I guess

I think there are multiple problems:

your data is panel data - currently sktime doesn't forecast panels (although we're working on supporting it)
check the forecasting notebook for examples, X and y should be non-nested pandas series or data frames
now if you would have a multivariate series, it probably wouldn't work either, since it seems the forecaster you are constructing is univariate. Currently the reducer does not support multivariate forecasts.
You can make the reducer support multivariate by wrapping the pipe or the forecaster in a ColumnEnsembleForecaster.

you have to switch it to temporal_train_test_split(y, X, test_size=96) I guess

and that.

y_train, y_test, X_train, X_test = temporal_train_test_split(X,y, test_size=96)

you have to switch it to temporal_train_test_split(y, X, test_size=96) I guess

I think there are multiple problems:

your data is panel data - currently sktime doesn't forecast panels (although we're working on supporting it)
check the forecasting notebook for examples, X and y should be non-nested pandas series or data frames
now if you would have a multivariate series, it probably wouldn't work either, since it seems the forecaster you are constructing is univariate. Currently the reducer does not support multivariate forecasts.
You can make the reducer support multivariate by wrapping the pipe or the forecaster in a ColumnEnsembleForecaster.

Could you provide an example code of how pipe or forecaster could be wrapped in  ColumnEnsembleForecaster to make it work with multivariate data?


283 | Move Zeroes | C++

283 | Move Zeroes | C++
What will change -
Adding Solution for the problem 283. Moving Zeroes
Type of Issue -

[x] Adding New Code

Programming Language

[x] C++

:star2: Star it :fork_and_knife:Fork it :handshake: Contribute to it!
Discord server ✉ - https://discord.gg/CXksGdn
Happy Coding,

Please assign this to me

hey there! Can you please assign this problem to me??


Conform hashCode implementations

Avoid unnecessary steps like concatenating component hash codes as a string to then convert back to hash code again... this should all be basic maths.
Triggered by this comment.

@QuintinWillison if we go with integer addition, it could potentially lead to wrong hashCode values as the sub could be same for different hashcode additions.
ex:
extrasmap.hashCode = 123 and deltas.hashCode = 321  would sum up to 444.
Also, extrasmap.hashCode = 200 and deltas.hashCode = 244 would sum up to the same.
Hope I'm not missing any other implications here.

There will always be hash code clashes, so that's perfectly normal. There's no definition of "wrong" when it comes to hash codes, though that is a common misconception - they are never guaranteed to be unique for every different object construction from a given class.


Unable to pair to device a second time without reset

Pair with a hotspot through the Helium app and then press the close button in the upper right to exit the pair screen. You can also press scan again. If you then try to pair again, no device will be found.
In order to be able to pair again, bluetooth must be toggled on the phone. You can also exit and reopen the app without toggling
bluetooth in order to pair again.
Tested on: Moto G Power (Android 11), IPhone 11 (iOS 15), Xiaomi Redmi Note 8T (Android 10)
Related to: https://github.com/NebraLtd/hm-config/issues/51
Acceptance criteria

Can pair a device, disconnect bluetooth, and immediately reconnect.

Tested on helium original Hotspot and you can pair several times from the app
Here is output from nRF Connect app with original helium hotspot
nRF Connect, 2021-10-01
Helium Hotspot 36BF (60:81:F9:6F:A7:E4)
V	23:47:59.123	Connecting to 60:81:F9:6F:A7:E4...
D	23:47:59.123	gatt = device.connectGatt(autoConnect = false, TRANSPORT_LE, preferred PHY = LE 1M)
D	23:47:59.130	[Callback] Connection state changed with status: 0 and new state: CONNECTED (2)
I	23:47:59.130	Connected to 60:81:F9:6F:A7:E4
V	23:47:59.135	Discovering services...
D	23:47:59.135	gatt.discoverServices()
D	23:47:59.139	[Callback] Services discovered with status: 0
I	23:47:59.139	Services discovered
V	23:47:59.145	Generic Access (0x1800)
- Device Name [R] (0x2A00)
- Appearance [R] (0x2A01)
Generic Attribute (0x1801)
- Service Changed [I] (0x2A05)
   Client Characteristic Configuration (0x2902)
- Client Supported Features [R W] (0x2B29)
- Database Hash [R] (0x2B2A)
- Unknown Characteristic [R] (00002b3a-0000-1000-8000-00805f9b34fb)
Device Information (0x180A)
- Firmware Revision String [R] (0x2A26)
- Manufacturer Name String [R] (0x2A29)
- Serial Number String [R] (0x2A25)
Unknown Service (0fda92b2-44a2-4af2-84f5-fa682baa2b8d)
- Unknown Characteristic [R] (b833d34f-d871-422c-bf9e-8e6ec117d57e)
   Characteristic Presentation Format (0x2904)
   Characteristic User Description (0x2901)
- Unknown Characteristic [N R W] (398168aa-0111-4ec0-b1fa-171671270608)
   Client Characteristic Configuration (0x2902)
   Characteristic User Description (0x2901)
   Characteristic Presentation Format (0x2904)
- Unknown Characteristic [N R] (7731de63-bc6a-4100-8ab1-89b2356b038b)
   Client Characteristic Configuration (0x2902)
   Characteristic Presentation Format (0x2904)
   Characteristic User Description (0x2901)
- Unknown Characteristic [W] (8cc6e0b3-98c5-40cc-b1d8-692940e6994b)
   Characteristic Presentation Format (0x2904)
   Characteristic User Description (0x2901)
- Unknown Characteristic [R] (d7515033-7e7b-45be-803f-c8737b171a29)
   Characteristic User Description (0x2901)
   Characteristic Presentation Format (0x2904)
- Unknown Characteristic [R] (9c4314f2-8a0c-45fd-a58d-d4a7e64c3a57)
- Unknown Characteristic [N R W] (180efdef-7579-4b4a-b2df-72733b7fa2fe)
   Client Characteristic Configuration (0x2902)
   Characteristic User Description (0x2901)
   Characteristic Presentation Format (0x2904)
- Unknown Characteristic [R] (e125bda4-6fb8-11ea-bc55-0242ac130003)
   Characteristic User Description (0x2901)
   Characteristic Presentation Format (0x2904)
- Unknown Characteristic [R] (e5866bd6-0288-4476-98ca-ef7da6b4d289)
   Characteristic User Description (0x2901)
   Characteristic Presentation Format (0x2904)
- Unknown Characteristic [R] (0a852c59-50d3-4492-bfd3-22fe58a24f01)
   Characteristic Presentation Format (0x2904)
   Characteristic User Description (0x2901)
- Unknown Characteristic [N R W] (d435f5de-01a4-4e7d-84ba-dfd347f60275)
   Client Characteristic Configuration (0x2902)
   Characteristic Presentation Format (0x2904)
   Characteristic User Description (0x2901)
- Unknown Characteristic [N R W] (df3b16ca-c985-4da2-a6d2-9b9b9abdb858)
   Client Characteristic Configuration (0x2902)
   Characteristic User Description (0x2901)
   Characteristic Presentation Format (0x2904)
- Unknown Characteristic [R] (d083b2bd-be16-4600-b397-61512ca2f5ad)
   Characteristic User Description (0x2901)
   Characteristic Presentation Format (0x2904)
D	23:47:59.146	gatt.setCharacteristicNotification(00002a05-0000-1000-8000-00805f9b34fb, true)
D	23:47:59.146	gatt.setCharacteristicNotification(398168aa-0111-4ec0-b1fa-171671270608, true)
D	23:47:59.147	gatt.setCharacteristicNotification(7731de63-bc6a-4100-8ab1-89b2356b038b, true)
D	23:47:59.147	gatt.setCharacteristicNotification(180efdef-7579-4b4a-b2df-72733b7fa2fe, true)
D	23:47:59.147	gatt.setCharacteristicNotification(d435f5de-01a4-4e7d-84ba-dfd347f60275, true)
D	23:47:59.148	gatt.setCharacteristicNotification(df3b16ca-c985-4da2-a6d2-9b9b9abdb858, true)
V	23:48:25.028	Disconnecting...
D	23:48:25.028	gatt.disconnect()
D	23:48:25.044	[Callback] Connection state changed with status: 0 and new state: DISCONNECTED (0)
I	23:48:25.044	Disconnected
D	23:48:28.751	gatt.close()
D	23:48:28.755	wait(200)
V	23:48:28.956	Connecting to 60:81:F9:6F:A7:E4...
D	23:48:28.956	gatt = device.connectGatt(autoConnect = false, TRANSPORT_LE, preferred PHY = LE 1M)
D	23:48:28.966	[Callback] Connection state changed with status: 0 and new state: CONNECTED (2)
I	23:48:28.966	Connected to 60:81:F9:6F:A7:E4
V	23:48:28.972	Discovering services...
D	23:48:28.972	gatt.discoverServices()
D	23:48:28.977	[Callback] Services discovered with status: 0
I	23:48:28.977	Services discovered
V	23:48:28.988	Generic Access (0x1800)
- Device Name [R] (0x2A00)
- Appearance [R] (0x2A01)
Generic Attribute (0x1801)
- Service Changed [I] (0x2A05)
   Client Characteristic Configuration (0x2902)
- Client Supported Features [R W] (0x2B29)
- Database Hash [R] (0x2B2A)
- Unknown Characteristic [R] (00002b3a-0000-1000-8000-00805f9b34fb)
Device Information (0x180A)
- Firmware Revision String [R] (0x2A26)
- Manufacturer Name String [R] (0x2A29)
- Serial Number String [R] (0x2A25)
Unknown Service (0fda92b2-44a2-4af2-84f5-fa682baa2b8d)
- Unknown Characteristic [R] (b833d34f-d871-422c-bf9e-8e6ec117d57e)
   Characteristic Presentation Format (0x2904)
   Characteristic User Description (0x2901)
- Unknown Characteristic [N R W] (398168aa-0111-4ec0-b1fa-171671270608)
   Client Characteristic Configuration (0x2902)
   Characteristic User Description (0x2901)
   Characteristic Presentation Format (0x2904)
- Unknown Characteristic [N R] (7731de63-bc6a-4100-8ab1-89b2356b038b)
   Client Characteristic Configuration (0x2902)
   Characteristic Presentation Format (0x2904)
   Characteristic User Description (0x2901)
- Unknown Characteristic [W] (8cc6e0b3-98c5-40cc-b1d8-692940e6994b)
   Characteristic Presentation Format (0x2904)
   Characteristic User Description (0x2901)
- Unknown Characteristic [R] (d7515033-7e7b-45be-803f-c8737b171a29)
   Characteristic User Description (0x2901)
   Characteristic Presentation Format (0x2904)
- Unknown Characteristic [R] (9c4314f2-8a0c-45fd-a58d-d4a7e64c3a57)
- Unknown Characteristic [N R W] (180efdef-7579-4b4a-b2df-72733b7fa2fe)
   Client Characteristic Configuration (0x2902)
   Characteristic User Description (0x2901)
   Characteristic Presentation Format (0x2904)
- Unknown Characteristic [R] (e125bda4-6fb8-11ea-bc55-0242ac130003)
   Characteristic User Description (0x2901)
   Characteristic Presentation Format (0x2904)
- Unknown Characteristic [R] (e5866bd6-0288-4476-98ca-ef7da6b4d289)
   Characteristic User Description (0x2901)
   Characteristic Presentation Format (0x2904)
- Unknown Characteristic [R] (0a852c59-50d3-4492-bfd3-22fe58a24f01)
   Characteristic Presentation Format (0x2904)
   Characteristic User Description (0x2901)
- Unknown Characteristic [N R W] (d435f5de-01a4-4e7d-84ba-dfd347f60275)
   Client Characteristic Configuration (0x2902)
   Characteristic Presentation Format (0x2904)
   Characteristic User Description (0x2901)
- Unknown Characteristic [N R W] (df3b16ca-c985-4da2-a6d2-9b9b9abdb858)
   Client Characteristic Configuration (0x2902)
   Characteristic User Description (0x2901)
   Characteristic Presentation Format (0x2904)
- Unknown Characteristic [R] (d083b2bd-be16-4600-b397-61512ca2f5ad)
   Characteristic User Description (0x2901)
   Characteristic Presentation Format (0x2904)
D	23:48:28.988	gatt.setCharacteristicNotification(00002a05-0000-1000-8000-00805f9b34fb, true)
D	23:48:28.989	gatt.setCharacteristicNotification(398168aa-0111-4ec0-b1fa-171671270608, true)
D	23:48:28.989	gatt.setCharacteristicNotification(7731de63-bc6a-4100-8ab1-89b2356b038b, true)
D	23:48:28.990	gatt.setCharacteristicNotification(180efdef-7579-4b4a-b2df-72733b7fa2fe, true)
D	23:48:28.990	gatt.setCharacteristicNotification(d435f5de-01a4-4e7d-84ba-dfd347f60275, true)
D	23:48:28.990	gatt.setCharacteristicNotification(df3b16ca-c985-4da2-a6d2-9b9b9abdb858, true)
V	23:49:02.164	Reading characteristic 00002a00-0000-1000-8000-00805f9b34fb
D	23:49:02.164	gatt.readCharacteristic(00002a00-0000-1000-8000-00805f9b34fb)
I	23:49:02.253	Read Response received from 00002a00-0000-1000-8000-00805f9b34fb, value: (0x) 48-65-6C-69-75-6D-20-48-6F-74-73-70-6F-74, "Helium Hotspot"
A	23:49:02.253	"Helium Hotspot" received
V	23:49:09.210	Reading characteristic 00002a01-0000-1000-8000-00805f9b34fb
D	23:49:09.210	gatt.readCharacteristic(00002a01-0000-1000-8000-00805f9b34fb)
I	23:49:09.272	Read Response received from 00002a01-0000-1000-8000-00805f9b34fb, value: (0x) 00-00
A	23:49:09.272	"[0] Unknown" received
V	23:49:18.389	Reading characteristic 00002a26-0000-1000-8000-00805f9b34fb
D	23:49:18.389	gatt.readCharacteristic(00002a26-0000-1000-8000-00805f9b34fb)
I	23:49:18.858	Read Response received from 00002a26-0000-1000-8000-00805f9b34fb, value: (0x) 32-30-32-31-2E-30-39-2E-32-37-2E-30, "2<IP_ADDRESS>"
A	23:49:18.858	"2<IP_ADDRESS>" received
V	23:49:20.256	Reading characteristic 00002a29-0000-1000-8000-00805f9b34fb
D	23:49:20.256	gatt.readCharacteristic(00002a29-0000-1000-8000-00805f9b34fb)
I	23:49:20.882	Read Response received from 00002a29-0000-1000-8000-00805f9b34fb, value: (0x) 48-65-6C-69-75-6D, "Helium"
A	23:49:20.882	"Helium" received
V	23:49:21.713	Reading characteristic 00002a25-0000-1000-8000-00805f9b34fb
D	23:49:21.713	gatt.readCharacteristic(00002a25-0000-1000-8000-00805f9b34fb)
I	23:49:21.873	Read Response received from 00002a25-0000-1000-8000-00805f9b34fb, value: (0x) 36-30-38-31-46-39-36-41-33-36-42-46, "6081F96A36BF"
A	23:49:21.873	"6081F96A36BF" received
V	23:49:32.309	Reading characteristic b833d34f-d871-422c-bf9e-8e6ec117d57e
D	23:49:32.309	gatt.readCharacteristic(b833d34f-d871-422c-bf9e-8e6ec117d57e)
I	23:49:33.846	Read Response received from b833d34f-d871-422c-bf9e-8e6ec117d57e, value: (0x) 0A-13-0A-03-65-74-68-12-0C-36-30-38-31-46-39-36-41-33-36-42-45-0A-14-0A-04-77-69-66-69-12-0C-36-30-38-31-46-39-36-41-33-36-42-46-0A-12-0A-02-66-77-12-0C-32-30-32-31-2E-30-39-2E-32-37-2E-30-0A-13-0A-02-69-70-12-0D-31-39-32-2E-31-36-38-2E-38-36-2E-32-34-0A-0A-0A-04-64-69-73-6B-12-02-6F-6B-0A-10-0A-09-63-6F-6E-6E-65-63-74-65-64-12-03-79-65-73-0A-0F-0A-08-64-69-61-6C-61-62-6C-65-12-03-79-65-73-0A-15-0A-08-6E-61-74-5F-74-79-70-65-12-09-73-79-6D-6D-65-74-72-69-63-0A-11-0A-06-68-65-69-67-68-74-12-07-31-30-33-35-33-38-33
A	23:49:33.846	"(0x) 0A-13-0A-03-65-74-68-12-0C-36-30-38-31-46-39-36-41-33-36-42-45-0A-14-0A-04-77-69-66-69-12-0C-36-30-38-31-46-39-36-41-33-36-42-46-0A-12-0A-02-66-77-12-0C-32-30-32-31-2E-30-39-2E-32-37-2E-30-0A-13-0A-02-69-70-12-0D-31-39-32-2E-31-36-38-2E-38-36-2E-32-34-0A-0A-0A-04-64-69-73-6B-12-02-6F-6B-0A-10-0A-09-63-6F-6E-6E-65-63-74-65-64-12-03-79-65-73-0A-0F-0A-08-64-69-61-6C-61-62-6C-65-12-03-79-65-73-0A-15-0A-08-6E-61-74-5F-74-79-70-65-12-09-73-79-6D-6D-65-74-72-69-63-0A-11-0A-06-68-65-69-67-68-74-12-07-31-30-33-35-33-38-33" received
V	23:49:53.888	Reading characteristic 398168aa-0111-4ec0-b1fa-171671270608
D	23:49:53.888	gatt.readCharacteristic(398168aa-0111-4ec0-b1fa-171671270608)
I	23:49:54.858	Read Response received from 398168aa-0111-4ec0-b1fa-171671270608, value: (0x) 63-6F-6E-6E-65-63-74-65-64, "connected"
A	23:49:54.858	"(0x) 63-6F-6E-6E-65-63-74-65-64, "connected"" received
V	23:50:01.854	Reading characteristic 7731de63-bc6a-4100-8ab1-89b2356b038b
D	23:50:01.854	gatt.readCharacteristic(7731de63-bc6a-4100-8ab1-89b2356b038b)
I	23:50:02.823	Read Response received from 7731de63-bc6a-4100-8ab1-89b2356b038b, value: (0x) 53-68-61-72-74-69-6E, "Shartin"
A	23:50:02.823	"(0x) 53-68-61-72-74-69-6E, "Shartin"" received
V	23:50:10.266	Reading characteristic d7515033-7e7b-45be-803f-c8737b171a29
D	23:50:10.266	gatt.readCharacteristic(d7515033-7e7b-45be-803f-c8737b171a29)
I	23:50:10.879	Read Response received from d7515033-7e7b-45be-803f-c8737b171a29, value: (0x) 0A-07-53-68-61-72-74-69-6E-0A-14-53-68-61-72-74-69-6E-20-77-69-74-68-20-46-72-69-65-6E-64-73-0A-09-56-4D-36-39-32-32-35-33-37-0A-0B-56-4D-36-32-33-32-32-31-2D-35-47-0A-08-53-4B-59-4B-58-51-52-51-0A-08-53-4B-59-44-5A-47-5A-49
A	23:50:10.879	"(0x) 0A-07-53-68-61-72-74-69-6E-0A-14-53-68-61-72-74-69-6E-20-77-69-74-68-20-46-72-69-65-6E-64-73-0A-09-56-4D-36-39-32-32-35-33-37-0A-0B-56-4D-36-32-33-32-32-31-2D-35-47-0A-08-53-4B-59-4B-58-51-52-51-0A-08-53-4B-59-44-5A-47-5A-49" received
V	23:50:15.383	Reading characteristic 9c4314f2-8a0c-45fd-a58d-d4a7e64c3a57
D	23:50:15.383	gatt.readCharacteristic(9c4314f2-8a0c-45fd-a58d-d4a7e64c3a57)
I	23:50:15.828	Read Response received from 9c4314f2-8a0c-45fd-a58d-d4a7e64c3a57, value: (0x) 36-30-38-31-46-39-36-41-33-36-42-46, "6081F96A36BF"
A	23:50:15.828	"(0x) 36-30-38-31-46-39-36-41-33-36-42-46, "6081F96A36BF"" received
V	23:50:20.176	Reading characteristic 180efdef-7579-4b4a-b2df-72733b7fa2fe
D	23:50:20.176	gatt.readCharacteristic(180efdef-7579-4b4a-b2df-72733b7fa2fe)
I	23:50:20.824	Read Response received from 180efdef-7579-4b4a-b2df-72733b7fa2fe, value: (0x) 6F-6E, "on"
A	23:50:20.824	"(0x) 6F-6E, "on"" received
V	23:50:22.994	Reading characteristic e125bda4-6fb8-11ea-bc55-0242ac130003
D	23:50:22.994	gatt.readCharacteristic(e125bda4-6fb8-11ea-bc55-0242ac130003)
I	23:50:23.838	Read Response received from e125bda4-6fb8-11ea-bc55-0242ac130003, value: (0x) 0A-07-53-68-61-72-74-69-6E
A	23:50:23.838	"(0x) 0A-07-53-68-61-72-74-69-6E" received
V	23:50:25.884	Reading characteristic e5866bd6-0288-4476-98ca-ef7da6b4d289
D	23:50:25.884	gatt.readCharacteristic(e5866bd6-0288-4476-98ca-ef7da6b4d289)
I	23:50:26.809	Read Response received from e5866bd6-0288-4476-98ca-ef7da6b4d289, value: (0x) 66-61-6C-73-65, "false"
A	23:50:26.809	"(0x) 66-61-6C-73-65, "false"" received

@MuratUrsavas @pritamghanghas, I suspect that some of this can be attributed to this sleep in the advertisement logic. It will sleep for 5min regardless of connection status. I haven't tested, but I suspect that bluez will actually stop advertising once a connection is made. So if the app connects and then disconnects within 5 min, this thread will just be sleeping and won't be possible to start again until after ADVERTISEMENT_SECONDS has elapsed.

Good lead @marvinmarnold. Thanks. Will be looking into it on Monday.

@pritamghanghas is working on this issue right now.

@pritamghanghas I think these PRs are already in testnet and on their way to production.

@pritamghanghas I think these PRs are already in testnet and on their way to production.

Yes, in testnet for soak time. Will move to production today.

Yes here is the PR just waiting for approval once everyone is happy it's working ok https://github.com/NebraLtd/helium-miner-software/pull/393

It was working just fine. Approved the PR.


Incompatibility with pytest

Describe the bug
pytest complains about xpathopen / path.open("w")
Steps to reproduce the bug
Create a test file, test.py:
import datasets as ds
def load_dataset():
    ds.load_dataset("counter", split="train", streaming=True)

And launch it with pytest:
python -m pytest test.py

Expected results
It should give something like:
collected 1 item

test.py .                                                                                [100%]

======= 1 passed in 3.15s =======

Actual results
============================================================================================================================= test session starts ==============================================================================================================================
platform linux -- Python 3.8.11, pytest-6.2.5, py-1.10.0, pluggy-1.0.0
rootdir: /home/slesage/hf/datasets-preview-backend, configfile: pyproject.toml
plugins: anyio-3.3.1
collected 1 item

tests/queries/test_rows.py .                                                                                [100%]Traceback (most recent call last):
  File "/home/slesage/.pyenv/versions/3.8.11/lib/python3.8/runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/home/slesage/.pyenv/versions/3.8.11/lib/python3.8/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/home/slesage/hf/datasets-preview-backend/.venv/lib/python3.8/site-packages/pytest/__main__.py", line 5, in <module>
    raise SystemExit(pytest.console_main())
  File "/home/slesage/hf/datasets-preview-backend/.venv/lib/python3.8/site-packages/_pytest/config/__init__.py", line 185, in console_main
    code = main()
  File "/home/slesage/hf/datasets-preview-backend/.venv/lib/python3.8/site-packages/_pytest/config/__init__.py", line 162, in main
    ret: Union[ExitCode, int] = config.hook.pytest_cmdline_main(
  File "/home/slesage/hf/datasets-preview-backend/.venv/lib/python3.8/site-packages/pluggy/_hooks.py", line 265, in __call__
    return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)
  File "/home/slesage/hf/datasets-preview-backend/.venv/lib/python3.8/site-packages/pluggy/_manager.py", line 80, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
  File "/home/slesage/hf/datasets-preview-backend/.venv/lib/python3.8/site-packages/pluggy/_callers.py", line 60, in _multicall
    return outcome.get_result()
  File "/home/slesage/hf/datasets-preview-backend/.venv/lib/python3.8/site-packages/pluggy/_result.py", line 60, in get_result
    raise ex[1].with_traceback(ex[2])
  File "/home/slesage/hf/datasets-preview-backend/.venv/lib/python3.8/site-packages/pluggy/_callers.py", line 39, in _multicall
    res = hook_impl.function(*args)
  File "/home/slesage/hf/datasets-preview-backend/.venv/lib/python3.8/site-packages/_pytest/main.py", line 316, in pytest_cmdline_main
    return wrap_session(config, _main)
  File "/home/slesage/hf/datasets-preview-backend/.venv/lib/python3.8/site-packages/_pytest/main.py", line 304, in wrap_session
    config.hook.pytest_sessionfinish(
  File "/home/slesage/hf/datasets-preview-backend/.venv/lib/python3.8/site-packages/pluggy/_hooks.py", line 265, in __call__
    return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)
  File "/home/slesage/hf/datasets-preview-backend/.venv/lib/python3.8/site-packages/pluggy/_manager.py", line 80, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
  File "/home/slesage/hf/datasets-preview-backend/.venv/lib/python3.8/site-packages/pluggy/_callers.py", line 55, in _multicall
    gen.send(outcome)
  File "/home/slesage/hf/datasets-preview-backend/.venv/lib/python3.8/site-packages/_pytest/terminal.py", line 803, in pytest_sessionfinish
    outcome.get_result()
  File "/home/slesage/hf/datasets-preview-backend/.venv/lib/python3.8/site-packages/pluggy/_result.py", line 60, in get_result
    raise ex[1].with_traceback(ex[2])
  File "/home/slesage/hf/datasets-preview-backend/.venv/lib/python3.8/site-packages/pluggy/_callers.py", line 39, in _multicall
    res = hook_impl.function(*args)
  File "/home/slesage/hf/datasets-preview-backend/.venv/lib/python3.8/site-packages/_pytest/cacheprovider.py", line 428, in pytest_sessionfinish
    config.cache.set("cache/nodeids", sorted(self.cached_nodeids))
  File "/home/slesage/hf/datasets-preview-backend/.venv/lib/python3.8/site-packages/_pytest/cacheprovider.py", line 188, in set
    f = path.open("w")
TypeError: xpathopen() takes 1 positional argument but 2 were given

Environment info

datasets version: 1.12.0
Platform: Linux-5.11.0-1017-aws-x86_64-with-glibc2.29
Python version: 3.8.11
PyArrow version: 4.0.1

Sorry, my bad... When implementing xpathopen, I just considered the use case in the COUNTER dataset... I'm fixing it!


Added "Errors" section to set_logger docs

fixes https://github.com/rust-lang-nursery/log/issues/135

Thanks @budziq !


Update storage system args

Remove deprecated args (auto_add_pools, auto_setup)

@tzurvaza @eilam20 what version of the gem were these removed in?  This was a breaking change in the v1.1.0 branch and is causing failures on the najdorf release branch.

It looks like these were removed in v1.1.33

@tzurvaza what was added in .33 and .34?  Is it anything we need for oparin? (NOTE we already locked oparin to 1.1.34)

@agrare nothing from .33-.34 used by the oparin branch


network: move into utils/handles

We currently only have a (somewhat) generic sockets implementation inside /network.
This should be moved into utils/handles.

Closed by #804


Does the validator work with jquery ajaxForm, which is used to pass multiple files?

I have a requirement where in I submit multiple files via jquery ajaxForm method (jquery.form.js)
I am using bootstrap validator 4.5 on a form which submits multiple files along with data. It seems this validator does not recognize the jquery ajaxForm method  (used to submit data and file) and hence nothing happens on submit button.
Just wanted to check if this is an issue with 4.5 version.
Thanks,
Priti

I think you might be in the wrong project. This plugin doesn't have a version 4.5.

Very sorry about the incorrect version typo - its actually  v0.4.5
Thanks,
Priti

Hmm, there's no v0.4.5 of this plugin either. There were a few different validator plugins targeting bootstrap. Maybe you're using a different one?

Yes, there are many validator plugins  for bootstrap floating on the net, and its kind of getting confusing since each has about the same name!
I am using bootstrapValidator.js and its min - bootstrapValidator.min.js.

Thanks for your time. It seems like I am in  a different project after all!


Starting the project with 'yarn dev' spawns too many Jest Worker ProcessChild

🐛 Bug Report
When I start even a simple project with
yarn dev

it spawns a lot of Jest Worker ProcessChild like this one
ps -eaf | grep jest
fabio     501485  501463  0 10:01 pts/2    00:00:00 /home/fabio/data/opt/node-v14.16.0-linux-x64/bin/node /home/fabio/dev/projects/myproject/node_modules/jest-worker/build/workers/processChild.js
fabio     501486  501463  0 10:01 pts/2    00:00:00 /home/fabio/data/opt/node-v14.16.0-linux-x64/bin/node /home/fabio/dev/projects/myproject/node_modules/jest-worker/build/workers/processChild.js
fabio     501498  501463  0 10:01 pts/2    00:00:00 /home/fabio/data/opt/node-v14.16.0-linux-x64/bin/node /home/fabio/dev/projects/myproject/node_modules/jest-worker/build/workers/processChild.js
...

The output is truncated, because it spawns (on my system) 23 processes.
To Reproduce
Steps to reproduce the behavior:

yarn dev
ps -eaf | grep jest

Expected behavior
I would expect this option to be configurable, or to spawn 1 or 2 processes at max.
envinfo
System:
    OS:   kubuntu 20.04
    Node version:  14.16.0

We don’t do anything with worker. ts-jest is just a Jest transformer which helps Jest to process ts files. Worker spawn is Jest core logic.


Where to write "bootstrap" code without main.js

I'm trying to rewrite an application from pure VueJS to NuxtJS because it seems to avoid a lot of boilerplate code. I have some code running in the VueJS created hook.
new Vue({
  el: '#app',
  ...,
  created () {
     // some code here
  }
})

Where is the best place to write this code? There is no entry point with NuxtJS I'm a bit lost...

I suggest you install the Boostrap nuxt module.
https://github.com/nuxt-community/modules/tree/master/modules/bootstrap-vue

@NicoPennec OP isn't referring to the Bootstrap library, they are referring to bootstrapping the application. Similar to what you'd find in a main.ts in an Angular project.
@lbineau What does your routing structure look like? Is this:
new Vue({
  el: '#app',
  ...,
  created () {
     // some code here
  }
})

... Supposed to be on your main index.html?
Like if I go to www.lbineauSite.com, the main index.html would load up and on that page #app would exist, and you want something done with a lifecycle hook there?
If that's all true, you may want to treat that like your pages/index.vue component.

@NicoPennec My mistake I'm talking about what @jsonberry says. I would want to find
a way to write custom code for Vue instance (https://github.com/vuejs-templates/webpack-simple/blob/master/template/src/main.js)
Maybe in page/index.vue could be good but it works only for index page, what about other pages?

@lbineau You can use either plugins or route middleware. The advantage of plugins is that they always run once when page loads suitable for libraries and middleware run on each route change. For created() and other component hooks, you can add it either at page level as @jsonberry already mentioned or layout level.

@pi0's suggestions will probably get you going in the right direction.
@lbineau This depends on what you need to do in your lifecycle hooks. Can you share an example of what you're trying to accomplish in a created() lifecycle hook?

@jsonberry There are ajax calls to get data used in all the application but I don't think it is the right place to do that. So in the end I add a plugin that return async function that fetch the data and populate Vuex store.
import '../libs/bootstrap'
import VueLanding from '../libs/libraries/VueLanding'

export default async ({ app, store }) => {
  const vueLanding = new VueLanding(app, {
    project: 'hr'
  })
  store.commit('setVueLanding', vueLanding)
  try {
    const response = await fetch(vueLanding.dataFileUrl)
    store.commit('setVueLandingData', await response.json())
  } catch (error) {
    console.error(error)
  }
}

Thanks a lot for your help guys.

@lbineau ah! I suggest that you look into the NuxtServerInit action, that might actually be what you're looking for.

I looked at the function but I thought it was only for server side, but it seems only context parameter is limited to server side. I will try it with that function thank you.

I tested but the action is not called but I think it is because I have no server-side, just the frontend. So I think I will have keep the solution with plugin.


Override filter input element and reset button template HTML

I didn't find any information about this so asking here: is it possible to override the default filter input element and reset button template HTML in a similar manner it is possible to define custom template for a table row?
Possible use case is to for example modify the filter input to adhere to bootstrap HTML format. If this not already doable I'll write it and send a pull request.

Hello Any solution ?? I guess filter should be able to customize it


Avoid excessive imports in examples.

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#618  👈
#613
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @rohinb2 and the rest of your teammates on  Graphite

Merge activity

Mar 18, 5:05 PM EDT: @rohinb2 started a stack merge that includes this pull request via Graphite.


Add Sheet REST API

stumbled upon this gem of a project and this is exactly what I need for mobile app project where I wanted to use google sheets as a database( i currently use AppScript). Does/ Can project include adding sheets via REST instead of creating and account via dashboard?

Glad you find the project useful!
At the moment, creating APIs from sheets is not possible through the
exposed interface. You need to log in and add it from the dashboard. A few
more people have requested this functionality, and I have it on the list of
things that would be a nice-to-have. However, that's not something I'm
looking to implement at the moment.
On Thu, Aug 22, 2019 at 2:44 AM Kendall Arneaud<EMAIL_ADDRESS>wrote:

stumbled upon this gem of a project and this is exactly what I need for
mobile app project where I wanted to use google sheets as a database( i
currently use AppScript). Does/ Can project include adding sheets via REST
instead of creating and account via dashboard?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/SteinHQ/Stein/issues/6?email_source=notifications&email_token=AEW4RMWX4LKIRQJMMCF4AWDQFWV2FA5CNFSM4IOONHX2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HGUAG3A,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEW4RMQTLMQSGX76MRAFCLTQFWV2FANCNFSM4IOONHXQ
.


How to install ?

Hi, you may want to try this https://github.com/lenny93/Canyon/releases/tag/beta but since I've taken down the server (it uses a custom login provider instead of XMPP) you won't get past the login screen. The source code is a good starting point if you want to add XMPP functionality which should be quite easy.

Thanks for great work , I don't have a windows PC to test this .exe . I'm really interested on IPOP-Project actually I tried it with my own xmpp server. Will you able to crate this for linux ?

Sadly I don't have any time for this but I'm leaving this code here for someone to build upon it. Since it is using Qt it should be very easy to convert to a Qt Creator project and from there build the linux binaries.


Noob question

https://github.com/quentintaranpino/nostrcheck-api-ts/blob/12a46fa0da9ea56c69b11bfe4a7c86ab077762a2/src/lib/domains.ts#L1
You're doing import database.js but the file in the project root is database.ts . Is this a typescript thing where the typescript will at some point be converted to javascript ?
Sorry if the question level is very low. I find your project very interesting and trying to learn it step by step.

Hello cezar1
According to the ECMAScript specification, module files need to have the .js extension. So, TypeScript uses .js in import paths to stay compatible and make sure everything works smoothly.


Dev platform PoC: create sample repo cloning workflow

Let's try to use a new crossplane XRD to create a Project type object, that results in cloning an example of go project github repo into a new one.
### Tasks
- [ ] prepare a golang template github repo
- [ ] define a `Project` type XRD in crossplane
- [ ] include a `Job` in the crossplane XRD that will actually run repo cloning logic
- [ ] hook up this process in backstage

closing this issue as the PoC was not done


Links in Help Center do not work

Bug Description

(External) links in the help center are not working. Probably something messing with pointer events.
Expected Behaviour

Links should work
Steps to Reproduce

Open help center
Click on a link
See that it doesn't do anything.

Screenshots

Additional Context

Plugin Version: 1.7.2
WordPress Version: 5.7
Operating System: macOS
Browser: Chrome

Do not alter or remove anything below. The following sections will be managed by moderators only.
Acceptance Criteria

Implementation Brief

@embarks or @littlemilkstudio if either of you have time tomorrow to do this it would be awesome!

cha. I'd be happy to look into it tomorrow

Verified in QA


A tooltip or other way to display the covered (would-be) line number during vertical scroll

There are several editors that I have used (and still using) including RJ TextEd and SynWrite, which have an ability to dynamically display a small tooltip with the number of the top line that is covered by the scrolling slider. RJ TextEd is displaying that tooltip fixed in the top-right corner of the editor, i.e. next to the top of the vertical scroll bar, while SynWrite is displaying it next to the slider.
For example, if the slider of the vertical scroll bar is on the top, when you start dragging it, the tooltip will popup displaying the "Line: 1" and as you drag that slider down, the number in the tooltip will increase, reflecting the number of the top line which would be displayed in the editor if you release the slider. Of course, the tooltip disappears after you release the slider.
In that way you could fast find the wanted line (if you know its number) without using "Go to Line" option.

I forgot to mention that such option is not changing the current cursor line, just the viewport, unlike the Go to Line command, and it is most useful when the line numbers are turned off to enlarge space for text in editor.
Here is an example:

:slightly_frowning_face: In the last 60 days, this feature request has received less than 20 community upvotes and we closed it. Still a big Thank You to you for taking the time to create this issue! To learn more about how we handle feature requests, please see our documentation.
Happy Coding!


Add grading details when adding adjustments

Features

Initial, and final grades shown, as a fraction of the maximum grade

Pull Request Test Coverage Report for Build 543

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.03%) to 24.773%

Totals

Change from base Build 541:
-0.03%

Covered Lines:
806

Relevant Lines:
2766

💛  - Coveralls

Not sure if you're done yet, but the editor isn't showing up for me when I run this with the mock data.

Fixed, it was a css issue.

Lmk with request reviews when you're done


Decide how to send the logging back to BRPM

Previously the logs were stored in a step-specific file and passed on to the write_to method at the end of the automation script.
Now the logs are directly written into the BRPM log file which risks interference as this file is owned by BRPM.

Reverted to the previous solution: stored in a step-specific file and passed on to the write_to method at the end of the automation script
Reason:
pack_response doesn't work from an external process because the $$ flag gets added before the header lines (the write_to content is only flushed when the automation step finishes)
Solution: pipe the BrpmAuto.logs to the write_to to keep the correct sequence of log lines
Also pipe the pack_response to the BrpmAuto because the write_to in the separate process will flush when that process finishes, so before the autpmation step finishes


LCFS - Allocation agreement schedule edits not persisting when save is selected

Describe the Bug
There is a bug in the Allocation Agreement schedule of the compliance report that prevents edited entries from being saved. When a user edits an entry and selects "save," the system does not retain the changes. Upon returning to the compliance report view, the edited allocation agreement input reverts back to the previous input, and the changes are not saved.
Expected Behaviour
When a user edits an entry in the Allocation Agreement schedule and selects "save," the edited input should be retained and reflected in the compliance report view.
Actual Behaviour
The system does not save the edited entry, and it reverts back to the previous input after returning to the compliance report view.
Implications

A clear and concise description of any implications.Users are unable to update and save allocation agreement entries, leading to potential inaccuracies in the compliance report.
This issue can cause confusion and extra work for users who need to re-enter data multiple times.

Steps To Reproduce
Steps to reproduce the behaviour:
User/Role: BCeID user

Navigate to the Allocation Agreement schedule in the compliance report.
Edit an existing allocation agreement entry.
Select save and return to the compliance report view.
Observe that the edit has not been saved, and the input has reverted to its previous state.

@AlexZorkin Hi again. I tested this and it looks like its still not saving any edits. I can refresh and log out in all the testing and no matter what, it reverts back to what was originally input in the grid.
I actually just noticed that if I don't hit the save button, just select something outside of the grid to initiate the auto save feature, I get stuck on "Updating row..." indefinitely. I think this might be the issue with it not saving:


fix: Opening a product from a deep link shouldn't use the Hero animation

Hi everyone,
When a product is opened from a deep link, we have a kind of glitch, where the Hero animation tries to go to the previous state. You can understand the issue in this video: Before.webm
The idea now is to use this animation in all cases, BUT disabling it with deep links
After.webm

Codecov Report

Merging #4112 (13064f7) into develop (af9f28b) will increase coverage by 0.00%.
The diff coverage is 0.00%.

@@           Coverage Diff            @@
##           develop    #4112   +/-   ##
========================================
  Coverage    10.84%   10.84%
========================================
  Files          273      273
  Lines        13516    13514    -2
========================================
  Hits          1466     1466
+ Misses       12050    12048    -2

Impacted Files
Coverage Δ

.../smooth_app/lib/pages/navigator/app_navigator.dart
0.00% <0.00%> (ø)

...smooth_app/lib/pages/product/new_product_page.dart
0.00% <0.00%> (ø)

... and 1 file with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Stability and Lifetime/Maintenance

Hi Serhii,
I'm planning a software project, that will cost me 1-2 years of full time to finish. I'll bet my financial existence on it. Should I use nuklear-rust for the GUI? What risks would I be taking? Do you have an estimate when it will leave beta? How long will you maintained it?
Cheers,
Navid

Hi Navid,
The C library behind this project looks pretty stable. I maintain these bindings not very actively, since this is hobby project (one of). The API of it as of not is by no means stable and will be updated as long as I have some time for it. In general I'd say I do not plan to match all the C library changes immediately and update the bindings only in the major functionality or stability updates, or on demand.
Regards, Serhii.


research whether using svg instead of png is viable

libraries to use svg as imagesource instead of png are do exist.
Is there a big price to pay performancewise?
What about coloring on the fly?
Developmentwise this would reduce some maintenence tremendously.

Dont want to migrate right now.
SharpVectors.Reloaded works pretty well, but right now SVGs cannot be rendered at Design Time, see this issue: https://github.com/ElinamLLC/SharpVectors/issues/126

seems viable :)


NextPageUrl header is actually NextPageUri

When testing the pagination, I realized it is actually a NextPageUri header that is sent, and not NextPageUrl

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

office-365-management-api/office-365-management-activity-api-reference.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


[GOBBLIN-924]Get rid of orc.schema.literal in ORC-ingestion and registration

Dear Gobblin maintainers,
Please accept this PR. I understand that it will not be reviewed until I have checked off all the steps below!
JIRA

[ ] My PR addresses the following Gobblin JIRA issues and references them in the PR title. For example, "[GOBBLIN-XXX] My Gobblin PR"

https://issues.apache.org/jira/browse/GOBBLIN-924

Description

[ ] Here are some details about my PR, including screenshots (if applicable):
Get rid of orc.schema.literal in ORC-ingestion and registration

Tests

[ ] My PR adds the following unit tests OR does not need testing for this extremely good reason:
Unit test, and test on cluster to make sure new orc partition does not have the orc.schema.literal property.

Commits

[ ] My commits all reference JIRA issues in their subject lines, and I have squashed multiple commits if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":

Subject is separated from body by a blank line
Subject is limited to 50 characters
Subject does not end with a period
Subject uses the imperative mood ("add", not "adding")
Body wraps at 72 characters
Body explains "what" and "why", not "how"

@autumnust I use a pull command which seems introduce all the changes which have been committed during last two days. Just select the last commit should be able to see my change. Sorry for the inconvenience ^^

Codecov Report

Merging #2780 into master will decrease coverage by 0.01%.
The diff coverage is 27.63%.

@@             Coverage Diff              @@
##             master    #2780      +/-   ##
============================================
- Coverage     45.34%   45.33%   -0.02%
- Complexity     8858     8861       +3
============================================
  Files          1894     1894
  Lines         70838    70874      +36
  Branches       7790     7795       +5
============================================
+ Hits          32124    32129       +5
- Misses        35748    35781      +33
+ Partials       2966     2964       -2

Impacted Files
Coverage Δ
Complexity Δ

...pache/gobblin/configuration/ConfigurationKeys.java
0% <ø> (ø)
0 <0> (ø)
:arrow_down:

...lin/hive/metastore/HiveMetaStoreBasedRegister.java
0% <0%> (ø)
0 <0> (ø)
:arrow_down:

...g/apache/gobblin/hive/orc/HiveOrcSerDeManager.java
63.95% <0%> (-2.72%)
12 <0> (ø)

...blin/service/FlowConfigV2ResourceLocalHandler.java
0% <0%> (ø)
0 <0> (ø)
:arrow_down:

...service/modules/orchestration/DagManagerUtils.java
84.81% <100%> (ø)
34 <0> (ø)
:arrow_down:

...ro/JsonElementConversionWithAvroSchemaFactory.java
75% <100%> (ø)
5 <0> (ø)
:arrow_down:

...n/converter/avro/JsonElementConversionFactory.java
81.04% <100%> (ø)
18 <0> (ø)
:arrow_down:

.../modules/scheduler/GobblinServiceJobScheduler.java
58.28% <40%> (ø)
21 <0> (ø)
:arrow_down:

.../java/org/apache/gobblin/runtime/api/FlowSpec.java
52.23% <50%> (ø)
12 <0> (ø)
:arrow_down:

...dules/flowgraph/pathfinder/AbstractPathFinder.java
90.99% <77.77%> (ø)
29 <0> (ø)
:arrow_down:

... and 10 more

Continue to review full report at Codecov.

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

@autumnust I use a pull command which seems introduce all the changes which have been committed during last two days. Just select the last commit should be able to see my change. Sorry for the inconvenience ^^

You can try pull --rebase and force a push to your own remote. Should be able to create a clean diff.


Moved to the new APIs

Updated to use the new Mosaic Foundation Model Training APIs.
Also updated the supported model list to automatically fetch the full supported model list from the Mosaic SDK itself.

@mshtelma a review on this please :point_up:. Thanks.


Do I need to install go-plus?

Also if I do, I have some warnings like:
Choose a linter UI

You have both linter and atom-ide-diagnostics enabled, which will both display lint results for Linter-based packages.

To avoid duplicate results, please disable one of the packages.

Hi @alexmironof, Yes you go-plus installed. I'm leveraging it to set up the go env and download the go-langserver binary if its missing.
The other message you're getting is a conflict between linter and atom-ide-ui. You can safely disable/uninstall the linter package. The go-plus package may give you a nag to re-install in though. There is an open issue for that: https://github.com/joefitzgerald/go-plus/issues/682

@ckaznocha Thanks for the response! :+1:

Actually, its not intended to be a feature but if you set an absolute path to go-langserver in the ide-go settings everything should work correctly without go-plus installed. ide-go will still ask you to install go-plus but that would be an easy fix.

Ill test both possibilities on different machines and post the results here

@ckaznocha I think that go-plus must be listed as direct dependency in README


Fix #2115, allow selective verbs / subresources for webhooks.

Signed-off-by: Ville Aikas<EMAIL_ADDRESS>
Changes
Currently when we create the validatingwebhookconfiguration, there's couple of wonky things with it:

Always includes status as a subresource and there are cases where we do not need it (#2115 )
Always includes all the verbs in the configuration even though they will later on get filtered, but the call to webhook is still made.

Also the API is widely used so I wanted to investigate what could be a smallest change using what we currently have to make this configurable.
So, the idea is that we have a way to customize additional validation logic via Callbacks, so if we utilize that struct we do not have to change the signature, but can piggyback off of it to provide ways to customize the actual webhook configuration without breaking any existing code.
Anyways, wanted to just put the smallest amount of code to see what folks think. obvs, need to write tests, etc. but just wanted to see what folks think before going too much deeper.

/kind

Fixes #

Release Note

Docs

Created a new New method. I created a new struct, take a looksie @dprotaso

FYI. here's a working example demonstrating how it works with before / after. As in an answer to my question above :)
https://github.com/sigstore/policy-controller/pull/165

Not sure what the Tekton test is all about:
go: finding module for package knative.dev/pkg/pool
github.com/tektoncd/chains/pkg/chains imports
	github.com/sigstore/cosign/pkg/cosign imports
	knative.dev/pkg/pool: module knative.dev/pkg@latest found (v0.0.0-20220819090049-2e08ca63a922, replaced by /home/runner/work/pkg/pkg/upstream), but does not contain package knative.dev/pkg/pool

UT failed with:
--- FAIL: TestDialTLSWithBackoffSuccess (0.32s)
FAIL network.TestDialTLSWithBackoffSuccess (0.32s)
PASS test/imports
PASS test/interactive.TestNewCommand (0.00s)
PASS test/interactive.TestAddArgs (0.00s)
PASS test/interactive.TestCommandStringer (0.00s)

/test unit-tests_pkg_main

/lgtm
/approve
/unhold
🎉 PKG cut last week, so we have another 5 to roll this back if we have regrets, but let's get it baking.

/test unit-tests_pkg_main

Oops, forgot to cut&paste the previous failures for retrying the unit tests:
--- FAIL: TestDialTLSWithBackoffSuccess (0.38s)
FAIL network.TestDialTLSWithBackoffSuccess (0.38s)
PASS test/imports
PASS test/helpers.TestAppendRandomString (0.00s)
PASS test/helpers.TestMakeK8sNamePrefix/abcd123 (0.00s)
PASS test/helpers.TestMakeK8sNamePrefix/AbCdef (0.00s)

Been dealing with the release and haven't had a chance to comment
I think rather than baking in SupportedVerbs into our go types we allow types to declare
OnCreate OnUpdate OnDelete as a way to signal the lifecycle events you care about
With the current solution you're sorta bleeding admissionregistration into various go types


Enabling polonium causes error

When I try to set programs.plasma.kwin.scripts.polonium = true; and then do home-manager switch, I get an error saying 'undefined variable polonium' pointing to line 629 in modules/kwin.nix:
      home.packages = with pkgs; [ ] ++ optionals (cfg.kwin.scripts.polonium.enable == true) [ polonium ];

I'm pretty sure it should say libsForQt5.polonium instead of just polonium there at the end, since that is the actual name of the package, but I lack the Nix expertise to properly check it.

Currently plasma-manager only have a unstable branch, so we only keep track of changes in nixpkgs unstable, and polonium is what currently is on nixpkgs unstable. We are going to start providing a stable release branch when NixOS 24.11 is released. To fix this problem, you can create an alias with an overlay in home-manager:
{
  nixpkgs.overlays = [
    (final: prev: {
      polonium = prev.libsForQt5.polonium;
    })
  ];
}

I hadn't considered the unstable channel. This works nicely.
Thank you, specially for the quick response!


Animated Action

Hi, first I would to say that this is an awesome project!
I have a question, it's possible to create a version of Action that has animation integrate within it?
I thought in using react-transition-group to simplify, if you guide me I can submit a PR or whatever you think is appropriate.
Thanks in advance.

Hello @Dervanil, thanks for opening this issue.
Both Action and State components support render props.
The function gives you a boolean that tells you whether the action (or the state) matches.
In this way, you can use ReacTransitionGroup (or any other component) to build animations.
For example:
<Action
  render={visible => <Transition in={visible} timeout={500} />}
  show="myAction"
/>

I hope this helps.

Thank you Michele, that's exactly what I was looking for.


Hiding content in GMail and Outlook not working with Zurb Ink 1 implementation

I am experiencing an issue using the Desktop/Mobile show/hide functionality with Zurb Ink email framework. When I use the CSS below it works correctly in GMail, where the mobile content is hidden and only desktop is shown, but not in Outlook. However, with the default Ink CSS (where there is no !important flag on the display: none) it works in Outlook but not in GMail. I am using Outlook 2010.
I have taken some inspiration from this Gist (https://gist.github.com/Riveascore/10549334) and i'm using this CSS:
div.gmail .show-for-small,
div.gmail .hide-for-desktop {
    display : none !important;
    mso-hide: all !important;
}

This is my email markup:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <meta name="viewport" content="width=device-width"/>

...

What am I missing?

Im new to Ink and reading through the documentation, so not in a place to comment in full knowledge.
But isnt the

is the Outlook selector, if its not outlook then it wont render those?

Yes, so the intention is to create the div with a class of Gmail for non-Outlook readers. So I'm in the situation where this works for Gmail, but breaks Outlook - and I don't understand why?

If Im following correctly,

...

So outlook, by right, should ignore the opening and closing divs and only see
...
and this is not happening?

Well, the issue isn't specific to those MSO tags (I think). I'm using the hide-for-desktop and show-for-mobile classes in my HTML email templates and I'm unable to get them working on both Gmail and Outlook. There seems little in the way of documentation from Zurb about this, other than a Tweet from 2014 saying it may be fixed in Ink 2. Although maybe I've just not found the documentation yet - but I'm at a bit of a loss with this one...

i think this might help greatly, it might be an outlook version issue as one can use if statements like "if mso 12" to target specific versions of outlook.
Nevertheless I find this article a very good read;
https://scotch.io/tutorials/building-responsive-email-templates-with-ink

Yes, thank you however i've tried all that sort of stuff. The problem that the posts I have come across don't seem to resolve is how to show the correct content for mobile desktop (with the Zurb hide-for-desktop classes on multiple clients.
Based on that Scotch.io post I dropped this into the  tag. But it doesn't get picked up on GMail. I assumed this read as "IF NOT MS OUTLOOK THEN DO THIS".

Thats correct, mso stands for microsoft outlook, so it includes that only-if-not outlook as there is negate ! in front.
You can even go ahead and add version too;
like

instead of number using just mso detects all outlook (i presume)

Any idea why my CSS doesn't work as per https://github.com/zurb/ink/issues/145#issuecomment-142219150 ?

I am not sure but it seems your exclusion is the one to look at;
i would try if !mso]  vs if mso]  - to exclude or not exclude outlook check.

@akeilox Everything I have read suggests doing [if !mso] - but this just doesn't work. I'm surprised the Ink project doesn't support the ability to show/hide on desktop/mobile with their built-in classes out the box.

@crmpicco Apologies for the delayed response, this seems like an interesting issue. This may have been an issue with the v1 specificity. We're no longer supporting v1, but we're merging PRs into our v1.0.0 branch.
I'm curious if you've taken a look at this on v2? If so can you file a new issue for that for us to look into.
Thanks!


Trying to run Methods 1 & 2 don't work

Using the "Deploy to Bluemix" button issues the same error as running Method 2:
I get the error "can't find cloud_config.json".  I see the file in the following directory:
/BluePic/BluePic-Server/Sources/BluePicApp/
any ideas how to fix it. When I print the variable "path" that is the failing file "Configuration.swift"  - it comes back as nil.
any ideas?

@ljbennett62 Which method did you try? The Cloud Tools for Swift method or the manual method?
I assume you see this error on Bluemix?
Also, what branch of BluePic did you use?

both methods - 1) The Cloud tools and 2) the manual method.  Yes - am seeing it in Bluemix. I am using the Master branch.

so got a bit further when I went in the code (Configuration.swift) and manually set:
let finalPath: String = "/Users/laurabennett/2017-NewRole/Code/BluePic/BluePic-Server/cloud_config.json"
I then get the following error when I do that:

There might be another issue here, but we at least need to find a fix for not being able to create new MCA Bluemix services (https://github.com/IBM-Swift/BluePic/issues/396). MCA was replaced with App ID, so not having it can prevent successful app deployments.

@tfrank64 - HI Taylor - so are you looking into this?

@ljbennett62 Yes, I am looking into it.

ok - tx - let me know if you need me to try something

@ljbennett62 Would you be willing to try and deploy a new BluePic application? I've updated BluePic to use App ID which was part of the problem, since MCA was deprecated. I got it to work through both IBM Cloud Tools and the Deploy to Bluemix button, let me know if it works for you.
Note, you may still see Could not find cloud_config.json but it should still work because it can access environment variables on Bluemix.

yes - let me give it a try!  tx

@tfrank64 - so the deploy to bluemix button worked!! yay! - now I am going to try to deploy locally. Thanx for the quick turnaround

btw - i just noticed you took out Alchemy and are now using Visual Recognition - are you planning to add NLU?

Your welcome, glad it is working now!
We don't have plans currently to add NLU. The change you mentioned was because Alchemy Vision was deprecated in favor of Watson Visual Recognition.

@tfrank64 - so it gets deployed but when I click the URL in BM - the links on the app (using Chrome) don't do anything. "I'll sign in later" and "sign in with facebook"

@ljbennett62 Well the facebook button is grayed out because it is not enabled right now. The sign in later link should work if you finished going through the Readme after the Deploy to Bluemix button step. You most likely still need to populate the database: https://github.com/IBM-Swift/BluePic#4-populate-cloudant-database

ok - let me continue

I will close this issue tomorrow since deployment itself is working.

sounds good - tx for all your help!


Prepares for 3.0 by updating to Spring Boot 3 and floor Java 8

We currently still have a problem as the latest version shows up as 3.0.0-rc0 due to an accidental release. Moreover, a request to delete that version hasn't happened. This switches to 3.x by dropping support for Java 6 and moving to Spring Boot 3.
As noted, recent Zipkin Reporter 3 and Brave 6 decouple instrumentation from this core jar. While it is still in use for other formats, the call sites using them are all minimum Java 8 anyway. By updating to floor Java 8, we can use later JDKs to release than 11, though this change doesn't include doing that, yet.
This will be mergable once I manually verify Spring Boot 3 doesn't break modularity with zipkin-aws and -gcp.

used openrewrite to migrate tests and server code to 17, by doing this and reverting the opposite
https://docs.openrewrite.org/recipes/java/migrate/upgradetojava17
mvn -U org.openrewrite.maven:rewrite-maven-plugin:run -Drewrite.recipeArtifactCoordinates=org.openrewrite.recipe:rewrite-migrate-java:RELEASE -Drewrite.activeRecipes=org.openrewrite.java.migrate.UpgradeToJava17

@timtebeek fyi, the last commit fixes some things that were mostly, but not completely done with the 17 update recipe. It seemed to dislike some things about how our linefeeds work as well unicode specifically 💩

@timtebeek just a hunch, but I think it is about multi-line literal conversion where the <17 has no trailing newline or unicode. Was easy to fix these, so no biggie!

oh wow it is green

merging and will reference zipkin-aws and zipkin-gcp via the snapshot repository and link back PRs. Thanks for the review @anuraaga!

and here's zipkin-aws https://github.com/openzipkin/zipkin-aws/pull/209

here's zipkin-gcp https://github.com/openzipkin/zipkin-gcp/pull/209

will cut 3.0 tomorrow morning unless screams!

I'm late but great work, @codefromthecrypt.


Added a pipe_map_some method to the bevy_ecs::IntoSystem trait (#12718)

Objective

#12718

A composition of a system that returns an Option with a second system that returns a type that implements Default. This composition skips the second system when the output of the first system is None. The composition runs the second system with the unwrapped output of the first system when that output is not None.
Solution

A pipe_map_some method analogous to the pipe method

Honestly I kinda like this. I wasn't convinced of the utility / elegance of this initially, but seeing the examples I can see the value.
I'd like more tests, and a demo in the system piping example.
I don't think we should / need to return Option out of the second system though: that seems needlessly restrictive. We should be able to mirror how the existing system pipe impl works and get arbitrary length chains still right?

The combined system has to have the same output as the second system. Since we skip the second system when the first returns None, we have to somehow create an instance of the return type of the second system. That is possible for all Default types. This allows both () and Option as return type of the second system.

I believe the desire is for:

A: fn(T) -> Option<U>
B: fn(U) -> V
A pipe_map_some B: fn(T) -> Option<V>

So the B system is "blind" to the monad provided by A. I think this is the preferable API, since we already have map for cases where B can take and/or produce a monad in response to the monad provided by A.
Because of that, I think and_then isn't appropriate, since that is specifically for B: fn(U) -> Option<V>. map is the Rust name for the above operation, but we're already using it for piping, so pipe_map_some is an acceptable compromise.

[9:48 PM]Alice 🌹: My biggest concern with this is that it won't be intuitive to users
[9:48 PM]Alice 🌹: So it won't be reached for
[9:48 PM]Alice 🌹: Currently leaning against merging as a result
[10:00 PM]bushRAT: I think that might be the right call. It also just occurred to me that it feels wrong that this method will be callable on systems which don't return an Option, and will just cause the whole group to fail to become a system, which is a difficult error to diagnose.

Closing out as a result: if others feel strongly that this should exist, please feel free to reopen and try and convince me. If you need anything else public to make sure this is externally implementable, let us know!


Show division in replays when available

WIP

The core functionality is there, but it is still a bit rough around the edges.
There is a slight delay because we have to fetch the division info from the api, so at the moment it behaves a bit ugly visually.
Similarly  the team title still displays (0) because I didn't manage to properly set the teamrating to null to trigger the removal of the rating display alltogether.
I appreciate input how this could be solved better.

@BlackYps were you ever going to get back to this?
There have also been a few changes to the underlying objects as an FYI.

I don't plan to abandon this, on the other hand I am really not motivated to do the refactoring that is required here.
So I guess the honest answer is, I really don't know...

Then I might just close this in a week and it can be reopened when you revisit it.

I'm picking this up again

The population of the values of the controllers and the displaying of these values are now nicely decoupled. There is one issue though. In a matchmaker game the people that don't have a division still display the rating and the team rating is displayed as well. The problem is that the player cards without a division don't know about the presence of divisions in different player cards. We need some way to check if we found any league stats for the replay (the api call) and then disable rating display for the whole thing somehow

For displaying the whole thing you can just have a display type enum that has a property in the player card. Then you can set that property appropriately to display either rating or league. Could even just bind it to some property in the parent.

I guess a boolean would even be enough, something like gameHasLeagueScore. I don't have to differentiate multiple states, just this binary decision

Yeah I was just thinking of an enum to make it clearer what it signifies. Since hasLeagueScore doesn't imply as much that ratings won't be shown.
Where as something like display type would make that clearer.

yeah, I can see that.

Was testing this out and one thing that stuck out as a little bit odd to me. Why do we require pressing the show game result to show the game outcome on the team card. Maybe we should just display it always on load?

I think this kind as introduced to make it possible to watch a game without being spoiled on which side wins

Sure but now you can also play directly from the search result page

Hmm, that's true. Maybe we should discuss this with more users to better understand how they use this button at the moment. It's definitely an interesting suggestion, but imo it is unrelated to this PR

What is the status of this?

From my pov it is ready

Can I do something about that race condition?

You could make sure that you don't try to load the league data until after the team containers are populated

I think I first need to understand the race condition a little better. As I see it we run the risk that the league info is applied to the old teamcardcontrollers, so they get cleared right after and new controllers for the new replay get added in populateTeamsContainer if this happens after the application of the league info.
Is this the correct one, or did you have a different race condition in mind?
And why is createTeamCardControllers called asyncronously? I do not immediately see any operation in that method that would make this necessary.

They are created asynchronously so they don't block the application thread and cause the ui to freeze. And to cure the race condition you would just load the league info after create team controllers is called or make it apart of create team controllers

Showing division is nice, but was it necessary to remove the rating change? It means you need to check your profile after every match and keep a spreadsheet if you want to track changes rather than it being plainly displayed in the replays.

Yes, the divisions are supposed to replace the rating. The rating system is considered to be part of the backend, it's not necessary to show it to the user when the division system exists

Are we going to get transparency in how divisions are calculated? Currently divisions are more or less meaningless, every other system (ingame player lists, lobby entry requirements, matchmaking, game quality rating) works on rating.
Divisions are really large and imprecise, you could win 15 games in a row and see no change. Even systems that obfuscate Elo / MMR (eg LoL) show points to measure how far up or down you are inside a division.

What exactly is the problem you are having? I'm trying to und erstand it so I can hopefully address it in my answer.
And did you have a look at the leaderboard tab? Your comment gives me the impression that you didn't, because you can see points there and it's not possible to win 15 games in a row without changing divisions, because each division is only 10 points big.

I wasn't aware about the Leaderboards or Score system at all. I was under the impression that division was based on rating (e.g. Gold V being 800 - 900).
This does answer my questions.
I still don't understand why you would hide information from the player, even if you consider rating to be back-end, but that's your prerogative.


validate_presence_of method undefined when running rspec

When running rspec spec, shoulda gem version >= 3.0.1
Reverting to 2.8.0 fixes this. Gemfile copied below:
source 'https://rubygems.org'

ruby '2.2.2'

# App env vars. Load before everything else
gem 'dotenv-rails', groups: [:development, :test]

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '<IP_ADDRESS>'

# Postgres
gem 'pg'

# Authentication
gem 'devise'

# Haml
gem 'haml'
gem 'haml-rails'

# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0'
gem 'bootstrap-sass'

# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'

# Use CoffeeScript for .coffee assets and views
gem 'coffee-rails', '~> 4.1.0'

# See https://github.com/rails/execjs#readme for more supported runtimes
# gem 'therubyracer', platforms: :ruby

# Use jquery as the JavaScript library
gem 'jquery-rails'

# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
gem 'turbolinks'

# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.0'

# bundle exec rake doc:rails generates the API under doc/api.
gem 'sdoc', '~> 0.4.0', group: :doc

# Use ActiveModel has_secure_password
# gem 'bcrypt', '~> 3.1.7'

# App server
gem 'puma'

# Use Capistrano for deployment
# gem 'capistrano-rails', group: :development

group :test do
  gem 'shoulda-matchers'
end

group :development, :test do
  # Call 'byebug' anywhere in the code to stop execution and get a debugger console
  gem 'byebug'

  gem 'rspec-rails'

  gem 'guard'
  gem 'guard-rspec'
  gem 'guard-rubocop'

  gem 'spring'
  gem 'spring-commands-rspec'
  gem 'guard-spring'

  gem 'factory_girl_rails'
end

group :development do
  # Access an IRB console on exception pages or by using <%= console %> in views
  gem 'web-console', '~> 2.0'
end

Shoulda is a great gem, btw, thanks for the hard work!


NACKQueue

I see an issue in handleCustomPacket() when it adds sequence numbers to the NACKQueue:
    RakNetCustomPacket cp = new RakNetCustomPacket(data);
    cp.decode();
    if(cp.seqNum - lastSeqNum == 1){
        lastSeqNum = cp.seqNum;
    } else {
        synchronized (NACKQueue) {
            for(int i = lastSeqNum; i < cp.seqNum; ++i){
                NACKQueue.add(i);
            }
        }
    }

    ACKQueue.add(cp.seqNum);

You aren't resetting lastSeqNum if you ever drop a packet.

I see. I don't think this is the cause of our chunks issue, but it is an
issue on its own.
On Wednesday, February 18, 2015, pcbeard<EMAIL_ADDRESS>wrote:

I see an issue in handleCustomPacket() when it adds sequence numbers to
the NACKQueue:
RakNetCustomPacket cp = new RakNetCustomPacket(data);
cp.decode();
if(cp.seqNum - lastSeqNum == 1){
    lastSeqNum = cp.seqNum;
} else {
    synchronized (NACKQueue) {
        for(int i = lastSeqNum; i < cp.seqNum; ++i){
            NACKQueue.add(i);
        }
    }
}

ACKQueue.add(cp.seqNum);

You aren't resetting lastSeqNum if you ever drop a packet.
—
Reply to this email directly or view it on GitHub
https://github.com/jython234/MagicClient/issues/4.

--


Strict connection timeout settings

I want to merge this change because it sets consistent settings for connection establishment timeout.
More context in issue https://github.com/saleor/saleor/issues/13770
Resolves https://github.com/saleor/saleor/issues/13770

Impact

[ ] New migrations
[ ] New/Updated API fields or mutations
[ ] Deprecated API fields or mutations
[ ] Removed API types, fields, or mutations

Docs

[ ] Link to documentation:

Pull Request Checklist

[ ] Privileged queries and mutations are either absent or guarded by proper permission checks
[ ] Database queries are optimized and the number of queries is constant
[ ] Database migrations are either absent or optimized for zero downtime
[ ] The changes are covered by test cases

PR is reworked for the assumptions, only two things left with timeouts they used to (but added connection estab. timeout in those)

NP atobarai - left 30s as it was in the comment that it was recommended by NP.
AppFetchManifest mutation 5s for media as the brand data is not essential and mutation can proceed without it.

Let me know if it's advised to change these too or it's fine as is.


Deleted Task in cache.

Signed-off-by: Da K. Ma<EMAIL_ADDRESS>Fixes #286

When updating Pod, it need to get Pod from Cache to delete because the Pod in Binding status has assigned host but the oldPod does not, that makes cache can not delete old pod/task from NodeInfo.


Install on Travis fails

I'm trying to use this module and I can install & use it locally without issues, however it's failing to install properly on Travis. I am using the custom parts from .travis.yml in this repo and still fails to install.

https://travis-ci.org/avaly/backup-to-cloud/builds/219631565#L271
https://github.com/avaly/backup-to-cloud/commit/53b0d8bbac2d18082cc0944e8ac0b5ecf61392d8#diff-354f30a63fb0907d4ad57269548329e3

It's installing properly—the relevant error is SQLite: unable to open database file. It looks like you're having a file permissions problem, or something else related the file system. Travis probably doesn't allow you to save files on their servers, so it's likely that you need to use an in-memory database (new DB(filename, {memory: true})) for running your tests.

It seems the error was indeed something else: I was trying to instantiate a database with a file path in a folder which did not exist. It would be useful to either throw a better error message or actually create the full directory path to the database file if they don't exist (like mkdir -p PATH).


Allow non-alphanum characters in tag content

The tag context should allow non-alphanum characters. See the spec for
section tag content [1]:

These tags' content MUST be a non-whitespace character sequence NOT
containing the current closing delimiter; ...

For the 3 added test cases, #1 and #3 will fail today, and #2 will
trigger a panic. The code change fixes them.
The expected behavior can also be verified on
http://mustache.github.io/#demo, with Mustache:
1: {{#key*}}{{.}}{{/key*}}
2: {{#key}}{{*}}{{/key}}
2: {{#key}}{{*}*}}{{/key}}

and JSON:
{
  "key*": "value*",
  "key": "value",
  "*": "star",
  "*}*": "fish"
}

We can get output as:
1: value*
2: star
2: fish

[1] https://github.com/mustache/spec/blob/b1329a25e6d265ff360267d23f7c6327bbf59f52/specs/sections.yml#L5

I have also sent this PR to upstream, at: https://github.com/alexkappa/mustache/pull/8
I expect some delay on the upstream review, so let's make our own changes and diverge for now.
When the review is finished, let's follow the upstream decision then.

Thanks for the review Chris!


Cleaning up various housekeeping issues

upgrade MAX-Base version
add license headers
pip install from test-requirements.txt for tests
clean up flake8 issues and enable flake8 in Travis
move sample image to sample and remove assets folder

I have also replaced the reference to assets with samples in the README to match your changes. In addition, I replaced the old max-assets url with your new max-assets-prod one.


the background of user contents is not being resized

I saw your post on Google plus and found this lib a great resource to use in my future project, I forked and imported in Android Studio, I wanted the result as shown here
[
on my device I got this

the background of user contents is not being resized as shown in first git demo, how can I solve this issue please help...

What's your phone and Os version ?

OS version is Android 5.1.1
And Phone is QMobile M350

Any solution to this  issue?

I tried on a 4.4 and it works fine...


[SPARK-49556][SQL] Add SQL pipe syntax for the SELECT operator

What changes were proposed in this pull request?
This PR adds SQL pipe syntax support for the SELECT operator.
For example:
CREATE TABLE t(x INT, y STRING) USING CSV;
INSERT INTO t VALUES (0, 'abc'), (1, 'def');

TABLE t
|> SELECT x, y

0	abc
1	def

TABLE t
|> SELECT x, y
|> SELECT x + LENGTH(y) AS z

3
4

(SELECT * FROM t UNION ALL SELECT * FROM t)
|> SELECT x + LENGTH(y) AS result

3
3
4
4

TABLE t
|> SELECT sum(x) AS result

Error: aggregate functions are not allowed in the pipe operator |> SELECT clause; please use the |> AGGREGATE clause instead

Why are the changes needed?
The SQL pipe operator syntax will let users compose queries in a more flexible fashion.
Does this PR introduce any user-facing change?
Yes, see above.
How was this patch tested?
This PR adds a few unit test cases, but mostly relies on golden file test coverage. I did this to make sure the answers are correct as this feature is implemented and also so we can look at the analyzer output plans to ensure they look right as well.
Was this patch authored or co-authored using generative AI tooling?
No

cc @cloud-fan @srielau @gengliangwang

thanks, merging to master!


expecting "autocomplete_result_select" handler in Menu component

in some cases, when selecting a curriculum item in create or update assessment point overlay, an error message is flashed.
(need further investigation to understand what is the exactly case, because it does not happen every time).
error message:
[error] GenServer #PID<0.1321.0> terminating
** (FunctionClauseError) no function clause matching in LantternWeb.MenuComponent.handle_event/3
    (lanttern 0.1.0) lib/lanttern_web/live_components/menu_component.ex:249: LantternWeb.MenuComponent.handle_event("autocomplete_result_select", %{"id" => "1", "name" => "English LO 1"}, #Phoenix.LiveView.Socket<id: "phx-F46a7Klwshs7kgWB", endpoint: LantternWeb.Endpoint, view: LantternWeb.AssessmentPointLive, parent_pid: nil, root_pid: #PID<0.1321.0>, router: LantternWeb.Router, assigns: %{id: "menu", profile_name: "The Teacher", profiles: [%Lanttern.Identity.Profile{__meta__: #Ecto.Schema.Metadata<:loaded, "profiles">, id: 1, type: "teacher", user_id: 1, user: #Ecto.Association.NotLoaded<association :user is not loaded>, student_id: nil, student: nil, teacher_id: 1, teacher: %Lanttern.Schools.Teacher{__meta__: #Ecto.Schema.Metadata<:loaded, "teachers">, id: 1, name: "The Teacher", school_id: 1, school: %Lanttern.Schools.School{__meta__: #Ecto.Schema.Metadata<:loaded, "schools">, id: 1, name: "The School", inserted_at: ~N[2023-10-16 13:49:58], updated_at: ~N[2023-10-16 13:49:58]}, inserted_at: ~N[2023-10-16 13:49:58], updated_at: ~N[2023-10-16 13:49:58]}, inserted_at: ~N[2023-10-16 13:49:59], updated_at: ~N[2023-10-16 13:49:59]}], __changed__: %{}, current_user: #Lanttern.Identity.User<__meta__: #Ecto.Schema.Metadata<:loaded, "users">, id: 1, email<EMAIL_ADDRESS>is_root_admin: true, confirmed_at: nil, current_profile_id: 1, current_profile: %Lanttern.Identity.Profile{__meta__: #Ecto.Schema.Metadata<:loaded, "profiles">, id: 1, type: "teacher", user_id: 1, user: #Ecto.Association.NotLoaded<association :user is not loaded>, student_id: nil, student: nil, teacher_id: 1, teacher: %Lanttern.Schools.Teacher{__meta__: #Ecto.Schema.Metadata<:loaded, "teachers">, id: 1, name: "The Teacher", school_id: 1, school: %Lanttern.Schools.School{__meta__: #Ecto.Schema.Metadata<:loaded, "schools">, id: 1, name: "The School", inserted_at: ~N[2023-10-16 13:49:58], updated_at: ~N[2023-10-16 13:49:58]}, inserted_at: ~N[2023-10-16 13:49:58], updated_at: ~N[2023-10-16 13:49:58]}, inserted_at: ~N[2023-10-16 13:49:59], updated_at: ~N[2023-10-16 13:49:59]}, inserted_at: ~N[2023-10-16 13:49:59], updated_at: ~N[2023-10-16 13:50:12], ...>, flash: %{}, current_path: "/assessment_points/1", myself: %Phoenix.LiveComponent.CID{cid: 7}, active_nav: :assessment_points, profile_type: "Teacher", profile_school: "The School"}, transport_pid: #PID<0.1253.0>, ...>)
    (phoenix_live_view 0.20.0) lib/phoenix_live_view/channel.ex:716: anonymous fn/4 in Phoenix.LiveView.Channel.inner_component_handle_event/4
    (telemetry 1.2.1) /Users/endo/camino-school/dev/lanttern/deps/telemetry/src/telemetry.erl:321: :telemetry.span/3
    (phoenix_live_view 0.20.0) lib/phoenix_live_view/diff.ex:204: Phoenix.LiveView.Diff.write_component/4
    (phoenix_live_view 0.20.0) lib/phoenix_live_view/channel.ex:639: Phoenix.LiveView.Channel.component_handle_event/6
    (stdlib 5.0.2) gen_server.erl:1077: :gen_server.try_handle_info/3
    (stdlib 5.0.2) gen_server.erl:1165: :gen_server.handle_msg/6
    (stdlib 5.0.2) proc_lib.erl:241: :proc_lib.init_p_do_apply/3
Last message: %Phoenix.Socket.Message{topic: "lv:phx-F46a7Klwshs7kgWB", event: "event", payload: %{"cid" => 7, "event" => "autocomplete_result_select", "type" => "hook", "value" => %{"id" => "1", "name" => "English LO 1"}}, ref: "29", join_ref: "26"}
State: %{socket: #Phoenix.LiveView.Socket<id: "phx-F46a7Klwshs7kgWB", endpoint: LantternWeb.Endpoint, view: LantternWeb.AssessmentPointLive, parent_pid: nil, root_pid: #PID<0.1321.0>, router: LantternWeb.Router, assigns: %{__changed__: %{}, current_user: #Lanttern.Identity.User<__meta__: #Ecto.Schema.Metadata<:loaded, "users">, id: 1, email<EMAIL_ADDRESS>is_root_admin: true, confirmed_at: nil, current_profile_id: 1, current_profile: %Lanttern.Identity.Profile{__meta__: #Ecto.Schema.Metadata<:loaded, "profiles">, id: 1, type: "teacher", user_id: 1, user: #Ecto.Association.NotLoaded<association :user is not loaded>, student_id: nil, student: nil, teacher_id: 1, teacher: %Lanttern.Schools.Teacher{__meta__: #Ecto.Schema.Metadata<:loaded, "teachers">, id: 1, name: "The Teacher", school_id: 1, school: %Lanttern.Schools.School{__meta__: #Ecto.Schema.Metadata<:loaded, "schools">, id: 1, name: "The School", inserted_at: ~N[2023-10-16 13:49:58], updated_at: ~N[2023-10-16 13:49:58]}, inserted_at: ~N[2023-10-16 13:49:58], updated_at: ~N[2023-10-16 13:49:58]}, inserted_at: ~N[2023-10-16 13:49:59], updated_at: ~N[2023-10-16 13:49:59]}, inserted_at: ~N[2023-10-16 13:49:59], updated_at: ~N[2023-10-16 13:50:12], ...>, flash: %{}, ordinal_values: [%Lanttern.Grading.OrdinalValue{__meta__: #Ecto.Schema.Metadata<:loaded, "ordinal_values">, id: 6, name: "Lack of evidence", normalized_value: 0.0, bg_color: "#2D0808", text_color: "#FFFFFF", scale_id: 2, scale: #Ecto.Association.NotLoaded<association :scale is not loaded>, inserted_at: ~N[2023-10-16 13:49:59], updated_at: ~N[2023-10-16 13:49:59]}, %Lanttern.Grading.OrdinalValue{__meta__: #Ecto.Schema.Metadata<:loaded, "ordinal_values">, id: 7, name: "Emerging", normalized_value: 0.4, bg_color: "#F28888", text_color: "#F6DFDF", scale_id: 2, scale: #Ecto.Association.NotLoaded<association :scale is not loaded>, inserted_at: ~N[2023-10-16 13:49:59], updated_at: ~N[2023-10-16 13:49:59]}, %Lanttern.Grading.OrdinalValue{__meta__: #Ecto.Schema.Metadata<:loaded, "ordinal_values">, id: 8, name: "Progressing", normalized_value: 0.6, bg_color: "#FFF48F", text_color: "#756A07", scale_id: 2, scale: #Ecto.Association.NotLoaded<association :scale is not loaded>, inserted_at: ~N[2023-10-16 13:49:59], updated_at: ~N[2023-10-16 13:49:59]}, %Lanttern.Grading.OrdinalValue{__meta__: #Ecto.Schema.Metadata<:loaded, "ordinal_values">, id: 9, name: "Achieving", normalized_value: 0.85, bg_color: "#5CD9BB", text_color: "#133F34", scale_id: 2, scale: #Ecto.Association.NotLoaded<association :scale is not loaded>, inserted_at: ~N[2023-10-16 13:49:59], updated_at: ~N[2023-10-16 13:49:59]}, %Lanttern.Grading.OrdinalValue{__meta__: #Ecto.Schema.Metadata<:loaded, "ordinal_values">, id: 10, name: "Exceeding", normalized_value: 1.0, bg_color: "#814BF4", text_color: "#D9C8FC", scale_id: 2, scale: #Ecto.Association.NotLoaded<association :scale is not loaded>, inserted_at: ~N[2023-10-16 13:49:59], updated_at: ~N[2023-10-16 13:49:59]}], assessment_point: %Lanttern.Assessments.AssessmentPoint{__meta__: #Ecto.Schema.Metadata<:loaded, "assessment_points">, id: 1, name: "English reading", datetime: ~U[2023-10-16 10:49:59Z], description: "Eius recusandae dolores voluptatem pariatur mollitia voluptatem vel porro.", date: nil, hour: nil, minute: nil, class_id: nil, classes_ids: nil, student_id: nil, students_ids: nil, curriculum_item_id: 1, curriculum_item: %Lanttern.Curricula.CurriculumItem{__meta__: #Ecto.Schema.Metadata<:loaded, "curriculum_items">, id: 1, name: "English LO 1", code: nil, subjects_ids: nil, years_ids: nil, grade_composition_component_items: #Ecto.Association.NotLoaded<association :grade_composition_component_items is not loaded>, assessment_points: #Ecto.Association.NotLoaded<association :assessment_points is not loaded>, curriculum_component_id: 1, curriculum_component: #Ecto.Association.NotLoaded<association :curriculum_component is not loaded>, subjects: #Ecto.Association.NotLoaded<association :subjects is not loaded>, years: #Ecto.Association.NotLoaded<association :years is not loaded>, inserted_at: ~N[2023-10-16 13:49:59], updated_at: ~N[2023-10-16 13:49:59], children_id: nil, component_code: nil}, scale_id: 2, scale: %Lanttern.Grading.Scale{__meta__: #Ecto.Schema.Metadata<:loaded, "grading_scales">, id: 2, name: "Camino Levels", type: "ordinal", start: nil, stop: nil, breakpoints: [0.2, 0.5, 0.7, 0.9], ordinal_values: #Ecto.Association.NotLoaded<association :ordinal_values is not loaded>, inserted_at: ~N[2023-10-16 13:49:59], updated_at: ~N[2023-10-16 13:49:59]}, entries: #Ecto.Association.NotLoaded<association :entries is not lo (truncated)

when selecting a curriculum item one of the event listeners was being triggered many times because we were not removing the listeners — so, after some navigation between the assessment explorer and assessment details pages, we ended up with a lot of duplicated event listeners, which was causing this issue of the event kind of "leaking" to the menu component.


Merge from master to dev

Codecov Report

Merging #81 into dev will decrease coverage by 0.63%.
The diff coverage is 56.31%.

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


Nested pojo  & extending another POJO

public static class Temp {
    private String name;
    private int age;
    private List<String> list;
    private Nested nested;
    private Map<String, List<String>> map;

   public Temp(){}

    public Temp(String name, int age, List<String> list, Nested nested,
        Map<String, List<String>> map) {
      this.name = name;
      this.age = age;
      this.list = list;
      this.nested = nested;
      this.map = map;
    }
   // Getter, Setter toString ...
}

public class Nested {
  private String title;

  public Nested() {
  }
// Getter Setter etc ...
}

`
im testing feign for http client of my spring boot project
when i use api like below with POJO parameter typed Temp
@PostMapping(value = "/temp",consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)
  String formEncodedPost(Temp temp);

It seemd that FormEncoder(accurately PojoUtil) just set Nested.toString() for 'title' property of Nested class
so when i log Nested instance
logger say "Nested{title='Nested{title='title 1'}"
this is debugging log for client side
 [POST /form HTTP/1.1
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Accept: */*
User-Agent: Java/1.8.0_222
Host: localhost:8080
Connection: keep-alive
Content-Length: 77
name=tempName&list=1&list=2&list=3&nested=**Nested%7Btitle%3Dtitle+1%7D**&age=100]

and
below is server side log
`
Start processing with input [name=tempName&list=1&list=2&list=3&nested=Nested%7Btitle%3Dtitle+1%7D&age=100]
`
and nest Map or HashMap or LinkedMultiValueMap not works well.  (server said, can not convert String to map)
this is bug? or intended action?
And maybe extending another pojo not works -> feign encode data to body only properties in child POJO

can be connected with: #95


[VL] Make glog config be session level

What changes were proposed in this pull request?
After this patch, user can change glog config and debug config in one session more easily.

@marin-ma @zhztheplayer @PHILO-HE would you help review? thanks!

Thanks!


Added Dockerfile to run CallStranger in a docker container

Adding a Dockerfile to enable users to build a docker image for CallStranger and run it in a container.
Might be useful if one does not want to install python packages on the host.
Only did a quick test on x86_64 and aarch64 and it seemed to work fine.

This only works on Linux hosts as far as I know.
I'd suggest adding that to the README.

Thanks for optimizing the Dockerfile @SuperSandro2000 .
@canozmen can you elaborate on that? Is that because --host net is only available on Docker on Linux?
I've never used docker on a none Linux machine.

@jakommo yes, exactly.
Quoting from their docs at https://docs.docker.com/network/host/

The host networking driver only works on Linux hosts, and is not supported on Docker Desktop for Mac, Docker Desktop for Windows, or Docker EE for Windows Server.

I have tried on a Mac and the script is unable to find any UPNP devices when ran inside Docker.

@canozmen i see the same in the docs (I setup CallStranger in WSL2 on windows, though it took some futzing with WSL as i assumed i couldn't do docker on windows as i thought this would need macvlan for upnp (all my other playing with upnp has always required macvlan for avhai) ).
what's interesting is on docker desktop windows i see the following when trying to use host, not sure if they added it (i run latest edge channel with experimental enabled) - will spin up a CallStranger container tomorrow to see if it really is host networking.
PS C:\WINDOWS\system32> docker run -it --rm --network=host debian:latest
root@docker-desktop:/# ping google.com
PING google.com (<IP_ADDRESS>) 56(84) bytes of data.
64 bytes from <IP_ADDRESS> (<IP_ADDRESS>): icmp_seq=1 ttl=38 time=5.45 ms
64 bytes from <IP_ADDRESS> (<IP_ADDRESS>): icmp_seq=2 ttl=38 time=5.34 ms
64 bytes from <IP_ADDRESS> (<IP_ADDRESS>): icmp_seq=3 ttl=38 time=4.96 ms


Updated Keystone token overrides in user_variables.yml

This patch updates the keystone token overrides by changing keystone_token_provider
and keystone_token_driver in user_variables.yml to reflect the new entry point.
This was done due to the fact that the direct of import keystone.token.providers.uuid.Provider for the token provider and keystone.token.persistence.backends.sql.Token for the token driver are deprecated
as of Liberty and may be removed in Newton.
Addresses #873

Well done, @ameserole. Thanks for fixing the token driver line as well.
Jenkins isn't done yet, but I'm +1 on this change. :+1:

recheck_upgrade
18:54:41 NOTIFIED: [horizon_extensions | Restart apache2] ******************************
18:54:43 changed: [jrpcaioiad-b5e_horizon_container-e4a50b38]
18:55:02 failed: [jrpcaioiad-b5e_horizon_container-635f7ae1] => {"failed": true}
18:55:02 msg: (98)Address already in use: AH00072: make_sock: could not bind to address [::]:80
18:55:02 (98)Address already in use: AH00072: make_sock: could not bind to address <IP_ADDRESS>:80
18:55:02 no listening sockets available, shutting down
18:55:02 AH00015: Unable to open logs

recheck_upgrade
22:16:31 TASK: [galera_server | Create the local directories] **************************
22:36:31 changed: [jrpcaioiad-f36_galera_container-f63e1ae4] => (item={'owner': 'mysql', 'path': '/var/lib/mBuild timed out (after 20 minutes). Marking the build as aborted.
22:36:31 Build was aborted

👍  once jenkins does his thing

recheck_upgrade
09:52:42 TASK: [rabbitmq_server | Join rabbitmq cluster] *******************************
09:52:42 skipping: [jrpcaioiad-c91_rabbit_mq_container-66650317]
09:52:43 changed: [jrpcaioiad-c91_rabbit_mq_container-92135c2b]
10:12:43 Build timed out (after 20 minutes). Marking the build as aborted.
10:12:43 Build was aborted
10:12:43 [PostBuildScript] - Execution post build scripts.

:+1: as well, nice work!

Tests look good.

@ameserole the issue referenced by the commit appears unrelated to what is actually being changed ( switching to fernet tokens versus updating deprecated config), next time please create a separate issue, to reduce the potential for confusion.