Feature/sc 3562/ingest sdk ingest raw json take two

We should use reflection in Serializer to check if we use the classic IEnterspeedProperty property type.
We would like to be able to use simple object types and IEnterspeed property type side by side.
Serializer

Example with Umbraco source connector where we use both types

I have considered an approach where all IDictionary<string,IEnterspeedProperty> properties property gets replaced with IDictionary<string,object>
In the Enterspeed Property Converter we could override object and implement the CanConvert method, that with reflection checks if the object can bed casted to type of IDictionary<string,IEnterspeedProperty> .
This could give us the flexibility of assigning both simple data types and our typical IEnterspeedProperty type.
Do you think this would be a viable approach @jesperweber ?


ARROW-16497: [R] Update version in NEWS.md

This solves the following CI failure:
https://github.com/apache/arrow/runs/6329293119?check_suite_focus=true
Failure: test_version_pre_tag(PrepareTest)
/home/runner/work/arrow/arrow/dev/release/01-prepare-test.rb:226:in `test_version_pre_tag'
     223:     end
     224:
     225:     prepare("VERSION_PRE_TAG")
  => 226:     assert_equal(expected_changes.sort_by {|diff| diff[:path]},
     227:                  parse_patch(git("log", "-n", "1", "-p")))
     228:   end
     229: end
...
?  {:hunks=>[["-# arrow <IP_ADDRESS>00", "+# arrow 9.0.0"]], :path=>"r/NEWS.md"},
?                       7

Don't we bump all of the versions on master after the release? Any idea why this didn't get handled by that?

I had no errors in neither of the scripts.

Ah, I got it.
0,/.../ syntax used in https://github.com/apache/arrow/blob/master/dev/release/utils-prepare.sh#L131-L138 is a GNU sed extension. Sorry.
I'll merge this and fix the problem in a separated pull request to work with sed on macOS.

https://github.com/apache/arrow/pull/13095


New console interface - first step

Hi @nickl- ,
I am sorry, I screwed again with the PR :(, so I am creating a new one. Scope is restricted to the management of the prompt.
As per setOut/setErr/setIn, I am still doubtful it would work: if I pass in an old ConsoleInterface to Interpreter, calling setOut will delegate to the console's setOut (because console is != null), which will not give the expected behaviour.
Sorry again for the overhead of the new PR.... (the good news is that I am learning... :) )

I am sorry, I missed up again with the PR :(, so I am creating a new one.

No worries, all gewd! What is up with those repeated commits with the same message?
If you want to change anything from the previous commit, it is possible to change any past commit but the previous one is very simple, just add the new changes you want and then commit with --amend flag.  Just save the commit and it will be changed. If you already pushed that commit to your GitHub repository then just add --force to the push command to update the remote commit reference.
$ git push origin branch-name --force

Scope is restricted to the management of the prompt.

Ok fine, but we can go ahead and add the default console implementation inner class so long.

As per setOut/setErr/setIn, I am still doubtful it would work: if I pass in an old ConsoleInterface to Interpreter, calling setOut will delegate to the console's setOut (because console is != null), which will not give the expected behaviour.

Ok so lets think what the expected behaviour will be?  Currently it would change the class instance variables in, out and err.  So we can leave them for now... I have a plan... lets create the default Console implementation and delegate the print, println and error methods to console. Taking it one step at a time.

Sorry again for the overhead of the new PR.... (the good news is that I am learning... :) )

Really no sweats man! Submit as many PRs as you like. Glad you had more joy with the default method this time around =)
Looking good! =D

How about this for an Idea:
We create a new interface, lets call in ConsoleAssignable which extends our ConsoleInterface.
public interface ConsoleAssignable extends ConsoleInterface {
    void setIn( Reader in );
    void setOut( PrintStream out );
    void setErr( PrintStream err );
    void setConsole( ConsoleInterface console );
}

We change the type of the console variable in Interpreter to ConsoleAssignable and basically just move all the functionality from Interpreter to the inner class Interpreter.Console which implements the ConsoleAssignable interface.
Something like this:
    public static class Console implements ConsoleAssignable {
        public static String systemLineSeparator = "\n";
        private transient Reader in;
        private transient PrintStream out;
        private transient PrintStream err;
        private ConsoleInterface console;

        public Console(ConsoleInterface console) {
            this.console = console;
            this.in = console.getIn();
            this.out = console.getOut();
            this.err = console.getErr();
        }

        public Console(Reader in, PrintStream out, PrintStream err) {
            this.console = null;
            this.in = in;
            this.out = out;
            this.err = err;
        }

        @Override
        public Reader getIn() {
            return in;
        }

        @Override
        public PrintStream getOut() {
            return out;
        }

        @Override
        public PrintStream getErr() {
            return err;
        }

        @Override
        public void println(Object o) {
            if ( null != console )
                console.println(o);
            else
                this.print( o + systemLineSeparator );
        }

        @Override
        public void print(Object o) {
            if ( null != console )
                console.print(o);
            else if ( null != out ) {
                out.print(o);
                out.flush();
            }
        }

        @Override
        public void error(Object o) {
            if ( null != console )
                console.error( "// Error: " + o + systemLineSeparator );
            else if ( null != out ) {
                this.println( "// Error: " + o );
            }
        }

        @Override
        public void prompt(Object o) {
            if ( null != console )
                console.prompt(o);
            else
                this.print(o);
        }

        @Override
        public void setIn(Reader in) {
            this.in = in;
        }

        @Override
        public void setOut(PrintStream out) {
            this.out = out;
        }

        @Override
        public void setErr(PrintStream err) {
            this.err = err;
        }

        @Override
        public void setConsole(ConsoleInterface console) {
            this.console = console;
            this.setOut( console.getOut() );
            this.setErr( console.getErr() );
            this.setIn( console.getIn() );
        }

    }

With 2 constructors by which we can instantiate our Interpreter local console reference with either a ConsoleInterface or the in, out and err streams whichever is available and everything should continue to work as before.
This should do the trick... what do you think? Did I miss anything?

check the redundant use of public in the default method, public can actually be removed from the abstract methods (print, println, print) in the interface too.

done.

Please add Interpreter.Console inner class.

I haven't done it yet, because until we understand how to manage the setXXX(), I am not sure it is  worth.
You can reference to https://github.com/stefanofornari/beanshell/commit/2e2d645fb3dddc61c8c4cb91fede0002413c25bb for a tentative implementation that went in the direction you mentioned. Where I am stuck is that Interpreter.setOut() in combination with setConsole().
If we make setOut() delegate to console.setOut() we force the console to be assignable, which would break compatibility. If we do not delegate, then we can not use an inner default implementation, plus if a client calls setConsole with an assignable console the result will not be as expected... do you see what I mean?
PS: thanks for the git hints.

By "Console class is not required" I mean to say that it is not required to commit this PR... the Console class itself is very much needed. Just to make sure =)

@stefanofornari did you manage to remove the prompt method from Interpreter? Is everything still working then?
I am ready to complete this when you are.

@nickl- done.

Already merged, PR can be closed. see beanshell/beanshell@4d21e02
Also implemented the Interpreter changes, extended interface, inner class Interpreter.Console, non breaking fix. see beanshell/beanshell@9b4d2d7
@stefanofornari  Note: setConsole now also reinitialises the parser, perhaps this would work for your Ctrl+C implementation. Let me know....
Closed: PR merged


Game never ends

The game never ends, and when you should be dead, a whole bunch of blocks just keep spawning.

Fixed in 0.2.0


[Site] Fix keyboard accessibility for video modal

Related Issue
Fixes VSO 30862833
Description
The "Watch Video" button on the main site wasn't behaving well to keyboard navigation. In particular, keyboard focus wasn't going to the video modal. I fixed that as well as the accessibility of the close button.

How Verified

local build, devtools

Microsoft Reviewers: Open in CodeFlow

I'm not sure this is working for me at the test site link. When I launch the video i don't see the focus, and after pressing tab once it seems to go to the "Android" link on the background page:

I'm not sure this is working for me at the test site link. When I launch the video i don't see the focus, and after pressing tab once it seems to go to the "Android" link on the background page:

I'm not sure this is working for me at the test site link. When I launch the video i don't see the focus, and after pressing tab once it seems to go to the "Android" link on the background page:

weird -- it sort of half-works for me... pressing SPC before TAB works, but TAB first is broken. I'll fix :)

I'm not sure this is working for me at the test site link. When I launch the video i don't see the focus, and after pressing tab once it seems to go to the "Android" link on the background page:

weird -- it sort of half-works for me... pressing SPC before TAB works, but TAB first is broken. I'll fix :)

I have a route to a fix, but I won't be able to finish 'til tomorrow :)

I have a route to a fix, but I won't be able to finish 'til tomorrow :)

issue should be fixed -- had to trap the keyboard focus

issue should be fixed -- had to trap the keyboard focus

@RebeccaAnne -- fyi, should be fixed now :)

@RebeccaAnne -- fyi, should be fixed now :)


useAvatarRenderer is not function

Describe the bug
When we pull recent master, we can't find the useAvatarRenderer function on metaversefile-api.js that totum/type_templates/vrm.js is using.
To Reproduce
Steps to reproduce the behavior:

Pull current master branch
Run git pull --recurse-submodules
See error

Expected behavior
We should have useAvatarRenderer somewhere of the app
Screenshots

Desktop (please complete the following information):

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

Smartphone (please complete the following information):

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

Additional context
Add any other context about the problem here.

Also another point to be noted is that it doesn't appears on the deployed version of master (dev.webaverse.com) for some reason.

This looks like it's coming from a totum version from the labs.
Did webaverse/app:master accidentally get a labs version of totum:master? Totum currently cannot be updated in this repo, so any such changes need to be reverted.

I moved the totum version we need for labs to the labs branch, so feel free to revert the totum:main.

Also another point to be noted is that it doesn't appears on the deployed version of master (dev.webaverse.com) for some reason.

I am assuming the deployment failed and there is no ops person watching it.

The totum submodule bound with latest master apps doesn't have useAvatarRenderer() call. https://github.com/webaverse/totum/tree/293d7eedebff2ae58d28bfad910bf72f7a964b07
You shouldn't try totum main version unless app project is updated from labs.

Ok cool, seems it's a non-issue then. Closing per @jakezira's investigation. Thanks!

If it's still an issue let's set the webaverse/app packages/totum ref back to the working one.


Could you reupload your processed your "processed data"?

It seems that your "processed data" can no longer be downloaded from the link you provided. So could you reupload it, or could you share with me how to reconstruct them?

Hi @dialectics67, just updated the dropbox link. Also add a google drive link as an alternative.

Got it, thanks!


Not compatible with spring boot 2?

Hi, I have spring boot 2.0.1.RELEASE, spring cloud Finchley.RELEASE, kubernetes starter 0.2.0.RELEASE and the application fails to start due to:
Caused by: java.lang.ClassNotFoundException: org.springframework.cloud.client.discovery.AbstractDiscoveryLifecycle
I tried using other Finchley versions ( :man_facepalming: ) but without success.
However there is only one version in mvn central: https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-dependencies
Also spring cloud says:
Finchley builds and works with Spring Boot 2.0.x, and is not expected to work with Spring Boot 1.5.x.

The Dalston and Edgware release trains build on Spring Boot 1.5.x, and are not expected to work with Spring Boot 2.0.x.

Ref: http://projects.spring.io/spring-cloud/
Is there any way to make it working?

@sta-szek use 0.3.0.RC1 with spring boot 2.0.x & spring cloud Finchley.RELEASE

Thanks, I will do tomorrow and let you know!

@prafsoni
I need to do that also in plain spring application, do you have any clue for me what should I copy?
It is spring 4.x.
Or maybe are you aware of any existing project for that purpose? I searched and couldn't find.

@prafsoni I used 0.3.0.RC1 and locally: application builds and runs.
However I cannot build it on bamboo, because I got exception which I described in: https://github.com/fabric8io/kubernetes-client/issues/809

I tried to disable it during test phase but without luck:
spring:
  cloud:
    kubernetes:
      discovery:
        enabled: false
      enabled: false


Remove net::ERR_BLOCKED_BY_CLIENT error

Fixed the error, see issue #14

Sorry, the provided solution is not working. It does fix the loading error, but then the uservoiceTrigger directive is broken. Please remove this pull-request.


[Edit docs]

URL of the page to change: https://docs.stacks.co/docs/stacks-academy/whitepapers
Link to the Proof-of-transfer whitepaper is broken https://assets.website-files.com/5fcf9ac604d37418aa70a5ab/60072dbb32d416d6b3806935_5f1596b12bcc0800f3dcadcd_pox.pdf

AccessDenied
Access Denied
HW57RJX8Z3DHCN9S
zloZM8YI4RdPRzJUfIQdznH3bIODff4hRzaeljZiEisQlS7nQodkI/iDnONYPvWM7gxPtd20gmc8W89G+E9emA==

Removed the PoX link in favor of the new Stacks Nakamoto whitepaper link.


resources: distinguish "dte"/"dce" roles of UARTResource

This keeps the existing behavior, where pin directions default to DTE.
Most boards will have to override the role to be DCE, though, for correct operation.
Part of the fix for https://github.com/nmigen/nmigen-boards/issues/63.

Seeing that all existing boards use role="dce", and #65 introduces breaking changes anyway, perhaps it makes more sense to change default role to "dce"...

Should we even have a default role? I think FPGAs are equally often encountered as DCE and DTE depending on the board and what's connected to that UART.

I think I was looking at SPIResource, which has default role="host". I think SPI device role is also quite common, so by that logic SPIResource also shouldn't have a default role.
I can see the benefit of not having the default role, as it forces the user to think about the signal directions and the desired behavior.

If I make the role argument a required one, then it doesn't make sense to keep this change in a separate PR anymore — I would have to update the platform files to add the role argument, which is what I'm doing in #65. Closing this one, and will remove default value of role in #65.


DeepGL: Could not initialize class org.nd4j.linalg.factory.Nd4j

Hello! I am trying to run the example in: https://tbgraph.wordpress.com/2018/10/17/feature-extraction-on-a-peer-to-peer-network-with-deepgl-embedding-and-neo4j/
This example uses the Gnutella dataset.
At some point, the DeepGL algorithm is called:

CALL embedding.deepgl("Host","CONNECTION", {
nodeFeatures: ['pagerank'],
iterations: 2
})

But it returns the following error:

Neo.ClientError.Procedure.ProcedureCallFailed: Failed to invoke procedure embedding.deepgl: Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.nd4j.linalg.factory.Nd4j

I have tried putting the .jar inside the plugins folder, also, manually compiled the source and tried that. But something is not right.
@meltzerpete is there something that I am missing here?
Thanks for the help 👍

@xaviermerino can you post the details about what versions of ml-models/neo4j you are using?

@meltzerpete I am using Neo4j 3.5.2. And the ml-models version is 1.0.3 taken from https://github.com/neo4j-graph-analytics/ml-models/releases/tag/1.0.3
I am also running on Mac OS Mojave (10.14)
In the logs, the only warnings that I get are these:
log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.lib.MutableMetricsFactory).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/Users/xaviermerino/Library/Application%20Support/Neo4j%20Desktop/Application/neo4jDatabases/database-7296183e-d7d0-44b4-b2a1-2b10f8f70328/installation-3.5.2/lib/slf4j-nop-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/Users/xaviermerino/Library/Application%20Support/Neo4j%20Desktop/Application/neo4jDatabases/database-7296183e-d7d0-44b4-b2a1-2b10f8f70328/installation-3.5.2/plugins/neo4j-ml-models-1.0.3.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.helpers.NOPLoggerFactory]

After I import the Gnutella nodes and create all the relationships, I try to run DeepGL.
CALL embedding.deepgl("Host","CONNECTION", {
nodeFeatures: ['pagerank'],
iterations: 2
})

DeepGL says that you need Apache Commons Math. If I don't have commons-math3-3.6.1.jar in the plugins directory, then I get the following error:
Neo.ClientError.Procedure.ProcedureCallFailed: Failed to invoke procedure `embedding.deepgl`: Caused by: java.lang.UnsatisfiedLinkError: no openblas in java.library.path

(I don't know if this is related, but I do have openblas installed. I installed it via Homebrew and it is located in /usr/local/Cellar/openblas/0.3.7)
But if I do have commons-math3-3.6.1.jar in the plugins directory, then I get the following error:
Neo.ClientError.Procedure.ProcedureCallFailed: Failed to invoke procedure `embedding.deepgl`: Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.nd4j.linalg.factory.Nd4j

Do you have any idea of what could be going on? Seems to me like it might be a dependency issue. I just have no clue which dependency.
It is also worth noting that I had to disable the tests when compiling by source because otherwise it would fail.
Thank you so much for your time :)

Hey @xaviermerino it looks like I'm getting same issue. I'm getting the same errors word for word; I'm also on MacOS Mojave. You didn't happen to find a solution to this issue yet, I assume? I'll keep doing my own troubleshooting and I'll keep you posted should I find anything. I'd greatly appreciate an update to this if you find anything!

@xaviermerino @BLuchterhand I will check out the versions you have listed and take a look later today, but in the mean time do you have any other JARs in the plugins folder aside from the ml-models? The commons-math JAR should already beincluded in the ml-models JAR as far as I'm aware. The error could be the result of a dependency clash with another JAR also containing a different version.

@meltzerpete The only other plugins in that directory are:
Xaviers-MBP-189:plugins xaviermerino$ ls
README.txt
graphAlgorithms-<IP_ADDRESS>.jar
apoc-<IP_ADDRESS>.jar
graphQL-<IP_ADDRESS>.jar
commons-math3-3.6.1.jar

Thanks for looking into it!

I have tried the versions you have (although couldn't find graphAlgorithms-<IP_ADDRESS> so used <IP_ADDRESS>) and I can't reproduce the error. I don't have a mac though so running on ubuntu.
You should not require commons-math3 separately since it is included as a compile time dependency and should be contained within the ml-models JAR.
My first thoughts would be that you could try removing all other JARs leaving only the ml-models and graphAlgorithms ones and try that.
Otherwise, looking at the 'pom.xml' it seems the dependency on graphAlgorithms is for version <IP_ADDRESS>, so you could try using that JAR instead of the one you have, although that may not work with the database version you are using so you may also need to swap that to 3.4.11 which is also listed in the pom.
Beyond this I'm not really sure of what the problem could be. There may be some further information in the debug log (logs/debug.log) so if you could copy the output of that log from the time of database startup to the time of DeepGL: Could not initialize class org.nd4j.linalg.factory.Nd4j error and paste it here that might reveal something.

@meltzerpete Here is the last bit of logs/debug.log.  Before, I was disabling the tests to be able to get the source packaged. I decided to pay some attention to the tests and the DeepGL tests fail. Take a look:
Running embedding.DeepGLIntegrationTest
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.neo4j.io.pagecache.impl.SingleFilePageSwapper (file:/Users/xaviermerino/.m2/repository/org/neo4j/neo4j-io/3.4.11/neo4j-io-3.4.11.jar) to field sun.nio.ch.FileChannelImpl.positionLock
WARNING: Please consider reporting this to the maintainers of org.neo4j.io.pagecache.impl.SingleFilePageSwapper
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
result.next() = {features=[rbf_in_neighbourhood( sum_both_neighbourhood( OUT_DEGREE)), sum_out_neighbourhood( sum_out_neighbourhood( hadamard_out_neighbourhood( IN_DEGREE))), rbf_in_neighbourhood( sum_out_neighbourhood( BOTH_DEGREE)), rbf_in_neighbourhood( diffuse( sum_out_neighbourhood( BOTH_DEGREE))), sum_both_neighbourhood( diffuse( sum_out_neighbourhood( BOTH_DEGREE))), rbf_in_neighbourhood( sum_out_neighbourhood( OUT_DEGREE)), l1Norm_both_neighbourhood( rbf_both_neighbourhood( OUT_DEGREE)), rbf_in_neighbourhood( hadamard_out_neighbourhood( diffuse( rbf_out_neighbourhood( IN_DEGREE)))), sum_both_neighbourhood( rbf_in_neighbourhood( OUT_DEGREE)), l1Norm_both_neighbourhood( diffuse( sum_in_neighbourhood( OUT_DEGREE))), diffuse( mean_out_neighbourhood( rbf_both_neighbourhood( OUT_DEGREE))), rbf_both_neighbourhood( sum_out_neighbourhood( IN_DEGREE)), sum_both_neighbourhood( OUT_DEGREE), rbf_in_neighbourhood( hadamard_both_neighbourhood( rbf_both_neighbourhood( IN_DEGREE))), rbf_in_neighbourhood( sum_both_neighbourhood( BOTH_DEGREE)), l1Norm_both_neighbourhood( sum_out_neighbourhood( IN_DEGREE)), sum_in_neighbourhood( sum_out_neighbourhood( BOTH_DEGREE)), rbf_in_neighbourhood( rbf_both_neighbourhood( sum_out_neighbourhood( IN_DEGREE))), l1Norm_both_neighbourhood( diffuse( sum_out_neighbourhood( BOTH_DEGREE))), rbf_in_neighbourhood( rbf_both_neighbourhood( sum_both_neighbourhood( OUT_DEGREE))), diffuse( sum_in_neighbourhood( OUT_DEGREE)), rbf_both_neighbourhood( IN_DEGREE), sum_in_neighbourhood( BOTH_DEGREE), rbf_both_neighbourhood( OUT_DEGREE), l1Norm_both_neighbourhood( OUT_DEGREE), rbf_in_neighbourhood( OUT_DEGREE), diffuse( rbf_out_neighbourhood( IN_DEGREE)), rbf_both_neighbourhood( diffuse( rbf_out_neighbourhood( IN_DEGREE))), diffuse( sum_out_neighbourhood( IN_DEGREE)), mean_both_neighbourhood( sum_out_neighbourhood( sum_out_neighbourhood( BOTH_DEGREE))), BOTH_DEGREE, rbf_in_neighbourhood( diffuse( rbf_out_neighbourhood( IN_DEGREE))), sum_both_neighbourhood( BOTH_DEGREE), l1Norm_both_neighbourhood( rbf_both_neighbourhood( sum_out_neighbourhood( IN_DEGREE))), l1Norm_both_neighbourhood( rbf_both_neighbourhood( sum_both_neighbourhood( OUT_DEGREE))), l1Norm_both_neighbourhood( rbf_in_neighbourhood( OUT_DEGREE)), l1Norm_in_neighbourhood( sum_in_neighbourhood( BOTH_DEGREE)), diffuse( sum_out_neighbourhood( BOTH_DEGREE)), sum_out_neighbourhood( l1Norm_both_neighbourhood( OUT_DEGREE)), sum_out_neighbourhood( IN_DEGREE), sum_out_neighbourhood( diffuse( sum_out_neighbourhood( BOTH_DEGREE))), hadamard_out_neighbourhood( IN_DEGREE), sum_in_neighbourhood( rbf_out_neighbourhood( BOTH_DEGREE)), sum_out_neighbourhood( sum_out_neighbourhood( BOTH_DEGREE)), sum_out_neighbourhood( hadamard_out_neighbourhood( IN_DEGREE)), mean_both_neighbourhood( rbf_in_neighbourhood( OUT_DEGREE)), rbf_in_neighbourhood( sum_out_neighbourhood( diffuse( sum_out_neighbourhood( BOTH_DEGREE)))), sum_out_neighbourhood( BOTH_DEGREE), sum_out_neighbourhood( sum_out_neighbourhood( sum_out_neighbourhood( IN_DEGREE))), sum_out_neighbourhood( sum_out_neighbourhood( OUT_DEGREE)), sum_out_neighbourhood( sum_out_neighbourhood( IN_DEGREE)), rbf_out_neighbourhood( BOTH_DEGREE), l1Norm_both_neighbourhood( l1Norm_both_neighbourhood( diffuse( sum_out_neighbourhood( BOTH_DEGREE)))), rbf_out_neighbourhood( rbf_in_neighbourhood( OUT_DEGREE)), sum_out_neighbourhood( diffuse( rbf_out_neighbourhood( IN_DEGREE))), hadamard_out_neighbourhood( sum_both_neighbourhood( BOTH_DEGREE)), sum_out_neighbourhood( sum_out_neighbourhood( sum_out_neighbourhood( BOTH_DEGREE))), l1Norm_in_neighbourhood( sum_out_neighbourhood( sum_out_neighbourhood( IN_DEGREE))), l1Norm_in_neighbourhood( hadamard_out_neighbourhood( sum_both_neighbourhood( BOTH_DEGREE))), rbf_out_neighbourhood( sum_both_neighbourhood( BOTH_DEGREE)), rbf_in_neighbourhood( rbf_in_neighbourhood( diffuse( sum_out_neighbourhood( BOTH_DEGREE)))), sum_out_neighbourhood( rbf_in_neighbourhood( sum_in_neighbourhood( BOTH_DEGREE))), sum_out_neighbourhood( rbf_in_neighbourhood( OUT_DEGREE)), hadamard_both_neighbourhood( rbf_both_neighbourhood( IN_DEGREE)), rbf_both_neighbourhood( sum_both_neighbourhood( OUT_DEGREE)), sum_out_neighbourhood( rbf_out_neighbourhood( BOTH_DEGREE)), rbf_both_neighbourhood( sum_both_neighbourhood( BOTH_DEGREE)), rbf_in_neighbourhood( rbf_in_neighbourhood( sum_out_neighbourhood( BOTH_DEGREE))), rbf_in_neighbourhood( sum_out_neighbourhood( diffuse( rbf_out_neighbourhood( IN_DEGREE)))), sum_out_neighbourhood( OUT_DEGREE), rbf_both_neighbourhood( mean_both_neighbourhood( rbf_in_neighbourhood( OUT_DEGREE))), rbf_both_neighbourhood( sum_out_neighbourhood( sum_out_neighbourhood( IN_DEGREE))), OUT_DEGREE, rbf_both_neighbourhood( hadamard_both_neighbourhood( rbf_both_neighbourhood( IN_DEGREE))), rbf_both_neighbourhood( rbf_both_neighbourhood( sum_out_neighbourhood( IN_DEGREE))), hadamard_out_neighbourhood( diffuse( sum_out_neighbourhood( BOTH_DEGREE))), IN_DEGREE, hadamard_out_neighbourhood( diffuse( rbf_out_neighbourhood( IN_DEGREE))), max_both_neighbourhood( rbf_out_neighbourhood( BOTH_DEGREE)), rbf_in_neighbourhood( sum_in_neighbourhood( BOTH_DEGREE))], nodes=7, loadMillis=42, writeProperty=embedding, writeMillis=12, computeMillis=1573, embeddingSize=80, numberOfLayers=4}
result.next() = {nodeId=0, embedding=[0.0, 1.0, 0.0]}
result.next() = {nodeId=1, embedding=[0.0, 0.0, 1.0]}
result.next() = {nodeId=2, embedding=[0.0, 1.0, 1.0]}
result.next() = {nodeId=3, embedding=[0.0, 2.0, 2.0]}
result.next() = {nodeId=4, embedding=[1.0, 0.0, 0.0]}
result.next() = {nodeId=5, embedding=[1.0, 0.0, 0.0]}
result.next() = {nodeId=6, embedding=[2.0, 0.0, 0.0]}
summary = {features=[IN_DEGREE, diffuse( sum_out_neighbourhood( BOTH_DEGREE))], nodes=7, loadMillis=2, writeProperty=foo, writeMillis=2, computeMillis=81, embeddingSize=2, numberOfLayers=2}
embeddings = [0.0, 2.0]
embeddings = [0.0, 0.0]
embeddings = [0.0, 1.0]
embeddings = [0.0, 0.0]
embeddings = [1.0, 0.0]
embeddings = [1.0, 0.0]
embeddings = [2.0, 1.0]
Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 6.451 sec
Running embedding.PruningTest
Embedding:
[[    1.0000,    2.0000,    3.0000,    9.0000],
 [    2.0000,    3.0000,    4.0000,    9.0000],
 [    3.0000,    4.0000,    5.0000,    8.0000]]
Features:
[IN_DEGREE, OUT_DEGREE, BOTH_DEGREE, MEAN_BOTH_NEIGHBOURHOOD]
0 -> 0
2 -> 1
4 -> 2
10 -> 0
12 -> 1
14 -> 2
16 -> 1
columns =
[[         0,    1.0000,         0],
 [    1.0000,         0,         0],
 [    1.0000,    1.0000,         0],
 [    2.0000,    2.0000,         0],
 [         0,         0,    1.0000],
 [         0,         0,    1.0000],
 [         0,         0,    2.0000]]
2019-10-09 15:53:21.542+0000 INFO  [main] pruning 100% Feature Pruning: Creating features graph
2019-10-09 15:53:21.544+0000 INFO  [main] pruning 100% Creating IdMap - 7 nodes
2019-10-09 15:53:21.544+0000 INFO  [main] pruning 100% Created IdMap
2019-10-09 15:53:21.545+0000 INFO  [main] pruning 100% Allocation: 0 Bytes
2019-10-09 15:53:21.545+0000 INFO  [main] pruning 100% Allocation: 192 Bytes
2019-10-09 15:53:21.545+0000 INFO  [main] pruning 100% Size of combined embedding: [3, 7]
2019-10-09 15:53:21.545+0000 INFO  [main] pruning 100% Number of prev features: 3
2019-10-09 15:53:21.545+0000 INFO  [main] pruning 100% Creating AdjacencyMatrix
2019-10-09 15:53:21.545+0000 INFO  [main] pruning 100% Adding columns to array
2019-10-09 15:53:21.546+0000 INFO  [main] pruning 100% Added columns to array
2019-10-09 15:53:21.546+0000 INFO  [main] pruning 100% Populating adjacency matrix 2
2019-10-09 15:53:21.547+0000 INFO  [main] pruning 100% Populated adjacency matrix (new): 1 ms
2019-10-09 15:53:21.547+0000 INFO  [main] pruning 100% Created Adjacency Matrix
2019-10-09 15:53:21.547+0000 INFO  [main] pruning 100% Feature Pruning: Created features graph
2019-10-09 15:53:21.547+0000 INFO  [main] pruning 100% Feature Pruning: Finding features to keep
2019-10-09 15:53:21.548+0000 INFO  [main] pruning 100% Feature Pruning: Found features to keep
2019-10-09 15:53:21.548+0000 INFO  [main] pruning 100% Feature Pruning: Pruning embeddings
2019-10-09 15:53:21.548+0000 INFO  [main] pruning 100% Feature Pruning: Pruned embeddings
scores =
[[    1.0000,         0,         0,         0],
 [         0,    1.0000,    0.2500,    0.2500],
 [         0,    0.2500,    1.0000,    0.7500],
 [         0,    0.2500,    0.7500,    1.0000]]
adjacency matrix with self-loops =
[[    1.0000,         0,         0,         0],
 [         0,    1.0000,         0,         0],
 [         0,         0,    1.0000,    1.0000],
 [         0,         0,    1.0000,    1.0000]]
adjacency matrix with self loops removed =
[[         0,         0,         0,         0],
 [         0,         0,         0,         0],
 [         0,         0,         0,    1.0000],
 [         0,         0,    1.0000,         0]]
Tests run: 7, Failures: 2, Errors: 0, Skipped: 0, Time elapsed: 0.004 sec <<< FAILURE!
shouldOnlyKeepFeaturesThatAddSomethingUnique(embedding.PruningTest)  Time elapsed: 0.001 sec  <<< FAILURE!
java.lang.AssertionError: expected:<[9.0000,
 9.0000,
 8.0000]> but was:<[[    1.0000,    2.0000,    3.0000,    9.0000],
 [    2.0000,    3.0000,    4.0000,    9.0000],
 [    3.0000,    4.0000,    5.0000,    8.0000]]>
	at org.junit.Assert.fail(Assert.java:88)
	at org.junit.Assert.failNotEquals(Assert.java:834)
	at org.junit.Assert.assertEquals(Assert.java:118)
	at org.junit.Assert.assertEquals(Assert.java:144)
	at embedding.PruningTest.shouldOnlyKeepFeaturesThatAddSomethingUnique(PruningTest.java:246)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
	at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
	at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)

pruneEmbeddingsAndFeatures(embedding.PruningTest)  Time elapsed: 0.001 sec  <<< FAILURE!
arrays first differed at element [3]; expected:<MEAN_OUT_NEIGHBOURHOOD> but was:<MEAN_BOTH_NEIGHBOURHOOD>
	at org.junit.internal.ComparisonCriteria.arrayEquals(ComparisonCriteria.java:55)
	at org.junit.Assert.internalArrayEquals(Assert.java:532)
	at org.junit.Assert.assertArrayEquals(Assert.java:283)
	at org.junit.Assert.assertArrayEquals(Assert.java:298)
	at embedding.PruningTest.pruneEmbeddingsAndFeatures(PruningTest.java:208)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
	at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
	at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
Caused by: java.lang.AssertionError: expected:<MEAN_OUT_NEIGHBOURHOOD> but was:<MEAN_BOTH_NEIGHBOURHOOD>
	at org.junit.Assert.fail(Assert.java:88)
	at org.junit.Assert.failNotEquals(Assert.java:834)
	at org.junit.Assert.assertEquals(Assert.java:118)
	at org.junit.Assert.assertEquals(Assert.java:144)
	at org.junit.internal.ExactComparisonCriteria.assertElementsEqual(ExactComparisonCriteria.java:8)
	at org.junit.internal.ComparisonCriteria.arrayEquals(ComparisonCriteria.java:53)
	... 33 more

In the end, it ends up summarizing:
Failed tests:   shouldOnlyKeepFeaturesThatAddSomethingUnique(embedding.PruningTest): expected:<[9.0000, (..)
  pruneEmbeddingsAndFeatures(embedding.PruningTest): arrays first differed at element [3]; expected:<MEAN_OUT_NEIGHBOURHOOD> but was:<MEAN_BOTH_NEIGHBOURHOOD>

Do you think this might be related @meltzerpete?

@xaviermerino I think the failed tests in this case is unrelated, as the error in the tests would not cause the failed dependency error you are getting. I think the code and tests may have changed somewhat since I worked on this, so without looking into the code I couldn't say what the cause of these failures are.
As for the debug log, this looks rather curious.. assuming this is the log when you have all of the  JARs you listed above in the plugins folder, do you get the same when only the graphAlgorithms and ml-models JARs are in there?

@meltzerpete I really don't know what's going on. I was using Neo4j Desktop to install this and I decided to use the Community Server 3.5.11 instead to give it a try.
My neo4j.conf file has the following entries:
dbms.security.procedures.unrestricted=apoc.*,algo.*,regression.*, embedding.*
dbms.security.procedures.whitelist=algo.*,apoc.*,regression.*, embedding.*

Then, you can find the following plugins in $NEO4J_HOME/plugins:
README.txt
graph-algorithms-<IP_ADDRESS>.jar
apoc-<IP_ADDRESS>-all.jar
neo4j-ml-models-1.0.3.jar

In theory, this should work and all the dependencies should be within neo4j-ml-models-1.0.3.jar. Now, I wonder if it has something to do with other dependencies that are not listed inside ml-models. In issue #9, @mneedham said that you need to have the graph-algorithms installed in order to run the embedding procedures.
But with my new environment, I don't even see the deepGL procedures. It does not matter whether I package it or download the prepackaged jar. I do get to see the regression procedures. I also see the deepWalk ones. However, if I try to run them, I get:
Neo.ClientError.Procedure.ProcedureCallFailed: Failed to invoke procedure `embedding.deepWalk.stream`: Caused by: java.lang.NoSuchMethodError: org.neo4j.graphalgo.core.GraphLoader.withoutNodeProperties()Lorg/neo4j/graphalgo/core/GraphLoader;

If you check the DeepWalkProc.java you'll then see that it attempts to import that:
import org.neo4j.graphalgo.api.Graph;
import org.neo4j.graphalgo.api.GraphFactory;
import org.neo4j.graphalgo.core.GraphLoader;

I went to take a look at another file, this time DeepGL.java and found this:
import org.neo4j.graphalgo.core.heavyweight.HeavyGraph;
import org.neo4j.graphalgo.core.utils.ParallelUtil;
import org.neo4j.graphalgo.core.utils.ProgressLogger;

Now, checking at the release notes from Graph Algorithms 3.5.11 it says:

Heavy Graph has been removed from the library:  In the algorithm API, using graph:'heavy' will default to a Huge graph, and and the default in memory graph representation for algorithms has been moved to heavy. All algorithms work with Heavy graph; the only visible change to users may be slight differences in scoring calculations for algorithms like pageRank (due to using double type precision).

@mneedham Do you think the changes could have broken ml-models? If so, which is the version that you recommend using? In essence, I am trying to do something similar to your tutorial.
I see in the pom.xml file the following:
<neo4j.version>3.4.11</neo4j.version>
<neo4j.graphalgos.version><IP_ADDRESS></neo4j.graphalgos.version>
...
...
        <dependency>
            <groupId>org.neo4j</groupId>
            <artifactId>neo4j</artifactId>
            <version>${neo4j.version}</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>org.neo4j</groupId>
            <artifactId>graph-algorithms-algo</artifactId>
            <version>${neo4j.graphalgos.version}</version>
            <scope>provided</scope>
        </dependency>

I don't know if issues #14 #10 #9 might be related to this. Everyone seems to be having the same problems. Which makes me wonder what @tomasonjo did to get it working in #7.
@meltzerpete @mneedham Sorry to be taking too much of your time. I just don't know where I'm going wrong.

@xaviermerino I'm afraid I have not been following the changes to graphAlgorithms or ml-models so I'm really not sure about any breaking changes that may or may not have been made.. @mneedham would be the best to comment on this.
As for the pom, the <scope>provided</scope> line in the graph-algorithms-algo dependency means that the JAR is expected to be provided externally at runtime, so not included in the ml-models JAR. This is why you need the graph algos also installed. But the version it is expecting according to this pom is <IP_ADDRESS>, not the version you have installed. Whether or not it could still work with this newer version I'm not sure. Sorry I can't be of more help on this matter. The best I can offer is to say try and match the exact version of the neo4j (3.4.11) (you can select this when you create a new database), match the version of the graph algo JAR listed in the pom (<IP_ADDRESS>), put it in the plugins folder, and remove all other JARs . You can get previous version of the graph algos JAR here.

@meltzerpete @mneedham I followed your advice and downloaded an earlier version of Neo4j. Could not download the 3.4.11 community server (I can't seem to find it) but I ended up with 3.4.16. I ended up using version 3.4.7 of the graph algorithms library as you suggested.
And I am still having the same problem.
Neo.ClientError.Procedure.ProcedureCallFailed: Failed to invoke procedure `embedding.deepgl.stream`: Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.nd4j.linalg.factory.Nd4j

I am out of ideas.
@meltzerpete Do you know if there is another implementation of DeepGL? I tried searching GitHub but yours seems to be the only one so far. I'm trying to compare it with RandomWalk and Node2Vec but I can't seem to find another implementation.


Support for nftables

At the moment only iptables are supported and it would be nice if nftables were supported as well.

@DasSkelett maybe we can switch to use netlink for nftables programming that's even possible on machines which don't have nftables binaries.


SdkHarnessManager Singleton Implementation

Still left to do:

[x] rebase WIP commits for coherence
[x] many docstrings
[x] unit tests

No guarantees that this isn't broken, but now you can hack on it too.

cc: @tgroh

Finished docstrings and unit tests.

Okay.  Updated commit to reflect the requested changes (and did a more thorough lint pass).

I still see a few unresolved comments; you may have forgotten to push your latest changes. Specifically, we need locking around calls to the SingletonSdkHarnessManager.
Also, sorry for the churn, but would you mind rebasing off of flink-portable-runner? I've just merged in changes from https://github.com/apache/beam/pull/4589, which provide the upstream EnvironmentManager interface. Note that we ended up dropping the concrete docker manager implementation, so we'll need to stub this out for now.

I'll do the rebase in a sec, but I've followed up on all visible, "unresolved" comments with an explicit resolution.

Strangely, your comments and changes appear now. Perhaps I needed to refresh.

Rebase complete.

We still need to figure out how EnvironmentSession interacts with RemoteEnvironment and whether the additional functionality here should be instead added to RemoteEnvironment. We can do that in a follow-up though.


Query about pull requests

Greetings, We ( group of 11 members ) have a software development lab in which we require to work as a team and contribute to a live open source project. We need to report instructor with our progress every week, so if our codes clear your tests will you accept our pull requests ?

@MinusRF we can't guarantee that we'll merge all PRs that pass tests. If the changes don't align with our goals they won't be merged.


not installing on Mac

Issue Report Checklist

[ ] Searched the issues page for similar reports
[ ] Read the relevant sections of the Spyder Troubleshooting Guide and followed its advice
[ ] Reproduced the issue after updating with conda update spyder (or pip, if not using Anaconda)
[ ] Could not reproduce inside jupyter qtconsole (if console-related)
[ ] Tried basic troubleshooting (if a bug/error)

[ ] Restarted Spyder
[ ] Reset preferences with spyder --reset
[ ] Reinstalled the latest version of Anaconda
[ ] Tried the other applicable steps from the Troubleshooting Guide

[ ] Completed the Problem Description, Steps to Reproduce and Version sections below

Problem Description
What steps reproduce the problem?

What is the expected output? What do you see instead?
Paste Traceback/Error Below (if applicable)

PASTE TRACEBACK HERE

Versions

Spyder version:
Python version:
Qt version:
PyQt version:
Operating System name/version:

Dependencies

PASTE DEPENDENCIES HERE

Hey @lewisturner729, thanks for reporting. I have a couple of questions for you to better understand your problem:

What's your macOS version?
Do you have an Intel or M1/M2, etc chip?

Hi there,
Thanks for replying, I’m on OS 15.1.1 running intel core i5

On 21 Nov 2024, at 15:35, Carlos Cordoba @.***> wrote:
Hey @lewisturner729 https://github.com/lewisturner729, thanks for reporting. I have a couple of questions for you to better understand your problem:
What's your macOS version?
Do you have an Intel or M1/M2, etc chip?
—
Reply to this email directly, view it on GitHub https://github.com/spyder-ide/spyder/issues/23041#issuecomment-2491560190, or unsubscribe https://github.com/notifications/unsubscribe-auth/BND4QA7SJDFNZDYJUK6C5LT2BX4ULAVCNFSM6AAAAABSHE254GVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIOJRGU3DAMJZGA.
You are receiving this because you were mentioned.

Hi Carlos
Thank you, I did actually try both and they both came up with the same error, however an anaconda technician suggested I enter in some commands in the Mac terminal which has fixed the issue
Many thanks,
Lewis

On 21 Nov 2024, at 16:17, Carlos Cordoba @.***> wrote:
Ok, thanks for the extra info @lewisturner729 https://github.com/lewisturner729!
So, the problem is you downloaded our M1 installer but you're using an Intel chip.
Please go to our Download page:
https://www.spyder-ide.org/download/
and select the Intel installer. That should work as expected.
—
Reply to this email directly, view it on GitHub https://github.com/spyder-ide/spyder/issues/23041#issuecomment-2491679351, or unsubscribe https://github.com/notifications/unsubscribe-auth/BND4QA3UXMYGGI6RMZRLDEL2BYBQPAVCNFSM6AAAAABSHE254GVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIOJRGY3TSMZVGE.
You are receiving this because you were mentioned.

Great! Could you let us know what fixed the problem for you?
Maybe that could be useful for others.

Thanks! It seems you didn't have own permissions over several files in your user home directory, which are necessary to run the installer.
That's really odd but fortunately you found someone that came up with that idea (it didn't occur to me).


About the license of this repository.

Thank you for sharing your wonderful achievements.
What is the license for this repository?

您好，邮件已收到，我将尽快处理。

Hey, I am also interested in which license this project has. Unfortunately I can't translate the last comment, song any statement in English would be appreciated! Thank you :)

您好，邮件已收到，我将尽快处理。

This project is released under the MIT license.

Thank you for answering.


wip: test to see what errors are happening in the last updated plugin

Image optimization came back clean!
Vuepress build was successful!
No markdown files were changed, so no page checks were run!

Image optimization came back clean!
Vuepress build was successful!
No markdown files were changed, so no page checks were run!

Image optimization came back clean!
Vuepress build was successful!
No markdown files were changed, so no page checks were run!

Image optimization came back clean!
Vuepress build was successful!
No markdown files were changed, so no page checks were run!


Update dependencies

Resolved issues

Fixes:

https://github.com/digitalfabrik/integreat-cms/security/dependabot/39
https://github.com/digitalfabrik/integreat-cms/security/dependabot/40
https://github.com/digitalfabrik/integreat-cms/security/dependabot/41

Pull Request Review Guidelines

Looks good! Question about the aria-labels: Are these just added to prevent linter complaints? I'm asking because I'm pretty confident we have a lot more buttons 😄

Yes, exactly, there is this new rule jsx-a11y/control-has-associated-label which only checks jsx components.
But in the end, this also makes sense for html buttons that only have an icon as content without any text, so maybe we should open a new issue for this?


sql: EXECUTE statement

Need .md file and grammar diagrams.
This goes with PREPARE and DEALLOCATE.

Closing as dup of #1333.


Update cloud thirdparty versions to latest

PR description
The documentation is updated for the latest third-party cloud services version. Modified versions in the text and pictures in the guide. Kafka 2.6.x is deprecated in AWS, PostgreSQL 12.x will be EOL soon.
Kafka 2.6.x -> 3.7.x
Postgres 12.x -> 16.x
Redis 6.x -> 7.x
Link checker
The links will be checked by the build agent automatically once you create or update your PR.
You can use the following command to check the broken links locally.
docker run --rm -it --network=host --name=linkchecker ghcr.io/linkchecker/linkchecker --check-extern --no-warnings http://<IP_ADDRESS>:4000/

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@dealnat  - thank you!


Array.length type guard for array spreading

TypeScript Version:  3.3.0-dev.20181204

Search Terms: array length type guard spread
Code
const timeString = '09:00';
const date = new Date();
const timeParts = timeString.split(':').map((part) => parseInt(part, 10));
if (timeParts.length > 0) {
    date.setHours(...timeParts);
}

Expected behavior: No errors
Actual behavior: TS2556: Expected 1-4 arguments, but got 0 or more.
Playground Link: https://www.typescriptlang.org/play/#src=const timeString %3D '09%3A00'%3B
const date %3D new Date()%3B
const timeParts %3D timeString.split('%3A').map((part) %3D> parseInt(part%2C 10))%3B%0D%0Aif%20(timeParts.length%20%3E%200)%20%7B%0D%0A%20%20%20%20date.setHours(...timeParts)%3B%0D%0A%7D%0D%0A
Related Issues: None

@weswigham Is that "Awaiting More Feedback" directed towards me? Of course there are a couple of workarounds. It would just be nice for the language/type system to be smart enough by itself.

Same issue here:
function looper(arg1: string, ...args:string[]) {
  console.log(arg1);
  if (args.length) return;
  looper(...args);
}

(parameter) args: string[]
Expected at least 1 arguments, but got 0 or more.

Although in my example there is a simple workaround since i only use one type:
function looperWorkaround(arg1: string, arg2?: string, ...args:string[]) {
  console.log(arg1);
  if (!arg2) return;
  looperWorkaround(arg2, ...args);
}

I could see this feature providing a lot of safety. And it's not only limited to spread use cases. The way I see it is the array type would be narrowed to a tuple having the number of elements given in the expression. It could only really work given a constant number, but that'd be good enough in a lot of cases. Here's what I think the types would be after narrowing:
if (a.length > 1) {
    a; // [any, any, ...any[]]
}

if (a.length >= 1) {
    a; // [any, ...any[]]
}

if (a.length === 1) {
    a; // [any]
}

if (a.length === 0) {
    a; // []
}

if (a.length > 1) {
    a; // [any, any, ...any[]]
}

if (a.length < 0) {
    a; // never
}

if (a.length === -1) {
    a; // never
}

I also may be stretching or missing something here, but it might also have the consequence of allowing compile time construction of arbitrary length tuples. For example if you were to create a function like:
function makeArray<T extends number>(n: T) {
    const newArr = new Array(n);
    if (newArr.length === n) { // checker would need to use the type of `n` to get the length of the tuple type
        return newArr;
    }
    // This should be unreachable but seems out of scope of this issue
}

const tupleOf3 = makeArray(3);

Provided that T is a constant number (as opposed to number, not sure of the terminology here...) then I believe that the type that could come out of makeArray(3) would be a [any, any, any].

@bopandrade

Although in my example there is a simple workaround since i only use one type:
function recWorkaround(arg1: string, arg2?: string, ...args:string[]) {
  console.log(arg1);
  if (!arg2) return;
  recWorkaround(arg2, ...args);
}

I can call your function like this
recWorkaround(str1, undefined, str2, str3, str4)

I can call your function like this
recWorkaround(str1, undefined, str2, str3, str4)

While this is true it didnt really apply for my case as it was an internal function this scenario wouldnt happen unless someone purposely did it. In any case, it wouldnt be hard to assert that args should only be truthy if arg2 is truthy.

it wouldnt be hard to assert that args should only be truthy if arg2 is truthy.

That would mean adding a runtime check and a runtime test.

#38000 is declined as "too complex"; is this one also too complex or is there some relevant difference here?


[red-knot] ensure that type inference on a high-durability file is also high durability

If we can ensure this is the case, it should help our incremental inference perform better.
One issue here is that low-durability files (in your workspace) can shadow high-durability files (in the stdlib), and in principle this could impact the type inference in the stdlib. This means that any resolve_module is (I think) currently a low-durability query, because it will always access some low-durability import search paths.
If it helps performance enough, we could decide that we never want type inference within the stdlib to respect shadowed stdlib modules, so that we can keep type inference of the stdlib all high-durability, and not need to revalidate it in depth on incremental changes to user code.
This maybe should go hand-in-hand with always warning or erroring if a user module does shadow a stdlib module.

So, the issue here is that the high durability of stdlib files doesn't yield its full potential because the type inference result of any module with imports depends on resolve_module which always has durability low (because we first start resolving local paths)?
One alternative is to give File::status a higher durability. That's the only field resolve_module depends on.
Another alternative is to move the module resolver out of salsa and model Modules as inputs. But that has obvious downsides.

So, the issue here is that the high durability of stdlib files doesn't yield its full potential because the type inference result of any module with imports depends on resolve_module which always has durability low (because we first start resolving local paths)?

Yes, that's right.

One alternative is to give File::status a higher durability. That's the only field resolve_module depends on.

Wouldn't that mean that adding or removing a file in your workspace root would require re-checking all high-durability queries? I guess maybe that could be fine, assuming adding or removing files doesn't happen that often.
The solution I was proposing was that we would instead have imports from the stdlib not even consider search paths other than the stdlib. Which is technically wrong (since shadowing is possible), but practically right if we consider shadowing the stdlib itself to be an error (which I think pyright at least does.)

Wouldn't that mean that adding or removing a file in your workspace root would require re-checking all high-durability queries? I guess maybe that could be fine, assuming adding or removing files doesn't happen that often.

Yes, it doesn't solve the problem entirely, but it might be a desired change anyway because it avoids a deep-verify for all third-party code whenever a first-party module is changed.

The solution I was proposing was that we would instead have imports from the stdlib not even consider search paths other than the stdlib. Which is technically wrong (since shadowing is possible), but practically right if we consider shadowing the stdlib itself to be an error (which I think pyright at least does.)

That makes sense. I think we may want to do both where what I suggested reduces deep-verification for third-party code and your suggestion avoids deep-verification for stdlib modules. The only thing we need to be mindful of is that forbidding stdlib modules altogether may be overly-strict for some projects.


Fix weak-vtables warning

Fixes #4087

coverage: 100.0%. remained the same
when pulling 3e0d5627339cdd7d8c9f54cde44fae8335fa6a1d on fix-weak-vtables
into 64f68dc5635b821ef93996acd5e391792814c07d on develop.

I forgot to also remove the previous fixes in the test cases and add a pragma.

Do we need to worry about someone building the tests with different warning flags?  I would hope that we'd be able to say "the tests are built with exactly these flags".

Do we need to worry about someone building the tests with different warning flags? I would hope that we'd be able to say "the tests are built with exactly these flags".

In the end, I did not suppress the warning, but could fix it by completing the rule of five.


Support to avoid Overloads allowing Functions with Parameters with default values

In the codeunits of libraries within BC it is more and more common to find overloaded Functions with different signature in their API.
Sometimes, this also means that the previous one is marked as obsolete to eliminate it completely at some point.
The RecordRef and the Interfaces have been a step forward in the right direction, but it is necessary to continue...
I think it would be a good point to support Functions with optional parameters that take default values as is already done in other programming languages such as Python or Typescript.
procedure myOverloadedFunction(param1: Variant; optional param2 := 'hello' : Text; optional param3 := 10.5 : Decimal)
var
begin
    // do something
end;

Agree, also we have some wierd "overload"
https://docs.microsoft.com/en-us/dynamics365/business-central/dev-itpro/developer/methods/devenv-overload-method

Agree, also we have some wierd "overload"
https://docs.microsoft.com/en-us/dynamics365/business-central/dev-itpro/developer/methods/devenv-overload-method

What is "weird" about that link? What should change? The suggested overloading doesn't look weird to me (at least in a language that lacks template functions)

What is "weird" about that link? What should change? The suggested overloading doesn't look weird to me (at least in a language that lacks template functions)

My suggeston is about to avoid obsolescense of Funtions only because we would need to add 1 new parameter for example... It's happening now in BC v17 standard code and I think there are better tecnichal solutions implemented in other languages.
Regarding the link above, I think all DataTypes should have nativelly the capacity of transform to Strings, maybe, implementing its own method like Number.ToText(decimals) , Date.ToText(format) and so on... generating an homogeneous API.

My suggeston is about to avoid obsolescense of Funtions only because we would need to add 1 new parameter for example... It's happening now in BC v17 standard code and I think there are better tecnichal solutions implemented in other languages.
Regarding the link above, I think all DataTypes should have nativelly the capacity of transform to Strings, maybe, implementing its own method like Number.ToText(decimals) , Date.ToText(format) and so on... generating an homogeneous API.

Please go ahead and post this to our Ideas forum at https://aka.ms/BusinessCentralideas, or vote up the idea if its already there. We're constantly monitoring top Ideas and will consider them for a future release. This is a bigger feature and we need to weight it against other features suggested for BC.

Please go ahead and post this to our Ideas forum at https://aka.ms/BusinessCentralideas, or vote up the idea if its already there. We're constantly monitoring top Ideas and will consider them for a future release. This is a bigger feature and we need to weight it against other features suggested for BC.


the error about utils

when i run generate_images.py. it shows ModuleNotFoundError: No module named 'Utils'
how can i solve this？ thank you

Copy the Utils folder into the folder where your source code is present.


Please help me

SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes (SQL: alter table visits add unique visits_ip_visitable_id_visitable_type_d   ate_unique(ip, visitable_id, visitable_type, date))

This is actually a MySQL issue, not related to the package.


Empty gfa file after miniasm run

Hello,
I have run the following commands:
minimap2 -x ava-ont -t32  reads.fastq reads.fastq -K5M | gzip -1 > n_reads.paf.gz
[M::mm_idx_gen::0.7540.99] collected minimizers
[M::mm_idx_gen::0.8582.63] sorted minimizers
[M::main::0.8582.63] loaded/built the index for 20814 target sequence(s)
[M::mm_mapopt_update::0.8822.59] mid_occ = 1971
[M::mm_idx_stat] kmer size: 15; skip: 5; is_hpc: 0; #seq: 20814
[M::mm_idx_stat::0.8982.56] distinct minimizers: 925688 (78.09% are singletons); average occurrences: 5.356; average spacing: 2.977
[M::worker_pipeline::46.2509.91] mapped 7168 sequences
[M::worker_pipeline::68.9709.32] mapped 7007 sequences
[M::worker_pipeline::86.2197.52] mapped 6639 sequences
[M::main] Version: 2.17-r941
[M::main] CMD: minimap2 -x ava-ont -t32 -K5M reads.fastq reads.fastq
[M::main] Real time: 86.242 sec; CPU: 648.232 sec; Peak RSS: 1.735 GB
miniasm -f reads.fastq n_reads.paf.gz > n_reads.gfa
[M::main] ===> Step 1: reading read mappings <===
[M::ma_hit_read::31.0881.00] read 24248695 hits; stored 3 hits and 3 sequences (8137 bp)
[M::main] ===> Step 2: 1-pass (crude) read selection <===
[M::ma_hit_sub::31.1331.00] 0 query sequences remain after sub
[M::ma_hit_cut::31.1331.00] 0 hits remain after cut
[M::ma_hit_flt::31.1331.00] 0 hits remain after filtering; crude coverage after filtering: -nan
[M::main] ===> Step 3: 2-pass (fine) read selection <===
[M::ma_hit_sub::31.1331.00] 0 query sequences remain after sub
[M::ma_hit_cut::31.1331.00] 0 hits remain after cut
[M::ma_hit_contained::31.133*1.00] 0 sequences and 0 hits remain after containment removal
[M::main] ===> Step 4: graph cleaning <===
[M::ma_sg_gen] read 0 arcs
[M::main] ===> Step 4.1: transitive reduction <===
[M::asg_arc_del_trans] transitively reduced 0 arcs
[M::main] ===> Step 4.2: initial tip cutting and bubble popping <===
[M::asg_cut_tip] cut 0 tips
[M::asg_arc_del_multi] removed 0 multi-arcs
[M::asg_arc_del_asymm] removed 0 asymmetric arcs
[M::asg_pop_bubble] popped 0 bubbles and trimmed 0 tips
[M::main] ===> Step 4.3: cutting short overlaps (3 rounds in total) <===
[M::asg_arc_del_short] removed 0 short overlaps
[M::asg_arc_del_short] removed 0 short overlaps
[M::asg_arc_del_short] removed 0 short overlaps
[M::main] ===> Step 4.4: removing short internal sequences and bi-loops <===
[M::asg_cut_internal] cut 0 internal sequences
[M::asg_cut_biloop] cut 0 small bi-loops
[M::asg_cut_tip] cut 0 tips
[M::asg_pop_bubble] popped 0 bubbles and trimmed 0 tips
[M::main] ===> Step 4.5: aggressively cutting short overlaps <===
[M::asg_arc_del_short] removed 0 short overlaps
[M::main] ===> Step 5: generating unitigs <===
[M::main] Version: 0.3-r179
[M::main] CMD: miniasm -f reads.fastq n_reads.paf.gz
[M::main] Real time: 31.292 sec; CPU: 31.089 sec
I have tried several variations of the miniasm command on two different datasets only to obtain  empty .gfa files each time.
Could you please help me figure where I could be going wrong?
Thanks!

请问这个问题解决了吗？

I also had this problem，any one solve it?

I have also been having the same issue

I have facing this issue, any clues?

HI! I have the same problem


Discussion: Breaking changes to Microsoft.AspNetCore.App in 3.0

This is a discussion item for https://github.com/aspnet/Announcements/issues/325

Two points concern me about the announcements (I'll combine my comments here even though they also relate to https://github.com/aspnet/Announcements/issues/324 and #3753):

we will stop producing many of the NuGet packages that we have been shipping since ASP.NET Core 1.0.

ASP.NET Core will only run on .NET Core starting from 3.0. Moving forward, you can simply think of ASP.NET Core as being part of .NET Core.

I understand why the team is moving this direction (at least I think I do) and it makes sense in the context of ASP.NET Core being solely a framework for web application development. If all I want to do is write an ASP.NET Core application then this all seems perfectly reasonable. However, ASP.NET Core has become much more than just a self-contained framework for some library authors (myself included).
I'm relieved to see that at least the Microsoft.Extensions packages will still be published to NuGet as netstandard (this would be an even bigger deal if not, since those packages are more widely considered to be "utility" libraries for use outside ASP.NET Core). However, moving other packages to FrameworkReference (which apparently isn't even well-defined for library authors yet, and which I don't have a ton of confidence will get fully worked out before 3.0 ships) and dropping netstandard support has some big impacts for those libraries that do currently depend on these other packages.
I suspect there's a feeling that the use of these other non-Microsoft.Extensions libraries outside of ASP.NET Core itself is minimal within the community, but I've seen their application steadily grow and am disappointed by the loss of opportunity this represents. It means anyone building general-purpose libraries the depend on them will need to 1) figure out how to manage working with FrameworkReference in a library context and all the challenges/differences that entails and 2) drop netstandard as a target, which may not be a huge deal, but is disappointing nonetheless as it has transitive implications and doesn't go with the ".NET Standard is what libraries should be targeting" ethos.
For some concrete examples, here's some of the ASP.NET Core packages I use in Wyam that are impacted by these announcements:

Microsoft.AspNetCore.Hosting - powers the embedded preview web server
Microsoft.AspNetCore.Kestrel - powers the embedded preview web server
Microsoft.AspNetCore.StaticFiles - allows the preview server to serve up the generated static files
Microsoft.AspNetCore.WebSockets - drives the LiveReload functionality in the preview server
Microsoft.AspNetCore.Razor.* - provides Razor template parsing and compilation for static site generation
Microsoft.AspNetCore.Mvc.Razor (and related) - allows Razor templates to act like ASP.NET Core MVC with layouts, partials, tag helpers, etc.

These packages are consumed by various Wyam netstandard support libraries because Wyam can be used from clients in both .NET Framework and .NET Core or be embedded within other applications (LINQPad is a favored client). But that's just my libraries - I know of several other projects off the top of my head that rely on one or more of these:

RazorLight
Gazorator
Nancy (which has been planning on implementing ASP.NET Core Razor support at some point)

A GitHub search for <PackageReference Include="Microsoft.AspNetCore.Hosting" currently produces 5,916 results and <PackageReference Include="Microsoft.AspNetCore.Mvc.Razor" currently produces 1,382 results. Many of those are references for ASP.NET Core applications, but browsing through the results shows a wide variety of other applications and libraries as well.
Particularly, I'm worried about these two general use cases:

Embedded web servers (including web sockets, static files, and all the other optional ASP.NET Core functionality)
Razor template parsing (with or without MVC-like conventions and support)

Just for those use cases alone I imagine there's a large potential set of consumer libraries beyond ASP.NET Core applications, and I'll guess there's other good general use cases I haven't thought of too.
TL;DR: I can't help but feel like these changes "break" the way .NET is meant to be consumed and begin to lock ASP.NET Core into a very narrow set of use cases while removing the ability to play nicely with more conventional .NET library development.

FrameworkReference is a great option to have, but can’t it be just an option? So much work has been done to modularise this functionality and it would be a real waste to lose that.

@daveaglick
I think it's fair to say that anything that depends on the HttpContext is tied to ASP.NET Core. So anything like this:

Embedded web servers (including web sockets, static files, and all the other optional ASP.NET Core functionality)

Will inherently need to target ASP.NET Core and thus .NET Core.
@gulbanana

FrameworkReference is a great option to have, but can’t it be just an option? So much work has been done to modularise this functionality and it would be a real waste to lose that.

That gives the illusion that they are indeed usable as individual packages. When they eventually will land in an application that is shipping all of these components together on a specific ship cycle.

We don't test newer versions of ASP.NET Core on older versions of .NET Core
We don't test mixing and matching versions of the various ASP.NET Core packages versions

This change makes that a bit more clear that ASP.NET Core is indeed a unit that ships together and isn't meant to be used peacemeal (at least these core pieces).
That said, there are likely some refactoring that could be factored out (like Razor runtime support). I do think ASP.NET Core itself though shouldn't get the same treatment, it is a platform.

With EF Core being removed from the shared framework, what is the story on Identity? Microsoft.AspNetCore.Identity.EntityFrameworkCore is the default store implementation and (obviously) has a reference on EF Core. So this cannot be part of the shared framework itself and will require a separate reference. But what will happen to Microsoft.AspNetCore.Identity itself?
Especially with the move to Identity Server as a simple to set up solution, I believe that in-app identity management will continue to become less interesting. Identity will become more like a specialized thing to set up when you really need it, while the average application will use external authentication providers using open protocols like OIDC. So I would like to see Identity to be removed from the shared framework as well, if only to make the choice to use Identity a more explicit one and to instead promote the use of alternative ways for authentication.

@natemcmaster Thanks for the reply. It does put me a little more at ease, particularly this part:

able to ship their class libraries as NuGet packages with a dependency on ASP.NET Core's API

That addresses my main concern - I understand and can live with the netstandard -> netcoreapp move.
This follow-up comment from @davidfowl gave me pause though:

This change makes that a bit more clear that ASP.NET Core is indeed a unit that ships together and isn't meant to be used peacemeal (at least these core pieces).

I understand there are resource constraints and that the team has a mandate to build a web application framework. That said, there are a lot of really cool components comprising ASP.NET Core that stand on their own, and a lot of work has already gone into making them (mostly) independent.
Even though it's probably a small fraction of the overall ASP.NET Core constituency, I'd urge the team to keep in mind there are users that think of it as more than just a web application framework, want to use those components piecemeal, and have a good reason for doing so. And not just for those specific use cases I've detailed above, but for all the future use cases I haven't thought of too.

I'm confused about how Sdk and FrameworkReference work together. For example, if in a few months I have a WPF app that needs to use parts of ASP.NET Core.. say for query string parsing..  would I be able to do something like this?
<Project Sdk="Microsoft.NET.Sdk.Wpf">
  <PropertyGroup>
    <TargetFramework>netcoreapp3.0</TargetFramework>
    <OutputType>WinExe</OutputType>
  </PropertyGroup>
  <ItemGroup>
    <FrameworkReference Include="Microsoft.AspNetCore.App" />
  </ItemGroup>
</Project>

@vcsjones You can generally use multiple SDKs and framework references within the same project. So yeah, you will be able to just add a framework reference to ASP.NET Core when you need to reference something of it. The framework reference basically acts as a replacement to the package reference.

@daveaglick which independent components?

@davidfowl See my first comment above - I personally use:

Microsoft.AspNetCore.Hosting
Microsoft.AspNetCore.Kestrel
Microsoft.AspNetCore.StaticFiles
Microsoft.AspNetCore.WebSockets
Microsoft.AspNetCore.Razor.*
Microsoft.AspNetCore.Mvc.Razor.*

But my concern is more about being able to use ASP.NET Core components independently in general. For example, I only just started to use Microsoft.AspNetCore.WebSockets last week. If this discussion had happened before then, and no one spoke up to advocate for that particular library being carved out, would I have been sunk had I needed it in the future? You folks are doing a ton of really cool stuff and I want to use it in all sorts of interesting and unforeseen ways.
I guess it comes down to a question of who the customers for ASP.NET Core are and who the team is committed to supporting. If the answer is "ASP.NET Core is a web framework and any other use is unsupported and at your own risk" then that would be good to know, however unfortunate. I hope the answer is more like "ASP.NET Core is a collection of libraries that comprise a web framework but can also be used to build web related functionality into your own libraries and applications."

We’re looking to replace the WebHost with the generic host (which is Microsoft.Extensions) and thus packages.
Razor warrants a larger discussion about what feature set we need to make available for all platforms outside of MVC. Today things aren’t factored that way and you need to pull in big chunks of MVC to do Razor properly.
The other components you mention are part of asp.net core and are not independent. Middleware is tied to the tech (basically anything that touches the HttpContext). I’m actually not sure what you mean by independent here. You just happen to be using pieces of them instead of all but that’s not independent, as they ship as a suite. Some things are truly coupled and others aren’t we’re trying to find that balance.

I hope the answer is more like "ASP.NET Core is a collection of libraries that comprise a web framework but can also be used to build web related functionality into your own libraries and applications."

No that’s exactly what ASP.NET is not. That was the .NET Core 1.0 vision that we’ve moved away from. We’re now a platform. We ship a monolith that versions together with .NET Core and we don’t ship or test them separately.

@poke: With EF Core being removed from the shared framework, what is the story on Identity?

Microsoft.AspNetCore.Identity remains in the shared framework. If you use EF Core, you can pull in Microsoft.AspNetCore.Identity.EntityFrameworkCore as a package reference.

@vcsjones: I'm confused about how Sdk and FrameworkReference work together.

I think if it this way:

Sdk maps to the primary IDE behavior you want. i.e. does debug launch a browser or a Windows app?
<FrameworkReference> is like a collection of <Reference> items. They control what API is available to the compiler.

We're considering having the Sdk you set imply a set of FrameworkReference's, but haven't committed to that yet until we think we have a sensible set of defaults that works well for Wpf, WinForms, AspNetCore, class libraries, and test projects.

Great changes

We periodically close 'discussion' issues that have not been updated in a long period of time.
We apologize if this causes any inconvenience. We ask that if you are still encountering an issue, please log a new issue with updated information and we will investigate.


brock/chatNFT

Mint NFT on L1 using ChatGPT to generate the NFT's data.
Relies on the client to get the "mint NFT approval" signature from suavechain logs and send it in a tx to mainnet to mint the NFT, but that could be moved to SUAVE for a spicier, more cost-maximizing approach.

continued here: https://github.com/zeroXbrock/chatNFT/


fix(restclient): set correct root schema for file generation

Current dependencies on/for this PR:

main

PR #27

PR #28   👈

This comment was auto-generated by Graphite.

Graphite Merge Job
Current status: ⏳ Queued to merge
This pull request is currently queued to be merged as part of a stack.
This comment was auto-generated by Graphite.

Job Reference: zLEF4DukGo7omGVAGyG2


RTP result now a donut centered on the player

Oi, my brain. Woke up and this was still on my mind.

Gah! Variable names.
The new nextInt()s should be passed distance, not max.
Will make push a further commit to that effect soon.


python: <IP_ADDRESS> -> 3.10.10

This changes the top-level attribute python to refer to python3 instead of python2.
This allows users to get a supported version of one of the most popular programming languages if they run nix shell nixpkgs#python et al.
As python2 is already marked insecure, older repos built with a newer nixpkgs and referring to python would currently throw an error. With this change, they would silently switch to python3 if relase notes are not read.
An alternative would be to remove the alias and to require users to explicitly refer to either python2 or python3.
Happy to hear what others are thinking. Are we ready for this, or should we wait for 23.11?
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] 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/)
23.05 Release Notes (or backporting 22.11 Release notes)

[X] (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.

The more I think about it, the more I'm leaning towards removing the alias. Yes, it's a tiny bit more friction for new users, but it also prevents a lot of potential headaches.

The more I think about it, the more I'm leaning towards removing the alias. Yes, it's a tiny bit more friction for new users, but it also prevents a lot of potential headaches.

Not opposed to removing it per se, but can you elaborate on the headaches you see? Maybe the question is whether we can expect users to read release notes if their python pkgs are changed during an upgrade to the next stable release?

When proposing changes such as this I strongly recommend including links to previous discussions.

Sorry for the noise - I did look for existing discussion, but failed to find it. Then asked in #python:nixos.org where a PR was suggested.
For future reference: Searching again starting from https://github.com/NixOS/nixpkgs/pull/154687 which introduced the alias, i since found https://github.com/NixOS/nixpkgs/issues/18185#issuecomment-690899817 where the question was asked.
I did not yet find the extensive discussions, but might have missed something in https://github.com/NixOS/nixpkgs/projects/27 or elsewhere.


Adding support for obfuscated account id when purchasing

In the Google Play billing docs, it recommends using the setObfuscatedAccountId and/or setObfuscatedProfileId methods on the BillingFlowParams builder to provide user information with the purchase
(https://developer.android.com/google/play/billing/security#fraud).
The current implementation of the private PurchaseAsync method does not expose this functionality. Will this be added?
Thanks!

See -> https://github.com/jamesmontemagno/InAppBillingPlugin/pull/381
I have never used these and their docs aren't very great.... do you just pass them in and that's it?

Ah... i see they are returned in the purchase. I have added them to InAppBillingPurchase now

These also get returned when calling the purchases.subscriptions.get API, which is how we are going to link purchases to users when processing Google purchase notifications. Thanks for the quick turnaround!

Gotcha, yeah it should get returned automatically with that extension method that converts it.

Out in 4.2.0-beta


Transform payload in line item controller

1. Why is this change necessary?
It is not possible to add products with payload from the storefront to the cart in the app system.
2. What does this change do, exactly?
It parses a json string to add as payload to a line item.
3. Describe each step to reproduce the issue or behaviour.

4. Please link to the relevant issues (if any).

5. Checklist

[x] I have rebased my changes to remove merge conflicts
[ ] I have written tests and verified that they fail without my change
[x] I have created a changelog file with all necessary information about my changes
[ ] I have written or adjusted the documentation according to my changes
[ ] This change has comments for package types, values, functions, and non-obvious lines of code
[x] I have read the contribution requirements and fulfil them.

🤖 Generated by Copilot at 1578079
This pull request adds a feature to store product payload data in the line item of the cart. It updates the CartLineItemController to handle the payload parameter and adds a changelog entry for the feature.

🤖 Generated by Copilot at 1578079

Add a product payload to the line item in the storefront controller (link, link)

Hello,
thank you for creating this pull request.
I have opened an issue on our Issue Tracker for you. See the issue link: https://issues.shopware.com/issues/NEXT-29357
Please use this issue to track the state of your pull request.

Thanks for your contribution, your PR got merged! :tada: :blue_heart:


Can’t click and drag to select text on wallet addresses, it drags the entire application instead of selecting text.

I still can't drag and select the address, the entire application gets dragged instead. We should only have a small horizontal area in the application header that drags the entire app. Furthermore, now when I double click to select the address only a part of address gets selected. I understand that you wrapped tz1 in an HTML element to make it bold but that should not be resulting in this behavior. I tried doing this in JsFiddle and selection seems to work fine for elements wrapped in spans and even in divs if I set the display to inline. Also, the copy button next to address doesn't copy the address.

[ ] When clicking on copy icon there is no indication that the text is copied (see copy button in the Receive tab)
[ ] I still can't drag and select the address, the entire application gets dragged instead. We should only have a small horizontal area in the application header that drags the entire app.

I still looking for the solution of this drag issue

Already fixed and merged


RFC Add chunk method to DataList to iterate over large dataset

I'm stealing this one from Laravel.
Basically, this will take your regular DataList query and split it up into smaller queries using limits and offsets. That way, if you have a huge result set, you don't have to load it all in memory at once.
You can specify a chunk size or let it default to 100.
It's bit different from the Laravel implementation in that Laravel return a list of chunks which you have to loop over yourself ... while my implementation will loop over the chunks for you and yield each result individually.
If you think this is worthwhile, I'll write some unit test for it.
CC @silverstripe/core-team

I addressed the feedback, added some unit tests and documented how to use this thing.

Why didn't you make it like Laravel? It appears as though you've made it slightly more code-efficient for 1 use-case that should arguably be managed by ORM internals, and disallowed any other use-cases.

Related: Did you consider implementing this features into DataList::getIterator() as standard? Is there any reason that you would not use this on all large queries?

Wouldn't that trip up pagination? Has this been tested with PaginatedList?

Why didn't you make it like Laravel? It appears as though you've made it slightly more code-efficient for 1 use-case that should arguably be managed by ORM internals, and disallowed any other use-cases.

The Laravel one returns each results set individually and it's the responsibility of the developer to loop over each results set. The example in their doc where this behaviour would be helpful was displaying a list in a tabular format where each cell was a row in the DB. This example was very UI focus (also table to display list :nauseated_face:).
My use case for this was providing a convenience method for looping over a large dataset. That's why I tried to set up the result so you can loop over them transparently without being aware of the underlying queries. If you need to be aware of the underlying queries, then maybe you're better off doing your own implementation.

Did you consider implementing this features into DataList::getIterator() as standard? Is there any reason that you would not use this on all large queries?

There's some complexity in making it this the default behaviour by applying it to getIterator. If you're using this to iterate over a dataset and update values used in the sort or filter, you might inadvertently change the order of the results ... which means subsequent queries might miss some rows and return the same rows multiple times.

Wouldn't that trip up pagination? Has this been tested with PaginatedList?

This will most definitely not work with a paginated list. I'm using limit and offset to go through the DataList. This overrides any custom limit values provided by the user. I tried to set it up so I could honour those constraint, but I couldn't find an elegant way of recalling those values after they've been set.

This may not have been clear if you glance at this quickly, but chunk returns a generator, not an SS_List. The only thing you can do with the return value of chunk is iterate over it.

Probably 1000 records would be a more sensible default as a chunk though, that still keeps memory constraints in check...

I'm fine with a 1000 ... the hundred number was just pull out of nowhere. There wasn't much thought put into it.

It reminds me a bit of this one #6518 which is SS5 and also attempts to reduce memory usage by limiting the amount of objects instantiated in advance.
Apologies for jumping in late; I only just noticed that this PR is 3 months old.
I don't think the method should be called "chunk" as that means something else in another framework that people are likely to be familiar with (i.e. you've not copied Laravel). Maybe something like chunkedQuery() or chunkedFetch() to highlight that it's only altering internal behaviour, not what is returned?
I'd also mark it as experimental; it's not clear to me whether it will be necessary at all with the aforementioned SS5 changes (would need some testing on, say, million record queries I guess)

Resurrecting this as I needed it today, and thought it had been merged. :)
Renamed to chunkedFetch per @sminnee and updated tests and changelog.


Reconfigure Renovate for Babel

Our React demo app was not building because we had different versions of Babel referenced throughout our package.json files. This PR gets them all in sync and configures Renovate to update them all together.

I think the @renovate-bot will be processing this automatically to validate the renovate.json changes


Git clone failing here.

Should I not be able to just git clone URL ?
Am I missing a download link? I apologize I'm just sort of new to this area.

http://www.catb.org/~esr/faqs/smart-questions.html
On Thu, Dec 16, 2021 at 7:21 AM slagazor @.***> wrote:

Should I not be able to just git clone URL ?
Am I missing a download link? I apologize I'm just sort of new to this
area.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/danielmiessler/SecLists/issues/682, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIT5VROMBXKD6EEICYAGKTURGAO3ANCNFSM5KFOUT2Q
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Wow that was sooooo helpful. Just like when I first started learning linux in the 90's. The smelly guys in the redhat club would basically just say RTFM to any question. Whilst the slackware guys would take you under their wing and help when you got stuck make sure you got your box up and running. At worst they would point you to a how-to or at least suggest the right keywords to search on.
Your gate keeping is obnoxious.

I thought you were 14.
This is kinda embarrassing. You still have not shared anything that we can
help you with.
On Thu, Dec 16, 2021 at 12:01 PM slagazor @.***> wrote:

Wow that was sooooo helpful. Just like when I first started learning linux
in the 90's. The smelly guys in the redhat club would basically just say
RTFM to any question. Whilst the slackware guys would take you under their
wing and help when you got stuck make sure you got your box up and running.
At worst they would point you to a how-to or at least suggest the right
keywords to search on.
Your gate keeping is obnoxious.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/danielmiessler/SecLists/issues/682#issuecomment-995684741,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIT5VWPK2JY74YDIJGAOETURHBH7ANCNFSM5KFOUT2Q
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

I was looking for this "https://github.com/danielmiessler/SecLists.git" and couldn't find it previously.

Ok, so you are 14. Fair enough.
On Thu, Dec 16, 2021 at 12:23 PM slagazor @.***> wrote:

I was looking for this "https://github.com/danielmiessler/SecLists.git"
and couldn't find it previously.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/danielmiessler/SecLists/issues/682#issuecomment-995701482,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIT5VTNXVEKXY4VB27MQRLURHD3XANCNFSM5KFOUT2Q
.

Calm down and reflect that you blasted a mailing list for your inability to
use github.

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/danielmiessler/SecLists/issues/682#issuecomment-995704715,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIT5VWEFCYLXVBMOSRPQWDURHELJANCNFSM5KFOUT2Q
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

@karliszigurs you're being unnecesarily mean. This is most likely someone who is just now entering cybersecurity and found this repo by chance. Would it really have been that hard to just give a short explanation as to how to git clone?
Sorry about that @slagazor, if you can't solve a problem on your own, don't hesitate in opening an issue. But you're likely to get snarky responses if people don't see that you've tried to fix it on your own first.

Thank you I appreciate that.
I've actually worked in it my entire life I was online in the '80s.
I'm just retired now and all the new changes are just overwhelming.
I've successfully used git clone before but sometimes an app will just have well n shitty install instructions.
For instance I just installed sabnzbd but I have no idea how to proceed once it's cloned.


Any workarounds for adding multiple triggers?

I experimented with sending some data to event hub on a blob trigger and it works great.
But now I would like to send data - say the blob name that was added - by waiting for triggers from multiple blob storage containers. I tried modifying the function.json to add multiple blob triggers but it failed as expected since multiple triggers aren't supported.
I would like to know whether there any workarounds for the task I'd like to accomplish.

If you want to have your same function code run for blobs in either account A or account B, the easiest thing to do this is to create multiple function.json files for each function but have them share the same code by pointing to the same script file. There's more info here.

@paulbatum closed this since I got an answer. Please feel free to reopen it if needed for tracking or other purposes


Use pagerank_scipy instead of pagerank [networkx]?

In terms of raw performance networkx.pagerank_scipy can be 4-5X faster than networkx.pagerank. For the google.txt file on my local machine.
In [4]: %%timeit
   ...: nx.pagerank(G, alpha=0.85, tol=1e-3, max_iter=10000000)
   ...:
40.1 s ± 5.19 s per loop (mean ± std. dev. of 7 runs, 1 loop each)

In [5]: %%timeit
   ...: nx.pagerank_scipy(G, alpha=0.85, tol=1e-3, max_iter=10000000)
   ...:
8.89 s ± 48.3 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)```

Thanks for sharing your results. There's a pagerank_numpy as well. For this benchmark I wanted to access it against a pure python implementation baseline.

Page rank calculations do not make a very good comparison between packages because with the naïve algorithm, i.e. iterating a matrix product, performance will depends on the targeted accuracy. How many iterations do you do before the result is "stable enough"?
You can try this out by setting the tol parameter in NetworkX's implementation.
Some packages use more advanced algorithms that produce exact results and do not require a tolerance.