config is being completely ignored

It's really as simple as that.
I have my config in the root of my directory and I'm trying to launch a non-headless browser so I can track my progress.  This is just simply not happening.
const viewPort = {
    height: 1080,
    width: 1920
};

module.exports = {
    browser: 'chromium', // eslint-disable-line no-process-env,
    browserContext: 'incognito',
    launch: {
        args: [
            `--window-size=${viewPort.width},${viewPort.height}`,
            '--no-sandbox',
            '--disable-setuid-sandbox'
        ],
        defaultViewport: {
            height: viewPort.height,
            width: viewPort.width
        },
        devtools: false,
        dumpio: false,
        // executablePath: '/Applications/Microsoft Edge Dev.app/Contents/MacOS/Microsoft Edge Dev',
        headless: 'false', // eslint-disable-line no-process-env
        slowMo: 80
    }
};

Let me know if you have any questions but I can't seem to fix this, and would really like to know why I can't launch a non-headless

module.exports = {
    browser: 'chromium', // eslint-disable-line no-process-env,
    browserContext: 'incognito',
    launch: {
        args: [
            `--window-size=${viewPort.width},${viewPort.height}`,
            '--no-sandbox',
            '--disable-setuid-sandbox'
        ],
        defaultViewport: {
            height: viewPort.height,
            width: viewPort.width
        },
        devtools: false,
        dumpio: false,
        // executablePath: '/Applications/Microsoft Edge Dev.app/Contents/MacOS/Microsoft Edge Dev',
-        headless: 'false', // eslint-disable-line no-process-env
+        headless: false, // eslint-disable-line no-process-env
        slowMo: 80
    }
};

The conf is not ignored, it could be several things: your file has a wrong name, you run jest from another directory so the config is not found.


VirtualService is ignored if Gateway does not exist

Bug description
A VirtualService with a non-existent gateway is accepted by Istio when applied to a Kubernetes cluster, but is then ignored and not used in routing decisions including in local cluster traffic.
Affected product area (please put an X in all that apply)
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[X] Networking
[ ] Performance and Scalability
[X] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Expected behavior
Either:

The VirtualService would work correctly for local cluster traffic where the non-existent gateway is not needed for routing.
The VirtualService should be rejected as invalid when applied to the cluster until the gateway is removed or created

Steps to reproduce the bug
You will need a REST API that returns a value like "canary" or "prod" or some other value that allows you to determine if routing is working correctly.  Deploy the API behind a VirtualService and DestinationRule like:
---
# Source: web-istio-simple/templates/destinationrule.yaml
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
# Include all subsets (prod, canary)
# The VirtualService will decide when to route to the correct subset
# So for simplicity we can leave them all here all the time
metadata:
  name: myapp
  namespace: mynamespace
spec:
  host: myapp.mynamespace.svc.cluster.local
  subsets:
  - name: "prod"
    labels:
      app: myapp
      environment: "prod"
  - name: "canary"
    labels:
      app: myapp
      environment: "canary"
---
# Source: web-istio-simple/templates/virtualservice.yaml

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: myapp
  namespace: mynamespace
spec:
  gateways:
   - "my-missing-gateway" # This gateway does not exist
  hosts:
  - myapp.mynamespace.svc.cluster.local

  http:
   ### Canary routing
    - match:
      - headers:
          x-my-version:
            exact: "canary"
      route:
      - destination:
          host: myapp.mynamespace.svc.cluster.local
          subset: "canary"
    ### Prod routing
    - route:
      - destination:
          host: myapp.mynamespace.svc.cluster.local
          subset: "prod"

This setup should check for a header "X-MY-Version: canary" and route traffic to the canary deployment, otherwise traffic should go to prod.
To test this shell into a container in the same cluster with curl or wget and hit the endpoint several times.  You will see responses from canary without setting the canary header:
curl http://myapp.mynamespace.svc.cluster.local/api/values
Response: {"CLOUD_ENVIRONMENT":"CANARY"}
Remove the missing gateway from the above VirtualService, re-apply and test curl again.  You will be routed to prod without the canary, or to canary with the header set.  This shows the VirtualService is now working as expected:
curl http://myapp.mynamespace.svc.cluster.local/api/values
Response: {"CLOUD_ENVIRONMENT":"PRODUCTION"}
curl --header "X-MY-VERSION: canary" http://myapp.mynamespace.svc.cluster.local/api/values
Response: {"CLOUD_ENVIRONMENT":"CANARY"}
Version (include the output of istioctl version --remote and kubectl version)
kubectl server:
Server Version: version.Info{Major:"1", Minor:"13+", GitVersion:"v1.13.7-gke.8", GitCommit:"7d3d6f113e933ed1b44b78dff4baf649258415e5", GitTreeState:"clean", BuildDate:"2019-06-19T16:37:16Z", GoVersion:"go1.11.5b4", Compiler:"gc", Platform:"linux/amd64"}

istioctl:
client version: version.BuildInfo{Version:"1.1.8", GitRevision:"145b18a441045d6fad33d7916380d8642c7bf21d-dirty", User:"brew", Host:"Mojave.local", GolangVersion:"go1.12.5", DockerHub:"docker.io/istio", BuildStatus:"Modified", GitTag:"1.1.8"}
citadel version: version.BuildInfo{Version:"1.2.2", GitRevision:"cd4a148f37dc386986d6a6d899778849e686beea-dirty", User:"root", Host:"1a067c3a-98fa-11e9-95c6-bef141052020", GolangVersion:"go1.10.4", DockerHub:"docker.io/istio", BuildStatus:"Modified", GitTag:"1.2.1-3-gcd4a148"}
galley version: version.BuildInfo{Version:"1.2.2", GitRevision:"cd4a148f37dc386986d6a6d899778849e686beea-dirty", User:"root", Host:"1a067c3a-98fa-11e9-95c6-bef141052020", GolangVersion:"go1.10.4", DockerHub:"docker.io/istio", BuildStatus:"Modified", GitTag:"1.2.1-3-gcd4a148"}
ingressgateway version: version.BuildInfo{Version:"1.2.2", GitRevision:"cd4a148f37dc386986d6a6d899778849e686beea", User:"root", Host:"1a067c3a-98fa-11e9-95c6-bef141052020", GolangVersion:"go1.10.4", DockerHub:"docker.io/istio", BuildStatus:"Clean", GitTag:"1.2.1-3-gcd4a148"}
pilot version: version.BuildInfo{Version:"1.2.2", GitRevision:"cd4a148f37dc386986d6a6d899778849e686beea-dirty", User:"root", Host:"1a067c3a-98fa-11e9-95c6-bef141052020", GolangVersion:"go1.10.4", DockerHub:"docker.io/istio", BuildStatus:"Modified", GitTag:"1.2.1-3-gcd4a148"}
policy version: version.BuildInfo{Version:"1.2.2", GitRevision:"cd4a148f37dc386986d6a6d899778849e686beea-dirty", User:"root", Host:"1a067c3a-98fa-11e9-95c6-bef141052020", GolangVersion:"go1.10.4", DockerHub:"docker.io/istio", BuildStatus:"Modified", GitTag:"1.2.1-3-gcd4a148"}
sidecar-injector version: version.BuildInfo{Version:"1.2.2", GitRevision:"cd4a148f37dc386986d6a6d899778849e686beea-dirty", User:"root", Host:"1a067c3a-98fa-11e9-95c6-bef141052020", GolangVersion:"go1.10.4", DockerHub:"docker.io/istio", BuildStatus:"Modified", GitTag:"1.2.1-3-gcd4a148"}
telemetry version: version.BuildInfo{Version:"1.2.2", GitRevision:"cd4a148f37dc386986d6a6d899778849e686beea-dirty", User:"root", Host:"1a067c3a-98fa-11e9-95c6-bef141052020", GolangVersion:"go1.10.4", DockerHub:"docker.io/istio", BuildStatus:"Modified", GitTag:"1.2.1-3-gcd4a148"}

How was Istio installed?
Helm Template version 1.2.2
Environment where bug was observed (cloud vendor, OS, etc)
GKE
Additionally, please consider attaching a cluster state archive by attaching
the dump file to this issue.

Going to close for now as we found later it was this issue and also an issue with the Service named port missing the protocol.  Going to do some testing and re-open if I can determine what combination of the two things causes the problem described.


Zone info from Wikipedia

This adds an optional extra bit of functionality which spawns a new thread and collects the first paragraph of Wikipedia information about a Timezone and then prints it out afterwards.
The wikipedia-client gem is optional (but needed for development) so users who don't want this can just not install the gem. It is turned on and off using the ZONEBIE_INFO environment variable

This is a pretty neat idea, but I think I'm going to bias towards keeping the zonebie gem small and focused. If anyone wants to take a stab at adding hooks or lightweight plugins to zonebie so a hypothetical zonebie-travel or zonebie-wikipedia (e.g.) gem could provide this functionality, I think I'd gladly accept that.


Add more content to site and redesign it.

Needs some follow up:

fix all the recipes so they look consistent!
break out templates and recipe functions into there own files
minify js/css
use sass instead of css?

re sass: no strong feelings against any choice, especially as foundation encourages to be used with sass. We could throw in the same mix as platatus with cssnext (there is a big movement from sass to cssnext interestingly).

r+ :+1: just had nits, ignore for now

I got the following when trying to build:
[16:23:06] Using gulpfile ~/Projects/serviceworker-cookbook/gulpfile.js
[16:23:06] Task 'buld' is not in your gulpfile
[16:23:06] Please check the documentation for proper gulpfile formatting
dwalsh-29224:serviceworker-cookbook dwalsh$ gulp build
[16:23:09] Using gulpfile ~/Projects/serviceworker-cookbook/gulpfile.js
[16:23:09] Starting 'clean'...
[16:23:09] Finished 'clean' after 6.28 ms
[16:23:09] Starting 'build:index'...
Recipe: api-analytics must have title and summary
Recipe: cache-then-network must have title and summary
Recipe: immediate-claim must have title and summary
Recipe: message-relay must have title and summary
Recipe: offline-fallback must have title and summary
Recipe: push-clients must have title and summary
Recipe: push-payload must have title and summary
Recipe: push-rich must have title and summary
Recipe: push-simple must have title and summary
Recipe: push-subscription-management must have title and summary
[16:23:09] Starting 'build:intros'...
[16:23:09] 'build:intros' errored after 455 μs
[16:23:09] TypeError: undefined is not a function
    at /Users/dwalsh/Projects/serviceworker-cookbook/gulpfile.js:38:17
    at Array.forEach (native)
    at /Users/dwalsh/Projects/serviceworker-cookbook/gulpfile.js:32:17
    at Gulp.buildRecipes (/Users/dwalsh/Projects/serviceworker-cookbook/gulpfile.js:175:22)
    at module.exports (/Users/dwalsh/Projects/serviceworker-cookbook/node_modules/gulp/node_modules/orchestrator/lib/runTask.js:34:7)
    at Gulp.Orchestrator._runTask (/Users/dwalsh/Projects/serviceworker-cookbook/node_modules/gulp/node_modules/orchestrator/index.js:273:3)
    at Gulp.Orchestrator._runStep (/Users/dwalsh/Projects/serviceworker-cookbook/node_modules/gulp/node_modules/orchestrator/index.js:214:10)
    at /Users/dwalsh/Projects/serviceworker-cookbook/node_modules/gulp/node_modules/orchestrator/index.js:279:18
    at finish (/Users/dwalsh/Projects/serviceworker-cookbook/node_modules/gulp/node_modules/orchestrator/lib/runTask.js:21:8)
    at cb (/Users/dwalsh/Projects/serviceworker-cookbook/node_modules/gulp/node_modules/orchestrator/lib/runTask.js:29:3)
