Update dcos commons

@nickbp:  Please use https://github.com/mesosphere/dcos-kafka-service/pull/265?w=0 for the diff.  There's a file that moved from 2 indent to 4 indent.


[WIP] Added theme engine ghost api support

refs #9866

we've added a new api version (v2)
the blog site can be configured to either use v0.1 (default+fallback) or v2
we have to make any api call dynamic based on the theme config

In Theme (optional config)
engines: {
  ghost-api: ^2
}

[x] run all site functional tests with v2 to see if it breaks somewhere
[x] fix tests
[x] final manual testing
[x] make clear commits
[x]  test static pages

@gargol Feel free to review the code, but ignore this TODO for now. I need to think about if there is a solution or if we should just ignore it for now.

Nothing major regarding the functionality. Just couple clarifications that would be good to understand for future :+1:


Very old antbms (< 2019) not communicating

Hi @syssi,
I tried both the old and ant_bms platform without success. I got an old custom components working with : https://pastebin.com/0bBPx33L
Maybe you can see the difference with your current implementations ....

I've extracted some details from the code posted to pastebin:

19200 baud

Periodic request: 5A.5A.<IP_ADDRESS>

Response:

0  0xAA
1  0x55
2  0xAA
3  0xFF
4         total voltage
5         total voltage
6         cell1 voltage
7         cell1 voltage
8         cell2 voltage
9         cell2 voltage
10        cell3 voltage
11        cell3 voltage
12        cell4 voltage
13        cell4 voltage
...
34        cell15 voltage
35        cell15 voltage
36        cell16 voltage
37        cell16 voltage
...
70        current
71        current
72        current
73        current
74        state of charge
75        total capacity
76        total capacity
77        total capacity
78        total capacity
79        remaining capacity
80        remaining capacity
81        remaining capacity
82        remaining capacity
83        capacity
84        capacity
85        capacity
86        capacity
91        t_fet
92        t_fet
93        t_bal
94        t_bal
95        temp1
96        temp1
97        temp2
98        temp2
99        temp3
100       temp3
101       temp4
102       temp4
103       charge_idx
104       discharge_idx
105       balance_idx
...
111       puiss
112       puiss
113       puiss
114       puiss
...
116       max cell voltage
117       max cell voltage
118
119       min cell voltage
120       min cell voltage
121       average cell voltage
122       average cell voltage
123       cell count
132       cells_balanced_idx
135?      cells_balanced_idx

The status frame looks compatible to this implementation: https://github.com/syssi/esphome-ant-bms/blob/main/components/ant_bms_old/ant_bms_old.cpp#L177-L286

Please try this YAML configuration: https://github.com/syssi/esphome-ant-bms/blob/main/esp8266-old-example.yaml
And provide some logs + photos of your wiring.

Yes it should work.... with the old protocol.... Is the RX buffer size set to 384 a must have ?

A complete response frame must fit into the buffer. These frames have a length of 140 bytes. A RX buffer of 150 bytes should work too probably!


The "Build for Solana" steps in readme.md does not work

Running solang compile --target solana flipper.sol generates flipper.abi & flipper.so, but not a flipper.json, which is used as IDL input for an anchor program later in the javascript integration example.
Switching flipper.json for flipper.abi gives me other errors:
TypeError: Cannot read properties of undefined (reading 'address')
(IDL.metadata is not defined)
Compiling and deploying the contract works, but what do I need to do to correctly run the flipper.js example?
Versions used:
solang: v0.2.1
@project-serum/anchor: ^0.26.0
@solana/solidity: ^0.0.25
@solana/web3.js: "^1.73.2

Using @solana/solidity instead of Anchor works

@swaglord8 you are correct, this does not work. The last release of solang does not create the idl json file. The code on the latest main does this; we've been getting ready to do a release of solang. This release is currently planned for this Monday (the 20th).
In the mean time you can use the solang binary from our CI builds, like here for example: https://github.com/hyperledger/solang/actions/runs/4167680153
The @solana/solidity library is no longer supported and we will use anchor from now forward.

@seanyoung That worked! Thanks


Force redraw manually

Wavesurfer.js version(s):
4.2.0 (currently latest)
Hi!
I know library has responsive option, which makes itself to redraw 100ms after "resize" event, if set to true (or different timeout).
In my case I need to respond to resize, that is not caused by "resize" js event.
In my case, nothing changes with window size, but layout of site changes at one point, causing wave being too long or short for it's resized container, so I need to force redraw manually when necessary. Is there way to do that?
Simple example to give some idea (click on wave to toggle container width):
https://codepen.io/hovi6337/pen/ExydbZd

drawBuffer does the job.
Would be nice to put it into official doc, if it's supposed to be part of public API.

Would be nice to put it into official doc, if it's supposed to be part of public API.

Feel free to create a pull request @hovi


Volume Mute not sticky

The volume mute button status is not sticky across MSCC restarts.

This has been fixed


Questions about calibration files

I have some questions about calibrations:

We need to support more vehicles, and different sensor config for a same vehicle. So we need add more folders under /apollo/modules/calibration/data/, right?
Is each subfolder there (e.g. Lincoln2017MKZ_LGSVL) per vehicle or per config? In other words, if it is the same vehicle, but with different sensor config, should we create another subfolder or reuse it? If later, how to reuse?
Can we generate files in such subfolder manually? Or should they be generated automatically by some scripts? If later, how?
What are the meanings of files and subfolders inside each of them? Do you have documentation to explain them? What are naming conventions of these files and subfolders?
I see "mkz_example" has some subfolders named "xxx_conf" which did not exist in Apollo 5.0. Are they needed in 5.5? It seems "Linconln2017MKZ_LGSVL" works well without these subfolders. Why?
I summary, we need to provide correct calibration files for every vehicle and every sensor configuration in our simulator. I want to understand files inside /apollo/modules/calbiration/ as much as possible, so that we know how to support it. In additional to above questions, any information regarding calibration would be very helpful. Thanks!

A /apollo/modules/calibration/data/ folder is mapped to a combination of  sensor config and vehicle. If you use the same vehicle but different sensor config, you need to recreate a new folder.

A /apollo/modules/calibration/data/ folder is mapped to a combination of sensor config and vehicle. If you use the same vehicle but different sensor config, you need to recreate a new folder.

That is exactly the reason why I want to understand meaning of those files and how to create new files for a new sensor config. Can you give me more details on that? Can you answer all above questions?


Fix misconfigured Dokka

Please note: this PR will only work with the next Dokka release, after https://github.com/Kotlin/dokka/pull/1695 is merged.
There were three main issues with the configuration:

Spring Dependency Management downgrades versions of Dokka's dependencies (most notably kotlinx-coroutines) which breaks the documentation runs. The correct fix would be to disable the dependency management plugin for all Dokka's configurations, but I can't find a way to do it. The correct version was thus hardcoded, as even the Gradle dependencySubstitution returns the downgraded versions (although there should be a way to get to the original ones)

Removing Java sources from sourceRoots by manually setting only Kotlin ones, broke the Dokka's classpath as Kotlin Plugin does not provide Java's generated classes anywhere that I'm aware of, and Kotlin compiler does not handle source files on its classpath at all

Lastly, dokkaHtml was configured instead of dokkaHtmlPartial for multimodule tasks

Closing this old PR as I think we have already taken in account those feedback + Spring dependency management was replaced recently by Gradle platform support, see https://github.com/spring-projects/spring-framework/pull/29045.


Animation FillMode="Forward" not working as expected

When the following snippet opens the popup it grows correctly but then reverts to the start value at the end of the animation.  In my real app with complex controls being animated it would sometimes stay at the end setting and sometimes revert(this was with a Panel rather than a popup)
<Grid>
    <Grid.Styles>
      <Style Selector="Popup#grow[IsOpen=true]">
        <Style.Animations>
          <Animation Duration="0:0:2.5"
                     FillMode="Forward"
                     Easing="SineEaseInOut">
            <KeyFrame Cue="0%">
              <Setter Property="Width" Value="150"/>
            </KeyFrame>
            <KeyFrame Cue="100%">
              <Setter Property="Width" Value="300"/>
            </KeyFrame>
          </Animation>
        </Style.Animations>
      </Style>
    </Grid.Styles>
    <ToggleButton Height="30" VerticalAlignment="Top" Name="buttonSettings" IsChecked="{Binding #grow.IsOpen, Mode=TwoWay}" ClickMode="Press"  >
      <TextBlock>Click Me</TextBlock>
    </ToggleButton>
    <Popup Name="grow" Height="200"  StaysOpen="False" HorizontalOffset="80"   >
      <TextBlock Background="Yellow" >Growing</TextBlock>
    </Popup>
  </Grid>

Regressed due to #2163 cc @ahopper


can we have example for ESOL of all literature models

that would be nice to have the "default model hyper" for regression for:

[x] GAT
[x] GATv2
[x] GraphSAGE
[x] Megnet
[x] Schnet
[ ] DimenetPP
[ ] NMPN
[ ] GCN

Nice to see the progress did you now when the last 3 will be ready ?

I will just check the NMPN implementation again with the original repo as it still does not reach chemical accuracy on qm9.

Okay, I have reworked the NMPN implementation. It should be closer to the original implementation now. I also ran the training.

I will test MNPN today thanks great job!


Fix clippy warnings

This fixes all the warnings that the latest version of clippy shows for this repo.

Thanks for the cleanup! Similarly to https://github.com/embedded-graphics/bdf/pull/27#issuecomment-999510509, we just need to wait for #28 to fix the CI.

#28 just went in, so please rebase your two PRs and we can get those rolling too.

@jamwaffles Done. #27 may fail because of the clippy warnings fixed by this PR so I might need to rebase again once this one is merged.

Looks like it passed just fine. Thanks again!


Automatically download Z3 if not already installed

Credit to @mykelk for this!
Also fixed issue #42, undefined n variable in README

Codecov Report
Attention: Patch coverage is 33.33333% with 2 lines in your changes are missing coverage. Please review.

Project coverage is 87.86%. Comparing base (a9868c7) to head (51337b3).
Report is 2 commits behind head on main.

Files
Patch %
Lines

src/call_solver.jl
33.33%
2 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #43      +/-   ##
==========================================
- Coverage   87.95%   87.86%   -0.09%
==========================================
  Files          12       12
  Lines         996      997       +1
==========================================
  Hits          876      876
- Misses        120      121       +1

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


Catching some dropped exceptions

@cescoffier I'm opening this PR to collect dropped exception call sites as we think of them.

@cescoffier do you have ideas of other call sites?
So far I've been doing text search for candidates.

Every operator having something like:
public void onFailure(Throwable failure) {
   if(! cancelled) {
       // ...
   }
   // Exception dropped here
}

Also, every operator where downstream's onSubscribe throws an exception - as you can't pass a subscription, you can't call onFailure, so... exception dropped.

I'll have a look tomorrow once I've had a go at #265

@cescoffier can you please have a look at 4f8d070? I'm not sure about some call sites, I may be logging in excess.


Make Error an associated type of UdpCodec

