[HTTP] Behaviour for HEAD requests is incorrect

Consider the following sample:
import ballerina/http;

endpoint http:Listener passthroughEP {
    port:9090
};

endpoint http:Client clientEP {
    url:"http://localhost:9092/hello"
};

@http:ServiceConfig {
}
service<http:Service> passthrough bind passthroughEP {

    @http:ResourceConfig {
        path:"/"
    }
    passthrough (endpoint outboundEP, http:Request req) {
        var clientResponse = clientEP->forward("/", req);

        match clientResponse {
            http:Response res => {
                _ = outboundEP -> respond(res);
            }
            http:HttpConnectorError err => {
                http:Response res = new;
                res.statusCode = 500;
                res.setStringPayload(err.message);
                _ = outboundEP -> respond(res);
            }
        }
    }
}

endpoint http:Listener helloEP {
    port:9092
};

@http:ServiceConfig {
}
service<http:Service> hello bind helloEP {

    @http:ResourceConfig {
        path:"/"
    }
    helloResource (endpoint outboundEP, http:Request req) {
        http:Response res = new;
        res.setStringPayload("Hello World!");
        _ = outboundEP -> respond(res);
    }
}

The first request to this gets served properly. However, when the 2nd request is sent, it hangs. Internally, it seems the payload is not discarded properly. Therefore when the 2nd request comes, parts of that remnant payload gets set as the HTTP version, leading to an IlleganArgumentException being thrown.

HTTP trace log for the first and second requests.
[2018-04-20 15:09:09,811] TRACE {http.tracelog.downstream} - [id: 0xc08d5955] REGISTERED
[2018-04-20 15:09:09,814] TRACE {http.tracelog.downstream} - [id: 0xc08d5955, correlatedSource: n/a, host:/<IP_ADDRESS>:9090 - remote:/<IP_ADDRESS>:38226] ACTIVE
[2018-04-20 15:09:09,837] TRACE {http.tracelog.downstream} - [id: 0xc08d5955, correlatedSource: n/a, host:/<IP_ADDRESS>:9090 - remote:/<IP_ADDRESS>:38226] INBOUND: DefaultHttpRequest(decodeResult: success, version: HTTP/1.1)
HEAD /passthrough HTTP/1.1
Host: localhost:9090
User-Agent: curl/7.47.0
Accept: */*
[2018-04-20 15:09:09,852] TRACE {http.tracelog.downstream} - [id: 0xc08d5955, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9090 - remote:localhost/<IP_ADDRESS>:38226] INBOUND: EmptyLastHttpContent, 0B
[2018-04-20 15:09:09,857] TRACE {http.tracelog.downstream} - [id: 0xc08d5955, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9090 - remote:localhost/<IP_ADDRESS>:38226] READ COMPLETE
[2018-04-20 15:09:09,949] TRACE {http.tracelog.upstream} - [id: 0x492fa0f4] REGISTERED
[2018-04-20 15:09:09,950] TRACE {http.tracelog.upstream} - [id: 0x492fa0f4] CONNECT: localhost/<IP_ADDRESS>:9092, null
[2018-04-20 15:09:09,952] TRACE {http.tracelog.downstream} - [id: 0xe5907dcd] REGISTERED
[2018-04-20 15:09:09,953] TRACE {http.tracelog.downstream} - [id: 0xe5907dcd, correlatedSource: n/a, host:/<IP_ADDRESS>:9092 - remote:/<IP_ADDRESS>:58626] ACTIVE
[2018-04-20 15:09:09,955] TRACE {http.tracelog.upstream} - [id: 0x492fa0f4, correlatedSource: 0xc08d5955, host:/<IP_ADDRESS>:58626 - remote:localhost/<IP_ADDRESS>:9092] ACTIVE
[2018-04-20 15:09:09,956] TRACE {http.tracelog.upstream} - [id: 0x492fa0f4, correlatedSource: 0xc08d5955, host:/<IP_ADDRESS>:58626 - remote:localhost/<IP_ADDRESS>:9092] OUTBOUND: DefaultHttpRequest(decodeResult: success, version: HTTP/1.1)
HEAD /hello/ HTTP/1.1
Accept: */*
user-agent: curl/7.47.0
host: localhost:9092
connection: keep-alive
[2018-04-20 15:09:09,959] TRACE {http.tracelog.upstream} - [id: 0x492fa0f4, correlatedSource: 0xc08d5955, host:/<IP_ADDRESS>:58626 - remote:localhost/<IP_ADDRESS>:9092] OUTBOUND: EmptyLastHttpContent, 0B
[2018-04-20 15:09:09,960] TRACE {http.tracelog.upstream} - [id: 0x492fa0f4, correlatedSource: 0xc08d5955, host:/<IP_ADDRESS>:58626 - remote:localhost/<IP_ADDRESS>:9092] FLUSH
[2018-04-20 15:09:09,962] TRACE {http.tracelog.downstream} - [id: 0xe5907dcd, correlatedSource: n/a, host:/<IP_ADDRESS>:9092 - remote:/<IP_ADDRESS>:58626] INBOUND: DefaultHttpRequest(decodeResult: success, version: HTTP/1.1)
HEAD /hello/ HTTP/1.1
Accept: */*
user-agent: curl/7.47.0
host: localhost:9092
connection: keep-alive
[2018-04-20 15:09:09,963] TRACE {http.tracelog.downstream} - [id: 0xe5907dcd, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9092 - remote:localhost/<IP_ADDRESS>:58626] INBOUND: EmptyLastHttpContent, 0B
[2018-04-20 15:09:09,970] TRACE {http.tracelog.downstream} - [id: 0xe5907dcd, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9092 - remote:localhost/<IP_ADDRESS>:58626] READ COMPLETE
[2018-04-20 15:09:09,991] TRACE {http.tracelog.downstream} - [id: 0xe5907dcd, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9092 - remote:localhost/<IP_ADDRESS>:58626] OUTBOUND: DefaultFullHttpResponse(decodeResult: success, version: HTTP/1.1, content: CompositeByteBuf(ridx: 0, widx: 12, cap: 12, components=1))
HTTP/1.1 200 OK
content-type: text/plain
content-length: 12
server: ballerina/0.970.0-beta4-SNAPSHOT
date: Fri, 20 Apr 2018 15:09:09 +0530, 12B
Hello World!
[2018-04-20 15:09:09,993] TRACE {http.tracelog.downstream} - [id: 0xe5907dcd, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9092 - remote:localhost/<IP_ADDRESS>:58626] FLUSH
[2018-04-20 15:09:09,996] TRACE {http.tracelog.upstream} - [id: 0x492fa0f4, correlatedSource: 0xc08d5955, host:/<IP_ADDRESS>:58626 - remote:localhost/<IP_ADDRESS>:9092] INBOUND: DefaultHttpResponse(decodeResult: success, version: HTTP/1.1)
HTTP/1.1 200 OK
content-type: text/plain
content-length: 12
server: ballerina/0.970.0-beta4-SNAPSHOT
date: Fri, 20 Apr 2018 15:09:09 +0530
[2018-04-20 15:09:09,998] TRACE {http.tracelog.upstream} - [id: 0x492fa0f4, correlatedSource: 0xc08d5955, host:/<IP_ADDRESS>:58626 - remote:localhost/<IP_ADDRESS>:9092] INBOUND: EmptyLastHttpContent, 0B
[2018-04-20 15:09:09,999] TRACE {http.tracelog.upstream} - [id: 0x492fa0f4, correlatedSource: 0xc08d5955, host:/<IP_ADDRESS>:58626 - remote:localhost/<IP_ADDRESS>:9092] READ COMPLETE
[2018-04-20 15:09:10,000] TRACE {http.tracelog.downstream} - [id: 0xc08d5955, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9090 - remote:localhost/<IP_ADDRESS>:38226] OUTBOUND: DefaultFullHttpResponse(decodeResult: success, version: HTTP/1.1, content: CompositeByteBuf(ridx: 0, widx: 0, cap: 0, components=1))
HTTP/1.1 200 OK
content-type: text/plain
date: Fri, 20 Apr 2018 15:09:09 +0530
cache-control: no-transform,public
server: ballerina/0.970.0-beta4-SNAPSHOT
content-length: 0, 0B
[2018-04-20 15:09:10,001] TRACE {http.tracelog.downstream} - [id: 0xc08d5955, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9090 - remote:localhost/<IP_ADDRESS>:38226] FLUSH
[2018-04-20 15:09:10,002] TRACE {http.tracelog.downstream} - [id: 0xc08d5955, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9090 - remote:localhost/<IP_ADDRESS>:38226] READ COMPLETE
[2018-04-20 15:09:10,004] TRACE {http.tracelog.downstream} - [id: 0xc08d5955, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9090 - remote:localhost/<IP_ADDRESS>:38226] INACTIVE
[2018-04-20 15:09:10,004] TRACE {http.tracelog.downstream} - [id: 0xc08d5955, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9090 - remote:localhost/<IP_ADDRESS>:38226] CLOSE
[2018-04-20 15:09:10,007] TRACE {http.tracelog.downstream} - [id: 0xc08d5955, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9090 - remote:localhost/<IP_ADDRESS>:38226] UNREGISTERED

[2018-04-20 15:10:09,619] TRACE {http.tracelog.downstream} - [id: 0xdb452657] REGISTERED
[2018-04-20 15:10:09,622] TRACE {http.tracelog.downstream} - [id: 0xdb452657, correlatedSource: n/a, host:/<IP_ADDRESS>:9090 - remote:/<IP_ADDRESS>:38238] ACTIVE
[2018-04-20 15:10:09,624] TRACE {http.tracelog.downstream} - [id: 0xdb452657, correlatedSource: n/a, host:/<IP_ADDRESS>:9090 - remote:/<IP_ADDRESS>:38238] INBOUND: DefaultHttpRequest(decodeResult: success, version: HTTP/1.1)
HEAD /passthrough HTTP/1.1
Host: localhost:9090
User-Agent: curl/7.47.0
Accept: */*
[2018-04-20 15:10:09,626] TRACE {http.tracelog.downstream} - [id: 0xdb452657, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9090 - remote:localhost/<IP_ADDRESS>:38238] INBOUND: EmptyLastHttpContent, 0B
[2018-04-20 15:10:09,627] TRACE {http.tracelog.downstream} - [id: 0xdb452657, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9090 - remote:localhost/<IP_ADDRESS>:38238] READ COMPLETE
[2018-04-20 15:10:09,629] TRACE {http.tracelog.upstream} - [id: 0x492fa0f4, correlatedSource: 0xdb452657, host:/<IP_ADDRESS>:58626 - remote:localhost/<IP_ADDRESS>:9092] OUTBOUND: DefaultHttpRequest(decodeResult: success, version: HTTP/1.1)
HEAD /hello/ HTTP/1.1
Accept: */*
user-agent: curl/7.47.0
host: localhost:9092
connection: keep-alive
[2018-04-20 15:10:09,630] TRACE {http.tracelog.upstream} - [id: 0x492fa0f4, correlatedSource: 0xdb452657, host:/<IP_ADDRESS>:58626 - remote:localhost/<IP_ADDRESS>:9092] OUTBOUND: EmptyLastHttpContent, 0B
[2018-04-20 15:10:09,631] TRACE {http.tracelog.upstream} - [id: 0x492fa0f4, correlatedSource: 0xdb452657, host:/<IP_ADDRESS>:58626 - remote:localhost/<IP_ADDRESS>:9092] FLUSH
[2018-04-20 15:10:09,632] TRACE {http.tracelog.downstream} - [id: 0xe5907dcd, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9092 - remote:localhost/<IP_ADDRESS>:58626] INBOUND: DefaultHttpRequest(decodeResult: success, version: HTTP/1.1)
HEAD /hello/ HTTP/1.1
Accept: */*
user-agent: curl/7.47.0
host: localhost:9092
connection: keep-alive
[2018-04-20 15:10:09,634] TRACE {http.tracelog.downstream} - [id: 0xe5907dcd, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9092 - remote:localhost/<IP_ADDRESS>:58626] INBOUND: EmptyLastHttpContent, 0B
[2018-04-20 15:10:09,635] TRACE {http.tracelog.downstream} - [id: 0xe5907dcd, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9092 - remote:localhost/<IP_ADDRESS>:58626] READ COMPLETE
[2018-04-20 15:10:09,636] TRACE {http.tracelog.downstream} - [id: 0xe5907dcd, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9092 - remote:localhost/<IP_ADDRESS>:58626] OUTBOUND: DefaultFullHttpResponse(decodeResult: success, version: HTTP/1.1, content: CompositeByteBuf(ridx: 0, widx: 12, cap: 12, components=1))
HTTP/1.1 200 OK
content-type: text/plain
content-length: 12
server: ballerina/0.970.0-beta4-SNAPSHOT
date: Fri, 20 Apr 2018 15:10:09 +0530, 12B
Hello World!
[2018-04-20 15:10:09,636] TRACE {http.tracelog.downstream} - [id: 0xe5907dcd, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9092 - remote:localhost/<IP_ADDRESS>:58626] FLUSH
[2018-04-20 15:10:09,637] TRACE {http.tracelog.upstream} - [id: 0x492fa0f4, correlatedSource: 0xdb452657, host:/<IP_ADDRESS>:58626 - remote:localhost/<IP_ADDRESS>:9092] INBOUND: DefaultFullHttpResponse(decodeResult: failure(java.lang.IllegalArgumentException: invalid version format: HELLO), version: HTTP/1.0, content: UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf(ridx: 0, widx: 0, cap: 0))
HTTP/1.0 999 Unknown, 0B
[2018-04-20 15:10:09,642] TRACE {http.tracelog.upstream} - [id: 0x492fa0f4, correlatedSource: 0xdb452657, host:/<IP_ADDRESS>:58626 - remote:localhost/<IP_ADDRESS>:9092] READ COMPLETE

