unit tests

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

Comparison is base (fc109fb) 59.53% compared to head (2256542) 69.60%.
Report is 2 commits behind head on main.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@             Coverage Diff             @@
##             main      #25       +/-   ##
===========================================
+ Coverage   59.53%   69.60%   +10.06%
===========================================
  Files           7        7
  Lines         477      477
===========================================
+ Hits          284      332       +48
+ Misses        145      113       -32
+ Partials       48       32       -16

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


math in SE(3) diffusion model

Dear author! I have read your paper and your code. It's very amazing. Here's some questions.
Firstly, I want to know how you design your forward process? Why don't your consider a formula like: Ht =   Exp( sqrt(1-alpha_bar)*zt + sqrt(alpha_bar)*Log(H0) ) , and noise on se(3) and change it to SE(3); And the function of scale factor lambda.
Second, considering that your forward process includes calculation Log and Exp, does the backward process q(x_t-1 | xt , x0) follows the DDPM formula for probability? If I use the DDIM formula, can it still work?
Thirdly , if the loss in train process is not the one in your paper, but the CDloss or HDloss, can it still work?
Recently, I have tried to use the method in your paper for smpl pose recovery mission. Input is 2d key points, t and xt1, using the DDIM process, output is xt2.However, it doesn't work well, the loss in training is small, but the loss in inference is high. I add the mse loss of final predicted joints, I guess it may not work for SE(3) diffusion?
Really, I can't figure out these problems, hope for your reply!

Hi, thanks for the interest.
Answer to question 1. We follow the formulation in Riemannian Score-Based Generative Modelling. Assuming se(3) is the tangent space, we are indeed add noise in the tangent space then transfer it back onto SE(3) , see algorithm 1 of Bortoli et al. So I'm not sure what you mean with your first question.
Answer to question 2. We follow the VE-SDE formulation whereas DDPM is known as the VP-SDE formulation. There is a paper exploring DDPM on SO(3) that you can find here Denoising Diffusion Probabilistic Models on SO(3) for Rotational Alignment. The VE-SDE formulation in Bortoli et al makes the most sense to me since it converges to a uniform prior over SO(3). I haven't thought or looked into using DDIM in this setting.
Answer to question 3. I'm not sure what you mean by CDloss or HDloss.
Answer to pose recovery. "Input is 2d key points, t and xt1, using the DDIM process, output is xt2." Isn't this deviating from our work? Our model's outputs are the scores which gets used during the generative (reverse) diffusion process. I can't offer more help without knowing your set-up. Unfortunately I'm low on bandwidth. I would recommend debugging with overfitting onto a few examples then gradually increasing it to make sure your implementation is correct.
Hope that helps.


Dashboard should return secure HTTP headers

In order to be in compliance with best practice security guidelines I want this application to send the appropriate HTTP headers.
Acceptance Criteria

[ ] Cookies should be set with secure and HttpOnly flags where appropriate

@adborden reviewing PRs for this


Serverless cdk plugin

@Eikix @CorentinDoue

I configured the publication of the package in the package.json as suggested

@allcontributors please add @Eikix for code


pcsclite, pcsc{-d,tools}: fix cross, {systemd,udev,dbus}Support flags

Description of changes
Cross fixes and {systemd,udev,dbus}Support for pcsclite, pcsc{-d,tools}.
Sent by amjoseph at https://lists.sr.ht/~andir/nixpkgs-dev.
Things done

Built on platform(s)

[x] x86_64-linux
[x] pkgsCross.aarch64-multiplatform
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Successfully built (from x86_64-linux):

pcsc-tools
pkgsCross.aarch64-multiplatform.pcsc-tools
pkgsCross.aarch64-multiplatform.pcsc-tools.override { systemdSupport = false; dbusSupport = false;}
pcsc-tools.override { systemdSupport = false; dbusSupport = false;}


Can't build without GCC on Windows 10 Pro AMD64

Since go-peerflix through some way has a dependency on go-sqlite3, and go-sqlite3 requires gcc to build, when I do go get, I get this error:
  >go get github.com/Sioro-Neoku/go-peerflix
  # github.com/mattn/go-sqlite3
  exec: "gcc": executable file not found in %PATH%

I'm not sure if I can help it providing static binaries should get you an executable.
About compiling: https://github.com/anacrolix/torrent/issues/115 might be relevant.

Any updates? I still cannot use this project on my Windows without having to compile on Linux for Windows.


contextmenu event

Could you add a contextmenu (rightClick) output for the agm-overlay?
Probably this can help you: agm-marker right click event

That’s a loaded question. I mean you yourself could easily add a right click action attached to your map html. This package outputs custom html onto a map and that’s its duties. You can now do whatever you fancy from modals to click menus. Knock yourself out. This package is going to keep its focus just on html objects on a google map.

I just saw now you edited your original comment and provided code references.
Yeah this seems possible with that small amount of code
You’ll need to make a pull request and do the code yourself. I have no immediate need for this and am loaded.
Again, you have access to the html and I recommend you just add your right click right there

Yes, that was how I've done it for the moment, but it would be nice to have that event in the agm-overlay element already.

Meh, "nice to have" is a relative term I do not favor in terms of a package doing more than it needs to.
The only strong leg you have to stand on is that the agm marker package provided non-html markers that do NOT have access to basic html events SO thats why they have right click events and such. I dont think its a strong enough argument for this package to follow suit
Regardless, I'm not lifting a finger on this one and even a pull request would be yawned at.
Sorry to be so direct and short. Fare well

Ok, you are the person who must take such decisions.
Anyway thank you for this awesome library!


Onewire slave

Based on https://github.com/cogsy23/aowslave
Modified to work on ch32v003fun.
https://github.com/VooDooSi/CH32V003_owSlave

Would you consider adding a readme to your repo and submit a PR with a link to it to this repo's root-readme?

Will do.


Accept text-2.1

It would be nice if scotty supported this version of text, which is shipped with GHC 9.8. That might allow scotty to get back into Stackage Nightly.

Thank you for filing this! I'm not in the stackage notification list for scotty so I missed this.


Added missing tests for ButtonStyle example

Added missing tests for ButtonStyle example. Issue #130459
Pre-launch Checklist

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[x] I signed the CLA.
[x] I listed at least one issue that this PR fixes in the description above.
[x] I updated/added relevant documentation (doc comments with ///).
[x] I added new tests to check the change I am making, or this PR is test-exempt.
[x] I followed the breaking change policy and added Data Driven Fixes where supported.
[x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

Will open PR later again. Ran into some git issues.


DataGrid does not properly update on ObservableCollection.AddRange

The DataGrid only shows 1 item of a collection when added via AddRange implementation. This is a huge problem as DataGrid cannot be bound to anything else  like a List than ObservableCollection, which by default has no possiblity to add a bunch of items at once. The result is that even a small collection with only 50,000 items take very long for the Grid to update itself. See below:
ObservableCollection.AddRange Implementation:
Full implementation here: https://github.com/dotnet/corefx/pull/10751
public void AddRange(IEnumerable<T> collection, bool clearFirst = false)
{
    CheckReentrancy();

    if (clearFirst) Items.Clear();

    List<T> list = (List<T>)Items;
    list.AddRange(collection);

    OnPropertyChanged(CountString);
    OnPropertyChanged(IndexerName);
    OnCollectionChanged(new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Add, new List<T>(collection)));
}

XAML:
<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto" />
        <RowDefinition />
    </Grid.RowDefinitions>
    <Button Command="{Binding Generate}" Content="Generate Items" />
    <DataGrid
        Name="dataGrid1"
        Grid.Row="1"
        AutoGenerateColumns="True"
        IsReadOnly="True"
        Items="{Binding MyCollection}" />
</Grid>

C#:
public class MainWindowViewModel : ViewModelBase
{
    public ObservableCollectionEx<Abc> MyCollection { get; } = new ObservableCollectionEx<Abc>();

    public MainWindowViewModel()
    {

    }

    public ReactiveCommand<Unit, Unit> Generate => ReactiveCommand.Create(() =>
    {
        var l = new List<Abc>();
        for (int i = 0; i < 50000; i++)
        {
            l.Add(new Abc());
        }

        MyCollection.AddRange(l);
    });
}
public class Abc
{
    public string MyColumn { get; } = "Hi";
}

Result:

Expected:

Expected C# code
public ReactiveCommand<Unit, Unit> Generate => ReactiveCommand.Create(() =>
{
    var l = new List<Abc>();
    for (int i = 0; i < 50000; i++)
    {
        MyCollection.Add(new Abc());
    }
});

The DataGrid only shows 1 item of a collection when added via AddRange implementation. This is a huge problem as DataGrid cannot be bound to anything else like a List than ObservableCollection, which by default has no possiblity to add a bunch of items at once. The result is that even a small collection with only 50,000 items take very long for the Grid to update itself. See below:
ObservableCollection.AddRange Implementation:
Full implementation here: dotnet/corefx#10751
public void AddRange(IEnumerable<T> collection, bool clearFirst = false)
{
    CheckReentrancy();

    if (clearFirst) Items.Clear();

    List<T> list = (List<T>)Items;
    list.AddRange(collection);

    OnPropertyChanged(CountString);
    OnPropertyChanged(IndexerName);
    OnCollectionChanged(new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Add, new List<T>(collection)));
}

XAML:
<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto" />
        <RowDefinition />
    </Grid.RowDefinitions>
    <Button Command="{Binding Generate}" Content="Generate Items" />
    <DataGrid
        Name="dataGrid1"
        Grid.Row="1"
        AutoGenerateColumns="True"
        IsReadOnly="True"
        Items="{Binding MyCollection}" />
</Grid>

C#:
public class MainWindowViewModel : ViewModelBase
{
    public ObservableCollectionEx<Abc> MyCollection { get; } = new ObservableCollectionEx<Abc>();

    public MainWindowViewModel()
    {

    }

    public ReactiveCommand<Unit, Unit> Generate => ReactiveCommand.Create(() =>
    {
        var l = new List<Abc>();
        for (int i = 0; i < 50000; i++)
        {
            l.Add(new Abc());
        }

        MyCollection.AddRange(l);
    });
}
public class Abc
{
    public string MyColumn { get; } = "Hi";
}