[16:23:09] Finished 'build:index' after 20 ms

I updated to 4.x and everything worked though, so should be an easy fix.

at /Users/dwalsh/Projects/serviceworker-cookbook/gulpfile.js:38:17

Oh probably is the startsWith() call. I guess we could just require a certain node version for this project.


Add multi language support

annyang already supports receiving commands in any language.
Just call:
// choose language
annyang.setLanguage('it-IT');

// define commands in that language
annyang.init({
  'mi chiamo *name': sayHello
});

Need to add support for defining rules in multiple languages, and then a user should be able to just change the language without redefining rules:
// choose language
annyang.setLanguage('it-IT');

// define commands in that language
annyang.init(
  'it-IT': {
    'mi chiamo *name': sayHello
  },
  'en' : {
    'my name is *name': sayHello
  }
});

annyang.setLanguage('en');
// now annyag recognizes English
annyang.setLanguage('it-IT');
// now annyag recognizes Italian

See how this can be added without breaking existing code (can define either multiple languages, or one)

hello,i just realize that this perfect project not support Greek.I think its not so good for Greeks and for Greece.,is there any possibility to add GREEK?

@panos138 - Unfortunately the language support is up to the browser... Google Chrome in this case. They choose which languages they support; I can't control this.

hi my friend,congratulations for the project,its awesome!!!
Google supports greek check here
https://www.google.com/intl/en/chrome/demos/speech.html

@panos138 - Then so does annyang.
annyang.setLanguage('el-GR');

thank you!!!

This project is absolutely amazing!
Thanks for work on it and make we can get it for free.

I don't get it how I make it work with multiple languages... Here's my code:
if (annyang) {
    annyang.debug();
    annyang.setLanguage('en-US');

    var greeting = function() {
        $chatStatus.html('Hello! How are you?');
    };
    var cumprimento = function() {
        $chatStatus.html('Olá! Como estás?');
    };

    annyang.addCommands({
        'en-US': {
            'hello': greeting
        },
        'pt-PT' : {
            'olá': cumprimento
        }
    });

    annyang.setLanguage('en-US');
    // now annyag recognizes English
    annyang.setLanguage('pt-PT');
    // now annyag recognizes Portuguese
    annyang.start();
}

@heliochun There is actually no way to make it work with multiple languages at the same time... it is able to detect speech, not recognize which language the user is speaking... you have to tell it what language to recognize.

COMMENT:
One answer and one question, pigging back on what Helio just asked. I am working with several languages (so far have only tested English) and I assume the easiest thing for Helio would be something you mentioned earlier. Meaning define the function in the main language and add any other corresponding words into the same function.  https://github.com/TalAter/annyang/issues/251

Tal's full answer here: https://github.com/TalAter/annyang/issues/119
QUESTION:
Thinking about this issue, is there a way to set the language via the browser, i.e. if the user clicks on a button she can choose a different language? [extrapolating from the tutorial you have]. I am guessing the answer is "NO" but wanted to double-check:)
For example:
//user says the word "Portuguese
var commands = {
'Portuguese': changeToPortuguese
};
//this command sets the language to Portuguese
var changeToPortuguese = function() {
annyang.setLanguage('pt-PT');
}
I wanted to know, broadly, if there any way to set these preferences via the browser_ so that the user could change the language command somehow?
The broader, "umbrella" question is, is there a way to have users change commands directly? That would be huge but I am not sure that can be done:)

Thank you for your response @TalAter .
That's actually a great idea @popbijoux !
Structuring languages by many different files (annyang-en.js, annyang-fr.js etc) and then let the user choose the language on their side using a <select> and based on the chosen language, call the file containing all the functions already prepared for that language. Although this might require a page refresh to make a new request and maybe set a cookie.

sir how to make to recognize to an unsupported language

Hello, I'm new here! Is there any possibility of adding Welsh to annyang? We are trying to get our library catalogue 'Voice Search Assistant' to recognise Welsh. At the moment, the search results when speaking Welsh are appalling. Grateful of any advice. Thank you.


CI: switch to vanilla VMs

Install everything ourselves instead of using pre-installed images of github.

Co-authored-by: "Andres G. Aragoneses"<EMAIL_ADDRESS>
No need to add this, I only initiated this with adding the "container" tag.

Used curl and nodesource for installing nodejs instead of apt
becuase of the following error:

Let's mention the version of ubuntu where that error comes from. Also: typo becuase -> because

Can you rebase this PR please? You'll know why I want it to be rebased as soon as you do it.

Can you rebase this PR please? You'll know why I want it to be rebased as soon as you do it.

You cheated haha, why did you change "error" to "Error"? you shouldn't change a message that you didn't write.

:laughing: I saw that it failed the CI, so I guessed I should fix it :thinking:

I saw that it failed the CI, so I guessed I should fix it

What did the CI say when it failed? I'm sure it didn't tell you "please change the error messages of your program to accomodate our rules", right?

I saw that it failed the CI, so I guessed I should fix it

What did the CI say when it failed? I'm sure it didn't tell you "please change the error messages of your program to accomodate our rules", right?

right. it was problem with body rules. Captial case in the beginning and no "." in the end :thinking: . :thinking:

it was problem with body rules.

That is not saying the specific error message that you got. I want you to be specific so that we understand what to do here.

I believe the

it was problem with body rules.

That is not saying the specific error message that you got. I want you to be specific so that we understand what to do here.

I believe the first to do here is to revert the commit message and push again to see what errors it will generate. should I do this?

I believe the first to do here is to revert the commit message and push again to see what errors it will generate. should I do this?

I believe the first to do here is to revert the commit message and push again to see what errors it will generate. should I do this?

No need, I'm sure you still have access to the log, in the Actions tab.

I believe the first to do here is to revert the commit message and push again to see what errors it will generate. should I do this?

No need, I'm sure you still have access to the log, in the Actions tab.

right, here it is:
error<EMAIL_ADDRESS>The engine "node" is incompatible with
this module. Expected version "^[14](https://github.com/nblockchain/conventions/actions/runs/3319956109/jobs/5485751456#step:4:15).[15](https://github.com/nblockchain/conventions/actions/runs/3319956109/jobs/5485751456#step:4:16).0 || ^16.10.0 ||
>=18.0.0". Got "10.19.0"

error Found incompatible module.
✖   Please begin a paragraph with uppercase letter and end it with a dot [body-prose]

✖   found 1 problems, 0 warnings
ⓘ   Get help: https://github.com/conventional-changelog/commitlint/#what-is-commitlint

Great, so I ask you, was your error message a paragraph?

Great, so I ask you, was your error message a paragraph?
I think this was the complete message, although I'm not sure about the warning part.

warning package-lock.json found. Your project contains lock files generated by tools other than Yarn. It is advised not to mix package managers in order to avoid resolution inconsistencies caused by unsynchronized lock files. To clear this warning, remove package-lock.json.
[1/4] Resolving packages...
[2/4] Fetching packages...
error<EMAIL_ADDRESS>The engine "node" is incompatible with this module. Expected version "^14.15.0 || ^16.10.0 || >=18.0.0". Got "10.19.0"
error Found incompatible module.
info Visit https://yarnpkg.com/en/docs/cli/add for documentation about this command.

I just started from the error because I thought the warning is not related and the next two lines seemed unrelated too. :thinking:

You didn't answer my question.

You didn't answer my question.

I guess I didn't get your question the first time :thinking: I guess it's not a paragraph and it's just an error message :thinking:.

Exactly, so don't try to convert your error message into a paragraph. You need to make commitlint understand that you're not writing a paragraph. How do you do it here, for example? Let me do it here:
warning package-lock.json found. Your project contains lock files generated by tools other than Yarn. It is advised not to mix package managers in order to avoid resolution inconsistencies caused by unsynchronized lock files. To clear this warning, remove package-lock.json.
[1/4] Resolving packages...
[2/4] Fetching packages...
error<EMAIL_ADDRESS>The engine "node" is incompatible with this module. Expected version "^14.15.0 || ^16.10.0 || >=18.0.0". Got "10.19.0"
error Found incompatible module.
info Visit https://yarnpkg.com/en/docs/cli/add for documentation about this command.

What did I just do with the error message?

Exactly, so don't try to convert your error message into a paragraph. You need to make commitlint understand that you're not writing a paragraph. How do you do it here, for example? Let me do it here:
warning package-lock.json found. Your project contains lock files generated by tools other than Yarn. It is advised not to mix package managers in order to avoid resolution inconsistencies caused by unsynchronized lock files. To clear this warning, remove package-lock.json.
[1/4] Resolving packages...
[2/4] Fetching packages...
error<EMAIL_ADDRESS>The engine "node" is incompatible with this module. Expected version "^14.15.0 || ^16.10.0 || >=18.0.0". Got "10.19.0"
error Found incompatible module.
info Visit https://yarnpkg.com/en/docs/cli/add for documentation about this command.

What did I just do with the error message?

ummm I can't see any difference! I even used diffchecker to check it. can you point it out? :thinking:

Man, don't you see it has a grey background? compared to the rest of the text.

so you mean we should add "```" am I right?

Right, if you wrap text with 3 ticks then you're writing special things inside a block, like code, error messages, etc (all in all, not paragraphs).

so you mean we should add "```" am I right?

Right, if you wrap text with 3 ticks then you're writing special things inside a block, like code, error messages, etc (all in all, not paragraphs).

I didn't know they were allowed in the commit message :thinking: . so I guess I"ll fix it now using this.

@knocte I think this is fixed.

Normally, when you use text like "because of the following error", it's better to end the paragraph with a colon, not with a dot.

fixed.

error<EMAIL_ADDRESS>The engine "node" is incompatible with
this module. Expected version "^14.15.0 || ^16.10.0 ||
=18.0.0". Got "10.19.0"

Now that I think about it, this error alone shouldn't have stopped us. We could always use an older version of jest that is compatible with our version of Node.
But maybe there was another error with the latest version of commitlint not being compatible with older NodeJS? If this is the case, then indeed we cannot use an older version of Node. Please confirm this is the case.

