GitHub Issue #122: fix scrubbing and provide test coverage

This pull request covers the following GitHub issues: #122 #52 #31 #15
It's still work in progress but I encourage collaboration.
It includes work on the following:

provide test coverage for scrubbing of $_GET, $_POST, query string, request extras, headers, request body context, $_SESSION, server extras, Data::getCustom(), args and kwargs in frames as mentioned in POST_FORMAT.md, ::log() $extra param
add recursive scrubbing,
add recursive scrubbing of query strings,
remove code duplication and use a single point of scrubbing logic,
refactor placement of scrubbing logic to follow the Python SDK standard

This is ready for review

@coryvirok Good point. I made them public earlier for unit testing, but since tests for scrub() already cover the same data structures no need to expose those methods. Just pushed a commit with a change fo this.

Is there anything blocking this PR from being merged? cc @rokob

LGTM besides some minor comments

@rokob @coryvirok
code climate brought up this code:
https://github.com/ArturMoczulski/rollbar-php/blob/github-122-scrubbing/src/RollbarLogger.php#L35-L40
with this message:
The method log uses an else expression. Else is never necessary and you can simplify the code to work without else.
Do you guys have any suggestion to how to structure this code to not use the else statement? The only way without an else block I can think of is, but that's worse in my opinion:
$response = new Response(0, "Ignored");         if (!$this->config->checkIgnored($payload, $accessToken, $toLog)) {             $scrubbed = $this->scrub($payload);             $response = $this->config->send($scrubbed, $accessToken); }

I would disregard the CodeClimate suggestion in this instance. As for the other items from CC, they're not high priority as long as we have good coverage. i.e. we can do a cleanup round after release.

Also, "never use else" seems like terrible advice.

All suggestions addressed so if there is nothing more this can be merged into master.

👍


Partials / watch clash