Result:

Expected:

Expected C# code
public ReactiveCommand<Unit, Unit> Generate => ReactiveCommand.Create(() =>
{
    var l = new List<Abc>();
    for (int i = 0; i < 50000; i++)
    {
        MyCollection.Add(new Abc());
    }
});

any update on this. I'm also facing same issue

I'm having the same issue. Although I'm using a AvaloniaList, not a ObservableCollection. I have the same AvaloniaList bound to both a DataGrid and a itemsControl. The ItemsControl shows all of the items, but the DataGrid only shows the first item when new items are added with AddRange. If I add the items one by one it shows all of them as expected.

Same here, any news?


Kafka group id, create producer & Dynamo check

Proposed changes:

Apply @rgstephens changes from https://github.com/RasaHQ/rasa/pull/6521
Kafka Producer, add group id & client id
Kafka Producer save/reuse connection
patch master fix https://github.com/RasaHQ/rasa/pull/6233

Status (please check what you already did):

[ ] added some tests for the functionality
[ ] updated the documentation
[ ] updated the changelog (please check changelog for instructions)
[x] reformat files using black (please check Readme for instructions)

@rgstephens I rebased the PR so that it can hopefully get a review today, but I'll leave you to handle any review changes 👍

Thanks @erohmensing for cleaning that up. I fixed a log message issue and the checks are running fine except for the 800+ DeepSource issues.

Sure thing, I've requested sasha to review though because I'm not as familiar with event brokers. One thing from me though, we need to make sure to add the options to the docs -- we just ran into another user looking for this and searching for it in the docs


[SPARK-30613][SQL] Support Hive style REPLACE COLUMNS syntax

What changes were proposed in this pull request?

This PR proposes to support Hive-style ALTER TABLE ... REPLACE COLUMNS ... as described in https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL#LanguageManualDDL-Add/ReplaceColumns
The user now can do the following:
CREATE TABLE t (col1 int, col2 int) USING Foo;
ALTER TABLE t REPLACE COLUMNS (col2 string COMMENT 'comment2', col3 int COMMENT 'comment3');

, which drops the existing columns col1 and col2, and add new columns col2 and col3.
Why are the changes needed?

This is a new DDL statement. Spark currently supports the Hive-style ALTER TABLE ... CHANGE COLUMN ..., so this new addition can be useful.
Does this PR introduce any user-facing change?

Yes, adding a new DDL statement.
How was this patch tested?

More tests to be added.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/22774/
Test PASSed.

Test build #118009 has started for PR 27482 at commit e9a71b5.

@cloud-fan This is WIP, but I have a couple of questions.
REPLACE COLUMNS needs to drop all the existing columns, so I am creating Seq[TableChange] which has DeleteColumns followed by AddColumns.

Can we assume that TableCatalog.alterTable() would apply the changes in the given order? (this is not documented).
Since it needs to drop all the existing columns, we need to look up the table before creating AlterTable logical plan. What I currently have is to call loadTable in ResolveCatalogs, which may not be ideal since we will do two look ups (another in ResolveTables). Another way is to register a callback to AlterTable which can be called after table is resolved. What do you think?

Test build #118009 has finished for PR 27482 at commit e9a71b5.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
case class AlterTableReplaceColumnsStatement(

Merged build finished. Test PASSed.

apply the changes in the given order?

This is a good point. I think we should, can you open a PR to improve the doc?

which may not be ideal since we will do two look ups

I think it's OK. We can clean it up later, thinking about how to resolve commands in general.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/118009/
Test PASSed.

@cloud-fan this is now ready for review. Thanks!

We currently have the following for ADD COLUMN
    | ALTER TABLE multipartIdentifier
        ADD (COLUMN | COLUMNS)
        columns=qualifiedColTypeWithPositionList                       #addTableColumns
    | ALTER TABLE multipartIdentifier
        ADD (COLUMN | COLUMNS)
        '(' columns=qualifiedColTypeWithPositionList ')'               #addTableColumns

But it seems that only the following is the sql standard:
    | ALTER TABLE multipartIdentifier
        ADD COLUMN?
        column=qualifiedColTypeWithPosition

, and the following is Hive style:
    | ALTER TABLE multipartIdentifier
        ADD COLUMNS
        '(' columns=qualifiedColTypeWithPositionList ')'

Should we fix this as well? (if so, we can combine hive style ADD and REPLACE grammar easily as well.)

Test build #118275 has started for PR 27482 at commit 30785f5.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/23035/
Test PASSed.

Test build #118275 has finished for PR 27482 at commit 30785f5.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/118275/
Test FAILed.

The problem is that we can't remove a SQL syntax that works in prior releases. Maybe we have to bear with it here.

retest this please

Test build #118294 has started for PR 27482 at commit 30785f5.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/23052/
Test PASSed.

Test build #118294 has finished for PR 27482 at commit 30785f5.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/118294/
Test PASSed.

Test build #118313 has started for PR 27482 at commit 9cc277d.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/23071/
Test PASSed.

Test build #118313 has finished for PR 27482 at commit 9cc277d.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/118313/
Test PASSed.

LGTM, merging to master!


Error when adding icon

Nativefier says that it needs ImageMagick to convert icons. It said that is needed png icons and I gave it png icons. But it still gives error. How do you fix it?

Closing as dup of https://github.com/jiahaog/nativefier/issues/992 , which should be fixed in f234473. Please try it with a developer build, or wait for the next release.


[Feature]: Add Linear Regression Calculator

Description
Linear Regression calculator will take a set of data points, compute the best-fit line using linear regression, and display the slope, intercept, and a plot of the data points with the regression line.
Screenshots
No response
Checklist

[X] I have checked the existing issues.
[X] I follow Contributing Guidelines of this project.
[X] I am a GSSOC'24 contributor.
[ ] I am a IWOC'24 contributor.
[ ] I am a JWOC'24 contributor.
[ ] I am a SWOC'24 contributor.

Code of Conduct

[X] I agree to follow this project's "Code of Conduct".

@Rakesh9100 Please assign this issue Under GSSOC 24

@vivekvardhan2810 can you please assign this issue to me? I want to work on this issue.

No @charanbhatia I have already completed the above issue, waiting it for assigning

okay

@Rakesh9100 @jessicachawla please assign me this issue
I have already made the calculator just need to create the pull request quickly

Go ahead @vivekvardhan2810

May I know why have you closed the issue @vivekvardhan2810

Sir @Rakesh9100 I don't know how to add some basic validations. so that's why

Have you told this to me or the mentor, is directly closing the PR and the issue appropriate in open source, no right @vivekvardhan2810

Sorry @Rakesh9100

And you just have to handle NaN validation that means if no values are entered and Calculate button is clicked, then it should say Please enter valid values, this is just the basics of JavaScript @vivekvardhan2810

Okay @Rakesh9100 got it, can i reopen and solve this issue

Make the new commit in that same PR, don't create a new one @vivekvardhan2810

okay @Rakesh9100

@Rakesh9100 I have made the changes, can you check and merge the PR


Nan value for loss

s-vae-pytorch-master/examples/mnist.py
Modify the code：
def train(model, optimizer):
for epoch in range(100):
for i, (x_mb, y_mb) in enumerate(train_loader):
Hyper-spherical VAE
Epoch: 0   Loss: 169.04999
Epoch: 1   Loss: 157.91183
Epoch: 2   Loss: 149.1766
Epoch: 3   Loss: nan
Epoch: 4   Loss: nan
Epoch: 5   Loss: nan
Epoch: 6   Loss: nan
Epoch: 7   Loss: nan
Epoch: 8   Loss: nan
Epoch: 9   Loss: nan
Epoch: 10   Loss: nan
Epoch: 11   Loss: nan
Epoch: 12   Loss: nan

This issue for me occurs mostly with hyperspherical VAEs with Z_DIM = 2. See proposed fix: #8


Implement support for key store recovery

All keys in the key store are stored encrypted with a secret lock. Recovery is a process of decrypting stored key material when a "regular" secret lock for that key store can't be used.
Currently, KMS uses two types of secret locks for users' key stores:

local secret lock;
Shamir secret lock.

Local secret lock uses a key that is stored in the server's KMS. The only case, when that secret lock can't be applied, is when the key is lost. If DB is gone, it's a major issue to the server. That type of issue should be prevented by using some backup strategy.
Shamir secret lock uses 2 secret shares to produce a key for the lock. These 2 shares are the points of failure. In the current TrustBloc setup, the first share is stored on Auth server and the second should come in the header with each request.
The secret share that is stored on Auth server should be "protected" with a backup strategy for Auth server.
Losing the user-owned secret share is the only scenario so far that we might consider for recovery. The solution is based on splitting a secret into N shares with a minimum number of K shares needed to recreate the original one.
That functionality should be implemented by the client of KMS. The wallet is one such example. Here, one solution might be to provide the user with a recovery option during onboarding. If that option is chosen, Wallet splits secret into 3 shares with threshold 2 (auth share, wallet share, and recovery share). Two of them (wallet and recovery shares) are downloaded (or sent to the email) after onboarding completes.
Another scenario might be the one where trusted custodians come together to recreate a user’s key outside of his/her control (for whatever legal/investigation reasons). The solution is similar - splitting a secret into N shares (and distributing them across those custodians) during user onboarding.
I am closing the current issue as the concrete implementation highly depends on business requirements and should be done by the client of KMS.


LLVM 10 build fix proposal

c++14 is the minimum for this version, thus the hardcoded gnu++11
standard flag makes the build fails.
Missing header only for this version seemingly for the option.

you are saying it needs c++14 to compile but you do not set this in the Makefile ... why?

I allow to override it via LLVM_STDCXX variable in case anyone uses llvm 6 for ex I did not dare to hardcode it.

yes you allow to override, but if someone does not do it it will still not compile with llvm-10 right? then this is pretty pointless :)
the better move is to detect the llvm version and set the c++14 version flag if its 10 or higher

thanks!


build 0.3.9

PKG-3569
Upstream requirements

