Issues deploying to on-premise kubernetes cluster

Hi,
I tried to setup asterisk onto my kubernetes cluster but without successes and I'm not sure on what is going wrong here.
What I did:

Followed the instructions on the README.md
Update the CLOUD variable to "" (instead of gcp)
I did not update the asterisk-config's inbound file as my priority is to have something up and running

Issues I'm facing:
Asterisk config container CrashLoopBackOff
2020/04/03 14:34:20 Waiting for Asterisk to be ready...
2020/04/03 14:34:20 service exited: failed to render defaults: template: t:5:12: executing "t" at <.Network>: error calling Network: Get "http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/0/ip": dial tcp: lookup metadata.google.internal on <IP_ADDRESS>:53: server misbehaving
2020/04/03 14:34:20 asterisk-config exiting

Kamailio dispatchers CrashLoopBackOff
2020/04/03 14:38:05 WARNING: failed to get node <ip-asterisk-node> for endpoint asterisk: kubernetes api: Failure 403 nodes "<ip-asterisk-node>" is forbidden: User "system:serviceaccount:voip:default" cannot get resource "nodes" in API group "" at the cluster scope
2020/04/03 14:38:05 run died: failed to run initial dispatcher set update: kubernetes api: Failure 403 nodes "<ip-asterisk-node>" is forbidden: User "system:serviceaccount:voip:default" cannot get resource "nodes" in API group "" at the cluster scope
2020/04/03 14:38:05 too many short-term deaths

But I did well create the role & rolebinding as they are described here in this repository.
Kamailio container is running with errors
The container is running but when looking at the logs I see several errors:
21(53) ERROR: rtpproxy [rtpproxy.c:1476]: send_rtpp_command(): can't send command to a RTP proxy
21(53) ERROR: rtpproxy [rtpproxy.c:1511]: send_rtpp_command(): proxy <udp:localhost:7722> does not respond, disable it

I'm very new to asterisk and PBX stuffs so I'm a bit lost here and any hints on the direction I should follow in order to get it up and running on my kubernetes cluster would be welcome.
Thank you.

The asterisk-config crash is because it still has CLOUD=gcp somewhere. My guess is that you may have changed it for one container in the Pod, but not all.

Indeed I've forgotten to update the CLOUD variable in the asterisk deployment.

The dispatchers error is definitely an RBAC problem. I would double-check the RoleBinding there.

At a first glance the RBAC seems good as when I'm running
kubectl auth can-i get nodes --as=system:serviceaccount:voip:default -n voip

I get a yes response. But I'm still investigating on this one.

The kamailio error is indicating rtpproxy is not running, so you'll need to check that container in the kamailio Pod. It's probably another non-updated CLOUD variable.

I've updated the 2 CLOUD variable in the yaml deployment. Should I've updated elsewhere ? The rtpproxy seems good as the pod is in a running state and the logs shows
INFO:main:GLOBAL: rtpproxy started, pid 1

Thank you for your time and your help.


performance using prebuilt theming, generates old css

Bug, feature request, or proposal:
<EMAIL_ADDRESS>
What is the expected behavior?
to have no old css
What is the current behavior?
old css generated by the theming css scss files
What are the steps to reproduce?
include a prebuilt theme in styles.scss
Providing a Plunker (or similar) is the best way to get the team to see your issue.
Plunker template: https://goo.gl/DlHd6U
What is the use-case or motivation for changing an existing behavior?
Which versions of Angular, Material, OS, browsers are affected?
<EMAIL_ADDRESS>Is there anything else we should know?
I run lighthouse and try to have 100% on it,but its not possible with material at the moment.
.cdk-global-overlay-wrapper {
display: -webkit-box;
} is found in my generated code ,if i don't use material i don't have old css

We don't use autoprefixer any more so this should be obsolete.


AsUrlEncoded produces too many &

