ModalFactory activate does not show dialog anymore

I'm using angular-base-apps v. 1.2 which I downloaded via bower. (I just switched from Foundation for Apps). When I use ModalFactory to create a dialog, and then call its activate() method, the dialog does not appear.
The modal-overlay div element is being appended to the body properly, but it does not get the 'is-active' class, so it remains hidden.
I suspect the issue was introduced in this commit but am not certain as I have not been able to track down the bug:
https://github.com/base-apps/angular-base-apps/commit/09eff9fc2677911160398f75ffc3e8f400062ae9
Happy to help with a fix if possible, but someone who knows the code can probably do a better job of this.

@cjh79 which exact version are you using?  The 1.2.7-* versions are prereleases for 2.0 and you would need to follow the migration steps before using those versions.  Try out version 1.2.6 as a drop-in replacement and let me know if you still have this issue.

I'm using 1.2.6.

@cjh79 do you have a code snippet?  I've been using 1.2.6 in production and haven't seen any such issues with modals.

@cjh79 modals in the 1.2.6 docs use activate and are working: http://base-apps.github.io/angular-base-apps/v1.2.6/#!/modal
I'll take a look at your code snippet to see if I can figure anything out.

@soumak77 I see the issue with this html file. The modal-overlay element is appended to , but does not get the is-active class and has display: none.
`

`

ModalFactory does not have a template property.  It only has a templateUrl property.

FWIW, template seems to work, nevertheless, I just did that to simplify the code. I see the same issue when using templateUrl.

@cjh79 could you possibly try wrapping model.activate() in a $timeout?
Also, you said this example works with Foundation for Apps?

Wrapping it in a $timeout did not help. Yes, it was working fine in Foundation for Apps.

I found the problem.  The templates were mistakenly updated to use the base module (see https://cdn.jsdelivr.net/angular-base-apps/1.2.6/base-apps-templates.js):
angular.module('base').run(['$templateCache', function($templateCache) {

Try replacing foundation with base and foundation.modal with base.modal.

The root cause of this issue has been captured by https://github.com/base-apps/angular-base-apps/issues/67

That fixed it. Excellent, thanks!


New json templates for testing events per lumi functionality

These two templates are using the same workflow from production, which was originally using 8_0_26 release, but I expect it to work without any issues. The idea is:
a) we run TaskChain_GENSIM.json and publish all the GEN-SIM-RAW data to DBS.
b) then we use TaskChain_EpL.json, with some modifications, to read the previously created dataset and make sure it works fine.
@ticoann I have just injected them into testbed, to check whether it works and whether the settings are Ok. Please go ahead and run them in your VM

Thanks Alan


List current properties in a PropertySet

There doesn't seem to be a way to list the current properties and their types in a CompositionPropertySet. Please consider adding a Keys collection or something similar since it's difficult to know what properties you get from external sources like scrollviews

@aL3891 Thanks for the feedback!

Thanks for the feedback and closing this issue. It's captured in the Feedback milestone.


[BUG] RectangleLabels fail after rotating the image

version: 0.9.1.post1
browser: chrome 88.0.4324.146
OS: MacOS Mojave 10.14.5
RectangleLabels cannot draw rectangle on right position after rotating the image.

I'm experiencing this problem too.

Here is a problem while using rotationControl
<View>
  <Image name="image" value="$image" rotateControl="true"/>
  <RectangleLabels name="label" toName="image">
    <Label value="Airplane" background="green"/>
    <Label value="Car" background="blue"/>
  </RectangleLabels>
</View>

Draw a rectangle

After rotation

hey @xuchenCN
what LS version you're using? we fixed this issue in 1.0.2 recently

hey @xuchenCN
what LS version you're using? we fixed this issue in 1.0.2 recently

Hi @nicholasrq
I'm using label-studio-frontend v1.0.1 (Latest)

Thansk @nicholasrq
Build LSF from master branch, image and bbox are rotating expected.
But the image zoom without height limition it seems a bit weird.

This bug was fixed in release/1.1.0. Feel free to reopen if you have this problem again.


Loaded models (dae or obj) are not selectable in 3D view

Works fine if you use the scene graph to select.

Yes this is something I just realised. Right now it depends on the order in which the components are applied to the entity, for example if you have <a-entity geometry sound> will works but  <a-entity sound geometry> it won't, as the first child of the object3D will be a mesh on the first case and positionalAudio on the second.
I'll take a look to fix it asap.

Oh interesting.   I thought it might be because loaded models don't intersect with raycasts properly?

👍 Awesome!


Customizable math classes

An effort to revive #715.
With the approach in the original PR, I did not manage to get the Large class to work properly, because the glyph class was checked before the custom class was set. To fix this, I decided to add a class property to the style chain, so it can be temporarily pushed to the style chain while the fragment of the body is laid out.
Some things to discuss

I didn't know where to put the cast! for the math classes, so I just added them to the bottom of eval/cast.rs
The class getter and setter methods in the MathFragment struct seem a bit ugly because a class is now found in two different locations
There is a difference between class("normal", #square(...)) and just #square(...): with the explicit "normal" class, spaces around the square are not being considered:
(top: no class set, bottom: "normal" class set)

While this is what I wanted, it may seem confusing for some, as "normal" is the default class. Maybe there is a better way to get rid of the spacing.

Thank you!
Regarding the points you raised:

The cast! location is fine
The getter and setter may not be ideal, but so is pretty much all of the math code. I'm fine with merging features now. Then, we'll have all the requirements in place for a refactoring later.
The difference might be a bit confusing, but it does make sense this way.


Weird glitch on hitchhiker and early polymer layouts.

For some reason, on hitchhiker and early polymer (2019 and 2020) layouts, certain elements, specifically the likes and subscribe button, go to the edge of the screen. With early hitchhiker themes, the like and dislike buttons and the like ratio bar go to the edge of the screen (pictured below). With layouts without individual like and dislike buttons, the subscribe button goes to the edge (too lazy to switch themes and take a screenshot lmao). This happens no matter if custom player size is on or off, and it might be a problem with loading in the page with theater mode on, though I don't think it is.

The screenshot was taken with the 2014 theme on.

This is an issue that more and more people are having, but I still can't reproduce it. It seems to be due to a YouTube experiment, but I don't have the slightest idea which one. Your only option for now is to use a different account or use YouTube signed out (because the experiment might only affect the account your currently using).


Nullsafe version 3

Various improvements to the library:

Fixing comparison logic for some NonLinear types
Adding more system solving algorithms (like SOR, Jacobi, Gauss-Seidel...)
Documentation improvements
Readme enhancements

Codecov Report

Merging #6 (5df1a91) into master (d8486d3) will decrease coverage by 0.42%.
The diff coverage is 100.00%.

@@             Coverage Diff             @@
##            master       #6      +/-   ##
===========================================
- Coverage   100.00%   99.57%   -0.43%
===========================================
  Files           34       35       +1
  Lines         1291     1397     +106
===========================================
+ Hits          1291     1391     +100
- Misses           0        6       +6

Impacted Files
Coverage Δ

lib/src/algebraic/types/laguerre.dart
100.00% <ø> (ø)

lib/src/algebraic/utils/sylvester_matrix.dart
100.00% <ø> (ø)

lib/src/nonlinear/nonlinear.dart
80.64% <ø> (-19.36%)
:arrow_down:

lib/src/algebraic/types/constant.dart
100.00% <100.00%> (ø)

lib/src/algebraic/types/cubic.dart
100.00% <100.00%> (ø)

lib/src/algebraic/types/linear.dart
100.00% <100.00%> (ø)

lib/src/algebraic/types/quadratic.dart
100.00% <100.00%> (ø)

lib/src/algebraic/types/quartic.dart
100.00% <100.00%> (ø)

lib/src/nonlinear/types/bisection.dart
100.00% <100.00%> (ø)

lib/src/nonlinear/types/brent.dart
100.00% <100.00%> (ø)

... and 8 more

Continue to review full report at Codecov.

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


doc: improve installation instructions

HTH

That shouldn't be necessary as the Hugo tool chain will download necessary components on the fly when they are missing.


Add spectro-spatial decomposition SSD example

This is a first example demonstrating spatial filtering with SSD (Nikulin et al 2011, NIMG), which essentially enhances the oscillatory signal of interest by removing background signal from surrounding frequencies.
The example is autonomous as is, but if we converge on ideas, I'd extend it to have a Transformer API like SPoC or CSP.
cc @agramfort @DavidSabbagh @pierreablin @wmvanvliet @britta-wstnr

Some outputs:

See you can make it embrace the same API as XDawn. Basically have a
transform for arrays and apply for instances. YOu would get filters and
patterns using LinearModel
https://mne.tools/stable/generated/mne.decoding.LinearModel.html#mne.decoding.LinearModel

Another option would be an ICA like api. Allowing for exploring components and handling artifact removal, whitening etc.
You just use a different model to get filters.
This makes me also think that I should explore the alternative whitened eigenvalue problem to compute SSD. It should help us handling magnetometers and gradiometers.

On 17 Nov 2019, at 16:36, Alexandre Gramfort<EMAIL_ADDRESS>wrote:
See you can make it embrace the same API as XDawn. Basically have a
transform for arrays and apply for instances. YOu would get filters and
patterns using LinearModel
https://mne.tools/stable/generated/mne.decoding.LinearModel.html#mne.decoding.LinearModel

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

yes ICA API is similar. fit, transform & apply methods with some plot
methods

@agramfort pushed first API draft, let me know what you think.
Todo:

[ ] switch to whitenining implementation for multiple channels
[ ] handle EEG vs MEG.
[ ] consolidate API
[ ] tests

so far so good https://16861-1301584-gh.circle-artifacts.com/0/dev/auto_examples/decoding/plot_ssd_spatial_filters.html#sphx-glr-auto-examples-decoding-plot-ssd-spatial-filters-py !

@britta-wstnr @wmvanvliet thank you for your review. Any thoughts on the proposed API?

+1 for having a .transform() which takes an array and an .apply() that takes a Raw/Epochs/Evoked.

@wmvanvliet thoughts on apply semantics? It could be used to reconstruct sensor signal from selected components, be it the most or the least oscillatory. We also should have an apply_cov to filter cov matrices.

Exactly. It could just act as a filter: put an Epochs object in, get an Epochs object out that was filtered for maximum oscillatory activity. Put a Covariance object in, get a Covariance object out (no need for an explicit  apply_cov)

Hi, if I understand it correctly this is the same GED that is used internally in common spatial pattern and that also has multiple other applications for EEG/MEG (see for example Mike X Cohen's publications on GED).
In that case I think it would be good to first have the basic object that does GED on two covariance matrices (and handles patterns, .apply() etc.) and only then use it for more specialized cases like the one here or CSP.

Thank you @vpeterson for your review, I shall get back to you during this week. I have marked this PR as a potential candidate for our next release, hoping that we can merge a first version within the next 3 weeks.

Have any time for this @dengemann ? If not let's push to 0.22

Yes I will get to it this week.

On 9 Sep 2020, at 16:25, Eric Larson<EMAIL_ADDRESS>wrote:

Have any time for this @dengemann ? If not let's push to 0.22
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

@vpeterson I rebased the pull request to allow us to continue working on this. Shall we give it another try to let you do a PR into this one? We can work through the necessary steps. It would be nice to give credit to your work through commits. I'd also have few discussion points regarding the code you have shared with me.

Other than this PR things are looking on track for release tomorrow

Quick update!
Together with @vpeterson we have revamped and extended the proposed API:

SSD uses now an array (2d, 3d) interface to be more compatible with sklearn
This way it is possible to fit SSD based on Raw or Epochs
With the same input data both lead to similar results.

Open points:

[ ] See how we can get improve preprocessing of inputs. I am thinking of removing bad segments as we do in ICA, passing the info to the constructor to inform the covariance code about channel details and adding sensitivity for annotations
[ ] Check out how filtering with epochs behaves as we use short epochs ... I feel there is some room for improvement and I feel the mne.Epochs.filter was doing a better job
[ ] Add a decoding example to show SSD in action

@vpeterson I have granted you push access to my repository. You can now directly commit into this branch [with great power comes great responsibility ... or so].

@vpeterson can you run the current example on your machine and see a) if it is fast and b) you get roughly the same results when using Epochs/Raw [figure 1 VS 4]?

Exactly. It could just act as a filter: put an Epochs object in, get an Epochs object out that was filtered for maximum oscillatory activity. Put a Covariance object in, get a Covariance object out (no need for an explicit apply_cov)

@vpeterson @wmvanvliet the way the code evolved in the meantime .transform just pushes the data into the SSD subspace, .apply reconstructs the instance data from the SSD subspace. Would that make sense as an API? I think it could fly.

@vpeterson can you run the current example on your machine and see a) if it is fast and b) you get roughly the same results when using Epochs/Raw [figure 1 VS 4]?