error<EMAIL_ADDRESS>The engine "node" is incompatible with
this module. Expected version "^14.15.0 || ^16.10.0 ||
=18.0.0". Got "10.19.0"

Now that I think about it, this error alone shouldn't have stopped us. We could always use an older version of jest that is compatible with our version of Node.
But maybe there was another error with the latest version of commitlint not being compatible with older NodeJS? If this is the case, then indeed we cannot use an older version of Node. Please confirm this is the case.

By looking at previous CIs, I think most of them actually finished with an error regarding the jest. But I think when we updated to 22.04 the same error appeared for commitlint. I'm now double-checking this by pushing to another branch to check what errors I'll get.

error<EMAIL_ADDRESS>The engine "node" is incompatible with
this module. Expected version "^14.15.0 || ^16.10.0 ||
=18.0.0". Got "10.19.0"

Now that I think about it, this error alone shouldn't have stopped us. We could always use an older version of jest that is compatible with our version of Node.
But maybe there was another error with the latest version of commitlint not being compatible with older NodeJS? If this is the case, then indeed we cannot use an older version of Node. Please confirm this is the case.

By looking at previous CIs, I think most of them actually finished with an error regarding the jest. But I think when we updated to 22.04 the same error appeared for commitlint. I'm now double-checking this by pushing to another branch to check what errors I'll get.

@knocte this is the error I get when I when I use ubuntu 22.04
error<EMAIL_ADDRESS>The engine "node" is incompatible with this module. Expected version ">=v14". Got "12.22.9"
error Found incompatible module.

Ok thanks I just pushed https://github.com/nblockchain/conventions/commit/4a688427026212ed292356a859cacdca9a4f5f52 to clarify.

@parhamsaremi where did you get the installation method with curl? If I follow the download instructions on nodejs website, I don't reach to that.

@parhamsaremi where did you get the installation method with curl? If I follow the download instructions on nodejs website, I don't reach to that.

I opened this link: https://nodejs.org/en/download/
After that I moved to this section Installing Node.js via package manager
and finally moved to ubuntu section. I saw this method on other sites too.

It's very ironic that when you click on something titled "via package manager" it directs you to https://github.com/nodesource/distributions/blob/master/README.md , which gives instructions that ARE NOT using package managers (a package manager is apt, not curl). What you should have done is keep reading in https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions to find the next section called "Alternatives", where it suggests to install nodejs via snap (this is a package manager, similar to apt).
So let's open a new PR to change the curl invocation with the snap installation.

It's very ironic that when you click on something titled "via package manager" it directs you to https://github.com/nodesource/distributions/blob/master/README.md , which gives instructions that ARE NOT using package managers (a package manager is apt, not curl). What you should have done is keep reading in https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions to find the next section called "Alternatives", where it suggests to install nodejs via snap (this is a package manager, similar to apt).
So let's open a new PR to change the curl invocation with the snap installation.

I guess I missed the snap part. It was weird to me that it didn't use package manager as well but I thought there was no other option 🤔

