Improve builds/cache dir documentation

👋 I have been implementing primarily local Gitlab CI caching, but when I was at it I also mounted builds dir from host.
Everything went pretty well until I ran to error:
fatal: unable to access 'https://<gitlabURL>/<repo>/': error setting certificate verify locations:  CAfile: /Volumes/My Shared Files/buildsdir/<repo>.tmp/CI_SERVER_TLS_CA_FILE CApath: none

I then played with config stage and found out that I actually need to mount buildsdir/cachedir using --dir argument for prepare stage, but I think that for others it would be useful to have it in the docs.

Hello Jakub! 👋
Thanks for the PR, however, I'm pretty sure that the GitLab Tart Executor already does automatically what you're suggesting to add to the README.md: https://github.com/cirruslabs/gitlab-tart-executor/blob/17df0eb5e2feb71c9501c7aec0fd374887a207dc/internal/tart/vm.go#L100-L108
Which version are you running, and is your GitLab Runner configuration file looks like in the README.md?

You are right, seems like I am running in a different issue, seems like using custom buildsdir causes that issue for me.
I am using version
~ % gitlab-tart-executor --version
executor version 1.4.3-5df3df4

When I use the following config I get the above mentioned error
~ % cat .gitlab-runner/config.toml
concurrent = 2
check_interval = 0
shutdown_timeout = 0

[session_server]
  session_timeout = 1800

[[runners]]
  name = "<name>"
  url = "<gitlab_url>"
  id = 834
  token = "<token>"
  token_obtained_at = <date>
  token_expires_at = <date>
  executor = "custom"
  [runners.cache]
    MaxUploadedArchiveSize = 0
  [runners.feature_flags]
    FF_RESOLVE_FULL_TLS_CHAIN = false
  [runners.custom]
    config_exec = "gitlab-tart-executor"
    config_args = ["config", "--cache-dir", "/Users/<host_user>/Library/Caches/GitlabCI/cache", "--builds-dir", "/Users/<host_user>/Library/Caches/GitlabCI/builds"]
    prepare_exec = "gitlab-tart-executor"
    prepare_args = ["prepare", "--concurrency", "2", "--cpu", "auto", "--memory", "auto", "--dir", "mint:/Users/<host_user>/.mint", "--dir", "TuistCache:/Users/<host_user>/.tuist/Cache"]
    run_exec = "gitlab-tart-executor"
    run_args = ["run"]
    cleanup_exec = "gitlab-tart-executor"
    cleanup_args = ["cleanup"]

The Gitlab job output is following
Running with gitlab-runner 16.4.1 (d89a789a)
  on <device>, system ID: <id>

Preparing the "custom" executor
Using Custom executor...
2023/10/16 22:37:06 Pulling the latest version of <image>...
2023/10/16 22:37:06 Cloning and configuring a new VM...
2023/10/16 22:37:06 Waiting for the VM to boot and be SSH-able...
2023/10/16 22:37:21 Was able to SSH!
2023/10/16 22:37:21 VM is ready.

Preparing environment
Running on admins-Virtual-Machine.local...

Getting source from Git repository
Fetching changes with git depth set to 20...
Reinitialized existing Git repository in /Volumes/My Shared Files/buildsdir/<gitlab_group>/<gitlab_repo>/.git/
fatal: unable to access 'https://<gitlab_url>/<gitlab_group>/<gitlab_repo>.git/': error setting certificate verify locations:  CAfile: /Volumes/My Shared Files/buildsdir/<gitlab_group>/<gitlab_repo>.tmp/CI_SERVER_TLS_CA_FILE CApath: none
2023/10/16 22:37:28 Process exited with status 128

Cleaning up project directory and file based variables
ERROR: Job failed: exit status 1

If i omit the --builds-dir argument in config stage, everything sails through correctly, do you have an idea what the cause and especially solution might be? Even mounting the directory explicitly in prepare stage, doesn't fix it.
We can probably move this conversation elsewhere as this PR is indeed unnecessary.
Thanks.

Thinking if this might be the cause 🤔
https://stackoverflow.com/a/70294114/2294228
But I'm just throwing ideas 🤷♂

In your tests do you run a single VM on the host? I see that your config is set to use two VMs. I'm not sure if there is some sort of collision/locking/something else might be happening since /Volumes/My Shared Files/buildsdir/<gitlab_group>/<gitlab_repo>.tmp looks like will be shared between two jobs.

Yes there are two jobs running, I will try with just one if that fixes the error.

Well, yeah, disabling concurrency fixed this particular issue, but another arose - various tools we use do not deal with spaces in buildsdir path. I already fixed that in Mint, I've ran into another cloning private package through SPM over SSH suddenly fails with host key verification failure.
I think I have the cause, I use customized SSH command through GIT_SSH_COMMAND environment variable, I inject private key and known hosts file to the guest system this way, I have those two files saved also in Gitlab environment. I feel like this might be the cause as the environment is saved in buildsdir as well.
I think we can close this thread if you feel it might be the cause as well 🙂

Yeah, let's close this PR and open issues and feature request for things like custom location of the mounted directories. 👌


Add sg_execution_times.rst to .gitignore

🚀 Pull Request
Description

I built the full docs for the first time in a while and found this file left behind, presumably by Sphinx Gallery.

Consult Iris pull request check list

Took the liberty of skipping the tests as I'm pretty sure this change can't break any of them!

👀 https://github.com/sphinx-gallery/sphinx-gallery/pull/1198


http.createServer(options, app .... DOES NOT WORK

https.createServer(options, app).listen(8080)
does not work as documented here:

http://expressjs.com/en/api.html#app.listen_path_callback

It does not listen
It does not set maxHeaderSize.
http.createServer({maxHeaderSize: 16000 }, appInst).listen(8080) console.warn(http.maxHeaderSize)
outpuuts 8192.
Above should listen and set size as documented, it does not.

I create the app, and then do above to listen.
It does not answer to a request on that port and it does not set the maxHeaderSize.
Issue is referenced:

https://github.com/expressjs/express/issues/4131
https://github.com/nodejs/node/issues/24692

Also comments here: https://stackoverflow.com/questions/32763165/node-js-http-get-url-length-limitation

Hi @cekvenich!
I tried to reproduce your code as follows:
// content for serve.js
const express = require('express')
const https = require('https')
const http = require('http')
const app = express()

http.createServer(app).listen(80)
https.createServer({maxHeaderSize: 16000 }, app).listen(443, () => {
    console.warn("maxHeaderSize:", http.maxHeaderSize)
})

If you execute the file directly like node server the size will be 8192 as this is the maximum value provided by HTTP Core library. See
You can skip this limitation using the flag --max-http-header-size. So the execution will be node --max-http-header-size=16000  server in this case you can see that the size is the expected one.

@UlisesGascon True you can pass the flag to node CLI.
But you can't set it programmatically: as documented in both express and node. And that is a bug in express, so I opened the issue.

Hi @cekvenich sorry you are having trouble. I'm not clear where the bug would be, exactly. Are you saying there is a bug in the Express code or a bug in the Express documentation? Would you also be able to help point out where the bug is / perhaps even make a pull request to help fix?

@dougwilson I can't make a PR since I see you using Object.create and I don't know how to pass args to node from that. It be nice if the code was updated to ES6 class syntax so we users can help.
Either docs should say that you can't set the options or setting the options programmatically is broken - as demonstrated by my code. (not the code that someone cut/pasted from docs).
This issue is re-open of an old issue that I linked.

Hi @cekvenich it's fine if you cannot make a PR; I'm more asking for at least a high-level description, perhaps some links to the code would help us to even know what Object.create you are referring to in this case.
The code you provided shows the same behavior even if you remove Express completely, example:
var http = require('http')
http.createServer({maxHeaderSize: 16000 }, function () {}).listen(8080)
console.warn(http.maxHeaderSize)

So I'm unclear where Express is coming into the equation, as the above runs in Node.js without any dependency on Express, but still prints out the wrong information you're looking for it to print...

that is not my code. I'll paste it from my message:
http.createServer({maxHeaderSize: 16000 }, appInst).listen(8080)
appInst is the express app. When I set maxHeaderSize, it does not set it!
(HTTP spec says query strings are unlimited. Well... express HTTP server has it limited )

@dougwilson So maybe we need to open a bug with node?

Right, but even if I change appInst in your example to something not Express, it still doesn't set it. If I'm able to provide an example of it not working where Express is not even being used, then it would seem the bug is in Node.js itself... and that bug is just showing up when you're trying to use Express with the Node.js HTTP server, but would apply to any use of their HTTP server, Express or not I would guess.

@dougwilson  sorry I deleted message when I read yours wrong and reposted so messages are out of sync. We may have to open an issue w/ node. That is not the http spec. HTTP specs says querystrings/url can be unlimited length Servers is Go and Java work fine and follow the spec.

Yea, sounds like you should open an issue with Node.js indeed :) !

I opened it w/ node: https://github.com/nodejs/node/issues/32290

I wrote a test case and it shows that it does work correctly and that bug has to be someplace on my side.


induction + esimp bug [2]

Probably related to #682, the following example fails because we esimp only a particular assumption.
-- HoTT
import types.sigma
open sigma sigma.ops eq
definition dpair_sigma_eq {A : Type} {B : A → Type} {u v : Σa, B a} (p : u.1 = v.1) (q : u.2 =[p] v.2)
  : ⟨(sigma_eq p q)..1, (sigma_eq p q)..2⟩ = ⟨p, q⟩ :=
begin
  induction u,
  induction v,
  esimp at q, -- it works if we replace this by     esimp at *,
  induction q,
  reflexivity
end

I'm concerned this may be a recurrent issue.

I'm starting to get concerned about this, too.

I analyzed this issue. Fortunately, it is not related to #682.
The problem is in the code that checks whether the induction tactic is applicable or not.
Right now, we just check whether all indices are pair-wise distinct local constants.
In your example, the indices are: v₁ p v₂.
However, since p : ⟨u₁, u₂⟩.1 = ⟨v₁, v₂⟩.1, was not simplified, it still depends on v₂.
So, the induction tactic produces an ill-formed pathover.rec application.
The fix is to reject induction q because p's type depends on v₂.

Yes, that makes sense. The new error message is nice!


How to Pass Multiple Java POJO object from DAO to XML mapper

MyBatis version
3.3.1
Database vendor and version
Test case or example project
Steps to reproduce
Expected result
Actual result

Please read the documentation first.
If you still have a question, please post it to the mailing list.
We use GitHub Issues only to track bugs and feature requests.
Thank you!


feat(helm): add chart name, version and app version to the status

Signed-off-by: Carlos Rodriguez Hernandez<EMAIL_ADDRESS>What this PR does / why we need it:
I would like to see in the installation output after helm install or helm status some info about the chart that is being installed such as the chart name, chart version, and app version:
$ bin/helm install my-kafka bitnami/kafka --version 14.2.3
RELEASE NAME: my-kafka
CHART: kafka-14.2.3
APP VERSION: 2.8.1
LAST DEPLOYED: Sat Nov 13 13:37:54 2021
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
** Please be patient while the chart is being deployed **