This is probably only cosmetic but due to the way how the & is added here, following code:
var test = DocumentBuilder.Html(@"
<form method=""post"">
    <input type=""button"" />
    <input name=""other"" type=""text"" value=""something"" />
    <input type=""text"" value=""something"" />
    <input name=""another"" type=""text"" value=""test"" />
</form>");
var form = test.Forms.OfType<IHtmlFormElement>().FirstOrDefault();
var result = await form.Submit();

produces this urlencoded post body with too many &
&other=something&&another=test

I can see why one (name) is missing, but I doubt that the given URL is intentional formed that way. I will check to see if the URL construction is as specified, or if this is actually a bug. Either way I agree, there seem to be too many ampersands. Thanks for the hint!


Dockerize the framework

@bradymholt I needed to Dockerize this app for CI/CD in a test environment.  Here's what I did to get it working, and wanted to see if you had any input.:
Add an NPM script:
"dockerwebpack": "cross-env ASPNETCORE_ENVIRONMENT=Production webpack --config ./client-react/webpack.config.js"
Add a Dockerfile:
FROM node:10 as node
WORKDIR /app
COPY . ./
RUN npm install
RUN npm run dockerwebpack

FROM microsoft/dotnet:2.1-sdk-alpine AS build
WORKDIR /app
COPY api/*.csproj ./
RUN dotnet restore
COPY . ./
RUN dotnet publish -c Release -o out

FROM microsoft/dotnet:2.1-aspnetcore-runtime-alpine AS runtime
WORKDIR /app
COPY --from=build /app/api/out .
COPY --from=node /app/api/wwwroot ./wwwroot
ENTRYPOINT ["dotnet", "api.dll"]

In my Jenkins job, I build and push:
docker build -t user/repo:tag .
docker push user/repo:tag

Nice!  I like it.  How do you handle the database for the test run?

I'm using a static database, and point my dev and release instances to it.  I don't create a db as part of the build step.
I forgot to mention that you have to npm install webpack-cli so that webpack is available during the build.


Fix type issues from npm 1.13

Fixes three issues:

myCustomFunciton({ handler: (ctx, args: { foo: string } => ... }) now compiles
zodToConvex(z.object({ foo: z.number().optional() })) now yields { foo?: number | undefined } instead of { foo: number | undefined }
literals("bar", "baz") when used in an argument validator gets its TS type inferred as "bar" | "baz" instead of string. This fix required adding an any and throwing out some type information, so we're still looking into a better patch.

cherry-picked


feat(esco-content-menu): adding spinner during fetch

This feature add a spinner during all fetch are resolved. Only available on content-menu component.
Warning this is based on #173

@ChristianMurphy is it good for you ?


Fixes #430

Create a way to import circles

lgtm; fix the nitpicks if you want, or ignore & merge.

ignored and merged! :smiley:


Exception caught by widgets library

======== Exception caught by widgets library =======================================================
The following assertion was thrown building Home(dirty, dependencies: [MediaQuery]):
textBaseline is required if you specify the crossAxisAlignment with CrossAxisAlignment.baseline
'package:flutter/src/widgets/basic.dart':
Failed assertion: line 4332 pos 15: 'crossAxisAlignment != CrossAxisAlignment.baseline || textBaseline != null'

Hi @Kunjesh07
This issue doesn't seem to describe a bug or a feature request. Please see https://flutter.dev/community for resources and asking questions like this,
you may also get some help if you post it on Stack Overflow and if you need help with your code, please see https://www.reddit.com/r/flutterhelp/
Closing, as this isn't an issue with Flutter itself. If you disagree, please write in the comments and I will reopen it.
Thank you


 However, I have a use case where I would like to allow client either to select subsets via HTTP headers, or to elide the headers and follow priority and locality load balancing rules.
Currently the closest I can get to that is to use the ANY_ENDPOINT fallback policy, but my understanding of the docs is that it will give all hosts in the cluster an equal weighting, which isn't what I want.
I can get around this requirement by doubling the number of clusters I have and having one for subset load balancing and one for priority/locality load balancing, however I'd rather avoid that if possible.

IIRC lack of support in the subset LB for priority/locality is a "known issue." @zuercher can probably SWAG out the effort to implement. cc @htuch

I think there is a design level issue here. See https://github.com/envoyproxy/envoy/pull/2892#issuecomment-377061603.

That comment totally makes sense, it's unclear how to combine metadata selection and locality weights in a sane way per request. In fact, in my use case I WANT specifying metadata to override locality weights (it means the client knows where they want the request to go).
I'm not sure if this is any easier to implement, but what i'm interested in is either being able to fall back to locality weighted balancing when there is no metadata match (e.g. when no metadata is passed at all) or be able to explicitly disable the subset load balancer via a route. Basically I want my clients to be able to set an HTTP header to express "send the request to X locality" but also omit it to get weighted balancing.
That would halve the number of clusters in CDS (right now i have like foo-cluster and foo-cluster-subset for every upstream service)

@htuch What do you think about adding a config option that enables the naive solution to blindly apply locality lb weights regardless of subset size? A smarter weight assignment strategy could be added later on, configured separately.
To prevent people from running into the potential pitfalls you mentioned in your comment we could add a warning to the docs explaining it.
We have a use case where all our subsets are one or more complete localities, so we'd never run into the issue of a subset match causing unbalanced localities. We're currently modeling these subset as different clusters with the same hosts using the locality lb (since we need locality weights), so being model this as a single cluster using subset lb would be super helpful for us.

@zuercher do you mind weighing in here?

@mpuncel I think having fallback to locality would be relatively clean, if it's not hard to implement it seems this could be one reasonable thing to do.
@snowp I'd be inclined to support this, but we really need some very explicit user documentation explaining the different corner cases and how load can behave strangely.
@zuercher ping again :)

I think good documentation is sufficient for now.
It might be possible to extend LRS to report separate stats for the subsets (along with their identifying metadata, I suppose). That might make it possible to for the management server to make more useful decisions about locality weights in the presence of subsets.


Functionality of helm operator

Type of question
Clarification of functionality

Question
As I understand when you convert a helm chart using helm operator, what operator does it convert the chart to resource yaml and put watchers on those resources. So when that particular k8s resource is down it can be started again.
Can you please help here if I am correct or any doc which can help in better understanding of this.

Yes. The helm-operator will constantly reconcile the manifest such that the release contains the state seen in the cluster, outside of managing underlying k8s resources themselves (the cluster does this for you).
We don't have any docs that describe the nuances of helm-operator, although the above summary basically captures the essence of how it works. helm-operator also respects helm functionality. Perhaps docs should be added on this since the existing design doc does not discuss current functionality.
/kind documentation

Yes. The helm-operator will constantly reconcile the manifest such that the release contains the state seen in the cluster, outside of managing underlying k8s resources themselves (the cluster does this for you).
We don't have any docs that describe the nuances of helm-operator, although the above summary basically captures the essence of how it works. helm-operator also respects helm functionality. Perhaps docs should be added on this since the existing design doc does not discuss current functionality.
/kind documentation

Awesome. Just one more query how can we add custom logic to it like executing commands in conatiners. Any ways to do that? Also I would like to take up the documentation of this  if possible

Awesome. Just one more query how can we add custom logic to it like executing commands in conatiners. Any ways to do that? Also I would like to take up the documentation of this  if possible

That's a great question. If helm can somehow execute a command in a container, then your operator should be able to as well.
That'd be awesome if you could help out with docs! I will note that a big refactor to helm-operator is in the works so it might be worth waiting until that's done. It will be moved to a separate repo as well. The semantics won't change much/at all but the user-facing interface will be greatly expanded.

That's a great question. If helm can somehow execute a command in a container, then your operator should be able to as well.
That'd be awesome if you could help out with docs! I will note that a big refactor to helm-operator is in the works so it might be worth waiting until that's done. It will be moved to a separate repo as well. The semantics won't change much/at all but the user-facing interface will be greatly expanded.


Network request failed running native iOS

I have swapped out all the IP addresses and tried modifying the really network layer to match the exact same as the web app version. I keep getting a yellow "Network request failed" bar at the bottom of the mobile with s blank white screen after the js bundle has loaded. This error is generated by the fetch library being used internally by Relay. I'm actually not quite sure how to really debug this one. I've verified I'm on the same wifi, and tried both simulator and on device. Any ideas what I can try? I'll mess with it more next time I get a chance.

Did you try the npm run update-ip or you made the change manually? Did you change the HOST in the .env file also?

I won't be able to test for a bit as my priorities have shifted off working on this architecture at the moment. I'll get back to this when I get a chance.

Thank you. I will keep the issue open till I get the entire stack to with with Relay 0.8, then I will test changing the IP. If it does not work I will work on a fix, if it does I will close the issue and you can try with the new version and re-open if necessary.

Using 'npm run update-ip' works in my case with the latest changes, so I am closing the question. If it happens with the latest release, re-open the issue.


(maint) Merge stable to master

@MikaelSmith I'm not sure if the leatherman commit is correct or not?

Looks like it should be fine. There were merge conflicts?

No merge conflicts, just wanted to make sure about the leatherman git sha as we've had issues with that in puppet_for_the_win


feat(server): add path() and query() to Request

Fixes #896 and #897.
Also improve RequestUri tests.

Are there tests for Request that I should update? I didn't find any obvious ones. Alternatively, I can write unit tests for Request.

Did you notice the test changes and do you know if they are actually correct or is the implementation buggy? It seems like some things that are accepted should be rejected.

I implemented all of the suggested changes, though it doesn't fix one of the test cases, since I'm not entirely sure how to go about changing the request uri parser.

travis logs say the code examples in the guide are now failing.

I guess I didn't run the doc tests. I'll do that. :)

Excellent, thanks for sticking through to the end!

No problem. I really like that Rust has a tool for testing documentation, since that's something that's always out of date.


Compile failed （win7 x64 6.1.7601.24441）

When i try to compile the latest code, i got  a lot of errors, can someone tell me how to fix? thanks for a lot.

Details:
Windows 7 x64 sp1 ( 6.1.7601.24441)
Microsoft Visual Studio Enterprise 2019 version 16.10.2
WDK 10.0.19030.1000

Can i ask how did u solve this problem?


Figure out better timeouts

A lot of the commands in the docker gateway use a 10 second timeout because it was a quick implementation that gave enough time for everything to complete, but this adds unnecessary delay to unit tests. We need to hone those more so they are unnecessarily high.

No longer needed now that we don't establish timeouts.


VLAZ: Watch +27712296556

VLAZ requests the watch of the watch_number +27712296556. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

Approved by cigien in Charcoal HQ


RangeError: Maximum call stack size exceeded in TS 2.1.4

TypeScript Version:  2.1.4
The project used to compile without any issues on TS 2.0, but it fails after upgrading to TS 2.1.4 without changing any code. I would be happy to give access to the repo if it would help.
Expected behavior:
The code compiles without issues
Actual behavior:
RangeError: Maximum call stack size exceeded

ERROR in ./src/store/reducers/workspace/analysis/index.ts
Module build failed: RangeError: Maximum call stack size exceeded
    at checkExpressionWorker (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:37911:39)
    at checkExpression (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:37894:42)
    at checkExpressionCached (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:37793:38)
    at checkSpreadExpression (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:34449:39)
    at checkExpressionWorker (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:37974:28)
    at checkExpression (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:37894:42)
    at checkExpressionForMutableLocation (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:37825:24)
    at checkArrayLiteral (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:34484:32)
    at checkExpressionWorker (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:37933:28)
    at checkExpression (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:37894:42)
    at getTypeOfExpression (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:37879:20)
    at getAssignedTypeOfBinaryExpression (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:32532:17)
    at getAssignedType (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:32554:28)
    at getInitialOrAssignedType (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:32605:17)
    at getTypeAtFlowAssignment (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:32904:69)
    at getTypeAtFlowNode (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:32839:32)
    at getTypeAtFlowLoopLabel (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:33050:36)
    at getTypeAtFlowNode (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:32858:29)
    at getFlowTypeOfReference (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:32814:51)
    at checkIdentifier (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:33538:28)
    at checkExpressionWorker (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:37914:28)
    at checkExpression (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:37894:42)
    at checkExpressionCached (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:37793:38)
    at checkSpreadExpression (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:34449:39)
    at checkExpressionWorker (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:37974:28)
    at checkExpression (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:37894:42)
    at checkExpressionForMutableLocation (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:37825:24)
    at checkArrayLiteral (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:34484:32)
    at checkExpressionWorker (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:37933:28)
    at checkExpression (/home/f/Projects/WebCeph/node_modules/typescript/lib/typescript.js:37894:42)
 @ ./src/store/reducers/workspace/index.ts 13:0-113
 @ ./src/index.tsx

we would need to look at the code that triggered this exception to be able to diagnose the issue. can you share the sources?

@mhegazy @sandersn I invited you to my private repo. Try to build the scale-origin branch with:
yarn
npm run prod

It should work fine, now try upgrading to TS 2.1 and build again.

mm.. does nto seem to reproduce on my box..
c:\test\12735\WebCeph>webpack --bail --progress
Hash: 9f18cc72158839fd04f5
Version: webpack 2.1.0-beta.27
Time: 20127ms
                               Asset       Size  Chunks             Chunk Names
4502ba795be584933131c195c7a53052.png  279 bytes          [emitted]
800608933790f1502ddb5dc9ba746f62.png    1.24 kB          [emitted]
      bundle_9f18cc72158839fd04f5.js    2.25 MB       0  [emitted]  bundle
         lib_9f18cc72158839fd04f5.js  764 bytes       1  [emitted]  lib
      common_9f18cc72158839fd04f5.js    1.39 MB       2  [emitted]  common
                          index.html  578 bytes          [emitted]
                               sw.js     206 kB          [emitted]
[1084] ./src/analyses nonrecursive .ts$/ 275 bytes {0} [built]
[1087] multi bundle 28 bytes {0} [built]
[1088] multi lib 316 bytes {1} [built]
    + 1086 hidden modules
Child serviceworker-plugin:
        + 6 hidden modules

Did you upgrade to 2.1? I've had the same issue on 2 machines (both running Linux) since the nightlies with node 7.2, 6.9 and 4.7.

I have the same problem here, I'm porting a project to TS and I was getting a bunch compiler errors with 2.0.10, after updating to 2.1.4 tsc crashes.

@forabi any chance you are using "declaration": true (--declaration)?

I got it to repro. I'm on Linux too, although the stack trace doesn't seem particularly Linux-influenced.

Also fails for npm run dev, although webpack-dashboard obscures the stack trace.

@maghis No. Here is my tsconfig.json:
{
  "compilerOptions": {
    "target": "es2015",
    "lib": [
        "es5",
        "es2015",
        "webworker",
        "dom"
    ],
    "outDir": "build/",
    "allowJs": true,
    "allowSyntheticDefaultImports": true,
    "noImplicitAny": true,
    "moduleResolution": "node",
    "jsx": "react",
    "sourceMap": true,
    "module": "commonjs",
    "isolatedModules": true,
    "forceConsistentCasingInFileNames": true,
    "preserveConstEnums": true,
    "traceResolution": false,
    "noImplicitReturns": true,
    "pretty": true,
    "noUnusedParameters": true,
    "strictNullChecks": true,
    "noUnusedLocals": true,
    "noImplicitThis": true,
    "skipLibCheck": true,
    "skipDefaultLibCheck": true,
    "baseUrl": ".",
    "paths": {
      "*": [
        "*",
        "src/*"
      ]
    }
  },
  "compileOnSave": true,
  "exclude": [
      "node_modules",
      "src/**/*.test.ts",
      "build/**"
  ]
}

Looks like the culprit is of the form acc = [...acc]
let acc: T[] = [];
for (const x of o1.xs) {
  acc = [...acc, a, ...o2.xs, ...f(o2), ...flatten(map(o2.xs, g)]
}

I anonymised the code since it's a private repo. It's src/store/reducers/workspace/analysis/index.ts:356 on the scale-origin branch for future reference. Commenting out this line prevents the error, or switching to
acc = acc.concat([a, ...o2.xs, etc]).
I'll try to reduce the repro down to something the size of that snippet. I don't know why checkExpression gets into a recursive loop; the type annotation on the declaration is given so it something must have been introduced before the point where we check the annotation. Perhaps the expanding array type code?

@sandersn Thanks for taking the time to investigate the issue :) The code does not seem so elegant but it used to compile with 2.0. Can I do something to help? Is it a Linux-specific issue? Can someone reproduce on a Mac?

I have the failing snippet pretty small, but I haven't got it to repro outside your project yet. I doubt that it is Linux-specific, although I think it is specific to your set of compiler options.
Here's what I have so far:
type Fake = { components: any };
export const getNestedComponents = (fake: Fake): Fake[] => {
    let additional: Fake[] = [];
    for (const subcomponent of fake.components) {
        console.log(subcomponent);
        additional = [
                ...additional,
        ];
    }
    return additional;
}

Obviously, additional = [...additional, ...otherStuff] inside of a loop is extremely common, so this should work.
It passes when I take out the loop, so I'm pretty sure it's a bug in control-flow analysis that triggers with some combination of the compiler options.
I think I touched array spread control flow when adding object spread, so that's probably where the bug is. But it might be in the expanding array types code, which is new as well, and relies heavily on control-flow analysis.

I found a fix and an even smaller repro, but still no isolated test. If, in checkSpreadExpression, I change checkExpressionCached to checkExpression, the infinite recursion no longer happens.
Here's the smaller repro. I stuck it in src/index.tsx and deleted the source of the rest of the project and it still repros when running webpack. So I need to find out what webpack is doing differently from our test harness.
let additional = [];
for (const subcomponent of []) {
    additional = [...additional];
}

It turns out the above program crashes with tsc too. However, this program crashes with webpack but not with tsc:
let additional: number[] = [];
for (const subcomponent of []) {
    additional = [...additional];
}

I'm debugging right now to find out why.

@sandersn it's not 2.1.4 specific, in my project I can reproduce it with 2.0.10 too, by switching "declaration": true.
I've tried commenting all the spreads in my source but the result is the same. (maybe a dependency?)

@maghis that is a different bug then -- the one that @forabi found is exposed by the new (2.1) evolving array types feature, and only occurs with a self-assignment inside a loop. Can you file a new issue with a minimal repro?

@sandersn I'm trying to repro, it's probably a coincidence, I had never seen it before.

The reason that webpack crashes both with and without the type annotation is that, when called from webpack, the global symbol table is empty, so no array types can be created as the checker starts. This creates a bunch of errors, but those are also not reported with this webpack configuration.
And without being able to check array types, the compiler just treats everything like an evolving array type, even if it has an annotation. Then it hits this bug.

Fix is up at #12808

@sandersn @mhegazy Thanks! Do you still need access to the repo?

Nope, the magic ingredient was loop + spread expression + no implicit any + evolving array types, and I don't need the original now that I know that.
There is still a (separate) bug in the way webpack invokes the compiler , so you might still want to play with your webpack configuration to see if you can get it to show you compile errors.

@sandersn Yeah, ts-loader is configured with transpileOnly: true so no type checking is performed. This is faster for development and I haven't released a stable version yet. Once the project is ready for production type checking (and tests) should be enabled.

Well, transpileOnly: true may not be correct then. The compiler is definitely checking your source, it's just that built-in types like array are missing.


Upgrade psutil to 4.2.0

Enhancements

[Windows] new APIs to deal with Windows services: win_service_iter() and win_service_get().
[Linux] psutil.virtual_memory() returns a new "shared" memory field.
[Linux] speedup /proc parsing:

Process.ppid() is 20% faster
Process.status() is 28% faster
Process.name() is 25% faster
Process.num_threads is 20% faster on Python 3

Bug fixes

[Linux] net_if_stats() may raise OSError for certain NIC cards.
Process.as_dict() should ignore extraneous attribute names which gets
attached to the Process instance.

Tested with the following configuration:
sensor:
  - platform: systemmonitor
    resources:
      - type: 'disk_use_percent'
        arg: '/'
      - type: 'disk_use'
        arg: '/home'
      - type: 'disk_free'
        arg: '/'
      - type: 'memory_use_percent'
      - type: 'memory_use'
      - type: 'memory_free'
      - type: 'swap_use_percent'
      - type: 'swap_use'
      - type: 'swap_free'
      - type: 'network_in'
        arg: 'wlp1s0'
      - type: 'network_out'
        arg: 'wlp1s0'
      - type: 'packets_in'
        arg: 'wlp1s0'
      - type: 'packets_out'
        arg: 'wlp1s0'
      - type: 'ipv4_address'
        arg: 'wlp1s0'
      - type: 'ipv6_address'
        arg: 'wlp1s0'
      - type: 'processor_use'
      - type: 'last_boot'
      - type: 'since_last_boot'

@fabaff Thanks!


clearInput doesn't seem to work on IOS

Ionic version:  (check one with "x")
[ ] 1.x
[x] 2.x
I'm submitting a ...  (check one with "x")
[x] bug report
[ ] feature request
[ ] support request => Please do not submit support requests here, use one of these channels: https://forum.ionicframework.com/ or http://ionicworldwide.herokuapp.com/
Current behavior:
I want to add clearInput attribute on my ion-inputs. My ion-inputs have ngModel attributes and some have keyup functions bind to them. On IOS, the clearInput icon shows up on focus but nothing happends when clicking it besides the loss of focus on the ion-input. It does work on Android.
Expected behavior:
I expect inputs to be empty after clicking on the clearInput icon.
Steps to reproduce:

Related code:
<ion-item>
	<ion-input [(ngModel)]="lastName" clearInput></ion-input>
</ion-item>

Other information:

Ionic info: (run ionic info from a terminal/cmd prompt and paste output below):
Cordova CLI: 6.4.0
Ionic Framework Version: 2.0.1
Ionic CLI Version: 2.2.1
Ionic App Lib Version: 2.2.0
Ionic App Scripts Version: 1.0.0
ios-deploy version: 1.9.1
ios-sim version: Not installed
OS: OS X El Capitan
Node Version: v7.0.0
Xcode version: Xcode 8.2 Build version 8C38

Hello, thanks for using Ionic! I am going to close this issue for now.

@bmagni thanks for raising this, you beat me to it!
I'm experiencing the same issue, although I'm binding slightly differently using a FormGroup instead of ngModel.

Same issue, noticed it a few days ago. Have had to disable that feature in app.

I was noticing the same issue. After playing around with it I started to notice it would work on some occasions. I think it's due to the 'hitbox' area of the clear button is very small on ios. On rare instances I could click it just right and get the expected behavior but the majority of the time it would just close the keyboard and retain the text. Just an assumption...

I face the same problem, but on desktop, and with an input of type "date" :
the hitbox of the clear button is so tiny that it becomes unusable.
The other input types work well.

Same issue here, changed to clearInput="true" and works on browser (ionic serve) but not on device. When tapping on the clear button, it just looses focus and closes the keyboard, but won't clear the text...
global packages:
@ionic/cli-utils : 1.0.0
Cordova CLI      : 6.5.0
Ionic CLI        : 3.0.0

local packages:
@ionic/app-scripts              : 1.3.4
@ionic/cli-plugin-cordova       : 1.0.0
@ionic/cli-plugin-ionic-angular : 1.0.0
Ionic Framework                 : ionic-angular 3.1.0

System:
Node       : v7.4.0
OS         : macOS Sierra
Xcode      : Xcode 8.3.2 Build version 8E2002
ios-deploy : 1.9.0
ios-sim    : 5.0.8

Same issue. any update @jgw96 ?

Same issue.
I change "click" to "tap" in  ionic/src/components/input/input.ts
  '<button ion-button clear [hidden]="!clearInput" type="button" class="text-input-clear-icon" (click)="clearTextInput()" (mousedown)="clearTextInput()"></button>'
It works fine.

@flyhuang thanks!

anyone notice that if using --prod to build this fix no longer works?


BootstrapListenerInterface compatibility error

throws fatal error while BootstrapListenerInterface implemented.
I am not sure, my design right ?
use Zend\ModuleManager\Feature\BootstrapListenerInterface;
use Zend\Mvc\MvcEvent;

/**
 * Class Module
 * @package Application
 */
class Module implements ConfigProviderInterface, BootstrapListenerInterface
{
    /**
     * @var string
     */
    const VERSION = '1.0.0dev';

    /**
     * @param MvcEvent $event
     */
    public function onBootstrap(MvcEvent $event)
    {
    }
}

Fatal error: Declaration of Application\Module::onBootstrap(Zend\Mvc\MvcEvent $event) must be compatible with Zend\ModuleManager\Feature\BootstrapListenerInterface::onBootstrap(Zend\EventManager\EventInterface $e) in module/Application/src/Module.php on line 14

Hello @semihs . Change the following...
In use block:
- use Zend\Mvc\MvcEvent
+ use Zend\EventManager\EventInterface
onBootstrap function:
+ public function onBootstrap(EventInterface $event) {

There are not implemented methods in MvcEvent. for example application property.
No problem but does not provide hinting

I've just looked, because usually specify MvcEvent in implementations I write. The reason that works is... I don't implement the interface directly. In every case, the listeners look for either implementations of the interface or that the module class implements the required method.
The point is: if you want the typehinting in your IDE, drop the implementation at the class level, and update your method to use the expected event class.
(We cannot change the typehint in the interface at this point as it would break BC.)


Shortcut key bug when using Simplified Chinese as display language

VSCode Version: 1.0.0
OS Version: Windows 10

When closing a modified file without saving, the popup dialog use the same shortcut key for '保存' (Save) and '不保存' (Don't Save).
Steps to Reproduce:

Change locate to zh-CN
Open or create a file
Modify the file without saving
Close the file from '工作文件' (WORKING FILE) or close the editor directly
On the popup saving dialog, '保存' (Save) and '不保存' (Don't Save) use the save shortcut key 'S'

Dup of #6184


Fix bugs and reenable PushDownReadTagValuesRule and PushDownReadTagKeysRule

Once Flux is updated to 0.83.1, after the split, having this rule turned on makes these end-to-end test fail:

measurement_field_keys
measureemnt_tag_values

When the rules is turned off, the tests can pass. It seems that the predicate that may accompany the call to ReadTagKeys and ReadTagValues is not evaluated properly, especially when there is a predicate on the _field column.
DOD:

testing is very thin in this area, and this issue could have easily been missed, so more testing should be added, including tests with predicates on _measurement, _filter and _value for queries that use ReadTagKeys and ReadTagValues, in addition to any regression test
Rules should be reenabled in query/stdlib/influxdata/influxdb/rules.go
The above mention Flux end-to-end tests should be passing

Here's an easy reproducer for this.
Insert data like this:
package main

import "csv"

input = "
#datatype,string,long,dateTime:RFC3339,string,string,string,double
#group,false,false,false,true,true,true,false
#default,_result,,,,,,
,result,table,_time,_measurement,host,_field,_value
,,0,2018-05-22T19:53:26Z,system,host.local,load1,1.83
,,0,2018-05-22T19:53:36Z,system,host.local,load1,1.72
,,0,2018-05-22T19:53:46Z,system,host.local,load1,1.74
,,0,2018-05-22T19:53:56Z,system,host.local,load1,1.63
,,0,2018-05-22T19:54:06Z,system,host.local,load1,1.91
,,0,2018-05-22T19:54:16Z,system,host.local,load1,1.84

,,1,2018-05-22T19:53:26Z,sys,host.local,load3,1.98
,,1,2018-05-22T19:53:36Z,sys,host.local,load3,1.97
,,1,2018-05-22T19:53:46Z,sys,host.local,load3,1.97
,,1,2018-05-22T19:53:56Z,sys,host.local,load3,1.96
,,1,2018-05-22T19:54:06Z,sys,host.local,load3,1.98
,,1,2018-05-22T19:54:16Z,sys,host.local,load3,1.97

,,2,2018-05-22T19:53:26Z,system,host.local,load5,1.95
,,2,2018-05-22T19:53:36Z,system,host.local,load5,1.92
,,2,2018-05-22T19:53:46Z,system,host.local,load5,1.92
,,2,2018-05-22T19:53:56Z,system,host.local,load5,1.89
,,2,2018-05-22T19:54:06Z,system,host.local,load5,1.94
,,2,2018-05-22T19:54:16Z,system,host.local,load5,1.93

,,3,2018-05-22T19:53:26Z,swap,host.global,used_percent,82.98
,,3,2018-05-22T19:53:36Z,swap,host.global,used_percent,82.59
,,3,2018-05-22T19:53:46Z,swap,host.global,used_percent,82.59
,,3,2018-05-22T19:53:56Z,swap,host.global,used_percent,82.59
,,3,2018-05-22T19:54:06Z,swap,host.global,used_percent,82.59
,,3,2018-05-22T19:54:16Z,swap,host.global,used_percent,82.64

#datatype,string,long,dateTime:RFC3339,string,string,string,long
#group,false,false,false,true,true,true,false
#default,_result,,,,,,
,result,table,_time,_measurement,host,_field,_value
,,0,2018-05-22T19:53:26Z,sys,host.global,load7,183
,,0,2018-05-22T19:53:36Z,sys,host.global,load7,172
,,0,2018-05-22T19:53:46Z,sys,host.global,load7,174
,,0,2018-05-22T19:53:56Z,sys,host.global,load7,163
,,0,2018-05-22T19:54:06Z,sys,host.global,load7,191
,,0,2018-05-22T19:54:16Z,sys,host.global,load7,184

,,1,2018-05-22T19:53:26Z,sys,host.local,load8,198
,,1,2018-05-22T19:53:36Z,sys,host.local,load8,197
,,1,2018-05-22T19:53:46Z,sys,host.local,load8,197
,,1,2018-05-22T19:53:56Z,sys,host.local,load8,196
,,1,2018-05-22T19:54:06Z,sys,host.local,load8,198
,,1,2018-05-22T19:54:16Z,sys,host.local,load8,197

,,2,2018-05-22T19:53:26Z,sys,host.global,load9,195
,,2,2018-05-22T19:53:36Z,sys,host.global,load9,192
,,2,2018-05-22T19:53:46Z,sys,host.global,load9,192
,,2,2018-05-22T19:53:56Z,sys,host.global,load9,189
,,2,2018-05-22T19:54:06Z,sys,host.global,load9,194
,,2,2018-05-22T19:54:16Z,sys,host.global,load9,193

,,3,2018-05-22T19:53:26Z,swp,host.global,used_percent,8298
,,3,2018-05-22T19:53:36Z,swp,host.global,used_percent,8259
,,3,2018-05-22T19:53:46Z,swp,host.global,used_percent,8259
,,3,2018-05-22T19:53:56Z,swp,host.global,used_percent,8259
,,3,2018-05-22T19:54:06Z,swp,host.global,used_percent,8259
,,3,2018-05-22T19:54:16Z,swp,host.global,used_percent,8264
"

csv.from(csv: input) |> to(bucket: "telegraf")

And then query it like this (with the rules PushDownReadTagValuesRule and PushDownReadTagKeysRule enabled)
package main

import "csv"

from(bucket: "telegraf")
    |> range(start: 2017-01-01T00:00:00Z)
    |> filter(fn: (r) => r._measurement == "sys")
    |> filter(fn: (r) => r.host == "host.local")
    |> keep(columns: ["_field"])
    |> group()
    |> distinct(column: "_field")
    |> sort()

If this bug is present then 4 rows will be returned, even though there should only be 2.

I find that commenting out only PushDownReadTagValuesRule causes the tests to succeed so I'm not sure if there's an issue with PushDownReadTagKeysRule. Still investigating.

Yes, there may not be an issue with PushDownReadTagKeysRule, as it doesn't cause a test to fail. I'm still suspect that there is a bug there too, since it does something pretty similar, and our testing in this area is not so good. But I'm not all that clear on exactly how it works, so I'm not certain.
(This issue was present in the post-split, pre-Flux-upgrade, but it was not found at that time due to the failing test being added to Flux after algo-w)
Rather than just re-enable the rule because no tests fail with it, since you'll have the context, can you have a look at the code and check it, or at the very least, see if there is missing test coverage that should be added for it?

Yea. I'll make sure some appropriate test cases are present for this.

@wolffcm just to clarify, you believe this bug has always existed in the 1.x query engine and was only caught because a new test was added and it was fixed in v2 but it was never fixed in v1. Correct?

Yes, that's my understanding. The tests that started failing were added in this PR:
https://github.com/influxdata/flux/pull/2805
Note that these tests are not regression tests, they are testing pure Flux functions.
So I don't think this bug was ever present in v2. But it seems to have existed in v1 as long as we've had those rules. I guess it will need to be backported to 1.x too.

Having looked at this in detail there seems to be a fundamental difference in how we understand _field and field keys in tsm2 vs tsm1. Both tagValues and tagKeys will need to be updated so that we avoid wrong answers. I've filed issues for this work:
https://github.com/influxdata/influxdb/issues/19794
https://github.com/influxdata/influxdb/issues/19806
I have also opened a PR to add tests that demonstrate the wrong answers:
https://github.com/influxdata/flux/pull/3272
When that PR is closed, I will close this issue, but the two above issues will remain and need to be fixed.


Make ExternalAddressSelector pluggable

PR Description
Currently there is no mean to set a fixed external advertised address if doesn't match the address seen by other discv5 nodes: the local node record is overridden due to Ping responses.
This PR makes ExternalAddressSelector pluggable so the client code could replace the default selector with NOOP or any other custom implementation

In Teku we enable/disable the automatic update of the ENR via the newAddressHandler https://github.com/ConsenSys/teku/blob/6b5d530cf7cb00527aeaef5a472eab64f2011c78/ne[…]pegasys/teku/networking/p2p/discovery/discv5/DiscV5Service.java

Oh, right! That could indeed do the trick.
Yep, let's anyway make this pluggable. Could be potentially of use later


envoy: register secret syncer if only CEC is enabled too

Currently, the Envoy SecretSyncer (K8s TLS Secret -> Envoy SDS) only gets registered if either Ingress Controller or Gateway API is enabled.
Hence Secrets aren't available via SDS in cases where only CiliumEnvoyConfig is enabled (--enable-envoy-config).
This commit fixes this by registering the SecretSyncer also in cases where only CiliumEnvoyConfig is enabled (without Ingress Controller and/or Gateway API being enabled).
In addition, the SecretSyncer only gets initialized if Cilium is running in a K8s cluster (clientset enabled).
This results in the following envoy module jobs if only CEC (but not Ingress & Gateway API) is enabled.
root@kind-worker:/home/cilium# cilium status --verbose
...
Modules Health:
agent
├── controlplane
...
│   ├── envoy-proxy
│   │   ├── ...
│   │   └── observer-job-k8s-secrets-resource-events-cilium-secrets    [OK] Primed (1s, x1)
...

/test


Fix the needs configurations for the test and build jobs in the build workflow

🗣 Description
This pull request fixes the needs configuration for the test and build jobs in the build workflow. This is mainly about adding a requirement for the new diagnostics job that was added.

💭 Motivation and context
This should have been done in https://github.com/cisagov/skeleton-aws-lambda-python/pull/19 but was missed.

🧪 Testing
Automated tests pass.

✅ Pre-approval checklist

[x] This PR has an informative and human-readable title.
[x] Changes are limited to a single goal - eschew scope creep!
[x] All relevant type-of-change labels have been added.
[x] I have read the CONTRIBUTING document.
[x] These code changes follow cisagov code standards.
[x] All new and existing tests pass.

I am toggling this to merge when ready because I would like to just push this out with the existing wave for this lineage that has barely been started.


Audio only playback, no video

Browser: Chrome 51.0.2704.103 (64-bit)
OS: OS X 10.11.5
Version: 0.2.59
Steps to reproduce:

set opts.mimeType to "video/mp4"
set URL with an invalid or no proper extension
player plays as audio only due to "_canPlay" reporting true for "isAudioOnly"
replicable on CDN version

e.g. http://gameclipscontent-d2018.xboxlive.com/00090000095ab1d1-802dee60-54e2-408c-9b94-c97c92f780a8/GameClip-Original.MP4?sv=2014-02-14&sr=c&sig=FCt61jzzj0DVIZm%2FSqTb1HShP566M2ojwDhduGpwdWM%3D&st=2016-07-22T18%3A55%3A49Z&se=2016-07-22T20%3A00%3A49Z&sp=r&gda=1469217649_2ba9d477776132e714dc370686c1e352
Debugging:

src/playbacks/html5_video/html5_video.js#L42 AudioOnly returns true due to a set of parameters sent to HTML5Video._canPlay
src/playbacks/html5_video/html5_video.js#L409 type = "audio" mimeTypes = ["video/mp4"]
src/playbacks/html5_video/html5_video.js#L415
media.canPlayType("video/mp4") => "maybe"

Possibly related to #1000

I think maybe instead of
HTML5Video._canPlay('audio', AUDIO_MIMETYPES, resourceUrl, mimeType)

it should be
!HTML5Video._canPlay('video', VIDEO_MIMETYPES, resourceUrl, mimeType)

in https://github.com/clappr/clappr/blob/master/src/playbacks/html5_video/html5_video.js#L42

As I was walking away, I was thinking exactly the same thing. Could also be a combination of the two - will make that change too.

@tjenkinson actually, @sjlu solution is right. Using only
!HTML5Video._canPlay('video', VIDEO_MIMETYPES, resourceUrl, mimeType)

could cause false positives for other playbacks that extend HTML5Video

@towerz I think we still might have an issue here.
It feels strange that for the HLS playback, for example, isAudioOnly() is calling _canPlay() on Html5Video. I think maybe isAudioOnly() should also be overridden?

@tjenkinson perhaps it should override isAudioOnly, yes. Actually, I'm writing some tests to ensure we are doing this right.

Actually, there was a problem with the solution. Using audio/mp3 as mime type, for example, isAudioOnly returned false, since the video tag can actually play the audio source.
Since the audio tag is a headless version of the video tag, this solution was not efficient. Instead, I changed the check to only considered known audio only mime-types or the audioOnly parameter.
There are some tests to guarantee it works so we can refactor properly if needed. If you think more tests are necessary, please let me know.

I'm getting this behaviour too. I'm using whatever version is on the CDN. Does it have the fix?

@anacrolix we're going to release a new version with this fix soon even though the version at CDN will reflect later.


WGAN loss is right?

I think your WGAN loss if not right, it should be:
self.discriminator_loss = tf.reduce_mean(logits_fake - logits_real)
self.gen_loss = tf.reduce_mean(-logits_fake)
ans your WGAN discriminator output shape is [batch_size, channel=1, height=2, width=2],it is a mistake?

The discriminator output is of shape [batch_size, 1]. The last layer of discriminator is a fc layer.
The loss term has been previously discussed in issues #6 and #7
Cheers.


Redcarpet 3.3.1 Causes Segfaults When Running Locally

First, just wanted to say thanks for all the work on this (it's a fantastic project and made our docs much better). Thanks so much.
Just wanted to give you a heads up: when I initially tried merging v1.2 with our docs, it kept throwing segfaults when running:
bundle exec middleman server
And then attempting to load the page. Tried in a variety of Rubys (1.9.3, 2.0.0, 2.2.1) on Linux x86-64 but to no avail.
I reverted Redcarpet back to 3.2.3 and it seems to work fine. Just figured I would let you guys know. If you want to reproduce, feel free to clone our fork:
https://github.com/blockcypher/docs
Then change Redcarpet in the Gemfile back to 3.3.1 and try running middleman server.

@acityinohio  :+1: thanks for the report, it looks like they have a regression in 3.3. Do you know if RedCarpet 3.2.3 fixes the problem for you? They claim it does, and it seems to fix it for me.

(Whoops, meant 3.3.2, not 3.2.3)

Awesome! That did the trick; I fixed and updating the Gemfile dependency in our docs. Thanks again!

No problem, thank you for the report!

This is marked as fixed, but Gemfile still contains old version of redcarpet (https://github.com/tripit/slate/blob/master/Gemfile#L9), which still causes the segfault.

It's fixed in #292, still waiting on a merge from @tariqislam!


Image not display

Hello, first of all, thank you very much for all your job, this libreary is great!
But i have a problem, when I share my article, the image doesn't display on facebook or any social media I added.
I already tried with the meta tags solution , but is not working for me.  I'm using nuxt.js and my code is something like this:

thanks for the help!

Hello @MGuadalupe, this issue is not related to this package.
Please ask for help on the Vuejs Gitter chat room, the official Vuejs forum or StackOverflow.


Feature/test controllers

Blog app - controllers specs

Add RSpec as a gem to the project.
Create a Request spec file for all controllers.
Make sure that for each action:

If response status was correct.
If a correct template was rendered.
If the response body includes correct placeholder text.

Thank you


storage-internal-avro parser

.NET PR for reference: https://github.com/Azure/azure-sdk-for-net/pull/11483
Will be used by the storage-blob and change-feed packages by sharing source code.
Interface
constructor(dataStream: IReadable) : support read the avro Object Container File from the beginning
This one support resume reading from the middle of the file with the block index and the object index within the block specified.
constructor(
    dataStream: IReadable,
    headerStream: IReadable,
    currentBlockOffset: number,
    indexWithinCurrentBlock: number
  );

TODO

[ ] implement IReadable wrapper for browser Promise<Blob>

Since this is just sharing source code, probably all of the top level files to support  e.g. rollup, package.json, etc. should be removed. Package.json especially, as otherwise you could be satisfying dependencies by installing them in the node_modules of the "virtual" package, and since users won't have that package, the dependencies will be missing. When using the shared source approach, any dependencies have to be declared by thew packages importing them.

Since this is just sharing source code, probably all of the top level files to support e.g. rollup, package.json, etc. should be removed. Package.json especially, as otherwise you could be satisfying dependencies by installing them in the node_modules of the "virtual" package, and since users won't have that package, the dependencies will be missing. When using the shared source approach, any dependencies have to be declared by thew packages importing them.
If you want to keep the package.json for e.g. triggering tests and such, then I would recommend putting "private: true" to make sure it doesn't get published.

@bterlson
Yes, I want to keep those files for testing. Also, the package.json could give a clue to this "virtual" package's dependency for packages importing it.
Added  "private": true.


Uncaught SwitchCoder in commands.py line 1044

Aider version: 0.62.1
Python version: 3.12.7
Platform: macOS-15.0.1-arm64-arm-64bit
Python implementation: CPython
Virtual environment: Yes
OS: Darwin 24.0.0 (64bit)
Git version: git version 2.39.5 (Apple Git-154)
An uncaught exception occurred:
Traceback (most recent call last):
  File "aider", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "main.py", line 564, in main
    return main(argv, input, output, right_repo_root, return_coder=return_coder)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "main.py", line 796, in main
    commands.cmd_load(args.load)
  File "commands.py", line 1287, in cmd_load
    self.run(cmd)
  File "commands.py", line 236, in run
    return self.do_run(command, rest_inp)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "commands.py", line 208, in do_run
    return cmd_method(args)
           ^^^^^^^^^^^^^^^^
  File "commands.py", line 1017, in cmd_ask
    return self._generic_chat_command(args, "ask")
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "commands.py", line 1044, in _generic_chat_command
    raise SwitchCoder(
aider.commands.SwitchCoder

Thanks for trying aider and filing this issue.
This looks like a duplicate of #2232. Please see the comments there for more information, and feel free to continue the discussion within that issue.
I'm going to close this issue for now. But please let me know if you think this is actually a distinct issue and I will reopen this issue.


how to use clustergrammer2 with "dash" for my web app

Hello,
I am quite lost on how to use clustergrammer2 with "dash". I really want to show a heatmap in my app and appreciate your feedback asap.
My current clustergrammer2 code which works.
num_rows = 71
n1 = Network(CGM2)
n1.load_df(np.log2(df_allgrp_fill_transposed), meta_col=df_allgrp_fill_meta, col_cats=col_cats)
n1.set_global_cat_colors(df_colors)
n1.filter_N_top(axis='row', N_top=num_rows, rank_type='var')
n1.set_manual_category(col='Tissue', preferred_cats=df_colors)
n1.widget()
Thanks so much!

Hey, anyone any response? So I can atleast create a .json file. But how do I read this json file via dash to build a dashboard?
Please help :)

Hi, I haven't used Dash but I can try to look into it.

Yes, @jessielyons this ObservableHQ collection has several examples of how the visualization can be embedded into a JavaScript application https://observablehq.com/collection/@cornhundred/clustergrammer-gl Let me know if you have any questions


adding oauth to auth functions and docs

Added an oauth option to the get_service function. The default behavior will be the service credentials option, and if no service credentials path is found, it will look for OAuth credentials. If no OAuth creds found, it will raise and error. I used the code provided by google for the OAuth access, which involved adding a few more libraries to the requirements.
The only edge case issue here would be if people have both a service account and OAuth account and want to use the the OAuth account instead. Not sure if we want to handle this, or push this to a later date.
Additionally, I don't have a service account, so it would be great if you could test and make sure this still works. I didn't really touch that part of the code though, so should be fine. For testing, I have been using Testing_Oauth.ipynb

Yay, thanks @ejh56 for it!
I'll try those options you're mentioning with OAuth and service account authorisations and share the results and thoughts with you.


Allow Universal on macOS 10.14 Mojave

See https://developer.apple.com/documentation/xcode-release-notes/xcode-10-release-notes
Command Line Tools
New Features
The Command Line Tools package installs the macOS system headers inside the macOS SDK. Software that compiles with the installed tools will search for headers within the macOS SDK provided by either Xcode at:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk

or the Command Line Tools at:

/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk

depending on which is selected using xcode-select.

The command line tools will search the SDK for system headers by default. However, some software may fail to build correctly against the SDK and require macOS headers to be installed in the base system under /usr/include. If you are the maintainer of such software, we encourage you to update your project to work with the SDK or file a bug report for issues that are preventing you from doing so. As a workaround, an extra package is provided which will install the headers to the base system. In a future release, this package will no longer be provided. You can find this package at:

/Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg

To make sure that you’re using the intended version of the command line tools, run xcode-select -s or xcode select -s /Library/Developer/CommandLineTools after installing.

Xcode 10 Command Line Tools for macOS Mojave provides macOS_SDK_headers_for_macOS_10.14.pkg installing provides full i386 & x86_64 headers.

@jmroot I've rebased this to HEAD

I looked over the pkg, and indeed it seems to contain all the headers needed to make "/" function as the SDK on Mojave, and as far as I can tell, has all the i386-required parts still in the headers. I have to 100% verify this -- I haven't actually installed this as I would like to keep my Mojave system matching MacPorts as much as possible.
If it does have all the i386 bits as it seems to, all users who need to / want to keep i386 building possible could move up to Mojave, which is great.
My only concern is that the MacOSX10.14 SDK will not have i386 support in it, so builds that force that to be used (qt5, libvpx, etc, etc) will all fail building universal, whereas they succeed on 10.13 where the SDK matches "/".

@kencu If these ports already respect SDKROOT then the modification to portutils.tcl should handle this already.

Some do, some don't. the ones I mentioned will ignore "/" always, and force an SDK.
So it is not handled already, and -- because we cannot (I think) force the i386 headers into the MacOSX10.14.sdk, it never will be handled.
So I believe there will be a permanent mismatch between the SDK and "/", and this situation exists in no other system.
Right now, there is no SDK in "/", so you have only the MacOSX10.X.sdk to contend with.

If we had 100% of ports  that would always respect SDKROOT, we would have an easier time of things. But we don't as you and I well know, and although you and I in particular have worked to make more of them respect it, lots don't.

Just adding the i386 heading into the SDK won’t help without also adding the i386 slice into the .tbd files. Would your really want an end user to apply a patch/modify an SDK?
From previous conversations with you and other Macports maintainers if a Port is trying to set sdkroot on its own it should be patched to respect Macports sdkroot configuration.
For libvpx patching out the relevant sections in configure.sh resolves the issue.

Just adding the i386 heading into the SDK won’t help without also adding the i386 slice into the .tbd files. Would your really want an end user to apply a patch/modify an SDK?

Of course not -- will never happen -- which is why I think we should just continue to have users use the MacOSX10.13.sdk as we do now, if they want i386 on Mojave.

From previous conversations with you and other Macports maintainers if a Port is trying to set sdkroot on its own it should be patched to respect Macports sdkroot configuration.
For libvpx patching out the relevant sections in configure.sh resolves the issue.

There are hundreds. Try the qt5 ports, if you have 2 years and nothing to do :>

Anyway, I am not in charge of MacPorts, that's just my $0.02, and leave this to @ryandesign or @jmroot to decide. Either way, I know my Mojave system is going to be fine, so it's all good to me.

Requiring a copy of MacOSX10.13.sdk and setting the deployment target to 10.13 will have the same ports fail as installing the headers package on macOS Mojave.
This provides an alternative to needing to download Xcode_9.4.1 just for the SDK then modifying Macports.

No -- that is not true. With this package installed, some ports will build universal OK on Mojave, and others will not (the ones that go to the SDK) and there will be no rhyme or reason to the end-user as to what the heck is going on and why things sometimes work and sometimes don't.

With the 10.13 SDK, a person needs to specifically install it, set the SDK and the deployment target in macports.conf, and then  they presumably will be in the know as to what they have done, and at least have a shot at recognizing why their build of qt5-qtwebkit will not build universal on Mojave.
IMHO.

because we cannot (I think) force the i386 headers into the MacOSX10.14.sdk, it never will be handled.

I'd thrown together a Portfile MacOSX10.14u.sdk that only works on macOS Mojave and requires the headers package to be installed, this creates a Stub SDK that supports i386 & x86_64.
Then tested libvpx see main.log, macports-test install only has this commit applied, MacOSX10.14u.sdk was installed using my regular macports installation.

Sorry about that, @Gcenx. I know it's a bit dispiriting. However, we generally are trying to do a better job about tracking such things.


Disambiguate (::ProjectTo)

This resolves #84 by slightly restricting the type signature of (::ProjectTo{BlockDiagonal})(dx) to (::ProjectTo{BlockDiagonal})(dx::AbstractArray). This follows the pattern established in ChainRulesCore's ProjectTo definitions for linear algebra.

@platawiec thanks for this. Could you please bump the patch version? I'm happy to approve + release once that's done.


HDDS-6321. Avoid refresh pipeline for key lookup in checkAcls

What changes were proposed in this pull request?
Reduce RPC calls by avoiding content-related operations (refresh pipeline, etc.) for ACL check.  Reuse isHeadOp flag for this purpose.
https://issues.apache.org/jira/browse/HDDS-6321
How was this patch tested?
Reproduced manually on master in ozonesecure environment.
Added integration test:
[ERROR] Tests run: 20, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 16.828 s <<< FAILURE! - in org.apache.hadoop.ozone.om.TestKeyManagerImpl
[ERROR] testCheckAccessForFileKey  Time elapsed: 0.044 s  <<< FAILURE!
org.mockito.exceptions.verification.NeverWantedButInvoked:

storageContainerLocationProtocol.getContainerWithPipelineBatch(
    <any>
);
Never wanted here:
-> at org.apache.hadoop.ozone.om.TestKeyManagerImpl.testCheckAccessForFileKey(TestKeyManagerImpl.java:486)
But invoked here:
-> at org.apache.hadoop.ozone.om.KeyManagerImpl.refreshPipeline(KeyManagerImpl.java:507)

and verified the change:
[INFO] Tests run: 20, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 15.019 s - in org.apache.hadoop.ozone.om.TestKeyManagerImpl

https://github.com/adoroszlai/hadoop-ozone/runs/5220817724#step:4:2886

@kuenishi Thanks for reporting the problem.  Please review if you have some time.

If we don't refresh the locations, does the returned KeyInfo still have locations that were stored in OM, but they may be stale? I guess the change here is for checkAccess, where .setHeadOp(true) is set to true now, and it is more of an internal call, so it probably doesn't matter.
How does this change impact TrashOzoneFileSystem and OzonePrefixPathImpl as setHeadOp is set to true there too?. I guess I am not too familiar with the OM code, so I am just trying to understand how this change fits into improving the ACL checks.

Thanks @sodonnel for the review.

How does this change impact TrashOzoneFileSystem and OzonePrefixPathImpl as setHeadOp is set to true there too?

OzonePrefixPathImpl is used for prefix ACLs.
You are right, TrashOzoneFileSystem has nothing to do with ACL check.  I looked for similar usage of getFileStatus / listStatus where the result's location information is unused.  This class converts the return value to Hadoop's FileStatus ignoring location:
https://github.com/apache/ozone/blob/f0ee98a45d5371fa9595f8178eca72b1bfe37e2b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/TrashOzoneFileSystem.java#L232-L250

Thanks @kuenishi, @rakeshadr, @sodonnel for the review.


Bot review process is slow with no contact, no feedback.

Bot was submitted for review on Nov 30th.
App ID is d0c51261-0af6-41c9-9654-af10bf1d4c24

@jameslew
How can I determine the status of the review of our bot?   Mgmt is pushing for answers.  Thanks.

Hi @LMEdwards, sorry for the delay. I'm checking in with our review team.

Thank you @dandriscoll .    The submission did have links to our corporate web site for terms&conditions and privacy, so I don't imagine that's the hangup.

Hi @LMEdwards, the review team has been working on this and will reach out to you offline to update on status.

Thanks for the update.

I'm assuming given no updates that this was resolved and closing.

I confirm that this bot was approved on 1/10/2017.


Rename TestCase class to something else to improve developer experience

I'm not sure why but PHPStorm begins to suggest me always the Monolog TestCase class instead of PHPUnit TestCase class. Was it in the past not part of the export? Not sure even strange that it begins now always be the first entry in the suggest list:

There was similar issue with PHPStan https://github.com/phpstan/phpstan-src/pull/634 where PHPStan decided to change the class for Developer Experience, maybe we can do the same here. Sadly it seems I'm little bit late as 3.0 was released shortly :/. But maybe we can already do some changes for a future 4.0 🤔.

It is part of the package since 2.0

I see maybe was locked to monolog 1 until yet 🤔

Yeah I can see this sucks, but it seems more like a PHPStorm issue than something that can be fixed here.. Tons of packages expose a TestCase class/file, it should really prefer the PHPUnit one unless you have a local TestCase class in the project itself (which it already seems to prefer unless I'm mistaken).
Only thing I can think of is to mark it internal, which may help PHPStorm, but will also nag anyone relying on the class in third party extensions, which may be an ok trade-off. Can you try if adding @internal fixes it for you?

@alexander-schranz maybe also try on https://youtrack.jetbrains.com/ directly on the PhpStorm team

Tons of packages expose a TestCase class/file, it should really prefer the PHPUnit one unless you have a local TestCase class in the project itself (which it already seems to prefer unless I'm mistaken).

I don't think tons of package expose it. Many package have one in their testsuite. But as of Monolog 2, it is part of the package itself, not of the testsuite (and so not excluded from the archive). I think most packages exposing a reusable base testcase give it a name describing it.

@Seldaek Thank you!


Save(m models.Model) seems to be unable to persist custom models with relations

Hi @ganigeorgiev,
I've been using PocketBase as a framework with Go. I have an extended custom model of the User, like this:
type User struct {
	models.BaseModel
	models.CollectionAuthOptions

	Username        string                  `db:"username" json:"username"`
	Verified        bool                    `db:"verified" json:"verified"`
	EmailVisibility bool                    `db:"emailVisibility" json:"emailVisibility"`
	Email           string                  `db:"email" json:"email"`
	Name            string                  `db:"name" json:"name"`
	Avatar          string                  `db:"avatar" json:"avatar"`
	Role            types.JsonArray[string] `db:"role" json:"role"` // Stored as JSON array
	PromoterId      string                  `db:"promoterId" json:"promoterId"`
	Topics          types.JsonArray[string] `db:"topics" json:"topics"`
	Subscriptions   types.JsonArray[string] `db:"subscriptions" json:"subscriptions"` // Stored as JSON array
	PhoneNumber     string                  `db:"phoneNumber" json:"phoneNumber"`
	LanguageCode    string                  `db:"languageCode" json:"languageCode"`
	LastPaymentId   string                  `db:"lastPaymentId" json:"lastPaymentId"`
	Sex             string                  `db:"sex" json:"sex"`
	Region          string                  `db:"region" json:"region"`
	Chats           types.JsonArray[string] `db:"chats" json:"chats"` // Stored as JSON array
}

Here, you can see, that Chats and Topics are Multiple Relations (as I understand, under-the-hood, it's a simple JSON field). However, when I try to save it, I get a very strange kind of error: 553237602 sql: converting argument $9 type: unsupported type []string, a slice of string
Here's how I save it, just like in the documentation:
if err := app.Dao().Save(user); err != nil {
    return err
}

As a workaround I tried creating another struct, with those fields as strings:
type SaveableUser struct {
	User
	Role          string `db:"role" json:"role"`
	Topics        string `db:"topics" json:"topics"`
	Subscriptions string `db:"subscriptions" json:"subscriptions"`
	Chats         string `db:"chats" json:"chats"`
}

func SaveUser(app core.App, user *User) error {
       sUser := &SaveableUser{
		User:          *user,
		Role:          MustMarshalJSONArray(user.Role),
		Topics:        MustMarshalJSONArray(user.Topics),
		Subscriptions: MustMarshalJSONArray(user.Subscriptions),
		Chats:         MustMarshalJSONArray(user.Chats),
	}
	if err := app.Dao().Save(sUser); err != nil {
		return err
	}

	return nil
}

Unfortunately, this kind of solution lead to the same error as before. I wonder, if you have any ideas what may have caused it and how to fix it (even a dirty hack would be great), because, looking through the source code of Dao for a couple of hours  I didn't get close to an answer.
Thanks!
P.S. I wanted to apologize, in my comment on another issue, I did not mean to appear entitled or mean, sorry. I respect and very much value your project and especially your serious approach to it.

Digging deeper, it seems like the SQL driver, even though I state the JsonArray type in my struct, it takes it as []string as I had to state the elements' type (types.JsonArray[string]) and, therefore, does not see and does not use Value() implementation of the [driver.Valuer] interface... Still no idea on how to actually make it work, obviously there is a mistake somewhere. I would really appreciate any help :)

The problem is not with the types.JsonArray or the User struct itself but the embedded CollectionAuthOptions. You shouldn't need that and you can remove it.
There are no details why do you embed it but note that the fields of CollectionAuthOptions were never intended to be stored as plain column values.
In any case, this is not a PocketBase issue. For other general questions please prefer the Q&A discussions as the threaded format is more suitable for this type of posts.
Side-note: with the upcoming v0.23.0 release (there are no ETAs yet), custom model structs like the above one will be discouraged and instead the recommended approach for typed Record operations will be through "Record proxies".


Jekyll 3.2 breaks jekyll-redirect-from if URL has colon

Add this to the frontmatter of a page:
redirect_from:
  - /bar:foo/

Since Jekyll 3.2 this now throws the following error during build:
alexander@ubuntu-desktop:~/dev/test$ bundle exec jekyll build
Configuration file: /home/alexander/dev/test/_config.yml
            Source: /home/alexander/dev/test
       Destination: /home/alexander/dev/test/_site
 Incremental build: disabled. Enable with --incremental
      Generating...
  Liquid Exception: The URL /bar:foo/ is invalid because it contains a colon. in /_layouts/default.html
             ERROR: YOUR SITE COULD NOT BE BUILT:
                    ------------------------------------
                    The URL /bar:foo/ is invalid because it contains a colon.

The culprit seems to be this PR in Jekyll https://github.com/jekyll/jekyll/pull/5069 which throws this error now while it worked in the past.
I noticed this in one of my site which has a large collection of legacy links from MediaWiki which contain colons in the URL.

We also use colons in permalinks to preserve legacy MediaWiki URLs for https://github.com/biopython/biopython.github.io - e.g.:
$ head -n 8 wiki/Category_Cookbook.md
---
title: Cookbook Entries
permalink: wiki/Category:Cookbook
layout: tagpage
tag: Cookbook
---

The entries contained in the Cookbook category are designed to

We link to them using e.g. from wiki/Documentation.md using:
-   [Wiki documentation](Category%3AWiki_Documentation "wikilink")

Note the colon in the relative link is escaped in the Markdown as %3A - this was working until the recent Jekyll update.
We also use colons with redirect_from, e.g.
$ head wiki/GSoC2011_mtrellet.md
---
title: GSoC2011 mtrellet
permalink: wiki/GSoC2011_mtrellet
layout: wiki
redirect_from:
 - /wiki/User:Mtrellet
---

Author & Mentors
----------------

I've just filed https://github.com/jekyll/jekyll/issues/5284 on this.

@parkr it looks like you were involved in the original decision here.. can you weigh in a bit on the reasoning and possible workarounds?

The reasoning: jekyll/jekyll-paginate#8

Does redirect_from: Category%3AWiki_Documentation produce the desired output? I tested locally and the build completes.

@benbalter yes, that seems to work and produces the correct filename with colon on disk.

Percent encoding the colons in redirect_from alone does not fix jekyll build for me - there are likely other issues including permalink for us, hopefully will be resolved via https://github.com/jekyll/jekyll/issues/5284

Closing because this is a Jekyll core issue, rather than specific to this plugin.


Repair homebrew formula - poetry install

with some help from chatgpt4 i figured out the barely documented parts of the homebrew install DSL.
Brew docs discourage installs with pip if they arent versioned with a SHA checksum.
Poetry installs with those, there is no reason to keep rolling a huge pile of resource blocks and URLs with SHA from pypi, or wrangle a github action stage to generate a new set of resources with :
brew update-python-resources --print-only Formula/desertislandutils.rb

and parse that back into the formula with jinja templates or all that other stuff people are doing. madness!

This resolves issue #1 I think.


Update the snappy module dependency.

In particular, update snappy to the now-released module version v0.0.1.  The
rest of the changes are ancillary updates from the Go tool, and do not change
the versions selected.

Thank you!

Thank you!

Do you work with them￼

In particular, update snappy to the now-released module version v0.0.1.  The
rest of the changes are ancillary updates from the Go tool, and do not change
the versions selected.

OK but I don't know what to write I write it where it says required right if so what do I put exactly￼

Can you guys just call me and walk me through it step-by-step like it's so much easier easier￼

In particular, update snappy to the now-released module version v0.0.1.  The
rest of the changes are ancillary updates from the Go tool, and do not change
the versions selected.

Do you want me to type in the word update mod update like do you want me to put one what do you want me to do I need to know￼


Infix expression evaluated from right to left

Needs to be done left to right

conversion from char to string was having some issue which affected precedence.


go.mod: update golang.org/x/net to v0.17.0

This is get the fixes for the three CVEs given below
CVE-2023-3978
CVE-2023-44487
CVE-2023-39325

Commands that I ran to get this change

The second CVE looks like an error, how Go is related to swift? GHSA-qppj-fm5r-hxr3
Is this based on bot pr from github?

Yes, this was from the github security notification.


UI tests

Description
Changes proposed in this pull request:

Add UI tests and pipeline

Related issue(s)

/lgtm

/retest


Disable yasd using cli

I have different environments (dev, sandbox and etc) and want to run Swoole with or without "yasd.enabled=0" flag.
Xdebug provides changing variables on runtime:
php -dxdebug.enabled=0 ./bin/server
I have tried php -i -dyasd.enabled=0 without success.
Any ways to disable yasd dynamic?

yasd is disable by default


Rename sdk.js to index.js to allow usage as npm package

I will also publish it to npm package library then.

@Robert: please take a look, thanks!


shadowOffset is reset when an Animated.View is animated

Is this a bug report?
Yes.
Have you read the Bugs section of the Contributing to React Native Guide?
Yes.
Environment
iOS, and on snack.expo.io

Target Platform (e.g. iOS, Android): iOS
Development Operating System (e.g. macOS Sierra, Windows 10): macOS Sierra
Build tools (Xcode or Android Studio version, iOS or Android SDK version, if relevant): Xcode, snack.expo.io

Steps to Reproduce

Render an Animated.View with a shadow and shadowOffset (eg. {width: 10, height: 10})
Animate any transform with an Animated.Value
Observe shadowOffset is affected. (shadowOpacity, and shadowRadius are unaffected)

https://snack.expo.io/rkBBhJ3Nb
Expected Behavior
shadowOffset should persist
Actual Behavior
shadowOffset does not persist
Reproducible Demo
https://snack.expo.io/rkBBhJ3Nb
Note: none of the shadow properties are being animated.
A way to fix this is to wrap the styled-shadowed View with an Animated.View and animate that instead.
@janicduplessis any thoughts?

Hi there! This issue is being closed because it has been inactive for a while. Maybe the issue has been fixed in a recent release, or perhaps it is not affecting a lot of people. Either way, we're automatically closing issues after a period of inactivity. Please do not take it personally!
If you think this issue should definitely remain open, please let us know. The following information is helpful when it comes to determining if the issue should be re-opened:

Does the issue still reproduce on the latest release candidate? Post a comment with the version you tested.
If so, is there any information missing from the bug report? Post a comment with all the information required by the issue template.
Is there a pull request that addresses this issue? Post a comment with the PR number so we can follow up.

If you would like to work on a patch to fix the issue, contributions are very welcome! Read through the contribution guide, and feel free to hop into #react-native if you need help planning your contribution.

It worked for me by using an animated value on it
shadowOffset: {
  width: 0,
  height: this.deltaY.interpolate({
    inputRange: [-60, 0],
    outputRange: [20, 0]
  })
 }

Another solution to this is wrapping the content of the Animatable into another View and applying the shadowOffset to it.
https://github.com/oblador/react-native-animatable/issues/133

Both those workarounds are great. But there's still a bug

@gastonmorixe Do you know if there is a way to make it work when animating shadowOpacity?

Yup, the same thing applies to text shadows. Definitely a bug.

Any solution yet? the two above didn't work for me :(
Thanks.

Still a bug, should be re-opened.

I've just encountered this as well


Option for unrestricted map settings

Map gen settings are already unlimited. Maybe the option could work for both map settings and map gen settings, which would mean adding limits for the map gen settings.
Old text from my notes (last edited October 2020):

make map settings not have limits/have override limits checkbox or something

Strong agree, sometimes I like to let biters expand at a ridiculously fast rate to fill out space, and I still have to do that via commands, because the mod has arbitrary limits that the game doesn't have.

When I last looked at the mod, the limits were based on the limits of the in-game GUI. If the limits of the in-game GUI have since changed, you could simply use the in-game GUI instead of the mod. For example, you can change the map settings in the surface tab of the map editor (/editor).
I generally recommend using the editor instead of this mod since it will have the familiar interface and does not have known bugs.


npm ci causes failures on VSTS CI under windows hosts.

Travis CI is currently using an updated version of NPM that is calling the new npm ci command during our CI build. On VSTS, we aren't able to call this command as it seems to have a problematic effect on the later call to npm run vscode:prepublish.
Investigate the problem and fix it.

Please could you add the error messages on the issue (this would help others looking to help with this issue).

Found the problem, check out the environment variable PATHEXT.

Error before the fix was:
PS D:\dev\github\d3r3kk\vscode-python> npm run vscode:prepublish

><EMAIL_ADDRESS>vscode:prepublish D:\dev\github\d3r3kk\vscode-python
> gulp checkNativeDependencies && tsc -p ./

[16:18:54] Using gulpfile D:\dev\github\d3r3kk\vscode-python\gulpfile.js
[16:18:54] Starting 'checkNativeDependencies'...
[16:18:55] 'checkNativeDependencies' errored after 1.31 s
[16:18:55] TypeError: Cannot read property 'toString' of null
    at hasNativeDependencies (D:\dev\github\d3r3kk\vscode-python\gulpfile.js:131:91)
    at Gulp.gulp.task (D:\dev\github\d3r3kk\vscode-python\gulpfile.js:103:9)
    at module.exports (D:\dev\github\d3r3kk\vscode-python\node_modules\orchestrator\lib\runTask.js:34:7)
    at Gulp.Orchestrator._runTask (D:\dev\github\d3r3kk\vscode-python\node_modules\orchestrator\index.js:273:3)
    at Gulp.Orchestrator._runStep (D:\dev\github\d3r3kk\vscode-python\node_modules\orchestrator\index.js:214:10)
    at Gulp.Orchestrator.start (D:\dev\github\d3r3kk\vscode-python\node_modules\orchestrator\index.js:134:8)
    at D:\dev\github\d3r3kk\vscode-python\node_modules\gulp\bin\gulp.js:129:20
    at _combinedTickCallback (internal/process/next_tick.js:131:7)
    at process._tickCallback (internal/process/next_tick.js:180:9)
    at Function.Module.runMain (module.js:686:11)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>vscode:prepublish: `gulp checkNativeDependencies && tsc -p ./`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>vscode:prepublish script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.


Support adding arbitrary values to settings.py

This change makes it possible to add arbitrary additional values to settings.py.
For example:
class{'puppetboard':
  # other parameters
  extra_settings => {
    NODES_FACTS = "['some_fact', 'some_other_fact']"
  },
}

This would result in the following being added to settings.py:
NODES_FACTS = ['some_fact', 'some_other_fact']

It was written to work with @vjanelle's PR to puppetboard which supports adding arbitrary fact values in the tables on the overview and nodes pages of puppetboard

nice. we should probably merge them at the same time? /cc @daenney

Actually no need to wait on Puppetboard. Settings in settings.py are completely ignored, nor validated, unless we pull for them in code so you can shove anything in that file and Puppetboard will not give two fucks.

well, in that case…

thanks for the patch @robinbowes!


Add stream replication port info

We consulted the documentation, but only found later during testing that for stream replication requires specific stream replication ports. Since AMQP ports are used for the core stream it was unexpected that another port range was added for stream replication. Next time we will check the network guide for sure.
May not concern all developers, but usually network ports have to be explicitly enabled. So hoping that entry makes the requirement more obvious for people that use and support the product.

@dreiucker Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

@dreiucker Thank you for signing the Contributor License Agreement!

Thank you!


Signing gitlab CI attestation with cosign

Gitlab has recently started generating attestations for build artifacts. The attestation format is the standard intoto-attestation format.
I was hoping to sign the attestation and attach it to my docker image, using the command
cosign attest --predicate gitlab-attestation.json --key cosign.key my-registry/project
While this works, this seems to wrap another layer over the gitlab-attestation.json, because this attest command expects a predicate rather than a fully formed attestation.
Is there any way that I can sign and attach my fully formed gitlab attestation to my docker image, without having to extract only the predicate out from my gitlab-attestation.json?
sample of the gitlab attestation format can be found in the gitlab docs

Hello @chunteck, thanks for bringing it to our attention. One of the things that came to my mind is that maybe you can extract the predicate part of the attestation and save it to another file then you could go with it, does that make sense?

Hi @developer-guy ,
I did consider that as a last resort. However, the gitlab attestation has additional keys e.g metadata, materials outside of the predicate portion. I was hoping to find a solution where I can keep all these extra information in the attestation and still be able to use cosign to sign and attach the attestation to the docker image.

metadata, materials outside of the predicate portion

It shouldn't be outside the predicate portion, and the documentation on GitLab's website is wrong; please see.
Also, in the example of the attestation in the documentation, these are also included in the predicate field.
Copy the example attestation content from the documentation and use one of the JSON beautifiers, you will notice that these are in the predicate field.  👇

well, seems like gitlab is really generating their attestation wrongly, I will have to wait for them to fix it.
What about the subject field then? any way to include both the subject and predicate into the cosign attest?

The only thing that you need to provide is the type of the predicate via the --type flag and the predicate itself; the rest will be added according to the type of the document, that's all, which means that you don't need to provide anything than predicate's body.

I don't completely understand how this is meant to be used.
What I'd like to see happen is this: GitLab generates and signs (as GitLab) a Statement; you can then attach it to a container image with cosign attach attestation. This roughly means "I, GitLab, built these artifacts with this job;" anybody can verify this and trace back to find the workflow used. I believe this issue tracks implementing such a thing.
The other common pattern is to take a predicate and use it to cosign attest to a particular container image. This means "I, Developer Foo, assert that this predicate is true about this container image."
Instead, GitLab seems to be generating a Statement but not signing it. Then, somebody else is supposed to sign it. I guess this should be interpreted to mean "I, Developer Foo, grabbed this from GitLab and on GitLab was associated with these artifacts."
For cosign attest, you provide an <image URI> argument separately from the predicate; that's the subject of the attestation. If Cosign let you provide the "subject" separately, it might conflict with the "image URI"! That doesn't make sense, so it's disallowed. You could imagine allowing a full "Statement" object to be passed, but then Cosign would just manually check that every field in the provenance object was correct (_type, subject, predicateType) so to my mind it may as well just create the provenance object itself. Maybe this is a worthwhile use case, though?
Given that the GitLab Statement includes the subject field, maybe the workflow that really makes sense is:

GitLab generates a Statement
You download the statement and sign it, which means basically "I, Developer Foo, got this statement from GitLab."
Use cosign attach attestation to upload the signed statement.

CC @SantiagoTorres who may have thoughts

Regarding the invalid format: see https://gitlab.com/gitlab-org/gitlab-runner/-/issues/29246 and

I broadly agree. I see that in-here the consensus is around providing a way for gitlab to use a key, rather than managing the envelope. Personally, I would like for us to have a way to say "this gitlab instance attests this provenance". Who attaches it may just be a workflow problem (i.e., do you want to decide where to stick it and where? should that be configurable?). This also does make sense when considering we are fully trusting gitlab to provide the information about the provenance bits...

we (w/@dentrax) have opened an issue for consuming the correct models from the in-toto's Go SDK
instead of writing their own 👇
_https://gitlab.com/gitlab-org/gitlab-runner/-/issues/29334_

@asraa Would it be possible for cosign to be modified to be allowed to attest multiple images with a single predicate?
For knative, I build multiple images with ko but I need to attach a single attestation to all the images that I build.
 Then we read all those files and pull out the images and store them in a single file called imagerefs.txt

function sign_release() {
  ID_TOKEN=$(gcloud auth print-identity-token --audiences=sigstore \
    --include-email \
    --impersonate-service-account="${SIGNING_IDENTITY}")
  echo "Signing Images with the identity ${SIGNING_IDENTITY}"
  ## Sign the images with cosign
  if [[ -f "imagerefs.txt" ]]; then
      COSIGN_EXPERIMENTAL=1 cosign sign $(cat imagerefs.txt) --recursive --identity-token="${ID_TOKEN}"
      if  [ -n "${ATTEST_IMAGES:-}" ]; then # Temporary Feature Gate
        provenance-generator --clone-log=/logs/clone.json \
          --image-refs=imagerefs.txt --output=attestation.json
        COSIGN_EXPERIMENTAL=1 cosign attest $(cat imagerefs.txt) --recursive --identity-token="${ID_TOKEN}" \
          --predicate=attestation.json --type=slsaprovenance
      fi
  fi

}

Having to attest each image separately is annoying and doesn't look really good.
 REDACTED  MCW0CDP3YY  ~  $  cosign tree gcr.io/knative-nightly/knative.dev/net-contour/cmd/controller:v20221123-0c20c48d
📦 Supply Chain Security Related artifacts for an image: gcr.io/knative-nightly/knative.dev/net-contour/cmd/controller:v20221123-0c20c48d
└── 🔐 Signatures for an image tag: gcr.io/knative-nightly/knative.dev/net-contour/cmd/controller:sha256-51351c6bbb9a1ef81a23fbdcd0fd5cb6660a93e080ff4fec5dbbb235bd4562aa.sig
   ├── 🍒 sha256:def545cfb64af1c6d43650a378fbcc08816c6d2adbadb3b12b55f82289c2cebf
   ├── 🍒 sha256:def545cfb64af1c6d43650a378fbcc08816c6d2adbadb3b12b55f82289c2cebf
   ├── 🍒 sha256:def545cfb64af1c6d43650a378fbcc08816c6d2adbadb3b12b55f82289c2cebf
   ├── 🍒 sha256:def545cfb64af1c6d43650a378fbcc08816c6d2adbadb3b12b55f82289c2cebf
   ├── 🍒 sha256:def545cfb64af1c6d43650a378fbcc08816c6d2adbadb3b12b55f82289c2cebf
   ├── 🍒 sha256:def545cfb64af1c6d43650a378fbcc08816c6d2adbadb3b12b55f82289c2cebf
   └── 🍒 sha256:def545cfb64af1c6d43650a378fbcc08816c6d2adbadb3b12b55f82289c2cebf
└── 📦 SBOMs for an image tag: gcr.io/knative-nightly/knative.dev/net-contour/cmd/controller:sha256-51351c6bbb9a1ef81a23fbdcd0fd5cb6660a93e080ff4fec5dbbb235bd4562aa.sbom
   └── 🍒 sha256:c2996953a9d0befe81ecbf12521245b32a93e336e2346e86b624c5fd5dc56fb5
└── 💾 Attestations for an image tag: gcr.io/knative-nightly/knative.dev/net-contour/cmd/controller:sha256-51351c6bbb9a1ef81a23fbdcd0fd5cb6660a93e080ff4fec5dbbb235bd4562aa.att
   ├── 🍒 sha256:705676515c619e186ed78d89e5997d794dcf10c971029bf34126cd153ee7eb2b
   ├── 🍒 sha256:173687aad52bf482ac9a6699c47b97a567d738c440c4509cf3f74a9c347c9b5e
   ├── 🍒 sha256:4e2d0081c8d1c9c574281e326d4847bb525c195ecf3b5f0354f595e258c7e34c
   ├── 🍒 sha256:f9c1947602e3f8e12bd342c641b001eb84943d992654d97b30b7067846b313fb
   ├── 🍒 sha256:10cc6e263f46ed101738215e7182ca74f5e8ccf6ee0d7dc141e91774b45558b9
   ├── 🍒 sha256:043d353999710b89e6025467c5a51e5c142109c17084288a1dba765c4ba94f80
   └── 🍒 sha256:703a183ee06c4652ea85f52753c5ec4321ca4a23f5e9cc679c21d8c8f5c295ab

@upodroid I filed https://github.com/sigstore/cosign/issues/2480

I was looking to do sign the Predicate Statement as a workaround just like you mentione @znewman01. But that would probably need a command that looks more like cosign sign-attest just to get the DSSE Envelope for it. Accepting the Provenance Statement as its provided by GitLab from a previous job.

Anything we need to do here? Is this resolved?
Maybe we can update cosign examples doc to include "how we can sign & attach GitLab CI attestation with cosign" for the awareness. Wdyt @developer-guy?


Update the rules for UGRID

Once UGRID is referenced in CF, the rules governing changes in CF and UGRID need defining. See https://github.com/cf-convention/cf-conventions/issues/153 for a full discussion.

Issue https://github.com/cf-convention/cf-conventions/issues/153 is now concluded, so #210 will shortly be merged, alongside https://github.com/cf-convention/cf-conventions/pull/459.


chore: remove Extension Settings in README

Rationale
contribution points are available in the extension marketplace page

Thanks, but I prefer to keep them for people who might browse the repository.


Cart product count is not reflected on product details screen

The count number for products should be same on Shopping Cart and Product Details screens.

This has been changes such that the count of a product always starts with 1 on the details screen but it cannot be incremented to more than 10 including the count on cart screen.


PoissonGAM fails with dimension mismatch warning depending on n_splines

Using a grid search and several options for n_splines, some fits fail due to a dimension mismatch.
gam = PoissonGAM(dtype='numerical').gridsearch(X, y, n_splines=np.arange(4,10))

....

  return (mu**y) * np.exp(-mu) / sp.misc.factorial(y)
 50% (3 of 6) |#############              | Elapsed Time: 0:00:00 ETA:  0:00:00/usr/local/lib/python3.6/site-packages/pygam/pygam.py:1888: UserWarning: shapes (120,240) and (239,120) not aligned: 240 (dim 1) != 239 (dim 0)
on model:
PoissonGAM(callbacks=[Deviance(), Diffs(), Accuracy()],
   constraints=None, dtype='numerical', fit_intercept=True,
   fit_linear=False, fit_splines=True, lam=0.6, max_iter=100,
   n_splines=7, penalties='auto', spline_order=3, tol=0.0001)
skipping...

  warnings.warn(msg)
 66% (4 of 6) |##################         | Elapsed Time: 0:00:00 ETA:  0:00:00/usr/local/lib/python3.6/site-packages/pygam/pygam.py:1888: UserWarning: shapes (137,260) and (259,123) not aligned: 260 (dim 1) != 259 (dim 0)
on model:
PoissonGAM(callbacks=[Deviance(), Diffs(), Accuracy()],
   constraints=None, dtype='numerical', fit_intercept=True,
   fit_linear=False, fit_splines=True, lam=0.6, max_iter=100,
   n_splines=8, penalties='auto', spline_order=3, tol=0.0001)
skipping...

...

Training a LinearGAM model using the same dataset and grid search options does not give rise to the same error.
gam = LinearGAM(dtype='numerical').gridsearch(X, y, n_splines=np.arange(4,10))
100% (6 of 6) |###########################| Elapsed Time: 0:00:00 Time: 0:00:00

Does this occur because there are more coefficients than data? If so, a more informative warning would be helpful.

@maxpagels im sorry for the silence. unfortunately i have not had time to work on this bug recently.
this issue is still the largest priority for me.

@dswah no problem! Thanks for the huge help and a special thanks for the module itself!

@dswah any updates on this?

@maxpagels yes some updates :)
ive merged a new version of the code.
SVD shapes are now dynamically updated in the optimization loop, which solves the main error you wer getting. i have also changed the default initialization point to start from a constant model, since ive seen that this often helps optimization.
i will push a new version now. it should be available to you in a few minutes.

@dswah awesome!


Connector broken?

Hi all,
It's been a while since I touched Qualys API but I'm getting back into it - back in the day I wrote my own connector in Perl but seeing this Python package exists seems great because it'll save a lot of time.
Despite this, it does not seem to work out of the box for me, i.e. the examples give the ltrim/int error, so there's something wrong with the parameters being passed in to the connector and also when I try to manually check connectivity, i.e. through the python console and doing a 'print a.request('about.php')' - I'm getting a 401 error as the connector tries to hit 'https://qualysapi.qualys.com/msp/about.php' ...
Has anybody tested/fixed the example files in a while?  Is there any guidance on changes that have happened which I need to beware of?
Thank you!
Paul

@pabb85 uploaded new pip version. sorry about that. please try again.

It does indeed work now - thank you kindly @paragbaxi  :)


Renewed Pull request with datasets removed

I updated my branch and remove the datasets directory from git. The core contents of the pull requests are the same as the previous request #662.
I further customized the fit.sh script to match our specific dataset.

Has this been merged?
On Thu, Sep 21, 2023 at 4:17 PM github-actions[bot] <
@.***> wrote:

OS = Debian 10
CPU = Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz
Ram = 15752
Hash = 75279b4
https://github.com/binpash/pash/commit/75279b43aab66b49a08a155154721d9604658759
Kernel= Linux 4.15.0-197-generic x86_64
benchmark tests passed failed untested unresolved unsupported not_in_use
other_status
posix 494 375 41 31 6 40 1 0
intro 2 2 0 0 0 0 0 0
interface 41 41 0 0 0 0 0 0
compiler 54 54 0 0 0 0 0 0
—
Reply to this email directly, view it on GitHub
https://github.com/binpash/pash/pull/663#issuecomment-1730240432, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AADL55BBSLH4KBITXWMVWE3X3SOGDANCNFSM6AAAAAAV6V3J7Y
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Can't run on Nodejs due to dependency on document

the urlTransform function uses the global document variable which doesn't exist in Nodejs.

Thanks @Ghirigoro for the feedback. I am currently working on a solution for this #9. I hope to have a solution soon.

@Ghirigoro I have updated the url parsing logic and updated the npm & bower packages to v0.1.0 with those changes. Could you try it out on nodejs and see if it fixes your case?

Works great now! Thanks.


chore: fix error in spec version check workflow

Use --upgrade option to upgrade pip with pip in workflow, instead of non-existing -u option (-U would also be possible).

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 98.175%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1346

Relevant Lines:
1362

💛  - Coveralls


ZKVM-483: Enable Metal by default on macOS

I plan to support x86 in a followup. One issue is that we don't have CI to test that it works.


Should we communicate no results?

I think we should somehow communicate to the user that we have not found any results for their search.
Now the list disappears and neither happens nor is any message displayed.
What do you think?

<Typeahead value="abcd" {data} {extract} let:value>
<svelte:fragment slot="no-results">
No results found for "{value}"
</svelte:fragment>

Is there a way to get the current possible results in javascript?

Aka given the user has input data, how would one get the available results?