As has been done in tokio-io with Encoder and Decoder

Thanks for the PR! This is a breaking change so we can't land this just yet but I've tagged it as such for the next release.


Clarify URI syntax for connecting to ray cluster

Describe the bug
Ray exposes two ports, 6379 and 10001, depending on which port is used, the syntax for daft.context.set_runner_ray is different.
For example:
Both of these works
daft.context.set_runner_ray(address="<IP_ADDRESS>:6379")
daft.context.set_runner_ray(address="ray://<IP_ADDRESS>:10001")

But this does not
daft.context.set_runner_ray(address="ray://<IP_ADDRESS>:6379")

This might be a Ray thing, but I think it'll make sense to clarify it in the Daft docs. Esp, since there are lots of examples using the ray:// prefix https://github.com/search?q=repo%3AEventual-Inc%2FDaft+"ray%3A%2F%2F"&type=code
To Reproduce
Code above
Expected behavior
As a user, I would want Ray to work regardless of which "style" I specify.
daft.context.set_runner_ray(address="<IP_ADDRESS>:6379")
daft.context.set_runner_ray(address="<IP_ADDRESS>:10001")
daft.context.set_runner_ray(address="ray://<IP_ADDRESS>:6379")
daft.context.set_runner_ray(address="ray://<IP_ADDRESS>:10001")

Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

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

Smartphone (please complete the following information):

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

Additional context
Add any other context about the problem here.

assigning @raunakab!

Hey @kevinjqliu, I think this issue was fixed recently.
I ran all three of the commands that you gave me, and each one succeeded. When you were running the final one (i.e., daft.context.set_runner_ray(address="ray://<IP_ADDRESS>:6379")), were you receiving python exceptions?

@raunakab I think it is fixed, I couldn't reproduce the issue.
But I also cannot reproduce the issue using old versions of the library. I remember using https://github.com/Eventual-Inc/Daft/blob/main/tutorials/intro.ipynb for testing. I edited this cell with the above options
## Use the Python multithreaded local runner (default behavior)
# daft.context.set_runner_py()

## Connect to a Ray cluster and use the Ray runner
# daft.context.set_runner_ray(address="ray://...")


go/types: review/document AssignableTo code path for untyped value types

What version of Go are you using (go version)?

$ go version
go version go1.12.1 darwin/amd64

Does this issue reproduce with the latest release?
Yes.
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GOARCH="amd64"
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"

What did you do?
I called types.AssignableTo to see if an untyped int constant was assignable to a named int type.
https://play.golang.org/p/Xq33qWpFsy5
What did you expect to see?
I expected it to be assignable.
What did you see instead?
It was reported as not assignable.
At first I thought it was due to an implicit type conversion and they weren't technically assignable, but in the spec assignability seems to include implicit conversions, at least for non-constant values. For untyped constants in particular it says an untyped constant x is assignable to type T if x is in the set of values determined by T.. I'm not sure exactly what that means or if it disqualifies this case. In general since the untyped constant is assignable to the named type, I assumed the AssignableTo function would agree.
Also note that reflect.Type.AssignableTo behaves consistently with types.AssignableTo.
/cc @griesemer since you are primary owner of go/types

On further thought I suspect the problem is AssignableTo doesn't know the constant's value. If it were to return true in this case then there would be false positives due to integer sign mismatch and overflow.
Taking a step back, I'm trying to make gopls (the x/tools LSP implementation) be smarter when suggesting untyped constants as completion candidates (i.e. it should only suggest a constant if it is assignable to the expected type at the cursor). In other words, I want to determine if a given *types.Const is assignable to a given types.Type. It looks like the AssignableTo code path would do the right thing if there was a way to set the operand's "val".

I agree it that the go/types behavior deserves at least a closer look in this case.

I agree it that the go/types behavior deserves at least a closer look in this case.

@muirrn Indeed, AssignableTo doesn't know about the untyped int value in this case. That said, returning false is also not very satisfactory; it should probably return some error (or panic) - but we can't change that.
Barring adding another entry point to the API, I don't know what else can be done here, but I leave this open (with reframed title) as a reminder to review the code path (and document it better).

Thanks, sounds reasonable.
For others' future reference, to prefer false positives over false negatives I did something like https://play.golang.org/p/1G9aEFaLenH

@griesemer Possibly related, the below prints true when I expect false:
fmt.Println(types.AssignableTo(
	types.Typ[types.UntypedFloat],
	types.Typ[types.Int],
))

This seems to be causing some false positive completion candidates in gopls since gopls thinks an untyped float constant is assignable to an int variable.
/cc @findleyr


Add information on how to install a template from a private NuGet Server

The page lists 3 ways to install a Template that is packaged in a NuGet.

From NuGet.org
From a local file
From a file system directory

But it is very common these days for teams to have a private NuGet repository (not on NuGet.org).  ProGet, Artifactory, and others products are commonly used to host NuGets that are not intended for public use.
It would be helpful to add documentation on how to install a template that is hosted on private NuGet repository.

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

ID: 4e7deb06-37bb-b659-7cf3-9c47a91e065e
Version Independent ID: d6e6f989-3956-6a0e-5e9c-fb3d1f9bd751
Content: Custom templates for dotnet new - .NET CLI
Content Source: docs/core/tools/custom-templates.md
Product: dotnet-fundamentals
Technology: dotnet-cli
GitHub Login: @adegeo
Microsoft Alias: tdykstra

Thank you for opening this issue. I'll add it to the backlog. If you would like to contribute, you can submit a fix by editing the original article. Click on the Content Source link at the bottom of your original comment. To learn how to edit, see the Editing files in a repository article from GitHub.
Thanks again!

I'll add it to the backlog

Happy to see it added to the backlog.

If you would like to contribute, you can submit a fix by editing the original article

I would happily contribute a solution if I knew it. I posted this issue because I don't know how to do it.

Ahh 😁  this should be covered by the CLI reference: https://learn.microsoft.com/en-us/dotnet/core/tools/dotnet-new-install#options

We're going to have to update these pages for .NET 7 as the whole command has been changed.

That page does indeed have it.  --nuget-source <SOURCE> is what I was looking for!
I was about to suggest that a link be added to that page (from the page I was on), but when I double checked, it is there!  Sorry for wasting your time on this.  I thought I had searched thoroughly for this.  I will try to be more careful before opening an issue in the future.
Thank you for your help!

No worries. I'm going to reopen the issue though, as I think it's good to document this in the list of "what you can do" in this article.


WIP Adding flake8 to the project

I have corrected the linting errors in the code and have also added flake8 to the README.md file which contributors can run to fix PEP8 errors before commiting their changes.

@madprime Please review and let me know if this is fine

@madprime I have made the required changes and have removed the .flake8 file.


[Bug]: API Gateway Deployment: refuse to update the external resource because the following update requires replacing it

Is there an existing issue for this?

[X] I have searched the existing issues

Affected Resource(s)

deployment.apigateway.aws.upbound.io/v1beta1
stage.apigateway.aws.upbound.io/v1beta1
restapi.apigateway.aws.upbound.io/v1beta1

Resource MRs required to reproduce the bug
apiVersion: apigateway.aws.upbound.io/v1beta1
kind: RestAPI
metadata:
  labels:
    api: int-sandbox-dev-demo
  name: int-sandbox-dev-demo
spec:
  forProvider:
    body: >-
      ${jsonencode({
          openapi = "3.0.1"
          info = {
            title   = "demo"
            version = "1.0"
          }
          paths = {}

        })}
    name: int-sandbox-dev-demo
    region: eu-west-3
---
apiVersion: apigateway.aws.upbound.io/v1beta1
kind: Deployment
metadata:
  labels:
    deployment: int-sandbox-dev-demo
  name: int-sandbox-dev-demo
spec:
  forProvider:
    region: eu-west-3
    restApiIdSelector:
      matchLabels:
        api: int-sandbox-dev-demo
    triggers:
      version: "1"
---
apiVersion: apigateway.aws.upbound.io/v1beta1
kind: Stage
metadata:
  labels:
    stage: int-sandbox-dev-demo
  name: int-sandbox-dev-demo
spec:
  forProvider:
    region: eu-west-3
    restApiIdSelector:
      matchLabels:
        api: int-sandbox-dev-demo
    stageName: int-sandbox-dev-demo
    deploymentIdSelector:
      matchLabels:
        deployment: int-sandbox-dev-demo

Steps to Reproduce

Deploy the submited MRs: kubectl apply resources.yaml
Change the deployment trigger's field: version: "2"
Deploy the MRs: 'kubectl apply resources.yaml`

What happened?
The Deployment MR is expected to reconcile with AWS but a error is obtained: refuse to update the external resource because the following update requires replacing it: cannot change the value of the argument "triggers.version" from "1" to "2"
I expect that the trigger property of the Deployment MR works exactly doing this: force a replacement of the underlying Terraform and AWS resource.
Relevant Error Output Snippet
Conditions:
    Last Transition Time:  2024-08-01T08:55:43Z
    Reason:                Available
    Status:                True
    Type:                  Ready
    Last Transition Time:  2024-08-01T08:56:16Z
    Message:               update failed: async update failed: refuse to update the external resource because the following update requires replacing it: cannot change the value of the argument "triggers.version" from "1" to "2"
    Reason:                ReconcileError
    Status:                False
    Type:                  Synced
    Last Transition Time:  2024-08-01T08:56:16Z
    Message:               async update failed: refuse to update the external resource because the following update requires replacing it: cannot change the value of the argument "triggers.version" from "1" to "2"
    Reason:                AsyncUpdateFailure
    Status:                False
    Type:                  LastAsyncOperation
Events:
  Type     Reason                        Age               From                                                        Message
  ----     ------                        ----              ----                                                        -------
  Normal   CreatedExternalResource       43s               managed/apigateway.aws.upbound.io/v1beta1, kind=deployment  Successfully requested creation of external resource
  Normal   UpdatedExternalResource       9s                managed/apigateway.aws.upbound.io/v1beta1, kind=deployment  Successfully requested update of external resource
  Warning  CannotUpdateExternalResource  2s (x10 over 9s)  managed/apigateway.aws.upbound.io/v1beta1, kind=deployment  async update failed: refuse to update the external resource because the following update requires replacing it: cannot change the value of the argument "triggers.version" from "1" to "2"

Crossplane Version
1.16.0
Provider Version
1.9.0
Kubernetes Version
v1.30.2-eks-db838b0
Kubernetes Distribution
EKS
Additional Info
The reason I use "triggers" is to create a new Deployment on AWS with the changes of the RestAPI resource. I want to simulate the "Deploy" button on the AWS console.

I don't think this is a bug from what I understand...
Crossplane Providers will not update a resource if it requires a re-creation (or at least in my experience upjet ones do not for sure). I think you'd have to create a new resource, then delete this resource (or however TF deals with replacements of this resource assuming you feel that makes sense).

Thanks @blakeromano , I understand the challenge for Crossplane with recreation.
But, what is the purpose of the "triggers" attribute of "deployment.apigateway.aws.upbound.io/v1beta1" ? It will always force recreation.