Running metalsmith-watch with partials in the templates plugin causes an error where the name of a partial in a file is replaced with its contents and that stops the server running:
[metalsmith-serve] serving /Users/breakers/sites/sarahgp/build at http://localhost:5000
Started watching **/*

  Metalsmith · successfully built to /Users/breakers/sites/sarahgp/build

projects-test.md was changed

/Users/breakers/sites/sarahgp/node_modules/metalsmith-watch/lib/index.js:34
        if ( err ) { throw err; }
                           ^
Error: ENOENT, open '/Users/breakers/sites/sarahgp/templates/<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="user-scalable=0, initial-scale=1.0">
 <link rel="stylesheet" type="text/css" href="css/styles.css">
 <link href="/netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css" rel="stylesheet">
 <script src="http:/d3js.org/d3.v3.min.js" charset="utf-8"></script>
 <script src="/js/vendor/google-analytics.js" async></script>
 <title>Sarah GP</title>
</head> .hbt'

The error is thrown from the watch file but looking at the code, it seems the string is being passed as an option, so I am not sure it is in fact in the watch file where the problematic substitution is being generated.
I am using the CLI for metalsmith with the following metalsmith-json:
{
  "source": "src",
  "destination": "build",
  "metadata": {
    "title": "",
    "description": ""
  },
  "clean": true,
  "plugins": {
    "metalsmith-markdown": {
      "smartypants": true,
      "gfm": true,
      "tables": true,
      "breaks": true
      },
    "metalsmith-templates": {
      "engine": "handlebars",
      "partials": {
        "header": "partials/header"  \\ subdirectory of templates
      }
    },
    "metalsmith-serve": {
      "port": 5000,
      "verbose": true
    },
    "metalsmith-watch": {}
  }
}

I think this is a problem with the watch plugin itself? So I'm going to close it over here.

I've encountered the same issue--I interpreted it as a bug in metalsmith-templates and raised a PR (see https://github.com/segmentio/metalsmith-templates/pull/42).

Thanks, @mpd106!  I need this fix too.


Fix reference counting bug

Fix refcount bug in gh-445 (of course, these are found only immediately after merging)

Coverage remained the same at 56.933% when pulling 2ba978ee8ab519b4b932156cedb8eec6a5a622ac on pv:refcount into 49bdd0e6f8b2578fe7e6f5cc2f48fd0c5b3317db on spacetelescope:master.


Error: For Each on Printer with on Marker

When I Add my HP Laserjet everything works fine but I get these Error in the Log. My Printer is behind a CUPS server.
Seems something is wrong about the markers
[PrinterPlatform] TypeError: markers.forEach is not a function
    at SwitchAccessory.getService (/root/.hoobs/node_modules/homebridge-printer/src/accessories/switch.js:50:21)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)

The Debug Log of the Plugin is as follows
[PrinterPlatform] HP LaserJet: {"version":"2.0","statusCode":"successful-ok","id":3177504,"operation-attributes-tag":{"attributes-charset":"utf-8","attributes-natural-language":"en-us"},"printer-attributes-tag":{"printer-is-accepting-jobs":true,"printer-state":"idle","printer-up-time":1611551364,"queued-job-count":0,"marker-levels":63,"marker-names":"Patrone Schwarz HP CE505A","printer-make-and-model":"HP LaserJet P2055 Postscript (recommended)"}}

so the log seems to have information for markers and marker-level (despite the printer it self says 58% marker) but that might be some CUPS issue

Closed with the pullrequest

Closed with the pullrequest


Update color_map documentation

The implementation and API has recently been changed, and the documentation needs to be updated accordingly.

This also requires updating the examples for the color sensors.

This is done.


Update CI

Please reach out to Annica and she does the reviews when she can find the time. Best, Philipp

Philipp Eisenhauer
Economist
Mail<EMAIL_ADDRESS>Web https://peisenha.github.io
Repository https://github.com/peisenha
Sent with ProtonMail Secure Email.
‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
On Wednesday, November 18, 2020 3:05 PM, Luis Wardenbach<EMAIL_ADDRESS>wrote:

@luward requested your review on: #39 Update CI.
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub, or unsubscribe.


Improve the profiling output of Cargo

Don't use {:?} in profiling output, it's too noisy
Allow an integer to be specified with CARGO_PROFILE indicating how many
levels deep should be printed.

r? @huonw
(rust_highfive has picked a reviewer for you, use r? to override)

@bors r+

 @bors r=brson ffbb8cc

:hourglass: Testing commit ffbb8cc with merge e4f0662...

:sunny: Test successful - cargo-linux-32, cargo-linux-64, cargo-mac-32, cargo-mac-64, cargo-win-32, cargo-win-64


Teams returns to the Team List after minutes / hours of being AFK

I usually records online lessons and they went pretty fine so far.
I noticed one thing tho, that after about 40m/1h of recording the screen, the application automatically goes into the Team List by itself. I don't press any button, it does it all by itself, reducing the owner's screen to the top left part of the screen.
And I manually need to re-size the screen back to full-screen in order to see the owner's stream properly.
Has anyone experienced the same issue?
Thank you

@SlimShadys Are you recording the screen while on a Teams call? Is this something you have seen frequently?

@Gousia-MSFT Very frequently. And yes, I record the screen while on a Teams call.
I wonder if it's something related to the fact I don't touch any buttons for an amount of time since I'm paying attention to the lesson, and so that Teams has this weird behaviour automatically after this fixed amount of time.

@Gousia-MSFT I have this problem also when not recording the screen.
This is the log. Bare in mind that the problem occurred at 09:24:31s.

Thu Apr 30 2020 09:23:40 GMT+0200 (Ora legale dell’Europa centrale) <10836> -- info -- Machine has been idle for 149.469 seconds
Thu Apr 30 2020 09:24:31 GMT+0200 (Ora legale dell’Europa centrale) <10836> -- info -- Blur main window
Thu Apr 30 2020 09:24:31 GMT+0200 (Ora legale dell’Europa centrale) <10836> -- info -- Is foreground set to false
Thu Apr 30 2020 09:24:31 GMT+0200 (Ora legale dell’Europa centrale) <10836> -- event -- duration:<PHONE_NUMBER>474121, name: desktop_foreground_duration, vdiMode: 0, eventpdclevel: 2,
Thu Apr 30 2020 09:24:32 GMT+0200 (Ora legale dell’Europa centrale) <10836> -- event -- panelaction: Action.Outcome: launch, Action.Gesture: click, Action.Scenario: openTrayIconMenu, Action.ScenarioType: other, DataBag.StatusIndicatorState: OnThePhone, vdiMode: 0, eventpdclevel: 2,
Thu Apr 30 2020 09:24:32 GMT+0200 (Ora legale dell’Europa centrale) <10836> -- info -- Setting the taskbar overlay icon - Al telefono
Thu Apr 30 2020 09:24:32 GMT+0200 (Ora legale dell’Europa centrale) <10836> -- info -- Focusing main window
Thu Apr 30 2020 09:24:32 GMT+0200 (Ora legale dell’Europa centrale) <10836> -- info -- Is foreground set to true
Thu Apr 30 2020 09:24:34 GMT+0200 (Ora legale dell’Europa centrale) <10836> -- info -- Blur main window
Thu Apr 30 2020 09:24:34 GMT+0200 (Ora legale dell’Europa centrale) <10836> -- info -- Is foreground set to false
Thu Apr 30 2020 09:24:34 GMT+0200 (Ora legale dell’Europa centrale) <10836> -- event -- duration: 1.7650001049041748, name: desktop_foreground_duration, vdiMode: 0, eventpdclevel: 2,

@SlimShadys Thanks for sharing these details. I have forwarded the report to the right folks!


[zh-cn] sync service-accounts-admin.md

sync service-accounts-admin.md
content/en/docs/reference/access-authn-authz/service-accounts-admin.md

/lgtm


New Plan Card UI fixes (states)

Following our successful go live of #395 , we've discovered a few UI gaps to close:

[ ] (mobile only) Center the card with the pages
[ ] tags should be prioritized over explanation text. if overlap happens, remove text line

[ ] tags should be aligned to top - meaning they come right after the text, no gap

[ ] tags should be limited to 3 lines. additional tags should appear as +(X number of additional tags), see design
[ ] when in search results state and the address searched is within the plan's area (0 distance), the icon with location should appear along with the text, חלה על הכתובת

@GalGend we'll discuss the items here and prioritize after collecting all feedback. This item is for UI issues of different states, not design improvements which we can cover in a different task.


Update gianpaolo-santopaolo.yml

bio update as requested by MK

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: gsantopaolo sign nowYou have signed the CLA already but the status is still pending?  Expected String but got Null. Path 'facebook'.
Invalid type. Expected String but got Null. Path 'twitter'.
Invalid type. Expected String but got Null.

[Error] jen-stirrup.yml is not in supported format: (Line: 18, Col: 18, Idx: 577) - (Line: 18, Col: 19, Idx: 578): While parsing a block mapping, did not find expected key.

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


fix tests with language option

Overview
This PR fixes the current test failures with language option.
Related Issue / Discussion
See PR #510.
Additional Information
Contribution Agreement
(as per https://github.com/geopython/pywps/blob/master/CONTRIBUTING.rst#contributions-and-licensing)

[ ] I'd like to contribute [feature X|bugfix Y|docs|something else] to PyWPS. I confirm that my contributions to PyWPS will be compatible with the PyWPS license guidelines at the time of contribution.
[x] I have already previously agreed to the PyWPS Contributions and Licensing Guidelines

@davidcaron the CONFIG.set overwrite of the config does not work in the tests anymore when using pywps.tests.client_for. To get the tests working again I have added the language=en-US,fr-CA to the test config.

@davidcaron I'm merging this to get the test suite running again. Maybe we can fix the config issue with another PR.


chore: use 'https' protocol for .net 5.0 devfile. Update schema to 2.2.0

What does this PR do?:
use 'https' protocol for .net 5.0 devfile. Update schema to 2.2.0
similar PR for .net 6.0 - https://github.com/devfile/registry/pull/298
Which issue(s) this PR fixes:
Link to github issue(s)
PR acceptance criteria:

[ ] Contributing guide
Have you read the devfile registry contributing guide and followed its instructions?
[ ] Test automation
Does this repository's tests pass with your changes?
[ ] Documentation
Does any documentation need to be updated with your changes?
[ ] Check Tools Provider
Have you tested the changes with existing tools, i.e. Odo, Che, Console? (See devfile registry contributing guide on how to test changes)

How to test changes / Special notes to the reviewer:
try it out on Developer Sandbox - https://workspaces.openshift.com/#https://raw.githubusercontent.com/devfile/registry/dff9ad0e8c2ce5cc6de8e5d05b82e80bb1155bc0/stacks/dotnet50/devfile.yaml

/retest

/approve


batch norm fails on validation batch sizes larger than 1024

I'm trying to train a network and can get my training batch size up to 1,024,000 given the small size of the inputs, but validation will fail if I have a batch size greater than 1024. The large sample size is necessary because it drastically increases speed (~1million samples/sec vs ~40k samples/sec) and allows it to converge faster. I can't set the training size to the large number and the validation size to another number or another error is raised.
Here is what it looks like when I set both to 1024 and it works:
INFO:root:Start training with [gpu(0), gpu(1), gpu(2), gpu(3)]
INFO:root:Epoch[0] Batch [50]	Speed: 43134.38 samples/sec	Train-mse=2.974635
INFO:root:Epoch[0] Batch [100]	Speed: 41277.91 samples/sec	Train-mse=4.068618
INFO:root:Epoch[0] Batch [150]	Speed: 40782.87 samples/sec	Train-mse=9.751048
INFO:root:Epoch[0] Batch [200]	Speed: 41300.88 samples/sec	Train-mse=8.763692
INFO:root:Epoch[0] Batch [250]	Speed: 41711.20 samples/sec	Train-mse=5.875643
INFO:root:Epoch[0] Time cost=6.443
INFO:root:Saved checkpoint to "avocado-chr21-0001.params"
INFO:root:Epoch[0] Validation-mse=6.179373
INFO:root:Epoch[1] Batch [50]	Speed: 42662.65 samples/sec	Train-mse=4.892629
INFO:root:Epoch[1] Batch [100]	Speed: 41145.89 samples/sec	Train-mse=5.271115
INFO:root:Epoch[1] Batch [150]	Speed: 41511.60 samples/sec	Train-mse=5.352612
INFO:root:Epoch[1] Batch [200]	Speed: 41291.26 samples/sec	Train-mse=8.569360
INFO:root:Epoch[1] Batch [250]	Speed: 41208.87 samples/sec	Train-mse=8.101565
INFO:root:Epoch[1] Time cost=6.179
INFO:root:Saved checkpoint to "avocado-chr21-0002.params"
INFO:root:Epoch[1] Validation-mse=6.169909

Here is the output when I set the batch size to 1,024,000:
INFO:root:Start training with [gpu(0), gpu(1), gpu(2), gpu(3)]
INFO:root:Epoch[0] Batch [50]	Speed: 1146240.87 samples/sec	Train-mse=4.897271
INFO:root:Epoch[0] Batch [100]	Speed: 1129582.75 samples/sec	Train-mse=4.481242
INFO:root:Epoch[0] Batch [150]	Speed: 1098659.87 samples/sec	Train-mse=4.279920
INFO:root:Epoch[0] Batch [200]	Speed: 1124307.09 samples/sec	Train-mse=3.947533
INFO:root:Epoch[0] Batch [250]	Speed: 1162055.74 samples/sec	Train-mse=4.124683
INFO:root:Epoch[0] Time cost=22.961
INFO:root:Saved checkpoint to "avocado-chr21-0001.params"
[19:24:20] /net/noble/vol1/home/jmschr/mxnet/dmlc-core/include/dmlc/logging.h:235: [19:24:20] src/operator/./cudnn_batch_norm-inl.h:140: Check failed: (cudnnBatchNormalizationForwardInference(s->dnn_handle_, CUDNN_BATCHNORM_SPATIAL, &a, &b, io_desc_, x.dptr_, io_desc_, y.dptr_, mean_desc_, gamma.dptr_, beta.dptr_, moving_mean.dptr_, moving_inv_var.dptr_, param_.eps)) == (CUDNN_STATUS_SUCCESS)
[[19:24:20] [[19:24:20] /net/noble/vol1/home/jmschr/mxnet/dmlc-core/include/dmlc/logging.h19:24:20] /net/noble/vol1/home/jmschr/mxnet/dmlc-core/include/dmlc/logging.h:19:24:20] /net/noble/vol1/home/jmschr/mxnet/dmlc-core/include/dmlc/logging.h:235:235: [19:24:20] src/operator/./cudnn_batch_norm-inl.h:140: Check failed: (cudnnBatchNormalizationForwardInference(s->dnn_handle_, CUDNN_BATCHNORM_SPATIAL, &a, &b, io_desc_, x.dptr_, io_desc_, y.dptr_, mean_desc_, gamma.dptr_, beta.dptr_, moving_mean.dptr_, moving_inv_var.dptr_, param_.eps)) == (CUDNN_STATUS_SUCCESS)
: [19:24:20] src/operator/./cudnn_batch_norm-inl.h:140: Check failed: (cudnnBatchNormalizationForwardInference(s->dnn_handle_, CUDNN_BATCHNORM_SPATIAL, &a, &b, io_desc_, x.dptr_, io_desc_, y.dptr_, mean_desc_, gamma.dptr_, beta.dptr_, moving_mean.dptr_, moving_inv_var.dptr_, param_.eps)) == (CUDNN_STATUS_SUCCESS)
/net/noble/vol1/home/jmschr/mxnet/dmlc-core/include/dmlc/logging.h:235: [19:24:20] src/engine/./threaded_engine.h:306: [19:24:20] src/operator/./cudnn_batch_norm-inl.h:140: Check failed: (cudnnBatchNormalizationForwardInference(s->dnn_handle_, CUDNN_BATCHNORM_SPATIAL, &a, &b, io_desc_, x.dptr_, io_desc_, y.dptr_, mean_desc_, gamma.dptr_, beta.dptr_, moving_mean.dptr_, moving_inv_var.dptr_, param_.eps)) == (CUDNN_STATUS_SUCCESS)
An fatal error occurred in asynchronous engine operation. If you do not know what caused this error, you can try set environment variable MXNET_ENGINE_TYPE to NaiveEngine and run with debugger (i.e. gdb). This will force all operations to be synchronous and backtrace will give you the series of calls that lead to this error. Remember to set MXNET_ENGINE_TYPE back to empty after debugging.
[19:24:20] /net/noble/vol1/home/jmschr/mxnet/dmlc-core/include/dmlc/logging.h235: [19:24:20] src/operator/./cudnn_batch_norm-inl.h:140: Check failed: (cudnnBatchNormalizationForwardInference(s->dnn_handle_, CUDNN_BATCHNORM_SPATIAL, &a, &b, io_desc_, x.dptr_, io_desc_, y.dptr_, mean_desc_, gamma.dptr_, beta.dptr_, moving_mean.dptr_, moving_inv_var.dptr_, param_.eps)) == (CUDNN_STATUS_SUCCESS)
:235: [19:24:20] src/engine/./threaded_engine.h:306: [19:24:20] src/operator/./cudnn_batch_norm-inl.h:140: Check failed: (cudnnBatchNormalizationForwardInference(s->dnn_handle_, CUDNN_BATCHNORM_SPATIAL, &a, &b, io_desc_, x.dptr_, io_desc_, y.dptr_, mean_desc_, gamma.dptr_, beta.dptr_, moving_mean.dptr_, moving_inv_var.dptr_, param_.eps)) == (CUDNN_STATUS_SUCCESS)
An fatal error occurred in asynchronous engine operation. If you do not know what caused this error, you can try set environment variable MXNET_ENGINE_TYPE to NaiveEngine and run with debugger (i.e. gdb). This will force all operations to be synchronous and backtrace will give you the series of calls that lead to this error. Remember to set MXNET_ENGINE_TYPE back to empty after debugging.
terminate called after throwing an instance of 'dmlc::Error'
terminate called recursively
  what():  [19:24:20] src/engine/./threaded_engine.h:306: [19:24:20] src/operator/./cudnn_batch_norm-inl.h:140: Check failed: (cudnnBatchNormalizationForwardInference(s->dnn_handle_, CUDNN_BATCHNORM_SPATIAL, &a, &b, io_desc_, x.dptr_, io_desc_, y.dptr_, mean_desc_, gamma.dptr_, beta.dptr_, moving_mean.dptr_, moving_inv_var.dptr_, param_.eps)) == (CUDNN_STATUS_SUCCESS)
An fatal error occurred in asynchronous engine operation. If you do not know what caused this error, you can try set environment variable MXNET_ENGINE_TYPE to NaiveEngine and run with debugger (i.e. gdb). This will force all operations to be synchronous and backtrace will give you the series of calls that lead to this error. Remember to set MXNET_ENGINE_TYPE back to empty after debugging.

Here is the output when I set the training batch size to 1,024,000 and the validation batch size to 1,024:
INFO:root:Start training with [gpu(0), gpu(1), gpu(2), gpu(3)]
INFO:root:Epoch[0] Batch [50]	Speed: 1162164.40 samples/sec	Train-mse=4.905726
INFO:root:Epoch[0] Batch [100]	Speed: 1200327.12 samples/sec	Train-mse=4.222562
INFO:root:Epoch[0] Batch [150]	Speed: 1217945.84 samples/sec	Train-mse=3.408096
INFO:root:Epoch[0] Batch [200]	Speed: 1285835.83 samples/sec	Train-mse=2.877194
INFO:root:Epoch[0] Batch [250]	Speed: 1278156.80 samples/sec	Train-mse=2.740534
INFO:root:Epoch[0] Time cost=210.240
INFO:root:Saved checkpoint to "avocado-chr21-0001.params"
[19:34:28] /net/noble/vol1/home/jmschr/mxnet/dmlc-core/include/dmlc/logging.h:235: [19:34:28] include/mxnet/ndarray.h:244: Check failed: (shape_[0]) >= (end) Slice end index out of range
Traceback (most recent call last):
  File "avocado_test.py", line 101, in <module>
    epoch_end_callback=mx.callback.do_checkpoint("avocado-chr21")
  File "/net/noble/vol1/home/jmschr/anaconda/lib/python2.7/site-packages/mxnet-0.7.0-py2.7.egg/mxnet/model.py", line 787, in fit
    sym_gen=self.sym_gen)
  File "/net/noble/vol1/home/jmschr/anaconda/lib/python2.7/site-packages/mxnet-0.7.0-py2.7.egg/mxnet/model.py", line 287, in _train_multi_device
    executor_manager.load_data_batch(eval_batch)
  File "/net/noble/vol1/home/jmschr/anaconda/lib/python2.7/site-packages/mxnet-0.7.0-py2.7.egg/mxnet/executor_manager.py", line 394, in load_data_batch
    self.curr_execgrp.load_data_batch(data_batch)
  File "/net/noble/vol1/home/jmschr/anaconda/lib/python2.7/site-packages/mxnet-0.7.0-py2.7.egg/mxnet/executor_manager.py", line 245, in load_data_batch
    _load_data(data_batch, self.data_arrays)
  File "/net/noble/vol1/home/jmschr/anaconda/lib/python2.7/site-packages/mxnet-0.7.0-py2.7.egg/mxnet/executor_manager.py", line 88, in _load_data
    _load_general(batch.data, targets)
  File "/net/noble/vol1/home/jmschr/anaconda/lib/python2.7/site-packages/mxnet-0.7.0-py2.7.egg/mxnet/executor_manager.py", line 84, in _load_general
    d_src[slice_idx].copyto(d_dst)
  File "/net/noble/vol1/home/jmschr/anaconda/lib/python2.7/site-packages/mxnet-0.7.0-py2.7.egg/mxnet/ndarray.py", line 241, in __getitem__
    return self._slice(in_slice.start, in_slice.stop)
  File "/net/noble/vol1/home/jmschr/anaconda/lib/python2.7/site-packages/mxnet-0.7.0-py2.7.egg/mxnet/ndarray.py", line 281, in _slice
    self.handle, start, stop, ctypes.byref(handle)))
  File "/net/noble/vol1/home/jmschr/anaconda/lib/python2.7/site-packages/mxnet-0.7.0-py2.7.egg/mxnet/base.py", line 77, in check_call
    raise MXNetError(py_str(_LIB.MXGetLastError()))
mxnet.base.MXNetError: [19:34:28] include/mxnet/ndarray.h:244: Check failed: (shape_[0]) >= (end) Slice end index out of range

Is there a way that I can utilize both batch norm and large batch sizes while also using a validation set? If I only have a training set they both work, it only fails on the validation step.
Thanks!

cudnn doesn't support too big batch sizes.
If you want to change batch size between train and val you need to make a new module

Why can it train successfully with large batch sizes, just not validate?

cudnnBatchNormalizationForwardTraining vs cudnnBatchNormalizationForwardInference

Thanks for the answer. I guess I meant more conceptually, why can cudnnBatchNormalizationForwardTraining support massive batch sizes but cudnnBatchNormalizationForwardInference not?

Dunno. You have to ask nvidia @ap-hynninen

If I load up a pretrained model and predict with a large batch size (102400) it appears to work without problems. Do you know why this might work but it won't work during training?

Not sure. I'll look into it...

The batch size for cudnnBatchNormalizationForwardInference is limited to < 65535

Hi @ap-hynninen thanks for the response. I'm noticing it fails on batch sizes even as small as ~5000 samples. Do you know why this could be? Also, why is there a limit on the inference step but not the training step? Thanks in advance!
Also, @piiswrong I was incorrect. I had thought I was setting it higher but I don't think I was.

Apparently there's still a 1024 limitation when the batch normalization mode is CUDNN_BATCHNORM_PER_ACTIVATION.

Update cuDNN to version 5.1 (CUDA 8.0) instead of 5.0x (CUDA 7.5).

This issue is closed due to lack of activity in the last 90 days. Feel free to ping me to reopen if this is still an active issue. Thanks!


Omnisharp pane should be togglable

It takes up a lot of valuable screen space

This is different from the error pane that is toggleable:

That is a config item in the linter package


Replace Trackablescrollview with Trackablescroller across the

Why?
In a previous PR, we developed a new component TrackableScroller to track the scrolling offset of a scroller in a better way.
The point of this PR is to replace the old component with the new one
How?
Replaced every scroller across the app and deleted the old component (TrackableScroller) along with the unnecessary dependencies (PullableScrollView)
Testing
Ensure everything looks as expected in the following screens

Home
Profile tab
Every tab of station details
Reward details
Rewards timeline
Boost view
Explorer stations list
My wallet
Station settings
History data
Net stats

Additional context
fixes fe-1348

Summary by CodeRabbit
Release Notes

New Features

Introduced TrackableScrollOffsetObject to manage scroll offsets.
Added didEndDraggingAction closure for improved user interaction feedback.

UI Enhancements

Replaced TrackableScrollView with TrackableScroller across multiple views, improving scrolling behavior and visual presentation.
Added .scrollIndicators(.hidden) to enhance UI aesthetics.

Bug Fixes

Improved error handling and state management in various view models.

These updates streamline user interactions and enhance the overall experience within the application.

@pantelisss Everything looks good but before approving it a small question, has the scoller changed in Forecast Details as well? Because I couldn't find it in the changed files.
I also noticed that in some occassions you replaced TrackableScrollView with ScrollView and in others with TrackableScroller, what's their difference?

If there is no need for pull to refresh, we use the native ScrollView. In every other case (track offset and pull to refresh), we use the TrackableScroller.


fix: slack notification url

Fixes https://github.com/bucketeer-io/bucketeer/issues/821
After the Organization implementation, we must use the url_code instead of environment_id for all URLs.
I fixed it to use the urlCode and added environmentName to the notification, too.

This pull request mainly involves changes in the pkg/batch/jobs/notification/domain_event_informer.go and pkg/notification/sender/notifier/slack.go files, with changes focusing on the replacement of environmentID with environmentName and environmentURLCode. This is reflected in the creation of notification events, handling of messages, and logging. Test files have been updated to reflect these changes. Additional logging has also been added in pkg/eventpersister/persister/persister.go.
Changes to domain_event_informer.go:

Added logging for when the DomainEventInformer fails to pull a message from the message channel.
Replaced environmentID with environmentName and environmentURLCode in handleMessage and createNotificationEvent methods. [1] [2] [3] [4]

Changes to domain_event_test.go:

Updated test cases to use environmentName and environmentURLCode instead of environmentID. [1] [2] [3] [4]

Changes to other files:

Replaced environmentID with environmentName and environmentURLCode in various files and methods. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16]
Added debug logging in pkg/eventpersister/persister/persister.go when the update evaluation count timer is triggered.

I have commented on some points of interest.
And one more thing, Isn't it necessary to take measures such as returning an error if environmentURLCode is empty in createNotificationEvent() etc.?

As default, the url_code is a required field. So there is no need.


easier backend dev setup

don't restrict CORS access to cdn.ampproject.org
set backend endpoint in backend:serve instead of backend:watch
migrate to gulp-run instead of gulp-shell which is not flexible enough

Fixes #501

@dandv FYI

After git checkout backend-run, npm install, gulp build and gulp serve, http://localhost:8080/components/amp-list/ returns the same errors:

The problem is this only works in watch mode -> the build runs before the host variable is set in serve.

Indeed, gulp backend:serve doesn't solve the problem.


feat: add to bootstrap5 zh-tw link

Not delete, revert the change, i.e. do not touch any unrelated files.

oh...I edit package-lock.json.
sorry.


Ethan's review: Abstract

@EthanHeilman

“ZeroLink is the first to offer protections against all the …” is too strong of a statement. What about zkSnarks. Or especially CoinShuffle++ with is much more complex than zerolink but offers better privacy, including very strong privacy at the network layer. You should qualify this statement more, why does this zerolink have this property? Better coin selection? Etc...

zkSnarks, Monero, zerocoin, zcash does not attacks from all angle. Private transaction retrieval or broadcasting is out of their scope, even if it's possible, unlike ZeroLink they don't try to force their users to use it that way, which can result in messy surprises. As a prime example: everybody is using monero through MyMonero web wallet. CoinShuffle++ has DiceMix, which provides stronger, altough less tested network layer anonymity, than Tor in ZeroLink, however the proposal still doesn't factors all the different ways the Wallet Privacy Framework of ZeroLink does factor in. See ShufflePuff. Great CoinShuffle implementation, run on Mycelium's server, which can reestabilish the links.
That being said I removed that statement, it might lead to hostility and confusion, due to pure ignorance the misunderstanding that I was not able to articulate this point properly.
@EthanHeilman Do you agree?


Incorrect macro for register save in arch_test.h

Error: unrecognized opcode `sigupd( x1,x1)'
arch_test.h:
.macro RVTEST_SAVE_GPRS BASEREG REG_SV_ADDR     // optionally save GPRs
.option push
.option norvc
.set offset,0
LA(     \BASEREG, \REG_SV_ADDR)               //this destroys basereg, but saves rest
SIGUPD( \BASEREG, x1)
...
Changing these to RVTEST_SIGUPD allowed compile to proceed

Sigh -  if it isn't tested, it's borken.
Will be fixed in the next merge.
Because registers may hold addresses that will different between DUT and
reference models,
we expect that this will only be used to debug failing code.
We could add an extra parameter to this to mark which registers  do/don't
hold addresses, and skip storing if its an address to make it more useful
On Wed, Apr 26, 2023 at 10:26 AM ssecatchseagate @.***>
wrote:

Error: unrecognized opcode `sigupd( x1,x1)'
arch_test.h:
.macro RVTEST_SAVE_GPRS BASEREG REG_SV_ADDR // optionally save GPRs
.option push
.option norvc
.set offset,0
LA( \BASEREG, \REG_SV_ADDR) //this destroys basereg, but saves rest
SIGUPD( \BASEREG, x1)
...
Changing these to RVTEST_SIGUPD allowed compile to proceed
—
Reply to this email directly, view it on GitHub
https://github.com/riscv-non-isa/riscv-arch-test/issues/337, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AHPXVJSBIT2PQWW5FTBAPRDXDFLC3ANCNFSM6AAAAAAXMX4BOA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Hi Allen,
I do think this is useful.
While, all these in theory should get echo'd into the signature file already as part of the regular checking, an additional check is useful that other registers didn't corrupted, since it's "free".*
And if I'm going to be debugging a test by putting this in halfway, I don't want false negatives if I'm already debugging stuff, so I wanted it working already for the "easy case"
*Locally, the past version, I had masked out any registers that held test only values to ensure that they matched.
-Stacey

From: Allen Baum @.>
Sent: Wednesday, April 26, 2023 4:40 PM
To: riscv-non-isa/riscv-arch-test @.>
Cc: Stacey Secatch @.>; Author @.>
Subject: Re: [riscv-non-isa/riscv-arch-test] Incorrect macro for register save in arch_test.h (Issue #337)
This message has originated from an External Source. Please use proper judgment and caution when opening attachments, clicking links, or responding to this email.
Sigh - if it isn't tested, it's borken.
Will be fixed in the next merge.
Because registers may hold addresses that will different between DUT and
reference models,
we expect that this will only be used to debug failing code.
We could add an extra parameter to this to mark which registers do/don't
hold addresses, and skip storing if its an address to make it more useful
On Wed, Apr 26, 2023 at 10:26 AM ssecatchseagate @.***>
wrote:

Error: unrecognized opcode `sigupd( x1,x1)'
arch_test.h:
.macro RVTEST_SAVE_GPRS BASEREG REG_SV_ADDR // optionally save GPRs
.option push
.option norvc
.set offset,0
LA( \BASEREG, \REG_SV_ADDR) //this destroys basereg, but saves rest
SIGUPD( \BASEREG, x1)
...
Changing these to RVTEST_SIGUPD allowed compile to proceed
—
Reply to this email directly, view it on GitHub
https://github.com/riscv-non-isa/riscv-arch-test/issues/337, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AHPXVJSBIT2PQWW5FTBAPRDXDFLC3ANCNFSM6AAAAAAXMX4BOA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

—
Reply to this email directly, view it on GitHubhttps://github.com/riscv-non-isa/riscv-arch-test/issues/337#issuecomment-1524126284, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A3R2BO4US2VVYK55CFZ7TCLXDGP7BANCNFSM6AAAAAAXMX4BOA.
You are receiving this because you authored the thread.Message ID: @.***>
Seagate Internal


feat!: iterable pinning

This PR reworks the pinning to be async generators instead of promises with support for batching, granting users more fine-grained control of the pinning/downloading of blocks.
As expected using a higher batch number gives much better performance than the old pinning system since its doing more fetching in parallel. A batch number of 1 will replicate the old system of a simple queue.
This is a basic example of throttling the pins download, more advanced systems can be made to control how many large pins can be downloaded at once with various speeds by calling next on the iterables.
// Pin the first 10 blocks of the CID.
for await (const cids of helia.pins.add(cid, { batch: 10 }) {
  // Wait for a second before pinning the next 10 blocks.
  await new Promise(resolve => setTimeout(resolve, 1000)
}

// The CID is now pinned.

Another example, altering the batch size:
const itr = helia.pins.add(cid, { batch: 8 })

// Pin the first 8 blocks.
await itr.next()

// Pin the next 5 blocks.
await itr.next(5)

Adding pins:
// Before:
await helia.pins.add(cid)

// After:
await all(helia.pins.add(cid))

Removing pins:
// Before:
await helia.pins.rm(cid)

// After:
await all(helia.pins.rm(cid))

Getting the pinned value:
// Before:
const pin = await helia.pins.add(cid)

// After:
const itr = helia.pins.add(cid)

let next = await itr.next()

while (!next.done) {
  next = await itr.next()
}

const pin = next.value

It might be desirable to change the default behavior of the first iteration call to allow it to pull all the local blocks without a batch limit. This would allow pins to quickly catch up to where they were if the program was interrupted without having to await the next iteration call, giving the user an easy way to have 'resume download' type behavior.
Something like this:
const itr = helia.pins.add(cid, { syncLocal: true })[Symbol.asyncIterator]()

// Fetches all the blocks that are in the local blockstore not limited to batch numbers:
const localCids = await itr.next()

// Fetches the next blocks from the network according to the batch number:
const downloadedCids = await itr.next()

This is interesting, but I wonder if we couldn't simplify the internal implementation by just having it be a generator that pins blocks as fast as possible, then if the user wants to batch them up (or parallelise, or parallel batch) they can use existing modules like it-batch, it-parallel, it-parallel-batch or a combination of things from streaming-iterables?
That would give them a lot more control over the performance characteristics of pinning, and we'll have a simpler codebase to maintain.

That would give them a lot more control over the performance characteristics of pinning, and we'll have a simpler codebase to maintain.

I agree and have updated the code.
Adding pins:
// Before:
await helia.pins.add(cid)

// After:
await all(parallel(helia.pins.add(cid), { concurrency: 1 }))

Removing pins:
// Before:
await helia.pins.rm(cid)

// After:
await all(parallel(helia.pins.rm(cid), { concurrency: 1 }))

Getting the pinned value:
// Before:
const pin = await helia.pins.add(cid)

// After:
const itr = helia.pins.add(cid)

let output = await itr.next()

while (output.done === false) {
  await output.value()
  output = await itr.next()
}

const pin = next.value

One thing this is still missing that I would like to see is being able to continue a pin where it left off or catch up without rate limiting pinning of local blocks. The simple use case that illustrates this would be the rate limited pinning of a large DAG and the program crashes part way and you want it to continue where it left off.
Do you think a skipLocal option is the best way to implement this or is there a better way?

dismissed my review and pointed to regression seen when updating benchmarks/gc in https://github.com/ipfs/helia/pull/346

I'm going to merge this so we have the API changes in and the v3 release is unblocked, we can address the performance characteristics in a follow-up.
The existing "resumable pinning" change is useful though it's more "restartable pinning" than "resumable" - I'll open another issue to discuss.


🐛 Unwanted truncation for governance action links

Area
Voting Pillar
Domain
sanchogov.tools
Which wallet were you using?
No response
Context
Reference links on proposals are truncated and broken in some cases
see ab633bb08e0e9fe33eef865b7acc079c8b2f360fb851a97230d135bd4fd8fc07#0
(see full metadata doc)
Steps to reproduce
see ab633bb08e0e9fe33eef865b7acc079c8b2f360fb851a97230d135bd4fd8fc07#0
Actual behavior
The second reference link is completely truncated off of the screen
The reference URIs are also not rendered on the line below

Expected behavior
All reference links are shown correctly
Allowing the both the label and URI to be seen

@m-i-k-e Wouldn't it be better to display label and url below label instead of both in one row?

I don't see any functional benefit to treating the Supporting Links section as a 2-wide grid anyway. Most URIs will always be long enough to cause undesirable truncation.
I would strongly advocate simply making this a vertically linear "list" of items when there is one or more reference links to display.

I agree with @MSzalowski and @Crypto2099
You can proceed @MSzalowski

We have a new design for this, but it's not been implemented. It does use a 1 x 2 table, but the links are not truncated. In any case, we don't want truncation.


Text getting selected through out the wizard when double clicking on the wizard page

Describe the bug
On performing double click on the wizard page or the free space after content the entire text content in the following wizard pages is getting selected.
How to reproduce
Added a  screen recording which helps to reproduce the issue
https://screencast-o-matic.com/watch/cqhuXyTbMF
https://screencast-o-matic.com/watch/cqhuXCTbMM
Steps to reproduce the behavior:
(https://clarity-light-theme-v11-prxdvg.stackblitz.io).
https://stackblitz.com/edit/clarity-light-theme-v11-prxdvg

Launch a wizard.
Double Click on empty space after content on wizard-page and select wizard next button to navigate next page.
we can observe that the entire content in the all the upcoming next pages in the wizard are selected.

Possible solution
As the issue is producing due to double click we are proposing a solution by disabling the double clicks on entire application UI that can be override in component level if required in future. But we have some queries to consider this as a potential solution,

Is it recommended to disable the double clicks on entire UI? Will it effect any of the internal functionalities of other components and any possibility of causing regressions in the application?

Is it possible to override the individual clarity component click event behavior in future when required?

Also, We wanted to know any of the existing clarity components is bounded with double click events?

Expected behavior
On performing double click the text must be selected either in the selected page or particular content but the selection should not be carried to consecutive pages. This effects the usability and consistency of the application.
Versions
App

Angular: [5]
Node: [v 6.10.3]
Clarity: [0.11]

Device:

Type: [Dell Latitude 7480]
OS: [windows]
Browser [chrome]
Version [74.0.3729.169]

I can reproduce this issue, but it is generally a minor issue. We do not advise blocking click behaviors as this might break other things and cause issues for how people use their devices.

This issue is about a version of Clarity that is out of support. In an effort to better manage our backlog, we are closing this issue. We recognize that some of these issues may remain problematic for you, but to help us to be able to prioritize it we ask for a new GitHub issue with an updated demo with a recent supported version of Clarity.

This issue is about a version of Clarity that is out of support. In an effort to better manage our backlog, we are closing this issue. We recognize that some of these issues may remain problematic for you, but to help us to be able to prioritize it we ask for a new GitHub issue with an updated demo with a recent supported version of Clarity.


SHOTMANAGER: Matt's changes ready for Beta RC4

All my changes to the Shotmanager repo. Commit messages describe all the changes.

matt - I’ve done a quick review of all your PR/s . looks good. If there's any fallout, we’ll deal with any minor issues after.


Generals Question

Hey, I love your theme and use it for 2 of my own projects, especially tailwind css.
Are you going to develop this theme in the future?
Best regards
Patrick

We will keep this theme up to date with Vue Storefront.
As far as feature implementations, we don’t have any roadmap planned for
it.
On Fri, Jul 12, 2019 at 6:57 AM PatrickKluwig<EMAIL_ADDRESS>wrote:

Hey, I love your theme and use it for 2 of my own projects, especially
tailwind css.
Are you going to develop this theme in the future?
Best regards
Patrick
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/AbsoluteWebServices/vuetique-theme/issues/38?email_source=notifications&email_token=AABM4SHBSGWXA6B5E6GBRN3P7BPQBA5CNFSM4ICHHW22YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4G63HQXQ,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AABM4SEORNO2QLUMUURLAE3P7BPQBANCNFSM4ICHHW2Q
.

--
Regards,
Georgiy Slobodenyuk
Software Architect
AbsoluteWeb.com
https://www.absolutewebservices.com/?utm_source=email-signature&utm_medium=email&utm_campaign=email-signature
[image: Absolute Web]
https://www.absolutewebservices.com/?utm_source=email-signature&utm_medium=email&utm_campaign=email-signature
MIAMI, FL. SINCE 1999


Inline Assembly for detecting CPU features on Arm

Following the discussion in #137, it would be great to reach some uniformity in feature detection on x86 and Arm. On the latter, we can't yet use SVE, and only differentiate "extended NEON" and serial code. Assuming broader adoption among Arm devices, we need to isolate the features we use in different sub-generations of Arm v8, and consider bit-level operations from SVE.
https://github.com/ashvardanian/SimSIMD/blob/18d17686124ddebd9fe55eee56b2e0273a613d4b/include/simsimd/simsimd.h#L208-L228
In other libraries, like SimSIMD, I currently use the Linux API to check for those capabilities. But that is less portable than using inline Assembly, and we may need to detect those features on the upcoming Apple M-series chips.

There is now a better reference for how to implement this, also coming from SimSIMD:
    // Read CPUID registers directly
    unsigned long id_aa64isar0_el1 = 0, id_aa64isar1_el1 = 0, id_aa64pfr0_el1 = 0, id_aa64zfr0_el1 = 0;

    // Now let's unpack the status flags from ID_AA64ISAR0_EL1
    // https://developer.arm.com/documentation/ddi0601/2024-03/AArch64-Registers/ID-AA64ISAR0-EL1--AArch64-Instruction-Set-Attribute-Register-0?lang=en
    __asm__ __volatile__("mrs %0, ID_AA64ISAR0_EL1" : "=r"(id_aa64isar0_el1));
    // DP, bits [47:44] of ID_AA64ISAR0_EL1
    unsigned supports_integer_dot_products = ((id_aa64isar0_el1 >> 44) & 0xF) >= 1;
    // Now let's unpack the status flags from ID_AA64ISAR1_EL1
    // https://developer.arm.com/documentation/ddi0601/2024-03/AArch64-Registers/ID-AA64ISAR1-EL1--AArch64-Instruction-Set-Attribute-Register-1?lang=en
    __asm__ __volatile__("mrs %0, ID_AA64ISAR1_EL1" : "=r"(id_aa64isar1_el1));
    // I8MM, bits [55:52] of ID_AA64ISAR1_EL1
    unsigned supports_i8mm = ((id_aa64isar1_el1 >> 52) & 0xF) >= 1;
    // BF16, bits [47:44] of ID_AA64ISAR1_EL1
    unsigned supports_bf16 = ((id_aa64isar1_el1 >> 44) & 0xF) >= 1;

    // Now let's unpack the status flags from ID_AA64PFR0_EL1
    // https://developer.arm.com/documentation/ddi0601/2024-03/AArch64-Registers/ID-AA64PFR0-EL1--AArch64-Processor-Feature-Register-0?lang=en
    __asm__ __volatile__("mrs %0, ID_AA64PFR0_EL1" : "=r"(id_aa64pfr0_el1));
    // SVE, bits [35:32] of ID_AA64PFR0_EL1
    unsigned supports_sve = ((id_aa64pfr0_el1 >> 32) & 0xF) >= 1;
    // AdvSIMD, bits [23:20] of ID_AA64PFR0_EL1 can be used to check for `fp16` support
    //  - 0b0000: integers, single, double precision arithmetic
    //  - 0b0001: includes support for half-precision floating-point arithmetic
    unsigned supports_fp16 = ((id_aa64pfr0_el1 >> 20) & 0xF) == 1;

    // Now let's unpack the status flags from ID_AA64ZFR0_EL1
    // https://developer.arm.com/documentation/ddi0601/2024-03/AArch64-Registers/ID-AA64ZFR0-EL1--SVE-Feature-ID-Register-0?lang=en
    if (supports_sve)
        __asm__ __volatile__("mrs %0, ID_AA64ZFR0_EL1" : "=r"(id_aa64zfr0_el1));
    // I8MM, bits [47:44] of ID_AA64ZFR0_EL1
    unsigned supports_sve_i8mm = ((id_aa64zfr0_el1 >> 44) & 0xF) >= 1;
    // BF16, bits [23:20] of ID_AA64ZFR0_EL1
    unsigned supports_sve_bf16 = ((id_aa64zfr0_el1 >> 20) & 0xF) >= 1;
    // SVEver, bits [3:0] can be used to check for capability levels:
    //  - 0b0000: SVE is implemented
    //  - 0b0001: SVE2 is implemented
    //  - 0b0010: SVE2.1 is implemented
    // This value must match the existing indicator obtained from ID_AA64PFR0_EL1:
    //    unsigned supports_sve = ((id_aa64zfr0_el1) & 0xF) >= 1;
    //    unsigned supports_sve2 = ((id_aa64zfr0_el1) & 0xF) >= 2;
    unsigned supports_neon = 1; // NEON is always supported

    return (simsimd_capability_t)(                                                                    //
        (simsimd_cap_neon_k * (supports_neon)) |                                                      //
        (simsimd_cap_neon_f16_k * (supports_neon && supports_fp16)) |                                 //
        (simsimd_cap_neon_bf16_k * (supports_neon && supports_bf16)) |                                //
        (simsimd_cap_neon_i8_k * (supports_neon && supports_i8mm && supports_integer_dot_products)) | //
        (simsimd_cap_sve_k * (supports_sve)) |                                                        //
        (simsimd_cap_sve_f16_k * (supports_sve && supports_fp16)) |                                   //
        (simsimd_cap_sve_bf16_k * (supports_sve && supports_sve_bf16)) |                              //
        (simsimd_cap_sve_i8_k * (supports_sve && supports_sve_i8mm)) |                                //
        (simsimd_cap_serial_k));

Hi @ashvardanian , I can take a shot at this, now that I know the SimSIMD codebase a bit better :)


Strange border exists after CLGaussianPyramidHalf

Output of 'strings libarm_compute.so | grep arm_compute_version':
arm_compute_version=v18.05 Build options: {'embed_kernels': '1', 'opencl': '1','pmu': '1', 'arch': 'arm64-v8a', 'standalone': '0', 'neon': '0', 'build_dir': 'android-arm64-v8a-cl', 'debug': '0', 'validation_tests': '0', 'examples': '1', 'asserts': '0', 'mali': '1', 'benchmark_tests': '0', 'compiler_cache': 'ccache', 'os': 'android', 'Werror': '1'} Git hash=12ad439c2511cca35b36cabcd6b342feccf6f02b
Platform:
Rockchip RK3399
Operating System:
Android 6.0

Problem description:
I am now trying replace the cv::calcopticalflowpyrlk() by ACL implementation.
Then I and found if I need to use ACL's CLOpticalFlow, I need to first prepare an image pyramid. I am now using CLGaussianPyramidHalf to achieve this. After some coding, I dump the output images in pyramid, and I found all levels (except level 0, the first one), 3 black borders exists (on the left / right / bottom side of image). And the image seems cropped.
I already set the Border mode to BorderMode::UNDEFINED. I doubt such border will further affect the tracking result when I use CLOpticalFlow.
Please help.  Thanks.

Hi @cclo-astri
Reading your message I get the impression that you would expect the output of CLGaussianPyramidHalf to have no padding at all when you set border mode to BorderMode::UNDEFINED
Is this so?

Hi @morgolock
Yes, that's what I mean. Sorry for my poor English.
Thanks.

Hi @cclo-astri
Can you please share the code to generate the pyramid?
The padding added by CLGaussianPyramidHalf shouldn't be a problem when calling other ACL functions, but if you want to copy the output images to your own buffer you have to take into account the padding. Take a look at https://arm-software.github.io/ComputeLibrary/v18.05/architecture.xhtml#S4_6_4_working_with_objects for more detailed information on how to move the data to/from ACL's tensors to your own buffers.

Hi @morgolock
Here is the code snippet:
PyramidInfo pyramid_info;
pyramid_info.init(3, SCALE_PYRAMID_HALF, TensorShape(480, 640), Format::U8);
CLGaussianPyramidHalf prevPyrDown;

CLPyramid prevEqlPyr;
prevEqlPyr.init(pyramid_info);
prevEqlPyr.allocate();
prevPyrDown.configure(&prevEqlTensor, &prevEqlPyr, BorderMode::UNDEFINED, 255);
prevPyrDown.run();
CLScheduler::get().sync();

And I use the following codes to dump the output:
CLTensor *output = prevPyramid.get_pyramid_level(1);
output->map();

Window output_window;
output_window.use_tensor_dimensions(output->info()->tensor_shape());
Iterator output_it(output, output_window);
Mat outputImg(output->info()->tensor_shape().y(), output->info()->tensor_shape().x(), iGreyImage.type());

execute_window_loop(output_window, [&](const Coordinates & id)
{
    outputImg.at<unsigned char>(id.y(), id.x()) = *reinterpret_cast<unsigned char *>(output_it.ptr());
},
output_it);
output->unmap();
imwrite("./prevPyr1.png", outputImg);

Thank you.

Hi @cclo-astri
Could you please try moving prevEqlPyr.allocate(); after prevPyrDown.configure(&prevEqlTensor, &prevEqlPyr, BorderMode::UNDEFINED, 255); ?
As explained in the documentation

It's important to call allocate after the function is configured: if the image / tensor is already allocated then the function will shrink its execution window instead of increasing the padding. (See below for more details).

Let me know if this solves the problem

Hi @morgolock
Yes this modification solves the problem.
Thanks so much.


BUG: Apply Validation in all forms

Description
Apply proper validation in forms now user can't start our name with any number and email also not start with any number and also having regex checks.

Fixes #164

Type of change
Please delete options that are not relevant.

[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] My changes generate no new warnings
[ ] New and existing unit tests pass locally with my changes
[ ] I have maintained a clean commit history by using the necessary Git commands
[ ] I have checked that my code does not cause any merge conflicts

Screenshots (if applicable)
Validate Email in this function it takes an input of email and check is it empty or not and then apply regex checks and also see the first character is not a number.
Validate Name in this function it takes an input of name and check is it empty or not and then apply regex checks and also see the first character is not a number.

@yashmandi Please review my PR and merge with labels:)

This issue was not assigned to you @harshbhar0629 .

This issue was not assigned to you @harshbhar0629 .

I agree but this issue is not resolved by 5 days @theashikagupta  please merge it.

@theashikagupta Please review because now this issue is assigned to me please merge it:)


Keithh 2.4.0 beta1

@kstevenham,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


Dashboard: Slashed tokens do not display

Description:
I delegated 300k tokens at the start, my nodes are running for about a month. Then i saw that some tokens are gone, i suppose because of Slashing. As for now 4k are disappeared but they are not displayed in Slashed tokens section. Instead delegation amount decreased to 296k by itself. I suppose it is some sort of bug?
Environment details:
OS: OS X El Capitan, 10.11.6 (15G22010)
Web Browser: Google Chrome, Version 83.0.4103.116 (Official Build) (64-bit)
Wallet: Metamask (Chrome extension), Version 8.0.3
Screenshots

Thanks for posting an issue!
I'm pretty sure we've already fixed this bug. Please see https://github.com/keep-network/keep-core/pull/1919.

Thanks for posting an issue!
I'm pretty sure we've already fixed this bug. Please see #1919.

thanks for comment! i've tried to search for already opened issue, but for some reason haven't find this one 👍

I'm 99% sure this bug is the same as #1919 😄

@nikgrego Not related directly to the issue you've posted, but I'm curious what screenshotting service you're using here? The full browser screenshots with dropshadow are nice. I'm working on updating the staking documentation and would like to use a style like these for the images.

Hi @liz-shinn ! It's the built-in Mac screenshot function 😄  Press and hold these keys together: Shift, Command, 4, and Space bar. Then select the window you want to capture. Here is more info: https://support.apple.com/en-us/HT201361

*facepalm OH lol ha. Thanks! 🙌

*facepalm OH lol ha. Thanks! 🙌 I use CloudApp for screen recordings, etc. but these look nicer for docs.

No prob 👍  I myself have only recently discovered this function, it's pretty comfy.. for gif captures (when you need to show some action) i use chrome extension called "Chrome Capture" https://chrome.google.com/webstore/detail/chrome-capture-screenshot/ggaabchcecdbomdcnbahdfddfikjmphe

Fix in #1919


Adding e2e test case to check if the scheduler respects maxpods limit…

… of a given node

What this PR does / why we need it:
This PR adds a E2E test to check if scheduler respects the max-pods limit of a given node.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
#591
Special notes for your reviewer:
Release note:

/cc @hzxuzhonghu @TommyLike

New PR is raised please refer #827  , since the test cases for kube-bach scheduler tests are moved to test/e2e/kube-batch.


Include additional installer types from the v0.1 spec

Many users are using this page to write manifests manually and are unaware of the additional types established in the v0.1 spec that are available. This pull request mentions them. I will submit an additional pull request that mentions the generator located in the winget-pkgs Tools folder.

@superusercode : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Map is not populated in event page

The map section in the events section wasn't populated when a particular event was clicked.

The issue has been resolved by mapping events correctly to their respective documents in the database.


How to change the settings of the chart opened in a new window?

[I am doing an application that prints time-dependent data on a graph. It writes the data on the chart properly over time. But when I open the graph on the new screen, y axis does not show Datetime value in "HH.mm.ss" format. It shows the double value.
Also, when I want to open the graphic on a new screen, I don't want the newly opened graphic to be right clickable again.
How can I change the settings of the graphic copy opened in a new window? How can I apply time stamping?
How to change the settings of the chart opened in a new window?
Also, can I change the title of the newly opened window?
New Window Code
new WpfPlotViewer(Global.AxisX_Graphic.plt.Copy()).Show();
Normally Graphic

Open New Window Graphic

The y-axis was displayed properly when I typed new WpfPlotViewer(Global.AxisX_Graphic.plt.Cop).Show(); instead of new WpfPlotViewer(Global.AxisX_Graphic.plt.Copy()).Show();.

I fixed problem.
var AxisX_Copy = Global.AxisX_Graphic.plt.Copy();
AxisX_Copy.Ticks(dateTimeX: true, dateTimeFormatStringX: ("HH.mm.ss"));
wpfPlotViewer = new WpfPlotViewer(AxisX_Copy);
wpfPlotViewer.Title = "X Axis";
wpfPlotViewer.Show();
wpfPlotViewer.wpfPlot1.ContextMenu.Items.Clear();

I fixed all problems. Respectively;
First, I copied my chart as AxisX_Copy.
var AxisX_Copy = Global.AxisX_Graphic.plt.Copy();
I also applied the settings I applied to the original chart to the copy.
AxisX_Copy.Ticks(dateTimeX: true, dateTimeFormatStringX: ("HH.mm.ss"));
then I created a new plotViewer.
wpfPlotViewer = new WpfPlotViewer(AxisX_Copy);
I changed the title of the new page as follows.
wpfPlotViewer.Title = "X Axis";
I cleared the chart's menu in the newly opened window.
wpfPlotViewer.Show();
wpfPlotViewer.wpfPlot1.ContextMenu.Items.Clear();

Hey @saklanmazozgur, I'm happy to see you got this one figured out, and thanks for sharing your solution!
Let me know if any new questions pop up along the way 👍


Make SCIMMYRouters class extend express.Router in bundled TypeScript declaration files

Currently, the auto-generated TypeScript declaration file that is bundled during build does not correctly declare the SCIMMYRouters class, which directly extends the express.Router type. This means TypeScript users have to manually cast the SCIMMYRouters instance to express.Router when injecting the express middleware.
This change adds a preauthored routers.d.ts file that exports a SCIMMYRouters interface which extends the express.Router type. The packager.js file has been updated to combine this file with the generated type declarations. The JSDoc for the SCIMMYRouters class has also been updated such that the generated type declarations are more accurate (fixes #24).

Thanks for your work. However, this does not work in my case. When I simply try to remove cast here, even when using the new version, it won't compile:
https://github.com/gristlabs/grist-core/pull/1199/files#diff-718d3e2193a1261bcf5cd6f6bba04e22bec1b0c4b162c6adbf0ae4847f107912R47
The compilation error I get is the following:
app/server/lib/scim/v2/ScimV2Api.ts:49:22 - error TS2769: No overload matches this call.
  The last overload gave the following error.
    Argument of type 'SCIMMYRouters' is not assignable to parameter of type 'Application<Record<string, any>>'.
      Type 'SCIMMYRouters' is missing the following properties from type 'Application<Record<string, any>>': init, defaultConfiguration, engine, set, and 63 more.

49   return v2.use('/', scimmyRouter);


Allow admin to add users

Tried this:
How To: Manage users through a CRUD interface
But still getting password blank error on save.

REQUEST: Devise add a config option that allows a normal route and controller for the User model.
Until then, this hack works by going all around Rails and around Devise.
routes
post 'savenew', to: 'users#savenew'
controller:
def savenew
 rawsql = "insert into users (name,email, created_at,updated_at) values ('#
    {user_params[:name]}', '#{user_params[:email]}',now(), now())"
            sql = rawsql
        ActiveRecord::Base.connection.execute(sql)
        redirect_to action: 'index'
end

new.html.erb
<%= form_for modelname, :url => {:action => "savenew"} do |f| %>

See on the wiki:
https://github.com/plataformatec/devise/wiki/How-to-manage-users-with-a-standard-Rails-controller-using-a-somewhat-CRUDE-HACK-that-WORKS!

Please use the mailing list or StackOverflow for questions/help, where a wider community will be able to help you. We reserve the issues tracker for issues only.

Seems like this is an issue.

Can you please provide a sample application that reproduces the error?


HIG update? Spec data returns at 1x and some of zero size.

Describe the bug
I saved the following images today, 11 items compared to a usual 20 or so. They appear to be at a 1x resolution and some of 0 size, duplicates overwrite each other.
09:31:33 saveImages Saved image apple-splash-768-1024 🙌
09:31:33 saveImages Saved image apple-splash-1024-1366 🙌
09:31:33 saveImages Saved image apple-splash-834-1194 🙌
09:31:33 saveImages Saved image apple-splash-414-736 🙌
09:31:33 saveImages Saved image apple-splash-768-1024 🙌
09:31:33 saveImages Saved image apple-splash-0-0 🙌
09:31:33 saveImages Saved image apple-splash-414-736 🙌
09:31:33 saveImages Saved image apple-splash-0-0 🙌
09:31:33 saveImages Saved image apple-splash-375-667 🙌
09:31:33 saveImages Saved image apple-splash-414-896 🙌
09:31:33 saveImages Saved image apple-splash-375-812 🙌
09:31:33 saveImages Saved image apple-splash-375-667 🙌
09:31:33 saveImages Saved image apple-splash-810-1080 🙌
09:31:33 saveImages Saved image apple-splash-0-0 🙌
09:31:33 saveImages Saved image apple-splash-375-812 🙌
09:31:33 saveImages Saved image apple-splash-834-1112 🙌
09:31:33 saveImages Saved image apple-splash-414-896 🙌
09:31:33 saveImages Saved image apple-splash-414-896 🙌
09:31:33 saveImages Saved image apple-splash-320-568 🙌

To Reproduce

Be online
pwa-asset-generator public/launch.html public/img/launch --splash-only
follow log

Expected behavior
Images will be saved at various sizes.
System (please complete the following information):

OS: macOS 10.15.6
node version 14.4.0
npm version 6.14.4
cli version 3.2.1

Screenshots
The meta tag output may help:
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-1024-1366.jpg" media="(device-width: 512px) and (device-height: 683px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)">
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-0-0.jpg" media="(device-width: 0px) and (device-height: 0px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)">
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-834-1194.jpg" media="(device-width: 417px) and (device-height: 597px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)">
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-768-1024.jpg" media="(device-width: NaNpx) and (device-height: NaNpx) and (-webkit-device-pixel-ratio: undefined) and (orientation: portrait)">
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-0-0.jpg" media="(device-width: NaNpx) and (device-height: NaNpx) and (-webkit-device-pixel-ratio: undefined) and (orientation: landscape)">
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-834-1112.jpg" media="(device-width: NaNpx) and (device-height: NaNpx) and (-webkit-device-pixel-ratio: undefined) and (orientation: portrait)">
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-810-1080.jpg" media="(device-width: NaNpx) and (device-height: NaNpx) and (-webkit-device-pixel-ratio: undefined) and (orientation: portrait)">
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-768-1024.jpg" media="(device-width: 384px) and (device-height: 512px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)">
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-414-896.jpg" media="(device-width: NaNpx) and (device-height: NaNpx) and (-webkit-device-pixel-ratio: undefined) and (orientation: portrait)">
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-375-812.jpg" media="(device-width: NaNpx) and (device-height: NaNpx) and (-webkit-device-pixel-ratio: undefined) and (orientation: portrait)">
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-414-896.jpg" media="(device-width: 138px) and (device-height:<PHONE_NUMBER>666667px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)">
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-0-0.jpg" media="(device-width: 0px) and (device-height: 0px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)">
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-375-812.jpg" media="(device-width: 125px) and (device-height:<PHONE_NUMBER>666667px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)">
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-414-896.jpg" media="(device-width: 207px) and (device-height: 448px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)">
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-414-736.jpg" media="(device-width: 138px) and (device-height:<PHONE_NUMBER>3333334px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)">
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-375-667.jpg" media="(device-width: 187.5px) and (device-height: 333.5px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)">
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-414-736.jpg" media="(device-width: NaNpx) and (device-height: NaNpx) and (-webkit-device-pixel-ratio: undefined) and (orientation: portrait)">
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-375-667.jpg" media="(device-width: NaNpx) and (device-height: NaNpx) and (-webkit-device-pixel-ratio: undefined) and (orientation: portrait)">
<link rel="apple-touch-startup-image" href="public/img/launch/apple-splash-320-568.jpg" media="(device-width: NaNpx) and (device-height: NaNpx) and (-webkit-device-pixel-ratio: undefined) and (orientation: portrait)">`

Additional context
I guess the HIG has been updated, I used offline mode to workaround.

Hi @jasonhibbs, thanks for your feedback. I've just ran the sanity check script and it seems it's all fine with the scraping part. Please check logs here: https://github.com/onderceylan/pwa-asset-generator/runs/1095506036?check_suite_focus=true#step:7:16
Are you sure you're on the latest version of PAG? We hit this issue on an earlier versions.

Ah yes, looks like my global copy of 3.1.1 was running, works after updating. Thanks!


D400 set_depth_table while pipeline started

Required Info

Camera Model
D430

Firmware Version
<IP_ADDRESS>

Operating System & Version
Linux (Ubuntu 20)

Kernel Version (Linux Only)
5.8.0-59

Platform
PC

SDK Version
{ legacy / 2.<47>.<0> }

Language
{C++ }

Segment
{Robot/Smartphone/VR/AR/others }

Issue Description
Hello,
I have been trying to set the disparity shift by setting the depth_table using the advanced mode and set_depth_table while the camera is running. It seems that I must restart the pipeline for the changes to be applied. Is there a way to change the disparity shift on the fly without restarting the pipeline and thus introducing latency?
In the realsense viewer, changing the disparity shift does not entails a latency as big as in my code. Is the camera restarted in the viewer?
Also, are they some parameters in the depth table that does not require a restart of the pipeline? I'm thinking about the depth units for example as it can also be set under the panel 'Controls'.
Thanks for your help

Hi @lmuffang  I do not have information about how the real-time configuration of the depth table in the RealSense Viewer operates.  However, the link below describes C++ code for configuring the depth table after the pipeline has been started.
https://github.com/IntelRealSense/librealsense/issues/2229#issuecomment-412431623
Based on the scripting information provided in that link, I believe that a C++ script that uses the pipeline would look like this:
pipeline p;
auto profile = p.start();  // start the pipeline
auto dev = profile.get_device().as<advanced_mode>();
STDepthTableControl table = dev.get_depth_table();  // modify table
dev.set_depth_table(table);  // write changes
An alternative C++ script created by a RealSense user that includes depth table configuration thrugh Advanced Mode is available at the link below.
https://support.intelrealsense.com/hc/en-us/community/posts/360051896473/comments/360014626993
In regard to configuring the depth unit scale, C++ code provided in the link below suggests setting the depth scale before the pipeline is started (implying that changing it would require a pipeline stop and then start after the change has been made).
https://github.com/IntelRealSense/librealsense/issues/2385#issuecomment-421243039
If you prefer an application that works closely like the Viewer does then you are able to modify the Viewer into a custom application as the RealSense SDK is open-source.
https://github.com/IntelRealSense/librealsense/tree/master/tools/realsense-viewer

Hi @lmuffang  Do you require further assistance with this case, please?  Thanks!

Case closed due to no further comments received.


wav2vec 2.0 :ModuleNotFoundError: No module named 'examples.speech_recognition'

❓ Questions and Help
After pre-training and fine-tuning wav2vec2.0, we use the evaluation CTC model, and the error message shows "ModuleNotFoundError: No module named 'examples.speech_recognition'". What is the reason for the error? Is it because wav2letter was not installed successfully? How can I solve this problem?

no its not about wav2letter or flashlight installation
it is because you install fairseq in wrong way path
in this case, you can't import fairseq.examples or fairseq.data
and if you want to decode your model in viterbi (greedy) mode, it does not require cpp decoder installation (flashlight)

Thank you for your reply. According to your suggestion, I modified the installation path of fairseq. Then I run "
python /data/lby/task/fairseq/examples/speech_recognition/infer.py /data/lby/task/fairseq/examples/wav2vec/fine --task audio_finetuning --nbest 1 --path /data/lby/task/fairseq/outputs/2023-05-23/09-57-25/checkpoints/checkpoint_best.pt --gen-subset  $subset --results-path /data/lby/task/fairseq/outputs --w2l-decoder viterbi --word-score -1 --sil-weight 0 --criterion ctc --labels ltr --max-tokens 4000000 --post-process letter" to decode our model in viterbi. Shows an error "NameError: name 'CriterionType' is not defined".
I checked the code and found that line 56 is "self.criterion_type = CriterionType.CTC". Then, I traced the source of "CriterionType" and found that line 32 shows "from flashlight.lib.text.decoder import CriterionType". Is this caused by flashlight not being installed successfully?
@.***
From: Seunghyun SEO
Date: 2023-07-07 17:12
To: facebookresearch/fairseq
CC: LBY-bamboo; Author
Subject: Re: [facebookresearch/fairseq] wav2vec 2.0 :ModuleNotFoundError: No module named 'examples.speech_recognition' (Issue #5231)
no its not about wav2letter or flashlight installation
it is because you install fairseq in wrong way path
in this case, you can't import fairseq.examples or fairseq.data
and if you want to decode your model in viterbi (greedy) mode, it does not require cpp decoder installation (flashlight)
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

in my case, i could fix the import error using
cd /workspace/fairseq &&\
pip install -e . &&\
python setup.py build develop &&\
echo "export PYTHONPATH=$PYTHONPATH:/workspace/fairseq/examples" >> ~/.bashrc

Thanks for your reply. According to your suggestion, we updated the fairseq installation path as follows:
But running "python /data/lby/task/fairseq/examples/speech_recognition/infer.py /data/lby/task/fairseq/examples/wav2vec/fine --task audio_finetuning --nbest 1 --path /data/lby/task/fairseq/outputs/2023-05-23/09-57-25/checkpoints/checkpoint_best.pt --gen-subset  $subset --results-path /data/lby/task/fairseq/outputs --w2l-decoder viterbi --word-score -1 --sil-weight 0 --criterion ctc --labels ltr --max-tokens 4000000 --post-process letter" during decoding.
There is still an error showing ""NameError: name 'CriterionType' is not defined".
I checked the code and found that line 56 in w2l_decoder.py is "self.criterion_type = CriterionType.CTC". Then, I traced the source of "CriterionType" and found that line 32 shows "from flashlight.lib.text.decoder import CriterionType". Is this caused by flashlight not being installed successfully?
@.***
From: Seunghyun SEO
Date: 2023-07-13 03:55
To: facebookresearch/fairseq
CC: LBY-bamboo; Author
Subject: Re: [facebookresearch/fairseq] wav2vec 2.0 :ModuleNotFoundError: No module named 'examples.speech_recognition' (Issue #5231)
in my case, i could fix the import error using
cd /workspace/fairseq &&
pip install -e . &&
python setup.py build develop &&
echo "export PYTHONPATH=$PYTHONPATH:/workspace/fairseq/examples" >> ~/.bashrc
―
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>


Rolling Update - When choosing which node to promote as new etcd leader, use the newest member

To prevent the etcd leader moving to a node that is still going to be rolled.

Capped at S

Currently the existing sorting is not working on lab environment (possible misconfiguration?) see https://github.com/flanksource/karina/issues/430


Hishtory in fish/OMF

Hi,
I have installed hishtory on popOS (ubuntu'ish clone) and it seems to work just fine in bash, zsh. When I however use fish, the normal fzf ctrl-r list is shown instead of the one from hishtory.
hishtory status show that it is enabled, and if I try to do hishtory completion fish|source, I seems to load it in but nothing happens.
Any ideas on how to debug this and get it to work.

looks like an issue with the omf theme dangerous. If I put it into normal mode (it uses vim bindings), I can use ctrl-r to get the hishtory tquery shown


chore: add scope headless interfaces and velocity deps

Description of changes
prepend @aws-amplify to dependencies:

amplify-headless-interface
amplify-util-headless-input
amplify-velocity-templates

Issue #, if available

Description of how you validated changes
Checklist

[x] PR description included
[x] yarn test passes
[x] Tests are changed or added
[ ] Relevant documentation is changed or added (and PR referenced)
[ ] New AWS SDK calls or CloudFormation actions have been added to relevant test and service IAM policies
[ ] Pull request labels are added

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Codecov Report

Merging #12264 (d7e55b1) into dev (984c0f8) will decrease coverage by 2.36%.
The diff coverage is 57.67%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##              dev   #12264      +/-   ##
==========================================
- Coverage   49.45%   47.09%   -2.36%
==========================================
  Files         692      836     +144
  Lines       33424    38038    +4614
  Branches     6840     7716     +876
==========================================
+ Hits        16529    17914    +1385
- Misses      15370    18486    +3116
- Partials     1525     1638     +113

Impacted Files
Coverage Δ

...mplify-appsync-simulator/src/resolvers/function.ts
15.38% <ø> (ø)

...s/amplify-appsync-simulator/src/type-definition.ts
100.00% <ø> (ø)

...sync-simulator/src/velocity/util/dynamodb-utils.ts
6.55% <0.00%> (ø)

...y-appsync-simulator/src/velocity/util/map-utils.ts
10.00% <ø> (ø)

...tor/src/velocity/util/transform/dynamodb-filter.ts
4.93% <0.00%> (ø)

...appsync-simulator/src/velocity/value-mapper/map.ts
86.88% <ø> (ø)

...ackages/amplify-category-auth/src/commands/auth.ts
0.00% <0.00%> (ø)

...ges/amplify-category-auth/src/commands/auth/add.ts
0.00% <ø> (ø)

...es/amplify-category-auth/src/commands/auth/help.ts
0.00% <0.00%> (ø)

.../amplify-category-auth/src/commands/auth/import.ts
0.00% <0.00%> (ø)

... and 94 more

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

E2E test run: https://app.circleci.com/pipelines/github/aws-amplify/amplify-cli?branch=run-e2e/eddvar/headless-velocity-deps


bug: IE11 toolbar background color not changeable

Bug Report
Ionic version:
[x] 4.11.10
Current behavior:

Expected behavior:
When changing the background color of the toolbar, its should also have this color in IE11.
Steps to reproduce:
Change the toolbar background color (as described in the documentation) by applying following code in your CSS.
Related code:
ion-toolbar {
     --background: transparent !important;
     --ion-color-base: transparent !important;
 }

The toolbar color changes everywhere (android, chrome, firefox etc) except IE11.
Other information:
I tried workarounds like setting the background colour directly via a selector. This also gets ignored in IE11.
ion-toolbar .toolbar-background {
      background: transparent !important;
}

Ionic info:
Ionic:

   Ionic CLI                     : 5.4.16
   Ionic Framework               : @ionic/angular 4.11.10
   @angular-devkit/build-angular : 0.801.3
   @angular-devkit/schematics    : 8.3.25
   @angular/cli                  : 8.3.17
   @ionic/angular-toolkit        : 2.1.2

Cordova:

   Cordova CLI       : 9.0.0<EMAIL_ADDRESS>   Cordova Platforms : android 8.0.0
   Cordova Plugins   : cordova-plugin-ionic-keyboard 2.2.0, cordova-plugin-ionic-webview 4.1.3, (and 9 other plugins)

Utility:

   cordova-res                          : not installed
   native-run (update available: 0.3.0) : 0.2.9

System:

   NodeJS : v10.15.3 (C:\Program Files\nodejs\node.exe)
   npm    : 6.4.1
   OS     : Windows 10

Thanks for the issue. I am going to close this as we recently released Ionic Framework v5 which dropped support for IE11 and older versions of Edge. Moving forward, Ionic Framework v4 will only receive critical security patches.


[BUG]: Add records - Blank data getting saved without fields

What is the bug related to?
Registry Core
What went wrong?
Without schema fields clicking on save button - Blank data getting saved

What did you expect to see?
Validation should be added - blank data should not get save without fields
Additional Context
Steps to Reproduce issue

On dashboard Click on add new document button
Select my template
upload html/svg template
Click on edit template button
Click on save template button
save the template with unique credentials
Click on view/add button on created template
Click on add button
Click on save button

Relevant logs/output (if any)
No response

@jayadinni Need to add message/note on this screen for suggesting add schema fields using adavance editor.

Please show this warning message, when user clicks on save, if no properties are added and used in the certificate template


Refactor misuses of css modules (ex: match.css)

We shouldn't be having multiple components importing the same css files. It overrides one of the primary benefits of css-modules (locally scoped css names), and it is overall harder to figure out what styles belong to what (making refactoring css in general a PITA). Instead, we should have separate files for each component, and if they reuse a class, properly utilize the composes syntax:
.thing {
  composes: thing from "./Match.css";
}

let's roll this in to #1189


Exam mode: Fix bugs in scores table for multiple correction rounds and file upload exercises

Checklist
General

[x] This is a small issue that I tested locally and was confirmed by another developer on a test server.
[x] Language: I followed the guidelines for inclusive, diversity-sensitive, and appreciative language.
[x] I chose a title conforming to the naming conventions for pull requests.

Server

[x] I followed the coding and design guidelines.
[x] I added multiple integration tests (Spring) related to the features (with a high test coverage).
[x] I implemented the changes with a good performance and prevented too many database calls.
[x] I documented the Java code using JavaDoc style.

Client

[x] I followed the coding and design guidelines and ensured that the layout is responsive.
[x] I added multiple integration tests (Jest) related to the features (with a high test coverage), while following the test guidelines.
[x] I added multiple screenshots/screencasts of my UI changes.
[x] I translated all newly inserted strings into English and German.

Motivation and Context

Fix #6395
Additionally fix issue where unassessed file upload participations where not shown in the scores table.
Description

The scores table now correctly displays the buttons for each assessment of different correction rounds in exams.
Additionally file upload exercises are correctly displayed and allow the redirection to their assessment view.
Steps for Testing

Prerequisites:

1 Instructor
1 Student
1 File Upload exercise

Log in to Artemis
Participate as student
Verify that the buttons in the scores table still work and redirect the instructor to the correct assessment.

Exam Mode Testing

Prerequisites:

1 Instructor
1 Student
1 Exam with two correction rounds

Log in to Artemis
Participate in the exam as a student
Go to the scores table of an exercise and verify that the buttons correctly work in each of these three scenarios:

Before all assessments
After the assessment of the first correction round
After the assessment in the second correction round

Review Progress

Code Review

[ ] Review 1
[ ] Review 2

Manual in Exam mode Tests

[ ] Test 1
[ ] Test 2

Manual Test verifying that course exercises work

[ ] Test

Test Coverage

Class/File
Branch
Line

ParticipationResource.java
69%
91%

exercise-scores.component.ts.ts
76%
90%

Screenshots

Codecov Report

Merging #6410 (24a6cbf) into develop (ef49b1e) will decrease coverage by 4.42%.
The diff coverage is 100.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@              Coverage Diff              @@
##             develop    #6410      +/-   ##
=============================================
- Coverage      84.85%   80.43%   -4.42%
+ Complexity     13005    13000       -5
=============================================
  Files           1073     2319    +1246
  Lines          42056    89055   +46999
  Branches        4398    13159    +8761
=============================================
+ Hits           35687    71633   +35946
- Misses          3928     9606    +5678
- Partials        2441     7816    +5375

Impacted Files
Coverage Δ

...mis/repository/StudentParticipationRepository.java
84.61% <ø> (ø)

...n/www1/artemis/web/rest/ParticipationResource.java
84.87% <100.00%> (+0.04%)
:arrow_up:

...hared/exercise-scores/exercise-scores.component.ts
82.55% <100.00%> (ø)

...ises/shared/participation/participation.service.ts
74.62% <100.00%> (ø)

... and 1254 files with indirect coverage changes

Flag
Coverage Δ

client
76.49% <100.00%> (?)

server
84.84% <100.00%> (-0.02%)
:arrow_down:

Continue to review full report in Codecov by Sentry.

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


sha256 configs to optimize local hot-reloads

Previously, we were only relying on git commit hash to determine whether or not to reload the
store. And whenever git determined that the working tree was dirty, we would always reload. This
had two problems:

We have a dependency on checking the status of the git work tree, which may not be easy in
every language
hot reloads in git-local mode are very expensive. Every keystroke in an editor that autosaves
would result in a hot-reload, even if your materialized view didn't change (i.e. you didn't run
lekko compile).

This change computes a sha256 of the contents to determine if we should perform the reload.

What exactly do we save here? Is it just the write to the store (and therefore holding the write lock)?

we save a write to the store (along with holding the lock) in the cases where the git commit hash is insufficient for determining whether or not we need to do an update. Specifically, this happens when the work tree is dirty (you have uncommitted changes in git).

Can we do it earlier to avoid deserialization? Like check if contents of proto files is different?

we're not storing the configs in a single protobuf object in the store, so it would be hard to compare. it's stored as a nested map right now. we can optimize this comparison, but the main cost I want to avoid right now is holding the write lock unnecessarily because that blocks the readers which can affect the performance of the host application. the deserialization happens in a separate goroutine so while it can be costly, it's not blocking core functionality


task: delete unused flags and descriptions

Delete the unused flags and descriptions from mongocli

@jeroenvervaeke RFAL, linting was failing


transfer list of contributors

The list of contributors (previously at http://csfieldguide.org.nz/appendices/Contributors.html) needs to be transferred to the new version.

I'll sort this out next week, it's already on my todo list.