Kafka can be accessed by consumers via port 9092 on the following DNS name from within your cluster:

    my-kafka.default.svc.cluster.local
...

$ bin/helm status my-kafka
RELEASE NAME: my-kafka
CHART: kafka-14.2.3
APP VERSION: 2.8.1
LAST DEPLOYED: Sat Nov 13 13:37:54 2021
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
** Please be patient while the chart is being deployed **

Kafka can be accessed by consumers via port 9092 on the following DNS name from within your cluster:

    my-kafka.default.svc.cluster.local
...

Being the difference with the current output:
-$ helm status my-kafka
+$ bin/helm status my-kafka

-NAME: my-kafka
+RELEASE NAME: my-kafka
+CHART: kafka-14.2.3
+APP VERSION: 2.8.1
LAST DEPLOYED: Sat Nov 13 13:37:54 2021
NAMESPACE: default

Special notes for your reviewer:

Fixes #10256

If applicable:

[ ] this PR contains documentation
[X] this PR contains unit tests
[X] this PR has been tested for backwards compatibility

👋  Sorry to ping you directly @bacongobbler but since you labeled the related issue, what do you think about the changes?

Hi @mattfarina, do you have an opinion on this topic? How can it be reviewed? Thx

👋 Can someone review this PR? Thanks!

It's been a while since this failed CI. It'll need to pass, of course. Can you please fix the test failures?

Also, this output change could break any end-user scripts that scrape the output. The maintainers may require this to be behind a feature flag to maintain backward compatibility.
Does this (or should it) have any impact on other --output choices?


Webapp usage

Hi! This is more of a question than an issue. I've been running the development (v2) version and so far it has been working nicely :smile: I do wonder though, how does one use the webapp that is built with rust? I see sometimes the bot gives links (e.g. on queue command), is that it? I also see that the bot listens on two http ports, one always 404's and the other one has those pages. Should I be doing something else to use the webapp?
Thanks for the great bot!

No, the links provided by the queue or search commands (i.e. the paths configured in httpHandlers.xml) are legacy botify 1 http handlers. These run on the port specified by the botify.server.port property. This includes everything in the net.robinfriedli.botify.servers package and will be removed in the final release of botify 2 and fully replaced by the new web app in src/main/webapp and spring rest endpoints in the net.robinfriedli.botify.rest package. The new webapp is running on the port specified by server.port and the index.html file is mapped to the path specified by server.servlet.context-path. Relevant are the following log entries:
INFO  2021-01-04 02:05:27,108 [main] org.springframework.boot.autoconfigure.web.servlet.WelcomePageHandlerMapping: Adding welcome page: ServletContext resource [/index.html]
INFO  2021-01-04 02:05:27,252 [main] org.springframework.boot.web.embedded.tomcat.TomcatWebServer: Tomcat started on port(s): 8080 (http) with context path ''

So when running everything with default settings locally using a properly built jar file or the gradle bootRun task the new webapp should be reachable on http://localhost:8080/. Make sure your browser supports webassembly and webassembly is enabled (Chrome and I presume any chromium based browser / Firefox / Safari should word) and that you've compiled the webapp before building the jar as it is built into the classpath. The authentication page should be reachable (see the instance running on my server) but not much else is implemented as of now.

No, the links provided by the queue or search commands (i.e. the paths configured in httpHandlers.xml) are legacy botify 1 http handlers. These run on the port specified by the botify.server.port property. This includes everything in the net.robinfriedli.botify.servers package and will be removed in the final release of botify 2 and fully replaced by the new web app in src/main/webapp and spring rest endpoints in the net.robinfriedli.botify.rest package. The new webapp is running on the port specified by server.port and the index.html file is mapped to the path specified by server.servlet.context-path. Relevant are the following log entries:
INFO  2021-01-04 02:05:27,108 [main] org.springframework.boot.autoconfigure.web.servlet.WelcomePageHandlerMapping: Adding welcome page: ServletContext resource [/index.html]
INFO  2021-01-04 02:05:27,252 [main] org.springframework.boot.web.embedded.tomcat.TomcatWebServer: Tomcat started on port(s): 8080 (http) with context path ''

So when running everything with default settings locally using a properly built jar file or the gradle bootRun task the new webapp should be reachable on http://localhost:8080/. Make sure your browser supports webassembly and webassembly is enabled (Chrome and I presume any chromium based browser / Firefox / Safari should word) and that you've compiled the webapp before building the jar as it is built into the classpath. The authentication page should be reachable (see the instance running on my server) but not much else is implemented as of now.

Thanks for the information! It made things a bit more clear.
I checked again and I see no mentions of WelcomePageHandlerMapping on my logs. I played a bit more on the 8080 port and I see the REST endpoints respond, but it's not serving the static files (src/main/webapp/index.html & the stuff in src/main/webapp/pkg/, right?). From my understanding these end up in src/main/resources in the jar (eg. src/main/resources/index.html) and so the resource handler is not able to find them, as it looks in src/main/resources/resources, src/main/resources/public, etc.)
I now did a quick test with the following, making a public/ folder inside webapp and putting the static resources there, before building the jar:
cd src/main/webapp
cargo make build
mkdir public
cp -r index.html pkg img css public/

And it appears to be working fine :smile: Authentication works fine as well.

Thanks for the information! It made things a bit more clear.
I checked again and I see no mentions of WelcomePageHandlerMapping on my logs. I played a bit more on the 8080 port and I see the REST endpoints respond, but it's not serving the static files (src/main/webapp/index.html & the stuff in src/main/webapp/pkg/, right?). From my understanding these end up in src/main/resources in the jar (eg. src/main/resources/index.html) and so the resource handler is not able to find them, as it looks in src/main/resources/resources, src/main/resources/public, etc.)
I now did a quick test with the following, making a public/ folder inside webapp and putting the static resources there, before building the jar:
cd src/main/webapp
cargo make build
mkdir public
cp -r index.html pkg img css public/

And it appears to be working fine :smile: Authentication works fine as well.

No, index.html ends up in /index.html in the classpath root (BOOT-INF/classes/index.html in the jar file). All files in src/main/java, src/main/resources (default for maven / gradle) and src/main/webapp (since it is added to srcDirs in build.gradle) are compiled into the classpath root. Moving the index.html file to a different directory should definitely not be required.  WebMvcAutoConfiguration#getResourceLocations also copies SERVLET_LOCATIONS into the array, which is "/", so resources in the classpath root should definitely be found. You can check that index.html is in the classpath root by using the eval command:  eval $privileged getClass().getResource('/index.html') should return something like jar:file:/home/botify/botify2/build/libs/botify-1.0-SNAPSHOT.jar!/BOOT-INF/classes!/index.html in which case WebMvcAutoConfiguration$EnableWebMvcConfiguration#getWelcomePage should find the resource /index.html.

No, index.html ends up in /index.html in the classpath root (BOOT-INF/classes/index.html in the jar file). All files in src/main/java, src/main/resources (default for maven / gradle) and src/main/webapp (since it is added to srcDirs in build.gradle) are compiled into the classpath root. Moving the index.html file to a different directory should definitely not be required.  WebMvcAutoConfiguration#getResourceLocations also copies SERVLET_LOCATIONS into the array, which is "/", so resources in the classpath root should definitely be found. You can check that index.html is in the classpath root by using the eval command:  eval $privileged getClass().getResource('/index.html') should return something like jar:file:/home/botify/botify2/build/libs/botify-1.0-SNAPSHOT.jar!/BOOT-INF/classes!/index.html in which case WebMvcAutoConfiguration$EnableWebMvcConfiguration#getWelcomePage should find the resource /index.html.

Hmm, running that command replies jar:file:/app/botify.jar!/BOOT-INF/classes!/index.html, so the file is there in the jar :thinking: I have no idea why it's not picking it up then. I noticed WebConfig.java doesn't have a @EnableWebMvc like the rest of the Spring examples I find online, is that intended?

Hmm, running that command replies jar:file:/app/botify.jar!/BOOT-INF/classes!/index.html, so the file is there in the jar :thinking: I have no idea why it's not picking it up then. I noticed WebConfig.java doesn't have a @EnableWebMvc like the rest of the Spring examples I find online, is that intended?

Botify uses spring boot, not plain spring. Spring boot provides auto configuration for those things and usage of the @EnableWebMvn annotation would disable the auto config in favour of traditional spring config. From the spring boot documentation:

If you want to keep those Spring Boot MVC customizations and make more MVC customizations (interceptors, formatters, view controllers, and other features), you can add your own @Configuration class of type WebMvcConfigurer but without @EnableWebMvc.

If that was the problem authentication would not have worked as the RestController SessionManagementEndpoint would not have functioned since those beans don't register without spring mvc. Does it not work if you put everything back to where it was, rebuild the webapp and then rebuild the jar? Tried the latest build on macOS, Linux and Windows on Firefox, Chrome and Safari and could not reproduce the issue.

Botify uses spring boot, not plain spring. Spring boot provides auto configuration for those things and usage of the @EnableWebMvn annotation would disable the auto config in favour of traditional spring config. From the spring boot documentation:

If you want to keep those Spring Boot MVC customizations and make more MVC customizations (interceptors, formatters, view controllers, and other features), you can add your own @Configuration class of type WebMvcConfigurer but without @EnableWebMvc.

If that was the problem authentication would not have worked as the RestController SessionManagementEndpoint would not have functioned since those beans don't register without spring mvc. Does it not work if you put everything back to where it was, rebuild the webapp and then rebuild the jar? Tried the latest build on macOS, Linux and Windows on Firefox, Chrome and Safari and could not reproduce the issue.

Just tried again, just in case, but it isn't. I'm attaching a log, maybe you can spot something I'm missing. This is with
logging.level.org.springframework.web=DEBUG
log4j.logger.org.springframework.web=DEBUG

botify.txt
The only thing that looks a bit strange to me is this bit, the "/" doesn't have classpath: like the rest of them:
DEBUG 2021-01-05 01:34:15,011 [http-nio-8001-exec-1] org.springframework.web.servlet.handler.AbstractHandlerMapping: Mapped to ResourceHttpRequestHandler ["classpath:/META-INF/resources/", "classpath:/resources/", "classpath:/static/", "classpath:/public/", "/"]
eval $privileged getClass().getResource('/index.html') is still returning jar:file:/app/botify.jar!/BOOT-INF/classes!/index.html so I know the files are there.

Just tried again, just in case, but it isn't. I'm attaching a log, maybe you can spot something I'm missing. This is with
logging.level.org.springframework.web=DEBUG
log4j.logger.org.springframework.web=DEBUG