I am not an API Gateway expert by assumption is a deployment is essentially "immutable" where once you create a deployment your path forward is to create a new deployment not update existing. Upjet providers use Terraform under the hood with some customizations to make it K8s native so there's other resources which are pretty "immutable" that you can deploy with Crossplane.


[Bug]: "remix dev" error when creating project with "cloudflare workers" option

What version of Remix are you using?
1.1.3
What version of Node are you using? Minimum supported version is 14.
16.13.2
Steps to Reproduce
environment

os : ubuntu 20
node : 16.13

I created remix project using command npx create-remix@latest, and set deploy targets on cloudflare workers.
I installed @remix-run/serve, then run remix dev. meesage below appeared.
Remix App Server started at http://<IP_ADDRESS>:3000
and I connected http://<IP_ADDRESS>:3000, but error occured.
/mnt/mx500-234g/project/apps-for-study/remix-for-cfworkers-v2/build/index.js:10
import * as React from "react";
^^^^^^

SyntaxError: Cannot use import statement outside a module
    at Object.compileFunction (node:vm:352:18)
    at wrapSafe (node:internal/modules/cjs/loader:1031:15)
    at Module._compile (node:internal/modules/cjs/loader:1065:27)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Module.require (node:internal/modules/cjs/loader:1005:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at /mnt/mx500-234g/project/apps-for-study/remix-for-cfworkers-v2/node_modules/@remix-run/serve/index.js:39:17
    at Layer.handle [as handle_request] (/mnt/mx500-234g/project/apps-for-study/remix-for-cfworkers-v2/node_modules/express/lib/router/layer.js:95:5)

What am I missing ? thank you.
Expected Behavior
I could expect to see page of http://<IP_ADDRESS>:3000/ that I made.
Actual Behavior
/mnt/mx500-234g/project/apps-for-study/remix-for-cfworkers-v2/build/index.js:10
import * as React from "react";
^^^^^^

SyntaxError: Cannot use import statement outside a module
    at Object.compileFunction (node:vm:352:18)
    at wrapSafe (node:internal/modules/cjs/loader:1031:15)
    at Module._compile (node:internal/modules/cjs/loader:1065:27)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Module.require (node:internal/modules/cjs/loader:1005:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at /mnt/mx500-234g/project/apps-for-study/remix-for-cfworkers-v2/node_modules/@remix-run/serve/index.js:39:17
    at Layer.handle [as handle_request] (/mnt/mx500-234g/project/apps-for-study/remix-for-cfworkers-v2/node_modules/express/lib/router/layer.js:95:5)

@coleea There have been a lot of changes to the cloudflare integration. Are you still seeing this problem with the newest remix version?

@machour it works. this issue needs to be closed.
thank you


ValueError: You are trying to load a weight file containing 0 layers into a model with 16 layers.

When I run the code, it stops at this line:
https://github.com/imatge-upc/detection-2016-nipsws/blob/dbcc3ac46b4e2a8841eadd1cbc46ee58c6d9a2a8/scripts/image_zooms_training.py#L76
The error message is the following:
Traceback (most recent call last):

  File "E:\EUMETSAT\UPC\scripts\image_zooms_training.py", line 76, in <module>
    model_vgg = obtain_compiled_vgg_16(path_vgg)

  File "E:\EUMETSAT\UPC\scripts\features.py", line 251, in obtain_compiled_vgg_16
    model = vgg_16(vgg_weights_path)

  File "E:\EUMETSAT\UPC\scripts\features.py", line 304, in vgg_16
    model.load_weights(weights_path)

  File "E:\Program Files\Anaconda3\lib\site-packages\tensorflow\python\keras\engine\training.py", line 2211, in load_weights
    hdf5_format.load_weights_from_hdf5_group(f, self.layers)

  File "E:\Program Files\Anaconda3\lib\site-packages\tensorflow\python\keras\saving\hdf5_format.py", line 686, in load_weights_from_hdf5_group
    ' layers.')

ValueError: You are trying to load a weight file containing 0 layers into a model with 16 layers.

Does anyone know how to fix this issue?

Hi, I'm running this code but I'm having problems configuring the environment due to different versions, can I ask you what the environment and package version is when you run this code? For example, can I ask you the version of cuda, gcc, python?


[DOC] Add Android Tutorial

Hello. I am the author of tkat0/chainer-nnvm-example.
Thank you for referring from the official document.
I wanted to include a tutorial for Android in the official Tutorial, and I sent a PR.
The above repository used NNVM, but I created a tutorial using Relay.
I build a document with the following command and uploaded it here.
I confirmed that the document looks good.
docker/bash.sh tvm.ci_gpu TVM_TUTORIAL_EXEC_PATTERN=deploy_model_on_android\.py make -C docs html

Thank you.

Jenkins had failed when building a document, so I tried to write minimal code that reproduced the Jenkins build.
I can reproduce it, so I will fix it.

Command to reproduce
# login ci container
docker/bash.sh tvmai/ci-gpu:v0.51

# build tvm
rm -fr build
mkdir -p build
cd build
cp ../cmake/config.cmake .
echo set\(USE_CUBLAS ON\) >> config.cmake
echo set\(USE_CUDNN ON\) >> config.cmake
echo set\(USE_CUDA ON\) >> config.cmake
echo set\(USE_OPENGL ON\) >> config.cmake
echo set\(USE_LLVM llvm-config-6.0\) >> config.cmake
echo set\(USE_NNPACK ON\) >> config.cmake
echo set\(NNPACK_PATH /NNPACK/build/\) >> config.cmake
echo set\(USE_RPC ON\) >> config.cmake
echo set\(USE_SORT ON\) >> config.cmake
echo set\(USE_GRAPH_RUNTIME ON\) >> config.cmake
echo set\(USE_STACKVM_RUNTIME ON\) >> config.cmake
echo set\(USE_GRAPH_RUNTIME_DEBUG ON\) >> config.cmake
echo set\(USE_ANTLR ON\) >> config.cmake
echo set\(USE_BLAS openblas\) >> config.cmake
echo set\(CMAKE_CXX_COMPILER g++\) >> config.cmake
echo set\(CMAKE_CXX_FLAGS -Werror\) >> config.cmake
cmake ..
make -j12

# build documents
rm -rf docs/_build/
mkdir -p docs/_build/html
rm -rf docs/tutorials
rm -rf python/tvm/*.pyc python/tvm/*/*.pyc python/tvm/*/*/*.pyc
PYTHONPATH=`pwd`/../python make -C docs html

However, When I limited this tutorial to build, it completed successfully.
-PYTHONPATH=`pwd`/../python make -C docs html
+PYTHONPATH=`pwd`/../python TVM_TUTORIAL_EXEC_PATTERN=deploy_model_on_android\.py make -C docs html

The error is happening at relay.build, and the Relay graph seems strange.
Since the MobileNetV2 has only one input, it is strange that input_2 appears.
WARNING: /workspace/tutorials/frontend/deploy_model_on_android.py failed to execute correctly: Traceback (most recent call last):
  File "/workspace/tutorials/frontend/deploy_model_on_android.py", line 249, in <module>
    target_host=target_host, params=params)
  File "/workspace/docs/../python/tvm/relay/build_module.py", line 276, in build
    func = optimize(func, target, params)
  File "/workspace/docs/../python/tvm/relay/build_module.py", line 163, in optimize
    func = ir_pass.infer_type(func)
  File "/workspace/docs/../python/tvm/relay/ir_pass.py", line 353, in infer_type
    return _ir_pass.infer_type(expr, mod)
  File "/workspace/docs/../python/tvm/_ffi/_ctypes/function.py", line 190, in __call__
    raise get_last_ffi_error()
tvm._ffi.base.TVMError: Traceback (most recent call last):
  [bt] (8) /workspace/build/libtvm.so(+0x4ac55f) [0x7fd6fda7c55f]
  [bt] (7) /workspace/build/libtvm.so(+0x65defd) [0x7fd6fdc2defd]
  [bt] (6) /workspace/build/libtvm.so(+0x65ea8d) [0x7fd6fdc2ea8d]
  [bt] (5) /workspace/build/libtvm.so(+0x49349a) [0x7fd6fda6349a]
  [bt] (4) /workspace/build/libtvm.so(+0x4861c4) [0x7fd6fda561c4]
  [bt] (3) /workspace/build/libtvm.so(+0x4a5de3) [0x7fd6fda75de3]
  [bt] (2) /workspace/build/libtvm.so(+0x4a5b03) [0x7fd6fda75b03]
  [bt] (1) /workspace/build/libtvm.so(+0x4a3017) [0x7fd6fda73017]
  [bt] (0) /workspace/build/libtvm.so(+0x151512) [0x7fd6fd721512]
  File "/workspace/src/relay/pass/type_infer.cc", line 620
TVMError: Check failed: checked_type.as<IncompleteTypeNode>() == nullptr: Cannot resolve type of Var(input_2) at (nullptr)

