add ingested intervals to task report

Description
For batch ingestion (native batch tasks and the Hadoop batch task), this PR adds a list of the time intervals ingested to the completion report.  This list represents the time interval of each segment created by the task, condensed into as few intervals as possible.  For example, if four segments were created at 'day' granularity for March 1st, 2nd, 3rd, and 5th, the report's ingestedIntervals list would contain two intervals, ["2023-03-01T00:00:00Z/2023-03-04T00:00:00Z", "2023-03-05T00:00:00Z/2023-03-06T00:00:00Z"].

For IndexTask and the Hadoop task the changes here are fairly straightforward.  For parallel tasks, the code in ParallelIndexSupervisorTask gathers intervals ingested from subtasks and adds them to the report.  But this task was already a bit hairy, so I extracted it into a new class, ParallelIndexStatsReporter and implementation subclasses.  The implementation is created by a factory based on the configuration of the parallel task.

Release note
For batch ingestion (native batch tasks and the Hadoop batch task), the completion report contains a condensed list of the time intervals ingested.

Key changed/added classes in this PR

ParallelIndexSupervisorTask
IndexTask
HadoopIndexTask
IngestionStatsAndErrorsTaskReportData

This PR has:

[x] been self-reviewed.
[x] added documentation for new or modified features or behaviors.
[x] a release note entry in the PR description.
[x] added Javadocs for most classes and all non-trivial methods. Linked related entities via Javadoc links.
[x] added or updated version, license, or notice information in licenses.yaml
[x] added comments explaining the "why" and the intent of the code wherever would not be obvious for an unfamiliar reader.
[x] added unit tests or modified existing tests to cover new code paths, ensuring the threshold for code coverage is met.
[x] been tested in a test Druid cluster.

Thanks for your first PR, @danprince1 !
Could you please add a note in the PR description on the uses of ingestedIntervals?

Thanks for your first PR, @danprince1 ! Could you please add a note in the PR description on the uses of ingestedIntervals?

Hi @kfaraz, I added a section about potential uses to the description.  Let me know of any other suggestions - thanks!

Tests are failing due to insufficient branch coverage. Can you add some unit tests to cover the new code? Sometimes doing so is quite difficult. It that is the case here, please explain why so we can figure out a Plan B.

@paul-rogers thanks so much for your review.  I'm about to go on vacation, so I won't get to a chance to address your suggestions for a while, but I really appreciate your looking at this and I will try to get back to this as soon as I can.

I ran coverage locally and added some tests until it passed, so hopefully that is resolved as well.

Could you also please resolve the conflicts?

Thanks for the changes and explanation @danprince1, Could you please look into failing checks?

Thanks for the changes and explanation @danprince1, Could you please look into failing checks?

Fixed!

@danprince1 , please let me know if you have any thoughts on the feedback. I was hoping we could close this soon.


Cancel Button | Define styles

Define styles for the cancel button in it's following states:

Default
Hover
Active
Disabled

Done!


Fixes #3579/#3477/#3597 - adjustments to restart logic

@kolloch the integration tests still fail for:
-ResidentTaskIntegrationTest: persistent volume will be re-attached and keep state
-AppDeployIntegrationTest: backoff delays are reset on configuration changes
-AppDeployIntegrationTest: restarting an app with backoff delay starts immediately
Will rerun to see if this is related to this PR

The tests seem to fail quite reproducible -- sorry for not checking after the last change. I will investigate.

@kolloch Looks very good to me - especially the green box above. Thanks!
Please squash your commits and I will merge.

I split up and squashed the commits along authors and topics.
The integration tests fail on teamcity because they cannot resolve a necessary GPG key. On my local machine, I could get beyond that step. Not sure how to proceed:

Hope that it is a temporary TeamCity network-related problem and wait?
Investigate, trying alternatives.

It is annoying to debug if we cannot reproduce it locally. We had similar problems already in the past.

aah, the last teamcity build moved beyond that error.

Ok, there was another sporadic error which looks similar to the ones that I tried to fix.
I think that the code in this PR is an improvement anyway. I will try to reproduce that error locally with extended debug settings, again.
In the mean time I would suggest to

either merge this PR completely
or to separate the last commit that tries to address the error seen in TeamCity but which apparently is not complete and merge the rest

Thanks!


CUDA Initialisation error