Let's forget about it because GitHubCI doesn't seem to be compatible with installing snaps :(


support for Microsoft AX Dynamics

HI,
i'm using the current command to connect to ax dynamics
xfreerdp Ax1.rdp /u:user /p:password /f /v:<IP_ADDRESS>

and it works till i open another window and it hanging and refuse to open drop down menu in AX program
PS: the (Ax1.rdp) is the icon i created to allow users to connect to remoteapp (ax)
if i'm missing something here could you guide me
Thanks

Sounds like you have some trouble with rails (remote app)?
Please check https://github.com/FreeRDP/FreeRDP/issues?q=is%3Aopen+is%3Aissue+label%3Achannel%3Arail if any of the issues is what you experience.

Sounds like you have some trouble with rails (remote app)?
Please check https://github.com/FreeRDP/FreeRDP/issues?q=is%3Aopen+is%3Aissue+label%3Achannel%3Arail if any of the issues is what you experience.


Polar bug redux

This is for attempts to fix #129, which is likely a cluster of different issues, since GRMHD simulations only ever fail at the poles regardless of the cause...
So far, it warns against using the excised polar boundary conditions (which seemingly have issues with the Courant condition being overstepped), and fixes a race conditions in the EMF calculations for transmitting polar boundary conditions (as well as similar bugs in the averaging of T3 & U3).

Merging as the CPU tests have passed, and there's no real chance of regression anyway.


Custom upload

Implemented a separate component for custom image upload. See the error on the screenshot. Most likely contract with index 1 is missing.

Closes #12
Closes #14

something is wrong with disable... after switching from custom to pink tab a few times, the Imagine new is disabled


tests, network: Move cloudinit helpers to their own package

What this PR does
Moves network related cloudinit config builders and factories to a dedicated package to allow tests to consume them without depending on each other.

Fixes #
Why we need it and why it was done in this way
The following tradeoffs were made:
The following alternatives were considered:
Links to places where the discussion took place:
Special notes for your reviewer

Checklist
This checklist is not enforcing, but it's a reminder of items that could be relevant to every PR.
Approvers are expected to review this list.

[ ] Design: A design document was considered and is present (link) or not required
[ ] PR: The PR description is expressive enough and will help future contributors
[ ] Code: Write code that humans can understand and Keep it simple
[ ] Refactor: You have left the code cleaner than you found it (Boy Scout Rule)
[ ] Upgrade: Impact of this change on upgrade flows was considered and addressed if required
[ ] Testing: New code requires new unit tests. New features and bug fixes require at least on e2e test
[ ] Documentation: A user-guide update was considered and is present (link) or not required. You want a user-guide update if it's a user facing feature / API change.
[ ] Community: Announcement to kubevirt-dev was considered

Release note

NONE

change: Answered review comments.

/approve


blocks_to_unlock not listed as output to wallet RPC method get_balance

The get_balance wallet RPC method has a blocks_to_unlock field (and possibly others) that are not documented here:
https://github.com/monero-project/monero-site/blame/28cfcdb38e735f5c35b83c067d8410ff4dc81ad4/resources/developer-guides/wallet-rpc.md#L173-L178
Implementation reference:
https://github.com/monero-project/monero/blob/v<IP_ADDRESS>/src/wallet/wallet_rpc_server_commands_defs.h#L108-L109

Thanks. There is also a "strict" boolean that is missing. I have traced it back to here:
https://github.com/monero-project/monero/blob/master/src/wallet/wallet2.cpp#L5989
i will make a PR to update


Extended deal status check

Proposal
check the deals on different sources to get a better accurate deal state

this issue will include https://github.com/application-research/delta/issues/97

I added this as part of PR https://github.com/application-research/delta/pull/130


about inappwebview in 2.8.1

i use inappwebview in 2.8.1 Navigator.push to flutter page, the last page(has inappwebview page) will flash across in next page,i think AndroidView had some problem

I think this is similar case as https://github.com/flutter/flutter/issues/95545, so please follow-up in it.
Closing this as a duplicate.


[Bug] Sagemaker template, after auto stoped, workspace env status is not updated

Describe the bug
After Sagemaker workspace stopped automatically, workspace env status is not updated.
To Reproduce
Steps to reproduce the behavior:

Set sagemaker workspace config's AutoStopIdleTimeInMinutes as 10 minutes
Create sagemaker workspace and wait for more than 10 minutes,
Check sagemaker notebook instances to confirm the instance status is Stopped
Check Service Workbench workspace status, it is still "AVAILABLE"

Expected behavior

Above step 4, workspace status should be "STOPPED"

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

Release Version installed [e.g. v1.0.3]

Additional context
Add any other context about the problem here.

Fixed, refer commit


tag volumes with the provider tags

Pass provider tags to CreateFleet for volumes as well.
1. Issue, if available:
#1430
2. Description of changes:
3. How was this change tested?
Configured a provisioner with tags and inspected the volumes created in the EC2 console to ensure that the tags were applied.
4. Does this change impact docs?

[ ] Yes, PR includes docs updates
[ ] Yes, issue opened: link to issue
[X] No

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Incorporated feedback and re-tested live.

Nice feature! Thank you! Can you follow up with a documentation change?


Add Fabric compat

This just tells Fabric users this is a Forge mod.

Since it really does seem like the part on CurseForge where it says "Forge" and not "Fabric" isn't enough for some people, this seems reasonable enough.


⚠ Bofrost.at has degraded performance

In b8846d4, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 967 ms

Resolved: Bofrost.at performance has improved in 68dea96 after 13 minutes.


Add eSigner - eParakstītājs Latest.

This Cask installs middleware and signer which can be used to sign and verify documents with Latvian government issued eID card.

It’s missing uninstall. There are scripts and documentation geared for that.
In addition, please call it eid-lv (see why). That isn’t in place it, but will make it easier to find when it is.

Thank you. Made the corrections and will be adding soon to the new repo.


Fixes window undefined error in mail.js

This PR fixes window undefined error introduced in https://github.com/byteball/byteballcore/commit/bb261f72af2d66a911044dfcbe29638d1b8659d1

fixed, closing


Is it possible to install separatelly Poser and Painter nodes?

Hi!
I love your Painter and Poser nodes. Is there a chance I can install them without having to install all the other ones?
Thanks!

Hi!
I love your Painter and Poser nodes. Is there a chance I can install them without having to install all the other ones?
Thanks!

Hello, before piping, there was such an opportunity when, at startup, it automatically searched for nodes (folders with .py files ending in Node) and installed them, now I updated it because  the extension manager didn’t like it (https://github.com/AlekPet/ComfyUI_Custom_Nodes_AlekPet/issues/47#issue-2254613378), but the functionality remained, so I commented it out.  You can do the following, delete the folders of nodes that you do not need and install the old init.py file (https://raw.githubusercontent.com/AlekPet/ComfyUI_Custom_Nodes_AlekPet/b0ed9b7f1057a29f7f1ee6cb63ccb881b0ff28de/init.py).  Maybe I'll find a way to do this in a new one.

Thanks for the answer!
How do I install the old init.py after deleting the node folders I don't need?

Thanks for the answer!
How do I install the old init.py after deleting the node folders I don't need?

Download from the link above and replace it in the Comfyui_Custom_AlekPet_Nodes folder

Thanks a lot again, I'm closing this issue.


[Color issue ]

Description

As we can see in the dark mode we can visualize the button pretty easily but in the light mode

It is not visible quiet enough although on hover we can see the button but this is not a great UX as I think,
We should use a little border and light color to demostrate the button and then on hover we can give the effect
Screenshots
No response
Additional information
It's my first issue raised on this project.
Feel free to correct me at any step and
Thanks for giving the time .

Good idea 👍 it can be added to the button component

thank you very much,
I would like to work on this issue
plz assign it to me.

thank you very much,
I would like to work on this issue
plz assign it to me.

@ManashAnand I have assigned it to you.

It looks good, how do the buttons look in other places on the site? I think it would be best for you to create the pull request and we can have a look/play with the changes

If the issue is still open i would like to work on this .

If the issue is still open i would like to work on this .

@Satyam-G5 I have assigned this to you

I have added this pull request in my repo maybe
and thought that it was added to the main webapp
I don't exactly know the steps
Can you elaborate it please

@ManashAnand thank you for trying to complete this but this has now been assigned to someone else. In future if you are having any difficulties please add a comment in the issue.


Application crash when streaming to Bluetooth speaker

Hi,
Seems like that the application crash when connecting the pc to Bluetooth seeker. Any idea if it even possible?

I've been using it with my Bose SL Mini no problems. Any more info? Crash log would be great.


Fixed AddLine() to write the line in the debug msg

Before the debug message for each line was:  "LE: LE - Adding Line: line" which doesn't make much sense to me...
This fixes the call to WriteDebugMessages()

Seems to make sense to me nice spot. Ill look to include it in the next core release.


bazel is not able to download the certificates and causing error

https://github.com/bazelbuild/rules_scala/blob/dec85a95d13f403f360cb51829f1804d0518165a/scala/scala.bzl#L297
Solutions: Certificate can be ignored or fall back the protocol to http.
Can someone bring the change or simply suggest the solution?
-harish
IBMer
ERROR: /root/.cache/bazel/_bazel_root/8c069df52082beee3c95ca17836fb8e2/external/io_bazel_rules_scala/scala/scala.bzl:295:3: no such package '@scala//': Error downloading [https://downloads.lightbend.com/scala/2.11.11/scala-2.11.11.tgz] to /root/.cache/bazel/_bazel_root/8c069df52082beee3c95ca17836fb8e2/external/scala/scala-2.11.11.tgz: sun.security.validator.ValidatorException: PKIX path validation failed: java.security.cert.CertPathValidatorException: timestamp check failed and referenced by '//external:io_bazel_rules_scala/dependency/scala/scala_reflect'

Solution: copy that function in a file in your repo and replace the url with one of your choosing. A local url that you control would be a good idea so your builds don’t depend on anything else. We run a local nexus that mirrors all our external deps.

I emailed Lightbend to let them know their cert has expired, and asked if they have this hosted on GitHub or if they could.

fixed by @systemlogic in #533
thanks!


Removing compiler/architecture specific implementation.

Description
include/atomic.h provides a generic implementation. Compiler/architecture dependent implementation of atomic.h is to be provided under each port directory.
Once this PR is merged into GitHub, include/atomic.h will be copied over to SVN.
Checklist:

[ ] I have tested my changes. No regression in existing tests.
[ ] My code is Linted.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/bot run checks

/bot run checks


DBB Jenkins integration issue

I had set up the jenkins integration on my jenkins 2.60.3 many months back and all of this worked great and i am able to successfully build the mortgage application.
https://www.ibm.com/support/knowledgecenter/SS6T76_1.0.2/jenkinsintegration.html
Old set up
Jenkins : 2.60.3
SSH Slave Plugin : 1.26
Git client plugin : 2.7.3
Git Plugin : 3.9.1
Groovy Plugin: 2.0
We recently updated jenkins to a much higher 2.222.1. This is our new set up. Now the build does not work.I can see it runs the git-jenkins.sh rev-parse . Then i see a FATAL:Invalid id and the git command shows junk chars. Below is the plugin versions on my new server.
Jenkins : 2.222.1
SSH Build Agent Plugin : 1.31.2
Git Plugin : 4.2.2
Git Client Plugin: 3.2.1
Groovy Plugin: 2.2
Have you been able to get this mortgage app build to run on a newer version of jenkins ?
I also see warning in the log when creating the new mainframe agent . I use the ssh build agent plugin to connect on my new jenkins server. I see the agent successfully connected message at the end of log ...but before that there is a warning 'linkage error while performing user request' java.lang.Unsatisfiedlinkerror: Native library (com/sun/jna/z/os-390x/libjnidispatch.so) not found in resource path. There is also an error in the log "ERROR" Failed to monitor free swap space'.
The new jenkins no longer puts a slave.jar but instead a remoting.jar on the agent machine.
Please let me know if there are any changes needed when trying to run with a more latest jenkins version

Hi nk2164,
do you use a ssh passphrase or http credentials managed by Jenkins? Does the build lists the remote branches on origin?
The Git client plugin has changed its behaviour in this area - which causes an encoding issue with the credentials, leading to a FATAL:Invalid Id. We are currently working on a new git-jenkins.sh.
It is currently a bank holiday over here, I will create a PR tomorrow, so you can see the updated version of git-jenkins.sh

Hi Dennis,
I don't use a passphrase. Here is my set up
Agent set up
Credentials - application id/password stored in jenkins
Host verification strategy - "Manually provided key verification strategy" and the ssh key for the host.
In the node properties, i updated the tool location to point git path to the git-jenkins.sh file on remote USS
In the jenkins build job for mortgage application, i chose "git" in source code management tab and then provide the ssh url<EMAIL_ADDRESS>and for credential i use the application id and private key for that id . This id has access to the git repository . This id is stored in jenkins.
In the jenkins log , i see it first tries to run rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote git repository
git-jenkins.sh config remote.origin.url<EMAIL_ADDRESS># timeout = 10
Fetching upstream changes from<EMAIL_ADDRESS>The multiple lines of

/dbbz/bin/git-jenkins.sh --version # timeout=10
/dbbz/bin/git-jenkins.sh --version # timeout=10
/dbbz/bin/git-jenkins.sh --version # timeout=10
/dbbz/bin/git-jenkins.sh --version # timeout=10

Using GIT_SSH to set credentials to my  (user id and private key with access to git repo)
After that , i see 2 entries for following

/dbbz/bin/git-jenkins.sh fetch --tags<EMAIL_ADDRESS>+refs/heads/:refs/remotes/origin/  # timeout=10

/dbbz/bin/git-jenkins.sh rev-parse origin/master^{commit} #timeout = 10

FATAL:INVALID Id: fatal : ambiguous argument 'origin/master^{commit}' : unknown revision or path not in the working tree
use '--' to separate paths from revisions, like this :
'git  [...] -- [...]'
@(*##)@__###_ (some junk chars)
Then i see a stack trace...

Ok, you are managing your private key in Jenkins, no ssh passphrase.

In the jenkins build job for mortgage application, i chose "git" in source code management tab and then provide the ssh url<EMAIL_ADDRESS>and for credential i use the application id and private key for that id . This id has access to the git repository . This id is stored in jenkins.

Before going for the new script can you please check the two options:

just run git directly and don't go through the git-jenkins.sh wrapper (you can configure that at the agent)
Instead of the iconv at the very end, just invoke git without the magic grep:

#git "$@" | iconv -f ibm-1047 -t ibm-1047
git "$@"

Hi Dennis, The first option works for me. I changed the agent to point directly to the rocket git path /usr/local/bin/rocket/bin/git and the job is building successfully. Thank you for your help.
I also tried the second option of removing the iconv and just having git "$@"
This time , after the following command
fetch --tags --progress git@xx.xx.org:xx/repo.git +refs/heads/*:refs/origin/* # timeout=10
I see a
ERROR:Error cloning remote repo 'origin'
hudson.plugin.git.exception command "fetch --tags --progress git@xx.xx.org:xx/repo.git +refs/heads/*:refs/origin/*" return status code is 128"
stdout : --- a lot of junk  chars---

==============
for the USS agent log i see the successfully connected message but also this warning at the end . My DBB builds are running fine though (with the change you mentioned in first option to directly use git).  The logs on my old jenkins does not have these warnings and errors .
at com.sun.jna.Native.loadNativeDispatchLibraryFromClasspath(Native.java:962)
at com.sun.jna.Native.loadNativeDispatchLibrary(Native.java:922)
at com.sun.jna.Native.<clinit>(Native.java:190)
at hudson.util.jna.GNUCLibrary.<clinit>(GNUCLibrary.java:115)
at jenkins.slaves.StandardOutputSwapper$ChannelSwapper.swap(StandardOutputSwapper.java:60)
at jenkins.slaves.StandardOutputSwapper$ChannelSwapper.call(StandardOutputSwapper.java:45)
at jenkins.slaves.StandardOutputSwapper$ChannelSwapper.call(StandardOutputSwapper.java:39)
at hudson.remoting.UserRequest.perform(UserRequest.java:212)
at hudson.remoting.UserRequest.perform(UserRequest.java:54)
at hudson.remoting.Request$2.run(Request.java:369)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask.run(FutureTask.java:277)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1160)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.lang.Thread.run(Thread.java:811)

This is followed by these erorrs and stack traces
Error : Failed to monitor Free Temp Space
java.util.concurrent.TimeoutException
Error : Failed to monitor Free Disk Space
java.util.concurrent.TimeoutException
Error : Failed to monitor Free Swap Space
java.util.concurrent.TimeoutException

Hi nk2164,
It would be interesting to see what these

--- a lot of junk  chars---

are ... Can you Copy/Paste them to a USS file and play a bit with the encoding using IDZ or zExplorer or iconv?
Keep in mind, using git directly will cause an issue as soon another applications decide to use a ssh passphrase or start using http with credentials.
Re. your agent. I see the same missing object java.lang.UnsatisfiedLinkError: Native library (com/sun/jna/z/os-s390x/libjnidispatch.so) not found in resource path and consider this to be normal, because we run the IBM java runtime and not Oracle.

Hi Dennis,
I tried copying into a file in USS and tried changing the encoding and it did not help. Is there a way i can capture the output of the git command and route that to a file on USS ? I will try some more tomorrow.
I also tried the mortgage build with your updated file and that works as well.
So based on this below comment from you , I'm thinking its best to start using the updated git wrapper right ?

Keep in mind, using git directly will cause an issue as soon another applications decide to use a ssh passphrase or start using http with credentials.

Thank you @dennis-behm . Closing this issue now .


fix torch.clamp for homogeneous division

clamp operation clamps all elements in input to be larger or equal min(EPS).
But it doesn't work for negative elements.
In this implementation, it checks for both small positive and small negative elements, and set them to EPS value.

Thanks for the contribution. Do you think that it can be reformulated with a single operation like https://github.com/opencv/opencv/pull/14411/files?

/cc @lenlen

maybe torch.where(torch.abs(z_vec) > EPS, z_vec,  torch.sign(z_vec) * EPS)?

@edgarriba thanks for the note! I have fixed the corner cases

For who was on this issue please check also https://github.com/arraiyopensource/kornia/issues/154


PR: Change Kite dialog to tour dialog when starting Spyder for first time

Description of Changes

[ ] Wrote at least one-line docstrings (for any new functions)
[ ] Added unit test(s) covering the changes (if testable)

[x] Included a screenshot or animation (if affecting the UI, see Licecap)

Changed Kite dialog to tour dialog when starting Spyder for first time.

Issue(s) Resolved

Fixes #13832
Affirmation
By submitting this Pull Request or typing my (user)name below,
I affirm the Developer Certificate of Origin
with respect to all commits and content included in this PR,
and understand I am releasing the same under Spyder's MIT (Expat) license.

I certify the above statement is true and correct:
Juanis2112

Hello @juanis2112! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file spyder/app/tour.py:

Line 1258:1: E302 expected 2 blank lines, found 1

@ccordoba12 Are the tests failing because the dialog is interfering with qtbot manipulating the windows as it expects? Or is there another reason? Otherwise, I don't see a clear connection to this PR.

Also, @ccordoba12 I'm no fan of Kite but I don't want Spyder to get in any hot water—is there anything contractual obligating you to include this dialog? Is Kite okay with us removing their dialog that they essentially paid you to put in?

@ccordoba12 Are the tests failing because the dialog is interfering with qtbot manipulating the windows as it expects?

Yes, that's the problem. And now that you mention it, this dialog needs to be shown only if not running_under_pytest()

Also, @ccordoba12 I'm no fan of Kite but I don't want Spyder to get in any hot water—is there anything contractual obligating you to include this dialog?

No, there isn't.

Is Kite okay with us removing their dialog that they essentially paid you to put in?

Probably not, but it's up to us to decide what's best for our users.

Yes, that's the problem. And now that you mention it, this dialog needs to be shown only if not running_under_pytest()

I was going to suggest that, but if we write a simple test for it as I suggest in my review (since its the first UI element users are likely to interact with when opening Spyder for the first time, it would be really bad if it didn't work correctly) then we should do it with Pytest mark options or however we configure the editor to enable/disable completion and other features for specific tests, since we'll need it to open for that test.

Probably not, but it's up to us to decide what's best for our users.

Well then I have no problem with that :+1:

I was going to suggest that, but if we write a simple test for it as I suggest in my review

I don't see the need to add a test for this because the functionality is quite simple and clear. But you're welcome to push one to @juanis2112's branch (if she agrees with that, of course).

I was also thinking that we could show a nice icon to the left of text that implies "exploration", "getting familiar with a new territory", or something like that. Perhaps @isabela-pf could give us a hand with that?

I was also thinking that we could show a nice icon to the left of text that implies "exploration", "getting familiar with a new territory", or something like that. Perhaps @isabela-pf could give us a hand with that?

Perhaps, but there is a connection to the Spyder logo since we say "Welcome to Spyder" on the first line, and I'm not sure this is worth blocking the whole PR over. However, I don't really have a strong opinion and don't want to cause more trouble.

Ok, fair enough. However, the same I said about SPYDER_DEV applies for SPYDER_SAFE_MODE: we already declare a global variable for that in base/config.py.

@ccordoba12 Not sure where your comment went (I can see it on my email but can't find it here) but sorry about that, I forget that we had a constant for SAFE_MODE too and not just DEV.

I was also thinking that we could show a nice icon to the left of text that implies "exploration", "getting familiar with a new territory", or something like that. Perhaps @isabela-pf could give us a hand with that?

Perhaps, but there is a connection to the Spyder logo since we say "Welcome to Spyder" on the first line, and I'm not sure this is worth blocking the whole PR over. However, I don't really have a strong opinion and don't want to cause more trouble.

I agree with CAM that is not worth it blocking the PR but we could consider another icon so I suggest merging this one and opening a new one for the icon if we do use another one. We will talk with @isabela-pf about that on Tuesday.

I agree with CAM that is not worth it blocking the PR but we could consider another icon so I suggest merging this one and opening a new one for the icon if we do use another one. We will talk with @isabela-pf about that on Tuesday.

Ok, sounds good to me.

I was going to suggest that, but if we write a simple test for it as I suggest in my review

I don't see the need to add a test for this because the functionality is quite simple and clear. But you're welcome to push one to @juanis2112's branch (if she agrees with that, of course).

Yeah, I don't have a problem with that. Feel free to push a test to this branch. Let us know if you will so we hold merging.

Yeah, I don't have a problem with that. Feel free to push a test to this branch. Let us know if you will so we hold merging @CAM-Gerlach

Okay, thanks. I'll take a look at that now.

Tested and looked over the code one last time, and everything's LGTM (aside from the test which I am working on)

Ok, but do you plan to add that test here or in a different PR?
just asking to know if this PR is ready to go.

I can add it here per what @juanis2112 mentioned, I confirmed I have access to the branch. I'm working on it right now, should be pretty straightforward.

I was also thinking that we could show a nice icon to the left of text that implies "exploration", "getting familiar with a new territory", or something like that. Perhaps @isabela-pf could give us a hand with that?

@ccordoba12 I'm happy to work on that! Just know it will be a lower priority on my list and won't happen right away unless you want me to pause another priority and work on this first.

Thanks @isabela-pf! We need this for 4.2 and our plan is to release it in three weeks at most. So it's kind of urgent.


incremental backup possible?

The WriteTo is the whole db, is anyone thinking/working on having one that is able to start from an existing backup?
Would be useful so a readonly backup could be used to read and not block updates to another in the case where delayed reads are acceptable.

Nevermind on this at least for the use-case I mentioned, as it appears the copy-on-write semantics mean a read transaction happily reads the already committed data while the write transaction is going until the commit (unless I misunderstand). Fantastic !
Would be great if this fact was mentioned more explicitly in the README, that a write transaction is not literally blocking reads.

You are right in the second comment. @gyuho can you close this issue?


fix: better errors for workers commands in pages projects

What this PR solves / how to test
Fixes #6793
Author has addressed the following

Tests

[ ] TODO (before merge)
[x] Tests included
[ ] Tests not necessary because:

E2E Tests CI Job required? (Use "e2e" label or ask maintainer to run separately)

[ ] I don't know
[ ] Required
[x] Not required because: covered adequately by unit tests

Changeset (Changeset guidelines)

[ ] TODO (before merge)
[x] Changeset included
[ ] Changeset not necessary because:

Public documentation

[ ] TODO (before merge)
[ ] Cloudflare docs PR(s):
[x] Documentation not necessary because: just some better errors

Love this!


[#29760] Only respond to sampling request while data sampling is enabled

Fix to panic caused by handling data sampling request when it's not enabled.
Fixes #29760

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI or the workflows README to see a list of phrases to trigger workflows.

 (The one listed here: https://github.com/apache/beam/blob/master/.github%2Fworkflows%2Fbeam_PostCommit_Go.yml#L22C1-L22C1)
I'll skip that for now since the fix is straightforward. Merging once the precommits are done.

PostCommit run with this change: https://github.com/apache/beam/actions/runs/7201639105


Got on_load_function_failed when trying to start release.

Hi,
Actually I am trying to deploy my app using :distillery, when i generate my build i try to test my new release using rel/myapp/bin/myapp console and everything goes ok, but when i move that release from my builds machine to the production box it does not start and throws me this error:
2016-11-30 16:09:13 crash_report
    initial_call: {supervisor,kernel,['Argument__1']}
    pid: <0.1181.0>
    registered_name: []
    error_info: {exit,{on_load_function_failed,'Elixir.Argon2.Base'},[{gen_server,init_it,6,[{file,"gen_server.erl"},{line,352}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,247
}]}]}
    ancestors: [kernel_sup,<0.1156.0>]
    messages: []
    links: [<0.1157.0>]
    dictionary: []
    trap_exit: true
    status: running
    heap_size: 376
    stack_size: 27
    reductions: 117
2016-11-30 16:09:13 supervisor_report
    supervisor: {local,kernel_sup}
    errorContext: start_error
    reason: {on_load_function_failed,'Elixir.Argon2.Base'}
    offender: [{pid,undefined},{id,kernel_safe_sup},{mfargs,{supervisor,start_link,[{local,kernel_safe_sup},kernel,safe]}},{restart_type,permanent},{shutdown,infinity},{child_type,supervisor
}]

I though that was a problem related with argon2_nif.so library but that is present within myapp/lib/argon2_elixir-0.11.0/priv directory.
Using ldd i got this:
$ ldd myapp/lib/argon2_elixir-0.11.0/priv/argon2_nif.so
myapp/lib/argon2_elixir-0.11.0/priv/argon2_nif.so:
	libthr.so.3 => /lib/libthr.so.3 (0x801209000)
	libc.so.7 => /lib/libc.so.7 (0x800823000)

And those libraries are present in that box, so i am so confused about what could be wrong :(.
May you have some thoughts about it?
Actually I am working with FreeBSD 11.0-RELEASE-p1 (GENERIC)  amd64 with Erlang/OTP 19 [erts-8.1] [source] [64-bit] and Elixir (1.3.4).
Thank you in advance.

Are you building the so file on the production machine?

No, I don't. I use a build machine with the same architecture and operative system where i have installed Erlang/OTP and Elixir. The production machine has a base FreeBSD setup.

Could you try building on the production machine and see what happens?
There might be small discrepancies in the setup.

Sure, i can build and start the release from the production machine. But i had to install all dependences a mean Erlang/Elixir, GCC, etc. My approach is just to generate a release which contains everything required by my app and then just unpack the tarball in production.

Ok. It looks like there's some minor difference between the setup on the build machine and the production machine.
You said that you're using Erlang 19. Are you using the same minor version?

I need to find out more about how distillery works. I'll get back to you next week. Sorry it can't be sooner -- the day job is keeping me really busy :(

I should have asked this earlier, but can you deploy comeonin using the same setup?

Yes, I tried comeonin using the same setup and it works like a charm.

Just to confirm: does the Erlang version that you're using support dirty schedulers?
Could you capture the gcc ... line when argon2_elixir is being built and let me know what it is? I just want to make sure that the C compiler is being called correctly.

Finally works in my production machine.
You were right, it was a problem related to dirty schedulers. I tried to compile it in my production machine, enabling dirty schedulers, but it seems that it wasn't enabled at all.
$ erl
Erlang/OTP 19 [erts-8.1] [source] [64-bit] [async-threads:10] [hipe] [kernel-poll:false]

It was in a single core instance, then I tried to change my instance type to a bigger one (2 cores) and it works like a charm. Although I saw a related problem in this thread.
Thanks for your help.

Great to hear you got it working and thanks for reporting the issue with dirty schedulers on a single core.


Added cache clear to build commands

While working on a plugin or a theme, it's easy to get confused and assume that build commands automatically clear the cache. This update aims to clear up that confusion by adding the cache clear to the build commands.

Had only the web editor... sorry for the mess

Thanks!


Re-enable focal and attempt to use tooling images

Re-enable continuous integration on focal.
This also makes use the docker container actions that are set up here: https://github.com/ignition-tooling/setup-ign-docker
Those containers pre-install all of the dependencies found in a particular collection, which should accelerate CI a little bit.
Signed-off-by: Michael Carroll<EMAIL_ADDRESS>

Mind adding some information to that repository's README? It's hard to know what it's doing without digging through the code.

Yep! Can do.

One thing I'm wondering about is how often these images are updated. For example, if we made a release 1 hour ago, will it be picked up?

They are currently built hourly.  There is a chance that a release could be missed, but it should be picked up in the next build.

Mind adding some information to that repository's README? It's hard to know what it's doing without digging through the code.

Yep! Can do.

One thing I'm wondering about is how often these images are updated. For example, if we made a release 1 hour ago, will it be picked up?

They are currently built hourly.  There is a chance that a release could be missed, but it should be picked up in the next build.

Regular Focal CI was added in #646 and is being ported forward in #792. Once that's in, this PR can be updated to just use the tooling images (no need to handle the addition of Focal).


Permit public https gs files as normal download

COS (Container-Optimized OS from Google) doesn't comes pre-installed with gsutil.
If you try to setup startup-script-url metadata using Google Storage public link url (eg: https://storage.googleapis/<bucket>/<object>), it will fail:
myuser@some-instance-d8bw ~ $ sudo google_metadata_script_runner -d --script-type=startup
startup-script: INFO Starting startup scripts.
startup-script: INFO Found startup-script-url in metadata.
startup-script: WARNING gsutil is not installed, cannot download items from Google Storage.
startup-script: INFO No startup scripts found in metadata.
startup-script: INFO Finished running startup scripts.

The thing is: I had to dig a bit deeper to find this. But, my startup script is publicly available on Google Storage, and it only failed because it didn't attempt with usual _DownloadUrl fetching.
This patch allows for all users from Google Container optimized-OS to use startup-script-url stored on google storage.

Codecov Report

Merging #435 into development will decrease coverage by 0.06%.
The diff coverage is 66.66%.

@@               Coverage Diff               @@
##           development     #435      +/-   ##
===============================================
- Coverage        98.41%   98.35%   -0.07%
===============================================
  Files               38       38
  Lines             3090     3094       +4
  Branches           146      148       +2
===============================================
+ Hits              3041     3043       +2
  Misses              43       43
- Partials             6        8       +2

Impacted Files
Coverage Δ

...ompute_engine/metadata_scripts/script_retriever.py
97.91% <66.66%> (-2.09%)
:arrow_down:

Continue to review full report at Codecov.

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

Patch seems fine, though I want to point out that this will only allow COS users to use publicly accessible startup-script-urls, not all of them.

It should be fine now... (Tested locally removing modifications from script_retriever.py and it failed.
Please check if I'm asserting for everything.

Not sure why it failed, but only happened to python 3.x. Any ideas?

Created #436 to include your changes with testing.

Created #436 to include your changes with testing.

I think as a maintainer of the project you get to modify his commit inline so he gets credit too. :)

Why did you copy my commits @illfelder?
Please submit a solution for testing and let's keep this issue as the main one. I appreciate if you use this instead of creating another one with the same purpose.
I need help with testing. Not sure why Python 3.x is failing.

I commented about the testing issues inline, but to answer your question, I forked the commit that downloads using curl if the google storage download fails and created a separate PR in order to implement the testing changes. If you like, you can revert the testing file, fix a couple issues in script_retriever.py and we can check in the changes separately.

Awesome, thanks! I will update it and let you know

We are preparing to make a new GitHub release, so I'd like to merge in this change. I'll wait a couple hours in case you still want to update this PR, but otherwise I'll merge in #436 and close this off.


Failed tests : Failing lines should be red

On Xcode, when a test is failing, the text line is in red.
All the lines from the root of the test to the failing assert are in red.
It helps finding back which assert did fail, especially when we set the tests to continue after failure (continueAfterFailure = true).
Can you implement this feature ?

Thanks for the tool @TitouanVanBelle  !
I nevertheless still have issues with the red colouring of the lines. It does not work 100% of the time on our own test results...
So the #89 does not resolve the #84. It should be re-opened.


Renaming device in HomeKit renames original device as well

Hi there,
I noticed that renaming a Sonos device in HomeKit does rename the original device in the Sonos app as well.
In the Sonos app you have to append/prepend the room name to the device name in order to easily identify the boxes.
As HomeKit  on the other hand is aware of the actual rooms, I usually like to not include the room name in the device name.
With the current synchronization feature of the plugin it's not possible to keep my naming scheme. Would you mind providing an option for it?
Best regards

With the current synchronization feature of the plugin

Homebridge-zp doesn’t sync names.  I think you’re changing the name of the AirPlay2 speaker exposed natively?

Oh snap, I should have double checked and looked for a renaming feature in code. You are correct .. I always renamed the Homebridge device and the AirPlay speaker at the same time.


Perhaps a unique situation?  Help needed to recover.

So my MYNODE with Lightning enabled crashed.  The SSD card went bad and then my HDD started to go bad.
I have been trying to get my channel sats back ever since.  I think I make progress and keep ending up back here.
My situation:
I have my 24 word seed.  I had an old channel.backup file prior to me setting up my open channel.
I figured I was safe with those 2 alone, but apparently not [lesson learned].
I did not recover a channel.db  (I have one now but only after I re-imaged my SD card and did a FULL node on a new SSD).
I was hoping it would recover, but only the ON-CHAIN sats was recovered.  CHANNEL sats are not there.
I am all synced with both bitcoin and lightning [one week later].
I have followed all instructions in here.  However, chantools indicated I have NO open channels on my side.
Channel Id:<PHONE_NUMBER>96353281
Short Channel Id 692525x1080x1
Channel Point 05198ad720eac3f575095b1cb9d6a5d55851f84402e60292d0a62d041def5345:1
Capacity 0.00515000 BTC 515,000 sat (0.000165%) $343.18
Last Update 17 days ago First Seen Sunday, July 25, 2021 Last Seen 3 days ago Age 2 months
My Address:  bc1qntytktteydeqx3wgpmt2gvfnmunwhck2ufq52af2qfr3k3vp9k0qfkad9z
Transaction Included in Block 692525
My peer "LogansRun" appears to have forced closed:
1ML.COM Data:
Node 1 [LOGANSRUN]: 024794d1446e510c75f84bbd75cc151124522aed03ad75a20f1708f77e5f3e674a
Alias	           Capacity	                                Time Lock Delta	Min HTLC	 Base Fee	             Fee Rate per sat
LogansRun	   0.50640991 BTC                            34	                        1	                 1.000 sat              0.000001 sat
$33,745.61  50,640,991 sat                                                                    $0.000666369     $0.000000000666
Capacity 0.506409910 BTC (0.016%) $33,745.61 Channel Count 29
IP <IP_ADDRESS>:54853
024794d1446e510c75f84bbd75cc151124522aed03ad75a20f1708f77e5f3e674a

Node 2 [MYNODE]: 03e7bd63391110e5f988412524970a0fa3338ce78e0c6d636ed3fb47c82ad0f5c6
Alias	            Capacity	                                Time Lock Delta	Min HTLC	 Base Fee	             Fee Rate per sat
mynodebtc.com  0.00515000 BTC                           40                            1                       1.000 sat              0.000001 sat
[myNode]            $343.18  515,000 sat                                                                             $0.000666369     $0.000000000666
Capacity 0.005150000 BTC (0.000%) $343.18 Channel Count 1
IP 7byg3emqy4t3vlt2d274p653gez6vlulvr2pwfiyg2un2jq7kwi72lid.onion:9735
03e7bd63391110e5f988412524970a0fa3338ce78e0c6d636ed3fb47c82ad0f5c6
--
HELP?!  HOW CAN I GET THESE BACK?
Right now, this has been a long learning experience to date.
I'm hoping that I am close, but not sure what else to do.
Appreciate any help here
chantools outputs:
rescueclosed-2021-10-20-13-19-33.json
{
"channels": [],
"open_channels": 0,
"closed_channels": 0,
"force_closed_channels": 0,
"coop_closed_channels": 0,
"fully_spent_channels": 0,
"channels_with_unspent_funds": 0,
"channels_with_potential_funds": 0,
"funds_open_channels": 0,
"funds_closed_channels": 0,
"funds_closed_channels_spent": 0,
"funds_force_closed_maybe_ours": 0,
"funds_coop_closed_maybe_ours": 0
}
summary-2021-10-20-13-18-32.json
{
"channels": [],
"open_channels": 0,
"closed_channels": 0,
"force_closed_channels": 0,
"coop_closed_channels": 0,
"fully_spent_channels": 0,
"channels_with_unspent_funds": 0,
"channels_with_potential_funds": 0,
"funds_open_channels": 0,
"funds_closed_channels": 0,
"funds_closed_channels_spent": 0,
"funds_force_closed_maybe_ours": 0,
"funds_coop_closed_maybe_ours": 0
}
LOG FILE:
2021-10-20 13:17:29.926 [INF] CHAN: chantools version v0.9.3 commit
2021-10-20 13:18:32.764 [INF] CHAN: chantools version v0.9.3 commit
2021-10-20 13:18:32.765 [INF] CHAN: Finished scanning.
2021-10-20 13:18:32.765 [INF] CHAN: Open channels: 0
2021-10-20 13:18:32.766 [INF] CHAN: Sats in open channels: 0
2021-10-20 13:18:32.766 [INF] CHAN: Closed channels: 0
2021-10-20 13:18:32.766 [INF] CHAN:  --> force closed channels: 0
2021-10-20 13:18:32.766 [INF] CHAN:  --> coop closed channels: 0
2021-10-20 13:18:32.766 [INF] CHAN:  --> closed channels with all outputs spent: 0
2021-10-20 13:18:32.766 [INF] CHAN:  --> closed channels with unspent outputs: 0
2021-10-20 13:18:32.766 [INF] CHAN:  --> closed channels with potentially our outputs: 0
2021-10-20 13:18:32.766 [INF] CHAN: Sats in closed channels: 0
2021-10-20 13:18:32.766 [INF] CHAN:  --> closed channel sats that have been swept/spent: 0
2021-10-20 13:18:32.766 [INF] CHAN:  --> closed channel sats that are in force-close outputs: 0
2021-10-20 13:18:32.766 [INF] CHAN:  --> closed channel sats that are in coop close outputs: 0
2021-10-20 13:18:32.767 [INF] CHAN: Writing result to results/summary-2021-10-20-13-18-32.json
2021-10-20 13:19:09.672 [INF] CHAN: chantools version v0.9.3 commit
2021-10-20 13:19:33.686 [INF] CHAN: Found 0 private keys! Import them into bitcoind through the console by pasting:
rescanblockchain 481824
2021-10-20 13:19:33.686 [INF] CHAN: Writing result to results/rescueclosed-2021-10-20-13-19-33.json

If your channel.backup file does not contain a channel (because it is from before you opened the channel) then the summary command won't find the channel either. What you need to do is use the chantools fakechanbackup command and give it all the information you found on 1ml.com.

Were you able to resolve your issue and rescue the channel?

Unfortunately, no... I really couldn't figure out the "fake" account, etc.
I did check that the peer did close it on their end, but I just don't how the knowhow on how to do what you are suggesting.  So the bitcoins are just sitting there somewhere.
By chance have you updated the instructions?  I'm planning to take another look and see if I can do it.  If successful, I will be writing instructions to help others.
I'm also using mynode and don't have LND locally on the PC.  I SSH into it.
Thoughts?

From: Oliver Gugger @.>
Sent: Saturday, February 12, 2022 12:14 PM
To: guggero/chantools @.>
Cc: alfredovilla01 @.>; Author @.>
Subject: Re: [guggero/chantools] Perhaps a unique situation? Help needed to recover. (Issue #35)
Were you able to resolve your issue and rescue the channel?
—
Reply to this email directly, view it on GitHubhttps://github.com/guggero/chantools/issues/35#issuecomment-1037446013, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ATSOSSWHQCWXRL6LPEKIYRLU225SDANCNFSM5GMYSPYA.
Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID: @.***>

I did add a new way to run chantools fakechanbackup that looks at the graph to find public channels and then create a fake channel.backup file from that.
So if you have a node that is synced to the chain and network, you can run:

Export channel graph (check lncli getinfo first to see if synced_to_graph is true): lncli describegraph > /tmp/graph.json
Create a fake channel.backup file: chantools fakechanbackup --from_channel_graph /tmp/graph.json --multi_file /tmp/fake.backup
Run my special version of lnd that can handle the fake channel backup: https://github.com/guggero/lnd/releases/tag/v0.13.1-beta-fund-recovery (make sure you run with debuglevel=debug)
Add the fake channel backup: lncli restorechanbackup --multi_file /tmp/fake.backup

Closing due to inactivity.


Stream releated methods added to VlcMediaPlayer and to VlcControl (Th…

…ey were in PR #207 but missing from #315)

Thanks for adding them back :)


PyPlumIO doesn't reconnect forver on TCP connection failure.

The TCP device relaying my RS485 connection disappears for some reason, the custom component retries connection to it for 5 times and then goes forever silent. If I do not switch on the TCP device back on in time (100s.) the plugin remains dormant forever until I reload it from HASS (or restart HASS). I don't know if this is desired behavior, but it annoyed me a bit and I increased the retry count to 50 for start to be able to play around with devices and locations etc.

@svenlange2
This is hopefully resolved now.
It was mostly down to the callback loop that updates sensors values, crashing when connection was restored. When you restarted integration manually, callback loop restarted with it, however it did not restart if it failed during runtime.
I've released v0.1.8 of PyPlumIO that incorporates fix for this issue and updated hassio-plum-ecomax to depend on this version. Please update plum-ecomax custom component and restart HA. It should automatically pull correct version of PyPlumIO from pypi.


Non-Blocking Retries: Consider Making it Easier to Route to Different DLTs by Exception Type

Currently requires some tricky code to capture the DLT properties; see https://stackoverflow.com/questions/77058404/custom-deadletterpublishingrecoverer-is-not-used-when-errors-occurs-during-valid/77060340#77060340
Typically deserialization exceptions could go to a different DLT than business exceptions.

Hi, I'd like to start working on it if possible

Sure, please go ahead.

I've just opened the PR with changes aimed to introduce the described feature: #2929


Make TestRunner don't wait for aborted XHR's (closes #132)

\cc @inikulin @AlexanderMoskovkin @helen-dikareva

lgtm

lgtm

lgtm


Analytics - separate data between staging and prod

Either we should set up a separate domain in Plausible for tracking staging data and update the code to pass the different domains based on environment, or if Plausible has a way to split the data out via reporting, we could set up reporting to easily see the data for each alone.  The former is probably the better option but we'll decide when we get to it.
Low priority but something that should be done.

@sdarwin do we need to differentiate between dev and prod, or just set it up to only record in prod?

Here are boost.org analytics from the last 30 days.

"Plausible excludes bots, crawlers, referrer spam and other known non-human traffic by default."
Traffic on staging will eventually represent a very small percentage compared to production.   Less than 1%.   Therefore, how important is it to remove staging views from the graph?
I would suggest closing the issue.


Use autocomplete step for supplier account feature

This can be merged once alphagov/digitalmarketplace-supplier-frontend#1394 is on preview.

I've tested this PR locally and against staging.

Ah, I was going to ask if this would just work by changing to using "Country" instead of "location-autocomplete" as a locator, but I see the hardcoded template has that a span, not a label, so it fails to find it.
Will merge the branch.

Ah, I was going to ask if this would just work by changing to using "Country" instead of "location-autocomplete" as a locator, without all the @Skip stuff, but I see the old hardcoded template has "Country" inside a span, not a label, so it fails to find it.

Oh, yeah, I should have mentioned that in the commit message. Super annoying.


Website: add Examples by pulling in hyper repo examples directory

Could you clarify what you mean by "pullling in the hyper repo examples"?

Add a link to the examples folder in the guide sidebars after the link to API Reference?
Create guide-like equivalents for each example?
Something else using some jekyll feature

I had this idea when I ran across the curl examples. I guess thinking more about it, I'm not sure there's a lot of added value having the code rendered separately, but perhaps just having a list and description of examples linking to them is enough? I'm not sure...
My vague goal is to improve the onboarding experience for new users :)

So, the easy / immediate thing is to copy / polish the example's README to the website.
For some inspiration towards the deeper goal, the clap team did a deep dive on documentation options geared for guides, tutorials, and examples. Here's the summary post of the thread. They chose a few nifty "hacks" to get cargo-checked cookbook examples and guided tutorials included on docs.rs.
cargo-crev used a similar technique for their own.
So, my suggestion is that I do the easy thing now and close this ticket. And if that discussion interests you in some other option, I can explore that later. Sound good?

They chose a few nifty "hacks" to get cargo-checked cookbook examples and guided tutorials included on docs.rs.

While those options are clever, I think that since we do have a website that can be structured more than docs.rs, we should take advantage of it.

the easy / immediate thing is to copy / polish the example's README to the website. my suggestion is that I do the easy thing now and close this ticket. And if that discussion interests you in some other option, I can explore that later. Sound good?

I think so, yes. I do lean towards coming up with a way to regularly/automatically import that README, so that it doesn't grow outdated, nor need fixes merged to two places.

While those options are clever, I think that since we do have a website that can be structured more than docs.rs, we should take advantage of it.

I'm not suggesting to eliminate hyper.rs. rustdoc can be published to your own domain, like tracing.rs does. The other main option the clap team explored was mdbook, which I believe is what serde.rs uses.

I think so, yes. I do lean towards coming up with a way to regularly/automatically import that README, so that it doesn't grow outdated, nor need fixes merged to two places.

I agree. The closest that I achieved was to pull hyper in as a submodule, copy the hyper/examples folder into _stable, and then link to its README. While the page renders as expected, we'd need some additional processing to get the links to work. Perhaps someone more experienced with jekyll can find a better way.
So, the current best solution I found with jekyll that would keep things synced would be to link back to the repo.
- For full examples, check out the [examples collection][] in the repo.
[examples collection]: {{ site.examples_url }}

I have learned a (little) bit about jekyll working on the guides, maybe you could open a draft PR Michael and I can take a look?

🙋🏻♂
If this issue is open to additional support, I'd like to participate 😄. I see that the thread has gone a bit quiet, but if the interest is still there, I can draft (or contribute to) a proposal, and we can workshop it from there.
I have read the contribution guidelines and have contributed similar work for projects like tabled, mirrord, and meilisearch-rust.

I believe after reading through this discussion I've got 2 separate issues to address.
Examples + hyper.rs
I've picked out two significant quotes above.

I guess thinking more about it, I'm not sure there's a lot of added value having the code rendered separately, but perhaps just having a list and description of examples linking to them is enough? I'm not sure...

I think so, yes. I do lean towards coming up with a way to regularly/automatically import that README, so that it doesn't grow outdated, nor need fixes merged to two places.

Of course, the first thing that comes to mind, as counseled by @oddgrd, could be to create a new cron job similar to contrib.yml, or to rename that job to make it more general and consolidate all 'hyper to hyper.rs' steps in one place. That could do the trick nicely. As stated, there may be additional requirements such as hosting both stable and legacy READMEs, etc.
However, I have a preliminary pitch advocating for simplicity, hosted from my fork. By utilizing the available site metadata, I added a new link in the guide sidebar to the corresponding example READMEs on GitHub. These links are already organized, are always up-to-date, and do not attempt to re-render code. Please give that demo a try (visit the guides/1 and guides/0.14), and let me know what you think 😄. (The link text can be anything you'd like of course)

If you're set on bringing over the README.md files just let me know and I'll draw up the changes discussed above 👍🏻.
Inaccuracies with examples/README
This was a curious extra tidbit mentioned by @oddgrd that ended up sucking me down an example rabbit hole 😅.
https://github.com/hyperium/hyper/blob/d4295eb976ef424939797f7e3f1e2d85aee8b224/examples/README.md?plain=1#L11-L16
Line 13 is indeed no longer accurate for the master branch, resulting in several references to v1.X features failing. However, that's not all that's incorrect, or rather missing. If you tally up all of the necessary dependencies (across all the 1.0 examples) the following would also need to be included:
bytes
http_body_util
serde
futures_util
url

I know the obvious answer feels like 'OK, add these too.' But is it? What is the point of telling someone what packages they need to install to run these examples? Are the examples supposed to be followed like guides, or do they only serve to aid those who have cloned the repository? In that case, they would already have the necessary dependencies in their TOML file.
I think it comes down to:
A. Extend the dependency list to give complete coverage for people following along in separate projects.
B. Remove the section and lean into the examples being a resource for those who have cloned the project.

Thank you so much for your valued feedback. It makes a world of difference to me 😄

Thanks Isaac! I quite like your idea of just having the Additional Examples link, thanks for the detailed write-up and the preview website, that's really great. :heart:
As for the examples readme dependencies, it's a bit tricky. They're meant to be run with examples commands after cloning the repo, but people will use them directly as well. So just having a list of all the dependencies used in examples seems useful to me! Might spare some people some confusion.
@seanmonstar what do you reckon on these points?

Having a link to "Additional Examples" seems like a good compromise, I like it!


WIP: Pipelined generation engine

Reimplemented core logic as a pipelined system.
Note:
The (mocha) tests are failing and I don't know why. I haven't been able to get VSCode to debug them. The error messages seem to be indicating that onessg doesn't run, but everything works perfectly in my project... :(
More notes:
I'm using async/await because the Promise logic was getting painful to think about. I figure the final implementation shouldn't use those (async/await requires Node 8 and ESLint barfs on it), but I want to for now to keep the logic clear while working on test coverage.

This seems to add an entire level of complexity and configuration that I'm not sure I'm comfortable with. If you really want a pluggable, middleware-based static site generator, I'd highly recommend https://github.com/segmentio/metalsmith
I actually considered using metalsmith, but in most cases I don't care about having that much configuration, so I built onessg instead.
I personally am not fan of duplication in the open-source world. There are already so many static site generators, it almost pained me to write yet another one when I wrote onessg. However, onessg is unique. There's no other SSG that does exactly the same thing. However, I don't want to expand onessg to the point that it's just metalsmith or another SSG re-implemented slightly differently. I hope you understand my line of reasoning...


does it handle elf binary --> shellcode ?

as I can see in source, it's just wrapper around nasm, ld, and objdump.
can this tool convert elf binary to shellcode? for ex, if compile it with musl-gcc and -static
thanks.

binary itself isn't supported yet, but if you provide your custom shellcode it will transform it, however, I am currently busy with another project if you could make a PR with the patch. I will be glad with

https://github.com/kotee4ko/MUSLShell
thanks for the idea, brother.

no problem, but I have a doubt why using musl-gcc in order to build shellcodes? I found more useful to build pretty specific task and write that in assembly, and then use it whatever you want via Process hollowing or another trick


Does not work on Vercel or Render.

I would like to run on Vercel or render but it doesn't work.
Can you help me?
Thanks

Hey @comeback01 ,
Can you tell me a little more about your setup please ?


We're losing performance around 500 lines, and around 800 lines is almost impossible

I was trying to do the year's expense accounts, I'm using about 400 lines
I was wondering how many calculations I can do on the same page and I found a drop in performance at 500 lines, and when I get to 800 lines the drop in performance is drastic

Hi @rbatty19,
Yes, this is a limitation unfortunately and I have been tinkering about a solution for a while now.  It's not only the number of lines but the expression being calculated that is the bottleneck.  Even a single line expression can crash the app (Ex. 1:999999999999999999).  The app calculates expressions line by line and displays the results of the calculations after each line is calculated.  Since a certain amount of time is needed to calculate each line, more lines mean decreased performance.  And if the expressions are especially complex, the performance hit compounds quickly.
I am working on a interim solution where the calculations can be done in the background so that at least the UI does not crash but it may be a while till it's implemented.
Thank you for the feedback.

Hi @rbatty19,
I just released v5.3.2 with some performance improvements.  Can you please try the new version and let me know if you see any improvement?


Add support for System Log API

This PR adds support for the Okta system log API.  It's rather simple as this endpoint only has a single endpoint.  Resolves #7.

Build failed due to Rubocop config being out of date, so rebasing onto #23.

same here, can you remove the rubocop commit and rebase off master?

:wave: we'd be interested in merging this if the rubocop commit was removed and and the changes were rebased on current master.


Cannot enable cyber77 in vscode 1.70.+

workbench dir in vscode 1.70 has changed
You can check https://github.com/robb0wen/synthwave-vscode/blob/master/src/extension.js#L29 for detail

Thanks a lot for pointing this out, updated it, please let me know if the glow works now!

You may be missing a method named isVSCodeBelowVersion?

Please try now

It works, thanks 😄


nugget servers block few geniune Public IPs

I am from Honeywell. We are facing issues reaching https://api.nuget.org/v3/index.json. Our IT team tells that nugget servers block few Honeywell Public IPs. Please could help in whitelisting few subnets.
Please IM/email me for subnet details.
<EMAIL_ADDRESS>

How should @aloysiustany ask for this support?

Hi @aloysiustany , the investigation with our CDN provider showed that the requests from Honeywell India don't reach our CDN, and an error in a local web proxy. I added you to the relevant support request thread.


ENH Performance optimisations

Related https://github.com/silverstripe/silverstripe-framework/pull/10083

This seems unlikely to noticably improve performance, and is also unlikely to be worked on in the near future. Closing.


Additional fields in error responses. Exceptions with the any additional data.

Problem:
I need to add some special fields to error request. The array 'errors' in Dingo custom Exceptions is not enough for me.
For example, i need to send error message:
"message": "Oops, some fields looks like incorrect!",
"system_message": "Validation error",
"something": "else",
"yet": ["another", "field"],
"code": 1234,
"status_code": 422,

Resolution:
In api.php setup new format:
'errorFormat' => [
        'message' => ':message',
        'system_message' => ':system_message', // this is a new one
        'errors' => ':errors', // this is an old, but can be used not only in ResourceException childs
...
    ],

Create the new Exception:
class TestException extends HttpException implements DingoException
{
    /**
     * @var \Illuminate\Support\MessageBag
     */
    protected $errors;
    protected $system_message = '';
    public function __construct($message = null, $system_message = '', $errors = null, Exception $previous = null, $headers = [], $error_code = 0)
    {
        $this->system_message = $system_message;
        if (is_null($errors)) {
            $this->errors = new MessageBag;
        } else {
            $this->errors = is_array($errors) ? new MessageBag($errors) : $errors;
        }

        parent::__construct(400, $message, $previous, $headers, $error_code);
    }

    // This is a new desired functionality
    public function getReplacements()
    {
        return [
            ':errors' => $this->errors,
            ':system_message' => $this->system_message,
        ];
    }
}

Than throw it from API
throw new TestException('Lovely bug', 'All is dead', [ 'humans' => 'dead', 'cockroaches' => 'dead' ], null, [], 123456);

And now, get this result:
{
    "message": "Lovely bug",
    "system_message": "All is dead",
    "errors": {
        "humans": [
            "dead"
        ],
        "cockroaches": [
            "dead"
        ]
    },
    "code": 123456,
    "status_code": 400
}

Pull request is coming.

Just catch all errors thrown and deal with them yourself. You can use
app('api.exception')->register() with a call back that type hints the
global Exception class.
On Mon, 25 May 2015 13:09 Eugene Glotov<EMAIL_ADDRESS>wrote:

Problem:
I need to add some special fields to error request. The array 'errors' in
Dingo custom Exceptions is not enough for me.
For example, i need to send error message:
"message": "Oops, some fields looks like incorrect!",
"system_message": "Validation error",
"something": "else",
"yet": ["another", "field"],
"code": 1234,
"status_code": 422,
Resolution:
In api.php setup new format:
'errorFormat' => [
'message' => ':message',
'system_message' => ':system_message', // this is a new one
'errors' => ':errors', // this is an old, but can be used not only in ResourceException childs
...
],
Create the new Exception:
class TestException extends HttpException implements DingoException
{
/**
* @var \Illuminate\Support\MessageBag
*/
protected $errors;
protected $system_message = '';
public function __construct($message = null, $system_message = '', $errors = null, Exception $previous = null, $headers = [], $error_code = 0)
{
$this->system_message = $system_message;
if (is_null($errors)) {
$this->errors = new MessageBag;
} else {
$this->errors = is_array($errors) ? new MessageBag($errors) : $errors;
}
    parent::__construct(400, $message, $previous, $headers, $error_code);
}

// This is a new desired functionality
public function getReplacements()
{
    return [
        ':errors' => $this->errors,
        ':system_message' => $this->system_message,
    ];
}

}
Than throw it from API
throw new TestException('Lovely bug', 'All is dead', [ 'humans' => 'dead', 'cockroaches' => 'dead' ], null, [], 123456);
And now, get this result:
{
"message": "Lovely bug",
"system_message": "All is dead",
"errors": {
"humans": [
"dead"
],
"cockroaches": [
"dead"
]
},
"code": 123456,
"status_code": 400
}
Pull request is coming.
—
Reply to this email directly or view it on GitHub
https://github.com/dingo/api/issues/419.

@jasonlewis , if I will catch exception before dingo, then I will need to rewrite all this logic:
 return $this->prepareResponse(
                $this->exception->handle($exception),
                $request,
                $accept['format']
            );

It is not good way.
Dingo/api has own special exceptions, it's already show, that default functionality is not enough. I propose remove this limitations. This library do a good job for REST supporting, but why it try to limit response data?

It doesn't try to limit anything. It's just how it's done at the moment.
I've seen you sent the PR so I'm more then happy to look at it when I get
the chance. Doesn't look like a huge change according to the e-mail so I
can't see why not at this stage.
On Mon, 25 May 2015 19:58 Eugene Glotov<EMAIL_ADDRESS>wrote:

@jasonlewis https://github.com/jasonlewis , if I will catch exception
before dingo, then I will need to rewrite all this logic:
return $this->prepareResponse(
$this->exception->handle($exception),
$request,
$accept['format']
);
It is not good way.
Dingo/api has own special exceptions, it's already show, that default
functionality is not enough. I propose remove this limitations. This
library do a good job for REST supporting, but why it try to limit response
data?
—
Reply to this email directly or view it on GitHub
https://github.com/dingo/api/issues/419#issuecomment-105194677.

It's a not big patch. I tried to find a minimal way to get result, but in future, genericResponse method waiting to refactoring. I think, most correctly is to check any available fields from config in exception instead of writing hardcoded special exceptions, like $exception->hasErrors() in ResourceException. $replacements need to fetch from default trait or interface method.
P.S.: Sorry for bad english, hope you understand my proposition.

I do and I thank you for your time. I'll get on it soon.
On Mon, 25 May 2015 20:35 Eugene Glotov<EMAIL_ADDRESS>wrote:

It's a not big patch. I tried to find a minimal way to get result, but in
future, genericResponse method waiting to refactoring. I think, most
correctly is to check any available fields from config in exception instead
of writing hardcoded special exceptions, like $exception->hasErrors() in
ResourceException. $replacements need to fetch from default trait or
interface method.
P.S.: Sorry for bad english, hope you understand my proposition.
—
Reply to this email directly or view it on GitHub
https://github.com/dingo/api/issues/419#issuecomment-105201271.

@jasonlewis , don't merge it now, I make some little changes for more accurate use.

@jasonlewis, ok I'm done.
Now it looks not like true-OOP-way. But usage is much more simple.
Good news:

You can use any Exception without extending.
You can easily add properties what you need to response.
You still have control on responses from config.

Usage:

Add new return fields to api.php errorFormat.
Throw exception from Api:

use  \Symfony\Component\HttpKernel\Exception;
$throw = new BadRequestHttpException('Lovely bug', null, 123456);

$throw->replacements = [  // Here is a new functionality
    ':errors' => [ 'humans' => 'dead', 'cockroaches' => 'dead' ],
    ':system_message' => $error['system_message'],
    // here you can add any fields, but don't forget to setup them in api.php
];
throw $throw;

For example, now you can change your ResourceException (and other) and make it more clear.
class ResourceException extends HttpException
{
    protected $replacements;
    public function __construct($message = null, $errors = null, Exception $previous = null, $headers = [], $code = 0)
    {
        if (is_null($errors)) {
            $this->replacements[':errors'] = new MessageBag;
        } else {
            $this->replacements[':errors'] = is_array($errors) ? new MessageBag($errors) : $errors;
        }

        parent::__construct(422, $message, $previous, $headers, $code);
    }
}

And then you can remove this if statement from Handler->genericResponse:
        if ($exception instanceof ResourceException && $exception->hasErrors()) {
            $replacements[':errors'] = $exception->getErrors();
        }

@jasonlewis, PR in laravel-api-generator is depends to this issue.

Let's move discussion over to the PR, #420. :smile: