Define videos capabilities, drivers and/or vram

Hello,
I'm currently using and intensively testing kubevirt and cdi. Well, thank you, it works well.
Now I would like to configure the video sections of libvirt / qemu.
The objectif is to provide some virtual workstation with acceptable (good enough) graphical performances without buying GPU/vGPU.
If I'm not wrong, it seems to me to be atually hard coded here ?
https://github.com/kubevirt/kubevirt/blob/main/pkg/virt-launcher/virtwrap/converter/converter.go#L1716
In the api documentation I didn't see anything :
https://kubevirt.io/api-reference/master/definitions.html
Thank you in advance.
Regards,

@benth42 how would you like to configure the graphical option? Generally, we don't support all the libvirt option and yes certain are hardcoded or not configurable directly by the user (it depends on the use-case). For no-supported option, there is the possibility to develop a sidecar that set those options (check an example in https://github.com/kubevirt/kubevirt/tree/main/cmd/example-hook-sidecar)

Hello,
Sorry for my late reply.  And thank you to have take time to answer.
Changing the xml was not the only necessary thing. Their missing some packages to activate virtio video graphics devices. And more-over redhat seems to have stop to compile -gl extension of virtio graphics drivers according to https://bugzilla.redhat.com/show_bug.cgi?id=2149022
With software rendering a tiny better than with vga, but not really "fluid (?)"
Well hope to try with nvidia vGPU in the next weeks.
Thank you again.
Regards,


Implement value function iteration

I think I'd like to give this a try. Any pointers?

Excellent !
I will be very interested to follow your progress. Here are some pointers and remarks.
I just pushed a few refactoring commits, reorganizing models in a more consistent ways (note that dolo.algos.fg and dolo.algos.mfg have been renamed to dolo.algos.dtcscc and dolo.algos.dtmscc respectively). The models are classified according to the hierarchy here: https://github.com/EconForge/heterogeneous_agents_workshop/wiki/Model-classification-(DRIMS) . The idea is that a given type of models (e.g. dtcscc) can have several optional functions including arbitrage and value-updating functions. This was exactly meant to allow for concurrent solution methods with the same model.
You probably want to implement your function with continuous states first, since it is the type of model you have used with the rbc notebook. Reproducing the same steps with mixed states (i.e. continuous + discrete markov states) will be relatively trivial.
The way I see it, there are to milestones for the vfi implementation:
1/ get a proof of concept algorithm to work, without focusing on performance. It should be relatively easy using one of the constrained optimization algorithm from scipy.optimize.
2/ vectorize or jit this solution method. This is crucial since iterating over all the points will have a big performance cost. I now have a clearer idea about how to do that. One crucial element is to have a simple implementation of an optimization routine, that we can try to compile. That could involve a bit of  numba voodoo, but at least in principle, it should be feasible.
I'll be happy to help at any stage. The complications from stage 2/ are not completely predictible and may involve waiting (for numba to add some features).
To help with the implementation itself I have compiled a gist, with a few instructions to recover the model functions (https://gist.github.com/albop/ab49de476b6bcbdd689c) and the model calibration. Note that the definition of the value updating equation currently maches the value_2 function of the model classification.
If you want you can also look at the dolo.algos.dtcscc.vfi file. The available functions compute the value matching a given decision rule. What you need to implement is a similar function, but with an improving step, the main difference being that you need to iterate over the points, rather than evaluating the grid at once.
Again, I would be very glad to see that happen.

Thank you so so much.
I had a bit of a letdown with numba when I tested it for a scipy.optimize.fsolve parameter space swipe. I got it to work but the execution time dropped much less than what I was hoping for (less than 20% I believe). I'm not sure I gave numba enough static typing to really test it, but my interim conclusion was that since fsolve probably runs on Fortran, and that is where cpu is spent, I save practically nothing with JIT. I dumped numba and moved on to think that the real source for performance gains must be information sharing across optimizations (besides parallelization, of course). The obvious thing is doing some learning to generate improved initial guesses. For my fsolve problem it was enough to wrap fsolve inside a class that remembered the last fsolve output, if it was good. Just thought I'd share that.
How does your numba experience compare?


Connect-PowerBIServiceAccount - Cannot switch tenants. tid in token is incorrect.

Hi team,
I am trying to loop through a number of tenancies and perform some actions. I am using service principal accounts to access each tenancy. I am able to authenticate into each tenancy in a separate Powershell session and perform actions successfully. However, when I switch from one tenancy to another within a Powershell session all requests to the newly connected tenancy fail.
Things I have noticed.
When authenticating the response has TenantId as blank, even when a tenant is provided.
I have decoded the JWT Token for each connection and I noticed that the Token for the connection to the second tenant contains the
tenant id of the first tenant in the "tid" attribute.
I believe all requests to the second tenant get a 404 response (due to the incorrect tenant id in token?).
I'm running,
Powershell 5.1 in VSCode (I've also tried Powershell ISE, and Powershell7)
MicrosoftPowerBIMgmt 1.2.1077
Below are the steps to reproduce,
Two separate tenancies and sets of credentials are required.
Connect to tenant 1
PS> $thumbprint = "XXXXXXXX"
PS> $clientID = "XXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
PS> $tenantID = "1111111-1111-1111-1111-111111111111"
PS>
PS> Connect-PowerBIServiceAccount -ServicePrincipal -CertificateThumbprint $thumbprint -ApplicationId $clientID -Tenant $tenantID
Environment           : Public
TenantId              :
ClientId              : XXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
CertificateThumbprint : XXXXXXXX

PS> Get-PowerBIAccessToken -AsString

Decode this token and note the tenant id in "tid"
Now disconnect from tenant 1 and try to connect to tenant 2
PS> Disconnect-PowerBIServiceAccount
PS>
PS> $thumbprint = "YYYYYYYY"
PS> $clientID = "YYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY"
PS> $tenantID = "2222222-2222-2222-2222-222222222222"
PS> Connect-PowerBIServiceAccount -ServicePrincipal -CertificateThumbprint $thumbprint -ApplicationId $clientID -Tenant $tenantID
Environment           : Public
TenantId              :
ClientId              : YYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY
CertificateThumbprint : YYYYYYYY

PS> Get-PowerBIAccessToken -AsString

Decode this token and note the tenant id in "tid"
Running any cmdlets here should fail

Any progress on the above? This is definitely a problem as described in the original post. Makes it difficult to manage and switch between PowerBI tenants. It will always keep the same Tenanat ID unless you close out of the Powershell session.
I'm trying to develop a Azure DevOps pipeline PS that can switch seamlessly between tenants and perform some actions all within one Powershell session.
Disconnect-PowerBIServiceAccount should clear out all cached variables and tokens from the previous TenantID.
But it doesn't until you actually close the PS session.


Make typescript types generic

This way the result of an operation can be carried forward, which makes typechecking better. Adding these generic types doesn't make a huge difference, but at least it complains when we get the return value of a generator function wrong, which is nice.

A preview package of this pull request has been released to NPM with the tag generic-types.
You can try it out by running the following command:
$ npm install effection@generic-types

or by updating your package.json to:
{
  "effection": "generic-types"
}

Once the branch associated with this tag is deleted (usually once the PR is merged or closed), it will no longer be available. However, it currently references<EMAIL_ADDRESS>which will be available to install forever.

  Generated by :no_entry_sign: dangerJS against 105987e821cadcd55093478f30e9869fe3fc402b

A preview package of this pull request has been released to NPM with the tag generic-types.
You can try it out by running the following command:
$ npm install effection@generic-types

or by updating your package.json to:
{
  "effection": "generic-types"
}

Once the branch associated with this tag is deleted (usually once the PR is merged or closed), it will no longer be available. However, it currently references<EMAIL_ADDRESS>which will be available to install forever.

  Generated by :no_entry_sign: dangerJS against fefe508e477ca449bb6ac10bba4f60b840191629

A preview package of this pull request has been released to NPM with the tag generic-types.
You can try it out by running the following command:
$ npm install effection@generic-types

or by updating your package.json to:
{
  "effection": "generic-types"
}

Once the branch associated with this tag is deleted (usually once the PR is merged or closed), it will no longer be available. However, it currently references<EMAIL_ADDRESS>which will be available to install forever.

  Generated by :no_entry_sign: dangerJS against 8c3bcdd5eb3ad3e345f3d4f4d1e443134b27a485


[WIP] update to webpack2.2

given https://trello.com/c/8HsCgnjM/758-teleport-polish-after-publication

I would have split the webpack update and the hotAssetsServer->devServer rename into two separate commits, but okay..


Select a alternative symbol may cause force close

What steps will reproduce the problem?
1. Press and hold '1' on keyboard
2. Do not release '1', and press any alternative symbol, for example, '!'
3. The program will crash

What version of Hacker's Keyboard are you using? (See "Debug" section at
the bottom of the app's Settings menu.)
1.33.1332.d27b5144b8e2 2012-07-03

On what phone or tablet?
Asus Nexus 7 FHD (flo)
Android 4.3
Build JSS15R

If applicable, does this affect the 4-row or 5-row layout, or both? Which
language(s)?
Both

Original issue reported on code.google.com by<EMAIL_ADDRESS>on 21 Sep 2013 at 8:04

@klausw said https://github.com/klausw/hackerskeyboard/releases/tag/1.38.2 should've fixed this, so close?


building OpenBLAS 0.2.19 with LAPACK 3.7.0 fails

We usually build OpenBLAS together with the latest available LAPACK version, rather than the LAPACK that is included in the OpenBLAS release (to profit from LAPACK bug fixes included in a more recent LAPACK version than the one included with OpenBLAS).
This works fine to build OpenBLAS 0.2.19 with LAPACK 3.6.1, but it fails with the latest LAPACK 3.7.0:
make[1]: Entering directory `/tmp/easybuild_build/OpenBLAS/0.2.19/GCC-6.3.0-2.27-LAPACK-3.7.0/OpenBLAS-0.2.19/exports'
make[1]: warning: -jN forced in submake: disabling jobserver mode.
perl ./gensymbol linktest  x86_64 _ 0 0 0 0 0 0 "" "" 1 > linktest.c
gcc -O2 -march=native -O2 -DMAX_STACK_ALLOC=2048 -Wall -m64 -DF_INTERFACE_GFORT -fPIC -DSMP_SERVER -DNO_WARMUP -DMAX_CPU_NUMBER=24 -DASMNAME= -DASMFNAME=_ -DNAME=_ -DCNAME= -DCHAR_NAME=\"_\" -DCHAR_CNAME=\"\" -DNO_AFFINITY -I. -O2 -DMAX_STACK_ALLOC=2048 -Wall -m64 -DF_INTERFACE_GFORT -fPIC -DSMP_SERVER -DNO_WARMUP -DMAX_CPU_NUMBER=24 -DASMNAME= -DASMFNAME=_ -DNAME=_ -DCNAME= -DCHAR_NAME=\"_\" -DCHAR_CNAME=\"\" -DNO_AFFINITY -I.. -L/apps/GCCcore/6.3.0/lib64 -L/apps/GCCcore/6.3.0/lib -shared -o ../libopenblas_haswellp-r0.2.19.so \
-Wl,--whole-archive ../libopenblas_haswellp-r0.2.19.a -Wl,--no-whole-archive \
-Wl,-soname,libopenblas.so.0 -lm -lpthread -lgfortran -lm -lpthread -lgfortran
/apps/binutils/2.27-GCCcore-6.3.0/bin/ld.gold: error: ../libopenblas_haswellp-r0.2.19.a(ztplqt.o): multiple definition of 'ztplqt_'
/apps/binutils/2.27-GCCcore-6.3.0/bin/ld.gold: ../libopenblas_haswellp-r0.2.19.a(ztplqt.o): previous definition here
/apps/binutils/2.27-GCCcore-6.3.0/bin/ld.gold: error: ../libopenblas_haswellp-r0.2.19.a(ztplqt2.o): multiple definition of 'ztplqt2_'
/apps/binutils/2.27-GCCcore-6.3.0/bin/ld.gold: ../libopenblas_haswellp-r0.2.19.a(ztplqt2.o): previous definition here
/apps/binutils/2.27-GCCcore-6.3.0/bin/ld.gold: error: ../libopenblas_haswellp-r0.2.19.a(ztpmlqt.o): multiple definition of 'ztpmlqt_'
/apps/binutils/2.27-GCCcore-6.3.0/bin/ld.gold: ../libopenblas_haswellp-r0.2.19.a(ztpmlqt.o): previous definition here
collect2: error: ld returned 1 exit status
make[1]: *** [../libopenblas_haswellp-r0.2.19.so] Error 1
make[1]: Leaving directory `/tmp/easybuild_build/OpenBLAS/0.2.19/GCC-6.3.0-2.27-LAPACK-3.7.0/OpenBLAS-0.2.19/exports'
make: *** [shared] Error 2

The problem seems to be related to the extended LAPACK API in LAPACK 3.7.0.
Does this mean LAPACK 3.7.0 can't be used as a drop-in replacement for the LAPACK 3.6.0 that is included with OpenBLAS 0.2.19? Is there a workaround, or are there significant changes requires to make this work?

If I recall correctly. the "gensymbol" script acts on a static list of function names to which any new LAPACK routines will have to be added.

Also note that the LAPACK that ships with OpenBLAS is not generally a static copy of the respective netlib release, it may already contain fixes cherry-picked from the netlib develop branch or (at least historically when netlib had only a mailing list for bug reports) ones accepted into OpenBLAS first.

You can build any lapack version providing NO_LAPACK (static) build of openblas as BLASLIB (Debian does it and Fedora to some degree)
Probably that is what you want.

@brada4 any pointers to how to do that in more details?

make clean
make DYNAMIC_ARCH=1 NO_SHARED=1 NO_CBLAS=1 NO_LAPACK=1 NUM_THREADS=???
??? is maximum cores you will encounter in single machine in foreseeable future
then resulting libopenblas*a can be passed as BLASLIB to netlib lapack 3.7.0 build (they have instructions and makefiles for that)

So, are there any (dis)advantages of doing this compared to baking LAPACK into the OpenBLAS library?

There is a handful of optimized LAPACK routines (in the "lapack" directory) that you'd miss, and perhaps a few interprocedural optimization opportunities depending on the compiler, but nothing spectacular as far as I know. Note that there is at least one erratum for LAPACK 3.7.0 that probably also explains your current build issue here - see https://github.com/Reference-LAPACK/lapack/issues/105

@martin-frbg ah, yes, that sure looks like the problem I'm running into! I'll look into including the straightforward patch for LAPACK 3.7.0, retest building the combination of OpenBLAS 0.2.19 and LAPACK 3.7.0, and report back.

OK, applying that patch (from https://github.com/Reference-LAPACK/lapack/commit/c5788233f95fed2c7f008ea079e8257a85348287) indeed worked.
I also had to apply a minor fix to copy lapacke_mangling.h, since the source file got renamed in LAPACK 3.7.0 (was lapacke_mangling_with_flags.h, now is lapacke_mangling.h just like the target file).
Complete patch to build OpenBLAS 0.2.19 with LAPACK 3.7.0 in https://gist.github.com/boegel/06e42355f09bbb7be1830a2e4af1dab2.


ZLUDA Support

Is there or will be ther any support for  ZLUDA. It has attracted some attention recently at some stable diffusion repos and I am just wondering if there is a guide or just generally support for ZLUDA on llama.cpp and here.

We'll support it once llama.cpp has introduced it. There's already a discussion about it https://github.com/ggerganov/llama.cpp/issues/5476.
BTW, do you think it's easy and efficient to use ZLUDA, either writing a kernel or using completed model of it?


Correctly handle  command called without the subcommand under python3.

Closes #93

Coverage increased (+0.11%) when pulling 051f0733cf95343aebe24ea1ff89c69684bf8109 on bubenkoff:pytest-bdd-command-python3 into ba52adad818ede4a762315f484102d2b8e0844ca on olegpidsadnyi:master.


Add bower.json manifest file

Is there any chance that you could add a bower.json manifest file to skrollr-menu repository?
Just like this one here: https://github.com/Prinzhorn/skrollr/blob/master/bower.json
The most important thing is "main" property because it's required to work with rails assets.
Let me know, thanks

I didn't even know/remeber there was a bower.json in skrollr


feat(console): surface dropped events if there are any

During normal operation it won't show anything:
connection: http://<IP_ADDRESS>:6669/ (CONNECTED)

But if there are any drops detected, it will show a cumulative amount:
connection: http://<IP_ADDRESS>:6669/ (CONNECTED) dropped events: 2507

@bobrik FYI, you generally don't need to force push new changes to your PRs. We merge pull requests by squashing, so individual work-in-progress commits to a branch are fine. See https://github.com/tokio-rs/console/blob/main/CONTRIBUTING.md#commit-squashing for details.

@bobrik quick ping --- are you still planning to work on this? I'd like to get it merged!

Apologies for the delay. I pushed separate counters and a bugfix for overcounting of resources_state drops.


Add Makefile to project

Hi, standard practice for Qt projects is to use the Qt-provided tool "qmake" (and give it Serchvisualizer.pro as an argument) to auto-generate a makefile. You can also open SearchVisualizer.pro in Qt Creator.


Unable to locate the ionic.project file. Are you in your project directory? (CLI v1.6.1)

Hi,
I am not able to start below app. Below is error i am running into. Please help.
ionic serve
Error occured [Error: Unable to locate the ionic.project file. Are you in your project directory?]
Unable to locate the ionic.project file. Are you in your project directory? (CLI v1.6.1)
Your system information:
Cordova CLI: 5.1.1
Gulp version:  CLI version 3.9.0
Gulp local:
Ionic CLI Version: 1.6.1
Ionic App Lib Version: 0.3.3
ios-deploy version: 1.7.0
ios-sim version: 4.1.1

mmm. you need create an Ionic Project First and replace the www/ directory. Or you can start one with:
$ ionic start MyApp https://github.com/ion-book/firebaseStarter


Feature/fuller newrelic integration

ng build --configuration=stage with following errors
To disable this warning use "ng config -g cli.warnings.versionMismatch false".
ENOENT: no such file or directory, open '/codebuild/output/src914544988/src/github.com/intersective/practera-app-v2/assets/newrelic.js'
Error: ENOENT: no such file or directory, open '/codebuild/output/src914544988/src/github.com/intersective/practera-app-v2/assets/newrelic.js'
at Object.openSync (fs.js:443:3)
at Object.readFileSync (fs.js:343:35)
at Storage.provideSync


[SNAP-788] initialize buckets of a new table in parallel

Changes proposed in this pull request

use function execution pool to schedule parallel tasks for CREATE_ALL_BUCKETS
that is used standard by SnappyData
removed contention in PRHARedundancyProvider.createBucketAtomically to use bucket
specific lock and not global lock; not using lock on ProxyBucketRegion since it
leads to deadlock with CreateMissingBuckets task that too locks PBR first and
then waits for primary of the bucket
other optimizations seen to take high CPU in bucket creation:

InternalDistributedMember.equals shows up at 25-30% CPU. This is due to large
hash collisions and equals being somewhat inefficient. Now using the new
hash mixing functions (from SnappyData) to combine port and InetAddress.
Also optimized equals itself a bit by removing virtual calls etc.
checkCancelInProgress shows at ~10%: removed checkFailure() which actually
returns the failure and does not fail (callers never check return value);
since this is already invoked in SystemFailure.checkFailure() it is both
redundant and unused.

With above changes creation of a table with even 5K buckets and redundancy=1
in a 12 node cluster takes < 20s (as opposed to minutes).
Patch testing
precheckin, manual testing
ReleaseNotes changes
NA
Other PRs
NA

LGTM. This too will help in resolving SNAP-1541.


Add the H2K module, which defines classes and utilities for higher-order, double keyed functors over bifunctors.

Description
Add the H2K module, which defines classes and utilities for higher-order, double keyed functors over bifunctors.
Later commits will define instances of these classes for LedgerTables.

Current dependencies on/for this PR:

main

PR #42

PR #124   👈

This comment was auto-generated by Graphite.

Closed, since we're trying a different approach (a la barbies)


[Features] 第三方登录平台

Here's a discussion for support request, see: https://github.com/orgs/detalkjs/discussions/2


[Feature] Support controling the background of images generated from pdf

Is the feature request related to a problem
I am using Verify.ImageMagick to test generated pdf contents.
However, these pdf all have white background upon rendering for users in common pdf readers, as expected for letters or written documents.
However, the png generated by Verify.ImageMagick have transparent background, which is understandable as the pdf do not specify a background. However, it makes it hard to see images content when displayed in dark-themed CI/CD systems (black text on transparent background on black/black-ish background). It also does not technically represent the end-user actual rendering.
Describe the solution
I would like to be able to specify a background color for image conversion to match the actual rendering of files for end users.
It could either be a global setting, or a callback to customize images that would be generated.
A global setting would be suitable for me, even if I imagine there might be situations where being able to control the behavior on a test level might make sense.
Describe alternatives considered
I considered replacing the pdf conversion method, which is possible, but I would have to reimplement some internal methods.
Additional context

sounds good. happy to accept a pull request for this

sounds good. happy to accept a pull request for this

Sure, will provide a pull request in a few days, as a basis for discussion!

i went with a slightly different approach https://github.com/VerifyTests/Verify.ImageMagick?tab=readme-ov-file#override-transparent-background

Perfect for me.
I see you also fixed some mistakes I made in the csproj or gitattribute.
Thanks for taking additional time to refine my proposal, and for publishing a version very fast !

no worries. and you did most of the work. so no thanks necessary


Create new extension !

First of all congratulations for great work ! (creation of weppy) 👍  . I really like this framework. It is best for my purpose.
I need to create new extension for my purpose . How can I get started ?  Is there any docs ? (I have not find in official documentation).

Thank you @jigarmistry, I'm glad you like the project.
Regarding your question, I'm sorry but I haven't written that part of the documentation yet.
I will try to explain you how them works, but first of all I will need to know if your extension will be related to templates or not, because they are quite different from the standard ones.

Thanks for reply.
I am going to build GUI tool for my website(something like admin).  So I think it is not related to templates. I just need to understand the extension creation for weppy.

Ok. An extension it's a very simple class as you can see from the source code of the class: https://github.com/gi0baro/weppy/blob/master/weppy/extensions.py#L15L30
What you have to do is override the on_load method (don't override the init unless you really know what you're doing) and you have access to the app, config and env variable on the extension instance. These variables are initialised by weppy when the user write down app.use_extension(YourExtensionClass).
Typically weppy auto-configure the namespace with the name of your extension, so if your extension class is named FooBar, then the config is initialised under app.config.FooBar.
Both config and env are weppy's sdict objects (basically dictionaries where you can get and set items as attributes), and you can typically do whatever you want with the app variable which is the application object itself.
You can also define routes for the user since you have the application instance:
from weppy.extensions import Extension

def my_route_method():
    # some code

class MyExtension(Extension):
    def on_load(self):
        self.app.route('/somepath')(my_route_method)

Also mind that the source code now is for the current master, which introduced the default_config attribute on the Extension class, but in weppy 0.6.x (current release) this is not available, so if you want to add a default config you should write the load yourself.
If you have any additional questions, I will be happy to answer. You may also find useful take a look at some existing extension like https://github.com/gi0baro/weppy-sentry/blob/master/weppy_sentry/ext.py

Thanks for great explanation !...
Now I have a clear picture of extension chemistry ! :)

I'm closing this since I opened #129


Missing license

Hello!
Which license does apply to this project? Since there is no license file nor a license header in the code I must assume that it is not FOSS-compliant.
Greets
Cody

Hey,
It's licensed under the MIT License. I'll add a file in case there is a confusion.


Site search not focusing on open

Context
The site search bar isnt auto focusing when you click it
Expected Behavior
Site search autofocus's
Current Behavior
What is the current behavior?
Screenshots
Attached screenshare
https://github.com/user-attachments/assets/8090ae2f-a565-4ee5-8923-292c5d19f14e
Steps to reproduce
Please provide detailed steps for reproducing the issue

Click 'search the site' textbox on the main page

Additional info
Good first issue IMO

I would like to work on this issue

Thanks @ArinNigam.
We are having some issues around drizzle at the moment, but it should be fixed soon, just make sure to fetch the latest changes.

@ArinNigam you should be good to take this now! Everything seems to be back working

added PR

Hey @babyo77, thanks, but it's assigned to @ArinNigam, so unless they don't want this issue anymore, I'll close your PR.

Hey @babyo77, thanks, but it's assigned to @ArinNigam, so unless they don't want this issue anymore, I'll close your PR.

Sure go ahead with his PR


requireIndexes not working when findBy or findOneBy methods are used

The following does not throw a Doctrine\ODM\MongoDB\MongoDBException with message "Cannot execute unindexed queries on..." (and it should):
$post = $dm->getRepository('Posts')
    ->findOneByPostText('test');

The following does:
$post = $dm->getRepository('Posts')
    ->createQueryBuilder()
    ->field('postText')->equals('test')
    ->getQuery()
    ->execute();

requireIndexes is now deprecated and will be removed in 2.0


[5.0] Removed filesystem from requirements

Removed filesystem from requirements as config files are loaded external to this package.

:+1:

This needs rebasing. I'll sort it.


[MINOR] Fix javadoc8 break

What changes were proposed in this pull request?
These error below seems caused by unidoc that does not understand double commented block.
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:69: error: class, interface, or enum expected
[error]  * MapGroupsWithStateFunction<String, Integer, Integer, String> mappingFunction =
[error]                                  ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:69: error: class, interface, or enum expected
[error]  * MapGroupsWithStateFunction<String, Integer, Integer, String> mappingFunction =
[error]                                                                       ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:70: error: class, interface, or enum expected
[error]  *    new MapGroupsWithStateFunction<String, Integer, Integer, String>() {
[error]                                         ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:70: error: class, interface, or enum expected
[error]  *    new MapGroupsWithStateFunction<String, Integer, Integer, String>() {
[error]                                                                             ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:72: error: illegal character: '#'
[error]  *      @Override
[error]          ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:72: error: class, interface, or enum expected
[error]  *      @Override
[error]              ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:73: error: class, interface, or enum expected
[error]  *      public String call(String key, Iterator<Integer> value, KeyedState<Integer> state) {
[error]                ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:73: error: class, interface, or enum expected
[error]  *      public String call(String key, Iterator<Integer> value, KeyedState<Integer> state) {
[error]                                                    ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:73: error: class, interface, or enum expected
[error]  *      public String call(String key, Iterator<Integer> value, KeyedState<Integer> state) {
[error]                                                                ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:73: error: class, interface, or enum expected
[error]  *      public String call(String key, Iterator<Integer> value, KeyedState<Integer> state) {
[error]                                                                                ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:73: error: class, interface, or enum expected
[error]  *      public String call(String key, Iterator<Integer> value, KeyedState<Integer> state) {
[error]                                                                                ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:76: error: class, interface, or enum expected
[error]  *          boolean shouldRemove = ...; // Decide whether to remove the state
[error]  ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:77: error: class, interface, or enum expected
[error]  *          if (shouldRemove) {
[error]  ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:79: error: class, interface, or enum expected
[error]  *          } else {
[error]  ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:81: error: class, interface, or enum expected
[error]  *            state.update(newState); // Set the new state
[error]  ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:82: error: class, interface, or enum expected
[error]  *          }
[error]  ^
[error] .../forked/spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:85: error: class, interface, or enum expected
[error]  *          state.update(initialState);
[error]  ^
[error] .../forked/spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:86: error: class, interface, or enum expected
[error]  *        }
[error]  ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:90: error: class, interface, or enum expected
[error]  * </code></pre>
[error]  ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:92: error: class, interface, or enum expected
[error]  * @tparam S User-defined type of the state to be stored for each key. Must be encodable into
[error]            ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:93: error: class, interface, or enum expected
[error]  *           Spark SQL types (see {@link Encoder} for more details).
[error]                                          ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:94: error: class, interface, or enum expected
[error]  * @since 2.1.1
[error]           ^

And another link seems unrecognisable.
.../spark/sql/core/target/java/org/apache/spark/sql/KeyedState.java:16: error: reference not found
[error]  * That is, in every batch of the {@link streaming.StreamingQuery StreamingQuery},
[error]

Note that this PR does not fix the two breaks as below:
[error] .../spark/sql/core/target/java/org/apache/spark/sql/DataFrameStatFunctions.java:43: error: unexpected content
[error]    * @see {@link DataFrameStatsFunctions.approxQuantile(col:Str* approxQuantile} for
[error]      ^
[error] .../spark/sql/core/target/java/org/apache/spark/sql/DataFrameStatFunctions.java:52: error: bad use of '>'
[error]    * @param relativeError The relative target precision to achieve (>= 0).
[error]                                                                     ^
[error]

because these seem probably fixed soon in https://github.com/apache/spark/pull/16776 and I intended to avoid potential conflicts.
How was this patch tested?
Manually via jeykill build

Note that such many errors seem hiding more errors in the error messages. This starts to hide the more errors so I proposed this PR.

cc @srowen.

Merged build triggered.

Merged build started.

Test build #72875 has started for PR 16926 at commit 1ec22f0.

Test build #72875 has finished for PR 16926 at commit 1ec22f0.

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/72875/
Test PASSed.

Hi, @HyukjinKwon .
Could you fix java linter errors together here?

nit. In the PR description, a typo: jeykill -> jekyll

I removed my previous comment about java linter errors here.
Never mind about that.

Thank you @dongjoon-hyun, @srowen and @felixcheung for your approvals and reviews.

Merged to master


[feature request] only keep last n built assets

First of all, I love this gem, it helps me to integrate webpack with rails without plain. With a little customization it works so greate in both environment.
One thing I think it's missing is that it can't preserve last n builds between deployments like sprockets-rails does. I think it's essential because we not only want to keep assets during deployment, but remove older ones to not eat up our disk.

As in keep the manifests as well as the compiled assets? There's nothing in the compile step that would remove the old assets, but the manifest is overwritten.
Thank you for your kind words regarding the gem :)

I might describe the feature in the wrong way. I mean only keep last n time builds and remove the older ones. sprockets-rails has this feature as describes here. If we don't remove older ways, the size of assets folder will get larger and larger.

Oh, right!
In our case the assets we compile with webpack are quite small - JS only, no images or CSS - so it hasn't hit us yet.
I would need to look at how sprockets does it, but it'd be a good thing to support.

Yeah, I would also want to figure out and contribute to this gem.

I have some time to search on sprockets codebase. I find this method, it describes the algorithm about cleaning older versions of assets. I think we can use it.
However, there's one different thing. Webpack seems like don't output the information about when the asset file is built like Sprockets does. But it's fine, we can check the mtime on the file itself.

Oh, I miss that mainfest.json emitted by sprockets also have info about every versions of assets like below:
"workspace-901e9d31f7757378882ea086cf3c65a7.js": {
  "logical_path": "workspace.js",
  "mtime": "2016-06-17T21:01:07+08:00",
  "size": 892279,
  "digest": "901e9d31f7757378882ea086cf3c65a7"
},
"workspace-408babeced685f1dc6d1ec68806cca81.css": {
  "logical_path": "workspace.css",
  "mtime": "2016-07-27T11:41:27+08:00",
  "size": 195125,
  "digest": "408babeced685f1dc6d1ec68806cca81"
},
"workspace-16ed83e3e9615b664a8d8113dc54222d.js": {
  "logical_path": "workspace.js",
  "mtime": "2016-08-07T15:32:02+08:00",
  "size": 916000,
  "digest": "16ed83e3e9615b664a8d8113dc54222d"
},
"workspace-1eef72f05291133f14d3322772d2db0b.css": {
  "logical_path": "workspace.css",
  "mtime": "2016-08-07T15:13:32+08:00",
  "size": 195260,
  "digest": "1eef72f05291133f14d3322772d2db0b"
}

It helps to find all previous version of files. So I think instead of overwriting manifest.json every time, we should mutate that to include new assets'info and also remove older ones like sprockets does.

Harder than it sounds, unfortunately - dig in to how webpack is generating the manifest and you'll see what I mean.

sounds like we need help here

I would recommend a post-build step that parses the manifest.json that is created and stores a separate history file, which can then be read.

Any progress on this? Very useful gem and I need this feature too.

Wouldn't it be enough to delete the old version after the deployment, i.e. remove all files not listed in the manifest? Obviously it would have to be a separate task that's executed one the server is restarted.

Yes, it should be performed after cleaning old releases, also it would be great to compile webpack assets locally (otherwise server cpu load increased dramatically).

Those seem like two different tasks to me. If we have a task that removes the old data and you execute it after you copy your files to the server then your use case should be covered as well, shouldn't it?

Yes, these are different tasks. If you keep two or more releases, you can remove old data safely, but if you keep only one release, you'll probably see your web application without css/js for a second while puma/unicorn restarts. I think it's safer to remove old assets just after restart event.

I'm kind of lost in there. What's the purpose of keep last n releases? I thought it is to ensure user won't get pages without css/js while deployments, but after reading @focused 's comments I think I'm misunderstanding this.


save_workbook raises TypeError in 3.0.2

This code works without error in 2.6.2. In 3.0.2 it raises TypeError. (it fails in the same way with a real Workbook, the empty Workbook is just the simplest way to repro).
import tempfile
from openpyxl.workbook.workbook import Workbook
from openpyxl.writer.excel import save_workbook

with tempfile.NamedTemporaryFile() as tf:
    save_workbook(Workbook(), tf.name)

$ python save.py
Traceback (most recent call last):
  File "save.py", line 7, in <module>
    save_workbook(Workbook(), tf.name)
  File "/site/venv/lib/python3.7/site-packages/openpyxl/writer/excel.py", line 293, in save_workbook
    writer.save()
  File "/site/venv/lib/python3.7/site-packages/openpyxl/writer/excel.py", line 275, in save
    self.write_data()
  File "/site/venv/lib/python3.7/site-packages/openpyxl/writer/excel.py", line 75, in write_data
    self._write_worksheets()
  File "/site/venv/lib/python3.7/site-packages/openpyxl/writer/excel.py", line 215, in _write_worksheets
    self.write_worksheet(ws)
  File "/site/venv/lib/python3.7/site-packages/openpyxl/writer/excel.py", line 200, in write_worksheet
    writer.write()
  File "/site/venv/lib/python3.7/site-packages/openpyxl/worksheet/_writer.py", line 354, in write
    self.write_top()
  File "/site/venv/lib/python3.7/site-packages/openpyxl/worksheet/_writer.py", line 98, in write_top
    self.write_properties()
  File "/site/venv/lib/python3.7/site-packages/openpyxl/worksheet/_writer.py", line 60, in write_properties
    self.xf.send(props.to_tree())
  File "/site/venv/lib/python3.7/site-packages/openpyxl/worksheet/_writer.py", line 294, in get_stream
    xf.write(el)
  File "src/lxml/serializer.pxi", line 1652, in lxml.etree._IncrementalFileWriter.write
TypeError: got invalid input value of type <class 'xml.etree.ElementTree.Element'>, expected string or Element

python 3.7.5 on Ubuntu 18.04 with the following installed:
et-xmlfile==1.0.1
jdcal==1.4.1
openpyxl==3.0.2

wrong openpyxl


Show summary in test execution

list.html just lists the test executions, but we want to see the summary in each of the test executions.
Required informations

[x] How many tests were passed
[x] How many tests are there
[ ] Percentage and graphical percentage bar
[ ] Place appropriate marker or label.

8a0e319f25cb8fdc4eefae24f0b4a1c2d1bf6710 It completes first and second bullet.

94194f6f1ce95d58048d9a8c4dd9a721e6a3b704 others


Integration fails to retrieve the publish task and the image digest on OCP

What happened?
When using build strategy pod on OCP the integration build is marked as Phase=Error because the image digest is not available.
The build condition state that causes the build to fail:
message: ' publishing task completed but no digest is available in container status. Make sure that the process successfully push the image to the registry and write its digest to /dev/termination-log'
reason: ImageDigestAvailable
status: 'False'
type: ImageDigestAvailable

I noticed that the monitor action is not able to determine the publish task name from the list of build tasks although it is there in the build spec.
spec:
  configuration: {}
  tasks:
    - builder:
        baseImage: 'eclipse-temurin:17'
        configuration:
          #...
    - package:
        baseImage: 'eclipse-temurin:17'
        configuration:
        # ...
    - s2i:
        configuration: {}
        name: s2i
        tag: '3804935125'

Having a look into the code it assumes that the last task in the build spec is the publish task and retrieves the name of that task. But for some reason the ordering of tasks in the spec may not be the same in different environments. I have seen this on OCP that the publish task is not the last task in the list. As a result of this the task name is empty which leads to the ImageDigestAvailable condition failure as seen above.
Unfortunately the Integration status does not reflect this build/integration kit error root cause at all.
message: integration kit camel-k-operator/kit-cosstuufr893vlutccf0 is in state "Error"
reason: IntegrationKitAvailable
status: 'False'
type: IntegrationKitAvailable

It would be good to see the build error cause with ImageDigestAvailable=false in the IntegrationKitAvailable status.
Also, the operator logs should reveal the error status of the Build with the ImageDigestAvailable error. At the moment there is not real evidence of the error root cause unless you have a look into the build status.
Also, as a result of the missing integration kit a trait execution failure on the mount trait is reported on the Integration resource which is quite misleading.
message: 'error during trait customization: mount trait execution failed: unable to find integration container: roll-dice'
reason: InitializationFailed
status: 'False'
type: Ready

Steps to reproduce

Install Camel K 2.3.0 on OCP
Set build strategy on IntegrationPlatform to pod
Run an integration
See the Integration, IntegrationKit and Build in error Phase

Relevant log output
{"level":"info","ts":"2024-05-07T06:50:20Z","logger":"camel-k.controller.integrationkit","msg":"Invoking action error","request-namespace":"camel-k-operator","request-name":"kit-cosstuufr893vlutccf0","api-version":"camel.apache.org/v1","kind":"IntegrationKit","ns":"camel-k-operator","name":"kit-cosstuufr893vlutccf0"}
{"level":"info","ts":"2024-05-07T06:50:20Z","logger":"camel-k.controller.integration","msg":"State transition","request-namespace":"camel-k-operator","request-name":"roll-dice","api-version":"camel.apache.org/v1","kind":"Integration","ns":"camel-k-operator","name":"roll-dice","phase-from":"Building Kit","phase-to":"Error"}
{"level":"error","ts":"2024-05-07T06:50:20Z","msg":"Reconciler error","controller":"integration-controller","controllerGroup":"camel.apache.org","controllerKind":"Integration","Integration":{"name":"roll-dice","namespace":"camel-k-operator"},"namespace":"camel-k-operator","name":"roll-dice","reconcileID":"deedb3f9-a496-4ea2-82db-f5e99955190e","error":"error during trait customization: mount trait execution failed: unable to find integration container: roll-dice","stacktrace":"sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\tsigs.k8s.io/controller-runtime@v0.15.2/pkg/internal/controller/controller.go:324\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\tsigs.k8s.io/controller-runtime@v0.15.2/pkg/internal/controller/controller.go:265\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\tsigs.k8s.io/controller-runtime@v0.15.2/pkg/internal/controller/controller.go:226"}

Camel K version
2.3.0

Fixed by https://github.com/apache/camel-k/pull/5435
It did not make time to put it into 2.3.1, we will do a patch release asap. In the while, stick to routine builder pod strategy.


Z3 based sort inferencer

Tested on KEVM and against the integration test suite of K. It seems to perform at least as fast as the old implementation in most cases, if not faster. Some extremely ambiguous rules with a highly complex sort graph are somewhat slower, but it shouldn't be by a huge factor, and if we run into more serious cases I believe we can probably optimize them away.
Time to execute integration test suite in parallel with only change to cells: 7m34s
Time to execute integration test suite in parallel with change to cells and new inferencer: 7m36s
Time to execute integration test suite in parallel on master: 7m42s
Time to kompile KEVM with only change to cells: 36s
Time to kompile KEVM with change to cells and new inferencer: 48s
Time to kompile KEVM on master: 38s
Time to kompile kool typed static with only changes to cells: 14s
Time to kompile kool typed static with changes to cells and new inferencer: 14s
Time to kompile kool typed static on master: 14s
Tested against beacon chain and kevm with z3 4.4 and 4.8.

What do you mean in your description by "changes to cells"?

@ehildenb @radumereuta this should be ready for review again @ttuegel I think I addressed all your questions. Please take another look.
In answer to your question, Everett, I am referring to the change from syntax K ::= Bag to syntax KItem ::= Bag.

Yep, all my questions are answered.


Update the LookML folders/files to match JSON Schema pathing/vendoring

Unscheduled as it's quite helpful for LookMLs to be in a flat folder structure for now.

Closing as we're currently not maintaining our existing LookML models. Once the work is complete on our new and updated data models, revisiting our LookML support (which will be a complete rebuild) might be on the cards.
It's worth noting though, that Looker has also completely rebuilt how their folders and structure works since this issue was first created.


Add experimental NRI injection points

This allows development with container to be done for NRI without the need for
custom builds.
This is an experimental feature and is not enabled unless a user has a global
/etc/nri/conf.json config setup with plugins on the system.  No NRI code will
be executed if this config file does not exist.
Signed-off-by: Michael Crosby<EMAIL_ADDRESS>

/test pull-cri-containerd-node-e2e

I think @dmcgowan would feel better if we wait until 1.4 is out before pushing this forward more

+1 to wait until 1.5 opens up :)

Now that 1.4 is out, do we want to open this back up for review?

Now that 1.4 is out, do we want to open this back up for review?

sure ..

looks good but needs rebase


[now-static-build] Add Eleventy to optimized framework list

This PR adds Eleventy to the optimized frameworks list for zero config deployments.
The test fixture has been created with the Eleventy base blog starter, because there is no default starter or CLI that will init.
Related to https://github.com/zeit/now-builders/pull/868

Codecov Report

Merging #3060 into canary will increase coverage by 2.11%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           canary    #3060      +/-   ##
==========================================
+ Coverage   11.36%   13.47%   +2.11%
==========================================
  Files         267      267
  Lines       10039    10300     +261
  Branches     1309     1212      -97
==========================================
+ Hits         1141     1388     +247
- Misses       8805     8850      +45
+ Partials       93       62      -31

Impacted Files
Coverage Δ

src/util/metrics.ts
68.18% <0%> (-2.41%)
:arrow_down:

src/util/dev/builder-cache.ts
80.74% <0%> (+3.47%)
:arrow_up:

src/util/projects/get-project-by-id-or-name.ts
28.57% <0%> (+3.57%)
:arrow_up:

src/util/get-files.ts
91.66% <0%> (+3.88%)
:arrow_up:

src/util/dev/router.ts
82.69% <0%> (+4.12%)
:arrow_up:

src/util/dev/builder.ts
76.92% <0%> (+4.4%)
:arrow_up:

src/util/dev/yarn-installer.ts
90.74% <0%> (+5.02%)
:arrow_up:

src/util/dev/server.ts
66.43% <0%> (+5.41%)
:arrow_up:

src/util/prefer-v2-deployment.ts
61.9% <0%> (+5.65%)
:arrow_up:

src/util/output/create-output.ts
43.58% <0%> (+12.33%)
:arrow_up:

Continue to review full report at Codecov.

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


docs: extend further readings section to a separate file

Update further readings section with latest conference talks and slides.
Separate further readings section to a different file.

This change is

Coverage increased (+0.03%) to 44.311% when pulling 2a70ae6b56306dc78b01a1fe66de70a00dfb5005 on fristonio:pr/fristonio/further-readings into 74b517bcc20fb71a0978cbe14824f3fdfe02793a on cilium:master.


file open in vscodes on wsl support

Describe the bug
opening the file in the editor using vscode it doesn't work
To Reproduce
Steps to reproduce the behavior:

Click on open in the editor arrow, accept opening in  vscode
Error message pops in that the file doesn't exist on the disk

Desktop (please complete the following information):

OS: Windows 10 pro wsl ubuntu 20.04
Browser: Chrome
Slidev version:  0.13.4

@veritem Hey!,  I wasn't able to reproduce this issue.
One thing that I might have done different is that I set up my default code editor in wsl shell to be vscode and then clicking on the editor button opens vscode without any issue.
If your issue still exists, then can you elaborate more please so that I can work on it?


How to read from stdin

Summary
Description of the question / problem here.
Description:
Hi all,  as above, I am having difficulties reading input from the scanner class for level 5. Would appreciate some hints as to how I can read the lines
12
Jack   CS2040 Lab4    B
Jack   CS2040 Lab6    C
Jane   CS1010 Lab1    A
as specified on level 5. When I checked online for a solution, most suggested using a delimiter and using a loop to separate elements in the string but this does not seem applicable here because we must pass the name, module, test and grade into the function all at  once.
Clarifications or details with respect to the issue you are facing
Code Snippets
Screenshots
Screenshots (if any)

Hello! You can consider initialising the scanner first:
Scanner scanner = new Scanner(System.in)
Then, proceed to read the first integer: int n = scanner.nextInt()
After that, you'd want to read each line by line. As there are a total of n of these lines with name, module, test, grades, you can consider setting up a for loop to loop through 0 to < n, and take into all four tokens at the same time.
for (int i = 0; i < n; i++) {
            String student = scanner.next();
            String module = scanner.next();
            ... // repeat for the test and grade then proceed to add all of these to your roster!
}

Thanks for the detailed instructions! I tried implementing it but strangely I get a "D" appended to the end of my first query, which has probably got to do with the ctrl d that I used to terminate the input. So instead of "B C A+..." I got  "BD C A+...".  I produced this output by doing: an infinite loop involving scanner.hasNext(), and appending the result of getGrade() to a string., which I printed out at the very end (after the infinite loop was terminated). How should I go about resolving this?

I had the same issue as well, I believe it may be a glitch on the jshell side of it? It was accepted when I submitted it on codecrunch.

You can try adding sc.nextLine(); at the end of your loop

I see, thanks for the help everyone!

I got the same bug, but yea it gets accepted on code crunch so not to worry. you can refer to this link for more details as to why the D appeared. tldr the terminal overwrites the caret so its not sth to worry about
https://stackoverflow.com/questions/25756825/ctrl-d-on-mac-terminal-outputs-a-d-character


Fail to build Pixie project with bazel

Describe the bug
I download the pixie project and tried to compile it (I want to run the standalone PEM and test it).
I run the command : bazel build under pixie directory and encountered the following error:
Error in fail: Error while fetching artifact with coursier: Resolution error: Error downloading org.apache.thrift:libthrift:0.10.0
download error: Caught javax.net.ssl.SSLHandshakeException (PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target) while downloading https://repo1.maven.org/maven2/org/apache/thrift/libthrift/0.10.0/libthrift-0.10.0.pom
So I downloaded all artifacts defined in the file bazel/thrift.bzl to my local repository and change the repositories (under maven_install in this file) to my local repository path [ "https://repo1.maven.org/maven2" ==> "/work/.m2/repository" ].
Now, when I try to build I get the following error:
ERROR: Error computing the main repository mapping: no such package '@thrift_deps//': Error while fetching artifact with coursier: Exception in thread "main" java.net.MalformedURLException: No protocol found in URL /work/.m2/repository/org/apache/thrift/libthrift/0.10.0/libthrift-0.10.0.pom
I tried to download the libthrift-0.10.0.pom and libthrift-0.10.0.pom.sha1 from maven repository to /work/.m2/repository/org/apache/thrift/libthrift/0.10.0/ but it didn't help.
I'm newbie in bazel so appreciate any help.
Thanks.
To Reproduce

Download pixie from git.
cd pixie
run bazel build

Expected behavior
compilation succeeds.
thrift.zip

Hi @AsherAroussi, Pixie's build should work without making changes to the source. Are you unable to use the reop1.maven.org to install maven packages?
Did you perform any set up prior to running bazel build or modifying the maven repository location? If not, you will either need to run the chef code (via cd tools/chef; sudo chef-solo -c solo.rb -j node_workstation.json) to provision a Linux host or run bazel from our development docker image.

Thank you, @ddelnano for your response.
I haven't done any changes in maven repository location (or any changes) prior to the build command.
I run the command sudo chef-solo -c solo.rb -j node_workstation.json and it fails with the following error:
asher@<IP_ADDRESS>@/work/tools/pixie/tools/chef ((HEAD detached at release/cloud/v0.1.7))# sudo chef-solo -c solo.rb -j node_workstation.json
Starting Chef Client, version 12.14.60
resolving cookbooks for run list: ["px_dev_extras::linux_clang", "px_dev", "px_dev_extras"]
Synchronizing Cookbooks:

px_dev_extras (0.1.0)
px_dev (0.3.0)
common (0.1.0)
Installing Cookbook Gems:
Compiling Cookbooks...

================================================================================
Recipe Compile Error in /tmp/cookbooks/common/resources/remote_bin.rb
NoMethodError
undefined method `unified_mode' for #Class:0x000055dca00f3750
Did you mean?  undef_method
Cookbook Trace:
/tmp/cookbooks/common/resources/remote_bin.rb:17:in `class_from_file'
Relevant File Content:
/tmp/cookbooks/common/resources/remote_bin.rb:
10:  # distributed under the License is distributed on an "AS IS" BASIS,
11:  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12:  # See the License for the specific language governing permissions and
13:  # limitations under the License.
14:  #
15:  # SPDX-License-Identifier: Apache-2.0
16:
17>> unified_mode true
18:  provides :remote_bin
19:
20:  property :name, String, name_property: true
21:  property :bin_name, String, default: ''
22:
23:  default_action :create
24:
25:  action :create do
26:    tool_dir = "/opt/px_dev/tools/#{new_resource.name}"
Platform:
x86_64-linux-gnu
Running handlers:
[2023-08-16T16:16:55+08:00] ERROR: Running exception handlers
Running handlers complete
[2023-08-16T16:16:55+08:00] ERROR: Exception handlers complete
Chef Client failed. 0 resources updated in 03 seconds
[2023-08-16T16:16:55+08:00] FATAL: Stacktrace dumped to /tmp/chef-stacktrace.out
[2023-08-16T16:16:55+08:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
[2023-08-16T16:16:55+08:00] ERROR: undefined method `unified_mode' for #Class:0x000055dca00f3750
Did you mean?  undef_method
/usr/lib/ruby/vendor_ruby/chef/application/exit_code.rb:90: warning: constant ::Fixnum is deprecated
[2023-08-16T16:16:55+08:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)
/usr/lib/ruby/vendor_ruby/chef/application/exit_code.rb:90: warning: constant ::Fixnum is deprecated
remote_bin.zip

Starting Chef Client, version 12.14.60

@AsherAroussi chef version 12.x is extremely old. The error you are experiencing is due to older chef versions not supporting unified_mode.

Our development environment currently targets Ubuntu jammy (22.04) and uses chef 18.x. The other alternative development option is to run all of the development utilities from our docker image (as described here).

Thank you, @ddelnano for your help.
I upgrade the chef:
chef-solo -v
Chef Infra Client: 18.2.7
I run the command : sudo chef-solo -c tools/chef/solo.rb -j tools/chef/node_workstation.json and get the following:
asher@<IP_ADDRESS>@/work/tools/pixie ((HEAD detached at release/cloud/v0.1.7))# sudo chef-solo -c tools/chef/solo.rb -j tools/chef/node_workstation.json
Chef Infra Client, version 18.2.7
Patents: https://www.chef.io/patents
Infra Phase starting
Resolving cookbooks for run list: ["px_dev_extras::linux_clang", "px_dev", "px_dev_extras"]
Synchronizing cookbooks:

px_dev_extras (0.1.0)
px_dev (0.3.0)
common (0.1.0)
Installing cookbook gem dependencies:
Compiling cookbooks...
Loading Chef InSpec profile files:
Loading Chef InSpec input files:
Loading Chef InSpec waiver files:
Converging 69 resources
Recipe: px_dev_extras::linux_clang

remote_file[/tmp/clang.deb] action create

create new file /tmp/clang.deb
update content in file /tmp/clang.deb from none to a7c6aa
(file sizes exceed 10000000 bytes, diff output suppressed)
change mode from '' to '0644'

dpkg_package[clang] action install (up to date)

file[/tmp/clang.deb] action delete

delete file /tmp/clang.deb

execute[lld alternatives selection] action run

execute update-alternatives --install "/usr/bin/ld.lld" "lld" "/opt/px_dev/tools/clang-15.0/bin/lld" 10
Recipe: px_dev::linux

apt_update[update] action periodic

directory[/var/lib/apt/periodic] action create (up to date)
directory[/etc/apt/apt.conf.d] action create (up to date)
file[/etc/apt/apt.conf.d/15update-stamp] action create_if_missing (up to date)
execute[apt-get -q update] action run

execute ["apt-get", "-q", "update"]

update new lists of packages

apt_package[autoconf, bash-completion, bc, build-essential, crun, curl, docker.io, git, libncurses5, lcov, podman, sudo, systemd, unzip, virtualenvwrapper, zlib1g-dev, zip, bison, flex, libedit-dev, libelf-dev, gcc-12, g++-12, libltdl-dev, libunwind-dev, qemu, qemu-system-arm, qemu-system-x86, qemu-user-static, qemu-utils] action upgrade

No candidate version available for crun, podman, gcc-12, g++-12
================================================================================
Error executing action upgrade on resource 'apt_package[autoconf, bash-completion, bc, build-essential, crun, curl, docker.io, git, libncurses5, lcov, podman, sudo, systemd, unzip, virtualenvwrapper, zlib1g-dev, zip, bison, flex, libedit-dev, libelf-dev, gcc-12, g++-12, libltdl-dev, libunwind-dev, qemu, qemu-system-arm, qemu-system-x86, qemu-user-static, qemu-utils]'
================================================================================

Chef::Exceptions::Package
No candidate version available for crun, podman, gcc-12, g++-12
Resource Declaration:
In /tmp/cookbooks/px_dev/recipes/linux.rb
62: apt_package apt_pkg_list do
63:   action :upgrade
64: end
65:
Compiled Resource:
Declared in /tmp/cookbooks/px_dev/recipes/linux.rb:62:in `from_file'
apt_package("autoconf, bash-completion, bc, build-essential, crun, curl, docker.io, git, libncurses5, lcov, podman, sudo, systemd, unzip, virtualenvwrapper, zlib1g-dev, zip, bison, flex, libedit-dev, libelf-dev, gcc-12, g++-12, libltdl-dev, libunwind-dev, qemu, qemu-system-arm, qemu-system-x86, qemu-user-static, qemu-utils") do
package_name ["autoconf", "bash-completion", "bc", "build-essential", "crun", "curl", "docker.io", "git", "libncurses5", "lcov", "podman", "sudo", "systemd", "unzip", "virtualenvwrapper", "zlib1g-dev", "zip", "bison", "flex", "libedit-dev", "libelf-dev", "gcc-12", "g++-12", "libltdl-dev", "libunwind-dev", "qemu", "qemu-system-arm", "qemu-system-x86", "qemu-user-static", "qemu-utils"]
action [:upgrade]
default_guard_interpreter :default
declared_type :apt_package
cookbook_name "px_dev"
recipe_name "linux"
end
System Info:
chef_version=18.2.7
platform=ubuntu
platform_version=18.04
ruby=ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [x86_64-linux]
program_name=/usr/bin/chef-solo
executable=/opt/chef/bin/chef-solo

Running handlers:
[2023-08-17T16:16:14+08:00] ERROR: Running exception handlers
Running handlers complete
[2023-08-17T16:16:14+08:00] ERROR: Exception handlers complete
Infra Phase failed. 5 resources updated in 01 minutes 56 seconds
[2023-08-17T16:16:14+08:00] FATAL: Stacktrace dumped to /tmp/chef-stacktrace.out
[2023-08-17T16:16:14+08:00] FATAL: ---------------------------------------------------------------------------------------
[2023-08-17T16:16:14+08:00] FATAL: PLEASE PROVIDE THE CONTENTS OF THE stacktrace.out FILE (above) IF YOU FILE A BUG REPORT
[2023-08-17T16:16:14+08:00] FATAL: ---------------------------------------------------------------------------------------
[2023-08-17T16:16:14+08:00] FATAL: Chef::Exceptions::Package: apt_package[autoconf, bash-completion, bc, build-essential, crun, curl, docker.io, git, libncurses5, lcov, podman, sudo, systemd, unzip, virtualenvwrapper, zlib1g-dev, zip, bison, flex, libedit-dev, libelf-dev, gcc-12, g++-12, libltdl-dev, libunwind-dev, qemu, qemu-system-arm, qemu-system-x86, qemu-user-static, qemu-utils] (px_dev::linux line 62) had an error: Chef::Exceptions::Package: No candidate version available for crun, podman, gcc-12, g++-12
chef-stacktrace.zip

No problem. I see you are using Ubuntu 18.04. As I mentioned before, our development docker image setup builds on top of Ubuntu jammy (22.04). You will need to run chef on that version of Ubuntu.

Thank you. I appreciate your help, @ddelnano . I'll upgrade

Not a problem :). I'm going to close this for now since so far things point to needing a compatible build environment. However, I'm happy to continue the discussion here as you get closer to having a working build. So please don't hesitate to continue with any new issues that arise!


fix: Remove Latest Activity rail header font boldness

This PR resolves ONYX-446
Description
Remove Latest Activity rail header font boldness.
PR Checklist

[ ] I have tested my changes on iOS and Android.
[ ] I hid my changes behind a feature flag, or they don't need one.
[ ] I have included screenshots or videos, or I have not changed the UI.
[ ] I have added tests, or my changes don't require any.
[ ] I added an app state migration, or my changes do not require one.
[ ] I have documented any follow-up work that this PR will require, or it does not require any.
[ ] I have added a changelog entry below, or my changes do not require one.

To the reviewers 👀

[ ] I would like at least one of the reviewers to run this PR on the simulator or device.

Changelog updates
Changelog updates

Cross-platform user-facing changes

iOS user-facing changes

Android user-facing changes

Dev changes

Need help with something? Have a look at our docs, or get in touch with us.

Warnings

:warning:

❌ An error occurred while validating your changelog, please make sure you provided a valid changelog.

  Generated by :no_entry_sign: dangerJS against a1074c26ad333ee27962c27a9244d30e94e27c0d


Update to Cauldron v1.4.5

Hi guys, are there any plans to do so?

This seems easy, I'll make a PR.


fix: private ip address issue in node data

Problem
Currently the private ip address of a node can find its way into the node data on a worker node. The node data is used to filter through validators and workers and this requires the public ip to always be stored in the node data for processing.
functions handling this
GetPriorityAddress
getBestPublicAddress
isPreferredAddress

@jdutchak is going to share to @teslashibe the services used to identify the public IPs so we can pay one of the services to be reliable until https://github.com/masa-finance/roadmap/issues/69 is worked out


.boltrc config: don’t parse non-component packages

Right now adding NPM packages that aren’t Bolt components can result in a fatal Bolt build tool error getting thrown, as @christophersmith262 and @remydenton can attest to.

As part of this, fix (or remove?) the incorrect path to the schema file in the build tools package.json:
https://github.com/bolt-design-system/bolt/blob/master/packages/build-tools/utils/package.json#L43

Best fix from my perspective would be to have a way for a package (in package.json) to declare that it has a component in it. Or better yet, to have an entry in the schema that says "this is schema for twig, this is schema for a web component, this is schema for javascript config, etc.".

I think we may have smushed two separate issues together in this one:

There's no easy way to tell whether a package is a component or something else by looking at its package.json file (our current workaround is to check whether the name starts with @bolt/components).  This is a use case for work @christophersmith262 is doing on the base theme.
You get this error if you list build utils in your boltrc file

<EMAIL_ADDRESS>Error: This file ^^^ does not exist and it was referenced in package.json for that component, please make sure the file path is correct.

This can be fixed by any of
a) don't list build utils in boltrc (it's unnecessary)
b) fix the path to the schema file in build tools package.json in Bolt
c) "don't parse non-component packages".
Did I get that right?


Superseded by commit 672b3714f0d1cfb37f6b76de618f11b5a15bf6f9


SrapiV4 - ContentTypeBuilder - create new collection - bug

Description
I could not create a Collection after I setup the point list plugin.
Secreenshot / Reference
props

Chrome Console log
main.bundle.js:57546 Uncaught TypeError: Cannot read properties of undefined (reading 'fieldRenderer')
    at main.bundle.js:57546:30
    at root.<computed> (main.bundle.js:57652:15)
    at renderWithHooks (main.bundle.js:142101:18)
    at mountIndeterminateComponent (main.bundle.js:144927:13)
    at beginWork (main.bundle.js:146165:16)
    at HTMLUnknownElement.callCallback (main.bundle.js:131061:14)
    at Object.invokeGuardedCallbackDev (main.bundle.js:131110:16)
    at invokeGuardedCallback (main.bundle.js:131172:31)
    at beginWork$1 (main.bundle.js:151075:7)
    at performUnitOfWork (main.bundle.js:149887:12)

Suggestion
Handle undefined attribute property.
intercept(helperPlugin, 'GenericInput', ({ args: [props], resolve }) => {
  const type = (props.attribute || {}).fieldRenderer || props.type;
  return resolve({
    ...props,
    type,
  });
});

I didn't notice this error during migration, thanks for the quick fix of the code


Manage existing test run or test plan

Implements publishing in an existing test run or test plan.
Existing Test run/plan can be provided by command line: --run-id=<id> / --plan-id=<id>
Other info:

New option --tr-version to indicate "version" field during test execution
Plugin instance is now named to be used by other plugin
Change strict dependency with "requests" version (more permissive)
Unit tests have been updated

This PR fixes #26

@dubner any comment about this PR?

@apallier Sorry for the delay, can you fix up the conflicts and i'll give a look.

@dubner OK I will try to do that next week

@dubner I normally fixed up the conflicts. I hope my work will convenient

@dubner Hello, The last conflict is on the version. I incremented the 2nd digit because of new features.
Let me know you want to do :)

Hello @dubner, do you think you will soon merge my pull request?

@apallier thanks very much for the contribution, apologies for the delay in getting this in.

@dubner No problem for the delay. Thank you also to accept my contribution :)


Add React component example

How can i implement this component on Reactjs?

This should be fairly easy once #170 is merged.

@Glebasty1 the master branch now contains a react component example (examples/react/index.html), any help testing before I release 2.0.0 would be appreciated!

v2.0.0 was released, see https://collab-project.github.io/videojs-record/examples/react/index.html for live demo.


add(Script): IMDB Scraper

closes #311

Modules Used

requests
bs4 (BeautifuSoup)
argparse

How it works

The User provides a query title and the script scrapes the IMDB website for data on it

Since IMDB provides 200 results for every query, the data of top 5 is scraped, this is easily configurable.

Usage

Install dependencies
python scraper.py --t movie-name-here
sample : python scraper.py --t red

Have you read the Contributing Guidelines on Pull Requests?

[x] Yes
[ ] No

Type of change
Please delete options that are not relevant.

[x] New feature (non-breaking change which adds functionality)

Checklist:

[x] My code follows the style guidelines(Clean Code) of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have created a helpful and easy to understand README.md
[x] My documentation follows Template for README.md
[x] My changes generate no new warnings
[x] I have added tests/screenshots(if any) that prove my fix is effective or that my feature works.

@kaustubhgupta @tamanna-verma @antrikshmisri

@kaustubhgupta @tamanna-verma @antrikshmisri

Although there is a similar script. I think this can be added

@antrikshmisri Good suggestions 💯

Thank you everyone for your feedback I have made the necessary changes.
Requesting a re review from @kaustubhgupta  and @antrikshmisri

@all-contributors please add @priyanshu20 for code and documentation


filter or search issue

when there isn't a matched value from filter or search the table disappears.

Expected Behavior

Current Behavior

Steps to Reproduce (for bugs)
<!---
search with any value not matched with the table contents.

I'm having the same issue, thought it was my code but I saw it's happening on the demo as well https://codesandbox.io/s/wy2rl1nyzl

Upgrade to the latest version just put out a fix

Great! Thanks, is it already on NPM?

Yep!

I checked but it is still not fixed
I used
   "mui-datatables": "latest",
you can check this link https://codesandbox.io/s/0p3k65qx9v
Regards

Try -16 just published

did that help @eramax  ?

Yes thanks so much for your help.
Regards


(legacy console edition hud) I was told to open an issue about this

Added the pictured icons in v1.5.0
Feel free to provide assets if any other icons are desired


Question about samplesheet.csv

Thank you very much and congratulations on the new version. I love it a lot.
I was desperate to use rnaseq in our cluster since the only option to run was conda and it had never been succeeded to replicate the conda environment.
I love the idea that now all tools have separated conda environments.
Back to the topic, I don't fully understand how to set samplesheet.csv. For example, if I have 2 samples for control and 2 samples for treatment. All samples have 3 replicates. How could I set it properly? Is it something like this?
group,replicate,fastq_1,fastq_2,strandedness
control,1,sample1_rep1_R1.fastq.gz,sample1_rep1_R2.fastq.gz,forward
control,2,sample1_rep2_R1.fastq.gz,sample1_rep2_R2.fastq.gz,forward
control,3,sample1_rep3_R1.fastq.gz,sample1_rep3_R2.fastq.gz,forward
control,1,sample2_rep1_R1.fastq.gz,sample2_rep1_R2.fastq.gz,forward
control,2,sample2_rep2_R1.fastq.gz,sample2_rep2_R2.fastq.gz,forward
control,3,sample2_rep3_R1.fastq.gz,sample2_rep3_R2.fastq.gz,forward
treatment,1,sample3_rep1_R1.fastq.gz,sample3_rep1_R2.fastq.gz,forward
treatment,2,sample3_rep2_R1.fastq.gz,sample3_rep2_R2.fastq.gz,forward
treatment,3,sample3_rep3_R1.fastq.gz,sample3_rep3_R2.fastq.gz,forward
treatment,1,sample4_rep1_R1.fastq.gz,sample4_rep1_R2.fastq.gz,forward
treatment,2,sample4_rep2_R1.fastq.gz,sample4_rep2_R2.fastq.gz,forward
treatment,3,sample4_rep3_R1.fastq.gz,sample4_rep3_R2.fastq.gz,forward

If it can be set like above, I wonder how the pipeline matches the replicates for the same sample? By partial matching the file names? Or by the order of rows?
I try to understand in order not to mess up the results.
Thank you

OK I think I understand that actually the numbers in replicate column are, kind of, the IDs for sample, right?


Allow user to be auto-assigned to own backport PRs

It would be nice if it was possible to be assigned to the backport PRs that you open.
I usually have a list open of PR's assigned to me, and sometimes I forget to merge the backport PRs I've opened because they are not assigned to me.
I'm not sure if everyone wants this or if this should be a personal setting though.

Makes sense. WDYT of the following:
As a configuration option (in .backport/config.json
{
  "targetPRAssignees": ["watson"]
}

As a cli argument. If nothing is given it'll default to the current user:
backport --assign

Or assign a specific person:
backport --assign sqren

I like it. I'd personally vote for making the json option singular like the CLI option, e.g. targetPRAssign. It can still be an array of course.

Thanks for the feedback @watson ! The reason I went with assignees is because that's what Github is calling it:

https://developer.github.com/v3/issues/assignees/#add-assignees-to-an-issue
I agree that targetPRAssignees doesn't read well. What I mean is: the assignees for the target PR. It could also simply be:
{
  "assignees": []
}

Or
{
  "assigneesForTargetPR": []
}

Or
{
  "assigneesForTargetPullRequest": []
}

If we prefer assign as verb instead of assignee as a noun it could be:
{
  "assignToTargetPullRequest": []
}

Ah didn't think of what GitHub called it. I'll leave this up to you 😉

Released in v5.4.3


China Civil War

I have three things to point:
1- Recently I watched a video of a gamer playing with the capitalist China and although he had been able to win the civil war, all the next events were related to the People's Republic of China. I mean he was playing with the capitalists, China was in a democracy and all the events were associated with the victory of the communism.
2- Even china being capitalist the Soviet Union gave to her a region and a lot of techs. I know it was what happened in the real history, but it wouldn't make more sense the if URSS gave to Capitalist China just the region or if she acquired a permanent casus-belli for the region ?
3- In the same gameplay the civil war of Korea began, with an event the player was able to force the north Korea to become a capitalist and democratic country, just like China and South Korea, but the war continued anyway. It doesn't make sense.

corrected where I found commie events.
corrected
corrected


Java 14.2: Default Interface Methods

Description
Add audio, documentation, and video regarding the Default Interface Methods.
Location of File to be added
The files should be added inside the Default Interface Methods folder which is inside the Interfaces folder present in the Java main folder. The documentation file can be in the .md/.py/.ipynb format. Audio should be in .mp3 format and to be submitted through a Google drive link. Video can be in any format and should be submitted through a Google Drive link.
Note:

You are required to comment with \assign CONTENT_TYPE, so that other content types can be created at the same time.
Failing to comment in the above manner will lead to the removal of assignment from the issue even if the bot assigns.
You are required to do a PR within 7 days otherwise you will be unassigned and others will be assigned.
Issues will be assigned on a first come first serve basis.

Domain
Java_Domain
Type of Contribution
Audio, Video, Documentation
Code of Conduct

[X] I follow Contributing Guidelines & Code of conduct of this project.

/assign Document

/assign audio

@iamsunil25 audio

/assign documentation

@garvitraj you can review my pr


Weakly-Supervised Training for Detection

The CRAFT authors used a weakly-supervised training method to handle the fact that most datasets don't annotate at the character level. I saw in your docs that a future release will support weakly-supervised training of the detector model, presumably following section 3.2.2 of the original paper. Have you made a start on this and, if so, do you have an idea of when this would be released? I might have time to try this myself, but figured I'd ask first.
Also, kudos and thanks for this cool project!

Great question -- weakly supervised training has been very challenging to implement (even more than I anticipated. The original authors have not provided an official implementation (not that they should feel obligated to do so) and the dribs and drabs in the issues for the official repository have been difficult for me to follow.
As an alternative, I've been working on generating a labeled dataset by training a character detector on cropped bounding boxes and then using it to label the character boxes in a word-level labeled dataset. The results have been okay but not great. I've put what I have so far in labeling such a dataset using this approach in this experimental function. I've tried to document the approach used to create those labels in this experimental notebook.
I would very much like to have a functioning end-to-end weakly supervised pipeline. Being realistic, I don't know when / if I'll have the available time to give that the focus it needs. If you want to take a crack at it, I would be exceedingly grateful, as I'm sure many others would be.

I found several implementations, maybe that helps.

https://github.com/RubanSeven/CRAFT_keras/blob/master/train.py
https://github.com/backtime92/CRAFT-Reimplementation/blob/master/watershed.py
https://github.com/autonise/CRAFT-Remade/blob/master/train_weak_supervision/trainer.py
https://github.com/dotieuthien/CRAFT/blob/master/process_label.py

@faustomorales, I want to ask you a question, this code https://keras-ocr.readthedocs.io/en/latest/examples/fine_tuning_detector.html is weakly supervised training, I use it to train icdar 2013 dataset,but the result is very bad


Add setup.py

We need to get a way for simple download & installation of python dependencies

This is trivial and I will do this as soon as I am ready to put this on pip


No way to implement ssl session reuse since #92

Hello !
Context
We were working on a fork of your repo to allow ssl session reuse and planning to offer a PR once stabilized, however there's no way to implement this since #92 as native_tls doesn't offer an interface to use sessions reuse. This is actually quite problematique as some servers require to use session reuse when in passive mode.
Thoughts around native_tls
Apparently the change to native_tls was made in #92  to make it easier to run on Windows and MacOs machine. As I use ArchLinux I have no idea how much easier it is, however I would like to point out that more than 90% of cloud based webservers run on linux. Since native_tls uses three different crates to implement ssl the configuration available is actually minimal when openssl provides a large set of parameters. This can be easily seen in the number of functions in the builders, 61 for SslConnectorBuilder versus 9 for TlsConnectorBuilder. As an example, I've added at the end how we can implement session reuse with openssl. Therefore I'm not sure the flexibility loss is worth it and would love to read more arguments againts it.
Next Steps
I see three possible solutions:

Revert to openssl (I can provide a PR)
Use two different feature flags secure-openssl and secure-native-tls that would basically use openssl or native_tls (I can provide a PR)
This crate stays on native_tls and we work on a fork.

Solution 1
Pros

Easy to maintain
Allows more flexibility
Always use the same implementation of SSL (easier to debug)
We'll provide updates to add features when required as #95

Cons

Running on Microsoft & MacOs would be more complicated

Solution 2
Pros

Keep it easy on Microsoft & MacOs
Allows more flexibility
We'll provide updates to add features when required as #95

Cons

Maintainance is twice as hard

Solution 3
Pros

Easy to maintain
Keep it easy on Microsoft & MacOs

Cons

Lot of flexibility lost
We'll probably maintain only our fork

@mattnenterprise Please tell me which which solution you prefer 🙂
Thanks and have a nice day !
Implementing Session Reuse
Basically it ends up in replacing the function data_command (taken from version 3.0.1) from:
    /// Execute command which send data back in a separate stream
    #[cfg(feature = "secure")]
    fn data_command(&mut self, cmd: &str) -> Result<DataStream> {
        self.pasv()
            .and_then(|addr| self.write_str(cmd).map(|_| addr))
            .and_then(|addr| TcpStream::connect(addr).map_err(|e| FtpError::ConnectionError(e)))
            .and_then(|stream| {
                match self.ssl_cfg {
                    Some(ref ssl) => {
                        Ssl::new(ssl).unwrap().connect(stream)
                            .map(|stream| DataStream::Ssl(stream))
                            .map_err(|e| FtpError::SecureError(e.description().to_owned()))
                    },
                    None => Ok(DataStream::Tcp(stream))
                }
            })
    }

To:
    /// Execute command which send data back in a separate stream
    #[cfg(feature = "secure")]
    fn data_command(&mut self, cmd: &str) -> Result<DataStream> {
        self.pasv()
            .and_then(|addr| self.write_str(cmd).map(|_| addr))
            .and_then(|addr| TcpStream::connect(addr).map_err(|e| FtpError::ConnectionError(e)))
            .and_then(|stream| match self.ssl_cfg {
                Some(ref ssl) => {
                    let mut ssl = Ssl::new(ssl).unwrap();
                    match self.reader.get_ref() {
                        DataStream::Tcp(_) => {}
                        DataStream::Ssl(ssl_stream) => unsafe {
                            // SAFETY: ssl_stream was also using the context from self.ssl_cfg
                            ssl.set_session(ssl_stream.ssl().session().unwrap())
                                .map_err(|e| FtpError::SecureError(format!("{}", e)))?
                        },
                    }
                    ssl.connect(stream)
                        .map(|stream| DataStream::Ssl(stream))
                        .map_err(|e| FtpError::SecureError(format!("{}", e)))
                }
                None => Ok(DataStream::Tcp(stream)),
            })
    }

Since the initial implementation of this library the choice of TLS/SSL library used for FTPS has been a mixed decision for me. This is mainly because no library offers the same flexibility for users across all systems.
I have looked further into the main issue of some servers require to use session reuse when in passive mode. This is the first I have heard of it, but after some research it seems to be a common thing FTP servers do.
Looks like it could be a security concern if session reuse isn't used as stated in https://superuser.com/questions/989048/why-is-session-reuse-useful-in-ftps. Here is a quote from the answer:

Reusing TLS session protects you from a theoretical possibility that an attacker hijacks an FTP data connection.
When you initiate a data transfer, the server opens a data connection port on the server (in a passive mode). A possible attacker might guess the port and connect before your FTP client does, stealing your data.
If the server requires that the same TLS session is used for the data connection, the attacker will not be able to start its own TLS session, preventing him/her from decoding the data.

The fact that this issue makes the library completely unusable for some users make me inclined to switch back to openssl. While that would make the library harder to use for Windows and MacOS users as they would have to have openssl setup. It would still be possible for them to use it.
It does look like native-tls has a pull request for session reuse. Though it hasn't had any progress since May 12, 2020.
@ChristianVisintin you created the pull request for the use of native-tls. I was wondering if you had any further thoughts on this ?

Hi,
I didn't know about anything about this. Personally I would keep both, splitting the secure feature into openssl and native-tls. I think both features have their advantages and I wouldn't remove any of them.
In case session reuse were implemented in native-tls, it would make sense to merge this feature into the native-tls version and then deprecate the openssl feature.


Contradictory condition that can fail with some compilation options

THis condition checks for a value and its negation. What should it be?
https://github.com/fraunhoferhhi/vvenc/blob/592adf1a2da818a07249024a43fc8fff559d4f26/source/Lib/EncoderLib/VLCWriter.cpp#L1866

Guess thats an if( false )
Good catch, we'll have a look


Check request headers instead of response

Fix of checking response instead of request headers

It should be good, we already have Robert's PR to fix it, and as its very small, should be approved quickly!


Port Laticore To Nereid

Need to port laticore, the core machine learning library, to "core" director in Nereid.

Is there anything you want done for either the Auth or Data folders? Those seem to be just general cloud provider API calls. Does anything specific need to be changed? Does more EKS support need to be added? Also could do something with / extend to GCP.

@danehrlich1
Ya, I believe we'll need some Generic Auth and Data connectors for a variety of sources (AWS, Azure, GCP, DO, etc.)
I probably need to create a separate issue for the fact that as part of the port, we need a Dev environment with a running K8s cluster so we can run tests of the application code. I'm currently putting that together.

@danehrlich1 also check out #2
If you'd like to contribute to the AWS account and/or private nereid-ops repo, please let me know, and I'll add you.

Yes please add + looking at #2 now.
On Tue, Jul 23, 2019 at 12:08 PM Scott Crespo<EMAIL_ADDRESS>wrote:

@danehrlich1 https://github.com/danehrlich1 also check out #2
https://github.com/konture/nereid/issues/2
If you'd like to contribute to the AWS account and/or private nereid-ops
repo, please let me know, and I'll add you.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/konture/nereid/issues/1?email_source=notifications&email_token=AAZTUEWLMBRX664CQLWS7FLQA43IZA5CNFSM4ID3CX52YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD2TZOSY#issuecomment-514299723,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAZTUET3MNKKFFOC3PF7YM3QA43IZANCNFSM4ID3CX5Q
.


JSON, XML outputs broken

In keeping with the class based layout breaking the file parsing logic, the formatting script needs to be revised also.

JSON and XML are omitted from the initial release of version 3.0. I'm working on putting them in version 3.1, which will be released sometime next week at this rate.

Merge with #73