[2018-04-20 15:11:09,694] TRACE {http.tracelog.upstream} - [id: 0x492fa0f4, correlatedSource: 0xdb452657, host:/<IP_ADDRESS>:58626 - remote:localhost/<IP_ADDRESS>:9092] CLOSE
[2018-04-20 15:11:09,697] TRACE {http.tracelog.downstream} - [id: 0xe5907dcd, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9092 - remote:localhost/<IP_ADDRESS>:58626] READ COMPLETE
[2018-04-20 15:11:09,701] TRACE {http.tracelog.downstream} - [id: 0xdb452657, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9090 - remote:localhost/<IP_ADDRESS>:38238] OUTBOUND: DefaultFullHttpResponse(decodeResult: success, version: HTTP/1.1, content: CompositeByteBuf(ridx: 0, widx: 0, cap: 0, components=1))
HTTP/1.1 999 Unknown Status (999)
cache-control: no-transform,public
content-length: 0
server: ballerina/0.970.0-beta4-SNAPSHOT
date: Fri, 20 Apr 2018 15:11:09 +0530, 0B
[2018-04-20 15:11:09,703] TRACE {http.tracelog.downstream} - [id: 0xdb452657, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9090 - remote:localhost/<IP_ADDRESS>:38238] FLUSH
[2018-04-20 15:11:09,715] TRACE {http.tracelog.upstream} - [id: 0x492fa0f4, correlatedSource: 0xdb452657, host:/<IP_ADDRESS>:58626 - remote:localhost/<IP_ADDRESS>:9092] INACTIVE
[2018-04-20 15:11:09,701] TRACE {http.tracelog.downstream} - [id: 0xe5907dcd, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9092 - remote:localhost/<IP_ADDRESS>:58626] INACTIVE
[2018-04-20 15:11:09,722] TRACE {http.tracelog.downstream} - [id: 0xe5907dcd, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9092 - remote:localhost/<IP_ADDRESS>:58626] CLOSE
[2018-04-20 15:11:09,723] TRACE {http.tracelog.downstream} - [id: 0xe5907dcd, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9092 - remote:localhost/<IP_ADDRESS>:58626] UNREGISTERED
[2018-04-20 15:11:09,721] TRACE {http.tracelog.downstream} - [id: 0xdb452657, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9090 - remote:localhost/<IP_ADDRESS>:38238] READ COMPLETE
[2018-04-20 15:11:09,726] TRACE {http.tracelog.downstream} - [id: 0xdb452657, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9090 - remote:localhost/<IP_ADDRESS>:38238] INACTIVE
[2018-04-20 15:11:09,727] TRACE {http.tracelog.downstream} - [id: 0xdb452657, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9090 - remote:localhost/<IP_ADDRESS>:38238] CLOSE
[2018-04-20 15:11:09,728] TRACE {http.tracelog.downstream} - [id: 0xdb452657, correlatedSource: n/a, host:localhost/<IP_ADDRESS>:9090 - remote:localhost/<IP_ADDRESS>:38238] UNREGISTERED
[2018-04-20 15:11:09,731] TRACE {http.tracelog.upstream} - [id: 0x492fa0f4, correlatedSource: 0xdb452657, host:/<IP_ADDRESS>:58626 - remote:localhost/<IP_ADDRESS>:9092] UNREGISTERED


Overlapping text in interoperability page

Fixes https://github.com/italia/developers.italia.it/issues/1415
This PR introduces a temporary (and ugly) fix that avoids overlapping column text in the interoperability page.

Ready for review.
Here's a fix that solves the issue temporarily. I don't personally like the solution, but unless we want to proceed with something different like clamping the line or fitting the content, which changes the majorly layout, this works.

@bfabio tagging you here as well in case you missed this one.

Thanks @smonolo, let's use this as a temporary fix. I'll keep the issue open for a more permanent fix.


Bug in LoginAndAuthHelper.java, onActivityResult()

Hi Roman,
First, thank you and your fellow teammembers for posting this great example.
I've been trying to use the LoginAndAuthHelper class and noticed what appears to be a bug --
The code will never enter the second check for requestCode == REQUEST_RECOVER_FROM_PLAY_SERVICES_ERROR, since it's nested inside the first IF check.
I think you want another OR clause in the first check.
/** Handles an Activity result. Call this from your Activity's onActivityResult(). */
public boolean onActivityResult(int requestCode, int resultCode, Intent data) {
    Activity activity = getActivity("onActivityResult()");
    if (activity == null) {
        return false;
    }

    if (requestCode == REQUEST_AUTHENTICATE ||
            requestCode == REQUEST_RECOVER_FROM_AUTH_ERROR ||
            requestCode == REQUEST_PLAY_SERVICES_ERROR_DIALOG) {

        LOGD(TAG, "onActivityResult, req=" + requestCode + ", result=" + resultCode);
        if (requestCode == REQUEST_RECOVER_FROM_PLAY_SERVICES_ERROR) {
            mResolving = false;
        }

.
.
.

I think this was resolved in the 2015 source. Please re-open if you don't think so.


WARNING in Duplicated path in loadChildren detected during a rebuild

Versions
Angular CLI: 1.5.0
Node: 8.9.1
OS: win32 x64
Angular: 5.0.5
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router

@angular/cli: 1.5.0
@angular-devkit/build-optimizer: 0.0.34
@angular-devkit/core: 0.0.22
@angular-devkit/schematics: 0.0.38
@ngtools/json-schema: 1.1.0
@ngtools/webpack: 1.8.0
@schematics/angular: 0.1.8
typescript: 2.4.2
webpack: 3.8.1

Repro steps

Checkout the project : https://github.com/arnaudoisel/lazy-loading-routes-bug
> yarn (or npm install)
> ng serve
Modify the "routes.ts" file (by adding a comment for example)
Save the file
=> The warning will be displayed in the console

Observed behavior
With Angular CLI, if a project contains a module that is lazy loaded, when we modify the file containing the routes, after the automatic rebuild by Angular CLI, the following warning message is displayed in the console :
WARNING in Duplicated path in loadChildren detected during a rebuild. We will take the latest version detected and override it to save rebuild time. You should perform a full build to validate that your routes don't overlap.

Desired behavior
Desired : No warning message displayed in console.
Otherwise it might cause bugs while developping. And even without any real issue, the warning message is a bit scary and could prevent from acknowledging real bugs in the application.

如何解决呢？？

node 9.1.0 angular-cli 1.5.5 loadChildren.....

I find this warning confusing. It does not specify which routes were overlapping or for which paths. It is also unclear to me what the CLI is doing to save rebuild time. I appreciate that this warning his here but I'm not sure what to do about it or how likely it is a problem.
I'm seeing this warning twice per build, probably because it is checked by two systems:
https://github.com/angular/angular-cli/blob/4b0c7a35359effc1d93cd3bb5ddc5c441b3cf154/packages/%40ngtools/webpack/src/angular_compiler_plugin.ts#L448-L455
https://github.com/angular/angular-cli/blob/6984cc2b68dac568255fd27e8ec84d53052ea6c3/packages/%40ngtools/webpack/src/plugin.ts#L319-L325

same error here:

same issue

Warnings are gone in @angular/cli v1.6

Warnings also exist in Angular CLI: 1.6.0

Yep, same issue, project builds and runs but it would be nice to understand why (no routes overlap in my config), very yellow and annoying

I also get a lot of yellow warnings but I think I found my issue.
In my layout routes:
const routes: Routes = [
    {
        path: '',
        component: LayoutComponent,
        children: [
            { path: '', redirectTo: 'dashboard' },
            { path: 'dashboard', loadChildren: './dashboard/dashboard.module#DashboardModule' },
            { path: 'charts', loadChildren: './charts/charts.module#ChartsModule' },
            { path: 'tables', loadChildren: './tables/tables.module#TablesModule' },
            { path: 'forms', loadChildren: './form/form.module#FormModule' },
            { path: 'bs-element', loadChildren: './bs-element/bs-element.module#BsElementModule' },
            { path: 'grid', loadChildren: './grid/grid.module#GridModule' },
            { path: 'components', loadChildren: './bs-component/bs-component.module#BsComponentModule' },
            { path: 'blank-page', loadChildren: './blank-page/blank-page.module#BlankPageModule' },
            { path: 'order', loadChildren: './order/order.module#OrderModule' },
            { path: 'threed', loadChildren: './threed/threed.module#ThreedModule'}
        ]
    }
];

If I add a , after the last one like this
{ path: 'threed', loadChildren: './threed/threed.module#ThreedModule'},
then it will dump several lines of yellow saying duplicates just like @istiti.

Warnings also exist in Angular CLI: 1.6.1

And in
"@angular/cli": "1.6.2",

Please fix this. This is so annoying. I could also reproduce and fix the warning by removing the albeit spurious comma in the children array.

Failed to compile.

Error: Duplicated path in loadChildren detected: "./equipment-children.module#EquipmentChildrenModule" is used in 2 loadChildren, but they point to different modules "(/home/www/angular/app/admin/equipment/equipment-children.module.ts and "/home/www/angular/app/admin/equipment/equipment/equipment-children.module.ts"). Webpack cannot distinguish on context and would fail to load the proper one.
    at /home/www/node_modules/@angular/compiler-cli/src/ngtools_api.js:59:23
    at Array.forEach (<anonymous>)
    at Function.NgTools_InternalApi_NG_2.listLazyRoutes (/home/www/node_modules/@angular/compiler-cli/src/ngtools_api.js:55:20)
    at AngularCompilerPlugin._getLazyRoutesFromNgtools (/home/www/node_modules/@ngtools/webpack/src/angular_compiler_plugin.js:248:66)
    at Promise.resolve.then.then (/home/www/node_modules/@ngtools/webpack/src/angular_compiler_plugin.js:565:50)
    at <anonymous>
    at process._tickCallback (internal/process/next_tick.js:188:7)

I put log in<EMAIL_ADDRESS> Here is a issue: if (this._lazyRoutes[moduleKey] !== modulePath). It seems path separator slashes doesn't match each other. _lazyRoutes take / and  modulePath takes \.
lazyRouter: D:/products/nes-web3/nes-web-beta/apps/nes/src/app/login/login.module.ts
modulePath: D:\products\nes-web3\nes-web-beta\apps\nes\src\app\login\login.module.

About the error: "WARNING in Duplicated path in loadChildren detected during a rebuild"...
I managed to fix this by adding the full path to the loadChildren string.
I changed the string  './orders/orders.module#OrdersModule' to 'app/orders/orders.module#OrdersModule'.
Now the error has gone, I think that this occurs because of the atribute string having the same path of the loadChildren...
Before (with error):
  { path: 'orders', loadChildren: './orders/orders.module#OrdersModule'}
Now:
  { path: 'orders', loadChildren: 'app/orders/orders.module#OrdersModule'}

I did the same as @frederikocmr did and it works like a charm! One must use the absolute path.

@frederikocmr  it  works thanks .

full path worked great!

@frederikocmr thank you very much

@frederikocmr  Thanks very a lot .

@frederikocmr it works thanks .

changing from ./employees/employees.module to app/employees/employees.module results in browser console error
Error: Cannot find module 'app/employees/employees.module'.
ng build bundles fine though.
both the app-routing.module.ts and employees folder are immediate children of the app folder


Fix Abort subscribe memory leak in processNodeWithInputData

This PR fixes a memory leak in adding listeners to an abort controller within the processNodeWithInputData. As this method is called multiple times, each time adding a listener but not removing the listener when done.
As reported in #253

@all-contributors please add @codemile for code


Pylance install hangs on Windows 10

This is also filed in https://github.com/microsoft/vscode/issues/173122 as I'm not sure where it belongs.
This is a copy of the same information in that ticket to save some clicking:
Type: Bug

Start VS Code
Make sure you are in Local mode and not Remote
Go to Extensions
Search for Pylance
Press Install button

What is expected:  Pylance extension is installed
What actually happens:  Install hangs and never finishes
Edit: Disabling all extensions has no effect on outcome
VS Code version: Code 1.74.3 (97dec172d3256f8ca4bfb2143f3f76b503ca0534, 2023-01-09T16:59:02.252Z)
OS version: Windows_NT x64 10.0.19044
Modes:
Sandboxed: No
Remote OS version: Linux x64 <IP_ADDRESS>-microsoft-standard-WSL2

System Info

Item
Value

CPUs
Intel(R) Core(TM) i5-10310U CPU @ 1.70GHz (8 x 2208)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_renderer: enabled_onvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: disabled_off

Load (avg)
undefined

Memory (System)
15.77GB (4.28GB free)

Process Argv
--crash-reporter-id 935dacf1-2f84-4f2c-b361-6d2163d7045f

Screen Reader
no

VM
0%

Item
Value

Remote
WSL: Ubuntu

OS
Linux x64 <IP_ADDRESS>-microsoft-standard-WSL2

CPUs
Intel(R) Core(TM) i5-10310U CPU @ 1.70GHz (8 x 2207)

Memory (System)
12.30GB (11.63GB free)

VM
0%

Extensions (8)

Extension
Author (truncated)
Version

gitlens
eam
13.2.0

jupyter
ms-
2022.11.1003412109

jupyter-keymap
ms-
1.0.0

jupyter-renderers
ms-
1.0.14

vscode-jupyter-cell-tags
ms-
0.1.6

vscode-jupyter-slideshow
ms-
0.1.5

remote-wsl
ms-
0.72.0

vetur
oct
0.36.1

A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383cf:30185419
vspor879:30202332
vspor708:30202333
vspor363:30204092
vswsl492:30256859
vslsvsres303:30308271
pythonvspyl392:30443607
vserr242:30382549
pythontb:30283811
vsjup518:30340749
pythonptprofiler:30281270
vsdfh931:30280409
vshan820:30294714
vstes263:30335439
vscoreces:30445986
pythondataviewer:30285071
vscod805cf:30301675
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
cmake_vspar411:30581797
vsaa593:30376534
pythonvs932:30410667
cppdebug:30492333
vsclangdc:30486549
c4g48928:30535728
dsvsc012cf:30540253
azure-dev_surveyonecf:30548226
pyindex848cf:30577861
nodejswelcome1:30587005
2e4cg342:30602488
89544117:30613380
pythonsymbol12cf:30652349
a9j8j154:30646983

Shared process Log, debug setting
2023-02-02 08:45:49.170 [info] Starting worker process with pid 14716 (type: fileWatcher, window: 1).
2023-02-02 08:45:49.675 [info] Deleted from disk redhat.vscode-xml c:\Users\myusername\.vscode\extensions\redhat.vscode-xml-0.24.0-win32-x64
2023-02-02 08:45:55.061 [info] Starting worker process with pid 25956 (type: fileWatcher, window: 3).
2023-02-02 08:46:16.709 [debug] User data changed
2023-02-02 08:46:18.482 [debug] User data changed
2023-02-02 08:46:31.805 [info] Getting Manifest... ms-python.vscode-pylance
2023-02-02 08:46:31.813 [info] Installing extension: ms-python.vscode-pylance
2023-02-02 08:46:34.032 [info] Getting Manifest... ms-python.python
2023-02-02 08:46:36.005 [debug] User data changed
2023-02-02 08:46:36.525 [info] Getting Manifest... ms-toolsai.jupyter
2023-02-02 08:46:37.113 [info] Getting Manifest... ms-python.isort
2023-02-02 08:46:37.373 [info] Installing extension: ms-python.python ms-python.vscode-pylance
2023-02-02 08:46:37.373 [info] Installing extension: ms-python.isort ms-python.vscode-pylance
2023-02-02 08:46:37.682 [debug] User data changed
2023-02-02 08:46:38.150 [debug] User data changed
2023-02-02 08:46:38.614 [debug] User data changed
2023-02-02 08:46:57.270 [debug] User data changed
2023-02-02 08:46:59.793 [debug] User data changed

Install wouldn't be handled by our extension. We just generate a zip file.
Do other extensions install?

maybe try deleting the downloaded pylance extension from c:\Users\XXXX\.vscode\extensions\

Thanks for looking into this.
@rchiodo other extensions install without problem.
@bschnurr yep tried that already with no change. Even tried deleting the whole folder. Same result.

I guess the better fit for this would then be over on vscode side where I posted the original issue.

windows defender maybe? exclude vscode process and folder?

Not likely given that other extensions install without problem.

we sometimes get our extension flagged by windows defender


Support graphics_pipeline_library

Don't assert some things are not null or NULL_HANDLE that can legitimately be null or NULL_HANDLE with graphics pipeline library.  Fix #889 and address the trimming failure noted in #1109.

CI gfxreconstruct build queued with queue ID 8876.

CI gfxreconstruct build # 2755 running.

CI gfxreconstruct build # 2755 passed.

CI gfxreconstruct build queued with queue ID 8899.

CI gfxreconstruct build # 2756 running.

CI gfxreconstruct build queued with queue ID 8913.

CI gfxreconstruct build # 2757 running.

CI gfxreconstruct build queued with queue ID 8943.

CI gfxreconstruct build queued with queue ID 8945.

CI gfxreconstruct build # 2758 passed.


Update IPsec to handle larger PSK values when using per-tunnel PSK

Please ensure your pull request adheres to the following guidelines:

[x] For first time contributors, read Submitting a pull request
[x] All code is covered by unit and/or runtime tests where feasible.
[x] All commits contain a well written commit description including a title,
description and a Fixes: #XXX line if the commit addresses a particular
GitHub issue.
[ ] If your commit description contains a Fixes: <commit-id> tag, then
please add the commit author[s] as reviewer[s] to this issue.
[x] All commits are signed off. See the section Developer’s Certificate of Origin
[x] Provide a title or release-note blurb suitable for the release notes.
[ ] Are you a user of Cilium? Please add yourself to the Users doc
[ ] Thanks for contributing!

For PSK values <= 32 bytes use SHA256 to compute the node key.  Otherwise use SHA512. This is needed to support GCM-256-AES since a PSK for this would require 36 bytes as per RFC 4106.
Fixes: #33457

/test


Add "X-Forwarded-For" header value to the log file.

Since there is no built in module to limit a number of login requests in verdaccio, it makes sense to use some log parser to find and block client with too many incorrect login attempts.
Unfortunately in the case of "behind the reverse proxy" setup, only proxy's IP address is logged.
Since the proxy is capable of sending X-Forwarded-For HTTP header it would be nice to have it included in the logs too.

Thanks for report, I will look into it.

@chronum You should see this feature in next patch release

Done on 2.2.1


Fix batched-deletion SimDevices sticking around

#14 waited on Simulators to actually be removed from the SimDeviceSet before returning from a deletion method, however this wasn't used in the batch deletion method `-[FBSimulatorPool deleteSimulators:withError:]. This PR fixes that.

lgtm


Build libblst with GCC for consistency

Previously it was trying to build it with Visual C compiler but run.me will wind up rebuilding with gcc. We could have potentially wound up with the portable flag being lost.
Pretty sure Visual C compiler isn't on the PATH for these windows boxes anyway so suspect the original build.bat call just wasn't doing anything.

LGTM, mostly, but not sure about the whole backslash situation with sh...

sh is taking a file path so since we're in powershell when we specify the command we use backslashes, then once sh is actually running it uses forward slashes.  It's all kinds of fun.


1.0

Merge 1.0 -> Master

Version 1.0.2.

Isn't master 1.0.2 already?

Yes, but there was one more change made


Fix CVE-2023-44487

Vulnerability CVE-2023-44487 is present in version 2.20.1, because the following dependencies are vulnerable:

<EMAIL_ADDRESS>Fixed in version<EMAIL_ADDRESS><EMAIL_ADDRESS>Fixed in versions<EMAIL_ADDRESS>@1.57.1, @1.58.3.

As this vulnerability is considered high due to the denial of service, I guess these dependencies should be updated.
Thanks!

Thanks for mentioning, I will update the dependencies.

I released v2.21.0 of the Chart with dependency updates for all components.


User input tutorial not clear enough

Reported on the forum

I think this was a misunderstanding about the bracket types for variable substitution, so I'm going to close this one.
For future reference, the Enter Name example in Fungus demonstrates how to do text entry like entering a player's name.


Custom plugins don't run for events queued before segment is fully loaded

I've followed the example code to create a plugin that anonymizes IP addresses in events before they get sent to Segment.
Our application is quite complicated and we execute calls to track(), page() and load() before the Segment JS file is fully loaded on our application.
We've observed that our custom plugin doesn't run for any events that are queued up before Segment is fully loaded. However, after segment is loaded, our plugin does work when calling analytics.track().
It turns out that this simple HTML file reproduces the issue exactly (run it in your browser using npx http-server or a similar local web server for static assets):
<html>

<body>
    <script>
        // Standard segment snippet from your documentation
        !function(){var analytics=window.analytics=window.analytics||[];if(!analytics.initialize)if(analytics.invoked)window.console&&console.error&&console.error("Segment snippet included twice.");else{analytics.invoked=!0;analytics.methods=["trackSubmit","trackClick","trackLink","trackForm","pageview","identify","reset","group","track","ready","alias","debug","page","once","off","on","addSourceMiddleware","addIntegrationMiddleware","setAnonymousId","addDestinationMiddleware"];analytics.factory=function(e){return function(){var t=Array.prototype.slice.call(arguments);t.unshift(e);analytics.push(t);return analytics}};for(var e=0;e<analytics.methods.length;e++){var key=analytics.methods[e];analytics[key]=analytics.factory(key)}analytics.load=function(key,e){var t=document.createElement("script");t.type="text/javascript";t.async=!0;t.src="https://cdn.segment.com/analytics.js/v1/" + key + "/analytics.min.js";var n=document.getElementsByTagName("script")[0];n.parentNode.insertBefore(t,n);analytics._loadOptions=e};analytics._writeKey="SEGMENT_KEY";analytics.SNIPPET_VERSION="4.15.2";

        analytics.load("SEGMENT_KEY");
        analytics.page();

        window.analytics.debug(true);

        var anonymizeIP = function (ctx) {
            console.log('Anonymize IP on Segment event', ctx);

            var event = ctx.event;
            event.context = event.context || {};

            event.context.ip = '<IP_ADDRESS>';

            return ctx;
        };

        window.analytics.ready(function() {
            console.log('ready', analytics);

            window.analytics.register({
                name: 'IP Anonymizer',
                version: '1.0.0',
                type: 'before',
                isLoaded: function () {
                    return true;
                },
                load: function() {},
                page: anonymizeIP,
                track: anonymizeIP,
                identify: anonymizeIP
            });
        });
        }}();
    </script>

    <button id="trackBtn">Track</button>

    <script>
        document.getElementById("trackBtn").addEventListener('click', function () {
            console.log('click');
            window.analytics.track('btnclick');
        });
    </script>
</body>

</html>

The outcome of opening this page in the browser is that the page and identify events are sent to Segment but no Anonymize IP on Segment event console log message is sent (ie. the plugin is not run, and the IPs are not anonymized).
However, clicking the "track" button sends a track event to segment with the anonymized IP, and the `Anonymize IP on Segment event console message is fired (ie. the plugin is run).
You can also see in the debug view that the IP Anonymizer plugin is not included in the list of events on page load, but is included in the list when the button is clicked.

I believe that this is a bug in the Segment script with how it handles plugins and queued events.
Please could you verify this and look into fixing it?

@agnieszkaziaja
Thanks for reporting this! I think there's 2 things we can do here.

Halt sending events until any registered plugins are finished loading, like we did with addSourceMiddleware
Update the snippet to also allow calling register before the library is loaded. You can test this easily yourself by adding the "register" string in the analytics.methods array from the snippet. Then register should be called before any events are sent.

I used the second solution, and everything works now, thank you!


Domain should be made available for rasa train nlu command if it's available

Part of #6638
Rasa version: master
Issue:
When issuing the command rasa train nlu, train_nlu is invoked inside rasa/train.py which does not have access to the domain. Since responses key can be defined in the domain file as well which may be needed for the response selector training, the file importer should get access to the domain as well if its available. Once that's done responses will be sync'ed with the NLU training data which was added as part of https://github.com/RasaHQ/rasa/pull/6591.
Without this, currently running rasa train nlu with ResponseSelector in the pipeline will lead to warnings such as -
Your training data contains an example 'What is your name?...' for the chitchat/ask_name intent. You either need to add a response phrase or correct the intent for this example in your training data. If you intend to use Response Selector in the pipeline, the training may fail.

because these response templates were defined under the responses key in the domain file.
rasa train command works completely fine.
Command or request that led to error:
rasa train nlu

fixed by https://github.com/RasaHQ/rasa/pull/6913


Use https://github.com/Naereen/Kullback-Leibler-divergences-and-kl-UCB-indexes/ as git submodule

As soon as my new module for KL divergences and kl-UCB indexes is ready and finished, I need to use it in SMPyBandits, as a git submodule.

:no_entry: I don't want to require to have git for this software to work, or pip. So nope, kullback.py will stay there.


[x/gamm][stableswap]: Begin factoring in swap fees to single asset joins

Closes: #1368 (this is the last step left in LP share derivation)
What is the purpose of the change
This PR adds swap fee support for single asset joins.
It currently does not pass tests because it hits precision issues (we cannot use our BigDec binary search since we are dealing with pool interface functions and will likely need to implement internal BigDec versions of SwapExactAmountIn, JoinPool, and ExitPool to make the approach I use here work.
Brief Changelog

Factor in swap fee to single asset join tokenIn
(Might change if able to use BigDec): scale up new tokenIn amount to be an integer, and scale pool assets up proportionally (by 10^18) since our LP share binary search only deals with ints due to using high-level pool interface functions

Testing and Verifying
See above
Documentation and Release Note

Does this pull request introduce a new feature or user-facing behavior changes? (no)
Is a relevant changelog entry added to the Unreleased section in CHANGELOG.md? (no)
How is the feature or change documented? (not documented)

@ValarDragon Before I go ahead and implement BigDec versions of all the pool interface functions used in the LP share binary search, do you agree with that approach/do you see a better way of doing this?

(Discussed offline, we can fix the problem mentioned by multiplying by (1 - swapfee) then truncate rounding back to int.

Great job getting this working!
(We definitely need to do some more passes on this logic & update to match spec more!)


Panic when highlight_code = true in config.toml

config.toml:
title = "example"
base_url = "http://example.com/"
highlight_code = true

gutenberg serve:
Building site...
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Custom("invalid value: integer `4284898127`, expected variant index 0 <= i < 4")', /checkout/src/libcore/result.rs:859
stack backtrace:
   0: std::sys::imp::backtrace::tracing::imp::unwind_backtrace
             at /checkout/src/libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
   1: std::sys_common::backtrace::_print
             at /checkout/src/libstd/sys_common/backtrace.rs:71
   2: std::panicking::default_hook::{{closure}}
             at /checkout/src/libstd/sys_common/backtrace.rs:60
             at /checkout/src/libstd/panicking.rs:355
   3: std::panicking::default_hook
             at /checkout/src/libstd/panicking.rs:371
   4: std::panicking::rust_panic_with_hook
             at /checkout/src/libstd/panicking.rs:549
   5: std::panicking::begin_panic
             at /checkout/src/libstd/panicking.rs:511
   6: std::panicking::begin_panic_fmt
             at /checkout/src/libstd/panicking.rs:495
   7: rust_begin_unwind
             at /checkout/src/libstd/panicking.rs:471
   8: core::panicking::panic_fmt
             at /checkout/src/libcore/panicking.rs:69
   9: core::result::unwrap_failed
  10: std::sync::once::Once::call_once::{{closure}}
  11: std::sync::once::Once::call_inner
             at /checkout/src/libstd/sync/once.rs:307
  12: gutenberg::rendering::markdown::markdown_to_html::{{closure}}
  13: <core::iter::Map<I, F> as core::iter::iterator::Iterator>::next
  14: gutenberg::rendering::markdown::markdown_to_html
  15: gutenberg::content::page::Page::render_markdown
  16: gutenberg::site::Site::load
  17: gutenberg::cmd::serve::serve
  18: gutenberg::main
  19: __rust_maybe_catch_panic
             at /checkout/src/libpanic_unwind/lib.rs:98
  20: std::rt::lang_start
             at /checkout/src/libstd/panicking.rs:433
             at /checkout/src/libstd/panic.rs:361
             at /checkout/src/libstd/rt.rs:57
  21: __libc_start_main
  22: <unknown>

Without last line in config.toml, the server is working. I couldn't find out which content page is triggering the error.
Gutenberg 0.0.7 - installed with cargo install gutenberg on Linux.

That's this issue in Cargo: https://github.com/rust-lang/cargo/issues/2263 where it doesn't use lock files for binaries. Syntect had a new version published with a new format for syntax - a breaking change - as a minor version.
I will stop publishing on crates.io when reaching 0.1.0 if this issue is not resolved by then since it seems to cause issues.


How about this pinning strategy then?

This one splits oscar in a metapackage with the pins and a code package wihtout them.

Obviously this can not be merged as such, because the package name 'oscar' has allready been taken. So someone needs to pick a name for the code package. I just picked the most obvious name.

I don't really have an issue with the metapackage approach.
My main question would still be what the value of a totally unpinned package is? If you try to install this unpinned package without any local pinning, things will definitely break. So, you still need some way to know what Oscar officially supports before you go and tweak your requirements. That being the case, what is wrong with just relying on Oscar's requirements and overriding them at project level where required (this will result in dependency warnings in pip, but it will still let you override)?

It is not totally unpinned it has minimum requirements. If you run projects as python eggs with a setup.py and with console_scripts you can not cheat like with pip. If you try to use the console script it will break with an exception about being unable to satisfy dependencies.

Hmm. pip will still install the package using setup.py (not metasetup.py) which means that even if you install the "safe" package you end up with unpinned dependencies. This is why the tests are failing - because an unsupported version of django-tables is being installed. I am not very familiar with the internals of pip, but am not aware of a way to tell it to use something other than setup.py?
Personally I think the most maintainable solution here is just to set up a fork.

@craigloftus @sasha0 thoughts?

@craigloftus we are in fact building libraries on top of oscar. Oscar is just a library and it should behave well. Currently only a 1 workflow that includes pip is supported, but there are many more ways in which python packages can be used. It would be really strange to just neglect that.

I would also like to note that oscar is a library and not some finished product. That means it has to behave nicely together with other libraries, currently it just doesn't. To me this is a rather elegant way to make oscar behave well as a library but still have safe defaults.

#3027 can be solved this way also, because you could just add sorl to the django-oscar metapackage as a dependency, but exclude it from the 'oscar-core' or whatever package.

I still believe this is the way to go. I suggest we call the new package django-oscar-unpinned the django-oscar package can then depend on django-oscar-unpinned and add all the pins. django-oscar-unpinned should only specify LOWER BOUND pins and not upper bound.


Want to lock orientation of android apps

Duplicate Check

[X] I have searched the opened issues and there are no duplicates

Describe the requested feature
Recently I create a todo app in flet and convert into apk. After installing apk in my android phone and when my phone rotate, the GUI also rotate to look very bad for using.
Therefore, I want a property for page to lock orientation in code.
Thanks!
Suggest a solution
No response
Screenshots
No response
Additional details
No response

good one. I need this feature too.

Closing this issue as duplicate of #2694


Not working with tidal

Next/prev and play/pause is still not working even last update. Song name is displayed properly. Is it any way to fix it? Can i help?

The way i've implemented the media controller was to see what intent the app expects for prev/next/play/pause. So far i've implemented 2 types:

Android default audio intents
Pandoras intents

which means if tidal does not use the default android audio intents, It will not work. What needs to be done is to check if tidal exposes any intents such OpenFit can broadcast the intents and tidal can perform an action.

closing, no one is implementing


Why do you use only kernel_size=3?

An adaptive kernel_size is proposed with Eq. (9) in your paper.
But in your source code, all the kernel_size is not calculated by Eq.(9) but 3.
Is there any specific reason to use only 3?

The model we released is the same as in the paper, and the parameters in the code can be customized.

Thank you for your reply!
But in the eca_module.py, there isn't the implementation of Eq.(9) like 5, 6 lines in Figure 3.
Can you let me know which src the implementation belongs?

At present, most of the mainstream models are block-wise. Our method can calculate the corresponding kernel size very conveniently, so it can be predefined or adjusted appropriately without implementing it in code.

All right, I understand what you meant.
Thank you again!


Not getting a notebook interface when I create a .dib file in Visual Studio Code Insiders

Describe the bug
I'm following the steps for enabling .NET Interactive notebooks in Code Insiders, and I cannot get a notebook interface.

Installed Code Insiders
Installed PowerShell Preview extension (tried with the stable version too)
Installed .NET Interactive notebooks extension
Created a new file and saved it with the extension .dib
Nothing happens.

If I try to open .dib file created by someone else, I get the "Unable to open 'test.dib': Cannot read property 'message' of undefined." error message.
If I disable PowerShell extension, I can at least open test.dib file as a textual file.
Please complete the following:
Which version of .NET Interactive are you using? There are a few ways to find this out:

In VS Code, run "Report installed version for .NET Interactive` and copy the version number from the status popup.

That command doesn't exist.

OS

[x] Windows 10
[ ] macOS
[ ] Linux (Please specify distro)
[ ] iOS
[ ] Android

Browser

[ ] Chrome
[ ] Edge
[ ] Firefox
[ ] Safari

Frontend

[ ] Jupyter Notebook
[ ] Jupyter Lab
[ ] nteract
[x] Visual Studio Code
[ ] Other (please specify)

Screenshots
If applicable, add screenshots to help explain your problem.

Which version of the .NET Interactive Notebooks extension are you using?

v1.0.130603
Installed today. Code Insiders is also installed today.

@alexandair do you still see the issue?

@colombod
Yes. I've updated to the latest version of the extension and Code Insiders and I still cannot get the notebook UI or open a .dib file.
It looks like Code is stuck at "Installing .NET Interactive version 1.0.131001...Acquiring".

It never gets out of the acquiring step?
Dr Diego Colombo PhD

On 11 Jun 2020, at 23:27, Aleksandar Nikolić<EMAIL_ADDRESS>wrote:

@colombod
Yes. I've updated to the latest version of the extension and Code Insiders and I still cannot get the notebook UI or open a .dib file.
It looks like Code is stuck at "Installing .NET Interactive version 1.0.131001...Acquiring".
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

Yes.
On one machine, I have .NET Interactive installed (manually, before I tried notebook in Code) and I use .NET notebooks with Azure Data Studio.
 dotnet tool list -g
Package Id                        Version         Commands
--------------------------------------------------------------------
microsoft.dotnet-interactive      1.0.115407      dotnet-interactive

On another machine, I don't have either Azure Data Studio or .NET Interactive installed.
Both machines behave the same and Code Insiders cannot start .NET notebooks.

@alexandair Could you run dotnet --info and post the output?
Thanks.

PS C:\Users\aleksandar> dotnet --info
.NET Core SDK (reflecting any global.json):
 Version:   3.1.100
 Commit:    cd82f021f4

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.18363
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\3.1.100\

Host (useful for support):
  Version: 3.1.0
  Commit:  65f04fb6db

.NET Core SDKs installed:
  2.1.607 [C:\Program Files\dotnet\sdk]
  2.2.203 [C:\Program Files\dotnet\sdk]
  2.2.207 [C:\Program Files\dotnet\sdk]
  3.1.100 [C:\Program Files\dotnet\sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.All 2.1.14 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.2.4 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.2.8 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.1.14 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.2.4 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.2.8 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 3.1.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 2.1.14 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.2.4 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.2.8 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 3.1.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.WindowsDesktop.App 3.1.0 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

To install additional .NET Core runtimes or SDKs:
  https://aka.ms/dotnet-download
PS C:\Users\aleksandar>

Could you try installing .NET Core SDK 3.1.200 or later?

I've installed SDK 3.1.301. The problem remains.

I've manually installed version '1.0.131105'.
Tool 'microsoft.dotnet-interactive' was successfully updated from version '1.0.115407' to version '1.0.131105'.
.NET Interactive notebooks in Azure Data Studio recognize and use this version, but VSCode is still not aware of it. Where does Code expect to find .NET Interactive tool?

@alexandair The extension always manages its own version of the dotnet-interactive tool, so the globally installed one won't take effect.
Is the .dib file already open when VS Code launches or are you opening the file fresh after the launch?

@brettfo  I've tried both--with .dib file already open and with freshly opened. Both failed to trigger notebook interface.
Where can I see the command that extension is using to install dotnet-interactive tool? Is it implemented as a task?
This is the command I need to use to install it manually because I have some sources in Azure DevOps that need credentials and I'm afraid that --ignore-failed-sources is missing in your command and that's the reason why downloading of the tool is stucked.
dotnet tool update -g Microsoft.dotnet-interactive --add-source https://dotnet.myget.org/F/dotnet-try/api/v3/index.json --ignore-failed-sources

Good find.  The tool is installe here.  I'll add --ignore-failed-sources to the args.

Created #541.

@brettfo
I've updated my local commands.js with --ignore-failed-sources line and successfully installed the tool.

That output should be more verbose, especially because the installation process was long. Also, with just that first line it was very hard for me to debug it and find the problem.

I can add the code and markdown cells. However, if I run my PowerShell cells, I only see the timer running, but nothing happens. There is no output. And, "Execute notebook (run all cells)" command doesn't even start.

@alexandair The "run all" functionality was just implemented a few hours ago and isn't yet available.  Once we get a full build out we'll publish another version that'll fix that scenario.  As for the PowerShell issue can you try two separate scenarios for me?

In a PowerShell cell (i.e., in the bottom right of the cell, set the option to "PowerShell (.NET Interactive)") Execute the following:1+1

The expected output is obviously 2.
In a C# cell ("C# (.NET Interactive)"), execute the following:#!pwsh
1+1

In the first instance, the code is passed directly to PowerShell; in the second it goes through one more routing step.  I'm just curious to see if that gets us better error information.

@brettfo
Both scenarios are failing. Only timers run in both cases.
Also, "Cancel execution" button doesn't work.

We currently don't respond to cell cancellation, so that's expected.
We just published a new version of the tool.  Can you update and try the 1+1 scenarios in (1) a C# cell, (2) a C# cell, but under a #!pwsh directive, and (3) a PowerShell cell?  If it's still not working can you create a new issue?  It'll be easier for us to track it as a separate issue to ensure it doesn't get lost.

@brettfo I've updated the extension and this is the result now:

@alexandair the 1 + 1 should not be on the line as the #!pwsh directive.
That’s directive is instructing the engine to execute the expressions in the cell as powershell
Cose

Thank you, @colombod
Here is an updated screenshot. It looks like repeating execution is much faster, especially for the PowerShell cell (5.1s vs. 0.1s).

Each language kernel is initialised in lazy fashion. The first submission might include bootstrapping logic that is why I might see faster times on the next submissions. Glad to see the issue is resolved. Thank you

Hi @brettfo , still fails for me. installed VSCode insiders and the extension today 8/25. I have this in the commands.js, so it seems that it includes the update.

however, opening the .dib file leads to

and there are no any outputs here

I can confirm that it fails for me as well on some other machine. I have latest versions of both Code Insiders and the extension.

I didn't have .NET 3.1 SDK installed on that machine.
Shouldn't that step be a part of https://github.com/dotnet/interactive/blob/main/src/dotnet-interactive-vscode/README.md
/cc @colombod @jonsequitur

cool, it is working now, almost :) but now VSCode just hangs on this piece

like this

I didn't have .NET 3.1 SDK installed on that machine.
Shouldn't that step be a part of https://github.com/dotnet/interactive/blob/main/src/dotnet-interactive-vscode/README.md

Thanks for pointing it out. I've updated it.

@eosfor I've opened #730 to track the PowerShell-related crash. Thanks for reporting it.


docs: tutorials: models: load: Show how to dynamically load models

Codecov Report

Merging #1003 (914964f) into master (d309db8) will decrease coverage by 0.06%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1003      +/-   ##
==========================================
- Coverage   85.70%   85.64%   -0.07%
==========================================
  Files         143      143
  Lines        9440     9436       -4
  Branches     1603     1603
==========================================
- Hits         8091     8081      -10
- Misses       1021     1028       +7
+ Partials      328      327       -1

Impacted Files
Coverage Δ

tests/docs/test_consoletest.py
59.49% <ø> (ø)

dffml/util/data.py
75.13% <0.00%> (-2.77%)
:arrow_down:

tests/util/test_net.py
98.24% <0.00%> (-1.76%)
:arrow_down:

dffml/noasync.py
78.18% <0.00%> (-1.13%)
:arrow_down:

dffml/util/testing/consoletest/commands.py
75.35% <0.00%> (-0.06%)
:arrow_down:

dffml/source/df.py
76.54% <0.00%> (ø)

Continue to review full report at Codecov.

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


Drop the foreign-generic dependency, upgrade to latest package set

As suggested in #29 and this Discourse thread, this PR drops the foreign-generic dependency as it is no longer maintained.

Ass suggested
🍑

released as v9


Injecting unreachable loop causes dramatic difference in rendered image

[Shaders, screenshots, error log, reproduction steps, etc.] [ZIP]
This fragment shader leads to the following image being rendered on an Intel GPU, and a visually identical image on some other GPUs we have tested:

However, on Mali via WebGL we  find that this image is rendered:

We then find that injecting this loop into the shader:
    if(injectionSwitch.x > injectionSwitch.y) {
        for(int i = 0; i < 1; i ++) {
            k = 0.0;
        }
    }

to yield this fragment shader causes an image visually very similar to the image rendered by Intel and other GPUs to be rendered:

At runtime, we set injectionSwitch to (0.0, 1.0), so the loop should not actually be reachable and therefore should have no effect.
We think that there may be a compiler bug causing the original shader to be executed incorrectly, and that injecting this loop suppresses the bug.

Looks similar to #22

Closing this issue as ARM reported it to be independently fixed via our email discussions.


[Misc]: Fix -Wpedantic issues

Describe your changes

Removed random extra semicolons which showed up as warnings with -Wpedantic
How has this been tested?

Tested that unit tests compile, which should be enough for this one.

My bad, maybe we can make Github Actions catch these warnings somehow?

Yeah, I think we could add -Wpedantic to one of our builds to catch them as long as warnings are also caught as errors


Managed Active Directory Blueprint article

A guide for customers on choosing the appropriate Managed AD Blueprint
for them.

Jamie,
see my email reply to your issue with numbering.  i provided you the code to update/fix the minor items in this kb submission.  you may also want to shrink your first image.  its quite large

@jparker-clc @chrislittle closing due to inactivity. Feel free to resubmit after edits are made.


Support for Solidity 0.8.15

Changes

[x] Updated dependencies.
[x] Added support of Solidity 0.8.15 on compiler level. Following changes are applied to AST:

Function encodeSignature() is now renamed to encodeFuncSignature().
EventDefinition.canonicalSignature() now returns an empty string when event is declared as anonymous.
EventDefinition.canonicalSignatureHash() now returns hash of 32 bytes, corresponding to topic 0. Also it returns an empty string when event is declared as anonymous.

[x] Added test samples.

Notes
The changes to EventDefinition.canonicalSignature() and EventDefinition.canonicalSignatureHash() are syntactically backward-compatible, but may give nasty surprises for node resolution.
Related links

Solidity 0.8.15 release notes
Solidity 0.8.15 release blog post

Regards.

Codecov Report

Merging #126 (acc8916) into master (3ce30d1) will increase coverage by 0.14%.
The diff coverage is 90.62%.

@@            Coverage Diff             @@
##           master     #126      +/-   ##
==========================================
+ Coverage   92.12%   92.27%   +0.14%
==========================================
  Files         254      254
  Lines        5384     5395      +11
  Branches      868      873       +5
==========================================
+ Hits         4960     4978      +18
+ Misses        251      246       -5
+ Partials      173      171       -2

Impacted Files
Coverage Δ

src/ast/sanity.ts
74.15% <0.00%> (+0.37%)
:arrow_up:

src/compile/constants.ts
100.00% <ø> (ø)

...ast/implementation/declaration/event_definition.ts
94.73% <80.00%> (+0.98%)
:arrow_up:

src/bin/compile.ts
92.85% <90.90%> (+0.83%)
:arrow_up:

...ast/implementation/declaration/error_definition.ts
100.00% <100.00%> (+26.66%)
:arrow_up:

.../implementation/declaration/function_definition.ts
100.00% <100.00%> (ø)

.../implementation/declaration/modifier_definition.ts
94.73% <100.00%> (ø)

...implementation/declaration/variable_declaration.ts
100.00% <100.00%> (ø)

src/ast/utils.ts
100.00% <100.00%> (ø)

... and 3 more

:mega: Codecov can now indicate which changes are the most critical in Pull Requests. Learn more


Search keywords aren't getting generated

Searching Neo fields on elements is broken. Problem being that the search keywords method incorrectly starts a task to generate the keywords, where it should be returning the keywords only. Need to move the task to the onAfterSave() hook method and have the getSearchKeywords() just return the currently saved keywords.

Hm, I was wrong. Running the task in the getSearchKeywords method, while probably not appropriate, wasn't causing any issues like I thought. Seems I'm having an unrelated issue, since my isolated testing shows it working fine.

It seems the problem is the "Generating search keywords" task is not running (on a particular website I'm working on). Trying to isolate the problem now...

It seems this is only happening on my local machine – it doesn't seem to do this on any other web server. It's also only happening with one site in particular. Very strange.

Thanks for the great plugin. We're having the same issue on a site we're working on. NEO fields are not searchable. From what we can see, search keywords are not generated on both our local machines or our production server (Arcustech).

@dhdchicago This seems to be a very precarious issue, as it rarely happens but without reason. When you save an entry, on the left sidebar do you see a "Generating search keywords" task start to run?

The task doesn't seem to run when we save. We have even tried to rebuild search indexes manually a few times and that runs and finishes but without any NEO related field content.

@dhdchicago You're right, they aren't generating when you do a manual search index rebuild. I'm working on fixing this bug right now, should be done in a couple of hours.
As for the task sometimes not running after saving an entry, well, I'm still yet to be able to reproduce this since I last encountered this in July. Tasks appear to be a finicky thing in Craft so I might include a configuration setting that allows you to opt out of the task optimisation and just generate keywords normally.

I've added the config option, and I'll write up how to override the options in the Wiki once I publish 1.4.1

Works great, searching NEO fields again. Thanks!

I was having this same issue. Setting generateKeywordsWithTask to false allowed searching Neo field content to work again.

Is this still an issue?

Is this still an issue? Once setting generateKeywordsWithTask to false. Do we need to rebuild the Craft Search index?

Closing this now, as it is no longer an issue as of the Craft 3 version.


Bug: Server-Client crash on clear

Describe the bug
Server-Client crash when calling clear function
Steps to reproduce
Call Server-Client clear function after DB init
Expected behavior
Server-Client works on clear
UKV version
v0.7.x
Operating System
Any
Hardware architecture
x86
Are you using an embedded version?

[ ] I use the embedded version

Which interface are you using?
Native C interface
Which engine are you using?
UMem
Contact Details
No response
Is there an existing issue for this?

[X] I have searched the existing issues

Code of Conduct

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

:tada: This issue has been resolved in version 0.7.8 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Overwritten file permissions on save

Description
If one saves a file it a) cannot follow my symlink and b) removes my file permissions such that it's not executable anymore. In other words I think on each save the original file is deleted and replaced by a new one
What steps will reproduce the problem?
Click save
Versions

Spyder version: 4.0.0b2
Python version: 3.6.7
Qt version: 5.12.3
PyQt5 version: 5.12.2
Operating System: Linux 4.15.0-50-generic

Dependencies
pygments >=2.0     :  2.4.0 (OK)
qdarkstyle >=2.6.4 :  2.6.8 (OK)
sphinx >=0.6.6     :  2.0.1 (OK)
psutil >=0.3       :  5.6.2 (OK)
pyls >=0.19.0;<0.25:  0.24.0 (OK)
nbconvert >=4.0    :  5.5.0 (OK)
pandas >=0.13.1    :  0.23.4 (OK)
numpy >=1.7        :  1.16.3 (OK)
sympy >=0.7.3      :  1.1.1 (OK)
cython >=0.21      :  0.26.1 (OK)
qtconsole >=4.2.0  :  4.4.4 (OK)
IPython >=4.0      :  7.5.0 (OK)
matplotlib >=2.0.0 :  2.2.2 (OK)
pylint >=0.25      :  2.3.1 (OK)

In other words I think on each save the original file is deleted and replaced by a new one

That's correct. This is the behavior since beta2 to ensure that we write atomically on disk. The only thing we can fix is preserving file permissions but not working with symlinks.
@dalthviz, please take a look at this one.

@dalthviz, we also need to avoid opening symlinks in the Editor.

Thanks for your reply.
Ok, I can understand your decision to introduce atomic writing which avoids corrupted or incomplete files at any time(?). My rather exotic case is it store the files in one place and execute the files via symlinks somewhere else. But since I use a separate terminal I'm not really affected by this new behaviour. Just a change of habit.
Anyway, can't you follow the symlink and save it there (with the same file permissions as before)?

Anyway, can't you follow the symlink and save it there (with the same file permissions as before)?

You mean that opening a symlink should open the file it points to always?

Yes, that's what I meant. But I haven't thought it through

You mean that opening a symlink should open the file it points to always?

This makes a lot of sense to me.

But that makes atomic write saves harder for us to handle.

As I understand it, the suggestion is that if A is a symlink pointing to B and the user opens A, then Spyder should open B instead. At that point, we can forget about A, so I don't think it makes saves harder.

That is how I understand it as well

At least the part with using the same file permissions doesn't seem to be too complicated. How about a bounty of 10€ until end of June? (So it's more a promise to donate on open collective)

