Proposal: remove (or at least deprecate) all ReactiveCommand.CreateFromTask overloads that work with CancellationToken

ReactiveCommand defines a number of CreateFromTask overloads that have funcs accepting a CancellationToken. I posit that these overloads are entirely useless. A full discussion on why this is so is included below.
Part of the impetus for this proposal is gathering feedback from community members who do use these overloads and, if so, how they are using them successfully.
Ideally, I would like to just remove these overloads. Yes, it's a breaking change, but given my statement above, no one should be using these overloads anyway, so we'd in theory be breaking nobody. At the very least, I want to deprecate these APIs and remove them in a later major revision (probably v8). Doing so would lead to a simpler, less confusing API. It would no longer mislead people into thinking these overloads are useful for cancellable TPL-based commands because they're not.
Below is an excerpt from some literature I'm writing. The context is a discussion on cancelling reactive commands.
CreateFromTask with CancellationToken is useless
If, on the other hand, you choose (or are  forced) to used TPL for modelling command execution, things get a little  trickier. In such cases, you should first be sure to accept a CancellationToken in  your command’s execution logic:
private async Task<bool?> LoginAsync(CancellationToken ct)
{
    var result = this.Password == "Mr. Goodbytes";
    await Task.Delay(TimeSpan.FromSeconds(1.5),  ct);
    return result;
}

Secondly, be sure to use it! Notice that  we’re passing the CancellationToken into Task.Delay. This will ensure that we bail as early as possible once the token  indicates it has been cancelled (we’ll see how that happens shortly). If the  API you’re consuming does not support cancellation, you will have to find some  other recourse. Perhaps by submitting a pull request or switching to an  alternative library. Failing that, you can always simulate cancellation by  kicking off the task and periodically checking whether cancellation has been  requested, bailing and ignoring the result if it has.
Finally – and this is where it gets less  intuitive – it’s easiest to forgo CreateFromTask and instead use CreateFromObservable:
this.loginCommand = ReactiveCommand.CreateFromObservable(
    ()  =>
    Observable
        .StartAsync(this.LoginAsync)
        .TakeUntil(this.cancelCommand));

To convert our Task to an observable,  we simply call Observable.StartAsync. There are overloads of StartAsync that work with both Task and Task<T>, with and without CancellationToken support. Since our LoginAsync method accepts a CancellationToken, we will receive a CancellationToken that is cancelled when the subscription to the observable is  disposed. This makes it much easier to support cancellation of the command because  we simply use the same TakeUntil trick as discussed above.
You may wonder why it’s better to use CreateFromObservable. You may look at the overloads for CreateFromTask and see that there are several that do use the CancellationToken type. If you try it out, you’ll see that you can do something like  this:
this.loginCommand = ReactiveCommand.CreateFromTask(
    ct  => this.LoginAsync(ct),
    canLogin);

For clarity, I’ve made the ct parameter explicit  here, but you could of course write this as:
this.loginCommand = ReactiveCommand.CreateFromTask(
    this.LoginAsync,
    canLogin);

Either way, this will cause ReactiveUI to  perform the Observable.StartAsync call on our behalf, and our LoginAsync method still receives an appropriate CancellationToken. The problem is, of course, how do we actually cancel the command execution? We no longer have the ability to  cancel based on a signal from our cancelCommand because we never get a say in the pipeline representing our  command’s execution. We are only left with messy, far more onerous options.
The first thing we might try is maintaining  our own CancellationTokenSource, creating a new one with each execution of loginCommand. We would  then need to cancel that token manually when our cancelCommand executes. This results in extra state we need to manage and  coordinate, and that state compounds for each cancellable command we create.
We might also consider the fact that ReactiveUI is calling Observable.StartAsync on our behalf. This means that the subscription to the command’s execution could be disposed to cancel  the execution. However, we don’t normally create or manage that subscription ourselves. Usually, we’d use bindings so that all the peripheral functionality the accompanies commands – setting the target control’s enabled state, for example – just works. If we forgo binding and attempt to manage the  subscription ourselves, we’ll quickly discover that this too leads to messy, convoluted code.
You could argue, of course, that this is  all a design deficiency in ReactiveUI and that it should more readily support cancellation for TPL-based asynchrony  scenarios. But if ReactiveUI attempted to do that, it would wind up in much the  same dilemma as we did. Scattered and difficult to understand state would  arise, and the API would become more complicated.

So how do you cancel running commands?
I would love having them removed as they led to quite some frustration yesterday.
But if my Page Disposes it commands bindings,  would this not automatically end execution?

@escamoteur: the way to cancel TPL-based commands is discussed in the excerpt above.

Perhaps i just didn't understand it fully :-) Does this apply also for async Methods?

However, we don’t normally create or manage that subscription ourselves. Usually, we’d use bindings so that all the peripheral functionality the accompanies commands – setting the target control’s enabled state, for example – just works.

I don't fully agree with this, If you follow the WhenActivated Pattern with CompundDisposable you take care of the Subscriptions or not?

We don't use these overloads but maybe it would be better to extend them with a cancellation argument (maybe of type IObservable<Unit>) than entirely remove them? It looks quite boring and hard to remember to always write code like this:
this.loginCommand = ReactiveCommand.CreateFromObservable(
    ()  =>
    Observable
        .StartAsync(this.LoginAsync)
        .TakeUntil(this.cancelCommand));

It looks like this implementation can be hidden in a library function looking something like that:
return ReactiveCommand.CreateFromObservable(
    ()  =>
    Observable
        .StartAsync(execute)
        .TakeUntil(cancel));

@Hinidu yep, certainly an option worth considering.

At one level, i'm not bothered whether these CreateFromTasks with CancellationTokens get binned off or not. I've used the framework for quite a few years, I'm very comfortable with observables rather than tasks.
 I'm sure if you did a poll I'm sure the vast majority of C# developers would say they are familiar with tasks & async, Reactive Extensions i'd hazard a guess would come a somewhat distant second.
Now you don't have to be a Reactive Extensions guru to get started with ReactiveUI, but to really gain benefit from the framework one really does need to get well embedded in the Reactive Extensions world.
As I said, its not directly related to your initial question, but I do think that when the roadmap is considered for ReactiveUI (and how to onboard people to the framework) then dealing with the potential lack of reactive extensions experience is imho one that needs serious consideration.

Isn't this just asking to add an optional IObservable<Unit> cancelOn = null parameter to CreateFromTask with CancellationToken to optionally add that TakeWhile operator? CancellationToken overloads are still useful in cases of command observable disposal even without a "cancelOn" trigger to force cancellation of specific tasks.

We are trying to come up with a resolve for this but the root cause is in the System.Reactive code
https://github.com/dotnet/reactive/issues/1256
This issue has been outstanding for quite some time.

This should now be resolved, please raise a new issue with any new findings, many thanks

This should now be resolved, please raise a new issue with any new findings, many thanks


Use registry.k8s.io/e2e-test-images/busybox:1.29-4 instead of eu.gcr.io/gardener-project/3rd/busybox:1.29.3

How to categorize this PR?

/area testing
/kind enhancement
What this PR does / why we need it:
We can use the K8s maintained copy/mirror of busybox which they use in their e2e tests. This will allow use to drop 1 image maintained manually in eu.gcr.io/gardener-project/3rd/ and will reduce GCR costs for our account.
registry.k8s.io/e2e-test-images/busybox:1.29-4 is multi-arch as well, see https://console.cloud.google.com/gcr/images/k8s-staging-e2e-test-images/global/busybox:1.29-4/details.
I believe there is even more room for using K8s e2e-test-images - see https://github.com/kubernetes/k8s.io/blob/f707da41de187996a08934eb14b0ea8836918f8d/registry.k8s.io/images/k8s-staging-e2e-test-images/images.yaml. If new versions are added, we can use nginx and redis
images from there as well.
Which issue(s) this PR fixes:
See above.
Special notes for your reviewer:
N/A
Release note:

Test-machinery integration tests are now using `registry.k8s.io/e2e-test-images/busybox:1.29-4` instead of `eu.gcr.io/gardener-project/3rd/busybox:1.29.3`.

/cc @acumino

/cc @dguendisch @hendrikKahl

/test pull-gardener-e2e-kind-ha-multi-zone


A lot of JavaScript/Bash errors/warnings

I tested code of oref0 (dev branch) with jshint v2.9.5. Results:
oref0/lib   - 333 errors
oref0/bin   - 141 errors
oref0/www   - 126 errors
oref0/tests - 187 errors

      Total - 787 errors

After that I tested bash-scripts with shellcheck 0.4.4. Results - 525 warnings.
And later I tested Python-code with pylint 1.6.5:
% errors / warnings by module
-----------------------------

+-------------------------------+------+--------+---------+-----------+
|module                         |error |warning |refactor |convention |
+===============================+======+========+=========+===========+
|oref0_nightscout_check         |27.27 |17.96   |0.00     |10.83      |
+-------------------------------+------+--------+---------+-----------+
|oref0_subg_ww_radio_parameters |27.27 |13.59   |0.00     |9.64       |
+-------------------------------+------+--------+---------+-----------+
|oref0-dexusb-cgm-loop          |9.09  |28.64   |0.00     |18.61      |
+-------------------------------+------+--------+---------+-----------+
|oref0-autotune                 |9.09  |18.93   |12.50    |16.58      |
+-------------------------------+------+--------+---------+-----------+
|oref0-autotune-export-to-xlsx  |9.09  |11.65   |0.00     |22.00      |
+-------------------------------+------+--------+---------+-----------+
|oref0_autotune_export_to_xlsx  |9.09  |5.83    |0.00     |16.75      |
+-------------------------------+------+--------+---------+-----------+
|app                            |9.09  |0.97    |87.50    |2.54       |
+-------------------------------+------+--------+---------+-----------+
|oref0_init_pump_comms          |0.00  |2.43    |0.00     |3.05       |
+-------------------------------+------+--------+---------+-----------+

I'm absolutely sure that such a project mustn't have warnings/errors, especially so much! If you're using
Python, Bash and JavaScript - you should use static analysis tools.

If you'd like to help clean up some of these, we'd welcome the help.  The main reason we haven't done so to date is that too many of the problems found by static analysis tools like jslint and shellcheck are either unimportant style things (like presence or absence of ; at the end of lines) or are things where we're using some bash construct (like redirecting stderr to stdout, and stdout to /dev/null) in a way that they flag as something people normally do by mistake, but we're doing on purpose.
If you do decide to help clean up the code to conform to style and syntax checkers, I would try doing and PR'ing one change at a time, in such a way that it's easy to validate that nothing unintentional is being changed.  So for example, if you wanted to fix just all the missing semicolons, that should be its own commit (and preferably its own PR) so we can get that merged before moving on to more substantive changes.
And of course, feel free to jump into our chat rooms to discuss the best approach to cleaning things up.  https://gitter.im/openaps/oref0 might be the best place to start.

too many of the problems found by static analysis tools like jslint and shellcheck are either unimportant style things (like presence or absence of ; at the end of lines) or are things where we're using some bash construct (like redirecting stderr to stdout, and stdout to /dev/null) in a way that they flag as something people normally do by mistake, but we're doing on purpose.

Ignoring of warnings (even "unimportant" ones) is a bad practice, please trust me (after 12 years in software development I definitely know it).

If you do decide to help clean up the code to conform to style and syntax checkers, I would try doing and PR'ing one change at a time...

Good idea!

BTW, why some files are readonly?

Ok, I'll prepare PRs.


so: 0.4.3 -> 0.4.5

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/samtay/so/releases.
meta.description for so is: "A TUI interface to the StackExchange network"
meta.homepage for so is: "https://github.com/samtay/so"
meta.changelog for so is: ""
Updates performed

Rust version update

To inspect upstream changes

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

/nix/store/di9wfkndi8ljc5la2fs4ybycj3xhj4s4-so-0.4.5/bin/so passed the binary check.

1 of 1 passed binary check by having a zero exit code.

0 of 1 passed binary check by having the new version present in output.

found 0.4.5 with grep in /nix/store/di9wfkndi8ljc5la2fs4ybycj3xhj4s4-so-0.4.5

found 0.4.5 in filename of file in /nix/store/di9wfkndi8ljc5la2fs4ybycj3xhj4s4-so-0.4.5

directory tree listing: https://gist.github.com/44708065a12e15031164a6f5f42331a5

du listing: https://gist.github.com/3844f413572aa0ed7dda4871950b4704

Rebuild report (if merged into master) (click to expand)

4 total rebuild path(s)

1 package rebuild(s)

1 x86_64-linux rebuild(s)
1 i686-linux rebuild(s)
1 x86_64-darwin rebuild(s)
1 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
so

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/di9wfkndi8ljc5la2fs4ybycj3xhj4s4-so-0.4.5 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A so https://github.com/r-ryantm/nixpkgs/archive/a4b42a174adc160ae767eb4f3d4963ed76805f1c.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/di9wfkndi8ljc5la2fs4ybycj3xhj4s4-so-0.4.5
ls -la /nix/store/di9wfkndi8ljc5la2fs4ybycj3xhj4s4-so-0.4.5/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

so

Maintainer pings
cc @mredaelli for testing.

Result of nixpkgs-review pr 134585 run on x86_64-linux 1

1 package built:

so


Implement GIT_FILES sync type

For syncing the latest contents of a git repo

First version handled by #28


Setting multiple filters as default with toggleFilterButtons and or logic does not work

If I have two filter buttons, one filtering for category-1 and one for category-2 and I use toggleFilterButtons: true I would expect to be able to set a default filter like .category-1,.category-1.
element.mixItUp({
  load: {
    filter: '.category-1,.category-1'
  },
  controls: {
    toggleFilterButtons: true,
    toggleLogic: 'or'
  }
})

However, this does not trigger the two filter buttons to be set as default. It looks like it works correctly when using the and operator.

Could you post an example? As far as I know, MixItUp already covers this functionality:
http://codepen.io/anon/pen/gpojdm

Upon further investigation it was actually a timing issue where my call to multiMix came too early.
I do something like this:
http://codepen.io/anon/pen/RPxYWV
I have a refresh function that gets called once my data is ready. Sometimes this happened pretty fast, causing some kind of race condition. That it worked for "and" and not for "or" was just some funny coincidence in the timing (probably because https://github.com/patrickkunka/mixitup/blob/master/src/jquery.mixitup.js#L551 has slightly more work to do for "and"). I have now added a timeout to my refresh which is a workaround I can live with. So not really a bug but a usage issue.
Anyway, is there a clean way to call refresh only after the initialization is guaranteed to be finished?

Yes - you should use a callback. I don't know how you are pulling in your data but it sounds like you are using an Ajax request of some sort. Most Ajax interfaces will provide an "oncomplete" callback function that you can hook into.
Once your data has downloaded, you can either initialize MixItUp then, or call your custom refresh function.


Cereal serialization - Update serialization in Any.h

It's super verbose because -

Need to save the type information by casting the types of values to Enum class
Need to extract the type information when saving/loading.
The second part is a little bit better because I reshaped with macros.
But I don't have any better idea for the first part.
I think SGMatrix is the only thing missed here.
I'll add more tests once it looks good.

@vigsterkr @karlnapf

I think this branch needs a rebase (against what?)
check out the commit about googletest that appeared

I used lowercase to fit the macros
I'll rebase the branch. However wiking told me another project did it pretty concise so I was going to check that out.

Shall we re-vive this?

@vigsterkr I'm guessing this can be closed too then?

ciao bella!


Feature/tg 99 delete classroom

Summary
I implemented the functionality to delete a classroom
Details

Created a delete classroom method in classroom repository
Created a delete clasroom method in classroom services
Created a delete clasroom controller
Wrote unit tests for

Evidence

Before deleting a Classroom we should verify that it has no meetings created, to avoid deleting a classroom that has meetings assigned to it.

@AndresJavierNazzari Fixed 💯


Release tag for v3.3.1 missing

There is a v3.3.1 release on npm at https://www.npmjs.com/package/dockerode/v/3.3.1 but there isn't a corresponding tag on this repo. Would it be possible to add one so it's easier to see what's changed?

Fixed :)
https://github.com/apocas/dockerode/releases/tag/v3.3.1


fix: py.typed not being empty

This code is of the finest quality, thank you for your contribution good sir.


TypeScript: nested generic detail incorrect

From @OliverJAsh on September 8, 2016 19:57

VSCode Version: 1.4.0
OS Version: latest
TS version: latest 2 beta

Steps to Reproduce:
Given:
type Foo<T> = { foo: T };
const y = <X, T>(t: Foo<T>) => t;
y({ foo: 2 })

When I inspect y by hovering over it, I expect it to have the type: <{}, number>(t: Foo<number>) => number, but it actually has the type <{}, number>(t: Foo<{}, number>) => number.
Where is Foo shown to receive more generics that it has asked for?
Copied from original issue: Microsoft/vscode#11706

@OliverJAsh thank you for opening this issue. This falls under TypeScript language service. Moving to their repo.

Duplicate of https://github.com/Microsoft/TypeScript/issues/10337


Code review

[ ] inspect plugin from the viewpoint of entrypoints: https://github.com/szepeviktor/debian-server-tools/blob/master/webserver/wordpress/_core-is.php#L21-L100
[ ] watch PHP error log
[ ] Run Query Monitor plugin
[ ] measure Linux loadavg
[ ] find URL-s not exported
[ ] compare WP-generated content with static output
[ ] look for 404-s in the static output
[ ] check HTTP caching
[ ] check 404 ErrorDocument

can you please pop into your fork? I'm on Issue cleanup mode now


GitHub Diffs

GitHub Diffs
Description
Dataset is on BigQuery as a table of commit hashes and messages.
Procedure
From commit hash and message, produce dict containing:

Raw Python files before changes (skip non-Python files)
Commit message
Diff file (containing only Python changes)

This requires for each commit, downloading the files after changes and applying the reverse patch to obtain the files before changes.
We also need to decide on a suitable length threshold to filter on since we need to include most or all of the before file in the context window, which restricts the line numbers significantly.
Minimal working example here: https://gist.github.com/herbiebradley/b08d2e13775384fe4b5353e831dac43a

[x] Minimal working example
[ ] Decide on length threshold
[ ] lm_dataformat output
[ ] Inherit from dataset.py base classes
[ ] Parallel processing
[ ] Bitbucket modifications - see #5

Example
Give an example of the columns and data:

before_file
commit_message
diff

['from setuptools import setup, find_packages\n', '\n', 'setup(\n', ... ]
Change version
[{'addition_count': 1, 'deletion_count': 1, 'hunks': [[[3, 7], [3, 7], '', ' setup(', "   name = 'denoising-diffusion-pytorch',", '   packages = find_packages(),', "-  version = '0.26.1',", "+  version = '0.26.3',", "   license='MIT',", "   description = 'Denoising Diffusion Probabilistic " "Models - Pytorch',", "   author = 'Phil Wang',"]], 'patch_info': <PatchInfo: diff --git a/setup.py b/setup.py>, 'src_file': 'a/setup.py', 'tgt_file': 'b/setup.py'}]

What will be the filtering criteria for repositories we're going to index for scraping diffs?
>10 GitHub stars
>2 commits
Must have a liberal license
Exclude forks
Size < 70708 bytes

cc @ncoop57, @herbiebradley

Yes, these seem like sensible criteria. I am working out a length threshold as well, but that will have to be done in the scraping code because it can't be done easily in bigquery AFAIK.

By length criteria, do you mean the Length of commit_message?

Updated to remove Python specific stuff, to allow for scraping all languages.

We also need to only include diffs that modify files not delet files or create new ones. We should also filter unhelpful commit msgs such as ones with less than a few words

We also need to only include diffs that modify files not delet files or create new ones. We should also filter unhelpful commit msgs such as ones with less than a few words

Discussed this with Joel and we think that at least diffs which create files could be useful at some point in the future and potentially those which delete files too - not necessarily for ELM replication but for training refactoring models. Since this dataset could be used on several possible projects, I think it will help long term to not remove these from the scrape.
Filtering out unhelpful commit messages seems good, but I can think of some scenarios where we have short helpful commit messages so need to carefully decide on how to do that.


track the total token supply, and update RPCs to use supply tracking

this PR implements the changes described in #335

updated this with all of the relevant changes and added the remaining task from the issue. should be ready for review


Update dependencies of chashmap.

parking_lot has some bugfixes in the latest version.

Any updates on this?

@cedenday Sorry it took so long. It's done now.

Is this going to get published to crates.io?

@cedenday It is already up.


Autostart script

Is your feature request related to a problem? Please describe.
If the Bot app fails for any reason or if the Node needs to be restarted, users must manually restart it from a terminal session command line.
Describe the solution you'd like
An autostart script would avoid the need for users to access the Manager Node to restart the Wing Commander bot manually if the Pi was restarted.
The Skywire project has a similar script for bringing up the Manager and Nodes on boot. This same concept should be used to start Wing Commander.
Describe alternatives you've considered
Manual restart using the commands provided in the doco is the only alternative at this point.

Closed by PR #19
Thanks to @Cryptovinnie


US1508 - csv cleanup ML documentation change.

ML documentation now mentions where the CSVs for user feedback are stored on HDFS.

I'm Nathan Segerlind, and I approve this pull request.


tour for ml: classification and regression

tour for statistics/classification_regression

@bebatut

Thanks @polkhe
@anuprulez could you review this tour? Thanks a lot

I tried to run this tour but could not ... when I click on play after pasting the yaml file in the tour builder extension, nothing happens. Am I missing something?


explore QEMU for automated/unit testing

It would be helpful for people that want to tag along but don't have hardware. DONE
Figure out how to build an automated testing system that runs the unit tests under qemu.

This would be great, perhaps even for those with hardware to do some automated testing that could run in QEMU? I've read the support can be difficult to match hardware, Zephyr supports a few ARM platforms via QEMU. Still new to all this, no idea if that's helpful.

The copper book now has a chapter about using qemu. So, I'm going to re purpose this issue to track using qemu for unit testing.

This would be great, perhaps even for those with hardware to do some automated testing

Yeah, this is something I want to explore.

I've read the support can be difficult to match hardware

AFAIK, qemu only supports emulating two ARM Cortex-M microcontrollers. One of them appears to be undocumented (no data sheet, reference manual) AFAICT.

Zephyr supports a few ARM platforms via QEMU

It only supports the LM3S6965, which is the emulation target I'm also using in copper.

It only supports the LM3S6965, which is the emulation target I'm also using in copper.

Right.. I saw QEMU support above Arduino Due and the other mentioned boards thinking they were all QEMU supported, but they were about flashing Zephyr to them., my bad.


⚠ Bofrost.es has degraded performance

In 3e940a9, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1428 ms

Resolved: Bofrost.es performance has improved in ffd23a7 after 7 minutes.


Update references to SATUTILS_API_URL in readme & tutorial

I noticed the tutorial and readme need to be updated with the new env var name.
SATUTILS_API_URL => STAC_API_URL

Also, I think the tutorial has the incorrect default URL:

Sat-search uses an endpoint defined by the SATUTILS_API_URL environment variable. This defaults to https://sat-api.developmentseed.org/ but can point to any STAC compatible endpoint."

I think it should say:

Sat-search uses an endpoint defined by the STAC_API_URL environment variable. This defaults to _https://1tqdbvsut9.execute-api.us-west-2.amazonaws.com/v0_ but can point to any STAC compatible endpoint."

Thanks for pointing this out @dylnclrk , I've updated those references and made some other fixes to the README and tutorial.


[FEATURE] introduce a TableQuestion

Is your feature request related to a problem? Please describe.
When editing a TextQuestion with markdown=True it is rather difficult to properly work with tables. And I want to use this for extractive QnA, generative QnA and things like RAG.
Describe the solution you'd like
I would like to see a TableQuestion with very basic Excel-like editability options.

needs to be scrollable
alter individual cells
we need to be able to add/remove rows and columns
select one or multiple (relevant) cells

Describe alternatives you've considered
TextQuestion with markdown=True
Additional context
Example UI
https://www.tablesgenerator.com/markdown_tables

https://github.com/argilla-io/argilla/issues/3768

https://github.com/JonnyTran/argilla-data-extraction


buildTemplate.xml is not present

Hi, just saw the streamline visualization in http://viewer.coaps.fsu.edu/GlobalHycom/mapviewer, amazing work! I have been using ncWMS and ncWMS2 for a while and would really like to try this new kind of visualization. In the instructions it says to edit file buildTemplate.xml, but this file is not present in the source code. Checking the repository I found a reference in .gitignore and nothing else. Is there another place where I can find this file? Sorry if I am making basic questions, but I never built a war from source before.
Thanks.

Hello Marcelo, I am glad you like the project. To build a war just create a zip file and change the extension from zip to war :). You already have a tomcat and the template working?  If not, you can download the latest version of OWGIS from here: https://www.dropbox.com/s/o1jq9p65ovtyn3u/OWGIS_V2.war?dl=0
What you would have to do is:

Uncompress the file with any unzip software.
Modify the /layers/TestLayers.xml with any text editor. To add your own layers from your ncWMS2 server.
Compress your folder again, and change the extension from zip to war.
Upload to your tomcat and thats it.

Other option is to edit the /layers/TestLayers.xml directly from your webapps folder in Tomcat.
Cheers and I hope it helps.

Ough and I see that I deleted the buildTemplate.xml. I will uploaded again, sorry about that.

Hi Olmo, got the buildTemplate.xml, thank you. I think I am all set now. Right now I am using a computer without tomcat, but tomorrow I will try to build and deploy and see how it goes. Again, thank you very much and please continue this amazing works. Seeing the current using lagrangian transport  really improves our understanding of the circulation, its way better than simple vectors.

Hi again, I managed to build and deploy OWGISV2 using buildTemplate.xml. After following the examples I added a layer from my ncWMS2 in the file ncWMS_Layers.xml.
<MainLayers BBOX="-98.0,18.09164810180664,-76.400024,31.960647583007812"  				format="image/gif"  server="http://localhost:8080/ncWMS2/wms" 				 ncWMStwo="true" >   		<layer Menu="ncwms,mercator"  			   EN="mercator" 			   name="mercator/U_VELOCITY:V_VELOCITY-mag"  			   defParticleSpeed=".9" 			   overlaystreamlines="mercator/U_VELOCITY:mercator/V_VELOCITY" /> 	</MainLayers>
The base layer and magnitude layer show just fine, but the loader for the Streamlines stays in 0%. Do
I need to change something else? I don't know if this can be a problem, but I am behind a proxy.
Thanks.

I forgot to mention, but the "World Temperature w Currents" and "World Currents" worked just fine. The grid I am trying to plot is 1(time)x1(depth)x579(lat)x529(lon).

Uff I'm really sorry, I don't know how I missed this comment. Please let me know if you still need help.


MAINT: smoke-docs failure on main

@ev-br in main we are seeing an error from scipy-doctest:
==================================== ERRORS ====================================
_ ERROR collecting build-install/lib/python3.11/site-packages/scipy/_lib/array_api_extra/_typing.py _
/home/circleci/.pyenv/versions/3.11.10/lib/python3.11/site-packages/scipy_doctest/plugin.py:238: in collect
    for test in find_doctests(module, strategy=strategy, name=module.__name__, config=dt_config):
        module     = <module 'scipy._lib.array_api_extra._typing' from '/home/circleci/repo/build-install/lib/python3.11/site-packages/scipy/_lib/array_api_extra/_typing.py'>
        optionflags = 44
        runner     = <scipy_doctest.plugin._get_runner.<locals>.PytestDTRunner object at 0x7f4c7f7f3950>
        self       = <DTModule _typing.py>
        strategy   = 'api'
/home/circleci/.pyenv/versions/3.11.10/lib/python3.11/site-packages/scipy_doctest/frontend.py:80: in find_doctests
    raise ValueError(mesg)
E   ValueError: Missing item!
E   Traceback (most recent call last):
E     File "/home/circleci/.pyenv/versions/3.11.10/lib/python3.11/site-packages/scipy_doctest/util.py", line 245, in get_public_objects
E       obj = getattr(module, name)
E             ^^^^^^^^^^^^^^^^^^^^^
E   AttributeError: module 'scipy._lib.array_api_extra._typing' has no attribute 'Array'

The offending file is:
from __future__ import annotations

from types import ModuleType
from typing import TYPE_CHECKING, Any

if TYPE_CHECKING:
    Array = Any  # To be changed to a Protocol later (see array-api#589)

__all__ = ["Array", "ModuleType"]

https://github.com/data-apis/array-api-extra/blob/b83ba618f2895fd674da5b464bb8c74def12f393/src/array_api_extra/_typing.py#L1
Where is the bug? Is my use of if TYPE_CHECKING and __all__ valid, or should it be done differently?

If it's in __all__ then you probably want to remove the if TYPE_CHECKING, as that makes it unavailable at runtime.

Okay. To clarify, this is in a private module. I added it to __all__ under the impression that that is the convention for "this is meant to be imported by other modules". The only import from another module is also guarded by if TYPE_CHECKING.
So just removing the if TYPE_CHECKING is more conventional than removing it from __all__?

Judging from the getattr(module, name) in the error message, it looks as if it's being used at runtime 🤷🏻

Judging from the getattr(module, name) in the error message, it looks as if it's being used at runtime 🤷🏻

In which case this may be seen as a bug in scipy-doctest, which is walking around modules looking for docstrings?

Agreed on not putting things into __all__ if they are not in dir(...).
"Array" is in _typing.__all__  but it's not importable and is not available from dir(_typing):
$ python dev.py ipython
💻  ninja -C /home/br/repos/scipy/scipy/build -j4
ninja: Entering directory `/home/br/repos/scipy/scipy/build'
[1/1] Generating scipy/generate-version with a custom command
Build OK
💻  meson install -C build --only-changed --tags runtime,python-runtime,tests,devel
Installing, see meson-install.log...
Installation OK
Python 3.12.4 | packaged by conda-forge | (main, Jun 17 2024, 10:23:07) [GCC 12.3.0]
Type 'copyright', 'credits' or 'license' for more information
IPython 8.26.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: from scipy._lib.array_api_extra._typing import Array
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
Cell In[1], line 1
----> 1 from scipy._lib.array_api_extra._typing import Array

ImportError: cannot import name 'Array' from 'scipy._lib.array_api_extra._typing' (/home/br/repos/scipy/scipy/build-install/lib/python3.12/site-packages/scipy/_lib/array_api_extra/_typing.py)

In [2]: from scipy._lib.array_api_extra import _typing

In [3]: dir(_typing)
Out[3]:
['Any',
 'ModuleType',
 'TYPE_CHECKING',
 '__all__',
 '__builtins__',
 '__cached__',
 '__doc__',
 '__file__',
 '__loader__',
 '__name__',
 '__package__',
 '__spec__',
 'annotations']

In [4]: _typing.__all__
Out[4]: ['Array', 'ModuleType']

scipy_doctest is not expecting this, and FWIW I don't believe it should. If __all__ is defined at all, it should not advertise things which are not importable.

added it to all under the impression that that is the convention for "this is meant to be imported by other modules".
... but it cannot be imported by other modules.

Perhaps the answer is this?
if TYPE_CHECKING:
    __all__ += 'Array'

Yes, I think this is precisely the right answer! This way, __all__ lists the actual public API of the module for both TYPE_CHECKING being True and False.

thanks all


[BR-Issue] When creating a new account on the BR site, there is text overflow on the Create Account prompt.

1: Text overflow on the button
2: Alignment issues with "Sign up for news"
3: Better wording could be useful when instructing the parents to enter their date of birth.
NOTE: CSS/Design issues appear on Chrome, Edge and Firefox.

Can you think of shorter strings to put on the buttons? If not, we can lower the font size, but often abbreviating text is easiest.
Do you have legislation in Brazil requiring parental consent to kids under 13 creating online accounts? If not, we can skip the whole age checker thing.
For the weird button alignment, try translating the full string so that it goes onto two lines:
email_announcements: "Receive announcements about new CodeCombat levels and features!"


add possibitly to set WebSocketConfig of tungstenite

This adds the possibitly to overwrite the default WebSocketConfig for when it is needed.
The WASM Code still works but I could not test the example because I am getting the following error:
cargo run --example hello_world
   Compiling reqwest-websocket v0.4.3 (<path>/reqwest-websocket)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.47s
     Running `target/debug/examples/hello_world`
thread 'main' panicked at <path>/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.42.0/src/task/local.rs:418:29:
`spawn_local` called from outside of a `task::LocalSet` or LocalRuntime
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

But in my application where I need that change it works fine.
I hope you like the change or others that my need it.

Thanks for the contribution!

FYI: This is now published in version 0.4.4

Thanks :heart:


Install openfunction failed

Kubectl version
Client Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.0", GitCommit:"cb303e613a121a29364f75cc67d3d580833a7479", GitTreeState:"clean", BuildDate:"2021-04-08T16:31:21Z", GoVersion:"go1.16.1", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.1", GitCommit:"5e58841cce77d4bc13713ad2b91fa0d961e69192", GitTreeState:"clean", BuildDate:"2021-05-18T01:15:06Z", GoVersion:"go1.16.4", Compiler:"gc", Platform:"linux/arm64"}

How to install openfunction
kubectl apply -f https://raw.githubusercontent.com/OpenFunction/OpenFunction/main/config/bundle.yaml

namespace/openfunction created
customresourcedefinition.apiextensions.k8s.io/builders.core.openfunction.io created
customresourcedefinition.apiextensions.k8s.io/clustereventbus.events.openfunction.io created
customresourcedefinition.apiextensions.k8s.io/eventbus.events.openfunction.io created
customresourcedefinition.apiextensions.k8s.io/eventsources.events.openfunction.io created
customresourcedefinition.apiextensions.k8s.io/triggers.events.openfunction.io created
mutatingwebhookconfiguration.admissionregistration.k8s.io/openfunction-mutating-webhook-configuration created
serviceaccount/openfunction-controller-manager created
role.rbac.authorization.k8s.io/openfunction-leader-election-role created
clusterrole.rbac.authorization.k8s.io/openfunction-manager-role created
clusterrole.rbac.authorization.k8s.io/openfunction-metrics-reader created
clusterrole.rbac.authorization.k8s.io/openfunction-proxy-role created
rolebinding.rbac.authorization.k8s.io/openfunction-leader-election-rolebinding created
clusterrolebinding.rbac.authorization.k8s.io/openfunction-manager-rolebinding created
clusterrolebinding.rbac.authorization.k8s.io/openfunction-proxy-rolebinding created
configmap/openfunction-manager-config created
service/openfunction-controller-manager-metrics-service created
service/openfunction-webhook-service created
deployment.apps/openfunction-controller-manager created
[unable to recognize "https://raw.githubusercontent.com/OpenFunction/OpenFunction/main/config/bundle.yaml": no matches for kind "Certificate" in version "cert-manager.io/v1", unable to recognize "https://raw.githubusercontent.com/OpenFunction/OpenFunction/main/config/bundle.yaml": no matches for kind "Issuer" in version "cert-manager.io/v1", unable to recognize "https://raw.githubusercontent.com/OpenFunction/OpenFunction/main/config/bundle.yaml": no matches for kind "ClusterBuildStrategy" in version "shipwright.io/v1alpha1"]
Error from server (Invalid): error when creating "https://raw.githubusercontent.com/OpenFunction/OpenFunction/main/config/bundle.yaml": CustomResourceDefinition.apiextensions.k8s.io "functions.core.openfunction.io" is invalid: metadata.annotations: Too long: must have at most 262144 bytes
Error from server (Invalid): error when creating "https://raw.githubusercontent.com/OpenFunction/OpenFunction/main/config/bundle.yaml": CustomResourceDefinition.apiextensions.k8s.io "servings.core.openfunction.io" is invalid: metadata.annotations: Too long: must have at most 262144 bytes

use v0.6.0
after kubectl create -f bundle.yaml. still get errors
kubectl create  -f bundle.yaml
namespace/openfunction created
customresourcedefinition.apiextensions.k8s.io/builders.core.openfunction.io created
customresourcedefinition.apiextensions.k8s.io/clustereventbus.events.openfunction.io created
customresourcedefinition.apiextensions.k8s.io/domains.core.openfunction.io created
customresourcedefinition.apiextensions.k8s.io/eventbus.events.openfunction.io created
customresourcedefinition.apiextensions.k8s.io/eventsources.events.openfunction.io created
customresourcedefinition.apiextensions.k8s.io/functions.core.openfunction.io created
customresourcedefinition.apiextensions.k8s.io/servings.core.openfunction.io created
customresourcedefinition.apiextensions.k8s.io/triggers.events.openfunction.io created
serviceaccount/openfunction-controller-manager created
role.rbac.authorization.k8s.io/openfunction-leader-election-role created
clusterrole.rbac.authorization.k8s.io/openfunction-manager-role created
clusterrole.rbac.authorization.k8s.io/openfunction-metrics-reader created
clusterrole.rbac.authorization.k8s.io/openfunction-proxy-role created
rolebinding.rbac.authorization.k8s.io/openfunction-leader-election-rolebinding created
clusterrolebinding.rbac.authorization.k8s.io/openfunction-manager-rolebinding created
clusterrolebinding.rbac.authorization.k8s.io/openfunction-proxy-rolebinding created
configmap/openfunction-manager-config created
service/openfunction-controller-manager-metrics-service created
service/openfunction-webhook-service created
deployment.apps/openfunction-controller-manager created
mutatingwebhookconfiguration.admissionregistration.k8s.io/openfunction-mutating-webhook-configuration created
configmap/openfunction-config created
namespace/io created
domain.core.openfunction.io/openfunction created
unable to recognize "bundle.yaml": no matches for kind "Certificate" in version "cert-manager.io/v1"
unable to recognize "bundle.yaml": no matches for kind "Issuer" in version "cert-manager.io/v1"
unable to recognize "bundle.yaml": no matches for kind "ClusterBuildStrategy" in version "shipwright.io/v1alpha1"
unable to recognize "bundle.yaml": no matches for kind "ClusterBuildStrategy" in version "shipwright.io/v1alpha1"
unable to recognize "bundle.yaml": no matches for kind "ClusterBuildStrategy" in version "shipwright.io/v1alpha1"
unable to recognize "bundle.yaml": no matches for kind "ClusterBuildStrategy" in version "shipwright.io/v1alpha1"


Created Music Player Application in Python

Description
A comprehensive description about the Pull Request
Reference Issue number #247
issue_no must refer to the issue related to this PR, visit here
Type of change
Choosing one or more options from the following as per the nature of your Pull request.
NOTE: Check boxes using [x]

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Documentation Update

Checklist:

[ ] I have named my files and folder, according to this project's guidelines.
[  ] My code follows the style guidelines of this project.
[  ] My Pull Request has a descriptive title. (not a vague title like Update index.md)
[ ] I have commented on my code, particularly in hard-to-understand areas.
[ ] I have created a helpful and easy to understand README.md, with problem description and my name.
[ ] I have included a requirements.txt file (if external libraries are required.)
[ ] My changes do not produce any warnings.
[ ] I have starred this repository.
[ ] I have added a working sample/screenshot of the script.
[ ] I have checked for trailing spaces in file names and none have them.
[  ] I have added (your-name)[your-github-profile-link] in CONTRIBUTORS.md

Add a requirements.txt

Also @sarthakw7 there is no feature to pause music?

@sarthakw7 Throws error when folder has no music files.
Traceback (most recent call last):   File "main.py", line 39, in <module>     directorychooser()   File "main.py", line 35, in directorychooser     pygame.mixer.music.load(listofsongs[0]) IndexError: list index out of range

I will try to solve this problem

@sarthakw7 Throws error when folder has no music files.
Traceback (most recent call last): File "main.py", line 39, in <module> directorychooser() File "main.py", line 35, in directorychooser pygame.mixer.music.load(listofsongs[0]) IndexError: list index out of range


Fix total voting power calculation

This PR fixes total voting power calculation as well as aggregation of voting power (since first validator signer wasn't included in the aggregation of voting powers).
Note: it is possible that this fix can be optimized, this is just to illustrate which changes are required in order to fix remaining issues.

Waiting for #85 to be finalized and we are going to use this PR to merge changes to the feat-polybft-release branch which is used for release.


Bump for beta.2

Update changelog etc for 310beta2

Coverage: 68.609%. Remained the same when pulling 6179d1eef2a32f71cf4913eff2c264b2a4d4b4ff on 310-b2 into 9f121f4c7277495848b1119188e33e6debc31d41 on dev.


Add Airdrop contract

[ ] 🐛 This is a bug report.
[X] 📈 This is a feature request.

Introduce an Airdrop smart contract standard to the OpenZeppelin library.
Airdrops became a way for projects to distribute tokens to their community, in an effort to bootstrap the usage and support of their platform. During 2017, we've seen Airdrops performed by projects like OmiseGo and Kyber, among others:
https://github.com/omisego/airdrop
https://github.com/KyberNetwork/airdrop
Also, products are emerging for projects to perform Airdrops: https://news.earn.com/launch-your-token-with-an-earn-com-airdrop-97715970f8c7
With an increasing number of emerging projects in the space struggling to get the adoption they need to justify their market prices, I believe Airdrops will become more popular during 2018. Therefore, it would be great to have an Airdrop smart contract standard in OpenZeppelin, the most popular smart contract library in the space today.

Is anybody working on this ? I would like to work on if nobody is else working on this ?

Is anybody working on this ? If not, I would like to send a PR for this feature

Not that I know of, feel free to give it a shot!

To keep in mind: https://blog.ricmoo.com/merkle-air-drops-e6406945584d


redshift-wlroots: init at 1.12

Motivation for this change
Make redshift available on sway and other wlroots based wayland compositors. Can be used in services.redshift.package. See also #57602. Please review thoroughly as this is my first contribution and I have no idea what I'm doing.
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Assured whether relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

it seems to work on my machine. which dependencies am i missing?

Is wayland support even added upstream?
If not, I don't think we should create a new package just for this feature.
It would be better to wait for the upstream maintainer to merge the change and
make a release.

Is wayland support even added upstream?

no, see https://github.com/jonls/redshift/issues/55

If not, I don't think we should create a new package just for this feature.
It would be better to wait for the upstream maintainer to merge the change and
make a release.

It's not exactly a feature, but a completely different backend, https://github.com/jonls/redshift/pull/663 is open since september 2018, there seems to be no movement upstream and it's the only way to keep my eyes sane on wayland in the meantime. Although if it isn't worth a new package that's fine since I'm using my fork anyway.

Yeah, something like this would be a better fit for NUR.
IIRC there's a lot of wayland users in nixos.
Closing as we've converged on this.


Question - Valid yaml? Some yaml linters seem to think not.

Is this valid yaml in Drone? Can I define git twice with different events?
workspace:
  base: /test
  path: webtools

clone:
  git:
    image: plugins/git
    recursive: true
    submodule_override:
      rest/map/data: https://github.com/ec-europa/euwebtoolsnuts.git
    when:
      event: [ push, pull_request, tag ]
  git:
    image: fpfis/true
    when:
      event: [ deployment ]

Some yaml linters like in Symfony trow errors on this because it's a duplicate key. I just want to know if this is valid in Drone, or you can use different keys for the git checkout. If this is only possible with duplicate keys I'll have to use a yaml linter that doesn't fall over this.

:wave: hey there, per our issue template, for end-user support please use one of our support channels, such as our chatroom or our mailing list.

Sorry. I was too enthousiastic :)


Fix trailing slashes leading to broken links

Due to issue #3372 on Docusaurus, sometimes the way Docusaurus generates page links differs depending on:

What URL you are on, and if it has a trailing slash,
Whether it's the initial page load or subsequent loads

tldr there are inconsistencies with the way relative links are generated, and it can be quite subtle. There's a newish configuration value that handles this to some extent, but it also needs to be done in sync with enabling or disabling Netlify URL prettification
See #97 for a WIP fix

Closed by #97


Fix node defaults

This PR fixes the documented node defaults.
See https://github.com/webpack/webpack/blob/v5.0.0-beta.20/lib/config/defaults.js#L478-L510 for the actual node default configs.
Timeline

Node defaults were restored in PR https://github.com/webpack/webpack/pull/8602
Documentation was updated accordingly in https://github.com/webpack/webpack.js.org/pull/2753
Node defaults were changed for targets  node, async-node and electron-main in https://github.com/webpack/webpack/pull/9172
Documentation was wrongly updated for the non-default targets node, async-node and electron-main, but should reflect the default target web https://github.com/webpack/webpack.js.org/pull/3602

Relates to https://github.com/webpack/webpack/pull/11054.
I would much prefer to disable node for all targets, but @sokra explained why it is not done in https://github.com/webpack/webpack/pull/11054#issuecomment-645673452.

Thanks!


Get tinywl working with scenefx

We need to get tinywl working with our local version of wlr_scene

I'm anticipating we'll need more wlr_buffer stuff locally


PID Controller Implementation

In this commit, we have included the function implementations for the PIDController class.

Implemented the compute_velocity() function which will compute the velocities in x,y directions using PID Control formula
Implemented "update_position()" function to get the new position using the velocity and time-step
Implemented the "move_robot" function which will run a loop to calculate the velocities and then update the position based on the velocity to eventually reach the target given a threshold distance.
Implemented the example usage in the main file located in /app folder

Thanks for the implementation!
The code seems to implement the PID controller very well.


Handle missing values in aggregate derivative queries better

If an aggregate derivative query did not have a value in the first
time bucket, it would abort early and return a single row with a value
of 0.  Similarly, if either the current or previous value was nil,
it would skip the row and not append any values causing gaps and
no data to show up.
Instead, this will append a nil value if either the current or previous
value is nil.  This essentially allows nil values to carry through the
results as well as gives a more sensible value for rows where we cannot
compute a difference (instead of dropping the row as before).
Fixes #4237 #4263

1 question, but generally looks sensible to me. +1

Thanks @otoolep and @caldwell


Set DetektJvm task source with SourceDirectorySet instead of file list

Fixes #4127
Unfortunately I can't say definitively why this fixes the problem, but I suspect it's somewhat related to this: https://github.com/gradle/gradle/issues/3417#issuecomment-379306780
Passing kotlinSourceSet.kotlin.files passed a list of files to use as the source for the task, while kotlinSourceSet.kotlin passes a SourceDirectorySet, so it's possible the filtering based on regex described in the comment I linked won't apply when a full file path is provided, but works when the source directory set is passed in instead.

I guess SourceDirectorySet is a reactive/live data structure that it would be able to consider filetree operations like exclude.
kotlin.files, on the other hand, is a Set<File> which is definitely one time data structure.

In my opinion, this fix should be in 1.19.0 - @3flex Would you have time to verify this in a repro project? I can help if you don't have time.

I tested manually before submitting the PR.
I'm working on adding some functional tests for the Gradle plugin but I'm finding odd issues with TestKit so it will take a bit more time to add an automated test.
If anyone wants to verify manually that might be enough to get it over the line...

I didn't check that the excludes work. But I tested it in my project and it doesn't introduce any regression as far as I can see.


Task Class

See https://github.com/lonnieezell/codeigniter4-tasks/blob/develop/docs/vision.md
If you want to work on this, assign the card to yourself and ask any questions here.

This was mostly finished in #15. Some of the implementation specifics will depend on how the other classes turn out, but closing this for now.


Count with conditions can be translated to Sum operation

Problem
In entity framework core 3.0 and above, a Count operation with condition inside can't be translated. A typical example could be:
.Count(u => u.IsLocked)

This will throw System.InvalidOperationException suggesting explicit client side evaluation.

Possible Solution
The count with condition expression can be translated to a sum operation. So the following LINQ query:
.Count(<condition>)

can be translated into:
SELECT
    SUM(CASE WHEN <condition> THEN  1 ELSE  0 END)

The SUM operation can also be changed to COUNT by just replacing the constant 0 with null
Concrete Example
As a real-world example, consider the following LINQ query (which today will not be translated)
_context.Users
    .GroupBy(u => 1)
    .Select(g => new {
        LockedUsers = g.Count(u => u.IsLocked)
    });

can be translated to
SELECT
    SUM(CASE WHEN u.IsLocked = 1 THEN  1 ELSE  0 END) LockedUsers
FROM users u

Duplicate of #18836


fix(core): 13228 - loading message doesn't disappear after using boundary selector and affects overlays

Task has 2 issues so i've did 2 fixes
First fix - boundary selector marker. I've added state for case when no options provided and managed case where first marker stayed on the map due to being managed in async shedule callback
Second fix - error was visible when switching 4 times between 2 same layers (i've used bivariate layers). I think it was pretty self-explanatory

Codecov Report

Merging #415 (ae5d5ea) into main (59199e9) will decrease coverage by 0.01%.
The diff coverage is 0.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more

@@            Coverage Diff             @@
##             main     #415      +/-   ##
==========================================
- Coverage   11.74%   11.74%   -0.01%
==========================================
  Files         543      543
  Lines       38813    38833      +20
  Branches     1166     1166
==========================================
  Hits         4560     4560
- Misses      33808    33828      +20
  Partials      445      445

Impacted Files
Coverage Δ

...ore/logical_layers/renderers/BivariateRenderer.tsx
0.00% <0.00%> (ø)

...ures/boundary_selector/atoms/boundaryMarkerAtom.ts
0.00% <0.00%> (ø)

src/features/boundary_selector/constants.ts
0.00% <ø> (ø)

...ayers_in_area/atoms/areaLayersLegendsAndSources.ts
0.00% <0.00%> (ø)

src/utils/map/markers.ts
0.00% <0.00%> (ø)


Make pinkerton work for python 3.11 and 3.12

Currently, Pinkerton works only for python 3.10 and older, not working on 3.11 and 3.12.
The issue was already reported in https://github.com/oppsec/Pinkerton/issues/5, sticking to python 3.10 is not a viable option
Example:
$ pinkerton -u https://pwn.by/noraj/
...

[+] Connected sucessfully with https://pwn.by/noraj/
[*] Extracting JavaScript files from https://pwn.by/noraj/
[+] Found 5 JavaScript file(s)
[+] Scanning: https://pwn.by/noraj/javascripts/tabs.js
Traceback (most recent call last):
  File "/usr/share/pinkerton/main.py", line 14, in <module>
    perform_checks(args)
  File "/usr/share/pinkerton/src/pinkerton/main.py", line 27, in perform_checks
    extract_js(url, page_content)
  File "/usr/share/pinkerton/src/pinkerton/main.py", line 60, in extract_js
    passed_scan(final_url)
  File "/usr/share/pinkerton/src/pinkerton/modules/secret.py", line 113, in passed_scan
    match = findall(pattern, content)
            ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/re/__init__.py", line 216, in findall
    return _compile(pattern, flags).findall(string)
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/re/__init__.py", line 294, in _compile
    p = _compiler.compile(pattern, flags)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/re/_compiler.py", line 743, in compile
    p = _parser.parse(p, flags)
        ^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/re/_parser.py", line 982, in parse
    p = _parse_sub(source, state, flags & SRE_FLAG_VERBOSE, 0)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/re/_parser.py", line 457, in _parse_sub
    itemsappend(_parse(source, state, verbose, nested + 1,
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/re/_parser.py", line 865, in _parse
    p = _parse_sub(source, state, sub_verbose, nested + 1)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/re/_parser.py", line 457, in _parse_sub
    itemsappend(_parse(source, state, verbose, nested + 1,
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/re/_parser.py", line 843, in _parse
    raise source.error('global flags not at the start '
re.error: global flags not at the start of the expression at position 13

If you read chagelog for python 3.11 (https://docs.python.org/3/whatsnew/3.11.html) you can read:

In re Regular Expression Syntax, global inline flags (e.g. (?i)) can now only be used at the start of regular expressions. Using them elsewhere has been deprecated since Python 3.6. (Contributed by Serhiy Storchaka in bpo-47066.)

Using (?i) somewhere else the beginning of the string seems to be causing the issue, I'm surprised you didn't see any warning since it's deprecated since Python 3.6.
All those regexp have (?i) outside the start.
https://github.com/oppsec/Pinkerton/blob/da2099c32c58196e5a6c76a6e6d1f91b593b10c5/src/pinkerton/modules/secret.py#L74-L79

Hi, @noraj!
First of all, thanks for the contribution!
In my old environment, I've always used python 3.10 or lower, then I didn't experience any problems with Pinkerton, but now I'm using python 3.11+ and the problem occurs with me too.
Checking your PR and the Python documentation I can see that's a definitive solution to the problem.As you said, if (?i) it's not at the start of the regex it's gonna broken. I made the changes that you suggested on my venv environment and apparently, everything works fine now. I'll accept your pull request and, thanks again!
Best regards,
oppsec.


Update Bootstrap to 5.2.3

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
593

Relevant Lines:
605

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
593

Relevant Lines:
605

💛  - Coveralls

merge pls


Install stops

Not sure if I'm doing something wrong
`+ rm -f /tmp/install-luxtorpeda.sh

curl -S -s -L -O --output-dir /tmp --connect-timeout 60 https://github.com/MrAwesome/luxtorpeda-openmw-helpers/raw/main/install-luxtorpeda.sh
'[' -z '' ']'
bash /tmp/install-luxtorpeda.sh --game-id 22320
luxtorpeda-v69.0.0 already available
Shutting down Steam in 5 seconds...
steam.sh[56133]: Running Steam on steamos rolling 64-bit
steam.sh[56133]: STEAM_RUNTIME is enabled automatically
setup.sh[56211]: Steam runtime environment up-to-date!
steam.sh[56133]: Steam client's requirements are satisfied
[2024-05-16 21:14:48] Startup - updater built May 16 2024 20:10:34
[2024-05-16 21:14:48] Startup - Steam Client launched with: '/home/deck/.local/share/Steam/ubuntu12_32/steam' '-steamdeck' '-shutdown'
[2024-05-16 21:14:48] Opted in to client beta 'steamdeck_stable' via beta file
You are in the 'steamdeck_stable' client beta.
05/16 21:14:48 minidumps folder is set to /tmp/dumps
05/16 21:14:48 Init: Installing breakpad exception handler for appid(steam)/version(1715891371)/tid(56261)
[2024-05-16 21:14:48] Loading cached metrics from disk (/home/deck/.local/share/Steam/package/steam_client_metrics.bin)
[2024-05-16 21:14:48] Using the following download hosts for Public, Realm steamglobal
[2024-05-16 21:14:48] 1. https://client-update.akamai.steamstatic.com, /, Realm 'steamglobal', weight was 1000, source = 'update_hosts_cached.vdf'
[2024-05-16 21:14:48] 2. https://cdn.cloudflare.steamstatic.com, /client/, Realm 'steamglobal', weight was 1, source = 'update_hosts_cached.vdf'
[2024-05-16 21:14:48] 3. https://cdn.steamstatic.com, /client/, Realm 'steamglobal', weight was 1, source = 'baked in'
[2024-05-16 21:14:48] Verifying installation...
[2024-05-16 21:14:48] Verification complete
UpdateUI: skip show logo
Steam logging initialized: directory: /home/deck/.local/share/Steam/logs

XRRGetOutputInfo Workaround: initialized with override: 0 real: 0xed40a370
XRRGetCrtcInfo Workaround: initialized with override: 0 real: 0xed408cc0
/usr/share/themes/Breeze/gtk-2.0/widgets/entry:70: error: unexpected identifier 'direction', expected character '}'
/usr/share/themes/Breeze/gtk-2.0/widgets/styles:36: error: invalid string constant "combobox_entry", expected valid string constant
steamwebhelper.sh[56288]: === Thu May 16 09:14:50 PM EDT 2024 ===
steamwebhelper.sh[56288]: Starting steamwebhelper under bootstrap sniper steam runtime at /home/deck/.local/share/Steam/ubuntu12_64/steam-runtime-sniper
Steam Runtime Launch Service: starting steam-runtime-launcher-service
Steam Runtime Launch Service: steam-runtime-launcher-service is running pid 56427
bus_name=com.steampowered.PressureVessel.LaunchAlongsideSteam
CAppInfoCacheReadFromDiskThread took 369 milliseconds to initialize
BRefreshApplicationsInLibrary 1: 3ms
BuildCompleteAppOverviewChange: 2104 apps
RegisterForAppOverview 1: 235ms
RegisterForAppOverview 2: 237ms
[2024-05-16 21:15:06] Shutdown
WARNING: Steam client seems to be running, changes will be overwritten on exit!
Invalid version: luxtorpeda

err=2
'[' '!' -z 2 ']'
echo 'Something went wrong. Are you connected to the Internet? If this looks like a bug, please report it at: https://github.com/MrAwesome/luxtorpeda-openmw-helpers/issues'
Something went wrong. Are you connected to the Internet? If this looks like a bug, please report it at: https://github.com/MrAwesome/luxtorpeda-openmw-helpers/issues
read

`

Oh interesting, I think protonutils is installing luxtorpeda as
"luxtorpeda-69.0.0", I'll have to figure out what's up with that. I thought
it installed just as "luxtorpeda", that may have been from a previous
installation then. In your case, the hard part is done - you should be able
to go to Morrowind in steam, then hit Properties -> Compatibility and
select Luxtorpeda as a compatibility layer. Just launch the game after that
and you're good to go :)
On Fri, May 17, 2024, 03:24 thattrunkmonkey @.***>
wrote:

Not sure if I'm doing something wrong
`+ rm -f /tmp/install-luxtorpeda.sh

curl -S -s -L -O --output-dir /tmp --connect-timeout 60
https://github.com/MrAwesome/luxtorpeda-openmw-helpers/raw/main/install-luxtorpeda.sh
'[' -z '' ']'
bash /tmp/install-luxtorpeda.sh --game-id 22320
luxtorpeda-v69.0.0 already available
Shutting down Steam in 5 seconds...
steam.sh[56133]: Running Steam on steamos rolling 64-bit
steam.sh[56133]: STEAM_RUNTIME is enabled automatically
setup.sh[56211]: Steam runtime environment up-to-date!
steam.sh[56133]: Steam client's requirements are satisfied
[2024-05-16 21:14:48] Startup - updater built May 16 2024 20:10:34
[2024-05-16 21:14:48] Startup - Steam Client launched with:
'/home/deck/.local/share/Steam/ubuntu12_32/steam' '-steamdeck' '-shutdown'
[2024-05-16 21:14:48] Opted in to client beta 'steamdeck_stable' via
beta file
You are in the 'steamdeck_stable' client beta.
05/16 21:14:48 minidumps folder is set to /tmp/dumps
05/16 21:14:48 Init: Installing breakpad exception handler for
appid(steam)/version(1715891371)/tid(56261)
[2024-05-16 21:14:48] Loading cached metrics from disk
(/home/deck/.local/share/Steam/package/steam_client_metrics.bin)
[2024-05-16 21:14:48] Using the following download hosts for Public,
Realm steamglobal
[2024-05-16 21:14:48] 1. https://client-update.akamai.steamstatic.com,
/, Realm 'steamglobal', weight was 1000, source = 'update_hosts_cached.vdf'
[2024-05-16 21:14:48] 2. https://cdn.cloudflare.steamstatic.com,
/client/, Realm 'steamglobal', weight was 1, source =
'update_hosts_cached.vdf'
[2024-05-16 21:14:48] 3. https://cdn.steamstatic.com, /client/, Realm
'steamglobal', weight was 1, source = 'baked in'
[2024-05-16 21:14:48] Verifying installation...
[2024-05-16 21:14:48] Verification complete
UpdateUI: skip show logo
Steam logging initialized: directory:
/home/deck/.local/share/Steam/logs

XRRGetOutputInfo Workaround: initialized with override: 0 real: 0xed40a370
XRRGetCrtcInfo Workaround: initialized with override: 0 real: 0xed408cc0
/usr/share/themes/Breeze/gtk-2.0/widgets/entry:70: error: unexpected
identifier 'direction', expected character '}'
/usr/share/themes/Breeze/gtk-2.0/widgets/styles:36: error: invalid string
constant "combobox_entry", expected valid string constant
steamwebhelper.sh[56288]: === Thu May 16 09:14:50 PM EDT 2024 ===
steamwebhelper.sh[56288]: Starting steamwebhelper under bootstrap sniper
steam runtime at
/home/deck/.local/share/Steam/ubuntu12_64/steam-runtime-sniper
Steam Runtime Launch Service: starting steam-runtime-launcher-service
Steam Runtime Launch Service: steam-runtime-launcher-service is running
pid 56427
bus_name=com.steampowered.PressureVessel.LaunchAlongsideSteam
CAppInfoCacheReadFromDiskThread took 369 milliseconds to initialize
BRefreshApplicationsInLibrary 1: 3ms
BuildCompleteAppOverviewChange: 2104 apps
RegisterForAppOverview 1: 235ms
RegisterForAppOverview 2: 237ms
[2024-05-16 21:15:06] Shutdown
WARNING: Steam client seems to be running, changes will be overwritten on
exit!
Invalid version: luxtorpeda

err=2
'[' '!' -z 2 ']'
echo 'Something went wrong. Are you connected to the Internet? If
this looks like a bug, please report it at:
https://github.com/MrAwesome/luxtorpeda-openmw-helpers/issues'
Something went wrong. Are you connected to the Internet? If this looks
like a bug, please report it at:
https://github.com/MrAwesome/luxtorpeda-openmw-helpers/issues
read

`
—
Reply to this email directly, view it on GitHub
https://github.com/MrAwesome/luxtorpeda-openmw-helpers/issues/2, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AABDUGO3U3WQ6UEBNPJHQFDZCVL4ZAVCNFSM6AAAAABH3HOQ4CVHI2DSMVQWIX3LMV43ASLTON2WKOZSGMYDCNRTGM3TQMY
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Ok, pushed a fix for this! You should be able to run the installer again and it should Just Work. Just open this back up if it's not fixed or you run into any trouble!

Thanks for the speedy reply and fix!
Everything worked and I was able to launch Morrowind.
Now I just need to A) Figure out why the zesterer's shaders make everything disappear, and B) How to install mods on OpenMW.
Thanks for creating this!

Of course! I really appreciate you filing an issue, never would have realized it was broken this way since I had a separate Luxtorpeda installed.
For Zesterer's shaders, I've never been able to get them to work correctly. OpenMW has decent shaders built-in nowadays, I believe just press F2 to open up the shader menu and enable them there. (You may have to bind a key to F2.)
For mods, I highly recommend checking out https://modding-openmw.com
I just added all of that info to the script, and more:
$ bash ./install-luxtorpeda.sh --game-id 22320 --print-game-help-only:
It looks like you're installing OpenMW!

    A few helpful tips:
    * In Luxtorpeda, you probably want to start with the "openmw-launcher" option.
    * The options with "Zesterer's Shaders" don't seem to work. You can activate OpenMW's build-in shaders by pressing F2 in-game (you'll need to bind a key to F2 in Steam Input to do this on the Steam Deck).
    * For mods, I highly recommend using: https://modding-openmw.com/
    * If you do install mods:
        * On https://modding-openmw.com/settings/ you probably want to set the Data Files path to: "/home/glenn/.local/share/Steam/steamapps/common/Morrowind/Data Files/"
        * If you don't already have a directory for mods, you can run the following command to make one, and then set your Base Folder on that page to "/home/glenn/games/MorrowindMods":
            $ mkdir -p "/home/glenn/games/MorrowindMods"


Use <IP_ADDRESS> in webpack dev server

It offers better network support than localhost.  Also allows docker users to run the project.

Example how to do this in the following PR (we also have to remove the auto-browser to make it work inside a container): #125

Cleaning up issues.  Closing as there are no immediate plans to move this project to docker.


Upgrade tokio to v1.0

Tokio 1.0 was just released and upgrading to it should be a good step towards more stable dependencies. This might also solve #57

Hey @mankinskin. just a small note that tokio 1 types currently don't implement Stream which openlimits relies upon in some parts of the code. I suggest to wait til tokio has it back in. https://docs.rs/tokio/1.0.1/tokio/stream/index.html

Hey @mankinskin. just a small note that tokio 1 types currently don't implement Stream which openlimits relies upon in some parts of the code. I suggest to wait til tokio has it back in. https://docs.rs/tokio/1.0.1/tokio/stream/index.html

Do we know how long that is going to take? Might be easier for other crates to use openlimits when it uses a recent version of tokio. The changes required by the missing Stream implementation on UnboundedReceiver was basically just replacing .next() with .recv() and replacing .poll_next_unpin() with Pin::new(&mut $self).poll_recv() (see https://github.com/nash-io/nash-rust/pull/47).
I mean to say I think it would still be better to take the step forward and merge it. The Stream parts could easily be changed back when 1.0.1 lands.

Do we know how long that is going to take? Might be easier for other crates to use openlimits when it uses a recent version of tokio. The changes required by the missing Stream implementation on UnboundedReceiver was basically just replacing .next() with .recv() and replacing .poll_next_unpin() with Pin::new(&mut $self).poll_recv() (see https://github.com/nash-io/nash-rust/pull/47).
I mean to say I think it would still be better to take the step forward and merge it. The Stream parts could easily be changed back when 1.0.1 lands.

I don't think it will be that easy for openlimits as it uses more future-rs stream based stuff. But sure you can try if you feel like it.. I'm not a maintainer of this repo though so you might want to coordinate with  someone from the Nash crew like @notdanilo

I don't think it will be that easy for openlimits as it uses more future-rs stream based stuff. But sure you can try if you feel like it.. I'm not a maintainer of this repo though so you might want to coordinate with  someone from the Nash crew like @notdanilo

Hmm.. actually I just noticed I didn't depend on the updated version of nash-rust (with tokio-1.0) and there actually is some more code that requires Stream trait specifically.
Seems like you are right.

Hmm.. actually I just noticed I didn't depend on the updated version of nash-rust (with tokio-1.0) and there actually is some more code that requires Stream trait specifically.
Seems like you are right.


The Request.method getter can only be used on instances of Request

I'm currently having this error when my nhttp bun receive an request from the vue frontend. Evryting working well ealier.

hi @francelwebdev , This error not related to NHttp. i try using console.log(rev); its works fine.


Cross platform: Disconnect pop up displayed on verifier device in subsequent sharing.

Describe the bug
Disconnect pop up displayed on verifier device in subsequent sharing.
To Reproduce

Scan the qr code (verifier) from wallet.
Select VC to share
click on "Accept request and choose ID" button. -->success pop up displayed on both device
Repeat step 1,2 & 3 several times subsequently

Current behavior
After Several attempts of sharing clicked on scanner in wallet and parallely clicked on qr code icon in verifier phone, the disconnect error occurred on verifier phone in 12th and 16th attempt of sharing.
Expected behavior
Should not have disconnect error pop up
Screenshots

Smartphone (please complete the following information):
Wallet: iphone 7 | iphone 15.6 BLE 4.2
Verifier: Redmi 6A | Android 9 BLE 4.2
MOSIP Version: <IP_ADDRESS>
MOSIP server: qa-1201-b2.mosip.net
APK:

logs:
redmi6a21feb.txt

iOS app: 0.4.1 (19) ---testflight.

Disconnect error occurred for below set of combinations: Debug build
Verifier : Redmi k20 pro | Android 11 BLE 5.0
Wallet :  iphone 8 | iphone 16 BLE 5.0
Logs:
Redmik20pro22feb.txt

Observed : Disconnect issue occured in 2nd and 6th attempt.

@Anushree09-N - the disconnect issue occurred twice(2nd, and 6th) in how many rounds of testing on the same device combination?

@Anushree09-N  The logs attached are not proper. It does not contain any logs from the tuvali layer.
I installed the same apk and I can see the tuvali layer logs in android studio console.

@Alka1703 As discussed over call Attaching the logs without applying any filter. Hope this will help for further analysis.
Device used to replicate the issue :
Verifier : Redmi k20 pro | Android 11 BLE 5.0
Wallet : iphone 8 | iphone 16 BLE 5.0
MOSIP Version: <IP_ADDRESS>
MOSIP server: qa-1201-b2.mosip.net
App Version:

Logs:
Redmik20pro22feb.txt.txt

Observed the same issue while doing face authentication in new build with below mentioned devices and attaching the screenshot for the reference.
Screenshot :

Device used to replicate the issue :
Verifier : Redmi 7A | Android 10 BLE 4.2
Wallet : iphone 7 | IOS 15.6 BLE 4.2
MOSIP Version : <IP_ADDRESS>
MOSIP server : qa-1201-b2.net
APP link : https://github.com/mosip/inji/actions/runs/4293687772
IPA Testflight version : 0.4.1 (21)

This issue will not be prioritized for the 0.9 release. will be taken up post release.

verified this issue in my personal phone with the current build, the issue is still occurring, with my android pixel 6, any ios devices are connecting or able to send VC successfully, not even a single attempt, hence reopening this bug, iam attaching screenshots below for reference, and adding my personal device details
screenshot :

tested on :
verifier : pixel 6
android : 13
ble : 5.2
wallet : iphone 7
IOS  : 15.6
ble : 4.2
MOSIP Version : <IP_ADDRESS>
MOSIP server : qa-1201-b2.net
APP link : https://github.com/mosip/inji/actions/runs/4447486079
testflight ipa : 0.4.1 (29)

For iPhone7 --> Pixel6 the transfer is failing because of TooManyChunksFailureException which is happening due to CRC mismatch.
# <crcReceivedNotEqualToCrcCalculated came 730 times for VID<PHONE_NUMBER>938419(BIG VC ~700KB) !>
...
...
03-20 14:47:46.921 30743  3801 E CheckValue : v0.3.8: crcReceivedNotEqualToCrcCalculated crcReceived: 47228, crcCalculated: 38127
03-20 14:47:46.982 30743  3801 E CheckValue : v0.3.8: crcReceivedNotEqualToCrcCalculated crcReceived: 59170, crcCalculated: 4705
03-20 14:47:47.019 30743  3801 E Openid4vpBleModule : vunknown: Exception: Exception in Verifier Transfer Handler
03-20 14:47:47.019 30743  3801 E VerifierExceptionHandler : vunknown: Verifier Exception: io.mosip.tuvali.verifier.exception.TooManyFailureChunksException: Failing VC transfer as failure chunks are more than 70% of total chunks
03-20 14:47:47.022 30743  3801 D Openid4vpBleModule : vunknown: synchronized destroyConnection called for verifier at<PHONE_NUMBER>1134
03-20 14:47:47.022 30743  3801 D Openid4vpBleModule : vunknown: stopVerifier: setting to null
03-20 14:47:47.022 30743  3802 D StateHandler : v0.3.8: stopping advertisement
03-20 14:47:47.022 30743  3801 D TransferHandler : v0.3.8: dispatchMessage Failing VC transfer as failure chunks are more than 70% of total chunks
03-20 14:47:47.023 30743  3802 D StateHandler : v0.3.8: sendData: uuid: 00002038-0000-1000-8000-00805f9b34fb, dataSize: 1, data: 01
03-20 14:47:47.026 30743  3802 I Controller : v0.3.8: Is notification triggered for char 00002038-0000-1000-8000-00805f9b34fb: true
03-20 14:47:47.026 30743  3802 D StateHandler : v0.3.8: sendData: uuid: 00002038-0000-1000-8000-00805f9b34fb, isNotified: true
03-20 14:47:47.028 30743  3802 D StateHandler : v0.3.8: disconnect and close gatt server
03-20 14:47:47.028 30743 30805 I ReactNativeJS: BLE Exception: Failing VC transfer as failure chunks are more than 70% of total chunks
03-20 14:47:47.028 30743  3802 D GattServer : v0.3.8: Disconnecting from central with device address: 43:EE:0F:F3:F4:35
03-20 14:47:47.028 30743  3802 D BluetoothGattServer: cancelConnection() - device: 43:EE:0F:F3:F4:35

iPhone7 logs
Mar 20 14:47:24 iPhone bluetoothd[87] <Notice>: Received XPC message "CBMsgIdCharacteristicWriteValue" from session "io.mosip.inji.mobileid-central-344-143"
Mar 20 14:47:24 iPhone bluetoothd[87] <Notice>: Writing value without response to characteristic handle 0x0090 on device "<private>"
Mar 20 14:47:24 iPhone bluetoothd[87] <Notice>: Using Write Without Response
Mar 20 14:47:24 iPhone bluetoothd[87] <Error>: Failed to write request for bearer 0x04506F00  STATUS 4001 (status=65535)
Mar 20 14:47:24 iPhone bluetoothd[87] <Error>: Command failed to execute with status 4001
Mar 20 14:47:24 iPhone bluetoothd[87] <Error>: Command failed to execute with status 4001
Mar 20 14:47:24 iPhone bluetoothd[87] <Error>: Unhandled stack status: 4001

Mar 20 14:47:24 iPhone bluetoothd[87] <Notice>: Received XPC message "CBMsgIdCharacteristicWriteValue" from session "io.mosip.inji.mobileid-central-344-143"
Mar 20 14:47:24 iPhone bluetoothd[87] <Notice>: Writing value without response to characteristic handle 0x0090 on device "<private>"
Mar 20 14:47:24 iPhone bluetoothd[87] <Notice>: Using Write Without Response

Mar 20 14:47:25 iPhone bluetoothd[87] <Notice>: Received XPC message "CBMsgIdCharacteristicWriteValue" from session "io.mosip.inji.mobileid-central-344-143"
Mar 20 14:47:25 iPhone bluetoothd[87] <Notice>: Writing value without response to characteristic handle 0x0090 on device "<private>"
Mar 20 14:47:25 iPhone bluetoothd[87] <Notice>: Using Write Without Response
Mar 20 14:47:25 iPhone backboardd(CoreBrightness)[65] <Notice>: Lcurrent=210.5043 Lr=2.0881 DR=100.8101 factor=0.0722
Mar 20 14:47:25 iPhone backboardd(CoreBrightness)[65] <Notice>: Lcurrent=210.5043 Lr=2.0880 DR=100.8142 factor=0.0722
Mar 20 14:47:25 iPhone bluetoothd[87] <Notice>: Received XPC message "CBMsgIdCharacteristicWriteValue" from session "io.mosip.inji.mobileid-central-344-143"
Mar 20 14:47:25 iPhone bluetoothd[87] <Notice>: Writing value without response to characteristic handle 0x0090 on device "<private>"
Mar 20 14:47:25 iPhone bluetoothd[87] <Notice>: Using Write Without Response
Mar 20 14:47:25 iPhone bluetoothd[87] <Error>: Failed to write request for bearer 0x04506F00  STATUS 4001 (status=65535)
Mar 20 14:47:25 iPhone bluetoothd[87] <Error>: Command failed to execute with status 4001
Mar 20 14:47:25 iPhone bluetoothd[87] <Error>: Command failed to execute with status 4001
Mar 20 14:47:25 iPhone bluetoothd[87] <Error>: Unhandled stack status: 4001
Mar 20 14:47:25 iPhone backboardd(CoreBrightness)[65] <Notice>: Lcurrent=210.5043 Lr=2.0880 DR=100.8184 factor=0.0722
Mar 20 14:47:25 iPhone bluetoothd[87] <Notice>: Received XPC message "CBMsgIdCharacteristicWriteValue" from session "io.mosip.inji.mobileid-central-344-143"
Mar 20 14:47:25 iPhone bluetoothd[87] <Notice>: Writing value without response to characteristic handle 0x0090 on device "<private>"
Mar 20 14:47:25 iPhone bluetoothd[87] <Notice>: Using Write Without Response
Mar 20 14:47:25 iPhone backboardd(CoreBrightness)[65] <Notice>: Lcurrent=210.5043 Lr=2.0879 DR=100.8225 factor=0.0722
Mar 20 14:47:25 iPhone bluetoothd[87] <Notice>: Received XPC message "CBMsgIdCharacteristicWriteValue" from session "io.mosip.inji.mobileid-central-344-143"
Mar 20 14:47:25 iPhone bluetoothd[87] <Notice>: Writing value without response to characteristic handle 0x0090 on device "<private>"
Mar 20 14:47:25 iPhone bluetoothd[87] <Notice>: Using Write Without Response
Mar 20 14:47:25 iPhone backboardd(CoreBrightness)[65] <Notice>: Lcurrent=210.5043 Lr=2.0878 DR=100.8266 factor=0.0722
Mar 20 14:47:25 iPhone backboardd(CoreBrightness)[65] <Notice>: Lcurrent=210.5043 Lr=2.0877 DR=100.8308 factor=0.0722
Mar 20 14:47:25 iPhone bluetoothd[87] <Notice>: Received XPC message "CBMsgIdCharacteristicWriteValue" from session "io.mosip.inji.mobileid-central-344-143"
Mar 20 14:47:25 iPhone bluetoothd[87] <Notice>: Writing value without response to characteristic handle 0x0090 on device "<private>"
Mar 20 14:47:25 iPhone bluetoothd[87] <Notice>: Using Write Without Response
Mar 20 14:47:25 iPhone bluetoothd[87] <Error>: Failed to write request for bearer 0x04506F00  STATUS 4001 (status=65535)

Full iOS Logs attached.
iphone7-pixel6-3.txt

I've checked it against iOS 15.7.3 on another iPhone7 and I'm still seeing similar issue. Since this seems to be a separate set of devices from originally reported device combination I'm not collecting the logs for this one in priority and I'd do it tomorrow.

With iPhone7 --> Redmi6A, I'm not able to reproduce it.

With iPhone8 --> K20 Pro, I'm not able to reproduce this with 23 VC transfers.

With iPhone8 --> K20 Pro, I'm not able to reproduce this with 22 VC transfers with the 700KB VC too.

@Anushree09-N Please share the device combination where this bug was observed yesterday evening.

Able to replicate this issue in Redmi K20 Pro and Vivo Y73 phone with the current build, Disconnect pop is displayed when sharing of VC was initiated.  I am attaching video below for reference, and adding device details.
Video:
https://user-images.githubusercontent.com/124761463/226528668-a9121913-6f28-4c51-a6a0-40cd9a690b54.mp4

Tested on:
Verifier: Redmi K20 Pro
Android: 11
Ble: 5.0
Wallet: Vivo Y73
Android: 12
Ble: 5.0
MOSIP Version : <IP_ADDRESS>
MOSIP server : qa-1201-b2.net
APP link : https://github.com/mosip/inji/actions/runs/4447486079

Able to replicate this issue in Redmi K20 Pro

@damodarguru After how many successful transfers was this issue observed?

@vharsh As you saw the issue occured in first attempt.

Able to replicate this issue in Redmi K20 Pro and Vivo Y73 phone with the current build, Disconnect pop is displayed when sharing of VC was initiated. I am attaching video below for reference, and adding device details.
Video: https://user-images.githubusercontent.com/124761463/226528668-a9121913-6f28-4c51-a6a0-40cd9a690b54.mp4
Tested on: Verifier: Redmi K20 Pro Android: 11 Ble: 5.0
Wallet: Vivo Y73 Android: 12 Ble: 5.0
MOSIP Version : <IP_ADDRESS> MOSIP server : qa-1201-b2.net APP link : https://github.com/mosip/inji/actions/runs/4447486079

@damodarguru we already have an issue created for this. Please refer to this one: https://github.com/mosip/inji/issues/523
And this issue deals with cross platform disconnect events. Please be mindful on the device combination the next time.

Tested the issue in the new build, the issue is still occurring, we are unable to receive VCs from IOS to android 13 devices,facing this disconnect issue, hence reopening the bug
Screenshot :

Tested on:

Wallet Device:
Phone make/model: Apple iPhone 7
OS: iOS 15
BLE version : 4.2

Verifier Device:
Phone make/model: Google Pixel 6
OS: Android 13
BLE version : 5.2

MOSIP Version : <IP_ADDRESS>
MOSIP server : qa-1201-b2.net
APP link : https://github.com/mosip/inji/actions/runs/4511525622

verified as fixed in the build with commit id in the below screenshot.


optimized code,all override methods must be added @override

Motivation:
com.sun.nio.sctp.AbstractNotificationHandler#handleNotification(com.sun.nio.sctp.Notification, java.lang.Object) be marked with @override annotation
Modification:
com.sun.nio.sctp.AbstractNotificationHandler#handleNotification(com.sun.nio.sctp.Notification, java.lang.Object) be marked with @override annotation
Result:
Not
If there is no issue then describe the changes introduced by this PR.

@netty-bot test this please

@XavierChengZW are you sure this is correct ? The compiler seems to not think so...

@netty-bot test this please

Closing


Implement Button component

❓ What type of PR is this?

[ ] Refactor ♻
[x] Feature ✨
[ ] Bug Fix 🛠
[ ] Optimization 🚀
[ ] Documentation Update 📄
[ ] CI/CD 🤖

💬 Description

This PR includes a Button component class with methods of creation and removal.
This is responsible for creating a button throughout the DOM.
🎟 Related Tickets & Documents

Related Issue #1

🃏 Added/updated tests?
We encourage you to keep the code coverage percentage at 90% and above.

[x] Yes
[ ] No, because this is not necessary.
[ ] No, and this is why: I haven't write it yet.
[ ] I need help with writing tests

📚 Resources for Reviewers

See the documentation of Button - https://github.com/free-bird-operation-project/quiz-manager/wiki/Button

🌿 What branch would you like to merge this into?

feature/components
📷 [optional] What gif best describes this PR or how it makes you feel?

Since the files have been merged into one, most of the bugs have been fixed, including:

setting events when the button is created.
getting the button node ready for appending.
removing button events.

The merged test ensures everything is working well.
Alas, no more getting lost trying to find multiple files. 😁


Add new inscription ID

I did a checksum with sha256 and all three inscriptions were valid. It seem ordinals.com now pull the inscription and display so your script was failing.

Hey so were only need people submit 1 inscription Id. Please update your Pr to just have 1.

Inscription were in their wallet. So just have them do the merge themselves?

Yeah part of it is getting people to learn basics of github

cool, I'll have them pull and check in.

Cool appreciate it. I merged all the other PRs in so you can probably deal with the conflict on yours I assume as well?

Yup, no problem. So limited one per account?

Updated to only one entry. @elocremarc


Master -> Live

Docs Build status updates of commit bdf2157:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mixed-reality-docs/vuforia-development-overview.md
:white_check_mark:Succeeded
View

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

Docs Build status updates of commit 695d8c9:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mixed-reality-docs/performance-recommendations-for-unity.md
:white_check_mark:Succeeded
View

mixed-reality-docs/vuforia-development-overview.md
:white_check_mark:Succeeded
View

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

Docs Build status updates of commit 6f6e6c7:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mixed-reality-docs/mrlearning-speechSDK-ch4.md
:white_check_mark:Succeeded
View

mixed-reality-docs/performance-recommendations-for-unity.md
:white_check_mark:Succeeded
View

mixed-reality-docs/vuforia-development-overview.md
:white_check_mark:Succeeded
View

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


balanced_customer_href is corrupted

https://www.gittip.com/autogato/ has a bad link to Balanced.
https://www.gittip.com/matt-lowe/ has a good link (so the problem isn't universal).
Discovered during #2084. Is this a regression from #1369? Or from #2056? Or ... ?
If the balanced_customer_href is bad then we're going to have API failures during payday. And that's bad. Three stars!

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/1429114-balanced_customer_href-is-corrupted?utm_campaign=plugin&utm_content=tracker%2F85909&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F85909&utm_medium=issues&utm_source=github).

Done in #3286.


create set-connection-variables task to return data from service connection

The repo below has a task that creates a Dataverse connection string to the Environment based on the provided Service Connection and stores it in a pipeline secret variable. Having such a inbuilt capability inside the Power Platform Built Tools would prevent the need to maintain the same credentials twice to support script tasks that need to connect to the same Dataverse environment using tools such as Xrm.Data.PowerShell and others that support the connection string format.
https://github.com/remyblok/PowerPlatformBuildToolsEx
WhoAmI already validates the connection and sets additional variables such as BuildTools.EnvironmentID.  I am proposing extending WhoAmI task to support returning additional values.

Changed the issue name.  Upon further thought, it feels like adding this to WhoAmI is overloading the purpose of the WhoAmI task.  Proposing a new task instead.

Great suggestion @devkeydet! let's explore this idea further.


Pack error NU5017

When I use the DotNet.ReproducibleBuilds package(1.1.1), the pack step failed with error NU5017, when updated reference to Microsoft.SourceLink.GitHub, it works
error NU5017: Cannot create a package that has no dependencies nor content

Failed CI sample:
https://github.com/WeihanLi/dotnet-exec/actions/runs/3489789242/jobs/5848009450
Success CI sample:
https://github.com/WeihanLi/dotnet-exec/actions/runs/3494529164/jobs/5850378023
code changes:
https://github.com/WeihanLi/dotnet-exec/commit/71d50edeb2de93cced08325567a20bd63196357d

I think this issue should be handled by the NuGet team.
Is this related to NuGet/Home#8583?

I can confirm it, after removing
snupkg
I will not show the error anymore, i guess it is a bug

Hi @WeihanLi! We've released a new version of the package which includes an updated version of Microsoft.SourceLink.GitHub. Since you mentioned that as a workaround for your issue, I'm resolving this issue. If you still experience problems after upgrading to the latest version, please open an issue and provide updated details such as a minimal repo / codebase that reproduces the issue.
Thanks!