Make the layout responsive using Less.

Hi there!
Here's a new layout far more versatile.
And the good news, it's using Less!

For now, you need to run first:
npm run esdoc
Next, to compile style.less to style.css, just run:
npm run less
Finally, run dev server:
npm run start

The entry point of Less file is located here:
/src/Publisher/Builder/template/less/style.less
and it contains:
@import "variables";
@import "text";
@import "layout";
@import "menu"; // header menu
@import "search";
@import "nav"; // sidebar navigation

You can check the result at:
http://esdoc.avine.fr/v2
The layout is ready, but the content is still in progress...

Hi there,
The new design is compatible with dark-theme just by updating a few lines of code:
@color-base: #999;
@color-alt: #555;

@bg-color-base: #1e1e1e;
@bg-color-alt: #171717;
@bg-color-highlight: #2e2e2e;

@border-color: #3e3e3e;

@code-bg-color: rgba(255, 255, 255, 0.07);

@table-bg-hover: #111;

Feel free to check the result at:
http://esdoc.avine.fr/v2-dark
But don't forget to check the latest regular-themeat:
http://esdoc.avine.fr/v2

Codecov Report

:exclamation: No coverage uploaded for pull request head (v2@e7e9723).

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 365958a...e7e9723. Read the comment docs.

Hi there,
It's almost done!
The Less is separated into the following list of imports:
// basics
@import "core/variables";
@import "core/text";
@import "core/layout";
@import "core/menu";
@import "core/search";
@import "core/nav";
@import "core/helper";

// main content
@import "core/doc";
@import "core/summary";
@import "core/manual";

// markdown
@import "core/markdown";

In the file .esdoc.json you can specify the list the import you want, and configure the Less theme you want, like this:
{
  "less": {
    "imports": ["variables", "text", "menu", "search", "nav"], // import only 5 items
    "theme": "dark" // ad theme: '/src/Publisher/Builder/template/less/theme-dark.less'
  }
}

Now, the Less to Css compilation is processed in:
src/Publisher/Builder/LessFileBuilder.js
So, you just need to run:
npm run esdoc
Please check the result at:

http://esdoc.avine.fr/v2
http://esdoc.avine.fr/v2-dark

Here some screenshots:

You can now add your brand logo in .esdoc.json:
{
  "logo": "<PATH_TO_LOGO_FROM_ROOT>"
}

In layout.html:

In Builder.js
if (this._config.logo) {
  const logo = this._config.logo.match(/[^\/]+$/)[0];
  ice.load('brandLogoLink', `<img src=".image/${logo}">`);
} else {
  ice.drop('brandLogoLink');
}

In StaticFileBuilder.js:
if (this._config.logo) {
  const logo = this._config.logo.match(/[^\/]+$/)[0];
  callback(path.resolve(this._config.logo), `.image/${logo}`);
}

Here a screenshot using the esdoc logo:
{
  "logo": "./src/Publisher/Builder/template/image/esdoc-logo.svg"
}

Here's the latest dark-theme screenshot:

Any feedback will be appreciated... 👍

Here's a new theme which is like: http://git-scm.com

:heart: one of my biggest issues with the RxJs docs will be solved by this pr

Here is the way to configure the less property in .esdoc.json:
Load sublist of available Less imports
(notice that "variables" is optional in this list and will be automatically prepended when needed)
{
  "less": {
    "imports": [/*"variables", */"layout", "menu", "search", "aside"]
  }
}