Linter check found the following problems:
The following problems have been found:
ERROR: clone/recipe/meta.yaml:1: patch_must_be_in_build: patch must be in build when source/patches is set.
ERROR: clone/recipe/meta.yaml:23: missing_wheel: For pypi packages, wheel should be present in the host section
WARNING: clone/recipe/meta.yaml:30: python_build_tool_in_run: The python build tool pip is in run depends
Errors were found

Linter check found the following problems:
The following problems have been found:
ERROR: clone/recipe/meta.yaml:1: patch_must_be_in_build: patch must be in build when source/patches is set.
ERROR: clone/recipe/meta.yaml:23: missing_wheel: For pypi packages, wheel should be present in the host section
WARNING: clone/recipe/meta.yaml:30: python_build_tool_in_run: The python build tool pip is in run depends
Errors were found

Linter check found the following problems:
The following problems have been found:
WARNING: clone/recipe/meta.yaml:35: python_build_tool_in_run: The python build tool pip is in run depends
Warnings were found

Linter check found the following problems:
The following problems have been found:
WARNING: clone/recipe/meta.yaml:35: python_build_tool_in_run: The python build tool pip is in run depends
Warnings were found


Windows stops redrawing after a window resize on specific environment.

VS Code Version: 1.53 to 1.54.1
OS Version: Debian with awesomewm

Steps to Reproduce:

start vscode in an awesomewm environement
resize the vscode window, the window stops redrawing

Does this issue occur when all extensions are disabled?: Yes

I noticed the same issue in Ubuntu 18.04 with Mate environment in anything newer than 1.52.1.

/gifPlease

/duplicate https://github.com/microsoft/vscode/issues/115868


Alerts extra classes

Add ability to specify additional classes for all alerts that are produced by django-bootstrap5.

[x] Code
[x] Documentation
[x] Tests

Apologies, I was too hasty here. A global setting to add non-Bootstrap extra classes to components does not fit the scope of the package. I will revert the merge.


Minor grammatical fix

Removed redundant word to avoid confusion.

@drewnoakes,
Thanks for having already signed the Contribution License Agreement. Your agreement was validated by .NET Foundation. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot


Support multiple GitHub SSH deploy keys

This PR's goal is to solve #340, hope it can be a good enough of a solution :)
Background
The webfactory/ssh-agent action handles the issue of authenticating with multiple SSH deploy keys to Github by adding the multiple public keys to the .ssh folder with custom file names, and then using them accordingly by adding url.*.insteadOf git configs.
The problem is that these git configs as well as the SSH public keys are not uploaded to the container, so this mirroring doesn't work in the build.
Changes

add sshPublicKeysDirectoryPath input, which is a custom .ssh that should contain the public keys and config file.
pass a GIT_CONFIG_EXTENSIONS environment variable to the container, which is a list of key=values configs that can be retrieved from git config --list that the git inside the container will use.

Usage
With these changes, it's possible to fix the multiple SSH keys issue by using the following steps:
- uses<EMAIL_ADDRESS>  with:
  ssh-private-key: |
    ${{ secrets.FIRST_KEY }}
    ${{ secrets.NEXT_KEY }}
    ${{ secrets.ANOTHER_KEY }}

- name: Prepare SSH config for unity builder
  run: |
    mkdir $HOME/.ssh_docker
    cp $HOME/.ssh/config $HOME/.ssh_docker/
    cp $HOME/.ssh/key* $HOME/.ssh_docker/
    cp $HOME/.ssh/known_hosts $HOME/.ssh_docker/
    sed -i 's/\/home\/runner/\/root/g' $HOME/.ssh_docker/config
    sudo chown -R root:root $HOME/.ssh_docker
    GIT_CONFIG_EXTENSIONS=$(git config --list | grep '^url\.')
    {
      echo 'GIT_CONFIG_EXTENSIONS<<EOF'
      echo "$GIT_CONFIG_EXTENSIONS"
      echo EOF
    } >> "$GITHUB_ENV"
  shell: bash

- uses: game-ci/unity-builder@v3
  ...
  with:
    sshAgent: ${{ env.SSH_AUTH_SOCK }}
    sshPublicKeysDirectoryPath: ${{ env.HOME }}/.ssh_docker

Checklist

[x] Read the contribution guide and accept the
code of conduct
[ ] Docs (If new inputs or outputs have been added or changes to behavior that should be documented. Please make
a PR in the documentation repo)
[ ] Readme (updated or not needed)
[ ] Tests (added, updated or not needed)

Codecov Report

Merging #568 (142a237) into main (a073719) will decrease coverage by 0.06%.
The diff coverage is 15.38%.

:exclamation: Current head 142a237 differs from pull request most recent head d5cdc59. Consider uploading reports for the commit d5cdc59 to get more accurate results

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the GitHub App Integration for your organization. Read more.
Additional details and impacted files

@@            Coverage Diff             @@
##             main     #568      +/-   ##
==========================================
- Coverage   36.96%   36.90%   -0.06%
==========================================
  Files          77       77
  Lines        3033     3043      +10
  Branches      637      646       +9
==========================================
+ Hits         1121     1123       +2
- Misses       1912     1920       +8

Files Changed
Coverage Δ

src/model/build-parameters.ts
89.39% <ø> (ø)

src/model/docker.ts
9.61% <0.00%> (-1.75%)
:arrow_down:

src/model/input.ts
90.75% <100.00%> (+0.15%)
:arrow_up:

Looks good to me.
Just need to raise a PR to update the docs page as well: https://github.com/game-ci/documentation/blob/main/docs/03-github/04-builder.mdx

Thank you for the response!
added complementary documentation and unity-test-runner PRs:

https://github.com/game-ci/unity-test-runner/pull/240
https://github.com/game-ci/documentation/pull/416


cargo-tarpaulin: 0.24.0 -> 0.25.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/xd009642/tarpaulin/releases.
meta.description for cargo-tarpaulin is: A code coverage tool for Rust projects
meta.homepage for cargo-tarpaulin is: https://github.com/xd009642/tarpaulin
Updates performed

Rust version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.25.0 with grep in /nix/store/d75hxbx7krcmgb8snlxx04fgaijy2qc4-cargo-tarpaulin-0.25.0
found 0.25.0 in filename of file in /nix/store/d75hxbx7krcmgb8snlxx04fgaijy2qc4-cargo-tarpaulin-0.25.0

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

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
cargo-tarpaulin

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/d75hxbx7krcmgb8snlxx04fgaijy2qc4-cargo-tarpaulin-0.25.0 \
  --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 cargo-tarpaulin https://github.com/r-ryantm/nixpkgs/archive/606efffdee6fe5d06774fecf22ab76750141e853.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/d75hxbx7krcmgb8snlxx04fgaijy2qc4-cargo-tarpaulin-0.25.0
ls -la /nix/store/d75hxbx7krcmgb8snlxx04fgaijy2qc4-cargo-tarpaulin-0.25.0/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:

cargo-tarpaulin

Maintainer pings
cc @HugoReeves for testing.

Result of nixpkgs-review pr 214117 run on x86_64-darwin 1

1 package built:

cargo-tarpaulin


Improve performance of document symbols collection

https://github.com/Microsoft/vscode-python/issues/2430
This can be done via AST rather than by waiting for analysis to complete

Folding into #433


Warning: Output is not to a terminal

Category

[x] fzf binary
[ ] fzf-tmux script
[ ] Key bindings
[ ] Completion
[ ] Vim
[ ] Neovim
[ ] Etc.

OS

[ ] Linux
[x] Mac OS X
[ ] Windows
[ ] Windows Subsystem for Linux
[ ] Etc.

Shell

[ ] bash
[x] zsh
[ ] fish

I'm trying to assign assign the resulting file of fzf while also having a keybinding to edit the file in Vim.
RESULT=$(fzf --bind="ctrl-o:execute(vim {} < /dev/tty)")

The problem is that when I press ctrl-o, I get Vim: Warning: Output is not to a terminal. Is there a way to solve this?

Try vim {} < /dev/tty > /dev/tty

Thanks, it works!


Show statistics in the dump output

Reporter: Thomas White / @tomwhite
Assignee: Thomas White / @tomwhite
Related issues:

Release Parquet-mr 1.9.0 (blocks)
Printing out the statistics of metadata in parquet-tools (is duplicated by)

PRs and other links:

PR #237

Note: This issue was originally created as PARQUET-327. Please see the migration documentation for further details.

Thomas White / @tomwhite:
See PR #237.

Ryan Blue / @rdblue:
Thanks for fixing this, Tom! I've committed your changes along with the suggestions on the PR.


docker: update cuDNN to <IP_ADDRESS>

Signed-off-by: Felix Abecassis<EMAIL_ADDRESS>@gunan lightly tested on my side, so it will have to pass CI.

Can we get a do-over for the MacOS CI?

The failure is actually unrelated. Merging.


Assigning Environments to tests

Are you planning on bringing in the ability to assign environments to tests, as you can in Microsoft Test Manager?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 3c520dee-1218-777e-7405-551623817c03
Version Independent ID: 82b5d172-ae1a-2b4c-82ac-595cd7609d3c
Content: New test plans page - Azure Test Plans
Content Source: docs/test/new-test-plans-page.md
Product: devops
Technology: devops-test
GitHub Login: @harishkragarwal
Microsoft Alias: harishkragarwal

Thanks for the suggestion! The product teams aren’t always watching this repository, so to make sure it gets in front of them for triage, please submit your idea here.


'OrderItemPreviewComponent' has no properties in common with type 'CloseGuard'.

I'm getting that error on compile time
here's my code
import {CloseGuard, ModalComponent, DialogRef}          from "angular2-modal";
import {Component}                                      from "@angular/core";
import {BSModalContext}                                 from 'angular2-modal/plugins/bootstrap';
import {AuthService}                                    from '../../auth/services/auth.service';

@Component({
    templateUrl: './order-item-preview.component.html'
})
export class OrderItemPreviewComponent implements CloseGuard, ModalComponent<BSModalContext> {

    public context: BSModalContext;
    public printToken: string;
    private item: any;

    constructor(
        public dialog: DialogRef<BSModalContext>,
        private AuthService: AuthService
    ) {
        this.context = dialog.context;
        this.printToken = this.AuthService.getPrintToken();
        dialog.setCloseGuard(this);
    }

    ngOnInit() {
        if (this.context.hasOwnProperty('item')) {
            this.item = this.context['item'];
        }
    }

    close() {
        this.dialog.destroy();
    }
}

Anyone knows what this error is about?
Thanks and more power.

Got it working again. Updated typescript version to 2.3.4 fixes this issue.


tab character shown on blank line when in current scope

Problem
I recently updated to version 3 of the plugin and noticed some odd tab characters on blank lines in C++ files. I simplified the code that produces the issue as seen in the images below.
In the first image a tab character is shown on line 8, a blank line, when the line is in the current scope.

In the second image the tab character disappears when line 8 is no longer included in the current scope.

I believe the issue has something to do with the fact that the blank line is followed by the private: label which "interrupts" the indent guide characters. If the private: label is indented the blank line is filled with an indent character and no tab characters are shown.
Steps to reproduce

nvim --clean -u min-init.lua where scope is enabled and the cpp treesitter parser is installed
:set lcs+=tab:⟶
:edit ibl_tab_issue.cpp where the file contains the following

class MyClass
{
public:
    MyClass(int var)
        : var_(var)
    {
    }

private:
    int var_;
};

move the cursor into the scope of the class

Expected behavior
I expect blank lines to either be blank or have an indent guide character and not show any tab characters.
Neovim version (nvim -v)
0.9.4

If you just want to show an indent guide character instead of the tab character, look at :help ibl.config.indent.tab_char (simply set it to the same character as the indent character).
Though, I also prefer the "showing nothing in a blank line" option.

Changing the indent.tab_char does work for my purposes, although I still think it is strange that thetab_char is used on a blank line with no tab indentation. It is also strange that the character only appears when the line is within the current scope.

That tab_char fixes it is coincidence, this is a bug.
When extending scope over lines that didn't have normal indentation, the code just checks if the line has space indentation, if not it uses tab indentation. But in this case it's neither.
I don't have time today, I'll look into this tomorrow.

It happens in other cases with "abnormal" indentation too. I just stumbled on this example:

(It seems to follow the last "abnormal" indent)

Released a fix for this now


Add Mixout module

It's an issue switched from tf repo (here) and here is the pending pr I've sent there. According to the reviewer's suggestion, I probably should add the module to here first.

Describe the feature and the current behavior/state.
Mixout is a module proposed here. In short, it resembles dropout, but rather than setting the randomly selected weights to zero, it replaces them with the weights in the pre-trained model. By doing so it helps to improve the stability in downstream fine-tuning tasks.
Will this change the current api? How?
Yes, it would require a new API like tf.nn.mixout with similar signature with tf.nn.dropout
Who will benefit with this feature?
People who wanna use BERT in downstream tasks with small datasets. This feature (as claimed in the paper) improve stability.
Any Other info.
A pytorch version  has been provided by the author.

Relevant information

Are you willing to contribute it: yes

Are you willing to maintain it going forward? yes

Is there a relevant academic paper? yes, here

Is there already an implementation in another framework? there is a pytorch version provided by the author, yet I don't think it's merged in the framework.

Was it part of tf.contrib? (if so, where): no

Which API type would this fall under (layer, metric, optimizer, etc.)
custom_ops (since it's categorized under  tensorflow/python/ops/nn_ops), yet I'm not sure which folder I shall add it to (among activation/layer/image/seq2seq/text)

Sounds great! Free feel to file an PR. Also, our style is a little bit different from the one of core TF so please take a look at https://github.com/tensorflow/addons/blob/master/CONTRIBUTING.md. But no worries, if you find any problem on testing suite or style, just opening an PR first and pinging me. Thank you.

BTW, I would say we can place it in layers but want to see other members' opinion

+1, it would be better if we create a new subclass for it, eg: Dropout

Same thought. It would be much better if this is implemented as a layer.

Hey thanks for the suggestions, I'm working on the layer version but then realize it's actually hard since Mixout requires to manipulate the weight in the "previous" layers (these lines may make it clearer). I'm thinking if there is any approach we can make it into a layer wrapper or some sort of callback, so that it can access the weight by self.trainable etc.

Hey @AakashKumarNain @facaiy @WindQAQ thanks for the suggestions! I'm working on the layer version but then realize it's actually hard since Mixout requires to manipulate the weight in the "previous" layers (these lines may make it clearer). I'm thinking if there is any approach we can make it into a layer wrapper or some sort of callback, so that it can access the weight by self.trainable etc.

Haven't taken a deeper look into the implementation, but we can subclass tf.keras.layers.Wrapper to access the weight of wrapped layer.
https://www.tensorflow.org/api_docs/python/tf/keras/layers/Wrapper

awesome will look into that! Great thanks!

Hi @crystina-z
Sorry to bother, but is there any update regarding this? Would be of a great help for my current project. Thank you in advance.

TensorFlow Addons is transitioning to a minimal maintenance and release mode. New features will not be added to this repository. For more information, please see our public messaging on this decision:
TensorFlow Addons Wind Down
Please consider sending feature requests / contributions to other repositories in the TF community with a similar charters to TFA:
Keras
Keras-CV
Keras-NLP


Language Server initialization failed

When I open a python project, the python output console shows the language server failing to initialise.
The logs show vscode libraries being loaded from a Google Drive folder, which is managed by https://github.com/lra/mackup
Environment data

VS Code version: Version 1.25.1 (1.25.1)
Extension version (available under the Extensions sidebar): 2018.7.0
OS and version: OSX 10.13.6
Python version (& distribution if applicable, e.g. Anaconda): 2.7 and 3.6 (different projects)
Type of virtual environment used (N/A | venv | virtualenv | conda | ...): pyenv-virtualenv + pipenv

Actual behavior
Language server fails to start.
Expected  behavior
Language server starts.
Steps to reproduce:

Open a python project

Logs
Output for Python in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Python)
Starting Microsoft Python language server.
[Info  - 14:22:55] Created Microsoft.PythonTools.Interpreter.Ast.AstPythonInterpreter instance from Microsoft.PythonTools.Interpreter.Ast.AstPythonInterpreterFactory
[Error - 14:22:56] Server initialization failed.
  Message: Object reference not set to an instance of an object.
  Code: -32000
[object Object]

Output from Console under the Developer Tools panel (toggle Developer Tools on under Help)
log.ts:171   ERR Object reference not set to an instance of an object.: Error: Object reference not set to an instance of an object.
    at new ResponseError (/Users/josh/Google Drive/Mackup/.vscode/extensions/ms-python.python-2018.7.0/node_modules/vscode-jsonrpc/lib/messages.js:46:28)
    at handleResponse (/Users/josh/Google Drive/Mackup/.vscode/extensions/ms-python.python-2018.7.0/node_modules/vscode-jsonrpc/lib/main.js:430:48)
    at processMessageQueue (/Users/josh/Google Drive/Mackup/.vscode/extensions/ms-python.python-2018.7.0/node_modules/vscode-jsonrpc/lib/main.js:258:17)
    at Immediate.<anonymous> (/Users/josh/Google Drive/Mackup/.vscode/extensions/ms-python.python-2018.7.0/node_modules/vscode-jsonrpc/lib/main.js:242:13)
    at runCallback (timers.js:672:20)
    at tryOnImmediate (timers.js:645:5)
    at processImmediate [as _immediateCallback] (timers.js:617:5)

Extra logs:
Object reference not set to an instance of an object.
e.onDidNotificationChange @ notificationsAlerts.ts:42
(anonymous) @ notificationsAlerts.ts:28
e.fire @ event.ts:140
e.notify @ notifications.ts:127
e.notify @ notificationService.ts:65
e._showMessage @ mainThreadMessageService.ts:84
e._showMessage @ mainThreadMessageService.ts:45
e.$showMessage @ mainThreadMessageService.ts:39
e._doInvokeHandler @ rpcProtocol.ts:261
e._invokeHandler @ rpcProtocol.ts:246
e._receiveRequest @ rpcProtocol.ts:192
e._receiveOneMessage @ rpcProtocol.ts:174
(anonymous) @ rpcProtocol.ts:107
(anonymous) @ rpcProtocol.ts:303
e.fire @ event.ts:140
c @ ipc.net.ts:81
(anonymous) @ ipc.net.ts:108
emitOne @ events.js:96
emit @ events.js:191
readableAddChunk @ _stream_readable.js:178
Readable.push @ _stream_readable.js:136
onread @ net.js:560
console.ts:136 [Extension Host] rejected promise not handled within 1 second
t.log @ console.ts:136
t._logExtensionHostMessage @ extensionHost.ts:393
(anonymous) @ extensionHost.ts:210
emitTwo @ events.js:106
emit @ events.js:194
process.nextTick @ internal/child_process.js:766
_combinedTickCallback @ internal/process/next_tick.js:73
_tickCallback @ internal/process/next_tick.js:104

I think that's a duplicate of #2017

I have this exact same issue after updating to the latest version today

Thanks @patrys you're right. I did open a second project to check if it was a python2 or python3 issue, but I mistakenly opened 2 python 2 projects.
Opening a python 3 project with jedi disabled works correctly. Closing this as a dupe of #2017

@masat76 - most probably https://github.com/Microsoft/vscode-python/issues/2017. We should have insiders build with updated LS ready in a day or two. @d3r3kk FYI


Improve security documentation

This could be seen as a question, but I think of it more as a request for documentation improvement. :)
Reading the documentation here on AFSSLPinningMode, I think this is vague and there's room for improvement.

There could be detail in each mode about what it does in the case of updated certificates, for instance. If I update the certificate on the server, will I need to update the public certificate in the app before it works again?

I'd take a swing at this with a pull request, but I don't really understand the modes myself.

This would definitely be helpful.
High level: Pinning against the public key does not require you to update the cert bundled with your app. If you pin against the certificate, then you'll need to update the cert in your app bundle as well.
Pinning against the cert is "stronger" since it requires an exact match, but also isn't ideal where you can't control whether an end user has updated to the latest version of your app when you do update your certs. Public Key is a good middle ground for most mobile apps.

That's useful info! Is there anything else that you think should be in there?

We could actually use a full "AFNetworking + Security" guide and go deep on all of the advanced options, and explain why you would want to use each.

This is especially important in light of this serious vulnerability, which as far as I can tell was mostly the result of poor defaults and poor documentation.

Not completely related, but still about SSL and security it would be helpful if improved security documentation made clear how to know whether AFNetworking (AFAmazonS3Manager) is using SSL when communicating with S3.
This in light of recent emails from Amazon discontinuing support for SSLv3, which I'm not yet clear requires any change on our part to avoid disruption to S3 communication;
"As of 12:00 AM PDT May 20, 2015, AWS will discontinue support of SSLv3 for securing connections to S3 buckets. Security research published late last year demonstrated that SSLv3 contained weaknesses in its ability to protect and secure communications. These weaknesses have been addressed in Transport Layer Security (TLS), which is the replacement for SSL. Consistent with our top priority to protect AWS customers, AWS will only support versions of the more modern TLS rather than SSLv3."

Can anyone provide a sample snippet about using public key?
I know the steps for certificate mode, which are:

Have your .cer file in hand, you can use the command to get certificate from your site: openssl s_client -connect myserver:443 </dev/null 2>/dev/null | openssl x509 -outform DER > myserver.cer
Add .cer file to your bundle.
Set SSLPinningMode to AFSSLPinningModeCertificate.
Add your .cer file to pinnedCertificates property.

But how to set pinning mode to public key? What file format should I use? Any other options should I setup?

@danielnordh I can't imagine it will require changes to our apps to support TLS; TLS has been around of almost 20 years, and is fully baked into the OS. It probably helps to just think of them as later versions of SSL.

I'm working on some documentation right now.
Does anyone know why someone would NOT want to validate a domain name? Trying to think of examples, and honestly have never come across the need to do so.
cc @mattt @cnoon @kylef

@kcharwood I’m not sure if this use case is relevant to your question, since the documentation hasn’t been written yet :stuck_out_tongue_closed_eyes:
My iOS app communicates with one of my servers. Since I control both the app and the server, and the server is only ever accessed from the app—never from, for example, a web browser—I use a self-signed certificate on the server. The app uses certificate pinning so it doesn’t matter that the server certificate isn’t in the usual chain of trust.
As I recall, when I started using the latest version of AFNetworking with iOS 8 I found that I needed to disable domain-name validation to get my certificate to be accepted. Perhaps I had set the domain name incorrectly on the certificate, or maybe that’s just a quirk of using self-signed certificates. Either way, I’m pretty sure that I needed to turn off validation in order to get AFNetworking to communicate with my server.

I think disabling domain validation on self signed certs makes sense @bdesham. I can't think of any cases though @kcharwood where you would not want to validate the domain name for any CA signed cert.

@kcharwood, if you want a review of those docs let me know. I'm getting ready to ship something relying on AFNetworking so this would be a perfect time for me to look it over.

@tewha Definitely not ready at the moment. It's actually opened my eyes a bit to some of the rough edges around certificate chain validation. I've been thinking about what a cleaner implementation would look like on that front.
Once I have something worth showing off on the docs front I'll push it up. If you want to put up a gist of anything, I'd be happy to look at it with you before you ship.

Hello everyone -
I need to use HTTPS within my application to communicate securely with my server, I am bit confused about Security policy and Pinned SSL certificates, you mention in the documentation that we should use HTTPS connection with SSL pinning configured and enabled, so Should I add ssl certificate to my app bundle ? if yes how to handle expired certificate ? On the other hand if we don't add SSL certificate, What is the risk we have in our app?
Looking forward to hearing back from you soon
Regards

Should I add ssl certificate to my app bundle ?

Yes.

if yes how to handle expired certificate ?

You should use AFSSLPinningModePublicKey mode, it means check public key only. So even the certificate is expired, it still passes if public key doesn't change.

On the other hand if we don't add SSL certificate, What is the risk we have in our app?

You can google the man in the middle attack.

Hi everyone. I started learning about certificates and SSL so I'm still noob with it. Anyway, do you think that enabling this security and adding a self certificate, is a way that only my app could access the service? There are other ways to do it?
Thanks all!


React native 0.57

Description
This is not an issue is just a comment, I'm using detox v9 with version 0.57 of react-native and everything I'm using works correctly. There's just one thing that I needed to change. The mocking react-native config needs to be changed as this react-native version includes a metro-bundler version bump. The only way to achieve the same effect as the previous version of rn-cli.config.js is this one:
const { getDefaultConfig } = require('metro-config');

const additionalExts = process.env.RN_SRC_EXT ? process.env.RN_SRC_EXT.split(',') : [];

module.exports = (async () => {
  const {
    resolver: { sourceExts },
  } = await getDefaultConfig();

  return {
    resolver: {
      sourceExts: [...additionalExts, ...sourceExts],
    },
  };
})();

In this new version of metro-bundler you need to specify all the extensions you want to use so you need to get the default extensions and add your own.
I think I got it all correct, and I'm open to testing additional things if needed.
Steps to Reproduce
Use detox v9 with react-native 0.57
Detox, Node, Device, Xcode and macOS Versions

Detox: 9.0.5
React Native: 0.57.2
Node: 10
Device: android && ios
Xcode: 10

Hello, thank you for posting.
There is a PR that updates documentation with these instructions. We haven’t had time to test it yet, which is why it is open still.


[INTEGRATION][Flink] Prepare baseline for Flink integration which includes local Flink/Kafka environment

Signed-off-by: mr-yusupov<EMAIL_ADDRESS>Problem
In order to test real integration with Flink, it is good to have local environment for Flink in connection with Kafka/SchemaRegistry.
Closes: #494
Solution
To reflect most common scenario for Flink applications - simple stateful Kafka to Kafka Flink application that uses Avro for serizalization.

Note: All schema changes require discussion. Please link the issue for context.

[ ] Your change modifies the core OpenLineage model
[ ] Your change modifies one or more OpenLineage facets

Checklist

[x] You've signed-off your work
[x] Your pull request title follows our guidelines
[x] Your changes are accompanied by tests (if relevant)
[ ] Your change contains a small diff and is self-contained
[x] You've updated any relevant documentation (if relevant)
[ ] You've updated the CHANGELOG.md with details about your change under the "Unreleased" section (if relevant, depending on the change, this may not be necessary)
[ ] You've versioned the core OpenLineage model or facets according to SchemaVer (if relevant)

Might want to keep this on some branch until we have something working.


Unable to find nodes

Context (Environment)

neo-js Version: 0.11.0
node Version: v8.7.0
Operation System: Ubuntu 16.04
MongoDB Version (if applicable): v3.6.3-rc1

Expected behavior
Neo Mesh should find an applicable node and sync the missing blocks.
Actual behavior
I based this project on rockacola's examples and neo-js configurations but it keeps me returning these messages:
Mesh info: Unable to find a suitable node to perform benchmark.
2018-11-23 10:05:46.769 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed4.switcheo.network:10331 Message: Request failed with status code 503
neo.mesh is ready.
Blockchain Height: 2998189
No sync progress yet
2018-11-23 10:05:51.165 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed5.switcheo.network:10331 Message: Request failed with status code 503
No sync progress yet
2018-11-23 10:05:55.262 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed6.cityofzion.io:443 Message: write EPROTO<PHONE_NUMBER>47808:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:../deps/openssl/openssl/ssl/s23_clnt.c:772:
2018-11-23 10:05:55.286 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed7.cityofzion.io:443 Message: write EPROTO<PHONE_NUMBER>47808:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:../deps/openssl/openssl/ssl/s23_clnt.c:772:
2018-11-23 10:05:56.490 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed1.switcheo.network:10331 Message: Request failed with status code 504
No sync progress yet
2018-11-23 10:06:00.794 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://node1.ams2.bridgeprotocol.io Message: connect ECONNREFUSED <IP_ADDRESS>:80
2018-11-23 10:06:01.407 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed9.cityofzion.io:443 Message: write EPROTO<PHONE_NUMBER>47808:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:../deps/openssl/openssl/ssl/s23_clnt.c:772:
2018-11-23 10:06:01.409 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed0.cityofzion.io:443 Message: write EPROTO<PHONE_NUMBER>47808:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:../deps/openssl/openssl/ssl/s23_clnt.c:772:
2018-11-23 10:06:01.410 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed8.cityofzion.io:443 Message: write EPROTO<PHONE_NUMBER>47808:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:../deps/openssl/openssl/ssl/s23_clnt.c:772:
No sync progress yet
2018-11-23 10:06:05.050 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://node1.nyc3.bridgeprotocol.io Message: connect ECONNREFUSED <IP_ADDRESS>:80
2018-11-23 10:06:05.085 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://node2.nyc3.bridgeprotocol.io Message: connect ECONNREFUSED <IP_ADDRESS>:80
2018-11-23 10:06:05.134 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://node2.ams2.bridgeprotocol.io Message: connect ECONNREFUSED <IP_ADDRESS>:80
2018-11-23 10:06:05.356 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://node1.sgp1.bridgeprotocol.io Message: connect ECONNREFUSED <IP_ADDRESS>:80
SYNCER REPORT:

blockWritePointer: 0
storeQueue length: 0
2018-11-23 10:06:09.385 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed1.switcheo.network:10331 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.385 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed2.switcheo.network:10331 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.385 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed3.switcheo.network:10331 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.385 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed4.switcheo.network:10331 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.385 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed5.switcheo.network:10331 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.385 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed1.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed2.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed3.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed4.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed5.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed6.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed7.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://node2.sgp1.bridgeprotocol.io Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed1.redpulse.com:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed2.redpulse.com:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed1.aphelion-neo.com:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.387 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed2.aphelion-neo.com:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.387 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed3.aphelion-neo.com:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.387 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed4.aphelion-neo.com:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.387 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed1.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.387 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed2.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.387 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed3.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.387 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed4.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.387 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed5.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.387 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed6.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.388 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed7.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.388 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed8.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.388 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed9.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.388 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed10.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.392 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed8.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.392 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed9.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.392 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed0.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.392 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://node1.ams2.bridgeprotocol.io Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.392 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://node2.ams2.bridgeprotocol.io Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.392 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://node1.nyc3.bridgeprotocol.io Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://node2.nyc3.bridgeprotocol.io Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://node1.sgp1.bridgeprotocol.io Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://node2.sgp1.bridgeprotocol.io Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed1.redpulse.com:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed2.redpulse.com:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed1.aphelion-neo.com:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed2.aphelion-neo.com:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed3.aphelion-neo.com:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed4.aphelion-neo.com:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed1.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed2.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed3.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed4.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed5.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed6.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed7.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed8.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.394 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed9.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.394 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed10.ngd.network:10332 Message: timeout of 30000ms exceeded

Steps to reproduce the behavior

git clone https://github.com/marcosrachid/nodejs-neo-fullnode
npm install
npm start

I partly believe this may be an issue with the instance of node 8.7 making connection through HTTPS.
There was an existing issue in node >=8.6.0, <9.0.0 related to the said error message: write EPROTO<PHONE_NUMBER>47808:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake :

https://github.com/nodejs/node/issues/19359

Can you try new version (say, 10.13.0) of node to see if the issue persists?

Alternatively, we can also test isolate protocol by explicitly provide only HTTP endpoints to see if the issue persists:
const neo = new Neo({
  endpoints: [
    { endpoint: 'http://seed1.ngd.network:10332' },
    { endpoint: 'http://seed2.ngd.network:10332' },
    { endpoint: 'http://seed3.ngd.network:10332' },
    { endpoint: 'http://seed4.ngd.network:10332' },
    { endpoint: 'http://seed5.ngd.network:10332' },
    { endpoint: 'http://seed6.ngd.network:10332' },
    { endpoint: 'http://seed7.ngd.network:10332' },
    { endpoint: 'http://seed8.ngd.network:10332' },
    { endpoint: 'http://seed9.ngd.network:10332' },
    { endpoint: 'http://seed10.ngd.network:10332' },
  ]
})

Another point worth mention, the log verbose levels as seen in https://github.com/marcosrachid/nodejs-neo-fullnode/blob/master/index.js is considerably noisy.
There are bound to have node connectivity failures for various of server side reasons (most common one is: connect ECONNREFUSED <IP_ADDRESS>:80). If it's not for debugging purpose, you can change the log level from info to warn.
I cloned the repo https://github.com/marcosrachid/nodejs-neo-fullnode/, modify all log levels to warn and following are the output I see after running for 1 minute:
><EMAIL_ADDRESS>start /Users/travis/ProjectGit/marcosrachid/nodejs-neo-fullnode
> node .

== Sync Mainnet ==
neo.storage is ready.
Highest Count in Storage: 1449
neo.mesh is ready.
Blockchain Height: 3005723
No sync progress yet
[00:07:45] 1748/3005724 | complete: 0.0582% | 1752 blocks/min (ETA in a day) | failure: 0% | missing: N/A | excessive: N/A
[00:07:50] 2075/3005725 | complete: 0.069% | 2484 blocks/min (ETA in 20 hours) | failure: 0% | missing: N/A | excessive: N/A
[00:07:55] 2389/3005725 | complete: 0.0795% | 2798 blocks/min (ETA in 18 hours) | failure: 0% | missing: N/A | excessive: N/A
[00:08:00] 2726/3005725 | complete: 0.0907% | 3040 blocks/min (ETA in 16 hours) | failure: 0% | missing: N/A | excessive: N/A
## SYNCER REPORT:
> blockWritePointer: 3765
> storeQueue length: 688
[00:08:05] 3052/3005725 | complete: 0.1015% | 3196 blocks/min (ETA in 16 hours) | failure: 0% | missing: N/A | excessive: N/A
[00:08:10] 3353/3005725 | complete: 0.1116% | 3248 blocks/min (ETA in 15 hours) | failure: 0% | missing: N/A | excessive: N/A
[00:08:15] 3616/3005725 | complete: 0.1203% | 3243 blocks/min (ETA in 15 hours) | failure: 0% | missing: N/A | excessive: N/A
[00:08:20] 3882/3005725 | complete: 0.1292% | 3229 blocks/min (ETA in 15 hours) | failure: 0% | missing: N/A | excessive: N/A
[00:08:25] 4171/3005725 | complete: 0.1388% | 3255 blocks/min (ETA in 15 hours) | failure: 0% | missing: N/A | excessive: N/A
[00:08:30] 4461/3005726 | complete: 0.1484% | 3279 blocks/min (ETA in 15 hours) | failure: 0% | missing: N/A | excessive: N/A
## SYNCER REPORT:
> blockWritePointer: 5500
> storeQueue length: 718
## NODES REPORT:
> pending: 6 | latency: 496| height: 3005706 | UA: /Neo:2.9.0/ | http://seed1.ngd.network:10332
> pending: 6 | latency: 302| height: 2995341 | UA: /Neo:2.9.0/ | http://seed3.ngd.network:10332
> pending: 5 | latency: 366| height: 2995341 | UA: /Neo:2.9.0/ | http://seed4.ngd.network:10332
> pending: 6 | latency: 481| height: 3005724 | UA: /Neo:2.9.0/ | http://seed6.ngd.network:10332
> pending: 6 | latency: 464| height: 3005725 | UA: /Neo:2.9.0/ | http://seed7.ngd.network:10332
[00:08:35] 4755/3005726 | complete: 0.1582% | 3303 blocks/min (ETA in 15 hours) | failure: 0% | missing: N/A | excessive: N/A
! Updated missing block count: 755
! Updated excessive block count: 0
[00:08:40] 4280/3005726 | complete: 0.1424% | 3325 blocks/min (ETA in 15 hours) | failure: 0.4146% | missing: 14.995% | excessive: 0%
[00:08:45] 4575/3005726 | complete: 0.1522% | 3339 blocks/min (ETA in 15 hours) | failure: 0.3835% | missing: 14.1651% | excessive: 0%
[00:08:50] 4814/3005727 | complete: 0.1602% | 3314 blocks/min (ETA in 15 hours) | failure: 15.2414% | missing: 13.5572% | excessive: 0%
[00:08:55] 5051/3005727 | complete: 0.168% | 3281 blocks/min (ETA in 15 hours) | failure: 25.2137% | missing: 13.0038% | excessive: 0%
[00:09:00] 5274/3005727 | complete: 0.1755% | 3248 blocks/min (ETA in 15 hours) | failure: 32.3931% | missing: 12.5228% | excessive: 0%

My environment:

macOS 10.12.6
node 10.10.0
MongodB 3.4.9

I tried upgrade me node, but nothing changed.
And tried also to change my internet bandwidth, but still same errors. I will try testing another computer and give you a feedback.

On a windows environment with a better bandwidth, it works with success. What OS are you running your instance ?

Oh sorr. I just saw you already answered my question. So I think my problem was just a slow internet. Thanks @rockacola.


DailyJob not works

Hello,
I do this :
Application :
JobManager.create(this).addJobCreator(new MyDailyJobCreator());
MyDailyJobCreator :
public class MyDailyJobCreator implements JobCreator {

    @Override
    @Nullable
    public Job create(@NonNull String tag) {
        switch (tag) {
            case MyDailyJob.TAG:
                return new MyDailyJob();
            default:
                return null;
        }
    }
}

MyDailyJob :
public class MyDailyJob extends DailyJob {

    public static final String TAG = "MyDailyJob";

    public static void schedule() {
        // schedule between 1 and 20 PM
        DailyJob.schedule(new JobRequest.Builder(TAG), TimeUnit.HOURS.toMillis(1), TimeUnit.HOURS.toMillis(20));
    }

    @NonNull
    @Override
    protected DailyJob.DailyJobResult onRunDailyJob(Job.Params params) {
        Log.d(TAG, "onRunDailyJob");

        //Intent i = new Intent(getContext(), SaveDatasService.class);
        //getContext().startService(i);

        return DailyJob.DailyJobResult.SUCCESS;
    }
}

My problem that it nothing do no entry to onRunDailyJob ...
Thanks for help.

That looks right to me. Did you wait a full day until your job ran?

it strange because in android Studio the method schedule on MyDailyJob tell me that is not used ...

have you added MyDailyJob.schedule() somewhere in your app ?

No ...
I can do it in application file ? Not in activity. Because I want the job works in background all time and do action....
Envoyé par TypeApp
Le 27 nov. 2017 à 08:57, à 08:57, PYPL<EMAIL_ADDRESS>a écrit:

have you added MyDailyJob.schedule() somewhere in your app ?
--
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/evernote/android-job/issues/324#issuecomment-347104324

@Paul75 Does not matter if you will run it from the application or an activity. In any case your scheduled job will start in background. You just must add this part to your schedule method to avoid scheduling same job all time when you start your application.
public static void schedule() {
    if (!JobManager.instance().getAllJobRequestsForTag(TAG).isEmpty()) {
        // job already scheduled, nothing to do
        return;
    }

    JobRequest.Builder builder = new JobRequest.Builder(TAG).setRequiredNetworkType(JobRequest.NetworkType.UNMETERED);

    // run job between 11pm and 6am
    DailyJob.schedule(builder, TimeUnit.HOURS.toMillis(23), TimeUnit.HOURS.toMillis(6));
}

after adding the if statement above you ensure that the job will not be scheduled multiple times and it does not matter from where MyDailyJob.schedule() will be executed.

Hello,
If I wrote this :
DailyJob.schedule(builder, TimeUnit.HOURS.toMillis(20), TimeUnit.HOURS.toMillis(9));
it in console tell :
D/JobProxy24: Schedule one-off jobInfo success, request{id=3, tag=MyDailyJob, transient=false}, start 09:02:50, end 22:02:50 (from now), reschedule count 0
and if i do : DailyJob.schedule(builder, TimeUnit.HOURS.toMillis(9), TimeUnit.HOURS.toMillis(20));
it say :
D/JobProxy24: Schedule one-off jobInfo success, request{id=2, tag=MyDailyJob, transient=false}, **start 22:04:12, end 09:04:12 (+1 day)** (from now), reschedule count 0
????

Okay that seams works but it send me in 01:01:07 hours but for me I must send only at 07pm to 08pm ? When I can do ?

DailyJob only schedule BETWEEN one time to another times per day.

That mean I can't do action exactly on 7pm o clock ? and repeat it all days ?

@iNoles : you mean that between one time to another okay but for me when I do DailyJob.schedule(builder, TimeUnit.HOURS.toMillis(9), TimeUnit.HOURS.toMillis(20)); it say execute : D/JobProxy24: Schedule one-off jobInfo success, request{id=2, tag=MyDailyJob, transient=false}, start 22:04:12, end 09:04:12 (+1 day) (from now), reschedule count 0
Or for me i want it execute in between 9' and 20' in this exemple (in reality I want to start between 19' and 20' ....
Thanks


prometheus: make replicas external label name configurable

This change enables existing Thanos deployments which adopted any label name other than prometheus_replica to migrate to Prometheus Operator without losing of Thanos deduplication features.
Defaults to prometheus_replica for backward compatibility.

Nice, thanks! lgtm :+1:


Video playback

@rvaish pointed out following

small improvement may be required, the moment  I run code - video resumes - most of the times, people may want to understand the result - then try something else with it — so control may be given to the user to resume the video, rather than auto start

In addition to this, we should also disable the playback until the user completes the task/question.

We're left with "disable the playback until the user completes the task/question". I think this can be put aside for now since it isn't a priority (I guess..).


Merge release into master

Making sure ignored test does not end up on master

OK, I've already triggered a build for you.


[Crash] Out of bound off by one access in Paragraph widget

Description

An out of bound off by one access happened in Paragraph widget, leading to a panic.
  File "/home/kxxt/repos/tracexec/src/main.rs:334", in tracexec::main::{{closure}}
    bpf::run(command, user, cli.color).await?;
  File "/home/kxxt/repos/tracexec/src/bpf.rs:676", in tracexec::bpf::run::{{closure}}
    app.run(&mut tui).await?;
  File "/home/kxxt/repos/tracexec/src/tui/app.rs:575", in tracexec::tui::app::App::run::{{closure}}
    tui.draw(|f| {
  File "/home/kxxt/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.28.1/src/terminal/terminal.rs:304", in ratatui::terminal::terminal::Terminal<B>::draw
    self.try_draw(|frame| {
  File "/home/kxxt/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.28.1/src/terminal/terminal.rs:386", in ratatui::terminal::terminal::Terminal<B>::try_draw
    render_callback(&mut frame).map_err(Into::into)?;
  File "/home/kxxt/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.28.1/src/terminal/terminal.rs:305", in ratatui::terminal::terminal::Terminal<B>::draw::{{closure}}
    render_callback(frame);
  File "/home/kxxt/repos/tracexec/src/tui/app.rs:576", in tracexec::tui::app::App::run::{{closure}}::{{closure}}
    self.render(f.area(), f.buffer_mut());
  File "/home/kxxt/repos/tracexec/src/tui/app.rs:904", in <&mut tracexec::tui::app::App as ratatui::widgets::Widget>::render
    self.render_details_popup(rest_area, buf);
  File "/home/kxxt/repos/tracexec/src/tui/app.rs:916", in tracexec::tui::app::App::render_details_popup
    DetailsPopup::new(self.clipboard.is_some()).render_ref(area, buf, state);
  File "/home/kxxt/repos/tracexec/src/tui/details_popup.rs:536", in <tracexec::tui::details_popup::DetailsPopup as ratatui::widgets::StatefulWidgetRef>::render_ref
    scrollview.render_widget(
  File "/home/kxxt/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-scrollview-0.4.0/src/scroll_view.rs:111", in tui_scrollview::scroll_view::ScrollView::render_widget
    widget.render(area, &mut self.buf);
  File "/home/kxxt/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.28.1/src/widgets/paragraph.rs:389", in <ratatui::widgets::paragraph::Paragraph as ratatui::widgets::Widget>::render
    self.render_ref(area, buf);
  File "/home/kxxt/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.28.1/src/widgets/paragraph.rs:398", in <ratatui::widgets::paragraph::Paragraph as ratatui::widgets::WidgetRef>::render_ref
    self.render_paragraph(inner, buf);
  File "/home/kxxt/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.28.1/src/widgets/paragraph.rs:417", in ratatui::widgets::paragraph::Paragraph::render_paragraph
    self.render_text(line_composer, text_area, buf);
  File "/home/kxxt/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.28.1/src/widgets/paragraph.rs:445", in ratatui::widgets::paragraph::Paragraph::render_text
    buf[(area.left() + x, area.top() + y - self.scroll.y)]
  File "/home/kxxt/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.28.1/src/buffer/buffer.rs:540", in <ratatui::buffer::buffer::Buffer as core::ops::index::IndexMut<P>>::index_mut
    let index = self.index_of(position.x, position.y);
  File "/home/kxxt/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.28.1/src/buffer/buffer.rs:237", in ratatui::buffer::buffer::Buffer::index_of
    self.index_of_opt(Position { x, y }).unwrap_or_else(|| {
  File "rust:library/core/src/option.rs:980", in core::option::Option<T>::unwrap_or_else
  File "/home/kxxt/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.28.1/src/buffer/buffer.rs:238", in ratatui::buffer::buffer::Buffer::index_of::{{closure}}
    panic!(

The application panicked (crashed).
  index outside of buffer: the area is Rect { x: 0, y: 0, width: 157, height: 417 } but index is (0, 417)
in /home/kxxt/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.28.1/src/buffer/buffer.rs:238
thread: main

To Reproduce

I don't have a minimal reproduction at hand right now as I am busy preparing for the 0.6 release of tracexec. Will try to do it later.
Clone tracexec ebpf branch, checkout commit  6518593b50bc0b15348180e0cb6b9e10411b4023.
Build it: cargo build
Launch TUI with eBPF system wide tracing: sudo target/debug/tracexec ebpf tui.
Open another terminal and run /bin/ls in it. Select the new event in the TUI and press V to view it. Then press Tab twice to switch to FdInfo tab. It crashes.
Expected behavior

It doesn't crash
Screenshots

Environment

OS: Arch Linux Latest
Terminal Emulator: Konsole
Crate version: 0.28.1
Backend: crossterm

Additional context

It is not a bug in ratatui itself. But still strictly relevant to ratatui.
The area is clipped in Rect::new in the code of tui_scrollview when creating the buffer. But my code is directly creating a non-clipped Rect, causing a mismatch here.

It kind of is an issue in Ratatui, one we've sort of known about for a while and avoided fixing due to it not causing actual harm. This looks like a good place where it does.
The original code for this was introduced to fix https://github.com/fdehau/tui-rs/issues/79 and was introduced in https://github.com/fdehau/tui-rs/pull/92/files. I suspect that the underlying issue was that there are a bunch of places that do direct integer multiplication of u16 values, which caused overflow in various places, and the fix was put in to ensure that this was not possible.
I think it's time to bite the bullet on this for 0.29.0 and make Rect::new() do the expected thing rather than than truncating by default. When taking a bit of a look at the internal impact of this, it seems that there's a fairly large amount of multiplications that need to be properly checked (and possibly some additions too). So the naive approach of just making Rect::area() return u32 and removing the clamp is not quite good enough.
Implementation:

[ ] Rect::new() still needs to clamp the width and height so that the any index bounds computed from x and width / y and
height fit inside the u16 bounds as otherwise this would lead to non-indexable positions (and generally more overflows).
[ ] Rect::area() should return u32
[ ] All multiplications not in examples / tests should be checked (and tests added) for overflow
[ ] Additions should be investigated as to whether they can also cause overflow, but testing should be a lower priority as any overflows in addition would have already had to be failing

@kxxt in #1377:

Problem

Rect::new clips the Rect if the area overflows u16::MAX.
But it is very likely that we need to support buffer with area larger than 65536, for example:

For ultra-wide monitors, it's very likely that 65536 is not enough.
For offscreen rendering into a large buffer. e.g. tui-scrollview.

Note that it is possible to directly create an unclipped Rect, creating a buffer with such Rect will lead to a Buffer with content of length 65536, which will panic at runtime when out of bound access happens. This is a footgun (https://github.com/joshka/tui-widgets/issues/33, https://github.com/ratatui/ratatui/issues/1375) and probably should be fixed regardless of whether we would allow area larger than 65536 in the future.
Solution

Make a backward incompatible change and use u32 for areas, like following patch. But probably a lot more code need to be edited.
diff --git a/src/buffer/buffer.rs b/src/buffer/buffer.rs
index 2a509cd..c594eae 100644
--- a/src/buffer/buffer.rs
+++ b/src/buffer/buffer.rs
@@ -256,7 +256,7 @@ impl Buffer {
         // remove offset
         let y = position.y - self.area.y;
         let x = position.x - self.area.x;
-        Some((y * self.area.width + x) as usize)
+        Some(y as u32 * self.area.width as u32 + x as u32)
     }

     /// Returns the (global) coordinates of a cell given its index
diff --git a/src/layout/rect.rs b/src/layout/rect.rs
index 9749711..7b86787 100644
--- a/src/layout/rect.rs
+++ b/src/layout/rect.rs
@@ -78,10 +78,10 @@ impl Rect {
         }
     }

-    /// The area of the `Rect`. If the area is larger than the maximum value of `u16`, it will be
-    /// clamped to `u16::MAX`.
-    pub const fn area(self) -> u16 {
-        self.width.saturating_mul(self.height)
+    /// The area of the `Rect`.
+    pub const fn area(self) -> u32 {
+        // u16 multiplication cannot overflow u32
+        (self.width as u32) * (self.height as u32)
     }

     /// Returns true if the `Rect` has no area.
@@ -546,7 +546,7 @@ mod tests {
             width: 10,
             height: 10,
         };
-        const _AREA: u16 = RECT.area();
+        const _AREA: u32 = RECT.area();
         const _LEFT: u16 = RECT.left();
         const _RIGHT: u16 = RECT.right();
         const _TOP: u16 = RECT.top();

Alternatives

Do nothing.
Or lets use u32 for dimensions as well. Maybe in 2077 there will be monitors that could display 65536 characters in a line!

Additional context


How do you stream a langchain response from Flask to React?

Issue you'd like to raise.
How do you stream a langchain response from Flask to React?
I am having issues with it. I successfully implemented it with Azure OpenAI API only but langchain doesn't give me the right implementation.
Suggestion:
No response

I'm currently having this exact issues. I can't parse the stream endpoint because it comes back as String instead of JSON objects


Latest Version SMS TEST Not Working

In the latest version the -sms -test parameters cause the bot to search for a 3080, attempt to add it to cart and then fail. The SMS test is never completed because I assume the add to cart failure causes a hard crash, given the 3080 is currently unavailable.

Use -model=2060 flag to test

Also if you want to test clicking the link on your mobile device you need to use the -remote flag (the link can only be used once to either open a desktop browser or a mobile one)


Varible length data in Fuel

Guys, I would like to know how you envisage handling datasets with variable-length examples in Fuel, e.g. speech, handwriting, music data (I do not mention text, because we sort of support text files). Do you think they should be also converted to HDF5? There is some sort of support of variable length data in HDF5, but I haven't tried it so far. In both machine translation and speech projects I participated we used tables with concatenated sequences and offset-length tables. This works, but it is quite different from what HDF5Dataset currently expects.
I am asking without doing too much of prior research, because I would like to know if you have already thought it through.

https://github.com/mila-udem/fuel/pull/133#issuecomment-104787991

Cool, thanks! I guess a separate issue might be a better place for such a principal discussion.
I think we should be careful not to grow HDF5Dataset too large, but I also agree that reshapes should be done before transformers. A way to go could be a VariableLengthHDF5Dataset that inherits from HDF5Dataset and does reshapes and other stuff.

The reshaping could be done automatically, I think: h5py has a 'dimension scale' feature which could allow us to tag a dimension with the information required for reshaping. If H5PYDataset sees such dimension scales attached to a dataset, it would perform the required reshaping in get_data.

I've started a pull request for this new feature: #141.


Share as much common plugin config as possible

re-using (sharing) the plugin config coming from
parent POM makes it much easier and less error prone
to new changes. E.g. when upgrading one of the additional
dependencies, there is only one place to do so (instead
of several ones)

+1 Thanks @psiroky !


Deprecated automatic conversion from floats for * / % operations

This addresses issue #39, and the other two places that did float conversions where the Decimal class would instead raise TypeError.
Once deprecation period is over, warnings should be changed to a TypeError. However, the best way to do this is probably just to remove the warning, and change Decimal(str(other)) to other, and the underlying Decimal method will raise the appropriate exception (while still allowing things like integers to be used).

A rebased version of this has been merged to master.


Add Authentik SSO

Added the option to support using Authentik SSO.  Confirmed working following instruction from https://docs.linkwarden.app/self-hosting/sso-oauth

Thanks!


Remove OpenSSL Requirement

This is for better windows support and to remove the msys requirement.

Waiting for update to iron/persistent to get rid of openssl dependency


Run ci/cd pipeline in a multicore setup

Now we run the ci/cd pipeline with a single core. Going multicore make the tests overall more robust to pass as we might encounters race conditions.

@CharlyCst This branch is also ready for review. I implemented the changes you ask. It runs the kernel integrations tests in multicore but not the homemade custom firwmares


-n option in mongo-connector does not work when collection name contains _ (underscore)

OS: Amazon Linux
PIP: pip 7.1.0 from /usr/lib/python2.6/site-packages (python 2.6)
Mongo-Connector: mongo-connector-2.3
**Description: **I am trying to sync data between MongoDB 3.2.4 and Elastic Search using mongo-connector. however when i run;
# mongo-connector -m localhost:27017 -t localhost:9200 -d elastic2_doc_manager -n dbname.abc_elements
it  does not throw any error neither it adds data in Elastic Search. if i change my collection name by removing _ (underscore) it works just fine.
According to this https://docs.mongodb.org/manual/reference/limits/#naming-restrictions i can use _ and it is not a restricted character.

I think that the problem is that Elasticsearch do not accept mapping names with undescores.
Because of that I added mapping to my namespace:
https://github.com/mongodb-labs/mongo-connector/wiki/Configuration-Options#namespacesmapping
In my configuration file it looks like:
"namespaces": {
"include": ["test._User"],
"mapping": {
"test._User": "test.User"
}
},
Works fine for me.

@adeelahmadch, do you collection names start with an underscore or are they "abc_elements"?
@sliwinski-milosz is correct that Elastic does not accept mapping names starting with underscores, but I just tested with MongoDB 3.2.4, Mongo-Connector 2.3, and Elastic 2.2.0 with collection="abc_elements" and it seems to be working fine. What version of elastic are you using? Did you see any errors in the Elastic logs, or the mongo-connector.log file?

I debug-senses tell me this might be related to this one https://github.com/mongodb-labs/mongo-connector/issues/310
Try updating each collection you are trying to dump at least once -recently- before trying to mongo-connector it.

@adeelahmadch, have you had any success with the advice of @sliwinski-milosz or @jaredkipe? May I close this issue now? Note: I've added #310 to the 2.4.1 milestone, so any temporary fix that involves creating a dummy document just to create the namespace will be unnecessary in the next release.

Sorry guys for replying late on this. First of all thank you for looking into this. i found a work around for my issue not sure why that happened.
Command that was not working.
mongo-connector -m localhost:27017 -t localhost:9200 -d elastic2_doc_manager -n dbname.abc_elements
i was able to fix this issue by passing _name in command separated format.
Command that worked.
mongo-connector -m localhost:27017 -t localhost:9200 -d elastic2_doc_manager -n dbname.abc_elements,dbname.testcollection
OS: Amazon Linux
PIP: pip 7.1.0 from /usr/lib/python2.6/site-packages (python 2.6)
Mongo-Connector: mongo-connector-2.3
Elastic Search Version: 2.3.1
MongoDB Version: 3.2.4
@llvtt You can close this issue.


Embed files from the workspace root

Hi, I have this use-case for rust-embed where I want to embed files from the cargo workspace root. For example, I have the following project structure:
├── Cargo.lock
├── Cargo.toml
├── config
│   └── config.toml
├── example
│   ├── Cargo.toml
│   └── src
│       └── main.rs
└── example-lib
    ├── Cargo.toml
    └── src
        └── embed.rs
        └── lib.rs

I want to embed config/config.toml in example-lib/src/embed.rs and I want to use it in example/src/main.rs in runtime. I tried doing this in embed.rs:
#[derive(Debug, RustEmbed)]
#[folder = "../config/"]
pub struct EmbeddedConfig;

It works fine until I try to publish example-lib crate on crates.io. It's failing because it looks for the wrong (non-existing) path:
   Compiling example-lib v0.2.3
error: proc-macro derive panicked
  --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/example-lib-0.2.3/src/embed.rs:16:17
   |
16 | #[derive(Debug, RustEmbed)]
   |                 ^^^^^^^^^
   |
   = help: message: #[derive(RustEmbed)] folder '/home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/example-lib-0.2.3/../config/' does not exist. cwd: '/home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/example-lib-0.2.3'

error[E0599]: no function or associated item named `get` found for struct `EmbeddedConfig` in the current scope
  --> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/example-lib-0.2.3/src/embed.rs:23:15
   |
18 | pub struct EmbeddedConfig;
   | -------------------------- function or associated item `get` not found for this
...
23 |         match Self::get(crate::DEFAULT_CONFIG) {
   |                     ^^^ function or associated item not found in `EmbeddedConfig`
   |
   = help: items from traits can only be used if the trait is implemented and in scope
   = note: the following traits define an item `get`, perhaps you need to implement one of them:
           candidate #1: `SliceIndex`
           candidate #2: `bitvec::slice::api::BitSliceIndex`
           candidate #3: `lexical_core::util::sequence::SliceLike`
           candidate #4: `RustEmbed`

error: aborting due to 2 previous errors

Is there a way to get around this? What do you suggest?

Have you tried this feature out?
https://github.com/pyros2097/rust-embed#interpolate-folder-path

Have you tried this feature out?
https://github.com/pyros2097/rust-embed#interpolate-folder-path

Yes I did. Unfortunately $CARGO_MANIFEST_DIR/config corresponds to example-lib/config and I couldn't find any environment variable that will point to config/. And even if I could do that...

But since this a publish I think it might exclude the config dir. Can't say until you try it though.

...during cargo publish, it just includes the crate directory so yeah, it basically excludes anything outside it.
I think the only solution is moving config/config.toml to example-lib/config/config.toml and using #[folder = "config/"]  at this point :/

@orhun did you try $CARGO_MANIFEST_DIR/../config?

@orhun did you try $CARGO_MANIFEST_DIR/../config?

Yes, I just did. It's the same result.
I came to a conclusion that anything outside $CARGO_MANIFEST_DIR cannot be embedded in the crates.io package because it basically looks for a nonexistent path during cargo {publish,install}.
e.g.
   Compiling git-cliff-core v0.2.5 (/home/orhun/gh/git-cliff/target/package/git-cliff-core-0.2.5)
error: proc-macro derive panicked
  --> src/embed.rs:16:17
   |
16 | #[derive(Debug, RustEmbed)]
   |                 ^^^^^^^^^
   |
   = help: message: #[derive(RustEmbed)] folder '/home/orhun/gh/git-cliff/target/package/git-cliff-core-0.2.5/../config' does not exist. cwd: '/home/orhun/gh/git-cliff/target/package/git-cliff-core-0.2.5'

error[E0599]: no function or associated item named `get` found for struct `EmbeddedConfig` in the current scope
  --> src/embed.rs:23:15
   |
18 | pub struct EmbeddedConfig;
   | -------------------------- function or associated item `get` not found for this
...
23 |         match Self::get(crate::DEFAULT_CONFIG) {
   |                     ^^^ function or associated item not found in `EmbeddedConfig`
   |
   = help: items from traits can only be used if the trait is implemented and in scope
   = note: the following traits define an item `get`, perhaps you need to implement one of them:
           candidate #1: `SliceIndex`
           candidate #2: `bitvec::slice::api::BitSliceIndex`
           candidate #3: `lexical_core::util::sequence::SliceLike`
           candidate #4: `RustEmbed`

For more information about this error, try `rustc --explain E0599`.
error: failed to verify package tarball