I found by dumping Relay IR that when called independently it would be input_1 but otherwise it would be input_2 🤔
-%212 = fn (%input_1: Tensor[(1, 3, 224, 224), float32], %v_param_1: Tensor[(16, 3, 3, 3), float32],
+%212 = fn (%input_2, %v_param_1: Tensor[(16, 3, 3, 3), float32],

I have fixed by inserting the following, to clear the TF session.
could you please review?
keras.backend.clear_session()

@grwlf @eqy please review

thanks @tkat0, this is merged


[No Ticket] UI tweaks for PPO

📲 What
A couple UI tweaks:
-Made it so PPO can use the native animations for pull to refresh and loading states

Adjusted line heights so one line projets will have the price more close to the bottom of the name

🤔 Why
It did not really indicate to the user that a refresh was happening and the spacing for projects looked a little weird.
🛠 How
Instead of our own loading indicator, use the pull to refresh composable that also uses the refresh state to know when to be shown to the user.  Made it so instead of filling space the space between the pledge amount and the name were fixed
👀 See
https://github.com/user-attachments/assets/208b797d-0eaf-4f6a-9bb3-db5860f61f7f
📋 QA
Go to PPO screen and pull to refresh

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 67.76%. Comparing base (8da70c5) to head (3e059f1).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff            @@
##             master    #2127   +/-   ##
=========================================
  Coverage     67.76%   67.76%
  Complexity     2225     2225
=========================================
  Files           368      368
  Lines         22849    22849
  Branches       3282     3282
=========================================
+ Hits          15483    15484    +1
+ Misses         5602     5601    -1
  Partials       1764     1764

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


Add type checking

This is the result of our fun collaborative session. 🚀

That session was awesome! 🙌


feat: deprecate JavaScript API (part 2)

Summary
Removed Compilation.currentNormalModuleHooks and mark most of the fields as readonly.
Check out https://github.com/web-infra-dev/rspack/pull/6859/files#diff-d9855ab929a2eaf55ae2836e14953cbcbb409dae7e76183b335068dc21076043 for detailed changes.

Checklist

[ ] Tests updated (or not required).
[ ] Documentation updated (or not required).

!eco-ci

Chunk.files is changed from string[] to Set<string>. Thus, resulting the follow error in rspress:
  . prepare: bundleless DTS failed:
  . prepare: src/rspack/preload/helpers/extractChunks.ts:78:7 - error TS2352: Conversion of type '{ files: string[]; }' to type 'Chunk' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first.
  . prepare:   Type '{ files: string[]; }' is missing the following properties from type 'Chunk': #private, ids, idNameHints, runtime, and 11 more.
  . prepare:  78       {
  . prepare:           ~
  . prepare:  79         files: Object.keys(compilation.assets).filter(
  . prepare:     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  . prepare: ...
  . prepare:  81         ),
  . prepare:     ~~~~~~~~~~
  . prepare:  82       } as Chunk,
  . prepare:     ~~~~~~~~~~~~~~~~
  . prepare: Found 1 error in src/rspack/preload/helpers/extractChunks.ts:78

cc @9aoy


Introduced ability to abort xhr request

N.B. This appears as though it will remove the request from the queue as the responseHandler /should/ still be called. Please verify this assumption before merging.

Good idea! I'll investigate and write tests ASAP!


Training Environment for Specific game types (tic tac toe type)?

Hi!
First off, outstanding work! I can't believe something like this exists for Godot! I am sorry you don't have more recognition for this!
Second. I have gone through the demos, and briskly the documentation, and had a question regarding certain types of environments
Lets say you have a game like tic tac toe, or asteroids, or something like (https://www.youtube.com/watch?v=AW-37sD8O1A).
All these agents cannot participate on the same track/level, and thus must be trained in independent arenas.
How do you go about setting up the training environment?
My though is that you would have to simply create many instances of the training environment in a larger scene, and simply
wait for all agents to die/win, then tie all the stuff together as opposed to using 1 environment/level/track, and placing all agents.
Possibly by modifying the place_bodies function to add each body to a different arena?
Maybe I missed something in the documentation, but as far as I am aware of the demos, there is no such example.
 I noticed you had the reddit post about a year ago, and there is this place, but wanted to know if there is a place your prefer to chat. I potentially have a bunch more questions.

Thanks for the kind words! It’s always extremely motivating to hear something like this 😊
As for your question: the algorithm is designed to work “concurrently”, meaning all genomes of a generation compete at the same time. I put concurrency in quotes, because really it is just a for loop – check out the important code here

If you want to evaluate each genome sequentially - which might be reasonable if you have a really complex environment - you'd have to start with that function. If you were to rewrite it such that only one agent is evaluated, you could write an outer loop calling that function until a stopping criterion is met. This is what I mean by outer loop. Of course before you call evaluate_generation()and next_generation(), you'd have to make sure that all genomes were evaluated.
But honestly, its a complex solution that would require rewriting a bunch of files in the /neat folder. Not to mention that it would make the evolution process reeaallly slow because of the sequential simulation.
I guess it really depends on what you're trying to do. As you said, if you place the agents in different arenas, it should work. And place_bodies() would be the right place to start. If it's an asteroids game, perhaps you could mess with collision layers to achieve simultaneous simulation where the agents can't interfere with each other.
Sure we can chat on discord, send me your handle via email<EMAIL_ADDRESS>Unfortunately, I don't have a lot of time at the moment, but if you have specific questions, I'll try my best to help you out.
Best wishes,
Paul

Alright, since we're on discord now I can close this


Fix only_match_titles in search thread function

In search thread function, only_match_titles  is set be always equal False. It is supposed to be get value from argument. This commit fix it.

Thank you!


lomiri: init basic development stuff

Description of changes
Working towards #99090, in more digestible steps than last time. This one is abit bigger, but the followups can be done more or less package-by-package with all of these present.

create a maintainers team & package scope for Lomiri

if anyone wishes to join, add yourself and/or let me know :slightly_smiling_face:

init Lomiri-belonging things

cmake-extras: A set of CMake modules commonly used by Lomiri packages
lomiri-api: An API for integrating with the Lomiri shell
gmenuharness: A library to test GLib GMenuModels

init some non-Lomiri things that are commonly used to drive tests

libqtdbustest: Library to test D-Bus interactions with Qt
libqtdbusmock: Library to mock D-Bus interactions with Qt
dbus-test-runner: Tool to run tasks under independent D-Bus sessions

The last 2 commits I still need to test on my system with all the Lomiri stuff, just threw them in here so those packages are less stale on arrival.
Working fine, keeping them in.
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] 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
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

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

[x] Fits CONTRIBUTING.md.

I'm not sure if the package set is correctly written to support cross, but most of the packages in it will use our qtbase where cross is borked anyway: #227900

@SuperSandro2000 I've tried locally adding something to the package set that doesn't need Qt & building it with --argstr crossSystem aarch64-linux and that works fine, so I think the package set is done correct for cross. Bump.

@SuperSandro2000 Is the uncertainty about the package set's cross-buildability a blocker for you (and thus blocked by qtbase itself having borked cross) or is there anything else you'd like me to change?

Na, I was just curious and wanted to let you know that I do not know.

If we missed something especially cross related we can fix that in another PR to not delay this one any longer.


Compilation of cphalcon fails with gcc-7.2.

From @Fisiu on September 19, 2017 19:14
I'm trying to compile phalcon-3.2.2 with with the latest zephir-0.9.11 using gcc-7.2 however I have some issues. Here is a build log:
phalcon-3.2.2-gcc-7.2.txt
Compilation of zephir didn't return any errors, but cphalcon.
[   86s] libtool: compile:  cc -I. -I/home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext -DPHP_ATOM_INC -I/home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/include -I/home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/main -I/home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext -I/usr/include/php7 -I/usr/include/php7/main -I/usr/include/php7/TSRM -I/usr/include/php7/Zend -I/usr/include/php7/ext -I/usr/include/php7/ext/date/lib -DHAVE_CONFIG_H -fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -g3 -O1 -std=gnu90 -DZEPHIR_RELEASE=1 -c /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/events/eventsawareinterface.zep.c  -fPIC -DPIC -o phalcon/events/.libs/eventsawareinterface.o
[   86s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/di/injectionawareinterface.zep.c:16:11: error: stray '\' in program
[   86s]   * Phalcon\Di\InjectionAwareInterface
[   86s]            ^
[   86s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/di/injectionawareinterface.zep.c:16:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Di'
[   86s]   * Phalcon\Di\InjectionAwareInterface
[   86s]             ^~
[   86s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/di/injectionawareinterface.zep.c:16:14: error: stray '\' in program
[   86s]   * Phalcon\Di\InjectionAwareInterface
[   86s]               ^
[   86s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/di/injectionawareinterface.zep.c:16:12: error: unknown type name 'Di'
[   86s]   * Phalcon\Di\InjectionAwareInterface
[   86s]             ^~
[   86s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/di/injectionawareinterface.zep.c:18:88: error: stray '\' in program
[   86s]   * This interface must be implemented in those classes that uses internally the Phalcon\Di that creates them
[   86s]                                                                                ^
[   86s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/di/injectionawareinterface.zep.c:29:9: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'the'
[   86s]   * Sets the dependency injector
[   86s]          ^~~
[   86s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/di/injectionawareinterface.zep.c:29:9: error: unknown type name 'the'
[   86s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/di/injectionawareinterface.zep.c:34:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'the'
[   86s]   * Returns the internal dependency injector
[   86s]             ^~~
[   86s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/di/injectionawareinterface.zep.c:34:12: error: unknown type name 'the'
[   86s] make: *** [Makefile:234: phalcon/di/injectionawareinterface.lo] Error 1
[   86s] make: *** Waiting for unfinished jobs....
[   86s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/exception.zep.c:18:11: error: stray '\' in program
[   86s]   * Phalcon\Exception
[   86s]            ^
[   86s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/exception.zep.c:18:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Exception'
[   86s]   * Phalcon\Exception
[   86s]             ^~~~~~~~~
[   86s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/exception.zep.c:18:12: error: unknown type name 'Exception'
[   86s] make: *** [Makefile:236: phalcon/exception.lo] Error 1
[   87s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/events/eventsawareinterface.zep.c:16:11: error: stray '\' in program
[   87s]   * Phalcon\Events\EventsAwareInterface
[   87s]            ^
[   87s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/events/eventsawareinterface.zep.c:16:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Events'
[   87s]   * Phalcon\Events\EventsAwareInterface
[   87s]             ^~~~~~
[   87s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/events/eventsawareinterface.zep.c:16:18: error: stray '\' in program
[   87s]   * Phalcon\Events\EventsAwareInterface
[   87s]                   ^
[   87s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/events/eventsawareinterface.zep.c:16:12: error: unknown type name 'Events'
[   87s]   * Phalcon\Events\EventsAwareInterface
[   87s]             ^~~~~~
[   87s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/events/eventsawareinterface.zep.c:29:9: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'the'
[   87s]   * Sets the events manager
[   87s]          ^~~
[   87s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/events/eventsawareinterface.zep.c:29:9: error: unknown type name 'the'
[   87s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/events/eventsawareinterface.zep.c:34:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'the'
[   87s]   * Returns the internal event manager
[   87s]             ^~~
[   87s] /home/abuild/rpmbuild/BUILD/cphalcon-3.2.2/ext/phalcon/events/eventsawareinterface.zep.c:34:12: error: unknown type name 'the'
[   87s] make: *** [Makefile:238: phalcon/events/eventsawareinterface.lo] Error 1

Copied from original issue: phalcon/cphalcon#13076

From @Fisiu on October 11, 2017 15:20
I played around that issue. I build php-zephir-parser, invoked zephir compiler and passed generate option. Once C code has been generated, I tried to compile it and I get errors posted above.
However, if I try to compile extension directly from build/php7/$arch directory → it succeeds.
In both cases I used the same toolchain with gcc 7.2.

There is no support yet for PHP 7.2. We'll plan to introduce 7.2 support in the Phalcon 4.0.0.

Well, as I can see the first version of GCC 7.x was released on May 2, 2017. I did a little research and made sure that most of LTS OS don't use even the 6.x branch.  I'm sorry, but I want to close this issue for now. There are several reasons for this:

This issue is related to Zephir not Phalcon
It would be rash right now to waste time to solve this (not trivial) problem
Users always can have multiple versions of the compiler - it is not hard to install one more GCC (for example 5.x)

I'd like to add support for anything/everything at some point, but keeping the issue open doesn't help that. If anyone wants to get started, I'd love that.
Thank you for contributing

@Fisiu Could you provide re2c --version output

@sergeyklay
re2c-1.0.2

Gotcha! 😄
Try downgrade re2c

@Fisiu I've prepared a patch for Zephir Parser to work with re2c >= 1.0. Could you please reinstall Zephir Parser from development branch?

Fixed in the latest stable release of Zephir Parser. Feel free to open a new issue if the problem appears again. Thank you for the report, and for helping us make Zephir Parser better.


Local Variables Collapse On Stepping/Continuing

Issue
When I step/continue in nvim-dap-ui, my expanded local/watched variables are automatically collapsed. Can I configure nvim-dap-ui to keep my expansions after I step/continue?
Example
Here is some rust code where I have a vector of vectors and I want to see the internals - i.e. I want to see everything in the outer and inner vectors. I can expand the variable v in the Locals and Watches views, as you can see on the left of this screenshot:

However, when I step or continue in the debugger, v is automatically collapsed in the Locals and Watches views, as you can see in the below screenshot:

Below is my dapui config:
require("dapui").setup()

local dap, dapui = require("dap"), require("dapui")
dap.listeners.after.event_initialized["dapui_config"] = function()
  dapui.open()
end

vim.keymap.set("n", "<leader>cdb", dapui.close)

Can you provide a debug log for nvim-dap so I can see what data is being sent? See :h dap.set_log_level() for setting the level and to get the log location

Can you provide a debug log for nvim-dap so I can see what data is being sent? See :h dap.set_log_level() for setting the level and to get the log location

Yes absolutely. I'll do that tomorrow at the latest.
So this collapsing is not normal behaviour? Usually the user's expansions persist after stepping/continuing?

Correct, the variables should remain expanded :+1: The logic is based on the variable names so I'm not sure what would reset that

Thanks Rónán. Here's that debug log.
dap_debug_log.log

Ah I see the issue, the frame ID does not remain the same across steps for your adapter. For each frame, we use the frame ID to know what variables to keep expanded (so users can jump between frames and keep the expanded state without mixing them up e.g. common variable names).
Looks like VSCode doesn't take the frame into account when storing expanded state, which IMO is a bit confusing but the spec doesn't allow for using frame ID so I've made the change to also ignore it.
Please try the latest commit and it should work :smile:

Ah I see the issue, the frame ID does not remain the same across steps for your adapter. For each frame, we use the frame ID to know what variables to keep expanded (so users can jump between frames and keep the expanded state without mixing them up e.g. common variable names).
Looks like VSCode doesn't take the frame into account when storing expanded state, which IMO is a bit confusing but the spec doesn't allow for using frame ID so I've made the change to also ignore it.
Please try the latest commit and it should work smile

The latest commit does the job! This is fixed on my end now. Cheers lad! (I don't know what the normal procedure is for closing issues -  should I close it as the reporter?)

Normally I leave to the reporter just in case I missed something :smile: But happy to close now that the fix is confirmed

Normally I leave to the reporter just in case I missed something 😄 But happy to close now that the fix is confirmed

Grand. Thanks!


Creation of boshrelease fails with bosh2 cli

Hi,
The creation of a boshrelease required for our project works fine with bosh cli1 but fails in bosh cli2 command.
i336516:vcap@AWS:SF-AWS-DEVOPS:~/i336516/service-fabrik-boshrelease$ bosh2 --version
version 2.0.29-1f8ec43-2017-07-14T16:10:28Z

Succeeded
i336516:vcap@AWS:SF-AWS-DEVOPS:~/i336516/service-fabrik-boshrelease$ bosh2 create-release --force
Building a release from directory '/home/vcap/i336516/service-fabrik-boshrelease':
  - Constructing packages from directory:
      - Reading package from '/home/vcap/i336516/service-fabrik-boshrelease/packages/bosh-helpers':
          Collecting package files:
            Unmarshalling package spec:
              yaml: unmarshal errors:
  line 3: cannot unmarshal !!map into []string
      - Reading package from '/home/vcap/i336516/service-fabrik-boshrelease/packages/docker':
          Collecting package files:
            Unmarshalling package spec:
              yaml: unmarshal errors:
  line 3: cannot unmarshal !!map into []string
      - Reading package from '/home/vcap/i336516/service-fabrik-boshrelease/packages/golang':
          Collecting package files:
            Unmarshalling package spec:
              yaml: unmarshal errors:
  line 3: cannot unmarshal !!map into []string
      - Expected to find package 'golang' since it's a dependency of package 'lvmvd'
      - Expected to find package 'golang' since it's a dependency of package 'swarm'
  - Constructing jobs from manifest:
      - Expected to find package 'bosh-helpers' since it's a dependency of job 'docker'
      - Expected to find package 'bosh-helpers' since it's a dependency of job 'service-fabrik-broker'
      - Expected to find package 'bosh-helpers' since it's a dependency of job 'service-fabrik-scheduler'
      - Expected to find package 'bosh-helpers' since it's a dependency of job 'swarm_manager'

Exit code 1
i336516:vcap@AWS:SF-AWS-DEVOPS:~/i336516/service-fabrik-boshrelease$ bosh --version
BOSH 1.3262.26.0
i336516:vcap@AWS:SF-AWS-DEVOPS:~/i336516/service-fabrik-boshrelease$ bosh create release --force
Syncing blobs...
..
....
...
Release name: service-fabrik
Release version: 2.9.0+dev.1
Release manifest: /home/vcap/i336516/service-fabrik-boshrelease/dev_releases/service-fabrik/service-fabrik-2.9.0+dev.1.yml

Hi - sounds like you might need to switch the dependencies in bosh-helpers/docker/golang to be an array instead of a hash (even if they're empty).

Thanks @dpb587-pivotal,
It helped us.
We replaced curly braces '{}' with square brackets '[]' while specifying dependencies in spec files.

@dpb587-pivotal ,
But now, we are facing issue with downloading of blobs.
when we run bosh create-release --force (bosh2), we get this error. But it works fine with bosh cli v1
Getting blob '67e8628d-c7a4-4182-8fdd-4cddd60bcaa0' for path 'apt/lvm2/libdevmapper-event1.02.1_2:1.02.77-6ubuntu2_amd64.deb':
    Getting blob from inner blobstore:
      Getting blob from inner blobstore:
        NoSuchKey: The specified key does not exist.
        status code: 404, request id: A575D1195D853E72, host id: dWE4wyBKxFLAdg/MTWOmGLlBgNecK0uNOA28UtzECRLaLA0gHxUUkeVBtpqDzYsGSTV8pJ7+sO4=

We should add that we use folders to organize our buckets. So in our config/final.yml, we have this structure:
final_name: ...
blobstore:
  provider: s3
  options:
    bucket_name: ...
    folder: ...
    secret_access_key: ...
    access_key_id: ...

Is the "folder" parameter still evaluated?

We have found a workaround: Appending the folder name to the bucket_name plus specifying the signature version works:
---
final_name: <redacted>
blobstore:
  provider: s3
  options:
    bucket_name: <bucket_name>/<folder>
    signature_version: "2"
    secret_access_key: <redacted>
    access_key_id: <redacted>

The signature version should be selected automatically, depending on the region. Can you please check?

After this workaround, bosh create-release is working with both bosh1 and bosh2 cli commands.
Thanks @jochenehret

@dpb587-pivotal Can you please confirm if this is the official solution to migrate from the ruby bosh_cli to the new one:
merging in the same line bucket_name and folder and adding signature_version: "2"
I think it should be documented and announced somewhere as this breaks all 'create release' scripts/automations of everyone who has S3 as release blobstore and used the old ruby cli

No, I would not recommend collapsing folder into the bucket_name property. This may happen to work now, but there may be additional validation in the future to ensure the value is only a bucket name (potentially mandated for underlying API changes).
Currently, the proper solution is to use separate buckets because, unfortunately, the folder option was dropped with new s3cli.

thanks for the clarification, we will need some refactoring then.

Reopening this issue.
As the solution Appending bucket name and folder name in one parameter worked only for bosh dev create release
bosh create-release --force

But didn't work for final create release
bosh create-release --final

Error:
Creating blob for path '/home/vcap/.bosh/cache/b9feed7703893d21e79679931120af853bcaa77e':
  Creating blob in inner blobstore:
    Generating blobstore ID:
      the client operates in read only mode. Change 'credentials_source' parameter value

Exit code 1

So, finally we created final release using bosh cli v1 (reverting appending of folder name with bucket name).

Related Story: https://www.pivotaltracker.com/story/show/150908130

We are in transition from ruby-bosh to go-bosh and this issue makes the moving process inconvenient. Every time we need to something using one bosh or another we have to change config/final.yml.

Story: https://www.pivotaltracker.com/story/show/152119929

Any updates on this?


[Bug]: Miscalculation for ITL

Your current environment
This bug is irrelevant to environment.
🐛 Describe the bug
Thanks for open source such a excellent project!
I found it possibly misses an "else" in the async_request_openai_completions function of 'benchmarks
/backend_request_func.py'.
                           if data["choices"][0]["text"]:
                                timestamp = time.perf_counter()
                                # First token
                                if ttft == 0.0:
                                    ttft = time.perf_counter() - st
                                    output.ttft = ttft

                                # Decoding phase
                                # Missing 'else:' here !!!!
                                output.itl.append(timestamp -
                                                  most_recent_timestamp)

                                most_recent_timestamp = timestamp
                                generated_text += data["choices"][0]["text"]

It cause the function incorrectly append TTFT into ITL list. Curiously, I saw others request function in the file have this conditional statement.
By the way, I found most of articles said TPOT is same as ITL. Could you tell me what's the difference between TPOT and ITL in the benchmark of vllm?
Thanks a lot.

cc @KuntaiDu

@AslanEZ I think you're right here that we're missing a else gate here - do you mind opening a PR to fix this?
In this benchmark we're using TPOT and ITL a bit differently - you can find the exact calculation in the code, but here is an example for the sake of comparison:
For a benchmark of 1000 requests:
TPOT is a request-level metric, meaning for each request, we look at its (end-to-end latency - TTFT)/ (number of output tokens - 1). Here, the number of output tokens is calculated by detokenizing the result output with the model's tokenizer (so it could be potentially inaccurate/off by 1 or 2, but we'd argue it's fair as long as we use the same calculation for all backends). Therefore we will have 1000 TPOT numbers after running the benchmark
ITL is a global metric, we simply record the latency between every two server-side events (SSE) as long as it's not the first token. Here number of output tokens is then derived by simply looking at how many SSEs there are. This means after running the benchmark, we will have sum of number of all output tokens - 1000 ITL numbers.
The interesting difference here is that, for some backends, they bundle multiple token generations into one SSE, therefore number of SSEs (and thus ITL itself) can be actually misleading. We still decide to keep them in the benchmark, since we know vLLM strictly follows one SSE per token protocol.
Hope that answer your question!
P.S. @youkaichao I probably have the most context since I pretty much worked on this entire serving benchmark :P, so feel free to tag me in the future.

@ywang96 Yeah, I'd like to, but I think you had fixed it now.
Anyway, thanks for your answer and help!

Hi @ywang96 , thanks for the explanation about ITL and TPOT!
I would like to ask whether it is possible to reconstruct/recompute raw TPOT from the saved benchmark json result?
It seems that the benchmark_serving.py script would not save the e2e latency as well as the calculated tpots for each request in the json file (the benchmark_result object has no related fields).

Hi @ywang96 , thanks for the explanation about ITL and TPOT!
I would like to ask whether it is possible to reconstruct/recompute raw TPOT from the saved benchmark json result?
It seems that the benchmark_serving.py script would not save the e2e latency as well as the calculated tpots for each request in the json file (the benchmark_result object has no related fields).

Hmm, I actually did add e2e latency in this benchmark output object, but it's just that I didn't save in the benchmark result
https://github.com/vllm-project/vllm/blob/f842a7aff143a4a1ddc59e1fb57109cb377f5475/benchmarks/backend_request_func.py#L31-L39
It shouldn't be hard to add it into the result since it's already available.
If you really want to do it now, for a particular request, you can average sum(itl) over the number of tokens of generated_text to calculate the raw TPOT.

We still decide to keep them in the benchmark, since we know vLLM strictly follows one SSE per token protocol.

@ywang96 It seems not true for speculative decoding.
ITL is inaccurate when vllm enables the speculative decoding feature that generates multiple tokens in one step. However, TPOT is accurate as the output length also increases, and TPOT is calculated using the equation (e2e latency - ttft) / (output_len - 1).
What if we consider adding a new metric in benchmark such as TPGS (tokens per generation step) or TPSP (tokens per SSE protocol) to better illustrate this type of scenario. Perhaps we should also consider adding additional metrics, such as a new ITL calculated based on TPSGS or TPSP.


[Feature] Request/Idea: Window Rule for Window Size

This occurred to me this morning after I was looking through the code last night trying to see if a "Remember Window Size" setting could be implemented to preserve the current window size when swapping would be feasible. While that doesn't seem possible based on the Hyprland interface--due to what appears to be a lack of functionality around window workspace changes (correct me if I'm wrong!)--but the following may be, I've yet to seriously look into the possibility.

It may be useful to allow window rules to override what StandardSize certain classes/titles of windows spawn with. e.g.:
windowrulev2 = plugin:scroller:columndefaultwidth one, class:(firefox)
windowrulev2 = plugin:scroller:rowdefaultwidth one, class:(firefox)

# or

windowrulev2 = plugin:scroller:columndefaultwidth onethird, class:(discord)
windowrulev2 = plugin:scroller:rowdefaultwidth onehalf, class:(discord)

It may be the case that a separate function is needed to accomplish this (set_window_size(windowId, standardSize)) which itself may be useful as a dispatcher?
Thoughts?

When moving a window to a different workspace, Hyprland removes the window from the layout, "moves the window", and then adds it again. So all the state of the old window is lost, for the plugin it feels the same as when it creates a new one. So there is no simple "remember size" trick.
However, adding a window rule to set pre-determined widths and heights for new windows is possible. I could add that.

Window rules are in 20eb2d8ca39d8c0f1405f17de4a6020f4bab1246
Relevant part of README
I am going to close this as completed (title), so it doesn't merge with any possible issues with the new feature I am working on, which is more complicated.

Now you can also move windows keeping their sizes and relative positions: see selectiontoggle and  selectionmove.

Haven't even had the opportunity to incorporate the window rules yet! Thanks for the responsiveness and quick work, I'll be sure to check these out soon.


Memory leak?

I am not the most experienced coder, so i could have something wrong, but I have tried to minimize the code to replicate the issue. The code i do now is simple create a single modbus registry, and just re-add data to it.
I get less then 200 loops (often around 175), then the Arduino crashes.
If I modify to add more/less variables, just changes when it crashes.
If I use a mega, instead of an uno, it just takes longer as it has more memory, but same result.
#include <Ethernet.h>
#include <Modbus.h>
#include <ModbusIP.h>

//Modbus Registers Offsets (0-9999)
const int reg01CurXPos = 1;  // Current X Position

//ModbusIP object
ModbusIP mb;

//Variables
unsigned int looper = 0;

void setup() {
    Serial.begin(9600);
    // The media access control (ethernet hardware) address for the shield
    byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
    // The IP address for the shield
    byte ip[] = { 192, 168, 1, 175};
    //Config Modbus IP
    mb.config(mac, ip);

    Serial.println("Setup done");
    delay(1000);
}

void loop() {
  mb.addHreg(reg01CurXPos, 1);
  delay(10);
  mb.task(); // Call update on registrys for Modbus.

  Serial.print("Loop - ");
  Serial.println(looper);
  looper++;

  delay(10);
}

Any ideas on what is going on?

why would you be adding modbus registers in the main loop? The first line (mb.addHreg(reg01CurXPos, 1);)? you would probably do that once in your setup for the needed registers.

I see your thinking and i ended up solving the issue in a different way.
So this is not a critical issue for me atm, it was more a info that there is a potential serious memory hole in that command.
I did need to add some more registries in the main loop, on certain situations.
As I looked in the modbus.h i saw:
#define MAX_REGS     32
... and it fooled me into thinking i would at max get 32 registries anyways.
And ofc, if you add one registry with the same number as an existing one, its good practice (of what i have learned on my little coding time) to check if an existing registry is there, or to remove the old when the new one is added, so u dont get data a memory leak.
I never expected the "add" command to simply just add, until you crash the hardware, regardless of limits, and that is the bug i reported here.


exceptions.ShapeError: 17 column names provided for a dataframe of width 16

I am following this tutorial and I get the following exception:
   exceptions.ShapeError: 17 column names provided for a dataframe of width 16

lineitem.count() also throws another exception, namely,
   exceptions.ShapeError: 17 column names provided for a dataframe of width 16

and here is the code:
from pyquokka.df import *
qc = QuokkaContext()

disk_path = "Downloads/demo-tpch/"
# the last column is called NULL, because the TPC-H data generator likes to put a | at the end of each row, making it appear as if there is a final column
# with no values. Don't worry, we can drop this column.
lineitem_scheme = ["l_orderkey","l_partkey","l_suppkey","l_linenumber","l_quantity","l_extendedprice", "l_discount","l_tax","l_returnflag","l_linestatus","l_shipdate","l_commitdate","l_receiptdate","l_shipinstruct","l_shipmode","l_comment", "null"]
#lineitem = qc.read_csv(disk_path + "lineitem.tbl", sep="|", has_header=True)
lineitem = qc.read_csv(disk_path + "lineitem.tbl", lineitem_scheme, sep="|")
orders = qc.read_csv(disk_path + "orders.tbl", sep="|", has_header=True)
customer = qc.read_csv(disk_path + "customer.tbl",sep = "|", has_header=True)
part = qc.read_csv(disk_path + "part.tbl", sep = "|", has_header=True)
supplier = qc.read_csv(disk_path + "supplier.tbl", sep = "|", has_header=True)
partsupp = qc.read_csv(disk_path + "partsupp.tbl", sep = "|", has_header=True)
nation = qc.read_csv(disk_path + "nation.tbl", sep = "|", has_header=True)
region = qc.read_csv(disk_path + "region.tbl", sep = "|", has_header=True)

lineitem.count()

I am using Arch Linux and redis-7.0.10-1.

Resolved


How to pass arguments to phantomjs execute file

I want to use phantomjs not only  in test environment.  Everything seems work well. But I have no idea that pass some arguments to phantomjs execute file.

I solved the problem.

close #75


Add missing bootstrap.sh an puppify scripts

The scripts are both mentioned and printed in the PBG3 book (and exist in the Beginner to Pro book), but do not exist in this repository.

Oh, I confused control-repo-3 with this one. Nevermind :-)
Neat book, btw!

Thanks @debuglevel! I'm glad you like the book. I just published a new one! https://bitfieldconsulting.com/books/fundamentals


add Types and optimizing animation

I hava test in Android 6.0, and it has a good jobs

For future reference @MaShizhen, note that TypeScript type checks are executed at compile time, and that the type declarations will have no impact on how application using this library run. You will need to use TypeScript tooling to check your declarations.

As of now, the declarations are totally broken. I've set my application to globally ignore them for the time being, but I hope they can be made functional soon.


Add rsyslog config for other xcache-derived services

Adds rsyslog config for atlas-xcache, cms-xcache, and stash-origin. Also pre-create the log files so rsyslog doesn't complain about their absence, and allow turning rsyslog off by setting NO_RSYSLOG=1 in the environment.


[WIP] DNS Server Implementation

Added DNS server implementation
Added example for a simple echo dns name server
Updated readme

(Missing test cases for Server, but would like the implementation to be reviewed)
Current Server implementation:
$loop = React\EventLoop\Factory::create();
$server = new React\Dns\Server\Server($loop);
$server->listen(53, '<IP_ADDRESS>');
$server->ready();

$server->on('query', function($question, $clientIP, $response, $deferred)
{
    /**
        @var $question  React\Dns\Query\Query
        @var $request   React\Dns\Model\Message
        @var $deferred  React\Promise\Deferred
    */

    // Add records to answer
    //$response->answers[] = new \React\Dns\Model\Record($question->name, $question->type, $question->class, rand(1,9999),
    //                                                   'DATA BASED ON TYPE GOES HERE');

    // or add records to authority and additional
    // $response->authority[] = new  \React\Dns\Model\Record(....)
    // $response->additional[] = new  \React\Dns\Model\Record(....)

    $deferred->resolve($response);

    // or reject this
    // $deferred->reject($response);
});

// print some stats as well
$loop->addPeriodicTimer(60, function() use($server)
{
    echo "DNS Server stats:\n";
    $server->stats();
});

$loop->run();

Thanks for your PR @attozk, :+1: on having a DNS server implementation!
This is a bit hard to review given how huge this PR is. Also, it appears to leak some changes that were meant to be part of #8, I guess?
Either way, is there anything that needs to be done to push this forward?

@clue server implementation is piggy backing on https://github.com/reactphp/dns/pull/8; otherwise the server implementation itself is pretty small.
You can see additional server setup examples I have drafted without the clutter @ https://github.com/hathoora/babaji-dns/tree/master/experiment


TypeError: must be str, not bytes

Hello.
I tried to run the initial example on my mac but does not seem working.
[~/src/MAIAN/tool -  (master)] $ python --version
Python 3.6.4
[~/src/MAIAN/tool -  (master)] $ geth version
Geth
Version: 1.8.1-stable
Architecture: amd64
Protocol Versions: [63 62]
Network Id: 1
Go Version: go1.10
Operating System: darwin
GOPATH=
GOROOT=/usr/local/opt/go/libexec
[~/src/MAIAN/tool -  (master)] $ python maian.py -s example_contracts/ParityWalletLibrary.sol WalletLibrary -c 0

====================================================================================================
[ ] Compiling Solidity contract from the file example_contracts/ParityWalletLibrary.sol ... Traceback (most recent call last):
  File "maian.py", line 182, in <module>
    main(sys.argv[1:])
  File "maian.py", line 98, in main
    compile_contract(args.soliditycode[0])
  File "~/src/MAIAN/tool/contracts.py", line 32, in compile_contract
    solo += l
TypeError: must be str, not bytes

same here:
% python maian.py -s s_functionalities.sol Plentix -c 0

====================================================================================================
[ ] Compiling Solidity contract from the file s_functionalities.sol ... Traceback (most recent call last):
  File "maian.py", line 182, in <module>
    main(sys.argv[1:])
  File "maian.py", line 98, in main
    compile_contract(args.soliditycode[0])
  File "/home/blacksheep/Documents/MAIAN-master/tool/contracts.py", line 32, in compile_contract
    solo += l
TypeError: must be str, not bytes

@makoto @fccbb  I changed sole += l into solo += bytes.decode(l) in contracts.py line 32.
Also, same issue in blockchain.py line 84, out2.find should be bytes.decode(out2).

worked thank you very much @cookedsteak!


Apply JoJoGAN on car

Hi all, did anyone try to apply JoJoGAN on car images (or other kinds of images)? I tried to replace both the e4e pretrained weight file and StyleGAN2 pretrained weight file with the car-specific one and then finetuned the StyleGAN generator. But the result was not good. It seems that the generator was not finetuned at all...

can you share the results? One potential source for bugs is that face stylegan is generating at 1024 resolution while cars I believe is at 512. So you might have to change some variables to ensure the right model is loaded.
I have tried it on churches and the results are fine so I don't see why it wouldn't work on cars.

Thanks for your reply. Yes, I think the model and the corresponding weight is loaded without bug. Below is one of my result, the first one is inferencing the finetuned generator and the second one is putting the inversion latent code into the generator before without finetune. It seems that the change is very slight and the direction of change seems wrong. I also notice that the loss while finetuning fluctuate a lot even though when I decrease the learning rate to 2e-4. Sometimes the loss decrease to a very low level very fast, which I think may be one reason that causes the generator was not finetuned correctly.

Yes, the first figure is the style reference, the second one is the test input and the last one is feeding the inversion code of the test input into the fine-tuned generator / original generator. I think we have solved the problem by adjusting discriminator's structure since there was some conflicts between the model and the weights file. But we also find that finetuning a car specific JoJoGAN is harder than a human face one (usually takes more iteration to get the same level of loss). Moreover, the content of the test input is often missed by the inference result. Is this to do with the styleGAN generator?

Ah that is right. The discriminator loss function assumes that the image is 1024, I forgot about that, good catch. It seems like the inversion is really bad in your case, not sure why. The inverted car looks nothing like the input car. Poor GAN inversion could be the reason why it takes longer to train and might get poorer results

Understood, thank you very much!

@mchong6 HI! I am also trying to utilize face model with 512x512 size. But, it seems there are some problems I couldn't catch. Could you point which parts I should change to run 512x512 model? Thank you!


seems not compatible with new Ansible version(<IP_ADDRESS>)

josephl-mbp:light-ipfabric-2S-3L josephl$ vagrant up
Bringing machine 'spine1' up with 'virtualbox' provider...
Bringing machine 'spine2' up with 'virtualbox' provider...
Bringing machine 'leaf1' up with 'virtualbox' provider...
Bringing machine 'srv1' up with 'virtualbox' provider...
Bringing machine 'leaf2' up with 'virtualbox' provider...
Bringing machine 'srv2' up with 'virtualbox' provider...
Bringing machine 'leaf3' up with 'virtualbox' provider...
Bringing machine 'srv3' up with 'virtualbox' provider...
==> spine1: Checking if box 'juniper/vqfx10k-re' is up to date...
==> spine1: Machine already provisioned. Run vagrant provision or use the --provision
==> spine1: flag to force provisioning. Provisioners marked to run always will still run.
==> spine2: Checking if box 'juniper/vqfx10k-re' is up to date...
==> spine2: Machine already provisioned. Run vagrant provision or use the --provision
==> spine2: flag to force provisioning. Provisioners marked to run always will still run.
==> leaf1: Checking if box 'juniper/vqfx10k-re' is up to date...
==> leaf1: Machine already provisioned. Run vagrant provision or use the --provision
==> leaf1: flag to force provisioning. Provisioners marked to run always will still run.
==> srv1: Checking if box 'robwc/minitrusty64' is up to date...
==> srv1: Clearing any previously set forwarded ports...
==> srv1: Fixed port collision for 22 => 2222. Now on port 2202.
==> srv1: Clearing any previously set network interfaces...
==> srv1: Preparing network interfaces based on configuration...
srv1: Adapter 1: nat
srv1: Adapter 2: intnet
==> srv1: Forwarding ports...
srv1: 22 (guest) => 2202 (host) (adapter 1)
==> srv1: Running 'pre-boot' VM customizations...
==> srv1: Booting VM...
==> srv1: Waiting for machine to boot. This may take a few minutes...
srv1: SSH address: <IP_ADDRESS>:2202
srv1: SSH username: vagrant
srv1: SSH auth method: private key
==> srv1: Machine booted and ready!
==> srv1: Checking for guest additions in VM...
srv1: The guest additions on this VM do not match the installed version of
srv1: VirtualBox! In most cases this is fine, but in rare cases it can
srv1: prevent things such as shared folders from working properly. If you see
srv1: shared folder errors, please make sure the guest additions within the
srv1: virtual machine match the version of VirtualBox you have installed on
srv1: your host and reload your VM.
srv1:
srv1: Guest Additions Version: 4.3.10
srv1: VirtualBox Version: 5.2
==> srv1: Setting hostname...
==> srv1: Configuring and enabling network interfaces...
==> srv1: Running provisioner: ansible...
Vagrant has automatically selected the compatibility mode '2.0'.    <<<<<<<<<<<<<<<<<<<<<<
according to the Ansible version installed (<IP_ADDRESS>).       <<<<<<<<<<<<<<<<<<<<<<
Alternatively, the compatibility mode can be specified in your Vagrantfile:
https://www.vagrantup.com/docs/provisioning/ansible_common.html#compatibility_mode
srv1: Running ansible-playbook...

[WARNING]: Unable to set correct type for configuration entry:
DEFAULT_LOCAL_TMP
[DEPRECATION WARNING]: 'include' for playbook includes. You should use
'import_playbook' instead. This feature will be removed in version 2.8.
Deprecation warnings can be disabled by setting deprecation_warnings=False in
ansible.cfg.
ERROR! the role 'Juniper.junos' was not found in /Users/josephl/vqfx-demo/vqfx10k-vagrant/light-ipfabric-2S-3L/roles:/Users/josephl/.ansible/roles:/usr/share/ansible/roles:/etc/ansible/roles:/Users/josephl/vqfx-demo/vqfx10k-vagrant/light-ipfabric-2S-3L/roles:/Users/josephl/vqfx-demo/vqfx10k-vagrant/light-ipfabric-2S-3L
The error appears to have been in '/Users/josephl/vqfx-demo/vqfx10k-vagrant/light-ipfabric-2S-3L/roles/vagrant-base/meta/main.yaml': line 10, column 6, but may
be elsewhere in the file depending on the exact syntax problem.
The offending line appears to be:
dependencies:

{ role: Juniper.junos }
^ here

Ansible failed to complete successfully. Any error output should be
visible above. Please fix these errors and try again.

This is not Ansible's fault. You need to install the custom Juniper module from Ansible galaxy.
ansible-galaxy install juniper.junos
Alternatively, you can declare a specific version of the Juniper modle like below:
ansible-galaxy install juniper.junos,2.0.2
Some other considerations are the roles_path in /etc/ansible/ansible.cfg typically defaults to `/etc/ansible/roles ... This is typically where you want to check to ensure the modules from ansible-galaxy were properly installed.

@jasweet @joseph0705 how did u get it working?
I installed dependencies with both pip and pip3
Installed juniper.junos role from ansible-galaxy
olof@80003v-app005:~/vqfx10k-vagrant/full-2qfx-4srv-evpnvxlan$ ls -l /etc/ansible/roles/
total 4
d-wx--x--x 10 olof olof 4096 nov.   7 14:44 juniper.junos
olof@80003v-app005:~/vqfx10k-vagrant/full-2qfx-4srv-evpnvxlan$ ls -l /home/olof/.ansible/roles/
total 4
drwxr-xr-x 10 olof olof 4096 nov.   7 14:26 juniper.junos
olof@80003v-app005:~/vqfx10k-vagrant/full-2qfx-4srv-evpnvxlan$ grep roles /etc/ansible/ansible.cfg
# additional paths to search for roles in, colon separated
#roles_path    = /etc/ansible/roles
# by default, variables from roles will be visible in the global variable
olof@80003v-app005:~/vqfx10k-vagrant/full-2qfx-4srv-evpnvxlan$ ansible --version
ansible 2.7.1
  config file = /home/olof/vqfx10k-vagrant/full-2qfx-4srv-evpnvxlan/ansible.cfg
  configured module search path = [u'/home/olof/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/dist-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.15rc1 (default, Apr 15 2018, 21:51:34) [GCC 7.3.0]
olof@80003v-app005:~/vqfx10k-vagrant/full-2qfx-4srv-evpnvxlan$ vagrant --version
Vagrant 2.2.0
olof@80003v-app005:~/vqfx10k-vagrant/full-2qfx-4srv-evpnvxlan$ vboxmanage --version
5.2.10_Ubuntur121806


Resources created using client opts are not cleaned up on failure

Currently the resource created using opts like WithNewSnapshot are not cleaned up if the container/task creation fails. There needs to be be a deferred clean up on failure.

@Random-Liu @mikebrow this came up during the client integration for cli-containerd.

@abhinandanpb Thanks for filing this issue!

This has been resolved for the 1.0 release.  If there are more that do not have cleanup, please open specific issues for other ones.


phantom.js on windows retuns blank page of https://www.tumblr.com

I tested it on linux and it works correctly but I run that simple
one url page https://www.tumblr.com on 3 different windows instances and they all return
about:blank page, no content.
What is even more strange when I used fiddler as a proxy, trying to trace requests
it works but as soon as I exit fiddler it again returns blank page.

Fixed in 2.0. Please upgrade to PhantomJS 2.0.


Instance variables undefined

This is a:

[X] Bug Report
[ ] Feature Request
[ ] Question
[ ] Other

Which concerns:

[X] flow-runtime
[X] babel-plugin-flow-runtime
[ ] flow-runtime-validators
[ ] flow-runtime-mobx
[ ] flow-config-parser
[ ] The documentation website

What is the current behaviour?

export default class Thumbnail extends React.Component<DefaultProps, Props, void> {
    foo: boolean;

    constructor(props: Props) {
        super(props);

        this.foo = true; // -> set to true!

        console.log(this.foo); // -> true here.
    }

    render() {
        console.log(this.foo); // -> undefined here, expected true.

        return Something;
    }
}

After some debugging, I found the following 'difference'. This code is executed directly after the constructor.

What is the expected behaviour?

The expected behaviour is observed when I remove flow-runtime from my .babelrc. I expect to see true in the console once the render() method is invoked.
This is my .babelrc:
{
    "presets": [
        ["env", {
            "targets": {
                "chrome": 57
            },
            "modules": false,
        }],
        "react",
        "stage-0"
    ],
    "plugins": [
        "transform-runtime",
        "transform-decorators-legacy",
        "transform-react-display-name",
        "react-hot-loader/babel",
        ["flow-runtime", {
            "assert": true,
            "annotate": true
        }]
    ]
}

Which package versions are you using?

<EMAIL_ADDRESS><EMAIL_ADDRESS>

I can also confirm that flow-runtime works when I change my .babelrc to use the babel-preset-es2015 preset instead of babel-preset-env (with Chrome 57 as target since I want to use native goodies).

Ok, I can't replicate the error using the online demo page, from your second comment it sounds like it only happens when native classes are used, but when I try and recreate without transpilation then everything still works, so I'm not quite sure what's going on here. I guess this could be related to the enumerability of the class property, so if you just remove the class property declaration for foo does it go away? What happens if you give foo a default value, foo: boolean = false, does that affect the result?

Some more tests (same .babelrc):
// @flow

import React from 'react';

/**
 * Media file thumbnail component.
 */
export default class Minimal extends React.Component {
    foo: boolean = false; // -> Note: false

    /**
     * @inheritdoc
     */
    constructor(props: Object) {
        super(props);

        this.foo = true; // -> Note: true
    }

    render() {
        console.log(this.foo); // -> outputs false instead of true

        return Something;
    }
}

and also (note the $FlowFixMe):
// @flow

import React from 'react';

/**
 * Media file thumbnail component.
 */
export default class Minimal extends React.Component {
    /**
     * @inheritdoc
     */
    constructor(props: Object) {
        super(props);

        // $FlowFixMe
        this.foo = true;
    }

    render() {
        // $FlowFixMe
        console.log(this.foo); // -> outputs true

        return Something;
    }
}

hmm, I wonder if this is related to plugin ordering in your .babelrc as I still cannot replicate here. Please try enabling babel's passPerPreset option, and move flow-runtime up to the top of your list of plugins.


Remove version: Google.Chrome.Canary version 128.0.6578.0

[Automated] It returns code over 400 in all urls
Microsoft Reviewers: Open in CodeFlow

URL: https://dl.google.com/release2/chrome/m7pkbox2jso4lfvhmporugxpni_128.0.6578.0/128.0.6578.0_chrome_installer.exe
Response Error: The remote server returned an error: (404) Not Found.
(Automated message - build 912)


u201c and u201d should also be considered as open

nltk.word_tokenize("The unicode 201C and 201D “LEFT(RIGHT) DOUBLE QUOTATION MARK” is also OPEN_PUNCT and CLOSE_PUNCT.")
result:
['The',
'unicode',
'201C',
'and',
'201D',
'“LEFT',
'(',
'RIGHT',
')',
'DOUBLE',
'QUOTATION',
'MARK”',
'is',
'also',
'OPEN_PUNCT',
'and',
'CLOSE_PUNCT',
'.']
note: there's word '“LEFT' and 'MARK”', which is unexpected.
(And also u+2018 and u+2019)

:+1:

@clouds56 Good catch!
It's tricky to fix it though. The original treebank tokenizer that word_tokenize wraps didn't get the u+2018 and u+2019 split either =(
$ wget https://web-beta.archive.org/web/20110604022401/http://www.cis.upenn.edu/~treebank/tokenizer.sed
--2017-04-10 18:20:35--  https://web-beta.archive.org/web/20110604022401/http://www.cis.upenn.edu/~treebank/tokenizer.sed
Resolving web-beta.archive.org... <IP_ADDRESS>
Connecting to web-beta.archive.org|<IP_ADDRESS>|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/plain]
Saving to: ‘tokenizer.sed’

tokenizer.sed                                   [ <=>                                                                                ]   2.15K  --.-KB/s    in 0s

2017-04-10 18:20:37 (48.9 MB/s) - ‘tokenizer.sed’ saved [2204]

$ cat test.txt
The unicode 201C and 201D “LEFT(RIGHT) DOUBLE QUOTATION MARK” is also OPEN_PUNCT and CLOSE_PUNCT.

$ sed -f tokenizer.sed test.txt
The unicode 201C and 201D “LEFT ( RIGHT ) DOUBLE QUOTATION MARK” is also OPEN_PUNCT and CLOSE_PUNCT .

Without changing how TreebankWordTokenizer works, to fix this, we might have to  duck_typing the TreebankWordTokenizerobject and also lump in with the chervon fix ( c.f. #1437, specifically https://github.com/nltk/nltk/pull/1437#issuecomment-234164667)


Probable issue in Dockerfile

What is the /hoem/node folder ? why /home/node ?
what is COPY . . ? why there is space between two dots? what is being copied ?
@shant00 @mahabubul470

@imtiaz-rahi sir, COPY. . Implies that everything from the build context will be copied to workdir


Use javax @Convert annotation to convert attributes automatically

**Is your feature request related to a problem? Please describe.**
Hi @jzheng2017 ,
Thanks for the awesome library it is really simple and easy to use.
Use case:
use @Convert annotation to convert between one attribute type to another just like javax.persistence.Convert
Example
//one of the columns in entity
@Column(name = "UPDATE_DATETIME")
    @Convert(converter = LocalDateTimeConverter.class)
    private LocalDateTime updateDatetime;

//Convertor class
@Converter(autoApply = true)
public class LocalDateTimeConverter implements AttributeConverter<LocalDateTime, Timestamp> {

    @Override
    public Timestamp convertToDatabaseColumn(LocalDateTime localDateTime) {
        return localDateTime == null ? null : Timestamp.valueOf(localDateTime);
    }

    @Override
    public LocalDateTime convertToEntityAttribute(Timestamp timestamp) {
        return timestamp == null ? null : timestamp.toLocalDateTime();
    }

}

It will be really useful if we can automatically map the convertor class if the @convert annotation is present.
Thanks in advance!

Hey @kazablock thanks for using this library. This seems like an interesting feature. I'll get back to you soon, when I have more time to think about it.

Hi @kazablock , I've added support for attribute converting. See the commit that is linked to this issue. It is a bit different from the example you showed. Your example has a two way mapping from database object to entity attribute and the other way around. This would not make sense in the context of this library as the mapping is only one way. Therefore the attribute converting is also one way.
I will update the documentation and make a new release soon.

Documentation has been updated and release has been made.

Thanks a lot 😀

Thanks a lot 😀

No problem, let me know if it works alright for you.


Turning on looping related analysis

In infer/infer/tests/codetoanalyze/java/infer/ArrayOutOfBounds.java it says
// tests below this line are turned off until array functionality improves
These are loop related analysis. I was wondering if this feature can be turned on somewhere? If not, are the developers anticipating to see the improvement of this functionality?
Thanks!

Hi @Tony-Mao, there is a rudimentary array bounds analysis in Infer, but the reports are filtered out by default as this feature is not supported at the moment and performs quite poorly. You can remove error filtering by running with the --no-filtering option (see infer --help).
We're working on improving the array bounds analysis.


Print time estimates until completion

In progress screenshot and a screenshot of a completed training run on testnet

@jeff-pow I think it would be cool to format it like:
epoch 4 [25.9% (42368/163400 batches, 13970986 pos/sec)]
Estimated time to end of epoch: 142s

epoch 4 | time 188s | running loss 0.002856 | 14229703 pos/sec | total time 785s
Estimated time remaining in training: 0h 3m 16s

No need for the fractional seconds, idk why I did that
- ansi!(format!("{epoch_time:.2}"), num_cs, esc),
+ ansi!(format!("{epoch_time:.0}"), num_cs, esc),

and I'd prefer that rather than calling timer.elapsed().as_secs_f32() three times, just make a variable
let total_time = timer.elapsed().as_secs_f32();

On second thought, I think I'm gonna rework the whole trainer output, as I'm not happy with how the training code is polluted with a bunch of print statements and formatting atm. Thanks for the PR, will update you later.


Cover counts mismatched after adding new cover

The pagination count is correct; the footer count remains the same as when the site was built and does not increment.

Resolved in #111


Running monsterkong and flappybird game

Hi, how can I manage to run the monsterkong or flappy bird game? They don't have a main method attached to them.
I am able to run all the other games like Pong etc. via python.
Thanks!

Nevermind, the init files were lacking the main function, wrote one and got the games to run.


Repeatable commands async execution

I've created simple spring boot app which takes two commands A and B, each with required option -r and enabled repeatable commands so that I can run it with arguments 'A -r 1 B -r 2'
I'd like to see A and B commands executed asynchronously, is it possible?
Repo is here
https://github.com/sergproua/learn-picocli

Yes you can start a new thread in the run or call method of your command:
@Command
public void MyCommand implements Runnable {
    @Option(names = "-x") int x;

    public void run() {
        new Thread() {
            public void run() { runInOtherThread(); }
        }.start();
    }
    private void runInOtherThread() {
        // business logic here
    }
}

Yes, the solution will work. Is it possible to get list of commands in the top level command CommandRoot and execute all of them the way I want instead of default picocli command executor?

Closing as it is discussed in #1194

Yes, the alternative you proposed in #1194 to use a custom execution strategy also works.
Thread pool
Bear in mind that the mechanism you proposed (parallel streams) uses Java's fork-join framework's common pool. Unless specified otherwise, the number of threads in the common pool is equal to (the number of processor cores -1).
I imagine that on a machine with many cores, this will spin up many threads, potentially many more than the number of commands that will actually be executed. Not sure if this will significantly impact the performance of your application, but I just wanted to mention this so you are aware of it. If this could be a problem, one way to address this is with a custom thread pool:
public class AsyncExecutionStrategy implements CommandLine.IExecutionStrategy {
    @Override
    public int execute(CommandLine.ParseResult parseResult) {
        List<CommandLine> cmds = parseResult.asCommandLineList();
        List<CommandLine> repeatable = filterRepeatable(cmds); // keep only the repeatable subcommands

        ForkJoinPool customThreadPool = new ForkJoinPool(repeatable.size());
        customThreadPool.submit(
            () -> repeatable.parallelStream().
                .forEach(commandLine -> new CommandLine.RunLast().execute(commandLine.getParseResult()));

        // BEWARE: this returns SUCCESS immediately
        // regardless of the result of the actually executed commands
        return 0;
    }

    private List<CommandLine> filterRepeatable(List<CommandLine> all) {
        return all.subList(indexOfLastSubcommandWithSameParent(all), all.size());
    }

Caution
Also, with this approach there are two more things your application becomes responsible for:

figuring out which of the commands in the list returned by ParseResult::asCommandLineList need to be executed
figuring out which exit code to return

Selection
I commented on #1194 with regards to the first issue, as it is a general problem with repeatable subcommands, not specific to async execution.
Exit code
Regarding the exit code, if your application cares about returning the correct exit code, you will need to collect the return values of RunLast::execute and select the most urgent value to return.
I will post the essence of picocli's internal implementation below, I don't think this is documented in the picocli user manual, but the approach is very similar to Spring's approach when multiple sources contribute exit codes:
            List<Integer> candidates = resultsFromExecution();

            // Use the highest value (or if all values are negative, use the lowest value).
            int result = 0;
            for (int exitCode : candidates) {
                    if ((exitCode > 0 && exitCode > result) || (exitCode < result && result <= 0)) {
                        result = exitCode;
                    }
            }