@daniel-edler, sorry, we don't work that way. We don't receive bounties for specific features from users. I decide what we should prioritize for each release and use the OpenCollective money to pay the students that work for the project a certain amount of hours per month.
So, users really need to trust that we're going to invest their donations in the best interests of the project. However, if you want to see this implemented faster, you're more than welcome to send us a pull request for that.

Ok. So let's see if I can fix it


please update deps collection >=1.19.0,

Because example depends on flutter_localizations from sdk which depends on collection 1.18.0, collection 1.18.0 is required.
So, because example depends on collection >=1.19.0, version solving failed.
please update deps

Hello @manila2728
Look like the issue came from Flutter SDK flutter_localizations and this package depend on it too. Will have to wait for Flutter SDK to update the collection package or you can help report this issue to flutter repository.


how to access loadbalancer outside the vm

Install a ubuntu vm in mac, then did this

install microk8s
enable add-ons dns, storage, metallb
deployed my kubernetes application

Now can see the loadbalancer external ip and can access the app(using loadbalancer ip) while inside the vm
How to access the app from outside(from host mac) the VM.
Help is very much appreciated.

Hi @ffoysal. If I understand the request correctly you need to forward the ports you want to expose from the host to the VM. This is outside the scope of MicroK8s. You may want to search on the web on how to do this, eg [1].
[1] https://superuser.com/questions/30917/how-to-make-a-port-forward-in-mac-os-x