I get the following error when I run both, a huggingface model and a faster whisper model on the same GPU:
self.model = ctranslate2.models.Whisper(
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^
RuntimeError: CUDA failed with error initialization error
terminate called after throwing an instance of 'std::runtime_error'
  what():  CUDA failed with error unspecified launch failure
Aborted

I am currently using a pipeline from huggingface, which is defined as follows:
translator = pipeline(
        "translation",
        model=model_nllb,
        tokenizer=tokenizer_nllb,
        src_lang=source_lang,
        tgt_lang=target_lang,
        max_length=400,
        device="cuda" if torch.cuda.is_available() else "cpu",
    )

It is not an OOM error as I'm able to load both of them separately and check memory usage!

For those who might also face this same issue, the fix is to load faster_whisper models first and then the HuggingFace model. Not sure why that works.

Still facing this issue with other models. @trungkienbkhn any idea?

@RohitMidha23 , hello. Have you installed NVIDIA libraries (cuBLAS + cuDNN) for GPU ?
Besides, could you show your full code ?

it may relate to
cuda not support forked proc


[BACKLOG-40165] Copy files not passing variables to all getFileObject…

… and getFriendlyURI calls

:white_check_mark: Build finished in 22m 20s
Build command:
mvn clean verify -B -e -Daudit -Djs.no.sandbox -pl core,engine

:ok_hand: All tests passed!
Tests run: 3587, Failures: 0, Skipped: 6    Test Results

:information_source:  This is an automatic message

 Note:

Frogbot also supports Contextual Analysis, Secret Detection, IaC and SAST Vulnerabilities Scanning. This features are included as part of the JFrog Advanced Security package, which isn't enabled on your system.

🐸 JFrog Frogbot


Experiment: devcontainer to replace Vagrant

Currently, .NET 7 Preview when run inside .devcontainer (Ubuntu 22 box) throws  an exception.
Follow samples at https://github.com/dotnet/dotnet-docker/tree/main/samples/aspnetapp
See the issue at https://github.com/dotnet/core/issues/7710
TODO: write bash script if args and if-else to install docker in case we need it for core-libs.sh:

Guidance: https://devconnected.com/bash-if-else-syntax-with-examples
Docker package installed: https://github.com/thangchung/coffeeshop-on-nomad/blob/ca289d2fd18fc532e61afe517b7ac3475c6220b7/local/core-libs.sh#L14

install .NET 7 inside Ubuntu: https://github.com/dotnet/core/blob/main/release-notes/7.0/install-linux.md#installing-from-a-binary-archive


Make the ranking reloadable

What:
ランキングのトップをクリックしたら更新できる機能を実装します。
Why:
私はPixivDeckを常時起動しているのでdaily rankingなどがずっと変わらないという現象が起きています。
そのため日が変わったら再起動しているんですが、たまにログインが必要な場合があって面倒な気持ちになるので、ランキングに関してはトップをクリックしたら更新できると良いなと思ったためpull-reqを投げてみようと思いました。
How:
recommendなど、トップをクリックしたら更新できるcontainerを参考にして実装しようと思います。
Checklist:

[ ] Documentation
[ ] Tests
[x] Ready to be merged
[ ] Added myself to contributors table

少し不明な点があって実装途中ですが、一旦pushします。

現状の変更はrecommendなどを参考にfetch関連のコードをコピーしているんですが、以下のようなエラーが出ます。
どこか必要な箇所が抜けているのでしょうか？

actions.jsとconstants.jsは自動生成されるはずです。

あ、mdって畳むsyntaxあったんですね..ありがとうございます！

@akameco アドバイスを参考にして書き直したら上手くリロードが実装できました。 akameco さんの手元でも動作を見て頂けますでしょうか？ :pray:

@sachin21
テストが落ちているので修正お願いします。
前回からのレビューの差分だけ見てレビューしたいので、よろしければrebaseしないでコミットを重ねてもらえると嬉しいです :pray:
ちょっと差分が大きいのと、アクションが変わっているのでレビュー時間かかりそうです

あ、ではR18と一般向けでcommitを分けますね。お手数おかけします :bowing_man:

@akameco commit msgは変わってますが、最初レビューしていただいた箇所は一つ目のcommitになります。
再度レビューしていただけますでしょうか？

すみません、一点だけ追加でreadme.mdの名前欄を変更しました :bowing_man:

修正ありがとう！ちょっと時間とれないので土曜日見ます🙏

@sachin21 了解です。急がなくて大丈夫です 👍


add (docker-)compose example

This adds a compose.yml sample config to easily deploy a slidingsync proxy accompanied by a postgresql db container.
Pull Request Checklist

[x] Pull request includes a sign off

thanks for the review @kegsay ! and sorry for the slow response time - have been busy with university work the last weeks...

Closing this due to inactivity. Please open another PR if you wish to target testing deployments.
I'm not opposed to having a docker-compose for simplicity, but we must be clear who the target audience is so we can make sure the defaults/exposed configuration are appropriate.


Switch from pkg_resources to importlib.metadata

importlib.metadata is a standard library replacement for
pkg_resources, available starting with Python 3.8. It is faster than
pkg_resources. This lets the plugin interface use it when available,
i.e. on Python 3.8 and later. On earlier Python, it uses the
importlib_metadata PyPI backport if available, and finally falls back
on pkg_resources. setup.cfg gains an extra called plugins, which can
allow a project to install "pygments[plugins]" in order to ensure that
plugins support is present even if installed with older Python
versions.
Timings for lexing an empty file with a lexer from a random plugin:
Before:
real	0m0,238s
user	0m0,210s
sys	0m0,029s

After:
real	0m0,141s
user	0m0,125s
sys	0m0,017s

Fixes #2116, #2126

Bah. This failed the CI initially because entry_points() didn't accept the group keyword argument. Turns out, it was added in Python 3.10 and in recent versions of the Python <3.8 backport. Of course, I had tested those two versions, and not 3.8 or 3.9…

Thanks for taking on this topic! I'll try to review when back home.

Thanks. No hurry, take your time.


Bouncy Particles and YVelocity Billboard Extreme Spinning

Godot version
v4.0.alpha.custom_build [310266051]
System information
Linux, Vulkan
Issue description
When having YVelocity Billboard, the particles go extremely spinny (i like that they get a new rotation on each time they hit the floor, but it seems to cause the extreme spinniness when they keep re-hitting the floor)
Steps to reproduce
Get particles with YVelocity Billobard make them collide and Bouncy Enough.
Minimal reproduction project
BRPAC.zip

This should probably be fixed by adding a property that limits the maximum amount of rotation per frame, effectively making rotations happen with some delay.
As a workaround, only rely on velocity-based rotation change for fast-moving particles that don't slow down significantly.

a bounce threshold would also be nice, lets say its .01 bouncy, all you would see at that would be a horribly bobbing particle
so how about setting the bouncy of the particle to 0 if its under .01 or so

Duplicate of https://github.com/godotengine/godot/issues/57249 (same cause, as this is also fixed by https://github.com/godotengine/godot/pull/61245).


[VL] row2VeloxColumnar bad performance

Description
The query has hive table scan which output complex datatype. Gluten elapsed time is >2x worse than Vanilla Spark. 93% percent of time is spending on RowToVeloxColumnar

postpone the r2c until complex type is not presented

It seems that not only complex types, too many rows will also be slow.


support deploy klusterlet outside of managed cluster

Related PRs:

https://github.com/open-cluster-management-io/api/pull/114
https://github.com/open-cluster-management-io/registration/pull/175
https://github.com/open-cluster-management-io/work/pull/104

@qiujian16  @zhiweiyin318 @xuezhaojun @ianzhang366 This PR Is ready for review.
but still need to:

[ ] change the namespace from klusterlet name to {klusterlet name}-open-cluster-management-agent
[ ] add UT, integration tests

do we need to add e2e cases for this scenario? like create 2 kind clusters in action and deploy with detach mode?

do we need to add e2e cases for this scenario? like create 2 kind clusters in action and deploy with detach mode? or add some integration tests?

Of course, this is what I am doing.

@qiujian16 all comments have been fixed, PTAL.
@zhiweiyin318 tests were added.
And the RBAC part needs a focused reviewing, please.

@qiujian16 all comments have been fixed, and I add another commit(last commit of this PR) to distinguish the RBAC resource names of managed cluster and management cluster, the RBAC resources names are not in conflict now but may conflict in the future, I think it is necessary to separate. PTAL. Thanks.

/hold

/hold cancel

The makefile and README.md will be updated at a follow-up PR.

@zhiweiyin318 csv updated. PTAL.

/lgtm


ci: add python test and benchmark

closed by https://github.com/PersiaML/PersiaML/commit/9a20e370dc8584cd675c7d5304e7e955bea0080b


Tensorflow not properly installing

System information

Windows 10 Pro Version	10.0.17763 Build 17763

Windows I7 Desktop 16gb memory

TensorFlow version: 2: (2.1.0)

Python version: 3.6

Installed using virtualenv? pip? conda?: installed with latest pip

CUDA/cuDNN version:CUDA 10.1 ,cudnn64_7.dll

GPU model and memory: 1080, 16 gb(?)

Describe the problem
I have had tensorflow 2. running (no problem) and then attempted to get the gpu version going. No luck I have uninstalled the tensorflow-gpu version and reinstalled (pip install tensorflow), the current version.
Installing collected packages: tensorflow
Successfully installed tensorflow-2.1.0
It appears tensorflow is successfully installed.
Here is my python code: import tensorflow as tf
Thats it!
Please advise.  Thanks
Traceback :
C:\Users\BillS\AppData\Local\Programs\Python\Python36\python.exe "C:/Users/BillS/AppData/Local/Programs/Python/Python36/Tensorflow test.py"
Traceback (most recent call last):
File "C:\Users\BillS\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow_core\python\pywrap_tensorflow.py", line 58, in
from tensorflow.python.pywrap_tensorflow_internal import *
File "C:\Users\BillS\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow_core\python\pywrap_tensorflow_internal.py", line 28, in
_pywrap_tensorflow_internal = swig_import_helper()
File "C:\Users\BillS\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow_core\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
File "C:\Users\BillS\AppData\Local\Programs\Python\Python36\lib\imp.py", line 243, in load_module
return load_dynamic(name, filename, file)
File "C:\Users\BillS\AppData\Local\Programs\Python\Python36\lib\imp.py", line 343, in load_dynamic
return _load(spec)
ImportError: DLL load failed: The specified module could not be found.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:/Users/BillS/AppData/Local/Programs/Python/Python36/Tensorflow test.py", line 1, in
import tensorflow as tf
File "C:\Users\BillS\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow_init_.py", line 101, in
from tensorflow_core import *
File "C:\Users\BillS\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow_core_init_.py", line 40, in
from tensorflow.python.tools import module_util as module_util
File "C:\Users\BillS\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow_init.py", line 50, in getattr
module = self.load()
File "C:\Users\BillS\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow_init.py", line 44, in _load
module = importlib.import_module(self.name)
File "C:\Users\BillS\AppData\Local\Programs\Python\Python36\lib\importlib_init.py", line 126, in import_module
return _bootstrap.gcd_import(name[level:], package, level)
File "C:\Users\BillS\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow_core\python_init.py", line 49, in
from tensorflow.python import pywrap_tensorflow
File "C:\Users\BillS\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow_core\python\pywrap_tensorflow.py", line 74, in
raise ImportError(msg)
ImportError: Traceback (most recent call last):
File "C:\Users\BillS\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow_core\python\pywrap_tensorflow.py", line 58, in
from tensorflow.python.pywrap_tensorflow_internal import *
File "C:\Users\BillS\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow_core\python\pywrap_tensorflow_internal.py", line 28, in
_pywrap_tensorflow_internal = swig_import_helper()
File "C:\Users\BillS\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow_core\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
File "C:\Users\BillS\AppData\Local\Programs\Python\Python36\lib\imp.py", line 243, in load_module
return load_dynamic(name, filename, file)
File "C:\Users\BillS\AppData\Local\Programs\Python\Python36\lib\imp.py", line 343, in load_dynamic
return _load(spec)
ImportError: DLL load failed: The specified module could not be found.
Failed to load the native TensorFlow runtime.
See https://www.tensorflow.org/install/errors
for some common reasons and solutions.  Include the entire stack trace
above this error message when asking for help.
Process finished with exit code 1

@Bstrum36
What is make/model of your cpu?
I suspect your cpu model does not support AVX instructions sets.See hardware requirements
Make sure to download the latest microsoft visual c++ redistributable from here.
Make sure you update environment path for cuda.Make sure if there is a library that is in a different location/not installed on your system that cannot be loaded.Also, please follow the instructions from Tensorflow website.
Please, check Your CPU/Python is on 32 bits?Please, refer #36167 and see if it helps you. Thanks!

Thanks Ravikyram,
I just installed the the latest Visual Studio from your supplied link. That didn have any effect.
A to CPU  Its an Intel I&-7700K 4.2 ghz.  I have 16 Gb memory on my PC and am running 64 bit Windows.
What should the environment path be for cuda?  Her is the path.  C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA. Should I reset this?
How do  tell about AVX instructions? Tensorflow 2. worked before I treid to install the gpu version.
Thanks

@Bstrum36
For AVX instructions please go through the link .To set to set cuda path , please refer this https://www.tensorflow.org/install/gpu#linux_setup . Thanks!

Thanks again, No luck.
Here are the paths copied directly for the environment variable tab:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\libnvvp
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\extras\CUPTI\lib64
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include
C:\tools\cuda\bin
The libnvxp entry was already there.
I rebooted and still got exactly the the same errors.
Also I check my CPU and it is listed as AVX enabled.
I have been successfully using tensor flow 2.0  the problem occured when trying to get the GP working by unistall ver 2.o and installing the - gpu version.
I gave up on the gpu and uninstalled the version and have reinstalled 2.0 without errors.
I suppose I could do a system restore and hope for the best but I'd rather not go through that mess.
Any more ideas on how to proceed??

As far as I can tell, you have a CPU with AVX, and CUDA seems to be installed properly.
@chsigg @yifeif could this error be caused by a mismatching cudnn version?
Which cudnn version was 2.1 built against?

I solved the problem.  A dll was not in the correct path.


Add Cassandra Bloom filter indexing capabilities as a transform

Description of Feature
Cassandra Bloom filter index requires that columns be combined to make a Bloom filter and that the Bloom filter be stored in a blob column in the database.  This feature should apply a transform to specific table and columns such that any insert/update on those columns are merged into a Bloom filter and the Bloom filter column updated.
In addition, queries on the table will modify the where clause such that any column included in the bloom filter is removed and the value added to a query Bloom filter and that the "Bloom filter column = query Bloom filter" is added to the where clause.  False positives will need to be removed from solution returned by the query.
Description of Solution
Create a transform for Bloom filters on Cassandra
Identify table and columns
The transform will only run on tables that have Bloom filters enabled so the transform configuration must identify the following

Identify the fully qualified table name.
Identify the columns that are added to the Bloom filter. (called Bloom filter items - BFI in the documentation below)
Identify the Bloom filter Column (called BFC in documentation below)
Describe the "Shape" of the filter (number of bits and number of hashes).

Potential issues

Fully qualified table name works when Cassandra has not been issues a use <keyspace> command.  Not sure how to track the execution of use <keyspace>.
The number of bits specified in the Shape must match the number of bits specified when the Bloom filter index was created.  There is no check for this.

Requirements

Populate the bloom filter column on insert / update.
1.1 - If all BFI columns are not available on update, retrieve columns from table to build a proper Bloom filter or retrieve existing Bloom filter and merge them. (Need to discuss proper strategy)

Populate the bloom filter column on query
2.1 - Extract WHERE clause segments that contain BFI to create a Bloom filter.
2.2 - Add to the "BFC = BloomFilter" to the WHERE clause.
2.3 - Remove BFI WHERE clause segments from the query

Remove false positives from the query solution
3.1 - Add BFI to SELECT clause if not already there
3.2. - Verify that returned values in the BFI SELECT clause segments match the BFI  values in the original WHERE clause segments.  Any results that do not match are dropped.
3.3 - Remove any BFI SELECT clause segments that were added.

Additional context
Possible algorithms
Insert Algorithm
create an empty Bloom filter of the proper Shape.
for any BFI in INSERT
  Hash BFI value and add to Bloom filter.
add "BFC=Bloom filter" to the INSERT clause
execute insert

Update Algorithm
create an empty Bloom filter of the proper Shape.
for any BFI in UPDATE
   Hash BFI value and add to Bloom filter.
if any BFI values are not included in update execute one of the update resolution strategies below
add "BFC=Bloom filter" to the UPDATE clause
execute update

Resolution strategies.
The issue is that the Bloom filter must contain the values for all the populated BFI columns in the final row.  if any BFI is specified then all populated BFI must be specified.  If at least one BFI column is specified and any BFI columns are not specified in the update we will not know if that is because the BFI columns were not updated or were never populated.  There are three possible workarounds:

Request the unspecified BFI from the existing database row, update the Bloom filter and proceed with the update.
Request the Bloom filter from the existing database, merge that with the newly created one and update the table with the result.
Modify the index engine so that a request can be made to update the stored Bloom filter by merging in a second Bloom filter.

Strategies 2 and 3 depend on the property of Bloom filters that allows the merging of multiple filters into a single filter that has all the search properties of the original filters.  The issue that arises is that we will end up with filters that have both the original as well as the updated BFI values for the BFI that were specified in the update.
There are pros and cons for each of the above.

Strategy
Pro
Con
Workaround

1
Ensures complete Bloom filter after update
May add significant time to processing as multiple columns may need to be requested
none

2
Ensures complete Bloom filter after update
This will result in filters that have old data in them and thus a higher false positive rate.
It should be possible to create a task to read the data from the table and update the Bloom filter in the background.  This will keep the filter up to date and clean.

3
Faster than 1 or 2 as no additional queries have to be executed.
Requires rework of index implementation as well as investigation into custom index functions.  This will result in filters that have old data in them and will yield a higher false positive rate.
It should be possible to create a task to read the data from the table and update the Bloom filter in the background.  This will keep the filter up to date and clean.

Query Algorithm
create an empty Bloom filter of the proper Shape.
for any BFI in WHERE clause
   Hash BFI value and add to Bloom filter.
   Remove BFI from WHERE clause.
   if BFI not in SELECT clause add BFI to SELECT clause
add "BFC = Bloom filter" to the WHERE clause
execute query
// filter results
for each result
   if BFI column does not match BFI value in original WHERE clause drop the result.
   filter result columns down to only those columns specified in the original SELECT clause.
return results

proposed YAML file structure
  - BloomingCassandra
     table:
          keyspace: "keyspace"
          name:  "tablename"
          shape:
               - bits:  15
               - funcs : 3
          hashFunction: "hashFunctionName"
          bloom : "filterColumnName"
          columns:
              - columnName1
              - columnName2
              - columnName3
              ...
              - columnNameN

     table:
           ...

Notes

Each table that is being processed has a table entry.
bits is the number of bits in the bloom filter
funcs is the number of hashing functions for each filter
hashFunction specifies what has will be used.  If not specified Murmur hash will be used.  All configurations must use the same hash for the table or the queries will not work.
bloom entry is the BFC from earlier documentation.
columns enumerates the BFI from earlier documentation, order does not matter.

Insert Strategy if all columns are not available.
If all the columns are not available in the update the missing columns will be populated by executing a query to retrieve the missing columns and populating the filter correctly.  Issues: Overhead of extra query.
Other options :

Create a server side merge function that gets called when a partial update occurs.

Issues: hard to distinguish between complete and partial update
requires server side function code,
filters may become highly saturated leading to poor performance for queries.

Create a server side function that is called  by Shotover when Shotover detects a change.

Issues: requires server side function code,
filters may become highly saturated leading to poor performance for queries.

Have Shotover request the existing filter and update it on partial change.

Issues: Overhead of extra query,
filters may become highly saturated leading to poor performance for queries.

Some initial thoughts:

USE KEYSPACE is issued on a per tcp session basis, the transform will therefor see any USE KEYSPACE messages issued and be able to persist that in it's own struct which will exist for the life of the tcp session.
Might need to add to the description something along the lines of Queries that don't need to use the BFI to be resolved will be passed on unmodified.
Should we store "shape" information in a C* table somewhere (not the table, but a table)?
Update / recalculation tools for batch updating data are likely to be outside of scope for shotover itself (e.g. we won't bake that into the main shotover executable), but it might be worth publishing a set of helper utilities that cover this. There are plenty of other cases where we will want to do that (e.g. fixing consistency issues from say the redis replication feature).
With the potential update resoultion approaches... we need to thinking about read before write consistency issues (what if we have someone updating the same BF),
With highly saturated filters, can we log or warn on this and have doco on how to fix this (e.g. playing with the shape)?

Thinking about storing shape.  It seems to me that we will, in future, have
multiple transforms that share the properties across different client
sidecar implementations.  Shape for the BFI is an example.  The criteria is
that there is a configuration option, but that option must be the same for
all clients.  To my mind this means we need one location to edit to change
those options.  We could put this in a table somewhere or something
similar, but I think we need a general solution.
On Thu, 13 Jan 2022 at 01:54, Ben Bromhead @.***> wrote:

Some initial thoughts:

USE KEYSPACE is issued on a per tcp session basis, the transform
will therefor see any USE KEYSPACE messages issued and be able to persist
that in it's own struct which will exist for the life of the tcp session.
Might need to add to the description something along the lines of Queries
that don't need to use the BFI to be resolved will be passed on unmodified
.
Should we store "shape" information in a C* table somewhere (not the
table, but a table)?
Update / recalculation tools for batch updating data are likely to
be outside of scope for shotover itself (e.g. we won't bake that into the
main shotover executable), but it might be worth publishing a set of helper
utilities that cover this. There are plenty of other cases where we will
want to do that (e.g. fixing consistency issues from say the redis
replication feature).
With the potential update resoultion approaches... we need to
thinking about read before write consistency issues (what if we have
someone updating the same BF),
With highly saturated filters, can we log or warn on this and have
doco on how to fix this (e.g. playing with the shape)?

—
Reply to this email directly, view it on GitHub
https://github.com/shotover/shotover-proxy/issues/438#issuecomment-1011660961,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AVM5ARI24ROHRJX5XLBXKYTUVYWEFANCNFSM5K3YA75A
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were assigned.Message ID:
@.***>


Crypto Pair trait refactory

While preparing the integration of BLS curves I noticed some duplicated code that can be directly part of the Pair trait default implementation.
Note 1. I've left a temporary test just to check that the result was the one expected for an implementation that was essentially doing the same stuff but in a fancier way (I'll remove it before merge)
Note 2. I would also like to take the opportunity to hear your opinion about substrate-bip39 repo/crate.
Is a library containing only 2 functions (both of few lines), and one of these now ends up being unused.
Maybe we can just embed the seed_from_entropy function in the core code (keeping the tests obviously) Any drawback?

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: test-linux-stable
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2566575

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: test-linux-stable
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2566576

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: test-linux-stable
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2566624


Feature request ExistValidator for relations

To check the referential integrity one might define the exist validator specifying the  'targetClass'  and 'targetAttribute'. Based on this information a new query will be generated and executed.
But usually there is already such an query defined by a a hasOne relation.
So it would be great to do something like
 ['ableseartID', 'exist', 'ableseart'],

 public function getAbleseart()
    {
        return $this->hasOne(Ableseart::className(), ['id' => 'ableseartID']);
    }

instead of
 ['ableseartID', 'exist', 'targetClass' => Ableseart::className(), 'targetAttribute' => 'id'],

@twinni, are you willing to create PR with your feature?

could be targetRelation which overrides targetClass and targetAttribute it is set.

I don't get the implementation part though?
If this is about referential integrity would it not make more sense to use the relation definition instead of the value?
Something like
public function rules() {
    return [
        [['owner'], QueryCountValidator::class, 'query' => $this->getOwner()]
    ];

}

This way you don't have to use relation names as strings and you can use it no matter how heavy the model, since you can just run a count instead of actually instantiating it.
Furthermore, if it is about referential integrity it should check the state of the database not the state of the PHP code, where, for example, I can just set the value of a relation in PHP code.
For the current use case, it would already be sufficient to just use a RequiredValidator:
[['owner'], RequiredValidator::class]

As far as I can tell would lead to the same result.

I've been looking into this.
When implementing validateAttribute I noticed that validating a relation doesn't really make sense when validating attributes.
A relation already contains the attributes and therefore specifying it again at the attribute doesn't make much sense.
Would it be okay to just ignore the passed attribute parameter?
public function validateAttribute($model, $attribute)
{
// Ignore the attribute since we have a relation / query object that already defines the relation.
}

usage wise, one of these syntaxes might make more sense:
public function rules() {
    return [
        [['id'], 'number', ...],
        $this->getCustomer()->createValidator(), // Downside, contamination, query object is not about validation
        Validator::fromRelation($this->getCustomer()),
        new RelationExistValidator($this->getCustomer()))
    ];
}

This is a generic limitation of the way we do validation, same as that we can't properly specify multiple attributes per validation rule..

I suggest to create and execute a query like this:
select exists (select 1 from %tablename% where %column% = %foreignKey%);

This is very fast and the related model don't need to be instantiated.
Any syntax using the function instead of a string would be fine.

Your original point was that it should use the relation definition.
The original definition is a Query object which we can execute without instantiating the related model.
My question regarding syntax has more to do with (not) defining the attributes you're validating.
Consider I have a model Car and a model User, and Car belongs to User via the field owner_id.
The definition will look like this:
public function getOwner() {
return $this->hasOne(User::class, ['id' => 'owner_id']);
}

When validating the Car model, I just want to specify that it should have an owner without specifying that the owner_id field needs to be validated.
Instead I can use the relation definition to define a proper configuration, which is something that could be implemented using the syntaxes I described above.

@SamMousa, in most cases validation is not required and no rule should be defined. But in certain scenarios you might restrict valid values only to a subset of values that exists in the related table. It's up to the developer if he / she defines a rule or not.
The query object should be build on the relation definition. But instead of
select '*'

I suggest to use
select 1

DB will answer the request in most cases by reading the index without a row lookup.
LIMIT 1 will decrease response times an extra bit.
The additional exists wrapper just makes sure that you get a boolean and don't have to deal with an null or empty dataset .
I'm sure you know about this already. Of course the 'normal' query object will do the same job.

@twinni I never said I would use the query object and execute it as is, that would be really inefficient.
Instead I can just wrap it in a count query that way it'll 100% of the time.
Note that for array values we need to do more than check if 1 record exists, we need to know the count.
Regardless, your comments are not related to the questions I posed, they are related to how you think i'm implementing the actual validation.
I suggest you give me those comments after there is an actual implementation to comment on...

@SamMousa, I think I've answerd your question.

in most cases validation is not required and no rule should be defined. But in certain scenarios you might restrict valid values only to a subset of values that exists in the related table. It's up to the developer if he / she defines a rule or not.

The rest of my answer had additional hint's on how a query could be build. If you need to count the result then it's ok. If not it's a waste of ressources.

Feature request ExistValidator for relations
Your whole post is about needing a validator...

To use this validator you would need to define a rule...
The rule specifies which validator to use on which attribute(s), if a developer does not specify a rule this whole discussion is not relevant since whatever implementation we make will not get called.

Maybe I don't got your point.
Of course the developer has to define an exists rule and specify which relation definition has to be used. Based on this rule a query should be created and executed.
I don't see a reason to do any additional validation.
Only when a developer declares additional rules they must be executed.

I have not mentioned the word additional, i'm only talking about the exists rule.
Suppose that validator is built, and it does stuff... How would you define it in your rules() function, can you give me an example? :)

Your example with car and carOwner might be declared like this:
['ownerID', 'exist', 'targetRelation' => $this->getOwner()],

The validator might modify the query object before execution (e.g. Select 1). To validate call the count() method or - this would be my choice - add the limit 1 condition, wrap the query with the sql exists function and call the one() method.

Ah, we're getting closer to my point! :D
Your code:
['ownerID', 'exist', 'targetRelation' => $this->getOwner()],

This attribute that you specify, ownerID, is redundant. It is already specified as part of the relation.
If you change it in one place but not the other stuff will break.
So my point was ideally I'd want that part to be auto generated somehow:
[Validator::fromRelation($this->getOwner()]

Which could then return the correct array configuration where it extract the attribute name, OwnerID from the link in the relation.
And then there's the problem, what if the relation is based on 2 fields, how do we handle that?

This attribute that you specify, ownerID, is redundant. It is already specified as part of the relation.
If you change it in one place but not the other stuff will break.

That's right.  Avoid duplication.
When more than on field is involved nothing changes. All fields are also declared in the relation definiton. Derived from this example in the docs.

// a1 and a2 need to exist together, only a1 will receive error message
['a1', 'exist', 'targetAttribute' => ['a1', 'a2']],

we can use this syntax
 [null, 'exist', 'targetRelation'=>($this->getOwner()]

The first element can be use to define which field receives the error message (if not the first one).
  ['a2', 'exist', 'targetRelation'=>($this->getOwner()]

Shouldn't there be some info in guide?

@OndrejVasicek you can create it as you can and we'll adjust it together correcting English.

Ok @samdark . I've made my best :) I'm afraid you have to clean it a lot, but hope it helped at least.


feat: allow overiding sharp.options

Use rotate operation to auto-rotate image based on EXIF orientation TAG.
Docs of rotate operation: https://github.com/lovell/sharp/blob/0ee08bfe46e0b204b34151fead8139027c768375/lib/operation.js#L41
fix https://github.com/nuxt/image/issues/70

We may pass useExifOrientation option to [sharp constructor] https://github.com/lovell/sharp/blob/c213e9878d3d6335ebbff3f6811fb5ea5b77b7b3/lib/constructor.js#L145) -> here
We might expose sharpOptions from IPX to allow customizing this behavior
There might be a reason this option is disabled by default

We may pass useExifOrientation option to sharp constructor

The sharp constructor does not support this option

There might be a reason this option is disabled by default

I didn't find any downside of enabling this. Event docs does not mention anything about downsides of this option.
https://sharp.pixelplumbing.com/api-operation

@pi0 I've added an option to controll metadata removal on modified images

The sharp constructor does not support this option

What about sharp.options.useExifOrientation = true? 🤔

I didn't find any downside of enabling this. Event docs does not mention anything about downsides of this option.

Feature supported by https://github.com/lovell/sharp/pull/791 (@ncoden <3) At least seems adds additional CalculateExifRotationAndFlip call.
There is no enough context about use-case (except one issue for specific project) also about behavior of cloud resizers (like netlify). I would suggest keeping it same as sharp defaults unless someone needs option of having better context that for sure we need it.

What about sharp.options.useExifOrientation = true? 🤔

This should work, and calling rotate with no option is the same. https://github.com/lovell/sharp/blob/master/lib/operation.js#L42
But the idea can be useful, we can support an IPX option to modify IPX options
Object.assign(sharp.options, ipx.options)

This should work, and calling rotate with no option is the same. https://github.com/lovell/sharp/blob/master/lib/operation.js#L42

I see. Yet i would prefer using explicit option instead of implicitly calling rotate() for exif

@pi0 What do you think about changes?
This is really cool because users can control default behavior of sharp. What I love most is controling default quality for different formats

We may notice in documentation (both ipx and image module) that changing sharp options, needs a manual cache revalidation (or automate by generating cahce/integerity file with a checksum of options and invalidate directory if mistmatched)

I suggest to add docs and we can implement automation logic later


Fix parse error on special character in display name

Mail does not handle special characters in the email display name.
Switching back to plain email parsing + fixing empty display name.

Just noticed that this PR: https://github.com/thoughtbot/griddler-sendgrid/pull/24 addresses the same issue. Might be worth to just steal this test and use the fix from the other pr.

@vgoodman if you can split the test into an independent commit I'll cherry-pick it in

Closing in favor of: https://github.com/thoughtbot/griddler-sendgrid/pull/26


Add the ability to turn off the display for power savings

If the display is not being used it would be nice to turn off the display or at least the backlight in the interest of power savings.  Especially if the unit is mounted in a way where the display cannot be seen or will not be used.

I didn't even know if this would be possible so I did a little experimenting.. And there is a way to put the screen to sleep and turn it off.. However, due to ... reasons ... the command to turn the screen back on doesn't work on it's own (it requires a controller chip reset). But resetting the Wemos and/or a soft reboot does bring the screen back on. So, as long as you were ok with these limitations I could add it as a feature.

As an option I don't see why we don't add it.
If the display is off, changing the ATDISP=ON could also force a prompted reset as could pushing the home button while the display is off.


https://caniuse.com/#feat=bigint does take you to all list of features

https://caniuse.com/#feat=bigint should allow you to see data about Bigint of how browser support it but doesn't do it.

Works fine for me

Found to be working now


feat: Add the git-status to the lir file context.

This adds data with the git-status symbol to the file context. This way that information can be utilized in custom actions etc.
The new data can be accessed like so:
local ctx = require("lir").get_context()
local cur = ctx:current()
vim.pretty_print(ctx.git)
vim.pretty_print(cur.git)

Example output:
{
  toplevel = "/foo/bar/baz"
}

{
  status = "AM"
}

toplevel is the path to the top-level directory of the working tree.
status will be a nil value for files that don't have a git status.

Thanks for your contribution!


Don’t set default enablement

Leave that to the launcher (e.g. things like AMP)

Confirmed this fixes the issue where a product launcher was trying to set the default, but brooklyn-tosca overwrote it. Merging.

Oops, this has broken ToscaTypePlanTransformerIntegrationTest - I'll look at that tomorrow, unless someone else picks it up.


Too much padding on left side

On the site, the text has a lot of padding but the image doesn't. This looks off and I think the padding should be made equal.
If you like I can open a PR for this.

please assign me

Hello, I would like to work upon this issue, please assign it to me

So three of us wanna work on this... Who's it gonna be?

I think the picture is good. If we give it padding it won't look good. The best we can do here is just reduce the text padding by very little value.
@avneesh0612

Closing this issue, for now this change is not required as the padding seems fine.


[Feature]:  Lvl up system

Feature type
New Feature
Description
Replace current exp in model and interfaces in users, gateway and fights. Exp should be just 1 number. Add enum, with information, how much exp each lvl need to go up. Later, this system will be rewritten to admin content.

Related task https://github.com/Monsters-RPG-game/Gateway/issues/269


[#960][FOLLOWUP] fix(dashboard): Fix get_pid_file_name function for the dashboard.

What changes were proposed in this pull request?
Fix get_pid_file_name function for the dashboard.
Why are the changes needed?
This is the follow up pr of  #1056
Does this PR introduce any user-facing change?
No.
How was this patch tested?
By running the script: start-dashboard.sh and stop-dashboard.sh.

@jerqi Please have a look at this. Thanks.

cc @yl09099

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (eef0134) 53.26% compared to head (7a05eaa) 53.47%.

Additional details and impacted files
@@             Coverage Diff              @@
##             master    #1346      +/-   ##
============================================
+ Coverage     53.26%   53.47%   +0.20%
+ Complexity     2712     2181     -531
============================================
  Files           418      341      -77
  Lines         23901    15348    -8553
  Branches       2042     1425     -617
============================================
- Hits          12732     8208    -4524
+ Misses        10384     6676    -3708
+ Partials        785      464     -321

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

@rickyma @yl09099 thanks, merged to master.


Add Real Time Clock module

Just a tip:
Route the RTC I2C directly to the Raspberry Pi I2C. In addition, route the DS3231 INT/SQW signal to a Raspberry Pi GPIO. The enable both overlays, i2c-rtc and pps-gpio. This way you have the RTC directly supported by kernel.


Resolve export error while starting project on Windows

Description
Running the project on Windows system results in the following error:

'export' is not recognized as an internal or external command,
operable program or batch file.

To Reproduce
Steps to reproduce the behavior:

On Windows, run npm run dev to start the project.
See the resulting error

Expected behavior
On running npm run dev the projects starts .
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

This can be fixed by setting up Windows Subsystem for Linux, preferably WSL2.
Please see https://code.visualstudio.com/docs/remote/wsl-tutorial for a complete guide using VS Code.


Convert camera pose to arm co-ordinates.

The QRCodeEstimation library returns the 'pose' of the camera, to the QR code.
We need to figure out how to talk between pose and dagu arm co-ordinates.
Keep in mind that the pose (calculated from the camera) is relative to the end effectors co-ordinate frame, but the current arm abstraction deals with the world frame.

http://image.slidesharecdn.com/426lecture4-2012final-120803022706-phpapp01/95/426-lecture-4-ar-developer-tools-12-728.jpg?cb=1344327307


Documentation: How to install Anaconda Python3 on Windows 10 (can't install on Windows)

This page was unhelpful for installation, seems like it is written for a Linux installation and not a Windows install. I've tried many edits to the config find and can't get Python3 to work. Needs to be a Windows-specific set of instructions for installation with Anaconda.
Haven't been able to install Beaker with Anaconda or Python...
Update: my issue is almost exactly as this issue

What version of Python is your root conda environment?

Hello Scott,  my base python in anaconda is. version 3.6.
On Jun 23, 2017 12:06, "Scott Draves"<EMAIL_ADDRESS>wrote:

What version of Python is your root conda environment?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/twosigma/beakerx/issues/5531#issuecomment-310720863,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ATHxLKtD66Lmj3U9RkahOGf2JEvZD9XGks5sG_CIgaJpZM4OBtCX
.

For classic Beaker I think the base has to be Python2, and then you install a Python3 env into it.
In BeakerX this problem is solved, but it is still a couple of weeks from release...

I will try that, thanks.
On Fri, Jun 23, 2017 at 9:08 PM, Scott Draves<EMAIL_ADDRESS>wrote:

For classic Beaker I think the base has to be Python2, and then you
install a Python3 env into it.
In BeakerX this problem is solved, but it is still a couple of weeks from
release...
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/twosigma/beakerx/issues/5531#issuecomment-310806884,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ATHxLICLYQHdmV5oAtXUyIo89RkmaBCBks5sHG-VgaJpZM4OBtCX
.

--
Joseph Dasenbrock

no problem, here are the instructions: http://beakernotebook.com/getting-started#Python3

I just installed Anaconda 2, unable to connect python 2 to notebook.
Here is my config file:
{
  "pref-format" : "1",
  "allow-anonymous-usage-tracking" : true,
  "languages" : {
    "IPython" : {
      "path" : "/Users/dasen/Anaconda2/Library/bin"
    }
  },
  "advanced-mode" : false,
  "edit-mode" : "default"
}

well that looks fine, sorry idk why it's not working.


feat: nav bar background color

The nav bar was not that clear because of the background color.

I added a dark background color to make it more clear and better.

#653 @CBID2

Looks great

Great job @CBID2 and @lambeboluwatife!!

There are still minor issues with this though.

There are still minor issues with this though.

Elaborate @tobySolutions

There are still minor issues with this though.

which screen size is this?
cause I tried all the screen and it didn't break

This is what the site looks like on bigger screens @lambeboluwatife.

yeah
the nav bar takes exactly the total width of the screen.
That's how it's going to be
@tobySolutions

Looks great @lambeboluwatife.

Looks great @lambeboluwatife.

thanks

@tobySolutions can this be merged?

This issue still hasn't been resolved yet. The problem is a web page layout issue. If you can get someone from the discord channel to join you on this. I believe it can be resolved in a jiffy. It's just a minor issue.

I think @devvsakib might be right on this. Do you have an idea as to how you can sync up with @CBID2 and @lambeboluwatife on this Sakib?

BG color doesn't look good :) transparent bg is better

Okay
what do you suggest we should do?

I think @devvsakib might be right on this. Do you have an idea as to how you can sync up with @CBID2 and @lambeboluwatife on this Sakib?

I will recommend not adding background color cz it's really not matching with the site. Navbar is perfect and leaves the navbar for now my opinion.
But the homepage section text needs some modification.

I would love to suggest working on it. align text to justify and decrease heading size for small devices.

I think @devvsakib might be right on this. Do you have an idea as to how you can sync up with @CBID2 and @lambeboluwatife on this Sakib?

I will recommend not adding background color cz it's really not matching with the site. Navbar is perfect and leaves the navbar for now my opinion.
But the homepage section text needs some modification.

I would love to suggest working on it. align text to justify and decrease heading size for small devices.

Hey @devvsakib. I found this article on how you can make changes to someone's PR.

@CBID2  didn't get your point! what do you mean?

@CBID2  didn't get your point! what do you mean?

I thought you wanted to add the changes to the PR @devvsakib.

Are you still on this @devvsakib, @CBID2, @lambeboluwatife?

Are you still on this @devvsakib, @CBID2, @lambeboluwatife?

@tobySolutions
where can I locate the main CSS file in the code base.

Check out https://github.com/FrancescoXX/4c-site/tree/main/src/styles for styles that you might need to be applied globally. Although we already have tailwind set up in the project for now. What do you think?

Check out https://github.com/FrancescoXX/4c-site/tree/main/src/styles for styles that you might need to be applied globally. Although we already have tailwind set up in the project for now. What do you think?

I'll check it out

Check out https://github.com/FrancescoXX/4c-site/tree/main/src/styles for styles that you might need to be applied globally. Although we already have tailwind set up in the project for now. What do you think?

I'll check it out

Awesome! Goodluck!

are you going to merge this PR @tobySolutions ?

I can't merge this PR yet, cos it doesn't resolve the issue.

bro, lets talk in discord @lambeboluwatife

bro, lets talk in discord @lambeboluwatife

okay @devvsakib

Glad to see you guys are collaborating @lambeboluwatife and @devvsakib!! 🚀🚀

bro, lets talk in discord @lambeboluwatife

okay @devvsakib

Any progress you two?

bro, lets talk in discord @lambeboluwatife

okay @devvsakib

Any progress you two?

join us in discord

bro, lets talk in discord @lambeboluwatife

okay @devvsakib

Any progress you two?

join us in discord

Ok

Hey @CBID2, @lambeboluwatife; thank you both for your awesome effort to make this PR fix issue #653. I really appreciate your efforts.
However, this issue has already been resolved by #693 by @devvsakib. Thank you very much, folks! I appreciate you all.

Hey @CBID2, @lambeboluwatife; thank you both for your awesome effort to make this PR fix issue #653. I really appreciate your efforts.
However, this issue has already been resolved by #693 by @devvsakib. Thank you very much, folks! I appreciate you all.

Happy to help

Hey @CBID2, @lambeboluwatife; thank you both for your awesome effort to make this PR fix issue #653. I really appreciate your efforts.
However, this issue has already been resolved by #693 by @devvsakib. Thank you very much, folks! I appreciate you all.

Happy to help

You're welcome @tobySolutions! 😁


Added bins to plot_histogram and made minor cosmetic tweaks...

Changed features to labels and updated README.md...

Reviewed and accepted.


Any plans to incorporate the Auth API?

I'm building a game, and would love to authenticate users using their wallets.
In order to do that, I need the Auth API for wallet connect working.
What's time timeline to getting that added to this repo?

Hi @Luzzotica
Our current timeline is to have the AUTH API ready to go before April.

WalletConnect.Auth has been released on nuget


Parallel build fails with NoSuchFileException for target/classes

I'm testing mvnd on a project with a large number of modules and it seems to always fail at the same point.
Redacted output:
18:21:04  [INFO] Reactor Summary for xxxx:
18:21:04  [INFO]
[...]
18:21:04  [INFO] project-x ............................... SUCCESS [  0.104 s]
[...]
18:21:04  [INFO] project-y ............................... FAILURE [  0.027 s]
[...]
18:17:29  [ERROR] java.nio.file.NoSuchFileException: /mnt/build/workspace/ci-branch/project-x/target/classes
18:17:29  [ERROR] project-y: java.nio.file.NoSuchFileException: /mnt/build/workspace/ci-branch/project-x/target/classes

Note that project-y has a dependency on project-x and project-x is built successfully.
mvnd version: 0.6.0
mvnd -B -T 4 compile

Simply switching back to Maven 3.8.3 solves the problem.

This actually looks like the problem described in https://issues.apache.org/jira/browse/MNG-7285, it should be fixed in the upcoming maven 3.8.4, but I'll provide a fix by cherry-picking https://github.com/apache/maven/pull/628.

Just gave it a spin with 0.8.0 and it works now :)

Just gave it a spin with 0.8.0 and it works now :)

It's not an official release yet, I'll certainly have to cut it again in the coming days until the release process has been fully adapted to the move to the ASF.

@otbuz
Why you think it has to do with mvnd and/or the version 0.8.0, only because you use it?
I would like to see the stack trace using -e like this mvnd -e -B -T 4 compile.
I have always had a suspicion about Maven Project model and Resolver and the thread safety in there. Due to events are clustered together, these issues may happen for long time and disappear for long time.

I might have been too early with my verdict:
08:40:40.839 I Dispatch message: KeepAlive
08:40:40.939 I Dispatch message: KeepAlive
08:40:41.039 I Dispatch message: KeepAlive
08:40:41.140 I Dispatch message: KeepAlive
08:40:41.240 I Dispatch message: KeepAlive
08:40:41.340 I Dispatch message: KeepAlive
08:40:41.441 I Dispatch message: KeepAlive
08:40:45.930 I Dispatch message: KeepAlive
08:40:46.030 I Dispatch message: KeepAlive
08:40:46.038 E Error dispatching events
org.mvndaemon.mvnd.common.DaemonException$RecoverableMessageIOException: Could not write message KeepAlive to '/<IP_ADDRESS>:41476'.
	at org.mvndaemon.mvnd.common.DaemonConnection.dispatch(DaemonConnection.java:116)
	at org.mvndaemon.mvnd.daemon.Server.lambda$handle$3(Server.java:500)
	at java.lang.Thread.run(Thread.java:748)
Caused by: java.io.IOException: Broken pipe
	at sun.nio.ch.FileDispatcherImpl.write0(Native Method)
	at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47)
	at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93)
	at sun.nio.ch.IOUtil.write(IOUtil.java:51)
	at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:470)
	at org.mvndaemon.mvnd.common.DaemonConnection$SocketOutputStream.writeWithNonBlockingRetry(DaemonConnection.java:275)
	at org.mvndaemon.mvnd.common.DaemonConnection$SocketOutputStream.writeBufferToChannel(DaemonConnection.java:263)
	at org.mvndaemon.mvnd.common.DaemonConnection$SocketOutputStream.flush(DaemonConnection.java:257)
	at java.io.DataOutputStream.flush(DataOutputStream.java:123)
	at org.mvndaemon.mvnd.common.DaemonConnection.dispatch(DaemonConnection.java:113)
	... 2 common frames omitted
08:40:47.656 D Expiration check running
08:40:47.694 D Storing daemon stop event: after the daemon was no longer found in the daemon registry
08:40:47.698 I Daemon will be stopped at the end of the build after the daemon was no longer found in the daemon registry
08:40:47.698 D Stop as soon as idle requested. The daemon is busy.
08:40:47.698 I Updating state to: StopRequested
08:40:47.700 D daemon stop has been requested. Sleeping until state changes.
08:40:58.005 D Expiration check running

I'm going to try with 0.7.1 to rule out a regression from 0.8.0
@Tibor17 added the -e flag and will report back :wink:

I might have been too early with my verdict:
08:40:40.839 I Dispatch message: KeepAlive
08:40:40.939 I Dispatch message: KeepAlive
08:40:41.039 I Dispatch message: KeepAlive
08:40:41.140 I Dispatch message: KeepAlive
08:40:41.240 I Dispatch message: KeepAlive
08:40:41.340 I Dispatch message: KeepAlive
08:40:41.441 I Dispatch message: KeepAlive
08:40:45.930 I Dispatch message: KeepAlive
08:40:46.030 I Dispatch message: KeepAlive
08:40:46.038 E Error dispatching events
org.mvndaemon.mvnd.common.DaemonException$RecoverableMessageIOException: Could not write message KeepAlive to '/<IP_ADDRESS>:41476'.
	at org.mvndaemon.mvnd.common.DaemonConnection.dispatch(DaemonConnection.java:116)
	at org.mvndaemon.mvnd.daemon.Server.lambda$handle$3(Server.java:500)
	at java.lang.Thread.run(Thread.java:748)
Caused by: java.io.IOException: Broken pipe
	at sun.nio.ch.FileDispatcherImpl.write0(Native Method)
	at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47)
	at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93)
	at sun.nio.ch.IOUtil.write(IOUtil.java:51)
	at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:470)
	at org.mvndaemon.mvnd.common.DaemonConnection$SocketOutputStream.writeWithNonBlockingRetry(DaemonConnection.java:275)
	at org.mvndaemon.mvnd.common.DaemonConnection$SocketOutputStream.writeBufferToChannel(DaemonConnection.java:263)
	at org.mvndaemon.mvnd.common.DaemonConnection$SocketOutputStream.flush(DaemonConnection.java:257)
	at java.io.DataOutputStream.flush(DataOutputStream.java:123)
	at org.mvndaemon.mvnd.common.DaemonConnection.dispatch(DaemonConnection.java:113)
	... 2 common frames omitted
08:40:47.656 D Expiration check running
08:40:47.694 D Storing daemon stop event: after the daemon was no longer found in the daemon registry
08:40:47.698 I Daemon will be stopped at the end of the build after the daemon was no longer found in the daemon registry
08:40:47.698 D Stop as soon as idle requested. The daemon is busy.
08:40:47.698 I Updating state to: StopRequested
08:40:47.700 D daemon stop has been requested. Sleeping until state changes.
08:40:58.005 D Expiration check running

I'm going to try with 0.7.1 to rule out a regression from 0.8.0
@Tibor17 added the -e flag and will report back 😉

I don't think this exception is related to the problem.  The message indicates the daemon could not be found in the registry, which is usually the case when the registry is manually deleted.  I also suspect the exception just being a side effect of the daemon trying to stop (because of the registry problem).

0.7.1 consistently fails with the aforementioned java.nio.file.NoSuchFileException.
For 0.8.0 the build continues a lot longer but the daemon (sometimes?) just seems to die at some point:
09:04:15.324 I Dispatch message: ProjectLogMessage{projectId='xxxxxxxxxxxxxxxx', message='[INFO] [stdout] Generating code...'}
09:04:15.324 D Expiration check running
09:04:15.341 D Storing daemon stop event: after the daemon was no longer found in the daemon registry
09:04:15.329 E Error dispatching events
org.mvndaemon.mvnd.common.DaemonException$RecoverableMessageIOException: Could not write message ProjectLogMessage{projectId='otj-cust-radeberger-server', message='[INFO] [stdout] Generating code...'} to '/<IP_ADDRESS>:49960'.
	at org.mvndaemon.mvnd.common.DaemonConnection.dispatch(DaemonConnection.java:116)
	at org.mvndaemon.mvnd.daemon.Server.lambda$handle$3(Server.java:500)
	at java.lang.Thread.run(Thread.java:748)
Caused by: java.io.IOException: Broken pipe
	at sun.nio.ch.FileDispatcherImpl.write0(Native Method)
	at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47)
	at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93)
	at sun.nio.ch.IOUtil.write(IOUtil.java:51)
	at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:470)
	at org.mvndaemon.mvnd.common.DaemonConnection$SocketOutputStream.writeWithNonBlockingRetry(DaemonConnection.java:275)
	at org.mvndaemon.mvnd.common.DaemonConnection$SocketOutputStream.writeBufferToChannel(DaemonConnection.java:263)
	at org.mvndaemon.mvnd.common.DaemonConnection$SocketOutputStream.flush(DaemonConnection.java:257)
	at java.io.DataOutputStream.flush(DataOutputStream.java:123)
	at org.mvndaemon.mvnd.common.DaemonConnection.dispatch(DaemonConnection.java:113)
	... 2 common frames omitted
09:04:15.351 I Daemon will be stopped at the end of the build after the daemon was no longer found in the daemon registry
09:04:15.390 D Stop as soon as idle requested. The daemon is busy.
09:04:15.390 I Updating state to: StopRequested
09:04:15.402 D daemon stop has been requested. Sleeping until state changes.
09:04:25.311 D Expiration check running
09:04:33.671 I Build finished, finishing message dispatch
09:04:33.671 I Daemon back to idle
09:04:33.671 I Updating state to: Idle
09:04:36.324 D daemon is running. Sleeping until state changes.
09:04:36.324 D Expiration check running
09:04:36.331 D Storing daemon stop event: other compatible daemons were started and after being idle for 4m54s277ms and not recently used
09:04:36.332 I Daemon will be stopped at the end of the build other compatible daemons were started and after being idle for 4m54s277ms and not recently used
09:04:36.333 D Marking daemon stopped due to other compatible daemons were started and after being idle for 4m54s277ms and not recently used. The daemon is running a build: false
09:04:36.333 I Updating state to: Stopped
09:04:36.334 D daemon has stopped.
09:04:36.339 E Error running daemon loop
java.nio.channels.AsynchronousCloseException: null
	at java.nio.channels.spi.AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:205)
	at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:256)
	at org.mvndaemon.mvnd.daemon.Server.accept(Server.java:223)
	at java.lang.Thread.run(Thread.java:748)

No signs of OOM killing etc

Skimming through the 0.8.0 changes, i think the original issue is a duplicate of https://github.com/apache/maven-mvnd/issues/564
As for the new error...no idea

@otbutz feel free to raise a new issue for the other exception, I need to investigate if the Broken pipe exception is the cause or the consequence of the Daemon will be stopped at the end of the build after the daemon was no longer found in the daemon message.


malloc error with grpc-js

The integration tests, run on a Mac against a Zeebe 1.4.0-alpha2 broker in a local Docker container, periodically (1/3 of runs) throw this:
RUNS  src/__tests__/integration/API1/Client-ThrowError.spec.ts
node(57755,0x119598e00) malloc: *** error for object 0x7fb466c4b980: pointer being freed was not allocated
node(57755,0x119598e00) malloc: *** set a breakpoint in malloc_error_break to debug
[1]    57646 abort      npm run test:integration

Node 16.3.1 using:
"@grpc/grpc-js": "^1.5.7",
"@grpc/proto-loader": "^0.6.9"

(latest atm).

Also got this error:
[1]    42000 floating point exception  npm run test:integration

Haven't been able to reproduce running against Camunda Cloud Hosted 1.4.0-alpha2 from a Mac.

Have not seen this for close to a year, closing.


Update Language File Verifier to Check For New e-mail files

Otherwise, some languages will be "valid", but they'll be missing email templates.

No changes needed. Closing.


GEODE-2439: Remove non-standard int typedefs

Purpose of this pull-request is to remove references to alleged non-portable inttypes.h header.  References are replaced with fixed width integer types introduced in C++11 and defined in cstdint header.
http://en.cppreference.com/w/cpp/types/integer
Testing - built and ran integration-tests on OSX and Windows

A rebase would have been preferable to a merge.

@pivotal-jbarrett Yes.  Shall I redo?  I had decided to use the github UI to resolve conflict and that's how it came out.  I guess that's what I get for leaving the terminal?

@dgkimura yes, you want to handle all that locally... it was just your turn to fall for Github's siren song

@echobravopapa Done

@dgkimura I think the GitHub UI would work better if the Geode repo was actually hosted in GitHub but since this is a mirror it causes some strange behaviors with pull requests.


Added wave loader

Issue reference:
Proposed changes:
Added wave loader
Type of change:
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Other (please specify)
[ ] This change requires a documentation update

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings

Additional info (if any):

Great Work @varunKT001 .
Thanks for your Contribution.


Reading Calendar Invites

Hello
Has anyone been able to use this to read calendar invites on incoming mail from Outlook? They don't seem to show up in the attachments array, whereas a text file does show up in the attachments array.  Doing a print_r on the whole message object doesn't seem to show calendar invites, but the calendar invite is in the email as I can see it in Roundcube as an attachment.
Thanks
Aaron

This is under the custom attachment type issue.

Thanks for the reply, is it likely this will be fixed soon, or if not is there a way to get the raw message headers/body so I can parse it in the meantime?

This is currently not supported no. I am working on it now

Alright, thank you for working on the issue, much appreciated :)


Repeated Characters In Encrypted Message

It's currently very easy to notice duplicate characters in the encrypted message. This could make it easier for someone to hack the data. I'll be fixing this soon by adding more than one option for the "partial keys" of each character. One will then be randomly selected.

Issue has been fixed.


FMS calculation only done for one message in a symbol

Using the dissectorMatcher or to be more specific while trying to calculate the FMS over a symbol, I only get one single message calculated. I found it to be connected to this code called by this function. The problem here is that not an actual list is constructed, instead only one entry for the first message is submitted. I began trying to fix this issue but ran into follow-up issues. This is why I wanted to note it here first, to see if there is a quick fix I am not aware of...

The proposed PR does not fix this, unfortunately.
With its parameter tformat set to None, as currently always is the case,
nemere.validation.dissectorMatcher.DissectorMatcher._inferredandtrueFieldEnds
returns always only the FMS for the first message of the symbol.
The clean solution will be to replace all usages of DissectorMatcher by BaseDissectorMatcher and get rid of Netzob Symbol parsing altogether.


Exiting 1st-person camera sets camera to wrong position (where it left beforehand)

When I press esc to exit 1st person camera, the camera is placed at the position where I originally entered the 1st-person camera mode.

That is the intended behavior, which is the same as what the original mod does. It is possible to add an extra option to let user choose whether to stay at the same position or to return to where it left. What do you think?

It is a bit confusing, but the "original mod" is this right? https://steamcommunity.com/sharedfiles/filedetails/?id=650805785
For me, sometimes I get bored and just select a public transport vehicle and go into first-person mode. This way I can just chill and look at my city from another angle, makes me feel like I am living inside it. So I agree there should be an option to let users select whether to return to the original position or just set the camera to where it currently is at.

The option is added by 950cc3324f188a43966704be48c8a39153725f69

There's a fix from a3c2a2390a39771bce32d9288947a7092b4ace07


Chore: Insert 'About' in Landing Page Navbar

Category

[ ] Documentation
[ ] Resource Addition
[x] Codebase
[ ] User Interface
[ ] Feature Request

Description

We need to insert 'About' under 'Support' in landing page footer that links to the following URL:

https://openpedia.netlify.app/#about

@Sriparno08 please assign this issue to me under JWOC'24

You're assigned.

@AryanPahuja21 Please submit a PR as soon as possible. Otherwise, you will be unassigned from this issue.


[Feature request] Option to restore previously open tabs

It would be awesome to be able to toggle an option to restore our previously opened tabs. Useful for separating notes when using the app as a scratch pad.

Duplicate: https://github.com/JasonStein/Notepads/issues/18


Major refactor of kdb module

The code commenting level is poor, functions are too monolithic, np.array functionality is not easily substitutable,
KDB | writer | reader seems clunky.

I wrote three functions yesterday:
kmer_to_id
a naive parallel parse_fastq
shred_seq (works on seqRecords, sliced from either fastq or fasta)
This morning (2/15) I saw that the fastq iteration is at 25% CPU usage when simply iterating and is largely memory restricted, leading to reaping of processes regardless of the parallelism. My first implementation of the parallel parse_fastq used a pool.map across all records of the fastq file.

I have been collecting data in the past few days from the first implementation of the parallel function to see what performance gains there are from parallel processing. So far nearly a log2 fold change of 1 (100% performance gain) can be observed by simply allowing 2 processors to be used to map the reads to the kmers and then the ids. Memory seems to only be influenced by the number of reads processed in a chunk at a time, and I'm looking at 50k-400k range to keep maximum memory utilization between 500Mb and 4Gb.
Today I began a refactor of the module to simplify the refactor further from 2/15/2020. There are only 2 classes this time: a class that essentially wraps the k attribute. And the second class is seqparser.FastqParser which has a generator pattern and contains one method: FastqParser.take(n) which retrieves n reads from the file.
I have decided on using sqlite3 as the intermediary file to keep tallies, and I've found an effective solution here to incrementation. This solution would cause an n+1 problem, unless the where clause included IDs, but the application code would have to check for reads that have two of the same k-mer.

After successfully using sqlite3 as an intermediary on-disk storage mechanism, I've been streaming data from the fastq files into the sqlite database. My mentors always want code to be very modular, so I've decided to use sqlalchemy going forward, but I haven't made it perfectly configurable plug-and-play at this point. It's still basically 98% there, you just have to supply your own sqlalchemy engine object.
After struggling with the sqlalchemy code for a while, it is technically ready to be benchmarked, but I'd prefer the rest of the profiling code be implemented. The last remaining part is streaming chunks of data out of the sqlite database and into the bgzf file in increments. I haven't observed a generator pattern for writing datasets before, but I imagine it shouldn't take more than a few days to implement.
I will begin by looking at grabbing a few thousand records out of the  database and writing those incrementally to the bgzf file using code that is reminiscent of the first released version of kdb.
But at this point, I'd like to scrub the code a few more times, comment what I have, which should make re-integrating the old kdb codebase back into here a little bit easier. At this point, I have unittests written for only one of the submodules.

After significant effort, the profile command is nearly complete. It has muliprocessing support, support for variable fastq chunk sizes, and a condensed SeqParser class that handles both fastq and fasta.
The application generates a two-column bgzf file suitable for indexing. Column 1 is the k-mer id, and column 2 is the k-mer count.
The application utilizes a streaming counting mechanism, similar to many other online algorithms in the space. However, the app uses sqlite as on-disk counting to support, in theory, larger values of k. The use of sqlite as an intermediate made the coding process take longer, but was the simplest solution to permit on-disk tallying. Unfortunately, there is only a small amount of savings to be had from some type of compressed database storage, but the cost of writing would tend to be higher (I think), especially during an online algorithm's tallying process.
In practice, the SQLite database can be used for all levels of k to avoid a more complicated coding process and heterogeneity in counting method. Even though it would be convenient to store the entire profile in memory as I did in the past, this should theoretically support large values of k, and could be an extensible database, and should be simple for most sysadmins to import.
I'm considering making a bgzf -> Sqlite importer which would discard the metadata header but allow for the composite profile to be reconstituted as a sqlite database.
The next major goal for the refactor is a re-tooling of the similarity metric to calculate a streaming metric pairwise from each file. This will be heavily IO-bound but again should support larger values of k.
The other goal that can be started is the experimentation of a get_profile function or similar in fileutils that would slurp the entire profile into memory. I'm sick of not being able to have direct access to the data in memory if I'm sure it will fit, and having a function like this would be helpful for experimentation with the similarity metrics.

I don't know what happened. The parlalel.map sounds familiar, but I don't get what that has to do with the determinism of the program. If it's 25% CPU usage, then there is something else restricting flow of data through the program. It could be do to inefficiencies of language design, or it could be do to syntactic issues related to interpreter frequencies. Perhaps this could actually be addressed by looking at the uh. The um. The different threads dictated bound by the GIL and the interpreters implementation of parallelism. Do you have any more information you feel like you can provide about the issue?

I have been collecting data in the past few days from the first implementation of the parallel function to see what performance gains there are from parallel processing. So far nearly a log2 fold change of 1 (100% performance gain) can be observed by simply allowing 2 processors to be used to map the reads to the kmers and then the ids. This was from judging by GNU time, why isn't there a plot of this showing parsing speed against the number of processors? Something like GNU time speed in milliseconds per processor (categorical data visualization) and then a layer of fastq file sizes? Let me rephrase that. Speed is the independent variable, influencing seconds per file at different fastq file sizes, compressed and uncompressed.
Memory as of yet seems unprofiled. Different performances for both profile generation and profile retrieval/display operations.
Today I began a refactor of the module to simplify the refactor further from 2/15/2020. There are only 2 classes this time: a class that essentially wraps the k attribute. And the second class is seqparser.FastqParser which has a generator pattern and contains one method: FastqParser.take(n) which retrieves n reads from the file.
I have decided on using sqlite3 as the intermediary file to keep tallies, and I've found an effective solution here to incrementation. This solution would cause an n+1 problem, unless the where clause included IDs, but the application code would have to check for reads that have two of the same k-mer. Okay so at the beginning, this needs to keep track of sequence read id hashes and then the in-read index to keep track of the kmers position underneath the read space.

As mentioned previously, the incrementation will deliberately cause n+1 query and modification penalties during original profile generation, but not during secondary profile file generation, since the tallies can be copied over through a memory streaming step. Original profile generation should be the most expensive of the system, right? We're taking a huge hit in performance for doing this on disk instead of in memory, but it should scale better in theory to profile sizes, whether multiplexed or demultiplexed in their nature of their associated metadata and the schemas they represent.
It's better to have an on-disk counter because file sizes change more rapidly than memory limitations do, since that reflects the efficiency of the typing, the underlying dependencies, and of course the degree of custom implementations that can conflict with the usage of those dependencies, but also just the limitations of the language.

I've been flaming again too much, uh but the quality of the code has generally improved to a usable state. Uh i need to actually steer with the issues for a bit because I'm too overwhelmed by all the new issues related to following up on the new capabilities I just added. Now the need and interest level I have for this project is also overwhelming, I want to give it my best.

I've been flaming again too much, uh but the quality of the code has generally improved to a usable state. Uh i need to actually steer with the issues for a bit because I'm too overwhelmed by all the new issues related to following up on the new capabilities I just added. Now the need and interest level I have for this project is also overwhelming, I want to give it my best.


Configuration for protocol sniffing

static_resources:
  listeners:
  - address:
      socket_address:
        address: <IP_ADDRESS>
        port_value: 8000
    filter_chains:
    - filters:
      - name: envoy.http_connection_manager
        typed_config:
          "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager
          codec_type: auto
          stat_prefix: real_svc
          route_config:
            name: local_route
            virtual_hosts:
            - name: service
              domains:
              - "*"
              routes:
              - match:
                  prefix: /
                route:
                  cluster: http
          http_filters:
          - name: envoy.router
            typed_config: {}
  - address:
      socket_address:
        address: <IP_ADDRESS>
        port_value: 15001
    listener_filters:
      - name: envoy.listener.original_dst
        typed_config: {}
      - name: envoy.listener.tls_inspector             # filter used for inspecting tls
        typed_config: {}
      - name: envoy.listener.http_inspector           # filter used for inspecting http protocol, this filter should be put after tls_inspector
        typed_config: {}
    filter_chains:
    - filter_chain_match:
        application_protocols: ["http/1.1", "h2"]      # application protocol used for selecting filter chain
      filters:
      - name: envoy.http_connection_manager
        typed_config:
          "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager
          codec_type: auto
          stat_prefix: ingress_http
          route_config:
            name: local_route
            virtual_hosts:
            - name: service
              domains:
              - "*"
              routes:
              - match:
                  prefix: /
                route:
                  cluster: PassthroughCluster
          http_filters:
          - name: envoy.router
            typed_config: {}
    - filters:
      - name: envoy.tcp_proxy
        config:
          stat_prefix: tcp
          cluster: PassthroughCluster
  clusters:
  - name: PassthroughCluster
    type: ORIGINAL_DST
    connect_timeout: 10s
    lb_policy: ORIGINAL_DST_LB
  - name: http
    connect_timeout: 0.25s
    type: static
    lb_policy: round_robin
    load_assignment:
      cluster_name: http
      endpoints:
      - lb_endpoints:
        - endpoint:
            address:
              socket_address:
                address: <IP_ADDRESS>
                port_value: 80
admin:
  access_log_path: "/dev/null"
  address:
    socket_address:
      address: <IP_ADDRESS>
      port_value: 8001

Configuration for testing http protocol sniffing. Follow steps here to test http inspector.
/cc @duderino @costinm @silentdai @howardjohn

done


Cannot boot into Ubuntu or Steam

My PC crashed during the stage of the installation where I was asked to reboot after everything had installed, and now I'm unable to boot into my PC unless I use recovery mode. I ran the installer in Ubuntu 19.10, and I'm not sure what I did wrong

I ran the installer using the KDE Plasma 5 Desktop Environment, if that helps.


Inflation Rate Runtime API

Addresses #13413.
This PR is an extension of @gpestana's #13119 to add an inflation rate API to the staking pallet.

[x] Wait until #13119 is merged.
[x] Merge updated master & rebase.
[x] Increment api version.
[x] Companion PR.

polkadot companion: https://github.com/paritytech/polkadot/pull/6764

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-benches
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2412189

Also a part of #13069

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-benches
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2420973

bot rebase

git rebase

bot rebase

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-each-crate
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2423189

bot help

bot clean

bot rebase

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: test-linux-stable-int
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2430909

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-each-crate
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2430913

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-benches
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2430899

bot fmt

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-each-crate
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2431022

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-each-crate
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2431105

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: test-linux-stable-int
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2431101

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: test-linux-stable-int
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2431190

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-each-crate
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2431194

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: test-linux-stable
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2433216

bot rebase

bot rebase

bot rebase

bot rebase

bot rebase

bot clean

You can see already on that part of the UI it is inconsistent. First it says, "Inflation Rate":

But if you click the info button, it tells you that inflation is fixed and a remainder goes to the Treasury. I.e. 7.27% is not the inflation rate:

Yes, I built this UI so I am aware of the content. From what you are saying it appears that the inflation calculations provided (taken from polkadot js app's useInflation hook) are incorrect.

compute_inflation does not return that. You can see that the first line just returns the ratio of actual/ideal stake if actual < ideal (where this dropoff from 1 is linear, not exponential):
pub fn compute_inflation<P: PerThing>(stake: P, ideal_stake: P, falloff: P) -> P {
	if stake < ideal_stake {
		// ideal_stake is more than 0 because it is strictly more than stake
		return stake / ideal_stake
	}
	// ...snip...

This just gets used in computing the era payout.

Yes, i already concluded from your previous comment that compute_inflation is different to what I originally suspected.

I am not sure if you are misunderstanding the purpose of the API. it is to indeed return this variable rate of inflation that does indeed depend on the parameters at play, it is not a fixed value.
@kianenigma I think your input would clarify things here.

I am not sure if you are misunderstanding the purpose of the API. it is to indeed return this variable rate of inflation that does indeed depend on the parameters at play, it is not a fixed value.
@kianenigma I think your input would clarify things here.

Yeah I do understand what it is returning. My issue is that that thing is not inflation.

Still want to finish

bot rebase

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-each-crate
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2832949

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-benches
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2832934

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-benches
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2833024

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-each-crate
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2833039

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-benches
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2833110

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-each-crate
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2833125

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-benches
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2833197

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-each-crate
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2833212

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-benches
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2833463

bot rebase

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: test-linux-stable
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2833961

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: test-linux-stable
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2834439


Separator is always visible when shadow DOM is enabled

When you add ?dom=shadow to enable Shadow DOM in Chrome, the separator is always visible:

This is because the rule to hide it depends on .d2l-navigation-header-container, which is specified inside <d2l-navigation-header> but is hidden inside its shadow DOM.


tools: add nimbus t8n support

Adds nimbus' t8n tool support for filling tests, see https://github.com/status-im/nimbus-eth1/blob/master/tools/t8n/readme.md.
Regarding 264e5ccde54b24e47a91f315ac8cc876528b5cb6, Nimbus is the first tool added that doesn't support -v, which is no problem (it uses --version instead) - this change catches stderr in order to prevent the console output being polluted with:
Unrecognized option 'v'
Try t8n --help for more information.

during fill startup.
Todo:

[x] Fix tracing.
[x] Potentially cleanup duplicate code in src/evm_transition_tool/nimbus.py and src/evm_transition_tool/geth.py.

The Nimbus t8n tool integrates well in execution-test-specs and only requires minor changes to the geth interface. I moved geth's implementation of evaluate to the base class to be used as a default as it can also be used by nimbus.
Only issue with test cases until Shanghai is https://github.com/status-im/nimbus-eth1/issues/1693.
Currently untested with Cancun test cases.


Added arrow selector support to Join, still needs to be tests on join…

… using and json helper methods adding and testing

Codecov Report

Merging #33 (4de071d) into develop (8f39979) will decrease coverage by 0.35%.
The diff coverage is 75.00%.

@@              Coverage Diff              @@
##             develop      #33      +/-   ##
=============================================
- Coverage      96.89%   96.53%   -0.36%
- Complexity       405      411       +6
=============================================
  Files             12       12
  Lines            997     1009      +12
=============================================
+ Hits             966      974       +8
- Misses            31       35       +4

Impacted Files
Coverage Δ

src/QueryBuilder/QueryBuilderHandler.php
96.62% <75.00%> (-0.50%)
:arrow_down:

src/EventHandler.php
95.83% <0.00%> (-4.17%)
:arrow_down:

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 8f39979...4de071d. Read the comment docs.


Spelling mistake in Backend Development Roadmap

There is a spelling mistake in the backend development roadmap at the end
Nogejs=>NodeJS

I would like to work on this

I think this part of the website is not available in this repo

So How can i do this?

Thanks for reporting @adarsh-gupta101. It will be fixed soon!

@adarsh-gupta101 This has been resolved now. Thanks for reporting.

@kelvinparmar, you can check out other issues for contribution


Support generic oidc auth integration

Humio supports oauth, and the operator can support this via environment variables that are exposed in the cluster spec. See https://docs.humio.com/cluster-management/security/oauth.
The part that we do not have is a way to use dynamic oidc registration as per https://openid.net/specs/openid-connect-registration-1_0.html.
We'll need to determine either a generic or plug-able solution to this, such that either we have one solution that would work with all oidc providers, or have a convention such as running a separate service, job, etc that could be customized in order to support any provider.
Here are a few examples:
https://www.ibm.com/support/knowledgecenter/SSFC4F_1.2.0/iam/3.4.0/auth_onboard.html
https://developer.okta.com/docs/reference/api/oauth-clients/
https://auth0.com/docs/api-auth/dynamic-client-registration

Closing this for now. It's been stale for a long time and no-one seems to be pushing for this.


Unclear instructions on augur.net

It is not clear from augur.net if a 32 bit windows OS is supported by Geth, or if only 64 bit.  It would be helpful to know the user requirements.
Additionally the formatting of the command line startup instructions are difficult to decipher.  Cleaning up the formatting in the html page of what is text and what is command line data would be helpful.

Thanks for the feedback.  I have tested geth a bit on 32-bit Linux (Ubuntu), and it seemed to work fine.  I have not tried it on Windows, though.
Agree re: the startup instructions.  Our blog has an extraordinarily limited set of features, and as far as I can tell does not allow preformatted text for code.  I think we should move the install instructions to their own mini-site -- Wordpress, probably -- and clean up the formatting.

There's built-in and clear install instructions if you run client.augur.net with an ethereum client running.

Thanks, I'll check it out
Shawn

On Jul 5, 2015, at 12:52 PM, Scott Leonard<EMAIL_ADDRESS>wrote:
There's built-in and clear install instructions if you run client.augur.net with an ethereum client running.
—
Reply to this email directly or view it on GitHub.


Refactor DMA Channel.vi

[X] This contribution adheres to CONTRIBUTING.md.

What does this Pull Request accomplish?
Refactored the code inside the "Apply:Value Change" event case of the "DMA Channels.vi" into a single unit testable subVI called" Apply DMA Configuration.vi.
Also added two unit tests which verifies if the Input/Output channels are added correctly once the Apply event was triggered.
Why should this Pull Request be merged?
Currently there are no unit tests which verifies the functionality of the Apply: Value Change event case code. Also, in its current form, it's hard to test the code as it is right now.
What testing has been done?
Run the unit tests locally and they all passed.
Built the custom device locally, added in a system definition and performed the actions the PR changes in order to make sure that everything works as expected (as before the refactor)

Please add " Draft Pull Request" to the title of the PR ... makes it easier to read and differentiate from the "normal" PRs...

Some feedback, regarding the current stage:

The SysDef is referencing a bitfile which is situated in a public VS directory: "C:\Users\Public\Documents\National Instruments\NI VeriStand 2019\FPGA\PXIe-7867R.lvbitx" ... the SysDef can reference external files, but in this case those should be situated in the Assets folder of the respective test case.  I would recommend this to be a general practice.
In the current implementation, with the known VS CD API bug, when run, the test vi does not throw the correct error. Currently, if you run the test, you get an error stating that the test fails because the equality assertion was not satisfied, however this is incorrect. The test vi should report the proper error (in this case that a file/VI was not found). I understand that this is due to how the JKI Test tools are implemented as well as the VS API. Still, the test should be implemented to account correctly for possible errors.

CDS Loader.vi.png
What is CDS? Please rename

There's no explanation in the PR Description about the workaround added, why it was needed, how it was implemented, other alternatives considered, etc.