botify.txt
The only thing that looks a bit strange to me is this bit, the "/" doesn't have classpath: like the rest of them:
DEBUG 2021-01-05 01:34:15,011 [http-nio-8001-exec-1] org.springframework.web.servlet.handler.AbstractHandlerMapping: Mapped to ResourceHttpRequestHandler ["classpath:/META-INF/resources/", "classpath:/resources/", "classpath:/static/", "classpath:/public/", "/"]
eval $privileged getClass().getResource('/index.html') is still returning jar:file:/app/botify.jar!/BOOT-INF/classes!/index.html so I know the files are there.

Have you tried setting a breakpoint in WebMvcAutoConfiguration$EnableWebMvcConfiguration#getWelcomePage to see what that returns?

Have you tried setting a breakpoint in WebMvcAutoConfiguration$EnableWebMvcConfiguration#getWelcomePage to see what that returns?

Did you get the chance to try it out?

Did you get the chance to try it out?

I haven't had the chance yet, I need to set up a new java environment to do that. During my tests so far I have been using the bot I built and ran with docker and kubernetes. I'll see if I can do it this next week, or I can push a branch with the Dockerfile and such that I used if you want to take a look.

I haven't had the chance yet, I need to set up a new java environment to do that. During my tests so far I have been using the bot I built and ran with docker and kubernetes. I'll see if I can do it this next week, or I can push a branch with the Dockerfile and such that I used if you want to take a look.

Oh you're using Docker? That is indeed something I haven't tested but since I plan and distributing botify 2 as a Docker image it is something I'll look into either way. However, as long as the jar contains the file I still don't see that as a reason why it won't work. Would still be good to know your results when running the application outside of Docker when you get the chance.

Oh you're using Docker? That is indeed something I haven't tested but since I plan and distributing botify 2 as a Docker image it is something I'll look into either way. However, as long as the jar contains the file I still don't see that as a reason why it won't work. Would still be good to know your results when running the application outside of Docker when you get the chance.


newly created Project builds but packager produce errors

Node: 4.8.3
NPM: 4.5.0
RN CLI: 1.0.0
RN: 0.34.0
Ignite: 1.13.0
Platform: Virtualbox running OSX 10.11 El Capitan

What am i missing? do i need to install a JDK? do i need to update the versions? do i have to run it in an actual machine instead of a virtual one?

Verify you have set up everything prescribed by facebook for your Android environment.  https://facebook.github.io/react-native/docs/getting-started.html
Then you should be good to go!

having trouble with ios


Command PhaseScriptExecution failed with a nonzero exit code

I am receiving the below error when running a build for a flutter app on IOS with a physical device on a mac M1 chip set. This was working fine on Saturday 12/19/20.
/Users/rickeylee/Desktop/flutter/packages/flutter/lib/material.dart:57:1: Error: Error when reading '/Users/rickeylee/Desktop/flutter/packages/flutter/lib/src/material/date_picker.dart': No such file or directory
export 'src/material/date_picker.dart';
^
Command PhaseScriptExecution failed with a nonzero exit code
[✓] Flutter (Channel dev, 1.26.0-1.0.pre, on macOS 11.0 20A2411 darwin-arm,
locale en-US)
• Flutter version 1.26.0-1.0.pre at /Users/rickeylee/Desktop/flutter
• Framework revision 63062a6443 (8 days ago), 2020-12-13 23:19:13 +0800
• Engine revision 4797b06652
• Dart version 2.12.0 (build 2.12.0-141.0.dev)
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
• Android SDK at /Users/rickeylee/Library/Android/sdk
• Platform android-30, build-tools 30.0.3
• Java binary at: /Applications/Android
Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build
1.8.0_242-release-1644-b3-6915495)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 12.3)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 12.3, Build version 12C33
• CocoaPods version 1.10.0
[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 4.1)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build
1.8.0_242-release-1644-b3-6915495)
[✓] VS Code (version 1.52.1)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.17.0
[✓] Connected device (2 available)
• Rick (mobile) • 00008101-0011542C3A00001E • ios            • iOS 14.3
• Chrome (web)  • chrome                    • web-javascript • Google Chrome
87.0.4280.88
• No issues found!

I can confirm that just creating a new flutter application generates the same error.

@ianloic

@TahaTesser @fluttergithubbot

cc @christopherfujino

@chunhtai is there anyone that can look into this. I can't release an update to an app due to this.

can you double check if this file exist at all?
/Users/rickeylee/Desktop/flutter/packages/flutter/lib/src/material/date_picker.dart

@chunhtai  after checking it only goes to /Users/rickeylee/Desktop/flutter/packages/flutter/lib/src/material.dart

Could it be the Flutter package was messed up when upgrading?

@rlee1990 it maybe did, can you try to reinstall flutter?

@chunhtai will try that again now and see what happens

So I redownloaded Flutter from the site and checked it does not have date_picker.dart at /Users/rickeylee/Desktop/flutter/packages/flutter/lib/src/material/date_picker.dart @chunhtai

That is quite weird, cc @darrenaustin who has been working on the date_picker

@chunhtai thanks. I even checked on my Windows device and it's the same thing I am going to try to see if I pull an older version and update it if this still happens.

So I checked it is showing on the master branch when looking on Github trying to install it from there

@chunhtai I can confirm cloning the repo from Github for the master channel works. So the issue is with the packages on the Flutter.dev site

The datepicker is not yet in stable. If you download the zip from the dev channel directly, you can see the file is there https://storage.googleapis.com/flutter_infra/releases/dev/windows/flutter_windows_1.26.0-1.0.pre-dev.zip
I think there maybe something wrong when you switch the channel from an existing sdk

Thanks, I will close this as it is now working when I cloned flutter from the master branch @chunhtai

Thanks @chunhtai for helping @rlee1990 resolve this issue. The date picker internal code was restructured a while back which moved some files around. This change may not have migrated to stable yet. Not sure what got messed up during your upgrade though. Glad you are up and working again.

I just want to leave notes here even though this is solved, but I ran into this same issue after upgrading to 1.26.x.  For me it was one of several issues that didn't come up until I ran a build for chrome, which showed several new build errors.  I don't use DatePicker.

something in analysis_options.yaml was invalid - deleted contents.
a new folder for integration_tests showed up with errors.  deleted.
a file in test/ showed up with errors about "MyApp()", deleted.
some of my libraries had an error about "path", and I needed publish_to: 'none' added to pubspec.
I updated all the packages in pubspec.yaml

Both macOS and iOS were failing to build and I never saw a "show errors" popup in VSCode, even with new project platform folders created. iOS gave the error posted in terminal.  Chrome did allow me to show the errors and would build once these new issues were fixed, and then iOS and macOS built fine.


Update monaco to 0.28.1

Updates our bundles monaco build to 0.28.1
I have also cloned @Steve-Mcl's repo for doing our custom build into the NR organisation: https://github.com/node-red/nr-monaco-build
This also addresses #3138

Coverage remained the same at 67.679% when pulling da210e2ae47093b362ad2554f5433bc16a518b04 on update-monaco into 36bb172f298ea214f2159415ab1abfcedb8f95ea on dev.


Establish performance benchmark

Closing the issue, because it's too large. Several smaller user stories will be added to replace this one.


fix: radar chart sort by error

fix(radar chart): 'sort by' in controlPanel correctly
SUMMARY
There is a typo in radar chart buildQuery.ts. fix it by changed  timeseries_limit_metric to orderby and by formData.orderby in buildQuery.ts.
TESTING INSTRUCTIONS
sort by will be normal function in radar chart.
It can be checked by result table
ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Required feature flags:
[ ] Changes UI
[ ] Includes DB Migration (follow approval process in SIP-59)

[ ] Migration is atomic, supports rollback & is backwards-compatible
[ ] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[ ] Introduces new feature or API
[ ] Removes existing feature or API

@i-love-thinking thanks for the PR. I've cc'ed a couple of frontend engineers who may have more context.

Re-pinging @kgabryje on this...
Also, @yousoph do you know anyone using this chart? It'd be good to test on some various examples and check for regressions.

@i-love-thinking Tested on Radar chart from examples, for some reason it's crashing when I add Count as sort by

@i-love-thinking Tested on Radar chart from examples, for some reason it's crashing when I add Count as sort by

@kgabryje Thanks your testing, I think maybe cause by Count is not a column. it's a metric and only one value, and maybe exclude by sortby control?

@i-love-thinking Tested on Radar chart from examples, for some reason it's crashing when I add Count as sort by

@kgabryje Thanks your testing, I think maybe cause by Count is not a column. it's a metric and only one value, and maybe exclude by sortby control?

I think sort by works on metrics, not columns, and it seems to be working when I use AVG(price_each). So maybe it's not handling a saved metric for some reason?

@kgabryje Can you put on the same Radar chart, but without sortby setting.

@kgabryje The sortby function is for LEGEND. could it work fine?


The analysis process getting stuck at 50%

Describe the bug
I am running the App Inspector Analysis on a large repository with multiple languages, frameworks and components. The process runs fine till 50% but then it freezes there forever. And also, the appinspector.log.txt file is empty, hence have no idea what is going wrong.
I tried with some moderate or small sized repository, and it works fine.
To Reproduce
Steps to reproduce the behavior:

Clone a significantly large repository
Run ApplicationInspector.CLI.exe analyze -s <Repo Local Path>

Expected behavior
Firstly, the analysis should be complete. If not, then some error should be posted on command line where I am running the same, or logs should be written.
Desktop (please complete the following information):

OS: Windows 10
Browser: Edge Chromium

Sorry to see you're having issues.  Can you tell me the size of the repository you are scanning and is it a public one that I can download to investigate with?

The size of the repository is 839 MB. And sorry, the repository is not a public one, so can't share it here. Let me know if you need any other information about the repo.

How about the types of files in the project languages and whether the directory is zipped or contains any zipped or zipped within zipped files.  That might help.  Finally, what's the memory footprint look like when it hangs.

For me, it aborts at 49% running against the Linux kernel, with this message in the log:
2020-05-04 13:45:11 1 ERROR - AppInsLog - Access to the path 'D:\ReferenceSource\linux\scripts\dtc\include-prefixes\arc' is denied.
   at System.IO.FileStream.ValidateFileHandle(SafeFileHandle fileHandle)
   at System.IO.FileStream.CreateFileOpenHandle(FileMode mode, FileShare share, FileOptions options)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
   at System.IO.File.ReadAllBytes(String path)
   at MultiExtractor.MiniMagic.DetectFileType(String filename)
   at Microsoft.ApplicationInspector.Commands.AnalyzeCommand.GetResult()
2020-05-04 13:45:11 1 ERROR - AppInsLog - Unable to determine file type.  File open error for D:\ReferenceSource\linux\scripts\dtc\include-prefixes\arc
   at Microsoft.ApplicationInspector.Commands.AnalyzeCommand.GetResult()
   at Microsoft.ApplicationInspector.CLI.Program.RunAnalyzeCommand(CLIAnalyzeCmdOptions cliOptions)
   at Microsoft.ApplicationInspector.CLI.Program.VerifyOutputArgsRun(CLIAnalyzeCmdOptions options)
   at Microsoft.ApplicationInspector.CLI.Program.<>c.<Main>b__0_0(CLIAnalyzeCmdOptions cliOptions)
   at CommandLine.ParserResultExtensions.MapResult[T1,T2,T3,T4,T5,T6,TResult](ParserResult`1 result, Func`2 parsedFunc1, Func`2 parsedFunc2, Func`2 parsedFunc3, Func`2 parsedFunc4, Func`2 parsedFunc5, Func`2 parsedFunc6, Func`2 notParsedFunc)
   at Microsoft.ApplicationInspector.CLI.Program.Main(String[] args)

I was able to cause a similar error using MultiExtract with OSS Gadget. I'll work on a fix there and we can port over here.

Sweet!  Thanks for investigating.  @tanmayghosh2507 this module is a shared one that scovetta owns.  Stand by we may have a solution for you very soon.

Thanks @guyacosta and @scovetta for looking into this.
Quick Update: I tried to run the same with the additional verb "-h first", and then the analysis was complete, though it took around 10 minutes. Thought of letting you know in case it helps!

That would seem to suggest it is not related to unzipping content.  Thanks that's a good data point.  I'll start investigating that aspect now as well as the #200.

Two issues were contributing here one the code had java lib zips which were very large also and getting unpacked and scanned but more interestingly one rule pattern in acl.json was returning tens of thousands of matches due to a pattern error "||".  To prevent similar issues for future rules and improve performance, a max matches per file is now set and the exclude default filter was updated to add "lib" as a folder that should not be scanned.

Re-opening, failing similarly:
2020-05-06 14:33:46 1 ERROR - AppInsLog - Access to the path 'D:\ReferenceSource\linux\scripts\dtc\include-prefixes\arc' is denied.
   at System.IO.FileStream.ValidateFileHandle(SafeFileHandle fileHandle)
   at System.IO.FileStream.CreateFileOpenHandle(FileMode mode, FileShare share, FileOptions options)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
   at System.IO.File.ReadAllBytes(String path)
   at MultiExtractor.MiniMagic.DetectFileType(String filename)
   at Microsoft.ApplicationInspector.Commands.AnalyzeCommand.GetResult()
2020-05-06 14:33:46 1 ERROR - AppInsLog - Unable to determine file type.  File open error for D:\ReferenceSource\linux\scripts\dtc\include-prefixes\arc
   at Microsoft.ApplicationInspector.Commands.AnalyzeCommand.GetResult()
   at Microsoft.ApplicationInspector.CLI.Program.RunAnalyzeCommand(CLIAnalyzeCmdOptions cliOptions)
   at Microsoft.ApplicationInspector.CLI.Program.VerifyOutputArgsRun(CLIAnalyzeCmdOptions options)
   at Microsoft.ApplicationInspector.CLI.Program.<>c.<Main>b__0_0(CLIAnalyzeCmdOptions cliOptions)
   at CommandLine.ParserResultExtensions.MapResult[T1,T2,T3,T4,T5,T6,TResult](ParserResult`1 result, Func`2 parsedFunc1, Func`2 parsedFunc2, Func`2 parsedFunc3, Func`2 parsedFunc4, Func`2 parsedFunc5, Func`2 parsedFunc6, Func`2 notParsedFunc)
   at Microsoft.ApplicationInspector.CLI.Program.Main(String[] args)

I'd suggest cloning the Linux kernel and testing against that.

Will do.  I think this is a different issue than the one reported bytanmayghosh2507 and verified fixed using his codebase in both zipped and unzipped format.  I'll investigate the problem seen here by @scovetta in any case on this issue instance.

It's failing for files that have a zero length during the archive type check.  I have a fix in place that is being tested now.


Support no leading widget in appbar

Not ready for review yet.

(If it's not ready for review, should we close the PR? I'm not clear on why you opened the PR if not for review.)

This seems like a weird approach. Why not just have a boolean parameter on AppBar that controls whether or not to autofill null leading widgets?

I am OK with either approach. Only reason to do this would be to keep the param list from growing even more.
I will change and send out for review.


add more comments for Collective unittest

This PR does not touch any real code against to SOLVCON trunk. Only comments are added or modified.

Could you please remove the merge bumps of 9a97a4b and f956980?

I have removed the bumps and updated the source branch. Please review.


Refactoring the data table into a single container

Continuation for #2422

Fixed the orange bars
Added a sticky header

Only for column header row (one with column names). The entire header group for XML/JSON (with the node structure) is not sticky yet.

Fixed border of header elements in Firefox

Could you give a few screenshots to explain the issue @thadguidry? I do not seem to have the same problem (it works great with both Firefox and Chrome for me).

Not sticking header.
Probably because I still see position: relative for .data-table-header on L60 in the data-table-view.less file

@wetneb  Or instead of a bottom border, remove it ... and perhaps give it a very slight gradient shadow along the bottom edge of the header, to make it even more clear on the delineation between the two.
box-shadow: 0px 4px 6px 0px #b2b9cc;

@thadguidry I prefer the existing solid border, it matches the rest of the design better I think.

Thanks, this is much better!
I have just noticed another difference, in the importer preview:
Before:

After:

@wetneb
It's a limited consensus from a non-user group.  I personally will enforce the stickyness with some small JS changes on my end whenever I have the need.
I'm not happy with the Column Groups not sticking.  It is a feature that users use for detecting messy data within a node (keys and values - sometimes inside branches).  For those that work with Tree-based data its very useful to see, especially when scrolling down where I usually see the messy-ness.
But all of the Column Group visualization (and Tree-based data viz) needs an overhaul anyways as you and I discussed before, and David never did finish making the node key field (dropdown arrow) have functionality to help support transforms and pivoting and most importantly, flattening.  We can do all that later or next year.

I personally do not care much about which option we choose, but notice in the Gitter discussion how you talked about very different things in that thread: @lisa761 initially asked for a choice between two options, and you answered with 7 consecutive unrelated messages.
If you have a strong opinion about which option we should go for, then it should really help if you voice that directly instead (just like @darecoder1999 did in the first reply to the thread). By keeping your messages on topic, you would ensure that your opinion is taken into account right from the start :)

Because this is a prerequisite for @lisa761's work on infinite scrolling, let us merge this now - we can tweak things like the stickiness of the column groups later on if need be.


mbedtls_x509_crt_parse error cases lead to double memory free

Description

Type: Bug
Priority: Minor

Bug
OS
Mbed OS|linux|
Expected behavior
When mbedtls_x509_crt_parse is called and returns an error code, it should not free the memory for the certificate passed in.  Or, it should always free the memory for the passed in certificate when it errors.  Or it should provide a mechanism for the caller to know whether it still needs to free the memory or not.
Actual behavior
Depending on the error it sometimes frees the memory of the cert and sometimes does not.  There are even cases where it can return the same error code and it may or may not have freed the memory depending on where the error occurred.
Steps to reproduce
Run coverity on the code.

Hi, thank you for reporting this. As part of our testing of the code base we also run coverity but it does not report on our side what you mention here. Do you have some specific settings of coverity?
Otherwise in the title of this issue you mention a double memory free, could you provide the calling paths that lead to that situation?


Adding reactions, but message.reactions is returning "[]"

Link
https://github.com/Rapptz/discord.py/issues/1686

wontfix, as said in that issue its too complex to be worth it for now, anyone: feel free to PR a fix but it wont be directly added


Type error: LoardLibrary() argument 1 must be strign not unicode

Every time i run any command or just type youtube-dl i get this error:
Traceback (most recent call last):   File "c:\python27\lib\runpy.py", line 174, in _run_module_as_m     "__main__", fname, loader, pkg_name)   File "c:\python27\lib\runpy.py", line 72, in _run_code     exec code in run_globals   File "C:\Python27\Scripts\youtube-dl.exe\__main__.py", line 9,   File "c:\python27\lib\site-packages\youtube_dl\__init__.py", l     _real_main(argv)   File "c:\python27\lib\site-packages\youtube_dl\__init__.py", l     setproctitle('youtube-dl')   File "c:\python27\lib\site-packages\youtube_dl\utils.py", line     libc = ctypes.cdll.LoadLibrary('libc.so.6')   File "c:\python27\lib\ctypes\__init__.py", line 440, in LoadLi     return self._dlltype(name)   File "c:\python27\lib\ctypes\__init__.py", line 362, in __init     self._handle = _dlopen(self._name, mode) TypeError: LoadLibrary() argument 1 must be string, not unicode
did i make mistake? Or is your?

Duplicate of #11540

did i make mistake? Or is your?

Neither you nor we (youtube-dl maintainers) made the mistake. Instead, Python should be blamed: http://bugs.python.org/issue29082.
Conclusion: Python 2.7.13 is broken. Downgrade to 2.7.12 or use 3.x

How can i install youtube-dl on python 3  i have both on pc? @yan12125

Python 2 and Python 3 can co-exists. Just install it like how you've installed Python 2.


Add sender name to contacts

It would be helpful, if the "add to contacts" function would not only pass the e-mail address, but also the real name to a new contact.
Example:
If there is an e-mail in the inbox from
"Dr. Susan Miller (Veterinarian)"<EMAIL_ADDRESS>K9 mail right now only imports
<EMAIL_ADDRESS>to a new contact. To add the real name to this new contact, you would have to go the complicated way of changing back to k9 mail, copying the real name (that meany opening the mail, "show headers", copy the real name out of it), changing back to the new contact and add the real name.

This would help a lot,
thanks in advance!
Spectas
Environment
K-9 Mail version:
5.008
Android version:
5.1.1 (Cyanogenmod 12.1)
Account type: IMAP + CardDAV (DAVdroid)

This will only work on 4.3 and above as that's when the API was introduced - before that it'll do what it does now. But it's quite do-able :)

Wow, thanks a lot for your commit! That was really quick!!

I just found out, that there is already a way. If you don't click on the sender's icon (normally the first Name of the sender's name) in the inbox or in the single mail view, but if you click in single mail view on the senders name, the sender's name plus his mail address will be passed on to the contacts app. So this function should probably be used as well, when you click on the icon.

The PR includes passing the name on in both cases - I searched for any use of the old API method.


[GLUTEN-5020][VL] Add sudo for macOS related commands

What changes were proposed in this pull request?
Add sudo for macOS related commands, without it installing xsimd and gtest will fail.
Fixes: #5020
How was this patch tested?
Manual tested on macOS.

===== Performance report for TPCH SF2000 with Velox backend, for reference only ====

query
log/native_5031_time.csv
log/native_master_03_19_2024_e977d79e3_time.csv
difference
percentage

q1
35.47
36.21
0.744
102.10%

q2
23.61
24.11
0.499
102.12%

q3
37.20
36.64
-0.561
98.49%

q4
38.33
38.02
-0.309
99.19%

q5
71.25
69.07
-2.186
96.93%

q6
6.92
5.91
-1.012
85.37%

q7
86.24
82.31
-3.925
95.45%

q8
86.75
85.26
-1.490
98.28%

q9
122.82
121.93
-0.888
99.28%

q10
43.34
45.61
2.266
105.23%

q11
19.54
20.57
1.029
105.27%

q12
25.27
28.32
3.047
112.06%

q13
48.97
47.17
-1.799
96.33%

q14
20.53
16.86
-3.673
82.11%

q15
28.95
31.19
2.247
107.76%

q16
13.50
16.26
2.769
120.52%

q17
101.26
99.14
-2.121
97.91%

q18
141.91
142.77
0.860
100.61%

q19
13.62
14.68
1.062
107.80%

q20
28.87
28.29
-0.582
97.98%

q21
226.55
227.96
1.414
100.62%

q22
14.24
14.00
-0.245
98.28%

total
1235.13
1232.28
-2.852
99.77%


Remove deprecated methods for Verify API

Deprecated by ac21d42 in favour of more clearly named methods:

send_verification_request
check_verification_request
get_verification_request
control_verification_request

Removed in 13fcf6f


Cannot use bigint with any in certain arithmetic expressions

TypeScript Version:  4.2.0-dev.20201130
Search Terms: is:issue bigint
Code
var x: any, y: bigint
-x + y
++x + y
x++ + y
~x + y
x - x + y
x * x + y

Expected behavior:
The code should compile without errors, because x could be a bigint.
Actual behavior:
Each of the expressions fails to typecheck: error TS2365: Operator '+' cannot be applied to types 'number' and 'bigint'..
Playground Link: link
Related Issues: none.

This was intentional since, unlike other operands, operations like 80n + 1 throw rather than produce possibly-useful values.

@RyanCavanaugh I disagree. Since x is any, it could be a bigint, in which case all of the expressions are perfectly valid. The problem is that if the type of x is any, the type of -x, x - x, etc. is deduced to be number, which is wrong because it could be bigint.

Another example:
var x: any = 0n
var y = -x

Now, the type of y is number, but the value is 0n, a bigint.

I am getting this error: Operator '+' cannot be applied to types 'BigInt' and 'BigInt'
TypeScript version 4.1.3.
I can understand throwing an error for applying arithmetic to mixed types since BigInt and number are not compatible, but this is a BigInt plus a BigInt.  For some background the operation is question is:
details.size = details.size + size;
// details.size is defined as a BigInt
// size comes from "size" property of Node type BigIntStats

I am getting this error: Operator '+' cannot be applied to types 'BigInt' and 'BigInt'
TypeScript version 4.1.3.
I can understand throwing an error for applying arithmetic to mixed types since BigInt and number are not compatible, but this is a BigInt plus a BigInt.  For some background the operation is question is:
details.size = details.size + size;
// details.size is defined as a BigInt
// size comes from "size" property of Node type BigIntStats

Another example:
var x: any = 0n
var y = -x

Now, the type of y is number, but the value is 0n, a bigint.

This issue has been marked 'Working as Intended' ...

I can understand the design decision to not allow "potentially mixed computations", but this last example is clearly wrong typing, they can't be serious this is "working as intended". The original argument was to "throw rather than produce possibly-useful values" (@RyanCavanaugh), but this example shows that there are cases where the typing is too "optimistic".
It seems the unary - operator suffers the same problem as update expressions (++, --), see #49558. I could include your example in that issue as it seems to be a closely related problem.


Should the decorator use metadata?

One of the angular2 core devs mentioned in a slack that it was not recommended practice (in typescript) to have decorators that set methods or properties on the class. Instead, in angular2, decorators set metadata. Could the decorator in this project be re-written to use metadata somehow for the mutation methods instead of directly setting a method?

@bkinsey808 can you please send some links and info where I can read more about it?
also maybe how would you see the new implementation?
Thanks

I wish I had saved the slack discussion on angularbuddies in the typescript channel where I asked about this. I can't find it now. @robwormald was the angular core dev I slacked with who gave me his opinion about decorator best practice.
What I'm visualizing is that instead of having the decorator set things directly on the component, instead metadata is set. A service is injected into the component that will allow the component to consume both queries and mutations via that metadata. I think this will make it easier to type check.
I think this issue relates somewhat to this issue: https://github.com/apollostack/apollo-server/issues/17
Maybe we should wait for that above issue to get resolved before tackling this one?

@bkinsey808 But how that service would know about the component? You can't read metadata without providing a target class.
We could inject that service (let's call it ApolloHandler) inside Apollo decorator using this:
Reflect.defineMetadata('parameters', [[new InjectMetadata(ApolloHandler)]], target);

But how read metadata inside ApolloHandler:
Reflect.getMetadata('parameters'); // target?

ApolloHandler could receive an instance of component as an argument of some class or just inside constructor but it's not too user-friendly, I think.

Closing in favor of #41


Revert psycopg3 upgrade in postgres integration (#15859)

What does this PR do?
Port 15859 to 7.48.x
Motivation
https://github.com/DataDog/integrations-core/pull/15859
Additional Notes

Review checklist (to be filled by reviewers)

[ ] Feature or bugfix MUST have appropriate tests (unit, integration, e2e)
[ ] Changelog entries must be created for modifications to shipped code
[ ] Add the qa/skip-qa label if the PR doesn't need to be tested during QA.

License header validation failure expected in this scenario. Details here. Merge overriding this failure


Use --disable-eviction on upgrade when supported

When draining nodes for upgrade, uses --disable-eviction=true to evict pods that would otherwise not be allowed due to a PodDisruptionBudget. Allows upgrades to continue cleanly while using PodDisruptionBudgets for normal quality of service guarantees.
Only works with kubectl 1.18+, so it's only used when upgrading a Kubernetes 1.18 install.
Fixes #817.

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

I'm not really clear on how evict and delete differ in practice. My reading is that both will attempt graceful termination, but with delete it will force shutdown after the grace period while eviction won't. I can add your check, but not sure it's an important distinction here.

Also https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/. As far as I can tell, the logic you wrote is essentially consistent with the difference between drain and cordon+delete. And honoring is_ha wouldn't help my particular problem, since I have a single postgres instance that can't be safely evicted while maintaining service.

I see what you mean, but I don't want to break the case where someone had a pdb for 3 pods and is counting on that to keep the app running during upgrades. How about first try the drain with timeout, then if that fails do the drain with evicition disabled?

Yeah, that seems like it could work.

would that cause a problem for the upgrade if some pods are left running?

No, I think the drain is recommended to keep apps available, especially if something goes wrong. I haven't seen the control plane have any problems with some pods running during upgrades.

Then maybe it's better to just leave it as-is, and we can document that upgrades might take a bit while this step finishes.

We could lower the timeout from 5 minutes to 2 or 3 to make it a bit less painful.


Planned support for other file formats?

First of all: Thank you, very interesting project!
It appears to be just what I was looking for, so thank you for making this.
According to the description (and title), it is explicitly made for the Webm container, but why does it require MKVToolNix (mkvinfo) then?
Also, how about supporting MP4? Shouldn't ffmpeg be able to handle this?
Oh, and by the way: The Demo video (demo.webm) is not working?

Hi, thank you for your interest.

why does it require MKVToolNix

mkvtoolnix supports webm (since webm is just a subset of matroska) and wybm needs mkvinfo in order to parse information about frames in video (keyframe flag, size, position, etc). (In fact it's possible to parse than info with ffprobe or even with minimal EBML parser.)
I'm not planning to implement MP4 support because this tool was created specially for generating webms in the end. But you're right, ffmpeg does support "-c copy" for MP4 container, you could also try e.g. avidemux GUI program.

The Demo video (demo.webm) is not working?

In what player (browser) are you trying to open it? Works for me in Firefox.

In what player (browser) are you trying to open it? Works for me in Firefox.

Chrome 55.0.2883.75 (Official Build) m (64-bit)
Windows 10 x64

I'm not planning to implement MP4 support [..]

Too bad, but that's your prerogative, of course.

[..]  you could also try e.g. avidemux GUI program.

You're right.. I used this actually a (long) while ago, and thought it was specifically for .AVI, but it also seems to support MP4, true.

Chrome 55.0.2883.75

Hm, you're right, seems to be CSP issue, either on GitHub or Chrome side. WebM is completely fine, you can save it and open from disk.


Support sendRawEmail

sendRawEmail(params = {}, callback)

Any timeline for this?

Hmm, I could probably spend some time on it this weekend but no specific timeline as yet.
PR's welcome if you have time :+1:

I'm going to have a go at implementing this as I need it for my project :)

@cayter in case you didn't see, this is done now!


Add modules and latest to user guide

Supports CORGI-205 by filtering out inactive product_streams by default in the product_streams list endpoint. All product streams can be included by adding view=all to the endpoint parameters.
Also adds an example of getting components from a product stream to the user docs.
@RedHatProductSecurity/corgi-devs please review

apart from flake8 CI failure, LGTM - one proposal - consider changing view=active to active={} ... view= seems more a generic switch to do with serialisation rather then data selection.


delete the particular document

for example given here is the file structure
sdCard
 |--MyFolder
     |--File1.txt

If i want to delete the File1.txt, how do I get the URI of this document?

This sample has been deprecated/archived (check README for more information).
As recommended by GitHub, we are closing all issues and pull requests.


Hi, how to get the vgg-16 model for testing?

FileNotFoundError: [Errno 2] No such file or directory: '/Data/Pre-trained/vgg-16.mat'.
I tried one model from matconvnet, but it shows me the following errors:
File "demo.py", line 63, in
tracker.load_models(models[-1])
IndexError: list index out of range
So, would you please provide the link for the vgg-16  you used in this code? Thanks.

Sorry for missing this link. You can download it from here. Have fixed it in readme.

@skyoung  Thanks for your kind help!


[bug] The tauri sidecar failed to execute binary

Describe the bug
The tauri sidecar failed to execute binary

Reproduction
No response
Expected behavior
No response
Platform and versions
platform：windows
versions:  tauri 1.2.0

Stack trace
No response
Additional context
No response

I'll temporarily close this due to the lack of enough information.
Please provide a minimal reproduction and fill the appropriate information fields to reopen the issue. Thanks.

Why reproduction is required


Licensing: Add BSD-style license from uIP

Summary
LICENSING: Add the BSD-style license from uIP, as some lower-level networking components derive from it.
Per feedback of John D. Ament in the<EMAIL_ADDRESS>thread "[VOTE] Release Apache NuttX (Incubating) 10.1.0 [RC1]" on 21 May 2021, archived at here and here.
Obtained the license text from https://github.com/adamdunkels/uip/blob/uip-1-0/uip/uip.c.
Impact
Incorporates feedback received during release voting of NuttX 10.1.0.
Testing
None.

This is the actual license header on the uIP 1.0 primary file uip.c:
#define DEBUG_PRINTF(...) /*printf(__VA_ARGS__)*/

/**
 * \defgroup uip The uIP TCP/IP stack
 * @{
 *
 * uIP is an implementation of the TCP/IP protocol stack intended for
 * small 8-bit and 16-bit microcontrollers.
 *
 * uIP provides the necessary protocols for Internet communication,
 * with a very small code footprint and RAM requirements - the uIP
 * code size is on the order of a few kilobytes and RAM usage is on
 * the order of a few hundred bytes.
 */

/**
 * \file
 * The uIP TCP/IP stack code.
 * \author Adam Dunkels<EMAIL_ADDRESS> */

/*
 * Copyright (c) 2001-2003, Adam Dunkels.
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * 3. The name of the author may not be used to endorse or promote
 *    products derived from this software without specific prior
 *    written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
 * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
 * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 *
 * This file is part of the uIP TCP/IP stack.
 *
 * $Id: uip.c,v 1.65 2006/06/11 21:46:39 adam Exp $
 *
 */

/*
 * uIP is a small implementation of the IP, UDP and TCP protocols (as
 * well as some basic ICMP stuff). The implementation couples the IP,
 * UDP, TCP and the application layers very tightly. To keep the size
 * of the compiled code down, this code frequently uses the goto
 * statement. While it would be possible to break the uip_process()
 * function into many smaller functions, this would increase the code
 * size because of the overhead of parameter passing and the fact that
 * the optimier would not be as efficient.
 *
 * The principle is that we have a small buffer, called the uip_buf,
 * in which the device driver puts an incoming packet. The TCP/IP
 * stack parses the headers in the packet, and calls the
 * application. If the remote host has sent data to the application,
 * this data is present in the uip_buf and the application read the
 * data from there. It is up to the application to put this data into
 * a byte stream if needed. The application will not be fed with data
 * that is out of sequence.
 *
 * If the application whishes to send data to the peer, it should put
 * its data into the uip_buf. The uip_appdata pointer points to the
 * first available byte. The TCP/IP stack will calculate the
 * checksums, and fill in the necessary header fields and finally send
 * the packet back to the peer.
*/

The wording looks the same as your change. Sometimes.... often... BSD licenses differ in the third clause. The 2006 date is when I pulled the original code.

Thanks for checking it carefully! Also thanks for pointing out about the third clause.
There is one more missing License text that John pointed out in the above-referenced VOTE email: that of additional logic by Steve Reynolds for IGMP. I don't know where to get that license text from. Do you happen to have a copy in the code you originally pulled? (Or know where to find it?)

There is one more missing License text that John pointed out in the above-referenced VOTE email: that of additional logic by Steve Reynolds for IGMP. I don't know where to get that license text from. Do you happen to have a copy in the code you originally pulled? (Or know where to find it?)

I am not sure where Steve Reynold's IGMP came from.  I can't find the original files that I worked with.  But I see that it is also a part of lwip: https://github.com/pycom/esp-idf-2.0/blob/master/components/lwip/core/ipv4/igmp.c
But I don't recall ever using anything from lwip, but maybe that is where it came from?

There is one more missing License text that John pointed out in the above-referenced VOTE email: that of additional logic by Steve Reynolds for IGMP. I don't know where to get that license text from. Do you happen to have a copy in the code you originally pulled? (Or know where to find it?)

I am not sure where Steve Reynold's IGMP came from. I can't find the original files that I worked with. But I see that it is also a part of lwip: https://github.com/pycom/esp-idf-2.0/blob/master/components/lwip/core/ipv4/igmp.c
But I don't recall ever using anything from lwip, but maybe that is where it came from originally? It is very different from the highly modified IGMP in NuttX.

Hmm, this will take a bit more research. I'll see what I can come up with...

On 6/6/2021 5:34 PM, hartmannathan wrote:

    There is one more missing License text that John pointed out
    in the above-referenced VOTE email: that of additional logic
    by Steve Reynolds for IGMP. I don't know where to get that
    license text from. Do you happen to have a copy in the code
    you originally pulled? (Or know where to find it?)

I am not sure where Steve Reynold's IGMP came from. I can't find
the original files that I worked with. But I see that it is also a
part of lwip:
https://github.com/pycom/esp-idf-2.0/blob/master/components/lwip/core/ipv4/igmp.c
<https://github.com/pycom/esp-idf-2.0/blob/master/components/lwip/core/ipv4/igmp.c>

But I don't recall ever using anything from lwip, but maybe that
is where it came from originally? It is very different from the
highly modified IGMP in NuttX.

Hmm, this will take a bit more research. I'll see what I can come up
with...

I think that is the file.  In the LICENSE file, it has:
GMP
    ====
IGMP support, if enabled, adds additional logic by Steve Reynolds:
Copyright (c) 2002 CITEL Technologies Ltd.
      All rights reserved.
And that lwip reference has:
/*
     * Copyright (c) 2002 CITEL Technologies Ltd.
     * All rights reserved.
     *
So I think we have it covered.

On 6/6/2021 5:34 PM, hartmannathan wrote: There is one more missing License text that John pointed out in the above-referenced VOTE email: that of additional logic by Steve Reynolds for IGMP. I don't know where to get that license text from. Do you happen to have a copy in the code you originally pulled? (Or know where to find it?) I am not sure where Steve Reynold's IGMP came from. I can't find the original files that I worked with. But I see that it is also a part of lwip: https://github.com/pycom/esp-idf-2.0/blob/master/components/lwip/core/ipv4/igmp.c https://github.com/pycom/esp-idf-2.0/blob/master/components/lwip/core/ipv4/igmp.c But I don't recall ever using anything from lwip, but maybe that is where it came from originally? It is very different from the highly modified IGMP in NuttX. Hmm, this will take a bit more research. I'll see what I can come up with...
I think that is the file.  In the LICENSE file, it has:     GMP     ====     IGMP support, if enabled, adds additional logic by Steve Reynolds:       Copyright (c) 2002 CITEL Technologies Ltd.       All rights reserved. And that lwip reference has:     /*      * Copyright (c) 2002 CITEL Technologies Ltd.      * All rights reserved.      * So I think we have it covered.

The file you pointed out (there's an lwIP mirror at https://github.com/lwip-tcpip/lwip/blob/master/src/core/ipv4/igmp.c which has the same file) has this BSD-style license text in its header:
/*
 * Copyright (c) 2002 CITEL Technologies Ltd.
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * 3. Neither the name of CITEL Technologies Ltd nor the names of its contributors
 *    may be used to endorse or promote products derived from this software
 *    without specific prior written permission.
   IN NO EVENT SHALL CITEL TECHNOLOGIES OR CONTRIBUTORS BE LIABLE
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 *
 * This file is a contribution to the lwIP TCP/IP stack.
 * The Swedish Institute of Computer Science and Adam Dunkels
 * are specifically granted permission to redistribute this
 * source code.
*/

If our IGMP code originally derived from that lwIP file, then I think the above BSD-style license should be placed in our top-level LICENSE file, where we currently have only the first two lines. I wonder whether we are supposed to include those last four lines, which are granting specific permission to Adam Dunkels and the Swedish Institute of Computer Science. IANAL but doesn't the BSD-style license directly above it grant permission to anyone to redistribute in source and binary forms?


Implement a dnn-select component

The component needs to be similar to an html select element and support options elements in slots but look like dnn-input

As been done in 0.19.x


[BACKLOG-18365] - Second column reading as all null values for the attached CSV and KTR

@bmorrise , @pamval please review.

Build Completed
:fire: This pull request has some issues. It would be preferable to fix them in order for it to be just perfect. See below for more details. Some links are also available below for further assistance in addressing those issues.
Build Commands
mvn -B -fn -f 'pom.xml' -pl 'engine' -P '!assemblies' -amd clean install && mvn -B -f 'pom.xml' -pl 'engine' -P '!assemblies' -amd site

Cleanup Commands
mvn -B -f 'pom.xml' -pl 'engine' -P '!assemblies' -amd build-helper:remove-project-artifact

Changed files
  engine/src/test/java/org/pentaho/di/trans/steps/csvinput/CsvInputContentParsingTest.java
  engine/src/test/resources/org/pentaho/di/trans/steps/csvinput/files/column_name_with_spaces.csv

Unit test coverage change
These statistics help you identify how your changes have affected the coverage of the following files. If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation.
org.pentaho.di.job.entries.waitforsql.JobEntryWaitForSQL

Branch Change:  + .66%
Complexity Change:  + .93%
Instruction Change:  + .13%

org.pentaho.di.trans.steps.csvinput.CsvInput

Branch Change:  + .27%
Complexity Change:  + .59%
Instruction Change:  + .31%
Line Change:  + .31%
Method Change:  + .42%

org.pentaho.di.trans.steps.csvinput.CsvInputMeta

Instruction Change: -.05%:small_red_triangle_down:

org.pentaho.di.trans.steps.groupby.GroupByMeta

Branch Change: -1.04%:small_red_triangle_down:
Complexity Change: -1.05%:small_red_triangle_down:
Instruction Change: -.14%:small_red_triangle_down:
Line Change: -.37%:small_red_triangle_down:

org.pentaho.di.trans.steps.memgroupby.MemoryGroupByMeta

Branch Change: -3.53%:small_red_triangle_down:
Complexity Change: -4.05%:small_red_triangle_down:
Instruction Change: -.18%:small_red_triangle_down:
Line Change: -.48%:small_red_triangle_down:

org.pentaho.di.trans.steps.replacestring.ReplaceStringMeta

Instruction Change:  + .07%

org.pentaho.di.trans.steps.rowgenerator.RowGeneratorMeta

Instruction Change: -.08%:small_red_triangle_down:

org.pentaho.di.trans.steps.singlethreader.SingleThreaderMeta

Instruction Change:  + .10%

org.pentaho.di.trans.steps.symmetriccrypto.symmetriccryptotrans.SymmetricCryptoTransMeta

Branch Change:  + 3.33%
Complexity Change:  + 1.85%
Instruction Change:  + .28%

org.pentaho.di.trans.steps.synchronizeaftermerge.SynchronizeAfterMergeMeta

Instruction Change: -.04%:small_red_triangle_down:

org.pentaho.di.trans.steps.textfileinput.TextFileInputMeta

Branch Change: -.53%:small_red_triangle_down:

org.pentaho.di.trans.steps.webservices.WebServiceMeta

Branch Change: -1.79%:small_red_triangle_down:
Complexity Change: -1.19%:small_red_triangle_down:
Instruction Change: -.07%:small_red_triangle_down:

org.pentaho.di.www.TransformationMap

Branch Change:  + 9.09%
Complexity Change:  + 6.15%
Instruction Change:  + 10.03%
Line Change:  + 10.00%

org.pentaho.di.trans.steps.googleanalytics.GaInputStepMeta

Instruction Change:  + .07%

org.pentaho.di.trans.steps.gpload.GPLoadMeta

Instruction Change: -.22%:small_red_triangle_down:

org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UIEERepositoryUser

Branch Change: -8.33%:small_red_triangle_down:
Complexity Change: -6.67%:small_red_triangle_down:
Instruction Change: -.85%:small_red_triangle_down:
Line Change: -3.03%:small_red_triangle_down:

org.pentaho.di.trans.steps.salesforceupsert.SalesforceUpsertMeta

Instruction Change:  + .14%


BUG: Denying webcam access prevents the user from scanning an item until the page is refreshed

BUG: Denying webcam access prevents the user from scanning an item until the page is refreshed
DESCRIPTION
Steps to reproduce:

When the app is navigated to the scan item screen for the first time since page load, they deny access to the camera

Expected behaviour:

Upon the next user attempting to scan an item, if permission is not already granted, it should be requested again.

Observed behaviour:

Permission is not requested after the initial request is denied. This renders the app unusable until the page is refreshed.

The Home Page now reserves camera access, so this is no longer such an issue.


changing the duration (rn-carousel-auto-slide)

Hello there!
I am using angular-carousel for my home security app - I have a situation where I need to change the playback speed dynamically. This maps to rn-carousel-auto-slide being changed dynamically.
What would you think is the cleanest way to achieve this? In the code duration is computed at the start of the directive. Is there a way to bind it to the variable I pass it, so if the variable changes this value changes?
I am invoking it this way:
<ul rn-carousel rn-carousel-buffered rn-carousel-transition="none" rn-swipe-disabled="true" rn-carousel-index="mycarousel.index" rn-carousel-auto-slide="{{eventSpeed}}" rn-carousel-pause-on-hover">

eventSpeed is what needs to change while its playing.
Thanks again for this lovely library.

The solution I implemented was to create a factory with a setter and getter for duration and changed the code to use the factory setter/getter --> so that my calling app could change it any time.

Thanks for your suggestion and feedback :) If you have an example code to share, this may be helpful to others... thanks :)

Hi @revolunet - my code changes are so horrid you'd probably get shocked looking at it :-)
I added this factory to angular-carousel.js
.factory ('carouselControl', function() {
        var stoporplay = false;
        var duration = 0;
        return {

                setDuration: function (val)
                {
                        duration = val;
                },

                getDuration: function ()
                {
                        return duration;
                },

                setStopOrPlay: function(val)
                {
                        stoporplay = val;
                },
                getStopOrPlay: function()
                {
                        return stoporplay;
                },
                isStopped: function()
                {
                        return stoporplay;
                },

        }
    })

And then  every time you move to the next slide, you use the duration value from the template. Instead, I changed it to
scope.autoSlider = $interval(function() {
                                        //console.log ("setting time to " + mydurms);
                                        if (!locked && !pressed ) {

                                          scope.nextSlide();
                                        }
                                        }, carouselControl.getDuration());

Thanks for sharing the workaround
In the current code : https://github.com/revolunet/angular-carousel/blob/master/src/directives/rn-carousel.js#L389 the rn-carousel-auto-slide attribute expects an integer value at initialisation and cannot be changed later because it use an infinite interval function. Making it tweakable at each interval implies to change that $interval to a recurring $timeout that could evaluate the rn-carousel-auto-slide attribute at each timeout using the $parse function (to be able to read the attribute value in the current scope).


Popup menu improvements

Several improvements to the coder/playground menus.

Tighten up vertical spacing
Make hover blue
Add in actions/refactorings from Morphic menus
Display keyboard shortcuts for each item
*Unify shortcuts and menu items

This is a more major design change and will probably spawn into another issue


[Feature] Quote Section

Motivation / Problem
We want to display some quotes regarding the MVG on the portal landing page.
Solution

[ ] prepare design on figma
[ ] implement design

Initial idea is to have a component similar to:

Took this example from https://tailwindcss.com
Maybe you can research some alternatives or start with the above example and we go from there @LucaMilanese90 ?

How many quotes do we plan to use? Are they going to be more personal opinions or companies statements?
We already have a section on the homepage that uses the design of picture/text and then mirrors it on the next section, and we are already using a lot of cards between 3rd party portals and featured use cases. To not repeat it I would suggest to use a timed scrolled carousel with a more open structure like in this example:

We can also integrate a picture somewhere in it if we know we are going to have one for each quote

Since we are not speaking about companies the pictures could replace the logos on top, keeping the effect of having them B/W and switching to color (and maybe increasing the dimension) when they are displayed


add: tcp record proxy

Description

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):
Types of changes

Bug fix (non-breaking change which fixes an issue)
New feature (non-breaking change which adds functionality)
Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

[ ] My code follows the code style of this project.
[ ] I have updated the documentation accordingly.

Thank you for taking into account the review.
The tests are still failing.
One of the issues I see is that you have not updated saveservice.properties (and SaveService.FILEVERSION once you'll get the id).
Could you fix it ?
Thank you

I have updated saveservice.properties in new commit. Thank you for your suggestion.


When add an item into an array, which is bound to 'repeat' behavior, the '$parent' is undefined.

context.$parent = this.executionContext; in function updateExecutionContext() should be moved to function createBaseExecutionContext() and function createBaseExecutionKvpContext().

@martingust Can you look into this issue please? Let me know what you find and what you think we should do. Thanks!

@EisenbergEffect , I have fix it. Could I push the PR? I already signed your agreement.

Feel free to go ahead and send the PR. I'll have @martingust review it since he's familiar with that code and then if it all looks good I can merge and get it in for our next release.

@boogunote Can you please provide some more info on how to reproduce this? I'm not able to.

@martingust , Please checkout
https://github.com/boogunote/bn5/blob/master/src/tree-node.js and
https://github.com/boogunote/bn5/blob/master/src/tree-node.html.
I initialize view model in Ln.5 of tree-node.html.
  <section repeat.for="child of node.children">
    <compose
      model.bind="{'node':child, 'parentVM':$parent}"
      view-model="tree-node">
    </compose>
  </section>

Add check the model in activate() at Ln. 14 of tree-node.js.
  activate(model){
    console.log("TreeNode activate");
    console.log(model)
    this.node = model.node;
    this.parentVM = model.parentVM;
    this.treeVM = model.parentVM.treeVM;
  }

In the first round, everything work will. When children bind to repeat, I can access corrent $parent by model.parentVM in activate().
But when I add an item to children programmatically, by addChild() , I check model.parentVM in activate() again and see it's undefined.

Thank you. I have got it reproduced and confirmed your fix works. Will let Rob know.

@EisenbergEffect We can go ahead and close this.


Unable to run migrations

I have installed your package with laravel 5.2.45, everything is correct except migrations. You can see the output on the below screenshot. My database connection type is mysql and username is sic but it's giving error about the username homestead. Also when i run my migration command from the console, it works! ||wtfmigrate was added while i was debugging u'r package and i found the error was generated from this line.

Make sure your database info are correct when editing the .env file through the installer.

They are correct. running the command via artisan console migrates the database but not via the installer.

Same problem here. Have you solved?

@Tropicalista
Which version do you use?

@Phil795  Laravel 5.4

I think there is a mismatch with your configuration.
The 'homestead' database user is the default in www/laravel-blog/.env.sample and www/laravel-blog/config/database.php
If you want use the .env configuration file make sure your credentials are set. And rename the file to .env
Otherwise you can use the php database config file, place your connection data and change this setting
'default' => env('DB_CONNECTION', 'mysql'), to 'default' => 'yourconnection'),

I have already made this changes. Seems a problem by running laravel embedded serve, if I run this on wamp it works great.

I will test it tomorrow

@Utkarsh-vishnoi did you get this resolved? Is this still active?

Yes got it solved. Just reinstalled everything and it started to work.


How to allow special caracters such as & , "" , >, < .. ?

I need to know how can i allow special caracters to not be converted to their html codes such as & --> &, < --> < ?
Is there anyone who can help

This would be an XSS vulnerability, so it would not be sanitizing HTML, which is the purpose of the library.
The only way to prevent it from becoming an XSS vulnerability would be to add some very careful checks to ensure that no browser would interpret the character in question  as part of tag syntax in the current context. We'd consider a PR to do that, with unit tests proving it's safe, but it's not something we have a use for or plans to add. Valid, safe HTML for browsers to read is the goal, it rarely matters precisely how it's escaped as long as it is escaped correctly.


ember-forms isn't working inside handlebar each helper

There seems to be a problem with property binding when using ember-forms inside a handlebar each helper.
This is working fine with Ember.TextField view:
  {{#each person in model.people}}
     {{view Ember.TextField valueBinding="person.firstName"}}
  {{/each}}

This isn't working with em-input helper:
  {{#each person in model.people}}
     {{em-input property="person.firstName" label="First Name" placeholder="Please enter first name."}}
  {{/each}}

I updated your JSBin for demonstrating: http://jsbin.com/pexolude/9/edit

I decided to dig a little inside the control mixin as @jelhan suggested.  Still I decided to share them as they might be useful to someone who attempts a fix.
What I did was to modify the init function in addon/mixins/control.js to look like this:
  init: function() {
    this._super();

    var propertyIsModel = this.get('parentView.propertyIsModel');

    var formView = this;
    while (formView && formView.get('tagName') != 'form') {
      formView = formView.get('parentView');
    }
    console.log(formView);

    if(propertyIsModel) {
    	return Em.Binding.from("model" + '.' + (this.get('propertyName')) + '.content').to('selection').connect(this);
    } else {
    	return Em.Binding.from("model" + '.' + (this.get('propertyName'))).to('value').connect(this);
    }

  },

The console.log and the 4 lines above it are what I added. Running this with an em-input prints the form view that has the model into the JS console. Running it with em-input inside each prints null's.
It looks like the em-form is completely absent from the chain of parent views of the em-input. This is probably the reason the binding does not work.
This led me to this workaround. It does not require multiple forms and has worked for me so far:
{{#em-form model=model}}
    {{#each model.propertyNames key="id" as |propertyName|}}
        {{component "em-input" model=model property=propertyName label=propertyName}}
    {{/each}}
{{/em-form}}

Note the addition of model=model in the em-input. The model=model inside the em-form is not used in my code. I'm not sure if it can be removed in the general case, though.


cocomac: Watch kitchenling.com

cocomac requests the watch of the watch_keyword kitchenling\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

kitchenling\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by cigien in Charcoal HQ


Changing wrapper strong to div.

a11y task
Changed a <strong> for a <div> since a strong cannot have a block element within it.

This has been resolved from within AEM.


Update central plugin repository

the gradle dependencyUpdates task reports version 1.2.4 is available.
The following dependencies have later milestone versions:
 - uk.co.cacoethes:lazybones-gradle [1.2.3 -> 1.2.4]

But when I update my build to use it:
plugins {
    id "uk.co.cacoethes.lazybones-templates" version "1.2.4"
    id 'com.github.ben-manes.versions' version '0.11.3'
}

The build errors out with:
* What went wrong:
Plugin [id: 'uk.co.cacoethes.lazybones-templates', version: '1.2.4'] was not found in any of the following sources:

- Gradle Core Plugins (plugin is not in 'org.gradle' namespace)
- Gradle Central Plugin Repository (plugin 'uk.co.cacoethes.lazybones-templates' has no version '1.2.4' - see https://plugins.gradle.org/plugin/uk.co.cacoethes.lazybones-templates for available versions)

oops, double submitted this somehow


uint256 encoding problem

When I am trying to encode big uint256 value I got this error
Cannot parse uint256

Caused by:
  number too large to fit in target type

I'am trying to do
ethabi encode function abi.json mint -p f3eb3b7d01416d22fdc051c313af5634afac316e -p<PHONE_NUMBER>0 --lenient

or simply
ethabi encode params -v uint256<PHONE_NUMBER>0 --lenient

If I trying to encode smaller number like 1000 it works fine (up to 10 ** 9) but starting from 10 ** 10 it raises error. Why? uint256 can store values up to 2 ** 256 - 1 as I understand
Is it a bug or I am using ethabi incorrectly?

I opened a PR to fix the encoding error (https://github.com/paritytech/ethabi/pull/80); I still need some help to fix this same issue with i256. In the meantime you can use its branch fix-lenient-encoding-256 :
ethabi encode params \
  --lenient \
  -v uint256 1 \
  -v "address[]" "[0097c111bedd43e760be5f8f245c0e5f59d35836]" \
  -v uint256 100000 \
  -v uint256<PHONE_NUMBER>0000000000

0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000186a00000000000000000000000000000000000000000000000008ac7230489e8000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000097c111bedd43e760be5f8f245c0e5f59d35836

It does take a few seconds to compute though, which is strange behaviour. I have the same behaviour as you upon executing the second command; will have a look into it.

closed by https://github.com/paritytech/ethabi/pull/173


Unexpected @include behaviour with explicit null paramter

We stumbled upon the following situation:

We have a query which declares Boolean variable with default value.
This variable is used as an argument for @include directive.
When executing query, variable is explictly set to null.

In this case, I'd expect to have an exception, as graphql-js does. Instead, any non-false value is treated as true.
Simplified example:
$queryType = new ObjectType([
    'name' => 'Query',
    'fields' => [
        'test' => [
            'type' => Type::string(),
        ]
    ]
]);

$schema = new Schema([
    'query' => $queryType
]);

$root = [
    'test' => '123'
];

$query = <<<GQL
    query Q(\$include: Boolean = false) {
        test @include(if: \$include)
    }
GQL;

$vars = [
    'include' => null,
];
$result = GraphQL::executeQuery($schema, $query, $root, null, $vars);
print_r($result->data);

This code prints:
Array
(
    [test] => 123
)

Where equivalent JS code throws:
 GraphQLError: Argument "if" of non-null type "Boolean!" must not be null.

It looks like #262 resolves it

This is fixed in master via https://github.com/webonyx/graphql-php/commit/bf4e7d4a9f078fb926f92a32725a6ccf0c0e09a2


fix(920274): false positive with CloudFlare header CF-Visitor

REQUEST_HEADERS:CF-Visitor contain { "scheme":"https"} and requests blocked by this rule

Hi @dburianov,
thanks for your fix.
Could you modify the title of the PR and add the affected rule number? Or put the rule id into the comment at least?
Also would be fine to add a new (negative) test to the collection against this modification.
Thanks!

@dburianov if you want, you can add your name to the list of test contributors at the top of the test file you've modified in this PR.

I have some concerns about this change… which I will write up shortly when I have 5 spare minutes… :cold_sweat:

For additional context, here's an example false positive, using the example header value from Cloudflare's documentation:
[Tue Oct 10 12:00:58.033437 2023] [security2:error] [pid 65:tid<PHONE_NUMBER>93184] [client <IP_ADDRESS>:38712] [client <IP_ADDRESS>] ModSecurity: Warning. Found 6 byte(s) in REQUEST_HEADERS:CF-Visitor outside range: 32,34,38,42-59,61,65-90,95,97-122. [file "/etc/modsecurity.d/owasp-crs/rules/REQUEST-920-PROTOCOL-ENFORCEMENT.conf"] [line "1783"] [id "920274"] [msg "Invalid character in request headers (outside of very strict set)"] [data "REQUEST_HEADERS:CF-Visitor={ \\x5c\\x22scheme\\x5c\\x22:\\x5c\\x22https\\x5c\\x22}"] [severity "CRITICAL"] [ver "OWASP_CRS/4.0.0-rc1"] [tag "modsecurity"] [tag "application-multi"] [tag "language-multi"] [tag "platform-multi"] [tag "attack-protocol"] [tag "OWASP_CRS"] [tag "capec/1000/210/272"] [tag "paranoia-level/4"] [hostname "localhost"] [uri "/"] [unique_id "ZSU8-vesKcopyW_rXnUlIgAAAII"]
[Tue Oct 10 12:00:58.037119 2023] [security2:error] [pid 65:tid<PHONE_NUMBER>93184] [client <IP_ADDRESS>:38712] [client <IP_ADDRESS>] ModSecurity: Warning. Unconditional match in SecAction. [file "/etc/modsecurity.d/owasp-crs/rules/RESPONSE-980-CORRELATION.conf"] [line "96"] [id "980170"] [msg "Anomaly Scores: (Inbound Scores: blocking=5, detection=5, per_pl=0-0-0-5, threshold=5) - (Outbound Scores: blocking=0, detection=0, per_pl=0-0-0-0, threshold=4) - (SQLI=0, XSS=0, RFI=0, LFI=0, RCE=0, PHPI=0, HTTP=0, SESS=0, COMBINED_SCORE=5)"] [ver "OWASP_CRS/4.0.0-rc1"] [tag "modsecurity"] [tag "reporting"] [hostname "localhost"] [uri "/"] [unique_id "ZSU8-vesKcopyW_rXnUlIgAAAII"]
Rule 920274 doesn't like the curly brackets {} or the backslashes.

* `CF-Visitor` is not a standard header defined in any RFC or W3C standard (unlike `Referer`, `Sec-CH-UA`, and others). This is not a change to fix a false positive with generic HTTP traffic.

...
Based on @RedXanadu's arguments I have to revise my previous opinion. I think he is right, and we do not want to merge this modification.

One final thought: a Cloudflare rule exclusion plugin, or a blog post on "how to tune CRS for Cloudflare at higher paranoia levels" or similar 🤔

Yes, I thought about the new CF exclusion plugin instead of this modification.

agree, this is not a good idea

I also agree. Thanks @RedXanadu, great catch! But I'm curious now, @dburianov, are you really running CRS at PL4?

Closing this issue due to inactivity. There doesn't appear to be an immediate need to create an exclusion plugin for Cloudflare either.


feat: Enhancements on Map Layers and Filters

We have a growing number of reasons and channels from various sources and we need to re-design the map layers and filters to improve the user experience by simplifying the map layers and making the map filters easier to navigate between data type, channel, and reason.
** discord username: @nazdezar @handekaratas96 **
FIGMA Design

The FIGMA Data Filter Mapping
reach out to @handekaratas96 for questions.
There are three main filters on the Map Filters:

Hizmetler / Services
Yardim Talebi / Relief Aid
Afetzede Bul / Rescue Help

Requirements:

If the underlying data is not present, do not show the data category to the user as a selection (for Yardim and Hizmet).
All selections should be multi-selection; allowing users to select more than one filter input.
"Hizmet ve Yardim Talep" categories should have ALL or NONE in the dropdown selection.
When the Filter Menu is closed (X), the filter criteria should not change.

gonna be fixed with new filter ui


Problem Importing gpg keys from AUR (Arch Linux)

The arch linux sync process doesn't work for nordselect: anymore
...
:: (1/1) Parsing SRCINFO: nordselect
:: PGP keys need importing:
-> CC0B7CE9604A8A91F0D70B778489DB248465FDD7, required by: nordselect
==> Import? [Y/n] Y
:: Importing keys with gpg...
gpg: Empfangen vom Schlüsselserver fehlgeschlagen: Allgemeiner Fehler
problem importing keys
(problem importing gpg keys)
I had the same problem with Tor-Browser aur project that was solved with adding a proper pgp email.
$ gpg --auto-key-locate nodefault,wkd --locate-keys<EMAIL_ADDRESS>I still love and use nordselect every day, I would appreciate a fix very much, thanks upfront.

Nice to hear that people like it! :)
Sometimes I get a GPG general error as well, so that could be due to a keyserver, could be an issue with my GPG key being expired. But it's not being used at the moment. I'll delete it for now.
Can you check if it works again?

Yes, now it is working fine, thank you very much for your fast fix.
Bts, I check every night automatically (and when necessary) on the best vpn connection with nordselect from the openWRT router with a simple batch script to a server (with nordselect).
When I got time i pick up rust and might expand your program to a constant check if a certain low threshold is reached to trigger a switch signal for never having a worse server :)


Introducing NeverUndefined

This feature is done by introducing a new type of undefined class called NeverUndefined.
The problem is that when using the previously most restricted undefined policy StrictUndefined is not enough.
Take example on the following template:
{% macro test(a, b, c) %}
a macro with three parameters but not used
{%endmacro%}

{{test()}}

NeverUndefined will capture this error because in the normal case one shall pass three parameters to this macro in order to call it. StrictUndefined will not.
And this problem would be harder to debug, if one pass these undefined variables to another macro or function calls.
The implementation:
class NeverUndefined(jinja2.StrictUndefined):
    def __init__(self, *args, **kwargs):
        # ARGS: ("parameter 'myvar2' was not provided",)
        # KWARGS: {'name': 'myvar2'}
        if len(args) == 1:
            info = args[0]
        elif "name" in kwargs.keys():
            info = f"Undefined variable '{kwargs['name']}"
        else:
            infoList = ["Not allowing any undefined variable."]
            infoList.append(f"ARGS: {args}")
            infoList.append(f"KWARGS: {kwargs}")
            info = "\n".join(infoList)

        raise Exception(info)

I don't plan on adding this to Jinja core. This doesn't match the general behavior of other Undefined types. If you think it would be generally useful to others, you can release it as an extension on PyPI, there's nothing required from Jinja itself for this.

I will release some extension for this.
The reason I do this is because in Python we do not have such concept of undefined and it should be turned off from the very beginning, as default. This concept is most likely in Javascript, where lawlessness is up to a whole new level.

Consider reopen this. I can tell you StrictUndefined is a mistake. I have updated examples above.


Feat: User type Outstanding tasks

[ ] remove or improve deleteGDPRUser
[ ] agree if tests should have uncaught errors

From https://github.com/freeCodeCamp/open-api/pull/55#issuecomment-386158708

So, expanding on my comments re: uncaught errors, maybe my explanation was way off. These errors that are flagged to the console are errors we will find during implementation and should not reach any client code. If they are triggered out in the wild, we send a generic Something went wrong message to the client whilst logging the actual error for ourselves to aid debugging.
As always, I am open to other ways of doing things. You guys, hands down, have more experience than me. This is the first 'real' back end I have had a hand in, so my learning curve is still steep.
I am not precious with my code, if it can be better please tell me or raise a PR. Feedback is always welcome. :+1:

GDPR endpoints (are they still endpoints in graphql?) should be improved/implemented as a priority.

deleteGDPRUser was removed and logging decision explained. Thanks @Bouncey