Hi @ffoysal. If I understand the request correctly you need to forward the ports you want to expose from the host to the VM. This is outside the scope of MicroK8s. You may want to search on the web on how to do this, eg [1].
[1] https://superuser.com/questions/30917/how-to-make-a-port-forward-in-mac-os-x


feat(snap_fib_table): Add forwarding table snapshot

Description
Add the capability to compare FIB table via snapshots.
This PR closes #121  .
Motivation and Context
Situations in which the routing table can differ from the FIB table.
How Has This Been Tested?
Uni test + local example (run_readiness_snapshot) on test vmseries. Tested with a couple of entries and also empty table as well (no routes or directly connected interface IP addressing).
Screenshots (if appropriate)

Types of changes

New feature (non-breaking change which adds functionality)

Checklist

[x] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes if appropriate.
[x] All new and existing tests passed.

:tada: This PR is included in version 0.3.2 :tada:
The release is available on PyPI and GitHub release

Posted by semantic-release bot


Build issue

Hello! thanks for providing an iOS plugin once more;
I'm using godot 4.2.2, and the install from the AssetLib to have the iOS/plugin files.
I have checked the plugin in both project settings and iOS export parameters.
Now building the app on XCode sends:
Undefined symbols for architecture arm64:
  "ClassDB::bind_methodfi(unsigned int, MethodBind*, bool, char const*, Variant const**, int)", referenced from:
      InappReviewPlugin::_bind_methods() in InappReviewPlugin.a(godot_plugin_class.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Do you have any tips ?
Is there a mismatch with my godot version and then the godot headers provided in the AssetLib ?

Hi @chrisdugne, it sounds like you are using the release version of the plugin binary for a debug export.  If you replace the following line:
binary="InappReviewPlugin.release.xcframework"

in your InappReviewPlugin.gdip file to the following
binary="InappReviewPlugin.debug.xcframework"

your issue should be resolved.
I haven't yet tested this, but I'm told that "InappReviewPlugin.xcframework" will do the trick as well since Godot's export system automatically switches the binary depending on the export type.  Once I reunite with my Mac sometime next month, I'll verify and publish an update.


[bug] Horizontal scrollbar on Switch Network.

Is there an existing issue for this?

[X] I have searched the existing issues

RainbowKit Version
1.1.1
wagmi Version
1.4.2
Current Behavior
When you try to switch networks, a transition effect is triggered by clicking on another network. This effect on the latest versions is causing a horizontal zscrollbar to briefly appear at the bottom of the wrapper for half a second before disappearing.

Expected Behavior
A horizontal scrollbar should not appear.
Steps To Reproduce

Visit RainbowKit
Connect your wallet.
Click on the network to open the "Switch Network" menu.
Select any network to switch to and observe the bottom of the "Switch Network" menu.

Link to Minimal Reproducible Example (CodeSandbox, StackBlitz, etc.)
https://www.rainbowkit.com/
Anything else?
This behavior wasn't present in ^1.0.11. Today, I updated to ^1.1.1 and noticed the bug.
I've noticed styling changes in this menu, which might be leading to this bug.
Version ^1.0.11

Version ^1.1.1

@0xCatalyst I can't see any overflows happening in half a second when switching the chain. Can you update to the latest version 1.2.0 ? It might be related to this issue, but that one is vertical one instead of horizontal (issue)

If you have reproducible example that would be helpful too

@0xCatalyst Seems like i've found the bug. I will mark this as resolved since in the next release this will be fixed automatically


add display name to machine translations table and endpoint

Nit: Is 'Name' consistent with other places that we reference title(s) for resource content. I.E. instead of using something like DisplayTitle?

Yeah good question, DisplayName is what we're using in most places I believe


Build failed in the section"Expanding on ROS 2 interfaces "

After creating the package named more_interfaces, I followed the guidance to build the package using
colcon build --packages-up-to more_interfaces
But it failed, the error message is as follows:
Starting >>> more_interfaces
--- stderr: more_interfaces
CMake Error at /opt/ros/galactic/share/rosidl_cmake/cmake/rosidl_target_interfaces.cmake:41 (message):
  rosidl_target_interfaces() the second argument 'more_interfaces' must be a
  valid target name
Call Stack (most recent call first):
  CMakeLists.txt:32 (rosidl_target_interfaces)

---
Failed   <<< more_interfaces [0.41s, exited with code 1]

It seems that more_interfaces is not a valid target name.
How to fix it?

Please make sure that you have followed all the instructions in the document.
Document link
There isn't any issue with "more_interfaces is not a valid target name"
Make sure your CMakeLists.txt is something similar to the below and don't forget to source it
. install/local_setup.bash
cmake_minimum_required(VERSION 3.8)
project(more_interfaces)

if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
  add_compile_options(-Wall -Wextra -Wpedantic)
endif()

# find dependencies
find_package(ament_cmake REQUIRED)
find_package(rosidl_default_generators REQUIRED)

set(msg_files
  "msg/AddressBook.msg"
)

rosidl_generate_interfaces(${PROJECT_NAME}
  ${msg_files}
)

ament_export_dependencies(rosidl_default_runtime)

find_package(rclcpp REQUIRED)

add_executable(publish_address_book
  src/publish_address_book.cpp
)

ament_target_dependencies(publish_address_book
  "rclcpp"
)

install(TARGETS publish_address_book
 DESTINATION lib/${PROJECT_NAME})

rosidl_target_interfaces(publish_address_book
  ${PROJECT_NAME} "rosidl_typesupport_cpp")

if(BUILD_TESTING)
  find_package(ament_lint_auto REQUIRED)
  # the following line skips the linter which checks for copyrights
  # uncomment the line when a copyright and license is not present in all source files
  #set(ament_cmake_copyright_FOUND TRUE)
  # the following line skips cpplint (only works in a git repo)
  # uncomment the line when this package is not in a git repo
  #set(ament_cmake_cpplint_FOUND TRUE)
  ament_lint_auto_find_test_dependencies()
endif()

ament_package()

Latest Build:
colcon build --packages-up-to more_interfaces

No response in over 2 weeks, so closing.  If you are still having problems, please feel free to reopen.


Implement National Bank of Georgia Service

Replacement for https://github.com/florianv/exchanger/pull/149

@uguurozkan Thanks for your PR! Can you please update the code to resolve the conflicts?

@florianv Done! It's good to go.


add textarea to make edits the displayed qrcode

Makes sense to be able to make small changes to the qrcode data

what issue? i dont see any issue


Having trouble getting connected to the db -- db loops with Starting MariaDB 10.6.7

I'm probably confused with what to set in the docker-compose.yml and in my .env file.
I'm running MariaDB on my Mac laptop OS version 12.3
I'm starting by running: docker compose up
I get lots of:
aahelpdesk-app        | 2022-04-05.13:49:52 [WARN] ** [freescout] MySQL/MariaDB Server 'aahelpdesk-db' is not accessible, retrying.. (375 seconds so far)
aahelpdesk-db         | 2022-04-05.20:49:52 [STARTING] ** [mariadb] [379] Starting MariaDB 10.6.7
aahelpdesk-db         | 2022-04-05.20:49:53 [STARTING] ** [mariadb] [380] Starting MariaDB 10.6.7
aahelpdesk-db         | 2022-04-05.20:49:54 [STARTING] ** [mariadb] [381] Starting MariaDB 10.6.7
aahelpdesk-db         | 2022-04-05.20:49:55 [STARTING] ** [mariadb] [382] Starting MariaDB 10.6.7
aahelpdesk-db         | 2022-04-05.20:49:56 [STARTING] ** [mariadb] [383] Starting MariaDB 10.6.7
aahelpdesk-app        | 2022-04-05.13:49:57 [WARN] ** [freescout] MySQL/MariaDB Server 'aahelpdesk-db' is not accessible, retrying.. (380 seconds so far)
aahelpdesk-db         | 2022-04-05.20:49:57 [STARTING] ** [mariadb] [384] Starting MariaDB 10.6.7
aahelpdesk-db         | 2022-04-05.20:49:58 [STARTING] ** [mariadb] [385] Starting MariaDB 10.6.7
aahelpdesk-db         | 2022-04-05.20:49:59 [STARTING] ** [mariadb] [386] Starting MariaDB 10.6.7
aahelpdesk-db         | 2022-04-05.20:50:00 [STARTING] ** [mariadb] [387] Starting MariaDB 10.6.7
aahelpdesk-db         | 2022-04-05.20:50:01 [STARTING] ** [mariadb] [388] Starting MariaDB 10.6.7
aahelpdesk-app        | 2022-04-05.13:50:02 [WARN] ** [freescout] MySQL/MariaDB Server 'aahelpdesk-db' is not accessible, retrying.. (385 seconds so far)

My DB_NAME matches what shows in the show databases; command (aahelpdesk)
My DB_USER matches what shows in select user from mysql.user; command (aahelpdesk)
My DB_PASS matches what I use when logging into mysql -u aahelpdesk -p  (what I enter when prompted).
My DB_HOST is the name of the container for the database
I'm not sure what ROOT_PASS is supposed to be (tried password, and tried my OS user's password as though you might be trying the password required for sudo mysql -u root
I don't have an NGINX set up so set my SITE_URL to use http:// protocol and I set ENABLE_SSL_PROXY to FALSE.
How can I get more detail about why the database isn't starting?
I tried exec'ing into each container to try the mysql -u aahelpdesk -p command but they fail with the socket name set up to point to 3306.
Isof -i :3306 shows mariadb running and listening on 3306 on my localhost.

I think this is a problem with the MariaDB container itself.
You can try setting CONTAINER_LOG_LEVEL=DEBUG on the mariadb container and it will give you the output as to what is failing.
Otherwise head inside the container to /var/lib/mysql and there should be mysql_err.log sitting in there that would give hints. Sometimes my own images don't work well on other systems as they have opinionated defaults set. If thats the case you can revert to using official mariadb.

No error log in /var/lib/mysql:
Nathaniels-MacBook-Pro-2:HelpDesk>docker exec -ti c83c668a2e7a /bin/bash
[tiredofit/mariadb:10.6:3.10.6 21:48:17] # cd /var/lib/mysql
[tiredofit/mariadb:10.6:3.10.6 21:48:24] # ls -l
total 6028
drwx------    3 mariadb  mariadb         96 Apr  5 18:37 aahelpdesk
-rw-r-----    1 mariadb  mariadb     589824 Apr  5 21:48 aria_log.00000001
-rw-r-----    1 mariadb  mariadb         52 Apr  5 21:48 aria_log_control
-rw-r-----    1 mariadb  mariadb        946 Apr  5 18:43 ib_buffer_pool
-rw-r-----    1 mariadb  mariadb  100663296 Apr  5 18:43 ib_logfile0
-rw-r-----    1 mariadb  mariadb   12582912 Apr  5 18:43 ibdata1
-rw-r-----    1 mariadb  mariadb          0 Apr  5 18:37 multi-master.info
drwx------   90 mariadb  mariadb       2880 Apr  5 18:37 mysql
-rw-r--r--    1 mariadb  mariadb         14 Apr  5 18:37 mysql_upgrade_info
drwx------    3 mariadb  mariadb         96 Apr  5 18:37 performance_schema
drwx------  106 mariadb  mariadb       3392 Apr  5 18:37 sys

and debug doesn't really tell much:
aahelpdesk-db         | 2022-04-05.21:49:05 [DEBUG] ** [mariadb] Checking to see if container initialization scripts have completed
aahelpdesk-db         | 2022-04-05.21:49:05 [DEBUG] ** [mariadb] Checking to see if service has initialized
aahelpdesk-db         | 2022-04-05.21:49:05 [STARTING] ** [mariadb] [125] Starting MariaDB 10.6.7
aahelpdesk-db         | 2022-04-05 21:49:05 0 [Note] /usr/bin/mysqld (server 10.6.7-MariaDB) starting as process 5531 ...
aahelpdesk-db         | 2022-04-05 21:49:05 0 [Warning] Setting lower_case_table_names=2 because file system for /var/lib/mysql/ is case insensitive
aahelpdesk-db         | 2022-04-05.21:49:06 [DEBUG] ** [mariadb] Checking to see if container initialization scripts have completed
aahelpdesk-db         | 2022-04-05.21:49:06 [DEBUG] ** [mariadb] Checking to see if service has initialized
aahelpdesk-db         | 2022-04-05.21:49:06 [STARTING] ** [mariadb] [126] Starting MariaDB 10.6.7
aahelpdesk-db         | 2022-04-05 21:49:06 0 [Note] /usr/bin/mysqld (server 10.6.7-MariaDB) starting as process 5569 ...
aahelpdesk-db         | 2022-04-05 21:49:06 0 [Warning] Setting lower_case_table_names=2 because file system for /var/lib/mysql/ is case insensitive
aahelpdesk-db         | 2022-04-05.21:49:07 [DEBUG] ** [mariadb] Checking to see if container initialization scripts have completed
aahelpdesk-db         | 2022-04-05.21:49:07 [DEBUG] ** [mariadb] Checking to see if service has initialized
aahelpdesk-db         | 2022-04-05.21:49:07 [STARTING] ** [mariadb] [127] Starting MariaDB 10.6.7
aahelpdesk-db         | 2022-04-05 21:49:07 0 [Note] /usr/bin/mysqld (server 10.6.7-MariaDB) starting as process 5607 ...
aahelpdesk-db         | 2022-04-05 21:49:07 0 [Warning] Setting lower_case_table_names=2 because file system for /var/lib/mysql/ is case insensitive
aahelpdesk-db         | 2022-04-05.21:49:08 [DEBUG] ** [mariadb] Checking to see if container initialization scripts have completed
aahelpdesk-db         | 2022-04-05.21:49:08 [DEBUG] ** [mariadb] Checking to see if service has initialized
aahelpdesk-db         | 2022-04-05.21:49:08 [STARTING] ** [mariadb] [128] Starting MariaDB 10.6.7
aahelpdesk-db         | 2022-04-05 21:49:08 0 [Note] /usr/bin/mysqld (server 10.6.7-MariaDB) starting as process 5645 ...
aahelpdesk-db         | 2022-04-05 21:49:08 0 [Warning] Setting lower_case_table_names=2 because file system for /var/lib/mysql/ is case insensitive
aahelpdesk-db         | 2022-04-05.21:49:09 [DEBUG] ** [mariadb] Checking to see if container initialization scripts have completed
aahelpdesk-db         | 2022-04-05.21:49:09 [DEBUG] ** [mariadb] Checking to see if service has initialized
aahelpdesk-db         | 2022-04-05.21:49:09 [STARTING] ** [mariadb] [129] Starting MariaDB 10.6.7
aahelpdesk-db         | 2022-04-05 21:49:09 0 [Note] /usr/bin/mysqld (server 10.6.7-MariaDB) starting as process 5683 ...
aahelpdesk-db         | 2022-04-05 21:49:09 0 [Warning] Setting lower_case_table_names=2 because file system for /var/lib/mysql/ is case insensitive
aahelpdesk-app        | 2022-04-05.14:49:09 [WARN] ** [freescout] MySQL/MariaDB Server 'aahelpdesk-db' is not accessible, retrying.. (125 seconds so far)

What is the ROOT_PASS supposed to be and am I okay with the ENABLE_SSL_PROXY=FALSE
And I'm running the MariaDB on my laptop on port 3306 so might there a conflict if your container is also trying to run MariaDB on port 3306?

I have changed the names of the containers to aahelpdesk-app and aahelpdesk-db in the docker-compose.yml file...
Here is a cleansed version of the file:
version: '2'

services:

  aahelpdesk-app:
    image: tiredofit/freescout
    container_name: aahelpdesk-app
    links:
    - aahelpdesk-db
    volumes:
    ### If you want to perform customizations to the source and have access to it, then uncomment this line - This includes modules
    #- ./data:/www/html
    ### Or, if you just want to use Stock Freescout and hold onto persistent files like cache and session use this, one or the other.
    #- ./data:/data
    ### If you want to just keep the original source and add additional modules uncomment this line
    #- ./modules:/www/html/Modules
    - ./logs/:/www/logs
    environment:
    - VIRTUAL_HOST=aahelpdesk.example.com
    - VIRTUAL_NETWORK=nginx-proxy
    - VIRTUAL_PORT=80
    - LETSENCRYPT_HOST=aahelpdesk.example.com
    -<EMAIL_ADDRESS>    - CONTAINER_LOG_LEVEL=DEBUG

    - CONTAINER_NAME=aahelpdesk-app

    - DB_HOST=aahelpdesk-db
    - DB_NAME=aahelpdesk
    - DB_USER=aahelpdesk
    - DB_PASS=password-for-aahelpdesk-user

    - SITE_URL=http://aahelpdesk.example.com
    -<EMAIL_ADDRESS>    - ADMIN_PASS=freescout
    - ENABLE_SSL_PROXY=FALSE
    - DISPLAY_ERRORS=FALSE
    - TIMEZONE=America/Vancouver
    networks:
      - proxy-tier
    restart: always

  aahelpdesk-db:
    image: tiredofit/mariadb
    container_name: aahelpdesk-db
    volumes:
      - ./db:/var/lib/mysql
    environment:
      - ROOT_PASS=my-mac-user-password
      - DB_NAME=aahelpdesk
      - DB_USER=aahelpdesk
      - DB_PASS=password-for-aahelpdesk-user
      - CONTAINER_LOG_LEVEL=DEBUG

      - CONTAINER_NAME=aahelpdesk-db
    networks:
      - proxy-tier
    restart: always

  aahelpdesk-db-backup:
    container_name: aahelpdesk-db-backup
    image: tiredofit/db-backup
    links:
     - aahelpdesk-db
    volumes:
      - ./dbbackup:/backup
    environment:
      - CONTAINER_NAME=aahelpdesk-db-backup
      - DB_HOST=aahelpdesk-db
      - DB_TYPE=mariadb
      - DB_NAME=aahelpdesk
      - DB_USER=aahelpdesk
      - DB_PASS=password-for-aahelpdesk-user
      - DB_DUMP_FREQ=1440
      - DB_DUMP_BEGIN=0000
      - DB_CLEANUP_TIME=8640
      - COMPRESSION=BZ
      - MD5=TRUE
    networks:
      - proxy-tier
    restart: always

networks:
  proxy-tier:
    name: nginx-proxy

Note: the networks doesn't need external: so I removed it.

Thanks for this. That's closer to what I am using. I do see there there are some warnings with Mysql that are happening with case sensitivity. Are you using APFS (sp?)?.

You can delete your db folder and try restarting it with DB_CONFIGURATION=default which is the stock MariaDB settings
You may also find the logs for mysql inside of /logs/ depending on the release of my mariadb image.
Also, I believe you could execute the following to get some console output:

/usr/bin/mysqld --defaults-file=/etc/mysql/my.cnf --user=mariadb --console --skip-name-resolve
That is the string that is running causing your loop.
If all else fails and we're not getting anywhere we should switch over to the official mariaDB image.

Also this started to seem familiar to me. See #4 for another take on this. Named volumes might be your solution here.

I deleted both the data and db directories and added the DB_CONFIGURATION=default and I believe the containers are up and running. The last things I see are:
aahelpdesk-app        | 2022-04-06.07:15:48 [STARTING] ** [scheduling] [1] Starting cron
aahelpdesk-app        | Starting Zabbix Agent 2 (6.0.2)
aahelpdesk-app        | Zabbix Agent2 hostname: [aahelpdesk-app]
aahelpdesk-app        | Press Ctrl+C to exit.

However, going to localhost:80 returns nothing found. Do you know the proper URL to get the pages to load? The output showed the bogus http://aahelpdesk.example.com (set as the SiTE_URL for the Virtual Host aahelpdesk.example.com...

Note: I tried changing the VIRTUAL_PORT=9980 but the container still shows 80, 2020, and 10050 so not sure that is being honored.

I suspect the docker compose up doesn't start the containers exporting any ports. I can exec into the app container and use wget localhost:80/login to get content. However, because the containers aren't mapping ports to the external environment nothing can reach port 80 in the container...
telnet localhost 80
Trying ::1...
Connection failed: Connection refused
Trying <IP_ADDRESS>...
telnet: Unable to connect to remote host: Connection refused

Almost there... added a ports to export a port mapping external 9980 to internal port 80 and changes hostname to localhost. I now get the login panel when going to the SITE_URL but I can't get logged in as I must need to add a user to the database. I'll have to find the administration URL that should use the ADMIN_EMAIL and ADMIN_PASS that I'd set up.
Added below to the aahelpdesk-app: to map 9980 to internal port 80
ports:

9980:80
Changed the:
VIRTUAL_HOST=localhost
VIRTUAL_PORT=9980
SITE_URL=http://localhost:9980

I had the same problem. I realised, that the indentation in the enviroment-part of the freescout-app ist not right. Once I fixed that, it was working for me:


Can I be part of this organization?

Hi bro!
I submit my update at #157
Thank you very much!

@thuongtruong1009 send us at least one PR.

@thuongtruong1009 send us at least one PR.

I made a new PR at https://github.com/devcreatives/first_contribution/pull/168

I want to contribute in this project