Load all available Less imports and add one esdoc theme available
(for now there's 2 themes available: dark and  gitme)
{
  "less": {
    "theme": ["dark"] // alias of `./src/Publisher/Builder/template/less/theme/dark.less`
  }
}

Don't load any import and add one user theme
(allowing you to completely remove the default styles and do your own styles with Less...)
{
  "less": {
    "imports": [],
    "theme": ["./my/path/to/less/file.less"] // real path to user theme
  }
}

Use some Less imports and add your own
{
  "less": {
    "imports": [/*"variables", */"layout", "menu", "search", "aside"],
    "theme": ["./my/path/to/less/file.less"] // you can use the esdoc Less `variables`
  }
}

@avine Really like the work you put in to make esdoc responsive and theme-able using less. There's an issue with trying to use your fork as a package at the moment though. I think you need to add "less" to esdoc's package.json as a dependency to avoid any runtime errors (you may have it globally installed?).
I tested this by setting my package json to download esdoc from my github fork (had to build the out/ folder of esdoc first and commit that to github so that npm wouldn't fail on install).
Wanted to comment since this seems to be a large pull request that may take some time to get into esdoc master.

@avine Thanks for many feature. However this pull request is so big. Please split it to pull requests of each feature.
And use a plugin API for your features. Because I am splitting ESDoc to each plugins(https://github.com/esdoc/esdoc/issues/386). After the working I will implement the function using the plugin API.  So I will try not to put as much function as possible into the main repository.
For example, your theme and logo are implemented using the plugin API.
Thanks.

@Flux159. Actually, i have added lessas a devDependencies.
You think it should be better as a dependencies ?

Here is a deep explanation of what i have done for this PR.
In summary
I have removed the original file src/Publisher/Builder/template/css/style.css.
Now, the final out/esdoc/css/style.css is generated programatically.
To generate this file, we are using the Less files in: esdoc/src/Publisher/Builder/template/less/core/*.less,
using the script:
src/Publisher/Builder/LessFileBuilder.js
Here is the changes in the repository
package.json
Add less in dependencies.
script/less.js
This script is NOT used in the esdoc build process.
Use it at design time, when you need to change something in the less files and see the result quickly.

execute npm run esdoc once
change something in src/Publisher/Builder/template/less/**
execute npm run less and see the result immediately
change something again in less files...
execute again npm run less
...

The script will update the file out/esdoc/css/style.css each time it is called.
(the path out/esdoc is hard coded)
How it works ?
The script is simply compiling the Less file src/Publisher/Builder/template/less/style.less.
Note that this file style.less is (also) NOT used in the esdoc build process.
src/Publisher/Builder/template/less/style.less
As we said above in the script/less.js section, this Less file is NOT used in the esdoc build process.
At design time, when you run npm run less, this is the Less file which is actually compiled.
@import "core/variables";
@import "core/text";
@import "core/layout";
@import "core/menu";
@import "core/search";
@import "core/aside";
@import "core/helper";

@import "core/doc";
@import "core/summary";
@import "core/manual";
@import "core/markdown";

//@import "theme/dark";
//@import "theme/gitme";

For example, you can:

comment the line @import "core/text"; to see the esdoc output without this Less file...
uncomment one of the available themes like //@import "theme/dark"; to see what it looks like.

src/Publisher/Builder/template/less/core/manual.less
Important notice.
In this file i have added this:
.manual-user-index {
   // ################
   // Just a proposal:
   // remove this part from the "Manual" page...
   display: none;
   // ################
 }

Personally, i prefer to see the .manual-cards section at the top of the page.
Thus, i have just added a display: none; on the .manual-user-index section.
But it is up to you to decide if you prefer to keep this part in the manual page or not.
And in the file src/Publisher/Builder/template/manualCardIndex.html, i have added a comment about this idea:

src/Publisher/Builder/DocBuilder.js
Check if this._config.logo is available and just add the  tag in the layout.html using ice.
 src/Publisher/Builder/StaticFileBuilder.js
Check if this._config.logo is available and just copy the image file in out/esdoc/image/.
src/Publisher/Builder/LessFileBuilder.js
This is the script used in the esdoc build process.
It produce the final out/esdoc/css/style.css
(this time, the path out/esdoc depends on the .esdoc.json configuration:  destination)
src/Publisher/publish.js
Add the script LessFileBuilder.js in the process:
...
import LessFileBuilder from './Builder/LessFileBuilder.js';
...
new LessFileBuilder(data, config).exec();

src/Publisher/Builder/template/css/style.css
The original style.css has been removed.
src/Publisher/Builder/template/*.html
In the following templates, wrap the
 with
:
(it is designed to make the table content easly scrollable on the axis x)

details.html
properties.html
source.html
summary.html
test.html

    ...

src/Publisher/Builder/template/image/
Some images has been added and some others replaced.
All the images are now in svg format.

list.svg and list-alt.svg: nav icon on mobile device.
down.svg and down-alt.svg: menu icon on mobile device.
find.svg and find-alt.svg: search icon
github.svg and github-alt.svg: github icon
esdoc-logo.svg and esdoc-logo-black.svg: esdoc logo :)

Removed images:

esdoc-logo-mini.png and esdoc-logo-mini-black.png
github.png
search.png

src/Publisher/Builder/template/layout.html
The markup has been largely modified to fit the responsive purpose.
In the  tag, we have added:
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/>
And at the bottom of the , we have added a script:

src/Publisher/Builder/template/script/inherited-summary.js
Replace tbody.style.display = 'block'; with tbody.style.display = 'table-row-group';, because it is targeting  a
 tag.
src/Publisher/Builder/template/script/manual.js
Replace '{ display: block; }\n'; with '{ display: list-item; }\n'; because  it is targeting a
 tag.
src/Publisher/Builder/template/script/menu.js
A simple script to handle the nav icon and the menu icon on mobile device.
src/Publisher/Builder/template/script/search.js
In the layout.html, i have changed the markup of the search:

    <input/>

Because of that, the variables are now:
var searchBox = document.querySelector('#esdoc-search');
var input = searchBox.querySelector('header input');
var resultWrapper = searchBox.querySelector('article');
var result = resultWrapper.firstChild;

And, i have replaced result.style.display with resultWrapper.style.display.
I have added some code to improve the behavior of the search box.
Now the box is closing when you have finished the search.

This looks good. When will the main project integrate this?

@avine Please create a specific plugin for responsive layout. Because, now, ESDoc v1.0 adopts plugin architecture. I would not merge this PR.

i will do my best to find some time and integrate my work into the new architecture.

I came across this PR when I was looking for esdoc themes.
So this is for everybody who is looking for the same thing.
Since I did not really find anything usable or complete and needed something pretty for my projects I went ahead and created a theme that can be loaded via esdoc-publish-html-plugin
See: esdoc-custom-theme
The theme is built with some nifty features like css-grid and css-variables.
This allows easy customisations via esdoc-inject-style-plugin
I just released a prerelease version (rc1)
Features:

Responsive
more classnames
css from scratch
system ui fonts with several fallbacks
works from file system
codemirror as highlighter
Highlighters javascript, jsx, typescript, scss, css, less, html, xml, json, shell
reader can switch colorschemes and toggle the dark/light mode for better readablity
colorschemes All from codemirror (reader choosable)
modes dark/light (reader choosable)

modes and colorschemes are saved in localstorage, so if you use the theme in the same github space the settings will persist.
In the end it's all about the people who read the documentation right? Let the reader decide about the appearance.
Screenshots:


Dataset in repository is different as compared to onnx file.

Onnx file is generated with AMI corpus dataset but the data set available in repository to run the application is different.
Due to which while running the application i am getting this error
return self._sess.run(output_names, input_feed, run_options)
onnxruntime.capi.onnxruntime_pybind11_state.InvalidArgument: [ONNXRuntimeError] : 2 : INVALID_ARGUMENT : Got invalid dimensions for input: 0 for the following indices
index: 2 Got: 121 Expected: 100
Please fix either the inputs or the model.
Actually the command in run.sh file is
"python3.7 diarization.py -c ../configs/vbdiar.yml
-l lists/list_spk.scp
--audio-dir wav/fisher-english-p1
--vad-dir vad/fisher-english-p1
--mode diarization
--out-emb-dir embeddings"
where as on github link is
"python diarization.py -c ../configs/vbdiar.yml -l lists/AMI_dev-eval.scp --audio-dir wav/AMI/IHM_SUM --vad-dir vad/AMI --out-emb-dir emb/AMI/IHM_SUM --in-rttm-dir rttms/AMI"

@arpit2020 Any luck fixing this error? I'm now having the same issue.

I got same error!

pip install onnxruntime==0.3.0, it was worked

@haha010508   with onnxruntime==0.3.0 i start getting new error
raise TypeError(message)
TypeError: Expected sequence or array-like, got <class 'NoneType'>

ONNX file has nothing with AMI, it is x-vector architecture trained on voxcelebs.
do you still have some issues? I think it looks like you are putting there some unexpected inputs, if you want me to replicate that, you will need to specify more information

I'm facing exactly the same issues as described above. I think the root case is in mismatch between external libraries versions. All dependencies are not binned to any version and even Python version was not provided. I have no clue what is the exact setup to get it working.
Python 3.8 result:
(base) root@57dc2f29d23d:/VBDiarization/examples# bash run.sh
/opt/conda/lib/python3.8/site-packages/sklearn/utils/deprecation.py:144: FutureWarning: The sklearn.cluster.k_means_ module is  deprecated in version 0.22 and will be removed in version 0.24. The corresponding classes / functions should instead be imported from sklearn.cluster. Anything that cannot be imported from sklearn.cluster is now part of the private API.
  warnings.warn(message, FutureWarning)
/opt/conda/lib/python3.8/site-packages/sklearn/externals/joblib/__init__.py:15: FutureWarning: sklearn.externals.joblib is deprecated in 0.21 and will be removed in 0.23. Please import this functionality directly from joblib, which can be installed with: pip install joblib. If this warning is raised when loading pickled models, you may need to re-serialize those models with scikit-learn 0.21+.
  warnings.warn(msg, category=FutureWarning)
2020-09-05 13:50:39,341 - __main__ - INFO - Running `diarization.py -c ../configs/vbdiar.yml -l lists/list_spk.scp --audio-dir wav/fisher-english-p1 --vad-dir vad/fisher-english-p1 --mode diarization --out-emb-dir embeddings`.
/opt/conda/lib/python3.8/site-packages/vbdiar/utils/utils.py:428: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details.
  return yaml.load(ymlfile)
2020-09-05 13:50:39,435 - __main__ - INFO - Processing file fe_03_00001-a.
2020-09-05 13:50:39,436 - vbdiar.kaldi.mfcc_features_extraction - INFO - Extracting MFCC features from `/VBDiarization/examples/wav/fisher-english-p1/fe_03_00001-a.wav`.
2020-09-05 13:50:39,490 - vbdiar.vad.vad - INFO - Loading VAD from file `/VBDiarization/examples/vad/fisher-english-p1/fe_03_00001-a.lab.gz`.
2020-09-05 13:50:39,495 - vbdiar.kaldi.onnx_xvector_extraction - INFO - Extracting x-vectors from 4 segments.
Traceback (most recent call last):
  File "diarization.py", line 263, in <module>
    process_files(
  File "diarization.py", line 78, in process_files
    ret = _process_files((fns, kwargs))
  File "diarization.py", line 48, in _process_files
    ret.append(process_file(file_name=fn, **kwargs))
  File "diarization.py", line 134, in process_file
    embedding_set = extract_embeddings(features_dict, embedding_extractor)
  File "/opt/conda/lib/python3.8/site-packages/vbdiar/embeddings/embedding.py", line 27, in extract_embeddings
    embeddings = embedding_extractor.features2embeddings(features_dict)
  File "/opt/conda/lib/python3.8/site-packages/vbdiar/kaldi/onnx_xvector_extraction.py", line 54, in features2embeddings
    xvec = self.sess.run(None, {self.input_name: data_dict[name].T[np.newaxis, :, :]})[0]
  File "/opt/conda/lib/python3.8/site-packages/onnxruntime/capi/session.py", line 142, in run
    return self._sess.run(output_names, input_feed, run_options)
onnxruntime.capi.onnxruntime_pybind11_state.InvalidArgument: [ONNXRuntimeError] : 2 : INVALID_ARGUMENT : Got invalid dimensions for input: 0 for the following indices
 index: 2 Got: 121 Expected: 100
 Please fix either the inputs or the model.

Downgraded to Python3.7 and onnxruntime==0.3.0:
(branch-env) root@57dc2f29d23d:/VBDiarization/examples# bash run.sh
/opt/conda/envs/branch-env/lib/python3.7/site-packages/sklearn/utils/deprecation.py:144: FutureWarning: The sklearn.cluster.k_means_ module is  deprecated in version 0.22 and will be removed in version 0.24. The corresponding classes / functions should instead be imported from sklearn.cluster. Anything that cannot be imported from sklearn.cluster is now part of the private API.
  warnings.warn(message, FutureWarning)
/opt/conda/envs/branch-env/lib/python3.7/site-packages/sklearn/externals/joblib/__init__.py:15: FutureWarning: sklearn.externals.joblib is deprecated in 0.21 and will be removed in 0.23. Please import this functionality directly from joblib, which can be installed with: pip install joblib. If this warning is raised when loading pickled models, you may need to re-serialize those models with scikit-learn 0.21+.
  warnings.warn(msg, category=FutureWarning)
2020-09-05 14:16:07,720 - __main__ - INFO - Running `diarization.py -c ../configs/vbdiar.yml -l lists/list_spk.scp --audio-dir wav/fisher-english-p1 --vad-dir vad/fisher-english-p1 --mode diarization --out-emb-dir embeddings`.
/opt/conda/envs/branch-env/lib/python3.7/site-packages/vbdiar/utils/utils.py:428: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details.
  return yaml.load(ymlfile)
2020-09-05 14:16:07,842 - __main__ - INFO - Processing file fe_03_00001-a.
2020-09-05 14:16:07,843 - vbdiar.kaldi.mfcc_features_extraction - INFO - Extracting MFCC features from `/VBDiarization/examples/wav/fisher-english-p1/fe_03_00001-a.wav`.
2020-09-05 14:16:07,915 - vbdiar.vad.vad - INFO - Loading VAD from file `/VBDiarization/examples/vad/fisher-english-p1/fe_03_00001-a.lab.gz`.
2020-09-05 14:16:07,920 - vbdiar.kaldi.onnx_xvector_extraction - INFO - Extracting x-vectors from 4 segments.
2020-09-05 14:16:07,998 - __main__ - INFO - Processing file fe_03_00001-b.
2020-09-05 14:16:07,999 - vbdiar.kaldi.mfcc_features_extraction - INFO - Extracting MFCC features from `/VBDiarization/examples/wav/fisher-english-p1/fe_03_00001-b.wav`.
2020-09-05 14:16:08,096 - vbdiar.vad.vad - INFO - Loading VAD from file `/VBDiarization/examples/vad/fisher-english-p1/fe_03_00001-b.lab.gz`.
2020-09-05 14:16:08,104 - vbdiar.kaldi.onnx_xvector_extraction - INFO - Extracting x-vectors from 4 segments.
2020-09-05 14:16:08,166 - vbdiar.scoring.diarization - INFO - Loading pickled evaluation embedding from `embeddings`.
2020-09-05 14:16:08,166 - vbdiar.scoring.diarization - INFO - Loading evaluation pickle file `fe_03_00001-a`.
2020-09-05 14:16:08,166 - vbdiar.scoring.diarization - INFO - Loading evaluation pickle file `fe_03_00001-b`.
2020-09-05 14:16:08,168 - vbdiar.scoring.diarization - INFO - Scoring using `PLDA`.
2020-09-05 14:16:08,168 - vbdiar.scoring.diarization - INFO - Clustering `fe_03_00001-a` using 3 long embeddings.
Traceback (most recent call last):
  File "diarization.py", line 294, in <module>
    result = diar.score_embeddings(args.min_window_size, args.max_num_speakers, args.mode)
  File "/opt/conda/envs/branch-env/lib/python3.7/site-packages/vbdiar/scoring/diarization.py", line 210, in score_embeddings
    centroids = self.run_clustering(num_speakers, embeddings_long)
  File "/opt/conda/envs/branch-env/lib/python3.7/site-packages/vbdiar/scoring/diarization.py", line 243, in run_clustering
    n_clusters=num_speakers, n_init=100, n_jobs=1).fit(embeddings)
  File "/opt/conda/envs/branch-env/lib/python3.7/site-packages/spherecluster/spherical_kmeans.py", line 363, in fit
    return_n_iter=True,
  File "/opt/conda/envs/branch-env/lib/python3.7/site-packages/spherecluster/spherical_kmeans.py", line 189, in spherical_k_means
    random_state=random_state,
  File "/opt/conda/envs/branch-env/lib/python3.7/site-packages/spherecluster/spherical_kmeans.py", line 39, in _spherical_kmeans_single_lloyd
    sample_weight = _check_sample_weight(X, sample_weight)
  File "/opt/conda/envs/branch-env/lib/python3.7/site-packages/sklearn/utils/validation.py", line 1215, in _check_sample_weight
    n_samples = _num_samples(X)
  File "/opt/conda/envs/branch-env/lib/python3.7/site-packages/sklearn/utils/validation.py", line 147, in _num_samples
    raise TypeError(message)
TypeError: Expected sequence or array-like, got <class 'NoneType'>

Full pip freeze output:
pip freeze
attrs==20.2.0
certifi==2020.6.20
cycler==0.10.0
importlib-metadata==1.7.0
iniconfig==1.0.1
joblib @ file:///tmp/build/80754af9/joblib_1594236160679/work
kaldiio==2.15.1
kiwisolver==1.2.0
matplotlib==3.3.1
mkl-fft==1.1.0
mkl-random==1.1.1
mkl-service==2.3.0
more-itertools==8.5.0
nose==1.3.7
numpy @ file:///tmp/build/80754af9/numpy_and_numpy_base_1596233707986/work
onnxruntime==0.3.0
packaging==20.4
Pillow==7.2.0
pluggy==0.13.1
py==1.9.0
pyclustering==<IP_ADDRESS>
pyparsing==2.4.7
pytest==6.0.1
python-dateutil==2.8.1
PyYAML==5.3.1
scikit-learn==0.22
scipy @ file:///tmp/build/80754af9/scipy_1597686620742/work
six==1.15.0
spherecluster==0.1.7
toml==0.10.1
vbdiar==0.3
zipp==3.1.0

@Jamiroquai88 could you provide pip freeze and Python version when it works for you? It will be really helpful.
Thanks!

could you please try python3.6?

The issue still persists (python3.6):
(py-36-env) root@8ec50741c73e:/app/VBDiarization/examples# python3 diarization.py -c ../configs/vbdiar.yml     -l lists/list_spk.scp     --audio-dir wav/fisher-english-p1      --vad-dir vad/fisher-english-p1      --mode diarization      --out-emb-dir embeddings
/opt/conda/envs/py-36-env/lib/python3.6/site-packages/sklearn/utils/deprecation.py:144: FutureWarning: The sklearn.cluster.k_means_ module is  deprecated in version 0.22 and will be removed in version 0.24. The corresponding classes / functions should instead be imported from sklearn.cluster. Anything that cannot be imported from sklearn.cluster is now part of the private API.
  warnings.warn(message, FutureWarning)
/opt/conda/envs/py-36-env/lib/python3.6/site-packages/sklearn/externals/joblib/__init__.py:15: FutureWarning: sklearn.externals.joblib is deprecated in 0.21 and will be removed in 0.23. Please import this functionality directly from joblib, which can be installed with: pip install joblib. If this warning is raised when loading pickled models, you may need to re-serialize those models with scikit-learn 0.21+.
  warnings.warn(msg, category=FutureWarning)
2020-09-06 12:04:14,183 - __main__ - INFO - Running `diarization.py -c ../configs/vbdiar.yml -l lists/list_spk.scp --audio-dir wav/fisher-english-p1 --vad-dir vad/fisher-english-p1 --mode diarization --out-emb-dir embeddings`.
/opt/conda/envs/py-36-env/lib/python3.6/site-packages/vbdiar/utils/utils.py:428: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details.
  return yaml.load(ymlfile)
2020-09-06 12:04:14,342 - __main__ - INFO - Processing file fe_03_00001-a.
2020-09-06 12:04:14,343 - vbdiar.kaldi.mfcc_features_extraction - INFO - Extracting MFCC features from `/app/VBDiarization/examples/wav/fisher-english-p1/fe_03_00001-a.wav`.
2020-09-06 12:04:14,478 - vbdiar.vad.vad - INFO - Loading VAD from file `/app/VBDiarization/examples/vad/fisher-english-p1/fe_03_00001-a.lab.gz`.
2020-09-06 12:04:14,488 - vbdiar.kaldi.onnx_xvector_extraction - INFO - Extracting x-vectors from 4 segments.
2020-09-06 12:04:14,563 - __main__ - INFO - Processing file fe_03_00001-b.
2020-09-06 12:04:14,564 - vbdiar.kaldi.mfcc_features_extraction - INFO - Extracting MFCC features from `/app/VBDiarization/examples/wav/fisher-english-p1/fe_03_00001-b.wav`.
2020-09-06 12:04:14,616 - vbdiar.vad.vad - INFO - Loading VAD from file `/app/VBDiarization/examples/vad/fisher-english-p1/fe_03_00001-b.lab.gz`.
2020-09-06 12:04:14,625 - vbdiar.kaldi.onnx_xvector_extraction - INFO - Extracting x-vectors from 4 segments.
2020-09-06 12:04:14,659 - vbdiar.scoring.diarization - INFO - Loading pickled evaluation embedding from `embeddings`.
2020-09-06 12:04:14,662 - vbdiar.scoring.diarization - INFO - Loading evaluation pickle file `fe_03_00001-a`.
2020-09-06 12:04:14,665 - vbdiar.scoring.diarization - INFO - Loading evaluation pickle file `fe_03_00001-b`.
2020-09-06 12:04:14,672 - vbdiar.scoring.diarization - INFO - Scoring using `PLDA`.
2020-09-06 12:04:14,672 - vbdiar.scoring.diarization - INFO - Clustering `fe_03_00001-a` using 3 long embeddings.
Traceback (most recent call last):
  File "diarization.py", line 294, in <module>
    result = diar.score_embeddings(args.min_window_size, args.max_num_speakers, args.mode)
  File "/opt/conda/envs/py-36-env/lib/python3.6/site-packages/vbdiar/scoring/diarization.py", line 210, in score_embeddings
    centroids = self.run_clustering(num_speakers, embeddings_long)
  File "/opt/conda/envs/py-36-env/lib/python3.6/site-packages/vbdiar/scoring/diarization.py", line 243, in run_clustering
    n_clusters=num_speakers, n_init=100, n_jobs=1).fit(embeddings)
  File "/opt/conda/envs/py-36-env/lib/python3.6/site-packages/spherecluster/spherical_kmeans.py", line 363, in fit
    return_n_iter=True,
  File "/opt/conda/envs/py-36-env/lib/python3.6/site-packages/spherecluster/spherical_kmeans.py", line 189, in spherical_k_means
    random_state=random_state,
  File "/opt/conda/envs/py-36-env/lib/python3.6/site-packages/spherecluster/spherical_kmeans.py", line 39, in _spherical_kmeans_single_lloyd
    sample_weight = _check_sample_weight(X, sample_weight)
  File "/opt/conda/envs/py-36-env/lib/python3.6/site-packages/sklearn/utils/validation.py", line 1215, in _check_sample_weight
    n_samples = _num_samples(X)
  File "/opt/conda/envs/py-36-env/lib/python3.6/site-packages/sklearn/utils/validation.py", line 147, in _num_samples
    raise TypeError(message)
TypeError: Expected sequence or array-like, got <class 'NoneType'>

Could you just provide output from both commands python --V and pip freeze? I think it will be the most valuable thing what we can do at this moment.

python -V

Python 3.6.8 :: Anaconda, Inc.

pip freeze

atomicwrites==1.3.0
attrs==19.1.0
certifi==2019.3.9
cycler==0.10.0
kaldiio==2.13.4
kiwisolver==1.0.1
matplotlib==3.0.3
more-itertools==7.0.0
nose==1.3.7
numpy==1.16.2
onnxruntime==0.3.0
Pillow==5.4.1
pluggy==0.9.0
py==1.8.0
pyclustering==0.8.2
pyparsing==2.3.1
pytest==4.3.1
python-dateutil==2.8.0
PyYAML==5.1
scikit-learn==0.20.3
scipy==1.2.1
six==1.12.0
spherecluster==0.1.7
-e git+https://github.com/Jamiroquai88/VBDiarization.git@506bc1b1e9f3c2825486e1274d0440b5348a33ff#egg=vbdiar

I would expect some differences in spherecluster library, try to use the version I have.

Closee due to inactivity.


Contacting for merging with my work

Hello @davidehringer,
I couldn't find your mail address so I'm contacting you with this issue.
I did the same work as your work or close to, you can see it here: https://github.com/Orange-OpenSource/cloudfoundry-s3-service-connector.
What I did:

Could find any s3 storage from service (no matter if it's p-riakcs or aws s3 or other things)
Auto-provisioning a jcloud ContextBuilder to use the s3 directly

Can I put my work here? Like this we could work together on it.

Hi @ArthurHlt ,
That sounds great.  Feel free to submit the necessary pull requests.
I'm going to get issue #2 started as well.

Sorry I didn't see your reply, well in fact it will be more a replacement than a merge because I didn't based my work on yours. I'm able to push my work directly in the rep, if you are interested take a look on what I did


Generic type on class prevents access of protected entries with explicitly typed 'this' function argument

TypeScript Version:  Tested on 3.2.4, 3.6.3, 3.8.0-dev.20191112
Search Terms: Property, protected, accessible, through, instance, generics, decorator
Code
class Accessor<T> {
    private _properties: { [key: string]: any } = {};

    constructor() { }

    protected _get(key: string): any {
        return this._properties[key];
    }

    protected _set(key: string, value: any): void {
        this._properties[key] = value;
    }
}

function property() {
    return function (target: any, key: string): void {
        const getter = function (this: Accessor<any>) { return this._get('something')}
    };
}

Expected behavior: Should allow access to protected function _get since this is typed as an instance of the class Accessor.
Actual behavior:
index.ts:17:69 - error TS2446: Property '_get' is protected and only accessible through an instance of class 'Accessor<any>'.

17         const getter = function (this: Accessor<any>) { return this._get('something')}
                                                                       ~~~~

Note: this does not occur without the generic type on Accessor. If it is just class Accessor with function (this: Accessor) there is no error on calling this._get('something').
Playground Link: Playground Link
Related Issues: #10302, Potentially a duplicate of #29132. This was supposedly fixed in #24645 however it is problematic with generics as mentioned above.

This is a better description of the problem, but it is indeed a duplicate of #24645.


ERROR: can't convert Hash into Integer

I have run:
$ inkscape_merge -f template.svg -d data.csv -o out.pdf
and got the error:
ERROR: can't convert Hash into Integer
I have use Ubuntu 11.10 AMD64. How I can solve or debug this error?

Sadly I can't reproduce this issue myself, so I have added verbosity to error messages.
Please update your gem to 0.1.2 and try again while providing the -v option. Please paste the result here.


codeium doesn't work in vim , breaks rightarrow move in insert mode

Having installed codeium to vim using manual installation at the end of README (via git clone) and authenticated i faced 3 issues :

the right arrow stopped working in ==INsert== mode (only Ctrl-o + L works)
no suggestions are being displayed while writing
vim greeting banner is suppressed (not really a serious issue  - but looks like a bug anyway)

The Right arrow thing will be fixed once #398 is merged


Remove redunant a11y option setters to default values

Now with https://github.com/phetsims/scenery/issues/748 we have default labels/description DOM elements, so often we can simplify code. Like:

new Node( {
 tagName: 'input'
 labelTagName: 'p',
 labelContent: 'This great label for input'
 descriptionTagName: 'p',
 descriptionContent: 'This is a description for the input',
 containerTagName: 'div'
});

would just be
new Node( {
  tagName: 'input'
  labelContent: 'This great label for input'
  descriptionContent: 'This is a description for the input',
 });

Marking for chip away, and tagging for a11 dev meeting.

We talked about this at an a11y dev meeting, so we are all aware. Thanks for bringing it up @zepumph. We will be revisiting  lots of a11y code  as we progress with issues like #753. Closing.


Fix terminator

Although olda and oldb seem to be assigned correctly, the lone comma could seem suspicious or incorrect.

The 'All checks have failed' is a Travis/build setup problem.


Update for CWP 2.0

Suggested changes:

Increase PHPUnit version to ^5.7
Include squizlabs/php_codesniffer at ^3.0
Remove symfony/yaml and phockito
Add lekoala/silverstripe-debugbar once it is compatible with the recipe (see https://github.com/lekoala/silverstripe-debugbar/issues/93)

Any issues here @tractorcow?

I would be careful with the dev recipe, as many projects end up including this in their deployed site. I'm not 100% sure about debugbar here.
As a quick check, see how many live CWP sites have both phpunit / phocito installed live and use that as an example. ;)

@robbieaverill maybe check that DebugBar has an OnlyIf check that only enables it if it's on dev mode, and is inert in live / test.

So DebugBar will still ruin a good install, and the other two development requirements (phpunit & phpcs) are already included on cwp-installer, so this is just going to be closed, as it's no longer a necessary thing.
As per discussions elsewhere: Having a development recipe such as https://github.com/silverstripe/cwp-recipe-basic-dev/blob/master/composer.json involves pulling in requirements as normal requirements (not require-dev), meaning a bunch of development only intended tools get included in a production targeted build. This is not ideal as these may have performance penalties, or complicated setup to ensure that something that exists isn't used in production (such as @tractorcow's comment above). The decision was made to appropriately use the require-dev section of cwp-installer and other recipes, as so.


[BUG] Assets missing for gh mode

Please give System Info
OS: macOS Big Sur
CPU: Apple M1
GPU: Integrated M1 GPU
Storage: Apple 256GB SSD
Please give your StepMania Info
StepMania Version: Outfox Alpha 4.9.8
Theme: All themes
Describe the problem
When trying to load the songs list in gh mode, it presents multiple errors related to missing noteskin assets.
Describe what should happen
Noteskins should be present and used to enter the game mode.
Logs and Additional context
The NoteSkin element "Down StrumNote" could not be found in any of the following directories:
Appearance/NoteSkins/gh/modern-2d/, Appearance/NoteSkins/common/common/
The NoteSkin element "_RES/_Up mat.txt" could not be found in any of the following directories:
Appearance/NoteSkins/gh/default/, Appearance/NoteSkins/common/common/

Not exactly the same issue, but I've also noticed that gh is the only mode which doesn't autogen files from other modes (when that feature is enabled).

Did you run the quarantine process for macOS? See https://outfox.wiki/user-guide/setup/install/ for details

Did you run the quarantine process for macOS? See https://outfox.wiki/user-guide/setup/install/ for details

When I try to do this, I get:
xattr: [Errno 9] Bad file descriptor: '/Applications/StepMania/StepMania.app/Contents/_CodeSignature'
xattr: [Errno 9] Bad file descriptor: '/Applications/StepMania/StepMania.app/Contents/MacOS'
xattr: [Errno 9] Bad file descriptor: '/Applications/StepMania/StepMania.app/Contents/Resources'
xattr: [Errno 9] Bad file descriptor: '/Applications/StepMania/StepMania.app/Contents/Libs'
xattr: [Errno 9] Bad file descriptor: '/Applications/StepMania/StepMania.app/Contents'
xattr: [Errno 9] Bad file descriptor: '/Applications/StepMania/StepMania.app'

This is fixed in 4.9.9, where you don't have to worry about the permissions.


Better defaults for LIBSSH2_SYS_USE_PKG_CONFIG

The current situation with LIBSSH2_SYS_USE_PKG_CONFIG appears to me like this:

It's off by default, causing libssh2-sys to use its shipped libssh
None of this is documented, and the code comments only refer to #88 which does not give a criterion for which versions of libssh are OK
Distributions regularly patch it out again (Debian, ) or set the environment variable (nixOS, Linux from scratch, FreeBSD).
The OpenSUSE patch gives an indication that libssh 1.6.0 is the libssh version with which things work out of the box.
At least on Debian sid, the default behavior results in linker errors like shown in https://github.com/alexcrichton/ssh2-rs/issues/171, without direct indication of what's wrong

I don't quite understand either the original problem that led to the workaround, nor the source of the error that I've seen, but the old workaround appears to me to cause a lot of trouble for a thing that may not yet be completely over yet but is a thing of the past for some users.
From my layman's assessment of the situation, a good way forward would be to test for pkg_config::probe_library("libssh2")?.version to be sufficiently new, and bypass any custom build configuration in that case, eventually removing the custom builds when older libssh2 versions fall out of support anyway. (OpenSUSE might appreciate a notification in that case, as they haves something bootstrap-related tied to LIBSSH2_SYS_USE_PKG_CONFIG, so they might rely on the shipped libssh, which won't be possible once the ? in the suggested check is active and doesn't fall back to the shipped one).

This just hit me in cargo-update (three bug reports in 3 hours; downstream issue: https://github.com/nabijaczleweli/cargo-update/issues/129) – seems to have struck Ubuntu installs the hardest, where having both libssh-dev and libssh2-1-dev installed together seems common (debootstrap-based repro).
Thank you @chrysn for pointing out the LIBSSH2_SYS_USE_PKG_CONFIG= hotfix in your comment!

IMHO the pkg-config check should be enabled by default and always be used (on any platform) as a first option if found, and only otherwise should fall back to alternative ways of finding the library.
All these custom and inconsistent solutions in various build.rs are not really scalable, we really need to find a common approach for finding external dependencies in cargo.

I also encountered this just now, the build breaks in a hard to debug way if LIBSSH2_SYS_USE_PKG_CONFIG=1 isn't set and the git binary isn't available in the build container (at least that's what I'm suspecting is the issue):
   Compiling cargo_metadata v0.14.1
   Compiling crates-index v0.18.1
   Compiling clap-cargo v0.7.0
   Compiling cargo-release v0.18.8 (/build/cargo-release/src/cargo-release-0.18.8)
error: linking with `cc` failed: exit status: 1
  |
  = note: "cc" "-m64" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/cargo_release-f28cc368774e4353.cargo_release.d1c187dc-cgu.0.rcgu.o" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/cargo_release-f28cc368774e4353.cargo_release.d1c187dc-cgu.1.rcgu.o" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/cargo_release-f28cc368774e4353.cargo_release.d1c187dc-cgu.10.rcgu.o" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/cargo_release-f28cc368774e4353.cargo_release.d1c187dc-cgu.11.rcgu.o" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/cargo_release-f28cc368774e4353.cargo_release.d1c187dc-cgu.12.rcgu.o" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/cargo_release-f28cc368774e4353.cargo_release.d1c187dc-cgu.13.rcgu.o" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/cargo_release-f28cc368774e4353.cargo_release.d1c187dc-cgu.14.rcgu.o" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/cargo_release-f28cc368774e4353.cargo_release.d1c187dc-cgu.15.rcgu.o" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/cargo_release-f28cc368774e4353.cargo_release.d1c187dc-cgu.2.rcgu.o" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/cargo_release-f28cc368774e4353.cargo_release.d1c187dc-cgu.3.rcgu.o" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/cargo_release-f28cc368774e4353.cargo_release.d1c187dc-cgu.4.rcgu.o" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/cargo_release-f28cc368774e4353.cargo_release.d1c187dc-cgu.5.rcgu.o" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/cargo_release-f28cc368774e4353.cargo_release.d1c187dc-cgu.6.rcgu.o" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/cargo_release-f28cc368774e4353.cargo_release.d1c187dc-cgu.7.rcgu.o" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/cargo_release-f28cc368774e4353.cargo_release.d1c187dc-cgu.8.rcgu.o" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/cargo_release-f28cc368774e4353.cargo_release.d1c187dc-cgu.9.rcgu.o" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/cargo_release-f28cc368774e4353.50wxn9wts6adha3y.rcgu.o" "-Wl,--as-needed" "-L" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps" "-L" "/usr/lib" "-L" "/build/cargo-release/src/cargo-release-0.18.8/target/release/build/libssh2-sys-55add3f2361c31fb/out/build" "-L" "/usr/lib64/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libenv_logger-b8ab5b5250223f7b.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libhumantime-d4bb2119c3f0c008.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libdifflib-6d19dc1df2fc5396.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libignore-0eec3c8aaeb597ac.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libcrossbeam_utils-03a81303ceb75f28.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libwalkdir-6e00687c5ac4fb7b.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libsame_file-ca1a781160cc7653.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libthread_local-06729eec850dd770.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libonce_cell-79def879bd4e1770.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libglobset-379ff36794f60cd7.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libfnv-387987eb7df5df72.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libdirs_next-6e93de3a9fced0d3.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libdirs_sys_next-75596181c8bf20b2.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libcrates_index-db377b95f25f3610.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libhex-12a50c9c018333f9.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libhome-77ade5de5ba0e1a2.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libsmartstring-18596f8f83bb8544.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libstatic_assertions-43b6ea6b993caccd.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libgit2-3ebfea5081b0b3a0.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libopenssl_probe-b8ef3078a0eef34c.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/liburl-0b57e88e7cb07fe4.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libidna-9db8751d32149d47.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libunicode_normalization-309563e70d0249da.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libtinyvec-354d347416aaf5dc.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libtinyvec_macros-bd03208701391dfa.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libunicode_bidi-13fd3dcdb0cf8a79.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libform_urlencoded-590c458b5d867b27.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libpercent_encoding-6108167baa43c81c.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libmatches-d1d4d38cf5354baf.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/liblibgit2_sys-b6016093e1201dde.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/liblibssh2_sys-0575de119d95d472.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libopenssl_sys-005b2da7a7bbf210.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/liblibz_sys-4fc349bb984d976b.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libclap_cargo-0102ef649064b87c.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libdoc_comment-75530d075a533bfd.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libmaplit-69b83f1870ecb31f.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/liblog-c2ae15854c565601.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libcfg_if-52ecbda564ed8af9.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libtermcolor-bef38c9f23d62042.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libchrono-e9d300eb7dd2d452.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libnum_integer-a627728515f51b36.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libnum_traits-7b9e7318980b7238.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libtime-d8f7aa24bfab2d99.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libtoml_edit-9ceafb92b5159e17.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libkstring-d38ecf2dac6eeb08.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libindexmap-1c56f63b3e3ff4f9.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libhashbrown-273b6cb350a546c2.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libitertools-1a395c122d0bac96.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libeither-ebcf1e1dd55eb96d.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libcombine-68f599274d7cc056.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libbytes-35d6470c0afbfe49.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libregex-43ec3ce74a44a2a9.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libaho_corasick-c9a871b1c6559eea.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libregex_syntax-7bd380d251549ae4.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libquick_error-ce1a71f934896eb2.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libcargo_metadata-781f5bc2e98134f6.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libserde_json-e318bc6b62b00504.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libryu-38e4233219df2d24.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libitoa-2c1b2f1c883c2531.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libcargo_platform-0ddeaddf47ed6ff3.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libsemver-7222cc64ff7ebda5.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libcamino-e7180eca6d8bd19a.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libserde-bf5d0beca14fdf4d.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libbstr-d72b45a839d5def6.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libregex_automata-3a7aede99c5a5306.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libmemchr-b4b9a1b3df4532b4.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libstructopt-c2d70192c84358db.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/liblazy_static-54b2ff7fcfd6ca08.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libclap-0831e208ab3e301a.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libvec_map-96b774ff19d73220.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libtextwrap-39303252dd534277.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libunicode_width-7b93035f4a7b4b45.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libstrsim-4948710186a0ab20.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libbitflags-c142d05b8494babc.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libatty-cd47a0ff54d3ab6e.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/liblibc-300198e5d7d012f8.rlib" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/libansi_term-33ba5895e578a2a2.rlib" "-Wl,--start-group" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-0103c94b60eee7ef.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-cab63b326bc16c1f.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libminiz_oxide-4208e76188ba61d8.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libadler-2e75732e0ab8b4ee.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libobject-baac0af25a7a1364.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libmemchr-5047c72c5e8f5321.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaddr2line-7a4f9a8f24e7f041.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgimli-5eb53d26e29b5da5.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd_detect-7515156b823dcf55.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-217cd9b21838f370.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-e1af85e688c038d2.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-40221ba3a1ba607c.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-60a2208e0f0c7767.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-88b1d284f2ee82a9.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-bd07da843a68b31b.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-cd99d35a54567058.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-16a8746e020550d6.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-a2ed33227ac14a20.rlib" "-Wl,--end-group" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-2b2f85bda2ad178a.rlib" "-Wl,-Bdynamic" "-lgit2" "-lssl" "-lcrypto" "-lz" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-znoexecstack" "-L" "/usr/lib64/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/build/cargo-release/src/cargo-release-0.18.8/target/release/deps/cargo_release-f28cc368774e4353" "-Wl,--gc-sections" "-pie" "-Wl,-zrelro" "-Wl,-znow" "-Wl,-O1" "-nodefaultlibs"
  = note: /usr/bin/ld: /build/cargo-release/src/cargo-release-0.18.8/target/release/deps/liblibssh2_sys-0575de119d95d472.rlib(libssh2_sys-0575de119d95d472.libssh2_sys.54637ff8-cgu.3.rcgu.o): undefined reference to symbol 'libssh2_init'
          /usr/bin/ld: /usr/lib/libssh2.so.1: error adding symbols: DSO missing from command line
          collect2: error: ld returned 1 exit status

  = help: some `extern` functions couldn't be found; some native libraries may need to be installed or have their path specified
  = note: use the `-l` flag to specify native libraries to link
  = note: use the `cargo:rustc-link-lib` directive to specify the native libraries to link with Cargo (see https://doc.rust-lang.org/cargo/reference/build-scripts.html#cargorustc-link-libkindname)

error: could not compile `cargo-release` due to previous error

For some reason -lssh isn't passed in that case (libssh2-sys 0.2.23).


[138] Issue #138 - July 11, 2019

To contribute to this issue, simply leave a comment here. Please also review our contributing guidelines.
The current draft for this issue in _drafts/. If you want to contribute directly, feel free to open a pull request.

As I'll be mentoring at the Swift Island conference, I'm looking for someone who'd like to (help) writing the next issue!

https://gist.github.com/vincent-pradeilles/875c9dd165542912f3803f8e01b3e15e
Sent with GitHawk

SE-0258: Property Wrappers (third review)
https://github.com/SwiftWeekly/swiftweekly.github.io/issues/465

https://twitter.com/TensorFlow/status/1144699273776369664
Sent with GitHawk

https://www.swiftbysundell.com/podcast/50

Removing the Comparable constraint for Numeric.Magnitude
https://forums.swift.org/t/removing-the-comparable-constraint-for-numeric-magnitude/26498

https://spec.fm/podcasts/swift-unwrapped/302918

https://github.com/apple/swift/pull/25884
Sent with GitHawk

We have reached time when modules names clash:
https://forums.swift.org/t/redisnio-name-brainstorm/26521
https://forums.swift.org/t/nioapns-naming-brainstorm/26520

This can be funny one 😁
https://forums.swift.org/t/nioapns-naming-brainstorm/26520/3?u=fassko

https://github.com/apple/swift/pull/25926

https://github.com/apple/swift/pull/25794#event-2452477264

https://twitter.com/tkremenek/status/1146186876128116736

For those of you interested in Swift’s SourceKit-LSP growing more core LSP functionality.  This is not related to a question of a Swift style guide.  Editors and LSP support formatting; this is about building some of the tech pieces to support formatting into SourceKit. https://twitter.com/akyrtzi/status/1146184708142723073

https://github.com/apple/swift/pull/25956
https://github.com/apple/swift/pull/25884

Swift on Server workgroup meeting 27th June, 2019 notes
https://forums.swift.org/t/june-27th-2019/26580
Sent with GitHawk

261 in review
Sent with GitHawk

https://twitter.com/slava_pestov/status/1146551829976801280
Sent with GitHawk

Atom syntax highlighting for Linux update
https://forums.swift.org/t/atomic-blonde-atom-syntax-highlighting-on-linux-update/26613
Sent with GitHawk

Integrating libSyntax into the compiler pipeline
https://forums.swift.org/t/integrating-libsyntax-into-the-compiler-pipeline/26605
Sent with GitHawk

https://twitter.com/olebegemann/status/1146471464918536193

Function builders will not be a public feature in Swift 5.1 — presumably due to the limited time for design and implementation. https://forums.swift.org/t/function-builders/25167/341

https://developer.apple.com/documentation/contacts/cnlabelcontactrelationeldercousinmotherssiblingsdaughterorfatherssistersdaughter
Longest variable name? :D
Sent with GitHawk

https://github.com/apple/swift/pull/25745
Sent with GitHawk

https://twitter.com/johannesweiss/status/1147179405325869056

Version 1.0.0-alpha.1 of AsyncHTTPClient tagged, a #NIO2 based HTTP client recently approved to 'sandbox' by the #SSWG 🙌. Thanks @artemredkin and contributors for the hard work! #OSS #HTTP #SwiftNIO
https://github.com/swift-server/async-http-client

https://github.com/swiftbrew/Swiftbrew
Sent with GitHawk

The branch is looking good — let me know if there's anything I can help with!

258 accepted

https://github.com/apple/swift-format


Remove unnecessary password field from add account via plaid step

Details
Removes an unnecessary password field from the 'Add Bank Account' via Plaid step.
Fixed Issues

$ https://github.com/Expensify/Expensify/issues/175424
Tests

Confirm that the password step is no longer seen

Create a New Workspace via the global menu, or navigate to an existing workspace
Tap 'Get Started' to launch the add bank account flow
Tap 'Log in to your bank' which launches the Plaid modal
Enter 'user_good' & 'pass_good'
You should NOT see a password input field
The button should be enabled after selecting an account from the dropdown
You should be able to progress through the remaining modal steps (use these details if on dev env)

QA Steps

Run above test
Tested On

[x] Web
[ ] Mobile Web
[x] Desktop
[x] iOS
[ ] Android

Screenshots

Web

Mobile Web

Desktop

iOS

Android

@luacmartins I'm still struggling to verify Android/mobile Web due to this (SSL?) issue. I'll keep trying to resolve this, but for now please test on Android & mWeb to ensure we have covered all platforms, thank you!

Nope! That's exactly my problem. I've been trying to resolve this here, with no luck so far. I think we should ask for testing from someone who is able to verify Android / mWeb to keep this moving forward.

I'm able to reproduce this issue on my Galaxy S8. Something is breaking the Plaid flow for sure.
I guess the next step would be to see if this is broken on main or introduced in this PR (doesn't look like it would be the latter but unsure).
It looks like there's no problem with getting the token to launch the modal. But seems like we get caught in an infinite loop or something and then the app crashes.

There's an issue here in the Plaid repository: https://github.com/plaid/react-native-plaid-link-sdk/issues/398
And the suggestion seems to be that we are opening the Plaid link multiple times. Looking at the code it doesn't seem like this is the case, but maybe we are not cleaning things up properly when the Plaid flow is exited.
FWIW when I tested this here's what I saw:

The Plaid modal did not open at all and I got a white screen
Close the modal
Try again
💥

FWIW this issue also exists on main I'm not sure if the issue exists in the latest play store release so I'll try there next.

Broken on play store release 😢

Oh wait, it is actually NOT broken... it just takes... forever to load.

Ok, Going to create a new issue for this and make it a deploy blocker.
I don't see any reason why this PR should be blocked though.

I will retest this once https://github.com/Expensify/App/issues/4959 is merged.

I will retest this once #4959 is merged.

Unsure if this will be fixed very soon 😬  - probably we should just merge this since the Plaid modal is already affected in staging and release builds.

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to production by @roryabraham in version: 1.0.92-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Want to do a simple filter on username, can't get it to work

Minecraft Version
1.12.x
Mod Loader
Forge
Mod Loader Version
<IP_ADDRESS>60
Mod Version
5.1.25
Describe the Issue
I can't get the filtering to work.
What i want to do is filter certain players into their own tab (let's call it the Ignore-tab for now). I am trying to understand regex but i have no idea.
So if i want to filter a player called Sungod into the tab called Ignore - what Regex code should i be using?
And if i want to add a player called Moongod too, how should i go about that?
Thanks for the help!
Logs
No response
Do you use any performance-enhancing mods (e.g. OptiFine) or custom server distributions (e.g. SpongeForge)?
No response

To have Sungod only appear on the Ignore Tab, you would use the pattern: <(Sungod)> (.+)
To also add Moongod, you would add it using an or symbol (|): <(Sungod|Moongod)> (.+)
Make sure to set the view as "Exclusive" to prevent the message from also showing up on the main tab.

First of all sorry for labeling it bug when it clearly isn't. I didn't have a better option.
Second: thank you very much - this helps a lot!


Compile error

I get the following when trying to compile the gpioviewer example on Arduino IDE 2.3.2:
In file included from C:\Users\Steven\AppData\Local\Temp.arduinoIDE-unsaved2024412-25320-k4kcgk.f6mv\gpioviewer\gpioviewer.ino:8:
e:\Users\Steven\Documents\GitHub\Arduino_IDE2\Arduino_IDE2_Sketches\libraries\GPIOViewer\src/gpio_viewer.h: In member function 'int GPIOViewer::readGPIO(int, uint32_t*, pinTypes*)':
e:\Users\Steven\Documents\GitHub\Arduino_IDE2\Arduino_IDE2_Sketches\libraries\GPIOViewer\src/gpio_viewer.h:500:33: error: 'analogGetChannel' was not declared in this scope; did you mean 'analogChannel'?
500 |         uint8_t analogChannel = analogGetChannel(gpioNum);
|                                 ^~~~~~~~~~~~~~~~
|                                 analogChannel
exit status 1
Compilation error: exit status 1

See here : https://github.com/thelastoutpostworkshop/gpio_viewer/issues/116#issuecomment-2096921380

That fixed it, many thanks.  Really useful app.


Logo is not a link

It seems the p-logo anchor element is not used properly. But cant figure out what is going on
I think the background image should be set on the p-logo a not p-logo. e.g:
#p-logo {
position: fixed;
top: 0;
border-bottom: 1px solid @hw-orange-border;
height: @header-height;

// Original icon was here
// Consider removing image with JS so we could keep the link?
a {
	.background-image('images/hitchwiki-logo.png');
	background-position: center top;
	background-repeat: no-repeat;
	height: @header-height;
}

}
But then the scrolling behaviour is strange. One also needs to set
.mw-scrolled {
  #p-logo a{
    background-size: ......;
  }
}

You're right. Background should be set to <a> and <a> needs text-indent:-9999px; so that we won't have text floating on top of it.

You're right. Background should be set to <a> and <a> needs text-indent:-9999px; so that we won't have text floating on top of it.

Tried to fix this. Turns out the Vector template includes HW L


question: Does this perform "incremental search" AKA "search as you type"?

I tried looking through the docs and animated gifs but I couldn't tell. Thanks for building this great framework.

@dede5 Rummage.Phoenix currently doesn't support this feature. I think this could be accomplished using channels or even simple javascript. My intention with Rummage.Phoenix was to support basic templates/views with Rummage.Ecto and lay a pattern for people to follow.
I hope this answers your question! :smile:


Ensure the thread keys are always allocated in the same order

Fixes: #5899
This is a possible memory leak and a race condition in base_inited
The crypto base module needs to be initialized always first.

This PR is for master only, I will need to back-port this one and #5863 for 1.1.0 as it looks like.

The travis failures seem to be caused by the PR.

The travis failures seem to be caused by the PR.

I dont understand what is going on with the travis.
I dont even see the sources being compiled, and if there are for instance some warnings.
When test starts just every test fails without printing any useful information....

Hi @richsalz @kroeckx
The build failures were caused by a recursive call from
ossl_init_load_crypto_nodelete => ERR_set_mark => ERR_get_state =>
=> OPENSSL_init_crypto(OPENSSL_INIT_LOAD_CRYPTO_STRINGS,NULL) =>
=> deadlock at RUN_ONCE(&load_crypto_nodelete,ossl_init_load_crypto_nodelete)
I had no better idea than to invent a new internal API to put the current state of the
error module on a "shelve" and restore the state after this critical section completes.
I consider Rich's confirmation void, because of amount of code changes.
Please re-confirm if you agree with the way I want to resolve this.
Thanks,
Bernd.

Have you considered a global table, or set of variables, for all openssl per-thread keys and initializing that near the front of startup?  I think breaking the modularity might be a better trade-off for this.

Actually I have found it difficult to come up with any solution.
The combination of the error module with the multi-threaded initialization
code is highly complex, and when I removed the hack at the
"BIG FAT WARNING" comment, the hell broke loose.

Reconfirm

Okay, updated to review comments.
Please re-confirm.

I'm going to merge today in the afternoon.  I'll assume @richsalz's  approval is still valid.

Merged to master.  A back-port to 1.1.0 is on the way.
Thanks!


support ASAN odr-violation outputs

Addresses #373

This PR includes a unit test.
It also passed integration tests.


Caching

Do not constantly show the network error toast when in fact it has loaded cache on the screen.
Part of https://github.com/johan12345/EVMap/pull/164

Thanks!
I rebased your branch on top of the current caching branch to remove those unnecessary merge commits, and reformatted the code (Ctrl+Alt+L).


When to release the code of Part-based learning?

Hi, thanks for your inspirational work on foot modeling!  Is there any plan to release the part-based learning?

Hi, thanks for your interest in the FIND model!
I'll aim to release the part based element of the model sometime later this month.


Missing the answer column in test.csv of star QA data.

Thank you for your great work! The answer column is missing in test.csv of star QA data. Could you please have a check?

Hi,  the test answers are withheld by the authors; you need to submit your prediction file to the evaluation server to obtain the results on test set. Please refer to the paper and homepage of STAR.


When enabling Diffie-Hellman KeyExchangeAlgorithm, should also set ServerMinKeyBitLength to avoid logjam

Per https://weakdh.org/ the ServerMinKeyBitLength on reg path HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\KeyExchangeAlgorithms\Diffie-Hellman should be set to 2048 (0x800) when enabling Diffie-Hellman.
I discovered this workaround by this post https://developercommunity.visualstudio.com/t/azure-devops-agent-installed-on-windows-server-201/1651426#T-N1651596 . Adding this reg dword, the check script returns success and testssl.sh --logjam passes.
This mitigation is helpful for agents deployed to web servers where tighter security is required.

@matt961 this makes perfect sense! Implemented.


Use command to run rbenv rehash

In the event that eval "$(rbenv init -)" is called from a function named
rbenv (which I do to get rbenv to load lazily in my shell), evaluating the
phrase rbenv rehash will cause the outer function to run again (causing an
infinite loop).
This change makes it clear you want the command named rbenv and not a function
which may exist in the environment.
I ran this locally and ran the tests to ensure this change doesn't break anything.
An example of where this is useful would be if you wanted to lazy load the rbenv process on its first invocation (like I do). You can do so with a function like this in your .zshrc:
    rbenv() {
        eval "$( command rbenv init - )"
        rbenv "$@"
    }

Otherwise running rbenv init - takes anywhere from 90ms to 120ms in the shell startup process. Without this pull request, the function above calls itself in an infinite loop.

Maybe instead of adding command, we could move rbenv rehash to run before the rbenv() function gets defined within rbenv init output?


Use ESP8266 with 4 Channel Relay without PCF8574

Hi Deb
This is exactly what I was looking for. Thanks . I want to use the code with 4 channel relay without the PCF7574. I was using ESP8266 with 4 channel relay using Blynk app but now want to hook it up using mqtt on my new home assistant server. I understand your reason using PCF8574 as few ESP pins trigger high or low. With default behavior, as soon as I power on ESP, it used to turn on all relays. I did few search and found some code and found below code with helped me achieve what I was expecting:
4 Channel relay is connected on D0, D1, D2 and D3
`void setup()
{
// Debug console
Serial.begin(115200);
pinMode(16, OUTPUT); //D0 is GPIO 16
pinMode(5, OUTPUT); //D1 is GPIO 5
pinMode(4, OUTPUT); //D2 is GPIO 4
pinMode(0, OUTPUT); //D3 is GPIO 0
digitalWrite(16, HIGH); //Set GPIO 16 LOW
digitalWrite(5, HIGH); // Set GPIO 5 LOW
digitalWrite(4, HIGH); // Set GPIO 4 LOW
digitalWrite(0, HIGH); // Set GPIO 0 LOW
I have put MAX DEVICES to 4 in your code with works fine but need help removing PCF7574.
`
I am not good with coding so I can request you to make help me modify the code to use it with 4 channel relay without using PCF8574?
Thank you.

Not so straightforward, I will have to invest more time to do this. I would use struct to achieve this refer: https://github.com/debsahu/CeilingPotLights No promises on timeline on doing this as I'm very busy with my day job for past few weeks.

Ok check out https://github.com/debsahu/PCF8574_8Relay/tree/direct_4Relay


Support for secrets

Right now there is no way I can specify secrets from docker-compose which then maps to kubernetes. This would be great thing to have.
For using this feature I had to manually create secret object and then add it to container spec in deployment.

Docker does not yet have a concept of secrets, does it ? I think they are working on it , but it is not there yet and not in compose AFAIK.

So one instance that would be supported now would be in use of environmental variables.  the docker compose for my project i just converted sets stuff like the username and pass for a database as env variables. ill convert them over to using secrets

@jamstar yeah that needs to be done manually!

Secrets are able to be defined in Docker Compose Version 3: https://docs.docker.com/compose/compose-file/#secrets-configuration-reference and thus we can map this to Kubernetes much easier than expected.

Since Docker Compose now has secrets, the best way (from my research) would be to use secrets as well as the file option of import. Unfortunately using external will not work as secrets stored within swarm are encrypted Raft variables (no idea what they mean by that in the documentation).
See: https://stackoverflow.com/questions/42139605/how-do-you-manage-secret-values-with-docker-compose-v3-1 for some context.

FYI, secrets is supported in docker-compose version 3.1

I just had a look at things and it appears as though the mapping is doable, with the exception of uid and gid when projecting the secret into /run/secrets/ - this may be something to raise as an in Kubernetes if it hasn't been already.
The rest of this post is really just a summary of the documentation and links to things that I think are relevant for whoever takes this on.
Creating secrets
compose documentation
The documentation shows the 3 ways secrets can be specified:
secrets:
  my_first_secret:
    file: "./secret_data"
  my_second_secret:
    external: true
  my_third_secret:
    external:
      name: "name_externally"

I'm not sure we can use the values of external secrets (I think what @cdrage was saying), even if we could I think maintaining the separation in environments that comes with the externals is beneficial.
In Kubernetes I think this would revolve around Secret objects.
Using secrets
compose documentation
When a secret is shared with a container it is mapped into it, by default to /run/secrets/$name. The following are configurable:

source - the name of the secret in Docker
target - the name to use within /run/secrets/
uid - the UID to use for the secret in the container
gid - the GID to use for the secret in the container
mode - the file mode to use for the secret in the container

In Kubernetes I think this would revolve around SecretProjections to project the secrets into /run/secrets/. example

I see this has been marked as stale now. It would be really nice to get this into kompose (along with support for docker 'configs'!), as these are perhaps the trickiest bits to understand and get right for a k8s noob.
Not sure what the etiquette is with the bot and /remove-lifecycle stale - is this mean just for repo owners, or anyone who is interested in the feature?

This is a big feature, i can start working on it !

The file secret seems pretty straightforward.  The external secret  data seems can be retrieved from the docker api ( docker inspect ). But seems we don't connect to docker when do kompose convert, this is tricky.  I think I can start trying to add the file part first.

+1

/remove-lifecycle stale

/remove-lifecycle stale

/remove-lifecycle stale

/remove-lifecycle stale

How is this going? What's the status? Is there an ETA?

/remove-lifecycle stale

/remove-lifecycle stale

Really need secret support to make Kompose usage seamless 🚀

@pgordon9  Good news, the PR has been merged, you can try this feature in the master branch


Fix of constant usage of CameraVideoCapturer in Rtc

Task

JIRA

Description

Turning on/off the CameraVideoCapturer depending on usage of
VideoPreview and child -> parent streaming.
Refactor of ChildMonitorFragment and its view models communication
Add ServerViewModel tests

          2 Warnings

:warning:
app/src/main/kotlin/co/netguru/baby/monitor/client/feature/communication/webrtc/WebRtcManager.kt#L41 - This expression contains a magic number. Consider defining it to a well named constant.

:warning:
app/src/main/kotlin/co/netguru/baby/monitor/client/feature/communication/webrtc/WebRtcService.kt#L27 - Prefer using ‘if’ for binary conditions instead of ‘when’.

          1 Message

:book:
:link: BM-555

JaCoCO Code Coverage 4.93% :white_check_mark:

Class
Covered
Meta
Status

co/netguru/baby/monitor/client/feature/communication/webrtc/WebRtcService
0%
0%
:white_check_mark:

co/netguru/baby/monitor/client/feature/communication/webrtc/WebRtcManager
0%
0%
:white_check_mark:

co/netguru/baby/monitor/client/common/SchedulersProvider
0%
0%
:white_check_mark:

co/netguru/baby/monitor/client/data/server/CameraState
0%
0%
:white_check_mark:

co/netguru/baby/monitor/client/feature/settings/ServerSettingsFragment
0%
0%
:white_check_mark:

co/netguru/baby/monitor/client/application/ApplicationModule
0%
0%
:white_check_mark:

co/netguru/baby/monitor/client/feature/server/ChildMonitorViewModel
0%
0%
:white_check_mark:

co/netguru/baby/monitor/client/feature/server/ServerViewModel
64%
0%
:white_check_mark:

co/netguru/baby/monitor/client/feature/server/ChildMonitorFragment
0%
0%
:white_check_mark:

APK file size

size

22.1MB

Number of method references

Dex file
count

classes2.dex
22565

classes.dex
22527

  Generated by :no_entry_sign: Danger


Fix issue #338

Coverage remained the same at 100.0% when pulling fce1ad4ac8848177f24de48d3a38a0e41431b3cc on issue_338 into c4e4d46d306cadee76bc88c39f279863c0a648ec on 3.x.


some problems with reproduction experiment

I was recently finetuning  FLICKR 30K on CN_CLIP as described in the paper , but the results are quite different from the indicators on the paper.
Could you provide the fine-tuning model file of Flickr30k in the paper? I would like to find my own problem through the parameter distribution,thanks!

Hi, could you please specify the model size (base, large, large-336 or huge) you would like us to share? Meanwhile, we have provided all the fine-tuning hyper-params in the appendix of our paper. You could also check the difference between you configuration and us.


docs(ce-2.0/go) Go language support

@Kong/team-docs the Netlify preview didn't show up. Is this expected?

@Kong/team-docs the Netlify preview didn't show up. Is this expected?

I think it is not showing up because the travis tests failed


How to get Qbit and Aria Selection webserver working Alpine and MLTB?

• Step 1
First of all go to bot/__init__.py and edit the following 👇

try:
    LTD = getConfig('LTD')
    if len(LTD) == 0:
        raise KeyError
except:
    log_warning('Localtunnel Domain not provided!')
    LTD = None

try:
    QBIT_LTD = getConfig('QBIT_LTD')
    if len(QBIT_LTD) == 0:
        raise KeyError
except:
    log_warning('Qbittorrent Localtunnel Domain not provided!')
    QBIT_LTD = None

Popen(f"gunicorn web.wserver:app --bind <IP_ADDRESS>:{SERVER_PORT} --timeout 0", shell=True)
Popen(f"lt --subdomain {LTD} --port {SERVER_PORT}" , shell=True)
# Popen(f"lt --subdomain {QBIT_LTD} --port 8090" , shell=True)
srun(["qbittorrent-nox", "-d", "--profile=."])
if not ospath.exists('.netrc'):
    srun(["touch", ".netrc"])
srun(["cp", ".netrc", "/root/.netrc"])
srun(["chmod", "600", ".netrc"])
srun(["chmod", "+x", "aria.sh"])
srun("./aria.sh", shell=True)
sleep(0.5)

extras :
You can uncomment the qbittorrent localtunnel line for qbit web Ui expose .. don't add credentials on qbit gui the bot will crash

• Step 2
Now Go to bot/__main__.py and
edit the following

    srun(["npx", "kill-port", "80"])
    srun(["npx", "kill-port", "8090"])
    srun(["killall", "node"])

---

Working. Sometimes its slow to respond. Also in config.env, those vars should be under "".

Working. Sometimes its slow to respond. Also in config.env, those vars should be under "".

Not a problem thank you


Segmentation fault on sysdig + libs 0.7.0-rc3 when doing a capture

Describe the bug
Building sysdig (dev, b26c9522) with libs 0.7.0-rc3 and trying to write a capture I systematically have a segfault.
How to reproduce it

Build sysdig with -DFALCOSECURITY_LIBS_SOURCE_DIR=<libs path>
Build the scap driver and insmod it
Run (with privileges) sysdig -w foo.scap.

Expected behaviour
Writing a capture runs smooth.
Screenshots
(gdb) r -w foo.scap
Thread 1 "sysdig" received signal SIGSEGV, Segmentation fault.
scap_kmod_get_threadlist (engine=..., procinfo_p=0x555557019628, lasterr=0x555557014e44 "") at /home/angelo/Projects/falcosecurity/libs/userspace/libscap/engine/kmod/scap_kmod.c:737
737                             if(scap_alloc_proclist_info(procinfo_p, (*procinfo_p)->n_entries + 256, kmod_engine->m_lasterr) == false)
(gdb) p *procinfo_p
$1 = (struct ppm_proclist_info *) 0x950

Environment

sysdig b26c9522
libs 0.7.0-rc3

Additional context
I debugged just a bit, and handle->m_driver_procinfo is fine until ioctl PPM_IOCTL_GET_PROCLIST:
Thread 1 "sysdig" hit Breakpoint 8, scap_kmod_get_threadlist (engine=..., procinfo_p=0x555557019628, lasterr=0x555557014e44 "") at /home/angelo/Projects/falcosecurity/libs/userspace/libscap/engine/kmod/scap_kmod.c:731
731             struct kmod_engine* kmod_engine = engine.m_handle;
(gdb) p *procinfo_p
$29 = (struct ppm_proclist_info *) 0x555559d91a40       <=== HERE IS FINE
(gdb) n
732             int ioctlres = ioctl(kmod_engine->m_dev_set.m_devs[0].m_fd, PPM_IOCTL_GET_PROCLIST, procinfo_p);
(gdb) n
733             if(ioctlres)
(gdb) p *procinfo_p
$30 = (struct ppm_proclist_info *) 0x98e                <=== HERE IS BROKEN

If I revert libs at 075da069, i.e. right before falcosecurity/libs/pull/374, it works fine.

I tested with @LucaGuerra branch gvisor-with-libs-drivers, and it works fine.
This proves libs is ok, and  it's a sysdig build issue.


set EXPLICIT_OBJECTIDS header

fixes https://github.com/edgedb/edgedb-go/issues/124

WIP until there is a nightly build that includes https://github.com/edgedb/edgedb/pull/2443


PhantomJS perma-fail

Runs for about 6 minutes and then fails. I've disabled it in .travis.yml, but we should fix the bug and re-enable it.

long fixed


rust bindings: use repr(C) for container types

This PR enforces C memory layout for the container types.
The container types hold an evmc_vm (a struct with function pointers for execute, set_options, ...) and a vm instance (in case of evmrs this is EvmRs). Because the evmc interface expects a pointer to an evmc_vm, the pointer to the container is cast to an evmc_vm pointer.
However, this only works if the evmc_vm field is the first field in the container struct. With Rust memory layout this is not guaranteed. In fact, if EvmRs has an alignment > 8 (and therefore larger than that of evmc_vm), it will immediately crash.
By enforcing C memory layout, it is guaranteed that the first field is always the evmc_vm.

@LuisPH3 could you please have a look at this?


Weird SystemExit (1)

Reference https://app.glitchtip.com/k-t-corp/issues/535615

Probably related https://github.com/benoitc/gunicorn/issues/1801

Didn't seem to happen a lot recently, temporarily closing


Fix URL parser to fit new hanime URL scheme

The parser still throws an error I don't understand but it downloads files just fine again like this

Okay just realized that apparently the site uses both URL schemes, le me fix that

fixed

Thanks for the pr, but I don't think two different regex are necessary. It would be the best to use one regex that matches the url with either the "videos/hentai" or the "hentai-videos" path.

I agree and tried.
I'm pretty much clueless about both Go and regex though so I couldn't get it to work like that without for whatever reason only producing 404 errors with whatever URL I tried to download so I ended up with this hack job.
For reference, I tried it like this:
re := regexp.MustCompile(`^https://hanime.tv/(videos/hentai|hentai-videos)/(.*)$`)

According to https://regexr.com/ and a friend I asked to check it should have worked ¯_(ツ)_/¯.

We want the different path alternatives to be a non-capturing group, try that:
re := regexp.MustCompile(`^https://hanime\.tv/(?:videos/hentai|hentai-videos)/(.*)$`)

Regex updated with 9b661e4. Pull request will be closed.


SolidJS: allow event handlers in slides of a looping Swiper

Same as #5860 but in sliders with loops.
Sadly, before this (and before #5860), clicking buttons in looping slides was already broken.

Not really, with this fix loop mode just doesn't work at all, as it is just shuffle slides rather than creating cloned ones which are necessary for loop mode to work properly

Ok, I think that buttons won't work in looping slides so


Resolving Can't load ./.rnd into RNG

Fixing openssl client errors seen per
https://github.com/openssl/openssl/issues/7754

Thanks @BjoernT . We made a reference of the same in the doc
https://github.com/mmumshad/kubernetes-the-hard-way/blob/master/docs/04-certificate-authority.md#certificate-authority


Features search by gene_symbol and name

Accompanies https://github.com/ga4gh/schemas/pull/639
The sequence annotation API stands to be improved by allowing matching on two new fields: gene_symbol and name. This PR adds tests that demonstrate this functionality by adding two new tests: checkFeaturesSearchByName and checkFeaturesSearchByGeneSymbol.
Also removes optional arguments from queries that were not needed to satisfy a test. @macieksmuga @kozbo
This PR depends on https://github.com/ga4gh/schemas/pull/639 and must be modified to point at the proper commit hash before merge.

+1 module above mentioned tweaks


Dropwizard 2.0 scala support

Hi,
It appears that the dropwizard-scala library that our company relies on, is not going to be upgraded to support 2.0.
So this means that we will not be able to use Dropwizard with Scala going forward, unless we maintain that library ourselves or create a new one.
Is there any plan from the Dropwizard team to offer native Scala support? Is Dropwizard+Scala a popular combination?
Thanks!

Is there any plan from the Dropwizard team to offer native Scala support?

We're currently not planning to add dedicated support for Scala to the Dropwizard core modules.


df.profile_report() fails

Describe the bug
df.profile_report() fails immediately after installation.
I really wish you could get this working soon, because I could really use it for my work.  I've shown it to people and they really like it, but they have problems getting it to work according to the instructions.
The package is installed properly, because I can generate a report in Jupyter by importing just the constructor "ProfileReport(df)", but the syntax df.profile_report() does not work.
I get an error message:
AttributeError                            Traceback (most recent call last)
 in
----> 1 df.profile_report()
C:\Anaconda3\envs\quantecon\lib\site-packages\pandas\core\generic.py in getattr(self, name)
5065             if self._info_axis._can_hold_identifiers_and_holds_name(name):
5066                 return self[name]
-> 5067             return object.getattribute(self, name)
5068
5069     def setattr(self, name, value):
AttributeError: 'DataFrame' object has no attribute 'profile_report'
#####################################################
What else I've tried that does work is as follows:
from pandas_profiling import ProfileReport
...steps to create dataframe df
ProfileReport(df)
using the constructor ProfileReport(df) by itself at least gets me a report in my Jupyter Notebook.   Because of this I know the package is installed and working.  However, the object.method() route to get the report doesn't work.  But many other methods rely on the object.method() syntax.
import numpy as np
import pandas as pd
import pandas_profiling

from pandas_profiling import ProfileReport

# The dataframe is the same as the tutorial example given by the author.
# No dataframes work with the df.profile_report() method.

df = pd.DataFrame(
    np.random.rand(100, 5),
    columns=['a', 'b', 'c', 'd', 'e']
)

ProfileReport(df)  # this works, but `df.profile_report()` does not work.

Since the pandas error is referring to "generic.py" for Pandas Core DataFrame, and the error is "no attribute 'profile_report', perhaps it is the decorator that wraps the dataframe object and modifies it to give it the extra attribute method of .profile_report() ??  That is my guess.  I don't know what's causing the error, since it works when I "peek under the covers" and use the report constructor directly.  I just cannot use the other methods that rely on the object.method() syntax.
Version information:
Python 3.7.1
pandas==0.24.2
The results of pip freeze are :
absl-py==0.7.1
alabaster==0.7.12
altair==3.1.0
asn1crypto==0.24.0
astor==0.7.1
astroid==2.2.5
attrs==19.1.0
Babel==2.6.0
backcall==0.1.0
basemap==1.2.0
beautifulsoup4==4.7.1
bleach==3.1.0
bokeh==1.1.0
certifi==2019.6.16
cffi==1.12.3
chardet==3.0.4
Click==7.0
cloudpickle==0.8.1
colorama==0.4.1
conda==4.7.5
conda-build==3.18.6
conda-package-handling==1.3.10
cryptography==2.6.1
cycler==0.10.0
cytoolz==<IP_ADDRESS>
dask==1.2.0
dask-searchcv==0.2.0
decorator==4.4.0
defusedxml==0.5.0
descartes==1.1.0
distributed==1.27.1
docutils==0.14
entrypoints==0.3
fast-histogram==0.7
filelock==3.0.10
gast==0.2.2
gitdb2==2.0.5
GitPython==2.1.10
glob2==0.7
grpcio==1.16.1
h5py==2.9.0
heapdict==1.0.0
idna==2.8
imagesize==1.1.0
invoke==1.2.0
ipykernel==5.1.0
ipython==7.4.0
ipython-genutils==0.2.0
ipywidgets==7.4.2
isort==4.3.17
jedi==0.13.3
Jinja2==2.10.1
jsonschema==3.0.1
jupyter-client==5.2.4
jupyter-console==6.0.0
jupyter-contrib-core==0.3.3
jupyter-core==4.4.0
jupyter-highlight-selected-word==0.2.0
jupyter-latex-envs==1.4.4
jupyterlab==0.35.4
jupyterlab-server==0.2.0
Keras==2.2.4
Keras-Applications==1.0.7
Keras-Preprocessing==1.0.9
keyring==18.0.0
kiwisolver==1.0.1
lazy-object-proxy==1.3.1
libarchive-c==2.8
llvmlite==0.28.0
locket==0.2.0
lxml==4.3.3
Markdown==3.1
MarkupSafe==1.1.1
matplotlib==3.1.0
mccabe==0.6.1
menuinst==1.4.16
mistune==0.8.4
mkl-fft==1.0.10
mkl-random==1.0.2
mock==2.0.0
mpl-scatter-density==0.5
mpld3==0.3
mpmath==1.1.0
msgpack==0.6.1
nbconvert==5.4.1
nbformat==4.4.0
notebook==5.7.8
numba==0.43.1
numpy==1.16.3
numpydoc==0.9.0
olefile==0.46
packaging==19.0
pandas==0.24.2
pandas-profiling==1.4.1
pandocfilters==1.4.2
parso==0.4.0
partd==0.3.10
patsy==0.5.1
pbr==5.1.3
pickleshare==0.7.5
Pillow==6.0.0
pkginfo==<IP_ADDRESS>
plotly==3.10.0
prometheus-client==0.6.0
prompt-toolkit==2.0.9
protobuf==3.6.1
psutil==5.6.1
pycodestyle==2.5.0
pycosat==0.6.3
pycparser==2.19
pyflakes==2.1.1
Pygments==2.3.1
pylint==2.3.1
pyOpenSSL==19.0.0
pyparsing==2.4.0
pyproj==1.9.6
pyreadline==2.1
pyrsistent==0.14.11
pyshp==2.0.1
PySocks==1.6.8
python-dateutil==2.8.0
pytz==2019.1
pywin32==223
pywinpty==0.5.5
PyYAML==5.1.1
pyzmq==18.0.0
QtAwesome==0.5.7
qtconsole==4.4.3
QtPy==1.7.0
quantecon==0.4.3
requests==2.21.0
retrying==1.3.3
rope==0.14.0
ruamel-yaml==0.15.71
scikit-learn==0.20.3
scipy==1.2.1
seaborn==0.9.0
Send2Trash==1.5.0
setuptools-git==1.2
six==1.12.0
smmap2==2.0.5
snowballstemmer==1.2.1
sortedcontainers==2.1.0
soupsieve==1.9.2
Sphinx==2.0.1
sphinxcontrib-applehelp==1.0.1
sphinxcontrib-devhelp==1.0.1
sphinxcontrib-htmlhelp==1.0.2
sphinxcontrib-jsmath==1.0.1
sphinxcontrib-qthelp==1.0.2
sphinxcontrib-serializinghtml==1.1.3
spyder==3.3.4
spyder-kernels==0.4.4
statsmodels==0.9.0
sympy==1.4
tblib==1.3.2
tensorboard==1.13.1
tensorflow==1.13.1
tensorflow-estimator==1.13.0
termcolor==1.1.0
terminado==0.8.2
testpath==0.4.2
toolz==0.9.0
tornado==6.0.2
tqdm==4.32.2
traitlets==4.3.2
urllib3==1.24.2
vega==2.3.2
vega-datasets==0.7.0
vega3==0.13.0
wcwidth==0.1.7
webencodings==0.5.1
Werkzeug==0.15.2
widgetsnbextension==3.4.2
win-inet-pton==1.1.0
wincertstore==0.2
wrapt==1.11.1
zict==0.1.4
Additional context
Add any other context about the problem here.

You're using:
pandas-profiling==1.4.1
Have you tried updating to the most recent version (2.0.3)?
I can't reproduce this bug with python3.7, pandas 0.24 and pandas-profiling 2.0.3. So maybe run updates and try again.

Note: as per #193 using conda to install will default to the <2.0.0 version. Maybe try installing using just pip instead and see what you get.


Errors seen in log after upgrade to core-2021.8.6

Describe the bug
compatibility with core-2021.8.6 may need work
To Reproduce
upgrade to core-2021.8.6
Expected behavior
no errors
Log
2021-08-13 18:00:00 ERROR (SyncWorker_7) [custom_components.octopusagile.sensor] Error updating sensor.octopus_agile_previous_rate, check that octopusagile.all_rates populated
2021-08-13 18:00:00 ERROR (MainThread) [homeassistant.helpers.entity] Update for sensor.octopus_agile_next_rate fails
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 446, in async_update_ha_state
await self.async_device_update()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 654, in async_device_update
raise exc
File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "/config/custom_components/octopusagile/sensor.py", line 228, in update
next_rate = round(next_rate, 2)
TypeError: type NoneType doesn't define round method
2021-08-13 18:00:00 ERROR (MainThread) [homeassistant.helpers.entity] Update for sensor.octopus_agile_current_rate fails
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 446, in async_update_ha_state
await self.async_device_update()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 654, in async_device_update
raise exc
File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "/config/custom_components/octopusagile/sensor.py", line 160, in update
current_rate = round(current_rate, 2)
TypeError: type NoneType doesn't define round method
System (please complete the following information):
System Health

version
core-2021.8.6

installation_type
Home Assistant Container

dev
false

hassio
false

docker
true

user
root

virtualenv
false

python_version
3.9.6

os_name
Linux

os_version
5.10.52-v7+

arch
armv7l

timezone
Europe/London

Home Assistant Community Store

GitHub API
ok

Github API Calls Remaining
4993

Installed Version
1.13.2

Stage
running

Available Repositories
843

Installed Repositories
4

Home Assistant Cloud

logged_in
false

can_reach_cert_server
ok

can_reach_cloud_auth
ok

can_reach_cloud
ok

Lovelace

dashboards
2

resources
0

views
1

mode
storage

Additional context

I have started noticing the same after updating to 2021.9.2 yesterday. I also see this in the logs as well as the previous snippet
Source: custom_components/octopusagile/__init__.py:413
Integration: octopusagile (documentation, issues)
First occurred: 13:30:10 (3 occurrences)
Last logged: 17:30:24
Expecting value: line 1 column 1 (char 0)``` and note that the `octopusagile.all_rates` state doesn't look to have updated properly since I upgraded.
I was previously using OctopusAgile `v0.1.1` and have since tried updating to `v0.1.2-beta.3` which does not seem to have had any noticeable effect on this issue.


Use an actual bracket to handle test setup/cleanup

At the moment, cleanup is handled by simply running the cleanup after the test sub-tree:
https://github.com/purescript-spec/purescript-spec/blob/f0661f0f750205ccc7dcb78ee3d6ffc845c2e2b2/src/Test/Spec/Runner.purs#L132
This isn't great, as it doesn't get run in situations where the Aff was cancelled. We can fix this by using Aff's bracket.
IMO this would also lead to a simpler implementation of the ~afterAll~ beforeAll hook if a full bracket is encoded in the tree data type

Mind exploring this idea in a PR?

:sweat_smile: Then again, I don't have write-access to this repo, so I couldn't merge such a PR anyway.

Smallest change would be to do:
- loop (mapWithIndex indexer xs) <* lift (cleanup unit)
+ bracket
+   (pure unit)
+   cleanup
+   (const $ mapWithIndex indexer xs)

But that wouldn't include simplifying beforeAll. I had a proof of concept for work, but I don't think it's in any usable state now (and based off an old version of purescript-spec).
I may take a look again when I have time

I can merge a PR @JordanMartinez if one is presented.


People are claiming this repo installs malware...

https://nakedsecurity.sophos.com/2021/03/19/serious-security-mac-supply-chain-backdoor-takes-aim-at-xcode-devs/

They are referencing a fork of this project.


The CLI should return a JSON output rather than objects

Problem statement
Currently, when we hit an endpoint using the tool, complex types are displayed as maps or lists (based on what is returned), and when they are printed it is not parsable. I
For example, if the server returns {"foo": "bar"} the following output is displayed
map[foo:bar]
It is possible to add a command-line flag to change the outputs to custom formats such as JSON and/or YAML. The default output should ideally be tabular, but we can live with the current one if we have the JSON/YAML option in place.

CLI should print json by default.

The issue was with the older release. I built from master and the issue is
no longer there. Thanks
On Fri, 1 Oct, 2021, 9:42 pm youyuanwu, @.***> wrote:

CLI should print json by default.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/go-swagger/go-swagger/issues/2640#issuecomment-932364955,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALVAXJ6TF27EKCYPTESQSITUEXMYNANCNFSM5FEOEX7A
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.


[Request] Auto Nightmode

Would love to have the Design switch to modes when certain conditions are met. Could be done via time or light-sensor.
For now I just use darkmode because I don't want to burn my eyes at night.

Related: https://github.com/sduduzog/slim-launcher/issues/64

Just follow device theme. The device theme can change according to sunrise, sunset and manual chosen timestamps.

@jkuester This issue can be closed, no?


Waiving a Component

Hi,
Thanks for your library.
I am trying to use wove on an Angular2 component and it breaks the component behaviour:
import { LoggerAspect } from './../../aspects/logger.aspect'

@Component({
  selector: 'app-login',
  templateUrl: 'base/dist/app/directives/login/login.component.html',
  // styleUrls: ['app/directives/login/login.component.css'],
  pipes: [TranslatePipe],
  providers: [TwAPIService, HTTP_PROVIDERS],
  directives: [FORM_DIRECTIVES, MD_BUTTON_DIRECTIVES]
})
@Wove(LoggerAspect)
/**
 * Login component. Provides a login form with controlled and
 * emits a User ($event userLogged) on successful login.
 */
export class LoginComponent implements OnInit

LoggerAspect contains the @beforeMethod  annotation and some console.log statements in the same fashion as the demo.
This transpiles just fine but, upon execution, I got EXCEPTION: Error: Uncaught (in promise): TypeError: Cannot read property 'bind' of undefined.
In your opinion, is it doable at all ?
Thanks.

It works well for me:
import { Component, OnInit } from '@angular/core';
import { REACTIVE_FORM_DIRECTIVES } from '@angular/forms';

import { NameListService } from '../shared/index';

import { Wove, beforeMethod } from 'aspect.js';

class Aspect {
  @beforeMethod({
    classNamePattern: /^HomeComponent$/,
    methodNamePattern: /^addName$/
  })
  before() {
    console.log('Before method...');
  }
}

@Wove()
@Component({
  moduleId: module.id,
  selector: 'sd-home',
  templateUrl: 'home.component.html',
  styleUrls: ['home.component.css'],
  directives: [REACTIVE_FORM_DIRECTIVES]
})
export class HomeComponent implements OnInit {

  newName: string = '';
  errorMessage: string;
  names: any[] = [];

  constructor(public nameListService: NameListService) {}

  ngOnInit() {
    this.getNames();
  }

  getNames() {
    this.nameListService.get()
                     .subscribe(
                       names => this.names = names,
                       error =>  this.errorMessage = <any>error
                       );
  }

  addName(): boolean {
    // TODO: implement nameListService.post
    this.names.push(this.newName);
    this.newName = '';
    return false;
  }

}

You don't have to pass the aspect to @Wove. The idea of this decorator is to set some metadata which needs to be passed to the aspect as parameter. For instance the Angular bindings of aspect.js pass the ElementInjector itself:
import {Router, Injectable} from '@angular/router';
import {beforeMethod, Metadata} from 'aspect.js';
import {Wove} from 'aspect.js-angular';

class SampleAspect {
  @beforeMethod({
    classNamePattern: /^Bar$/,
    methodNamePattern: /baz$/
  })
  logger(meta: Metadata) {
    meta.woveMetadata.injector.get(Router).navigate(['Home']);
  }
}

@Wove()
@Injectable()
class class Bar {
  baz() {
    // method content
  }
}

For details, take a look at the integration with angular2-seed here. The actual woven component can be found here.

@mgechev, Thanks for your quick reply.
I managed to make it work using your examples.


Any plan to obfuscate with nice Hashids

Hashids is a library to obfuscate ids in short and nice format. It would be great if obfuscate_id could support more encode/decode algorithms like this and even some others.

That looks like a very cool library.  Yes, I am very open to supporting more algorithms like this.
Currently, I am very busy with other projects, but would love to get pull requests.

Here's my pull request that uses HashID's. Happy to hear any suggestions, but the build passes all tests. https://github.com/namick/obfuscate_id/pull/40

Hi @fengye87 and @swaathi , since this repository is kind deprecated, I created a gem to do that: https://github.com/wbotelhos/idy
I would love your feedback.
Thanks @namick for the great work until here.


Update view description

Removed the optional field INDEX

Codecov Report

Merging #37 (192d62d) into ug (3ded4a1) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##                 ug      #37   +/-   ##
=========================================
  Coverage     72.15%   72.15%
  Complexity      399      399
=========================================
  Files            70       70
  Lines          1232     1232
  Branches        125      125
=========================================
  Hits            889      889
  Misses          311      311
  Partials         32       32

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 3ded4a1...192d62d. Read the comment docs.