@dengemann I have run it on my computer (personal laptop) and the elapsed time was just 8.10. The epoched and non-epoched results are the same as your. My only concern now is that by making the downsampling the psd plot looks more "noisy". see figure attached. Although by making no downsampling at all the elapsed time grows to 25.76, it is still feasible and that plot looks much "beautiful" (whatever does means, he!)

@vpeterson can you run the current example on your machine and see a) if it is fast and b) you get roughly the same results when using Epochs/Raw [figure 1 VS 4]?

@dengemann I have run it on my computer (personal laptop) and the elapsed time was just 8.10. The epoched and non-epoched results are the same as your. My only concern now is that by making the downsampling the psd plot looks more "noisy". see figure attached. Although by making no downsampling at all the elapsed time grows to 25.76, it is still feasible and that plot looks much "beautiful" (whatever does means, he!)

Thank you for checking in! Yes, this is true. But you have to consider that this example will run on some virtual server each time the documentation is built by the CI tests, e.g., when a pull request is done. It makes a difference speed-wise. Then having a fast example is better for debugging, making demos and, importantly, for newcomers who may play with MNE on their laptops of varying computing power. So as long as it's correct, faster is better than beautiful.

Exactly. It could just act as a filter: put an Epochs object in, get an Epochs object out that was filtered for maximum oscillatory activity. Put a Covariance object in, get a Covariance object out (no need for an explicit apply_cov)

@vpeterson @wmvanvliet the way the code evolved in the meantime .transform just pushes the data into the SSD subspace, .apply reconstructs the instance data from the SSD subspace. Would that make sense as an API? I think it could fly.

+1 vote from here!

@vpeterson let me know what you think about the latest changes:

use info as mandatory keyword to the constructor
simplify some of the code
add some checking based on info

@vpeterson I just cleaned up the sorting stuff and proposed a cleaner method name. Also I changed the default argument to false. What do you think?

And here we go @vpeterson -- SSD moved to module after latest fixes. Now that's your opportunity to become friends with unit tests in MNE 😸

After working unit tests I'll be happy and we can invite the others to review the PR and work towards merge.

@vpeterson forgot committing SSD module, fixed.

@vpeterson It would be important at this stage that we use tests for guiding the development.
Let’s try to define good tests and change code as is necessary to satisfy the tests.
Tests are our friends ! :)

@vpeterson It would be important at this stage that we use tests for guiding the development.
Let’s try to define good tests and change code as is necessary to satisfy the tests.
Tests are our friends ! :)

update: just saw that you started editing the tests by copying the CSP. We should be careful, there is probably no 1:1 correspondence.
I'd probably start by testing that the code runs with different inputs and the outputs are as expected.
Then we should see that we can reconstruct the signal back and forth.
That will probably be already the most important part.
Finally we may think of a more sophisticated test, e.g. testing that the first component has more power in the specified band than the last component.
Does that make sense?

@vpeterson It would be important at this stage that we use tests for guiding the development.
Let’s try to define good tests and change code as is necessary to satisfy the tests.
Tests are our friends ! :)

update: just saw that you started editing the tests by copying the CSP. We should be careful, there is probably no 1:1 correspondence.
I'd probably start by testing that the code runs with different inputs and the outputs are as expected.
Then we should see that we can reconstruct the signal back and forth.
That will probably be already the most important part.
Finally we may think of a more sophisticated test, e.g. testing that the first component has more power in the specified band than the last component.
Does that make sense?

Hi @dengemann  !Yes sorry for the rush in the push, but it is nothing actually.
I have create a function to run a toy example in data where we now exactly we are the most correlated sources, where the peaks is located and so on. Dismiss that version, it was just my starting point. Sorry for the mess

Ok no problem -- perfect! Let me know once you need input.

Ok no problem -- perfect! Let me know once you need input.

@dengemann I think the test is ready. At least a basic testing. I've changed the SSD code accordingly whenever I found some bugs during the testing.
By using an artificial data, the test.ssd.py proves that ssd is able to:

Detect the freq. pick
Estimate the number of true components
Estimate the mixing matrix with an error similar to what is reported in Nikulin et. al paper
Estimate filters and patters with the correct array shape
Be integrated within a sklearn pipeline
Extract similar patterns when epoched and raw data is used

Awesome progress @vpeterson !! Taking  a look now.
Btw. do you see these checks?

Another thing we must understand & fix.

@vpeterson really wonderful progress, great work! Before advancing we have some boring (but still important) style issues to fix. I hope some of the CI issues above will dissolve automagically in the process.
What is is the current status with the tests. Passing on you machine?

Also: how long do these tests run on your machine?

@vpeterson really wonderful progress, great work! Before advancing we have some boring (but still important) style issues to fix. I hope some of the CI issues above will dissolve automagically in the process.
What is is the current status with the tests. Passing on you machine?

Thank you @dengemann for your inputs. So sorry that most of the issues were for the code style side, still getting used to press attention to that.
Still not able to run it on the terminal with pytest, but the problem is not only for this one..None of the pytest run at the moment in my machine. I'll give a look at that tommorow. But on the meantime I have made all the amends following your comments.

Also: how long do these tests run on your machine?

It took 2.86 s !

@dengemann the test has successfully been passed ! I just needed to make some minor changes in the way the pytest.raises was called.
still don't know why lastly the CI error occurs after any push I make to the ssd branch...

Hi @vpeterson I am back and we can resume our work.
Inspecting the Travis build suggests several errors with the tests and the doc strings.

it seems some illegal API use is going on here in some of the tests :)

___________________________________ test_ssd ___________________________________
5832mne/decoding/tests/test_ssd.py:92: in test_ssd
5833    pytest.raises(ValueError, ssd, n_components='foo')
5834E   TypeError: SSD(cov_method_params=None, estimator='oas',
5835E     filt_params_noise={'l_freq': 8, 'h_freq': 13, 'l_trans_bandwidth': 1, 'h_trans_bandwidth': 1, 'fir_design': 'firwin'},
5836E     filt_params_signal={'l_freq': 9, 'h_freq': 12, 'l_trans_bandwidth': 1, 'h_trans_bandwidth': 1, 'fir_design': 'firwin'},
5837E     info=<Info | 7 non-empty values
5838E    bads: []
5839E    ch_names: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19
5840E    chs: 20 EEG
5841E    custom_ref_applied: False
5842E    highpass: 0.0 Hz
5843E    lowpass: 125.0 Hz
5844E    meas_date: unspecified
5845E    nchan: 20
5846E    projs: []
5847E    sfreq: 250.0 Hz
5848E   >,
5849E     n_components=None, n_fft=250, picks=None, rank=None,
5850E     return_filtered=False, sort_by_spectral_ratio=True) object (type: <class 'mne.decoding.ssd.SSD'>) must be callable

It seems the epochs are too short for applying the desired filter length in your test

____________________________ test_ssd_epoched_data _____________________________
5866mne/decoding/tests/test_ssd.py:210: in test_ssd_epoched_data
5867    ssd_e.fit(X_e)
5868mne/decoding/ssd.py:174: in fit
5869    X_signal = filter_data(
5870<decorator-gen-115>:24: in filter_data
5871    ???
5872mne/filter.py:817: in filter_data
5873    filt = create_filter(
5874<decorator-gen-116>:24: in create_filter
5875    ???
5876mne/filter.py:1012: in create_filter
5877    fir_window, fir_design = _triage_filter_params(
5878mne/filter.py:1833: in _triage_filter_params
5879    warn('filter_length (%s) is longer than the signal (%s), '
5880mne/utils/_logging.py:351: in warn
5881    warnings.warn_explicit(
5882E   RuntimeWarning: filter_length (825) is longer than the signal (500), distortion is likely. Reduce filter length or filter a longer signal.

From the testing log, mostly mismatches between doc and actual parameters:

5911mne/tests/test_docstring_parameters.py:169: in test_docstring_parameters
5912    raise AssertionError(msg)
5913E   AssertionError:
5914E   mne.decoding.ssd.SSD : PR01 : Parameters {'n_fft', 'picks', 'sort_by_spectral_ratio'} not documented
5915E   mne.decoding.ssd.SSD : PR02 : Unknown parameters {'n_fft: int (default None)', 'sort_by_spectral_ratio: bool (default False)'}
5916E   mne.decoding.ssd.SSD : PR08 : Parameter "n_fft: int (default None)" description should start with a capital letter
5917E   mne.decoding.ssd.SSD : PR08 : Parameter "sort_by_spectral_ratio: bool (default False)" description should start with a capital letter
5918E   mne.decoding.ssd.SSD : PR09 : Parameter "sort_by_spectral_ratio: bool (default False)" description should finish with "."
5919E   mne.decoding.ssd.SSD : PR10 : Parameter "n_fft" requires a space before the colon separating the parameter name and type
5920E   mne.decoding.ssd.SSD : PR10 : Parameter "sort_by_spectral_ratio" requires a space before the colon separating the parameter name and type
5921E   mne.decoding.ssd.SSD : SS06 : Summary should fit in a single line
5922E   mne.decoding.ssd.SSD.apply : GL02 : Closing quotes should be placed in the line after the last text in the docstring (do not close the quotes in the same line as the text, or leave a blank line between the last text and the quotes)
5923E   mne.decoding.ssd.SSD.apply : GL03 : Double line break found; please use only one blank line to separate sections or paragraphs, and do not leave blank lines at the end of docstrings
5924E   mne.decoding.ssd.SSD.fit : PR02 : Unknown parameters {'self', '-------', 'Returns'}
5925E   mne.decoding.ssd.SSD.fit : PR07 : Parameter "-------" has no description
5926E   mne.decoding.ssd.SSD.fit : PR07 : Parameter "Returns" has no description
5927E   mne.decoding.ssd.SSD.fit : RT01 : No Returns section found
5928E   mne.decoding.ssd.SSD.get_spectral_ratio : GL02 : Closing quotes should be placed in the line after the last text in the docstring (do not close the quotes in the same line as the text, or leave a blank line between the last text and the quotes)
5929E   mne.decoding.ssd.SSD.get_spectral_ratio : GL03 : Double line break found; please use only one blank line to separate sections or paragraphs, and do not leave blank lines at the end of docstrings
5930E   mne.decoding.ssd.SSD.get_spectral_ratio : PR08 : Parameter "ssd_sources" description should start with a capital letter
5931E   mne.decoding.ssd.SSD.get_spectral_ratio : RT04 : Return value description should start with a capital letter
5932E   mne.decoding.ssd.SSD.get_spectral_ratio : RT05 : Return value description should finish with "."
5933E   19 errors
5934_______________________________ test_documented ________________________________
5935mne/tests/test_docstring_parameters.py:312: in test_documented
5936    raise AssertionError('\n\nFound new public members missing from '
5937E   AssertionError:
5938E
5939E   Found new public members missing from doc/python_reference.rst:
5940E
5941E   * SSD (mne.decoding.ssd.SSD)

Do you want to work through these issues to see if you can fix them?

seems the CIs are still failing @vpeterson

@vpeterson just pulled your latest changes, tests pass on my machine and it takes ~ 3 seconds. It seems CIs are still not happy :-/ did you start looking into the error messages?

@vpeterson just pulled your latest changes, tests pass on my machine and it takes ~ 3 seconds. It seems CIs are still not happy :-/ did you start looking into the error messages?

Indeed @dengemann  ! I have run on my computer every possible test:

make flake
pytest mne/tests/test_docstring_parameters.py
make docstyle
pytest mne/decoding/tests/test_ssd.py

and after adding some amends to the codes, every test has passed.
Not sure though if these solve the CI problems. I will push the new files in a second...

Ok! still learning a lot! sorry for all the "pushes" I have done lastly.
It seems that mostly everything is working but what still two main errors:

on the codecov --> which I cannot follow what and where the problem is.
on the ci/circleci --> where it says [Makefile:60: html_dev-pattern] Error 1.
Regarding 2, could it because we haven't built the documentation? Should we at this stage now do that @dengemann ?

on the ci/circleci --> where it says [Makefile:60: html_dev-pattern] Error 1... could it because we haven't built the documentation? Should we at this stage now do that @dengemann ?

No, this means that it tried to build the documentation but failed. IF you click the "details" link and follow the advice I mentioned earlier about searching for "warning", you will find linking and RST problems:
/home/circleci/project/doc/auto_examples/decoding/plot_ssd_spatial_filters.rst:24: WARNING: Too many autonumbered footnote references: only 0 corresponding footnotes available.
/home/circleci/project/doc/auto_examples/decoding/plot_ssd_spatial_filters.rst:24: WARNING: Unknown target name: "nikulinetal2011".
/home/circleci/project/mne/decoding/ssd.py:docstring of mne.decoding.SSD.fit:9: WARNING: Block quote ends without a blank line; unexpected unindent.
/home/circleci/project/mne/decoding/ssd.py:docstring of mne.decoding.SSD.inverse_transform:13: WARNING: Block quote ends without a blank line; unexpected unindent.
/home/circleci/project/mne/decoding/ssd.py:docstring of mne.decoding.SSD.inverse_transform:21: WARNING: Block quote ends without a blank line; unexpected unindent.
/home/circleci/project/mne/decoding/ssd.py:docstring of mne.decoding.SSD.transform:9: WARNING: Block quote ends without a blank line; unexpected unindent.

on the codecov --> which I cannot follow what and where the problem is.

You need to wait for all CIs to complete, then if you click the "details" link and look at the files / methods you have added, you should see some lines that are not covered (red). We try to hit 95% coverage, so you probably need to add more tests to cover more of the code you added.

checking the circleci build_docs error, still not sure how to fix this one:
mne.decoding.SSD:105:<autosummary>:1: WARNING: py:obj reference target not found: mne.decoding.SSD.__hash__
any idea how to fix it @dengemann @larsoner ?

checking the circleci build_docs error, still not sure how to fix this one:
mne.decoding.SSD:105:<autosummary>:1: WARNING: py:obj reference target not found: mne.decoding.SSD.__hash__
any idea how to fix it @dengemann @larsoner ?

I "solved" it by adding  __hash__ = None at the end of the ssd.py but, surely there is something more clever for that.

Instead you can add the class name here
https://github.com/mne-tools/mne-python/blob/master/doc/conf.py#L137

Alright for some strange reason there are now errors that weren't there before, and I think, do not belongs to this branch. Since the changes were so minimum as compared to last time, and the CI has passed, could it be possible that there is something missing from the master? I make pull to the master yesterday...

I'm looking into squashing/rebasing now.

I'm looking into squashing/rebasing now.

Yeah, me too!

The devil is in the detail, too many merges and commits ...
I'd suggest we try to clean up such that we squash all our work into two commits, one for you and one for me.
After doing that rebasing should be easier.
What do you think?
I'm currently stuck with fixing my interactive rebase ...

On 9 Nov 2020, at 15:25, vpeterson<EMAIL_ADDRESS>wrote:
I'm looking into squashing/rebasing now.
Yeah, me too!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/mne-tools/mne-python/pull/7070#issuecomment-724045961, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAOR7CSPH4LK6UDDF3IZLR3SO73XDANCNFSM4JOHJY4Q.

Seems like CIs are green! Only Travis is pending forever without running @vpeterson I guess it’s time to add your name to the names file and an announcement to changes. I will change the status to “MRG”.

seems travis fails if no sklearm is installed; we probably have to handle defaults for covariance estimators

seems travis fails if no sklearm is installed; we probably have to handle defaults for covariance estimators

We have some code in mne/fixes.py to handle 'empirical' covariance estimation is a sklearn-like way without requiring sklearn. It should be possible to look at mne/cov.py to figure this out. Then for tests that require sklearn (which hopefully is not all of them), add a requires_sklearn decorator

I would just see what we do for csp and spoc and copy the pattern. And + for sklearn decorator.

It seems we put the regularization to "oas" by default .. this was caught by the failing travis test.
I implemented the naming + default from CSP/SpoC, which should not fix the issue
cc @vpeterson

Ok, last issue remaining is that code coverage is too low now .... @vpeterson

Ok, last issue remaining is that code coverage is too low now .... @vpeterson

how do we improve that then?

The coverage results means literally that there are some lines of code that never get executed by the current tests. So we need more extensive tests ... My bet would be input options and error messages.

On 10 Nov 2020, at 20:42, vpeterson<EMAIL_ADDRESS>wrote:

Ok, last issue remaining is that code coverage is too low now .... @vpeterson
how do we improve that then?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

The coverage results means literally that there are some lines of code that never get executed by the current tests. So we need more extensive tests ... My bet would be input options and error messages.
…
On 10 Nov 2020, at 20:42, vpeterson @.***> wrote:  Ok, last issue remaining is that code coverage is too low now .... @vpeterson how do we improve that then? — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

Ok, I'll do that then!

I can extend the test_ssd.py to cover more inputs and error then !

My approach would be to see if all methods are tested, of all conditionals are touched, etc. But anyways not much is missing, probably a few lines aren’t tested.

On 10 Nov 2020, at 21:00, vpeterson<EMAIL_ADDRESS>wrote:

I can extend the test_ssd.py to cover more inputs and error then !
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

Regarding coverage I suspect some of it is epochs vs raw. One way to fix this is to make the code path the same for both, which I've suggested. But even then it's good to test that it actually works in both cases. One way to do this is to do some parameterization of the test function with something like:
@pytest.mark.parametrize('kind', ('raw', 'epochs'))
def test_whatever(kind):
    n_channels, n_times = 10, 10000
    info = create_info(n_channels, 1000., 'eeg')
    data = np.random.RandomState(0).randn(n_channels, n_times)
    if kind == 'raw':
        inst = mne.io.RawArray(info, data)
    else:
        assert kind == 'epochs'
        # use two replicates as singleton dims can errantly pass in ways
        # that non-singletons wont
        inst = mne.EpochsArray(info, np.repeat(data[np.newaxis], 2, axis=0))
    ...

(Some other coverage drops are due to checking of types and values, and these can safely be taken care of in at least some cases by _validate_type or _check_option)

alright! Amazing changes! I have addressed most of the comments and suggestions but the reshaping trick still not implemented. Should I anyway make the push of the changes? @dengemann @larsoner

Sure, please push :) perhaps bundle them in 1 commit if possible.

Thank you @larsoner we've just comitted most of your suggestions directly.

hello @vpeterson checkout my latest commit, you moved the mne import to the top of the file but also the sklearn import which must be nested ...
Also: I benefitted from the occasion to get rid of the duplicate spectral ration function in the tests. Let me know what you think.

mne import to the top of the file but also the sklearn import which must be nested ...

oh ! I thought the comment was pointing to both! Thank you for disentangle that, I wouldn't realize !

@vpeterson -- all is green!!!

yes!!

On 12 Nov 2020, at 16:25, vpeterson<EMAIL_ADDRESS>wrote:

@vpeterson commented on this pull request.
In doc/changes/latest.inc:

@@ -46,6 +46,8 @@ Enhancements

Add picks parameter to :func:mne.preprocessing.fix_stim_artifact to specify which channel needs to be fixed, by Alex Gramfort_ (:gh:8482)

+- Add :class:mne.decoding.SSD, implementation of the spatio-spectral-decomposition (SSD) method, by Denis Engemann_ and Victoria Peterson_ (:gh:7070)
alright ! thanks ! so I'll commit that @dengemann
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

oh no! conflicting filesss!!!!

seems you did not push from clean index ...

@vpeterson I reverted

should be good now, carried forward your change @vpeterson

Sorry @dengemann @vpeterson , one more rebase necessary because of latest.inc :(

ok looking into that shortly

On 12 Nov 2020, at 18:00, Eric Larson<EMAIL_ADDRESS>wrote:

Sorry @dengemann @vpeterson , one more rebase necessary because of latest.inc :(
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

Rebased.

We should probably add it to tutorials/machine-learning/plot_sensors_decoding.py, though, since that is more or less our directory of machine learning techniques. Can you add a section in there?

@larsoner the idea is to merge the basics here that provide a solid foundation for doing SSD. There is more work planned and we want for sure a good machine learning example. I would love to do this in several PRs though. Ok if we postpone additional examples?

I can push it quickly if you are both burned out on making changes -- I think for each new ML method it should have a corresponding entry in tutorials/machine-learning/plot_sensors_decoding.py just like we do nowadays for datasets with doc/overview/datasets_index.rst

Not sure if we need to rush with this. But if you think we need this before merge I don't object if you try the code. One could add it as preprocessor to SPoC or CSP. But I'd really like not to rush with this. We still have some time in this release cycle.

One could add it as preprocessor to SPoC or CSP.

Ahh okay I was thinking about it more as a method meant to be used directly like Xdawn. We can add it later when the bigger picture is clearer then if necessary

Ahh okay I was thinking about it more as a method meant to be used directly like Xdawn.

It's actually unsupervised, if you want. It's more like SSP/ICA actually. I see two important use cases, boosting SNR in noisy data and adding specificity to the interpretation of results as you can kick out non-oscillatory components or signal from surrounding bands. Exploring good examples might take some time. If you plug it in as is you may or may not see obvious benefits for prediction performance.

Ahh okay I was thinking about it more as a method meant to be used directly like Xdawn.

It's actually unsupervised, if you want. It's more like SSP/ICA actually. I see two important use cases, boosting SNR in noisy data and adding specificity to the interpretation of results as you can kick out non-oscillatory components or signal from surrounding bands. Exploring good examples might take some time. If you plug it in as is you may or may not see obvious benefits for prediction performance.

I agree with this. I just add a comment, in the test_ssd.py we also test how SSD can be used before CSP within the makepipeline sklearn structure. So, yeah, future improvement will be to show the usage of SSD in a good example, but it may take some time.

One Azure build is timing out, unrelated failure.

now all green @dengemann  !!

Thanks @vpeterson @dengemann !


Update copyright year and automatically check modified files

This PR updates the copyright year in .licenserc.json such that CI will ensure all modified files
have a copyright, and that the copyright is updated to this year when first modified this year.
Included is a change to the command that Github workflows runs to check the copyright only on files
modified this year such that old files can keep the 2022 copyright year.

This PR is currently trying to use a git command to figure out which files have been touched since the beginning of the year, but there is something about the way GH Actions checks out repos that is preventing that from working. I'll spend a few more minutes looking into this on Monday and, if I can't get it to work, opt for a simpler solution.


bug: Cargo workspace actions is not workspace

Run cargo build/cargo test/etc in root directory is not a workspace action. Please add --workspace flag

PRs welcome! An example of the project layout that causes the failure would also be helpful


8.10: jinja2.exceptions.TemplateSyntaxError: expected token ',', got 'unfollow'

Hi Miguel,
Must be something easy I'm missing. For my second go through your excellent tutorial, I am adapting it to make an almost Instagram-like clone as a portofolio project. First time through was fine, but now this error.
Here is my user.html:

Many thanks for your work!

Maybe this is also useful:

Thank you

In the first form (to follow a user) the submit call has a  string argument that is missing the closing quote.

Thank you!


Node URL update

The node.loki-pool.com:18081 url needs to be updated to: explorer.oxen.aussie-pools.com:18081

Also @konstantinullrich can you tell me why when I add in the ip and port manually to the node list it doesn't have a green dot? I can connect fine on desktop wallet, is there some check the mobile wallet does?


added popup message, will time out after 5 secs!

Related Issue
Added popup message that will come when a user enters the website or home page and the message will vanish after 5 secs!
It's fully responsive and made it following the existing UI colours
Closes: #157
Example how to mark a checkbox:-

[x] My code follows the code style of this project.
-->
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Code style update (formatting, local variables)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Mention any unusual behaviour of your code (Write NA if not)
Any unusual behaviour of your code
NA
Checklist:

[ ] My code follows the guidelines of this project.
[ ] I have performed a self-review of my own code.
[ ] I have commented my code, particularly whereever it was hard to understand.
[ ] My changes generate no new warnings.
[ ] Any dependent changes have been merged and published in downstream modules.

Screenshots
This message will Timeout after 5 secs!

Please check it out and let me know if you need any changes in this @avinashkranjan! Thank you!

@akshay1027 Kindly Resolve the Conflicts Rest LGTM...

I have made the changes @Utkarsh1999 @avinashkranjan


Refining a union type containing an empty object does not work with != null

This bug can be reproduced with this code:
/* @flow */

export type StatsType = {|
  treeCount: number,
  nodeCount: number,
|};

type MaybeStats = StatsType | {||};

function t(s: MaybeStats): void {
  if (s.treeCount != null) {  // <-- this comparison should refine the type to StatsType
    console.log(s.nodeCount); // does not typecheck but should
  }

  if (s.treeCount) {
    console.log(s.nodeCount); // typechecks but will not execute when treeCount is 0
  }
}

It's not clear to me why the comparison with != null does not refine the type.

We are having the similar issue with disjoint unions working only with exact values, not general structure checks like 'prop' in obj, obj.hasOwnProperty('prop') or typeof obj.prop != 'undefined'.

Exact empty object types have their fair share of problems, but this
problem doesn’t seem to depend on the object type being empty. You can
reproduce it with the following example:
// @flow
function t(s: {|a: number, b: number|} | {|c: number|}): void {
  if (s.a != null) {
    console.log(s.b); // does not typecheck but should
  }
}

(I agree that this is surprising behavior.)

@wchargin Thanks for your remark; I renamed the issue title to reflect that.


Backport "HBASE-26782 Minor code cleanup in and around RpcExecutor" to branch-2

Signed-off-by: Bharath Vissapragada<EMAIL_ADDRESS>Signed-off-by: Duo Zhang<EMAIL_ADDRESS>

@stoty can you confirm that this change is not problematic for Phoenix?

Technically, Phoenix doesn't support branch-2, only branch-2.[1..4]
Let me check what happens if I apply this on branch-2.4.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 51s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

_ branch-2 Compile Tests _

+1 :green_heart:
mvninstall
2m 48s
branch-2 passed

+1 :green_heart:
compile
2m 15s
branch-2 passed

+1 :green_heart:
checkstyle
0m 37s
branch-2 passed

+1 :green_heart:
spotbugs
1m 15s
branch-2 passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
2m 17s
the patch passed

+1 :green_heart:
compile
2m 11s
the patch passed

+1 :green_heart:
javac
2m 11s
the patch passed

+1 :green_heart:
checkstyle
0m 37s
hbase-server: The patch generated 0 new + 1 unchanged - 14 fixed = 1 total (was 15)

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
hadoopcheck
7m 42s
Patch does not cause any errors with Hadoop 3.1.2 3.2.1.

+1 :green_heart:
spotbugs
1m 18s
the patch passed

_ Other Tests _

+1 :green_heart:
asflicense
0m 14s
The patch does not generate ASF License warnings.

27m 16s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4173/1/artifact/yetus-general-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/4173

Optional Tests
dupname asflicense javac spotbugs hadoopcheck hbaseanti checkstyle compile

uname
Linux f21069465056 5.4.0-1025-aws #25~18.04.1-Ubuntu SMP Fri Sep 11 12:03:04 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-2 / f4c91ee65b

Default Java
AdoptOpenJDK-1.8.0_282-b08

Max. process+thread count
60 (vs. ulimit of 12500)

modules
C: hbase-server U: hbase-server

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4173/1/console

versions
git=2.17.1 maven=3.6.3 spotbugs=4.2.2

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

Interesting. For branch-2.4 we're compiling phoenix with Hbase 2.4.1, so we don't see the difference at compile time.
Our Scheduler code itself doesn't throw exceptions on dispatch(), any exception may only come from the delegate scheduler, which is coming the HBase code, so in theory we shouldn't even notice even if the API changes in Hbase 2.4.
For 2.5 and later, we're going to have to rename our internal dispatch() method, and add a dispatch() wrapper to the compatibility shim that handles the API differences betweeen the HBase versions, instead of overriding it as we do now.
All in all, Phoenix can handle the API change in HBase 2.5+ .

All in all, Phoenix can handle the API change in HBase 2.5+

Is that for just this change to RpcExecutor, or are you looking at changes to RpcScheduler#dispatch ?
Thanks @stoty .

I've only looked at RPCExecutor#dispatch() .

But RpcScheduler#dispatch can be handled the same way.

I wouldn't want to make any interface compatibility changes to IA.LimitedPrivate classes on a patch release, only minor release. Thank again @stoty for taking the time!

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
2m 27s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

_ branch-2 Compile Tests _

+1 :green_heart:
mvninstall
3m 39s
branch-2 passed

+1 :green_heart:
compile
2m 51s
branch-2 passed

+1 :green_heart:
checkstyle
0m 44s
branch-2 passed

+1 :green_heart:
spotbugs
1m 35s
branch-2 passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m  9s
the patch passed

+1 :green_heart:
compile
2m 57s
the patch passed

+1 :green_heart:
javac
2m 57s
the patch passed

+1 :green_heart:
checkstyle
0m 45s
hbase-server: The patch generated 0 new + 1 unchanged - 14 fixed = 1 total (was 15)

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
hadoopcheck
9m 18s
Patch does not cause any errors with Hadoop 3.1.2 3.2.1.

+1 :green_heart:
spotbugs
1m 57s
the patch passed

_ Other Tests _

+1 :green_heart:
asflicense
0m 11s
The patch does not generate ASF License warnings.

35m 30s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4173/2/artifact/yetus-general-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/4173

Optional Tests
dupname asflicense javac spotbugs hadoopcheck hbaseanti checkstyle compile

uname
Linux 76305228b76a 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-2 / 5bae04e20c

Default Java
AdoptOpenJDK-1.8.0_282-b08

Max. process+thread count
60 (vs. ulimit of 12500)

modules
C: hbase-server U: hbase-server

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4173/2/console

versions
git=2.17.1 maven=3.6.3 spotbugs=4.2.2

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
2m 18s
Docker mode activated.

-0 :warning:
yetus
0m  5s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ branch-2 Compile Tests _

+1 :green_heart:
mvninstall
4m 11s
branch-2 passed

+1 :green_heart:
compile
0m 53s
branch-2 passed

+1 :green_heart:
shadedjars
4m 19s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 43s
branch-2 passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m 37s
the patch passed

+1 :green_heart:
compile
0m 55s
the patch passed

+1 :green_heart:
javac
0m 55s
the patch passed

+1 :green_heart:
shadedjars
4m  9s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 27s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
363m 27s
hbase-server in the patch passed.

386m 21s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4173/2/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/4173

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 1846cd652ed9 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-2 / 5bae04e20c

Default Java
AdoptOpenJDK-11.0.10+9

Test Results
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4173/2/testReport/

Max. process+thread count
1818 (vs. ulimit of 12500)

modules
C: hbase-server U: hbase-server

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4173/2/console

versions
git=2.17.1 maven=3.6.3

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

Okay, so here's a problem that confused me through this. RpcExecutor, the abstract base class, is marked as IA.Private. However, it has several subclasses that are marked as IA.LimitedPrivate(COPROC, PHOENIX).
https://issues.apache.org/jira/browse/HBASE-26817


Fix issue #327 Improved compatibility with PHP's wordwrap

Improved compatilibity with PHP's wordwrap
Made the code a little more readable

Looking good! Thanks for the work! 👍 👍


Update to use hiredis 0.13.2?

There's no real need right now. Changes in 0.13+ are mostly for networking/async code which is not used by hiredis-node at all.


URL with parameter / regex not working

Hello,
I try to create a Websocket URL with
po_application.ws('/chat/:did', function( po_socket, po_request ) {
        po_socket.on('message', function( pc_message ) {
            console.log(pc_message);
        });
    });
```

with ```lo_application``` is the express() instance.
The did parameter is defined with
```
po_route.param('did', function(po_request, po_resource, po_next, pc_documentid) {
        pc_request.document = pc_documentid || null;
        po_next();
});
```

Also a URL like ```/chat/(.+)``` is not working. How I can add an URL with a parameter for a Websocket URL

I'm also looking for this.  It looks like the route is getting coerced into a string, so the fact that it is a regex gets lost.  @HenningM any plans on fixing this?

Hi guys,
First of all: thanks for using this module. Nice to hear some feedback as well and this is a feature I've been planning to implement for a while now, but a bit of external pressure certainly didn't hurt. I've pushed a new version of this module now with a completely different approach to routing. Should make it more similar to the standard express routes.
Unfortunately I haven't been able to test much myself yet, so it would be great if you can have a look at the 1.0.0-rc.1 version. It changes a lot of the inner workings of the library, so this version will probably have a few new bugs, but hopefully I'll be able to iron them out with your assistance. Any feedback will be appreciated.

Thanks, awesome turnaround time. Will give it a whirl


How to remove pagination

In this doc, I am not able to find how to remove pagination.
Is there any way to remove the pagination?

 $(document).ready( function () {      $('#example').dataTable( {        "bPaginate": false      } );    } );

@AurelDragut Thanks.
It will be nice to have $this->crud->removePagination() or $this->crud->disablePagination() method.

I don't know if it's worth making a trait for it. You can just add a condition in the list.blade.php file to filter when to use pagination or not.

Hi guys,
This is the first time I hear about someone wanting to remove pagination. And since it's such a simple modification, I don't think there should be an official method for this. I'll leave the thread empty in case public opinion is different.
Cheers!

I disable pagination for lists I want to see the whole tree for. An example are pages, I want the list to represent the whole navigation, the pages are indented to indicate depth, so having paged lists looks odd, as some are indented and some not, if you can't see the parent it looks broken.
I simply added a property to crud called disablePagination, and set it to true when I need to, in the list blade, it then does:
@if ($crud->disablePagination)         	  "bPaginate": false,  @endif
99% of the time I don't see a need for it though, but possibly useful to have.

Right now we have 10, 25, 50, 100 as options for the number of items on a page and what you need seems to be an option to set an 'all' as default on custom lists.

This:

Right now we have 10, 25, 50, 100 as options for the number of items on a page and what you need seems to be an option to set an 'all' as default on custom lists.
And while 'all' is selected the pagination div should be hidden

...seems to be a new feature :).

come across to this,
and applied @Spodnet and @AurelDragut solution which is awesome
datatables_logic.blade.php
           "<'row mt-2 d-print-none '<'col-sm-12 col-md-4'l><'col-sm-0 col-md-4 text-center'B><'col-sm-12 col-md-4 'p>>",
+      @if ($crud->getDefaultPageLength() === -1)
+      bPaginate: false,
+      @endif
   }

and you could do something like this in the Controller::setupListOperation()
    CRUD::setDefaultPageLength(-1);


Add an action output for cache size

Changes

I'm seeing some cache-hits that are basically empty?
Cache Size: 22bytes (22 bytes)
/usr/bin/tar --use-compress-program zstd -d -xf /runner/_work/_temp/051fd982-919c-487f-bb71-d[18](https://github.com/.../actions/runs/5405282943/jobs/9821288693#step:4:19)260fde93d/cache.tzst -P -C /runner/_work/...
Cache restored from s3 successfully

22 bytes when something like 537680268 bytes are really expected...
This leads to a positive cache hit and the rest of my workflow continues as if the cache object has been restored when it really wasn't in the s3 bucket at all. Later in the workflow everything fails when if I had known the hit was incorrect, I could have build the asset in the workflow.
These changes add a cache-size output to the action so that other steps can decide if they want to trust a cache hit.
Fix Issues

Hi, Thanks, this looks simple and straight forward improvement.


Disconnected event not fired when using Disconnect method

Description
I tried using the Browser.Disconnect method for debugging purposes.
When calling it, it does not fire Browser.Disconnected event. Browser.CloseAsync does.
Complete minimal example reproducing the issue
            var browser = await Puppeteer.LaunchAsync(new LaunchOptions());

            //the handler is only called when using await browser.CloseAsync();
            browser.Disconnected +=(s,e) =>Console.WriteLine("Disconnected event hit!");

            var page = browser.NewPageAsync();
            browser.Disconnect();

Versions

Which version of PuppeteerSharp are you using? - 1.11.2
Which .NET runtime and version are you targeting? .NET framework 4.6.1

Why would you want to Launch a process and then disconnect (instead of close) from it?
This would orphan the Chromium process.
You should use one of these pairs of calls:

You LaunchAsync and then you CloseAsync.
You ConnectAsync and then you Disconnect.

Thanks for the clarification! I use LaunchAsync then work on a Page for a long period, and then CloseAsync. I do 2 separate task simultaneously from one .NET process, in two separate browser process (so if one crashes, it won't kill the other).
But I have random WebSocket disconnect issues. (like once every day) At first I thought it would be a good idea to reconnect to the browser, and continue on the Page where the script stopped working.
So I was testing out ConnectAsync, but in order to test it, I needed to create the disconnected situation manually.
I found that there is a Disconnected event, and the summary description says "Raised when ... Disconnect method was called".
Now, I realized it is better to start my process from scratch in the event of a WebSocket disconnect Exception, but it might be a good idea still to reconnect to the existing browser to close it, or to reuse it.

@szilardx I closed the Reconnect issue because I don't think the WebSocket connect just breaks. There might be something else going that breaks the connection (or the browser). So we would need to work on that issue instead of the reconnect.

@kblok Okay, I'll try to get some logs from Chromium too.


Sequence Editor Auto-indent, Ground support

Closes #1409
Custom Folding:
Adds custom folding capabilities for commonly used code blocks (ground_block, ground_event, request, load, activate, metadata, models).
Enables nested folding for better code organization and readability.
Autocomplete:
Extends autocomplete functionality to include request, activate, load, ground_event, and ground_blocks.
Fixes minor bugs related to incorrect autocomplete suggestions.
Auto-Indent:
Implements basic auto-indent functionality for improved code formatting.
Future improvements may include support for conditionals and loops.
NOTE: We should expose this feature to the adaptation layer.
You can take this below sequence and play around with the folding
@ID ""

@METADATA "Key1" "Value"
@METADATA "Key2" "Value"
@METADATA "Key3" "Value"
@METADATA "Key4" "Value"
@METADATA "Key5" "Value"
@METADATA "Key6" "Value"

C @ACTIVATE("activate.name") 1 2 "3" # description
@ENGINE 1
@EPOCH ""
@MODEL "Variable" 0 "Offset"
@MODEL "Variable" 0 "Offset"

C @LOAD("load.name") 1 2 [21 22]
@EPOCH ""

C @GROUND_BLOCK("ground_block.name")
@MODEL "Variable" 0 "Offset"
@MODEL "Variable" 0 "Offset"

C @GROUND_EVENT("ground_block.name") 1 2
@METADATA "Key" "Value"
@MODEL "Variable" 0 "Offset"
@MODEL "Variable" 0 "Offset"

@GROUND_EPOCH("Name", "+0.00") @REQUEST_BEGIN("request.name")
  C SEQ_ECHO ""
  @METADATA "Key" "Value"
  @METADATA "Key1" "Value"
  @METADATA "Key2" "Value"
  @METADATA "Key3" "Value"

  C @GROUND_BLOCK("ground_block.name")

  C @LOAD("load.name")
  @ENGINE 1
  @MODEL "Variable" 0 "Offset"
  @MODEL "Variable" 0 "Offset"
  @MODEL "Variable" 0 "Offset"
@REQUEST_END
@METADATA "Key1" "Value"
@METADATA "Key2" "Value"
@METADATA "Key3" "Value"
@METADATA "Key4" "Value"
@METADATA "Key5" "Value"

Yep, the user will almost always need to start a line with a time tag (C, R, E, A) so it should be showing up as the first thing when you type.

Unit test will be kinda hard as it is returning a fold range which will be hard to calculate on a treenode.

I see. There's no way to manually create the tree given some test input code the way it's done in the editor?

@duranb @cohansen Let me know if the PR is good to merge now. I took @cohansen suggestions am using the foldSteps method for Activte, Load, Commands, GroundBlock, and GroundEvent

@duranb @cohansen Let me know if the PR is good to merge now. I took @cohansen suggestions am using the foldSteps method for Activte, Load, Commands, GroundBlock, and GroundEvent and removed foldCommand, foldLoadandActivate, and foldGround with this commit: fbb48c8

LGTM, thanks @goetzrrGit .

@duranb @cohansen Let me know if the PR is good to merge now. I took @cohansen suggestions am using the foldSteps method for Activte, Load, Commands, GroundBlock, and GroundEvent and removed foldCommand, foldLoadandActivate, and foldGround with this commit: fbb48c8

LGTM, thanks @goetzrrGit .

Great catch! Merge away!


ARC does not allow GET requests with a body

GET requests can be submitted with a body. Salient example: Elasticsearch does searches using GET with a body.
Expected outcome
ARC allows me to enter a request body
Actual outcome
Body tab is automatically hidden when method is set to GET
Versions
App: 10.0.3
Platform: 5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36
Steps to reproduce

This issue has been discussed here many times. This is a duplicate.
For recap: HTTP spec does not allow message body in GET request. Web clients (XHR, Fetch) does not allow to add body for get request (Fetch even throws an error while XHR just ignores it). Therefore ARC won't allow do this.


Add python programs to python directory

Please assign this to me

I will try please assignee me.

Can you please explain the issue more detail please😅🥲

Ok will try.

Please assigne me.

i have made a password generator program and made Pull request please see it and merge it

Hey assign this to me please

Hi @MryashAditya007 ,
Would you like to add Competitive coding problems and solution approaches to be added in this directory?
Please assign the issue to me. I would add few problems.
Thanks!!

I wish to contribute. Kindly assign me this issue.

I would like to contribute. Please assign this question to me

I would like to contribute
Please assign me this issue :)


 I think I initially added these because they have a significant impact on runtime at shorter GC intervals. But both these heuristics result in undesirable memory growth in real programs, especially modified_since_last_gc. I didn't realize at the time that required state becomes garbage as a result of changes to other allocations.
I think this nets even primarily because we get better heap reuse. With this change I see almost all the mmap calls coming from our diagnostics infrastructure go away. Not that there were many to start with, but it's an indicator that our memory locality has improved.
 With this change I see almost all the mmap calls coming from our diagnostics infrastructure go away. Not that there were many to start with, but it's an indicator that our memory locality has improved.

Diagnostics should only trigger when there is an error? Or is this about the tracking SB does to give nicer errors if an error happens?

I am still wondering how good our benchmarks are at actually checking GC performance... maybe the benchmarks should be run with a GC interval of 1k blocks (10x the normal frequency) to better emulate long-running programs? After all, if Miri already takes <10s then it's not so critical, but we don't actually want benchmarks to take 100s to run.

Maybe we should have one specific GC benchmark then that uses the lower GC interval and aims to artificially create a lot more garbage than normal programs would?

slice-get-unchecked is kind of this already. Based on some quick experimentation, the optimal GC interval for that program's runtime is about 100. With the GC off, the benchmark takes 6.4 seconds. With the default GC interval, it runs in 0.55 seconds, and with -Zmiri-provenance-gc=100, it drops to 0.37 seconds.
With the GC enabled, the peak memory usage is 106 MB for the frequent GC and 119 MB for the default interval. With the GC off, the peak memory is 6554 MB. So I think it's fair to say this benchmark produces a lot of garbage.
Would just decreasing the GC interval for this benchmark in miri-script meet your request here?

Thanks for investigating!

Would just decreasing the GC interval for this benchmark in miri-script meet your request here?

I'm just throwing ideas in the room to hopefully get better bench coverage. Ultimately you have a better idea of where we are in terms of perf than I do. If you feel, after doing this investigation, that the benchmark as-is is already covering our GC sufficiently, I'm okay keeping it as-is. If you think changing the GC interval would make the benchmark suite better, then let's change it.

I'd rather keep it as-is, so that the benchmark suite rewards us if we figure out how make the GC interval tune itself.
At some point, maybe I'll collect interpreter profiles for all the crates I'm running tests for. I bet there are odd cases hidden in there somewhere. The trick is finding a good way to sift through all the data.

Okay, then r=me after adding a comment in that test file as noted above.

@bors r=RalfJung

:pushpin: Commit d163a447d993d0f5d56644da5ef7579e0ff4472c has been approved by RalfJung
It is now in the queue for this repository.

:hourglass: Testing commit d163a447d993d0f5d56644da5ef7579e0ff4472c with merge 68fee26121cc64702d0443b85591ae6e74f9a7e1...

:sunny: Test successful - checks-actions
Approved by: RalfJung
Pushing 68fee26121cc64702d0443b85591ae6e74f9a7e1 to master...


How can I control two turtlebots by giving point ?

ISSUE TEMPLATE ver. 0.4.0

Which TurtleBot3 platform do you use?

[ o ] Burger
[ ] Waffle
[ ] Waffle Pi

Which ROS is working with TurtleBot3?

[ ] ROS 1 Kinetic Kame
[ o ] ROS 1 Melodic Morenia
[ ] ROS 1 Noetic Ninjemys
[ ] ROS 2 Dashing Diademata
[ ] ROS 2 Eloquent Elusor
[ ] ROS 2 Foxy Fitzroy
[ ] etc (Please specify your ROS Version here)

Which SBC(Single Board Computer) is working on TurtleBot3?

[ ] Intel Joule 570x
[ o ] Raspberry Pi 3B+
[ ] Raspberry Pi 4
[ ] etc (Please specify your SBC here)

Which OS you installed on SBC?

[ o ] Raspbian distributed by ROBOTIS
[ ] Ubuntu MATE (16.04/18.04/20.04)
[ ] Ubuntu preinstalled server (18.04/20.04)
[ ] etc (Please specify your OS here)

Which OS you installed on Remote PC?

[ ] Ubuntu 16.04 LTS (Xenial Xerus)
[ o ] Ubuntu 18.04 LTS (Bionic Beaver)
[ ] Ubuntu 20.04 LTS (Focal Fossa)
[ ] Windows 10
[ ] MAC OS X (Specify version)
[ ] etc (Please specify your OS here)

Specify the software and firmware version(Can be found from Bringup messages)

Software version: [x.x.x]
Firmware version: [x.x.x]

Specify the commands or instructions to reproduce the issue.

HERE

Copy and Paste the error messages on terminal.

HERE

Please describe the issue in detail.

Hi. I'm new to ROS and turtlebot3 control. Recently, I succeeded in driving one turtlebot and now I am trying to drive two turtlebots. I want to control them with 'turtlebot3_pointop' (move turtlebot by giving point (x, y, z)). I have already seen https://emanual.robotis.com/docs/en/platform/turtlebot3/basic_examples/#load-multiple-turtlebot3s but, I don't know what to do after loading two turtlebots. I think that I should use '/tb3_0 or 1/base_footprint or base_link'... is it right? I'm sorry my question is too abstract.

Hi,
In order to control multiple robots on ROS, you should separate their nodes and messages with different namespace.
Not only the TF, but also should you separate nodes and messages so that they won't get affect to each other.
If you are new to ROS, I'd recommend to start with something simple such as turtlesim first, then move on to the actual robot platform with decent understanding about how ROS works.
Thanks


Fix urlencode

When the value has been urlencoded, it needs to be urlencoded again, not just replacing &.

Thanks @zrq495 ! Can you also add a test for this case ?

@zrq495 any updates on this? I need this fix ❤

@ddascal @fbergero I am sorry. I had been trying to run the test, but i failed to make  it.
I have been using it under my production and it proves to be accessible, so you can use it directly.
if it is convenient for you, you can add a test for this case.

@zrq495 is your build uploaded to luarocks?

@fbergero Just build locally
I didn't notice ARN, does it not work properly?


Sanitize Flight::request()->data

Hey,
I really like using Flight, great stuff, thanks!
Is there a way to sanitize / modify stuff in Flight::request()->data "once for good"?
Was trying to work around dates (input type=date not working with Safari) and was wondering if this is something I could be doing prior to actually process the posted data.
Thank you

You could add a hook Flight::before('start', ...) and in that you can do:
// Get data from request
$data = Flight::request()->getData();

// Modify data
// ...

// Save the data
Flight::request()->setData($data);


PIV functions need to be memory-optimized

We are hitting Android's memory limit with larger frame sizes (see #98) and the PIV functions need to be refactored to be more memory friendly.

OpenCV's native Mat objects need to be released when we're done with them to avoid memory leaks. Adding that work to this ticket.

#108 closes this issue.


ModelLoader._load_model_runner() when TP>1

System Info
-CPU architecture x86_64
-GPU name NVIDA V100
-GPU memory size 32G*8
-TensorRT-LLM branch main[https://github.com/NVIDIA/TensorRT-LLM/commit/c89653021e66ca78c55f02b366f404455bc12e8d]
Who can help?
@ncomly-nvidia
Information

[X] The official example scripts
[ ] My own modified scripts

Tasks

[X] An officially supported task in the examples folder (such as GLUE/SQuAD, ...)
[ ] My own task or dataset (give details below)

Reproduction
Build offline HF -> FT (Quantization + TP =2) weight conversion,
Then use build.py to build the engine and get the following results:
ls $trt_model/py_backend_2gpu_int8_v100/
config.json  model.cache  llama_float16_tp2_rank0.engine  llama_float16_tp2_rank1.engine  special_tokens_map.json  template.json    tokenizer.model  tokenizer_config.json

Then use LLM() for engine_path loading
...
model_dir=f"$trt_model/py_backend_2gpu_int8_v100/"
config = ModelConfig(model_dir=model_dir)
  config.parallel_config.tp_size = 2  # 2 GPUs
  llm = LLM(config, async_mode=False)

  for output in llm.generate(prompts):
      print(output)

Expected behavior
Excption log
Loading Model: [1/2]    Load TensorRT-LLM engine
Loading Model: [1/2]    Load TensorRT-LLM engine
Failed, NCCL error ../code/TensorRT-LLM/cpp/tensorrt_llm/plugins/common/plugin.cpp:86 'invalid usage (run with NCCL_DEBUG=WARN for details)'
Failed, NCCL error ../code/TensorRT-LLM/cpp/tensorrt_llm/plugins/common/plugin.cpp:86 'invalid usage (run with NCCL_DEBUG=WARN for details)'
Failed, NCCL error ../code/TensorRT-LLM/cpp/tensorrt_llm/plugins/common/plugin.cpp:86 'invalid usage (run with NCCL_DEBUG=WARN for details)'
Failed, NCCL error../code/TensorRT-LLM/cpp/tensorrt_llm/plugins/common/plugin.cpp:86 'invalid usage (run with NCCL_DEBUG=WARN for details)'
--------------------------------------------------------------------------
Child job 2 terminated normally, but 1 process returned
a non-zero exit code. Per user-direction, the job has been aborted.
--------------------------------------------------------------------------
--------------------------------------------------------------------------
mpirun detected that one or more processes exited with non-zero status, thus causing
the job to be terminated. The first process to do so was:

  Process name: [[39134,2],0]
  Exit code:    1
--------------------------------------------------------------------------

actual behavior
I DEBUG found that it is the process of engine initialization.
self.runner During initialization, the information of tensorrtllm_mapping.py was not told to the child process. .
self.runner = ModelRunner.from_dir(self._model_dir)

to
self.runner = ModelRunner.from_dir(self._model_dir,rank=self.mapping.rank)

And I found small problems like this, there are many in this commit
additional notes
After I modified it, the demo process was right.
Loading Model: [1/2]	Load TensorRT-LLM engine
model_config=ModelConfig(vocab_size=60148, num_layers=32, num_heads=16, num_kv_heads=16, hidden_size=2048, gpt_attention_plugin=True, remove_input_padding=True, model_name='seq_monkey', paged_kv_cache=True, cross_attention=False, head_size=None, has_position_embedding=True, has_token_type_embedding=False, tokens_per_block=128, max_prompt_embedding_table_size=0, quant_mode=<QuantMode.INT8_KV_CACHE|INT8_WEIGHTS: 66>, gather_context_logits=True, gather_generation_logits=True, dtype='float16', use_custom_all_reduce=True, lora_plugin=False, lora_target_modules=[], use_context_fmha_for_generation=False, hf_modules_to_trtllm_modules=None, trtllm_modules_to_hf_modules=None, num_medusa_heads=0, max_medusa_tokens=0)
model_config=ModelConfig(vocab_size=60148, num_layers=32, num_heads=16, num_kv_heads=16, hidden_size=2048, gpt_attention_plugin=True, remove_input_padding=True, model_name='seq_monkey', paged_kv_cache=True, cross_attention=False, head_size=None, has_position_embedding=True, has_token_type_embedding=False, tokens_per_block=128, max_prompt_embedding_table_size=0, quant_mode=<QuantMode.INT8_KV_CACHE|INT8_WEIGHTS: 66>, gather_context_logits=True, gather_generation_logits=True, dtype='float16', use_custom_all_reduce=True, lora_plugin=False, lora_target_modules=[], use_context_fmha_for_generation=False, hf_modules_to_trtllm_modules=None, trtllm_modules_to_hf_modules=None, num_medusa_heads=0, max_medusa_tokens=0)
finish loading TRT-LLM engine.
Time: 6.287s
Loading Model: [2/2]	Initialize tokenizer
finish loading TRT-LLM engine.
Time: 0.125s
Loading model done.
Total latency: 6.412s
../code/TensorRT-LLM/tensorrt_llm/runtime/generation.py:922: UserWarning: The PyTorch API of nested tensors is in prototype stage and will change in the near future. (Triggered internally at ../aten/src/ATen/NestedTensorImpl.cpp:178.)
  torch.nested.nested_tensor(split_ids_list,
../code/TensorRT-LLM/tensorrt_llm/runtime/generation.py:922: UserWarning: The PyTorch API of nested tensors is in prototype stage and will change in the near future. (Triggered internally at ../aten/src/ATen/NestedTensorImpl.cpp:178.)
  torch.nested.nested_tensor(split_ids_list,
GenerationOutput(text='about a time when you had to make a difficult decision. What factors did you consider when making your', token_ids=[1048, 263, 931, 746, 366, 750, 304, 1207, 263, 5189, 10608, 29889, 1724, 13879, 1258, 366, 2050, 746, 3907, 596], logprobs=[])

Process finished with exit code 0

@Superjomn Could you please have a look? Thanks

Good job, we've adapted this patch, and it will soon synchronized to the main branch.


Allow GET in redirection.rb

I propose removing !request.get? from these two lines:
https://github.com/rails/turbolinks/blob/aa547cf454430ddccf9221c4bfcb4bee009b3ea9/lib/turbolinks/redirection.rb#L11
https://github.com/rails/turbolinks/blob/aa547cf454430ddccf9221c4bfcb4bee009b3ea9/lib/turbolinks/redirection.rb#L24
A common pattern for me is to do something like this:
index.html.erb
<% @videos.each do |video| %>
  <div id="video-<%= video.id %>">
    ... some stuff ...
    <%= link_to "Show more..." show_more_path(video), remote: true, method: 'GET' %>
  </div>
<% end %>

(in this case, using ujs)
videos_controller.rb
def show_more
  @video = Video.find(params[:id])
  # ...
  render partial: 'video_details', locals: {video: @video, detailed: true}, change<EMAIL_ADDRESS>end

In a sense, a remote partial.  There's a few reasons for this kind of pattern:  maybe there's a video embed in there, maybe your index is really heavy (other resources don't need to get loaded to show this detailed view), or maybe your detailed remote partial is really heavy (the reason you didn't show every resource in detail in your initial #index render).
I tested it out by changing my route to a PUT, and it works nicely, but clearly not the ideal solution since it really should be a GET :)
We do this kind of pattern a lot throughout Shopify on some of our more resource intensive indexes, and also use it for remote modals
cc @Thibaut @kristianpd
Potential downsides for users of this pattern:

full body is no longer coming through in the response, so anything being data-track-turbolink'd would be missed.  It could be up to the user to make his own render_partial_with_head or partial_render function that tacks on a <head> before the body of his rendered partial?

potential solution to above:  render your partial with a very lightweight layout instead

I believe the DOM parser used by turbolinks is really not good at attempting to insert a <tr> if it's the root node of a "document" returned by the server, and you will get explosions instead, so I generally make a point to only refresh non-<table> related elements

You could do:
render partial: 'video_details', change<EMAIL_ADDRESS>turbolinks: true

or
render partial: 'video_details', change<EMAIL_ADDRESS>turbolinks: request.xhr?

For render with a change option, I think it makes sense to render with Turbolinks by default for XHR+GET. I don't remember what my thinking was at the time to not do that (probably just to be consistent with redirect_to).
I'm not sure we should do that for redirect_to, though. Most of the time a redirect on a GET request goes to something like the login page or a different domain, in which case you don't want to redirect via Turbolinks.

Good point about the redirect_to, I wasn't thinking too closely about that one and agree that it should be left as is until there's a compelling pattern for it


Support GraphQL Subscriptions

Implements a client.subscribe(...) function, which returns an AsyncIterator that returns values at a specified frequency (e.g. 1000ms) and can be used in a for await...of loop.
closes #198

I also run into the following error when using yarn prebuild or yarn build:

Thanks. I'll look into this and the other errors. :)

Just double checked and it looks like RXJS now supports async iterators :D
https://github.com/ReactiveX/rxjs/pull/5297


First 3 lines of shabad_id 40214 should be part of 40213

https://www.sikhitothemax.org/shabad?id=40214

done


Feature/countries contexts update socioeconomics card

This PR updates Socio-economic indicators to display gender gap on agriculture sector
Pivotal task
BaseCamp thread
Test locally

Hello, I found a few bugs here:
1. When we change year filter from year with no data to year with data:

2. When we change Countryfilter  to e.g. Andorra:

Error in browser console shows this line in countries-contexts-selectors.js:

3. For countries and years where we don't have any data, I think it'll be better to display info message like "No data found" instead of displaying chart with 0% values.

Hey @kfilip94 ready again ☝
I've refactored a bit and added a loader (also modified the provider to avoid fetching when changing countries)

@weberjavi Thanks for changes, great!
I found another bug, probably additional guard will solve this:

When you'll try to change country to Cooks Islands, the page will crash with error:

in this line:

Also, I think you can add a comma here, after a country name: No data for Andorra, please select another country

☝ ready again
@kfilip94 thanks a lot for spotting this crashes 🙏


iOS 9 Background Thread issue

Hi,
first of all, i love this library. I use it everyday and it makes Auto-Layout so much less painful.
Since the release of iOS 9 i get following message in the log:
"This application is modifying the autolayout engine from a background thread, which can lead to engine corruption and weird crashes.  This will cause an exception in a future release."
You can get rid of this with using GCD and putting the Masonry code in dispatch_async(dispatch_get_main_queue(), ^{
// do work here
});
Is this gonna be fixed in the Obj-C version or is the support for iOS 9 not guaranteed?
cheers

Hi are you modifying your views in a background thread? You should do all UI work in the main thread, UIKit may crash otherwise

Feel free to re-open if you are indeed running on the main thread and this is still crashing.


Maximum Energy Calculation with Enderio Capacitor Banks and Xnet

Issue description: This seems to be a slight inconvenience for using Ender IO capacitor banks and the max/min for when to stop rf transfer. The number that is put into the controller is multiplied by the number of capacitor banks that are connected. So it a capacitor bank is meant to be capped at 1000 rf and there are 5 capacitor banks connected, the rf stored is capped at 5000 rf. This happens with all tiers of capacitor banks.
From what was mentioned by McJty, this was an issue here as his mods were using info from the API. This is from McJty/XNet#268

Tested powercells from both RFTools and RFToolsPower just to double check other similar multiblocks and they don't have this issue.
Versions:

Minecraft: 1.12.2
Forge: <IP_ADDRESS>79
McJtyLib: 2.6.7
XNet: 1.6.9
Enderio: 5.0.24

#4571 might be related

I will, we also need to re add our large based power storage api so other mods can read the cap bank properly.


Fix install.sh for non-GNU sed

Sorry if this seems needlessly picky, but I figure low hanging fruit is fruit all the same :)

Duplicate of #3613.
Conflicts with #2589, which does basically the same thing as part of its change.
Fixes #3367
Fixes #3612
Sorry if you didn't see the #3613. That PR was closed because of the conflict with #2589. I just re-opened it now because I think #2589 is unlikely to get merged soon, and we should fix the portability issue you identified.
This implementation has an issue because it's of the form cat file | foo > file. Because the shell executes all parts of the pipeline in parallel, this creates a race condition because both cat and foo will attempt to open the file at the same time. If cat wins, this works. If foo wins, it'll truncate the file, and cat will read an open file, accidentally erasing the file's contents. This is system dependent: the failure will only be observed on some systems and configurations. To be correct, you need to output to a temporary file, and then replace the original input in a subsequent command; not in the same pipeline.
I've re-opened #3613. I think we should merge that one instead, because it doesn't have the race issue.

And I don't think it's "needlessly picky" at all: it's good to be portable. And this exact issue is breaking the installer on OpenBSD. Thanks for the submission!

P.S. Did you run in to another system that lacked sed -i support?

I can't say I did, but I'm running OpenBSD 5.7-release which is the latest release


Name steps

Applied mkpr on .github/workflows/ci.yml
sed s/uses<EMAIL_ADDRESS>checkout\n        uses<EMAIL_ADDRESS>

Pull Request Test Coverage Report for Build<PHONE_NUMBER>4
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 87.135%

Totals

Change from base Build<PHONE_NUMBER>4:
0.0%

Covered Lines:
2538

Relevant Lines:
2901

💛  - Coveralls


[dns_sd] Send an EDNS0 query by default

Based on https://groups.google.com/d/topic/prometheus-users/02kezHbuea4/discussion
Does not attempt to handle a situation where the server does not understand
EDNS0, however that is an unlikely case, and the behaviour of such ancient
systems is hard to predict in advance, so if it does come up, it will need
to be handled on a case-by-case basis.

@SuperQ PTAL

Incidentally, I can't see what Codacy is complaining about because I get bounced to a login page.

Fixed the complaint, and also took the opportunity to rebase against current master.

Thanks!


1696: correct task seq in DO_WHILE

Found the same issue in #1696
Tasks in DO_WHILE task was not shown in conductor-ui. I found it's because DoWhile.execute() use a copy of workflow, and the tasks' seq in the copied workflow was not assigned.
I add the assignation of seq in Task.deepCopy() and the seq of tasks in DO_WHILE task appears in UI.

Pull Request Test Coverage Report for Build 4404

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
17 unchanged lines in 3 files lost coverage.
Overall coverage decreased (-0.09%) to 69.17%

Files with Coverage Reduction
New Missed Lines
%

cassandra-persistence/src/main/java/com/netflix/conductor/dao/cassandra/CassandraMetadataDAO.java
2
55.44%

postgres-persistence/src/main/java/com/netflix/conductor/dao/postgres/PostgresQueueDAO.java
4
92.11%

postgres-persistence/src/main/java/com/netflix/conductor/dao/postgres/PostgresMetadataDAO.java
11
80.0%

Totals

Change from base Build 4399:
-0.09%

Covered Lines:
12515

Relevant Lines:
18093

💛  - Coveralls

Thanks @alex-fu for solving this.

@apanicker-nflx Has the above been merged to main branch too ? How to figure out if this has been merged to main branch?

@techyragu yes, this change is available in the main branch too. The main branch was cut out of master branch at some point in December of last year, and all changes have been actively ported over since.


Issue compiling with ifort v 18.0.1

When I tried compiling with ifort on our campus compute cluster all of the STOP commands result in an error due to the use of a non-constant expression in the argument. Could you specify which versions of ifort or gfortran worked for compiling as is?

      IF (OPEN_ERROR > 0) STOP 'An error occurred while creating the file '//TRIM(ONAME)//', the file already exists'
----------------------------------------------------------------------------------------^

I wanted to include the fix I used below in case anyone runs into this in the near future. The fix is simply to remove the variable from the error message which is of course less helpful than your original design.
sed '/IF (OPEN_ERROR > 0) STOP/s/STOP .*/STOP "An IO error occurred."/' DENSITYTOOL.F90 > DensityTool.F90

Hi
Currently we are using compilations with gfortran version 7.5.0 and 8.2.0
without problems. The problem with the change is the complete lost of
information w.r.t. which file is the problematic one. Also, the fix that
you mention needs more changes, for example do the same change in the caso
of TRIM(INAME), and probably more... I encourage to compile it using
gfortran so that it does not have compilation problems without loss of
features on the code.
Obviously you can make changes to the code if you want it.
Regards - Lucas
El lun, 27 nov 2023 a las 17:43, eihernan @.***>)
escribió:

When I tried compiling with ifort on our campus compute cluster all of
the STOP commands result in an error due to the use of a non-constant
expression in the argument. Could you specify which versions of ifort or
gfortran worked for compiling as is?

IF (OPEN_ERROR > 0) STOP 'An error occurred while creating the file '//TRIM(ONAME)//', the file already exists'
----------------------------------------------------------------------------------------^
I wanted to include the fix I used below in case anyone runs into this in
the near future. The fix is simply to remove the variable from the error
message which is of course less helpful than your original design.
sed '/IF (OPEN_ERROR > 0) STOP/s/STOP .*/STOP "An IO error occurred."/'
DENSITYTOOL.F90 > DensityTool.F90
—
Reply to this email directly, view it on GitHub
https://github.com/llodeiro/DensityTool/issues/8, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AQGZFMILF4FOG4SXC4G7X2DYGT3QDAVCNFSM6AAAAAA74TRM6CVHI2DSMVQWIX3LMV43ASLTON2WKOZSGAYTGMBWGY2DQMQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Thank you for your reply.
I successfully compiled with gfortran version 12.2.0 now.
The fix above for the intel compiler does not need any changes. I compiled successfully with ifort v=18.0.1 before posting. I understand that it removes helpful error messages.
I recommend the README is updated to state the code is not compatible with intel compilers as written and to specify a minimum version of gfortran.
Thanks again!

Hi,
Happy to read you can compile it with gfortran without problems.
Thanks for your clarification, yes, your command line fixes all problems
with ifort. It changes the problematic //TRIM(INAME)// and //TRIM(ONAME)//
lines but also the no problematic ones when the EIGENVAL or CHGCAR are the
reading problem. But the thing is it fixes all and enables to compile with
ifort.
As you suggested, I added in the README file a caution paragraph about this
issue for future users.
Thanks and regards - Lucas Lodeiro
El lun, 27 nov 2023 a las 18:40, eihernan @.***>)
escribió:

Thank you for your reply.
I successfully compiled with gfortran version 12.2.0 now.
The fix above for the intel compiler does not need any changes. I compiled
successfully with ifort v=18.0.1 before posting. I understand that it
removes helpful error messages.
I recommend the README is updated to state the code is not compatible with
intel compilers as written and to specify a minimum version of gfortran.
Thanks again!
—
Reply to this email directly, view it on GitHub
https://github.com/llodeiro/DensityTool/issues/8#issuecomment-1828660938,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AQGZFMJA3QULPIE53YHSAXTYGUCDPAVCNFSM6AAAAAA74TRM6CVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRYGY3DAOJTHA
.
You are receiving this because you commented.Message ID:
@.***>


Run fill and stream extract from Grass directly in LaharZ programme

To save doing these steps in QGIS.

LaharZ now offers the ability to generate the streams and flow direction files using Rich DEM. (Barnes, Richard. 2016. RichDEM: Terrain Analysis Software. http://github.com/r-barnes/richdem)


Large consume of memory when using jax.lax.cond

Description
When using optax, I found an unexpectedly large consumption of memory in the MultiStep method (https://github.com/google-deepmind/optax/issues/472).
Digging deeper, the problem comes from the jax.lax.cond command in this part of the code.
new_updates, new_state = jax.lax.cond(
          state.mini_step < k_steps - 1,
          _mid_step, _final_step, *(state, params, acc_grads))

If I got it right, JAX is allocating memory for both function outputs (_mid_step and _final_step), so this basically doubles the space to store optimizer states and grads in this case.
I was able to solve it by changing the approach to avoid the jax.lax.cond command, but it seems something worth checking on the JAX/XLA side.
What jax/jaxlib version are you using?
jax 0.4.7, jaxlib 0.4.7
Which accelerator(s) are you using?
TPU
Additional system info?
numpy 1.24.4, Python 3.8.10 (default, Nov 22 2023, 10:22:35),  [GCC 9.4.0], Linux uname_result(system='Linux', node='t1v-n-32f4074b-w-0', release='5.13.0-1027-gcp', version='#32~20.04.1-Ubuntu SMP Thu May 26 10:53:08 UTC 2022', machine='x86_64', processor='x86_64')
NVIDIA GPU info
No response

We seem to have missed this issue until now. :/
Not having seen the error message or a reproducing example, my best guess is that what you saw here is a compile-time out-of-memory error. Is that right?
jax.lax.cond lowers to a conditional in HLO (the XLA compiler language). XLA schedules memory completely statically. Since it can't know which branch of a conditional is taken, it must allocate memory for either outcome.

Hi @froystig ,
Sorry for the late answer.

my best guess is that what you saw here is a compile-time out-of-memory error. Is that right?

There is sometime since I debug this error, but yes, I think it was a compile-time OOM.

Since it can't know which branch of a conditional is taken, it must allocate memory for either outcome.

Yes, this seems the issue for me! I understand the reason for allocating memory for both functions, but I'm trying to think if there is a better behavior to be implemented here. Maybe allow sharing the same memory space for output vectors in both functions in case those output vectors share the same shape? IDK the complexity to do such a thing.

Maybe allow sharing the same memory space for output vectors in both functions in case those output vectors share the same shape? IDK the complexity to do such a thing.

That sort of common buffer optimization should already be happening when possible. We also do something similar to what you're describing for closed-over values that share shapes and dtypes among the branch functions. If you're curious, that is handled by these lines in the cond implementation: https://github.com/jax-ml/jax/blob/48c29f62e10b7b29d096848214701e4ae58cf31d/jax/_src/lax/control_flow/conditionals.py#L140-L141
It looks like things are fixed in Optax based on the thread there, and we don't have a reproducing example any more. Is it likely that we have resolved this entirely?

Yeah, its possible to be a non-problem by now. We could check this by trying to reproduce everything in the old version of optax, but I don't know if it's worth it and I don't have the time right now.
Perhaps close this issue and wait for new cases?

Sounds good. Let's close now and reopen later if appropriate. Thanks for the discussion!


Deployment guide does not fit with small monitor resolution

In the guide step 3 for deployment, I can't see the whole message in my monitor (1440 * 900)

fixed in 2e76cb771daaaffe8e8e57f52dc2db71f446b086


<EMAIL_ADDRESS>hash check failed

trid: 2.24-19.04.17 -> 2.24-19.04.21
Updating one outdated app:
Updating 'trid' (2.24-19.04.17 -> 2.24-19.04.21)
Downloading new version
triddefs.zip (1.3 MB) [===============================================================================================================================================================================================================] 100%
Checking hash of triddefs.zip ... ERROR Hash check failed!
App:         trid
URL:         http://mark0.net/download/triddefs.zip
First bytes: 50 4B 03 04 14 00 00 00
Expected:    29f26a88f72f277cdb92220aa6b6af5940788d3f8e3d8fb521b24df7b295ac4b
Actual:      de1857d30c6782b703d8344bef2c36a0a1b431104647c8a7d31e49e4bf1e07f6

ref: https://github.com/lukesampson/scoop/pull/3060
Please wait for a few days for scoop-core migration. If you like to try develop version of scoop, ref: https://github.com/lukesampson/scoop/pull/3367#issuecomment-486597453

Closed by https://github.com/scoopinstaller/scoop-main/commit/845020b718253864eb90569ba1aa39c613fc298a


fix: allow queries that select just void to pass through macros as () instead of struct { _1: () }

Closes #544

@izik1 looks like CI is failing on formatting


blob is not defined

i try to run the example in the description but i get this error "blob is not defined",
is a tyscript file and i importing by commonjs method,
if i try to import is as es6 with
import excel  from "js2excel";
this give me this error :
Cannot read property 'json2excel' of undefined

Maybe your browser doesn't support Blob
try import * as excel from "js2excel" or import {json2excel, excel2json} from 'js2excel';

No response too long


fix typo

@inishchith @nurdtechie98 merge this PR asap, this typo is visible in our new version.

@raghav-dalmia I see some changes which are not related to the PR. Can you please rebase your branch and push.
Thanks

@inishchith looks good to me


Document how to properly use multi_index::get and deprecate related methods that take a reference

We need clear documentation on how to use multi_index::get so that contract developers avoid the common pitfall of copy assigning the reference returned from multi_index::get to a stack-allocated local variable and then passing that into multi_index::modify.
The most common mistake is that users use auto as the typename for the local variable when they should be using auto& or decltype(auto).
Also, because this is a common mistake contract developers make which could lead to undefined behavior, we should deprecate the overloads of modify and erase methods in multi_index that take a reference, and encourage them to use the versions that take const_iterator instead which are much safer.
We should also provide warnings in the documentation about using iterator_to which can have similar undefined behavior if the developer passes in a reference to a stack-allocated object rather than the reference returned by get or by dereferencing a const_iterator. Perhaps we can also provide a safer overload of iterator_to that takes a const_iterator.
Along with deprecating multi_index::get, we should also make sure we do not actually use it in any of the contracts in our repository. Instead we could use multi_index::require_find from #4227.

@arhag i feel this issue is better documented in eosio.cdt repo. BTW I could no longer find this member function (get). Did it get rename?

@arhag this is an old issue when eosiolib (now on eosio.cdt) used to be on eos. If still applicable, please move issue to eosio.cdt, then close here regardless.

Prospective places to add the suggested explainers:

https://developers.eos.io/manuals/eosio.cdt/latest/how-to-guides/multi-index/
https://developers.eos.io/manuals/eosio.cdt/latest/best-practices/