Element mj-* doesn't exist or is not registered

Element mj-* doesn't exist or is not registeredHi all,
I see that multiple tags don't exist anymore like mj-font, mj-container.
So the validation command don't work and the HTML generation don't continue.
Is there a full documentation of MJML 4 like mjml.io/documentation ?
Thanks
Reproduction Steps:
Put <mj-container> in my MJML file
$ mjml -w index.mjml

Expected behavior:
A good HTML file or a full documentation to fix this.
Observed behavior:
An error in the terminal output :
npm run newsletter
Now watching: newsletter.mjml
/home/......./newsletter.mjml - Change detected[ { line: 3,    message: "Element mj-font doesn't exist or is not registered",    tagName: 'mj-font',    formattedMessage:     "Line 3 of /home/......./newsletter.mjml (mj-font) — Element mj-font doesn't exist or is not registered" },  { line: 4,    message: "Element mj-font doesn't exist or is not registered",    tagName: 'mj-font',
    formattedMessage:
     "Line 4 of /home/......./newsletter.mjml (mj-font) — Element mj-font doesn't exist or is not registered" },
  { line: 5,
    message: "Element mj-title doesn't exist or is not registered",
    tagName: 'mj-title',
    formattedMessage:
     "Line 5 of /home/......./newsletter.mjml (mj-title) — Element mj-title doesn't exist or is not registered" },
  { line: 11,
    message: "Element mj-section doesn't exist or is not registered",
    tagName: 'mj-section',
    formattedMessage:
     "Line 11 of /home/......./newsletter.mjml (mj-section) — Element mj-section doesn't exist or is not registered" },
  { line: 12,
    message: "Element mj-column doesn't exist or is not registered",
    tagName: 'mj-column',
    formattedMessage:
     "Line 12 of /home/......./newsletter.mjml (mj-column) — Element mj-column doesn't exist or is not registered" },
  { line: 13,
    message: "Element mj-text doesn't exist or is not registered",
    tagName: 'mj-text',
    formattedMessage:
     "Line 13 of /home/......./newsletter.mjml (mj-text) — Element mj-text doesn't exist or is not registered" },
  { line: 13,
    message: "Element a doesn't exist or is not registered",
    tagName: 'a',
    formattedMessage:
     "Line 13 of /home/......./newsletter.mjml (a) — Element a doesn't exist or is not registered" },
  { line: 19,
    message: "Element mj-section doesn't exist or is not registered",
    tagName: 'mj-section',
    formattedMessage:
     "Line 19 of /home/......./newsletter.mjml (mj-section) — Element mj-section doesn't exist or is not registered" },
  { line: 20,
    message: "Element mj-column doesn't exist or is not registered",
    tagName: 'mj-column',
    formattedMessage:
     "Line 20 of /home/......./newsletter.mjml (mj-column) — Element mj-column doesn't exist or is not registered" },
  { line: 21,
    message: "Element mj-text doesn't exist or is not registered",
    tagName: 'mj-text',
    formattedMessage:
     "Line 21 of /home/......./newsletter.mjml (mj-text) — Element mj-text doesn't exist or is not registered" },
  { line: 22,
    message: "Element mj-text doesn't exist or is not registered",
    tagName: 'mj-text',
    formattedMessage:
     "Line 22 of /home/......./newsletter.mjml (mj-text) — Element mj-text doesn't exist or is not registered" },
  { line: 31,
    message: "Element mj-section doesn't exist or is not registered",
    tagName: 'mj-section',
    formattedMessage:
     "Line 31 of /home/......./newsletter.mjml (mj-section) — Element mj-section doesn't exist or is not registered" },
  { line: 32,
    message: "Element mj-column doesn't exist or is not registered",
    tagName: 'mj-column',
    formattedMessage:
     "Line 32 of /home/......./newsletter.mjml (mj-column) — Element mj-column doesn't exist or is not registered" },
  { line: 33,
..........
/newsletter.mjml - Successfully compiled

MJML version:
mjml-core: 4.2.0
mjml-cli: 4.2.0
My package.json:
{
  "name": "mjmlleknoppix",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "devDependencies": {
    "babel-core": "^6.26.3",
    "babel-eslint": "^6.1.2",
    "babel-plugin-transform-decorators-legacy": "^1.3.5",
    "babel-preset-es2015": "^6.13.2",
    "babel-preset-react": "^6.11.1",
    "babel-preset-stage-0": "^6.5.0",
    "babel-register": "^6.14.0",
    "eslint": "^3.4.0",
    "eslint-config-airbnb": "^10.0.0",
    "eslint-plugin-import": "^1.13.0",
    "eslint-plugin-jsx-a11y": "^2.1.0",
    "eslint-plugin-react": "^6.0.0",
    "gulp": "^3.9.1",
    "gulp-babel": "^6.1.3",
    "gulp-newer": "^1.4.0",
    "gulp-rename": "^1.4.0",
    "gulp-watch": "^4.3.9",
    "mjml": "^4.2.0",
    "mjml-head-font": "^4.2.0",
    "mjml-migrate": "^4.2.0"
  },
  "dependencies": {
    "lodash": "^4.17.11",
    "mjml-column": "^3.1.1",
    "mjml-core": "^3.1.1",
    "mjml-image": "^3.1.1",
    "mjml-section": "^3.1.1",
    "mjml-text": "^3.1.1",
    "react": "^15.3.1"
  },
  "scripts": {
    "version": "mjml --version",
    "sharenew": "mjml --watch share_new.mjml",
    "voeux": "mjml --watch voeux.mjml",
    "newsletter": "mjml --watch newsletter.mjml -o newsletter.html",
    "start": "gulp watch",
    "build": "gulp build",
    "lint": "eslint components",
    "validate_sharenew": "mjml --validate share_new.mjml",
    "validate_voeux": "mjml --validate voeux.mjml",
    "validate_newsletter": "mjml --validate newsletter.mjml",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "leknoppix",
  "license": "ISC"
}

Hey @leknoppix, there's an issue in your setup, it seems MJML is not properly built here. Did you build it yourself?
About mjml.io/documentation, it is based on MJML 4.

yeah, in your package json you have some MJML 3 related package mixed by MJML 4

It was a project started with MJML3. I have only update npm.

Well as said, you have the mjml-core as v3 and some other package as v4 just remove every package related to mjml on your package json and just use regular mjml package.


Update the mutex-protected variable API

The mutex-protected variable API only works properly with primitive types. It would be nice for it to also work with structures, objects and containers. Any solution needs to be as efficient as working with the underlying variable directly. We're only looking for a way to add compile-time checks.
This was originally posted on Redmine (https://cdcvs.fnal.gov/redmine/issues/11624).

Rust solves this problem perfectly: https://doc.rust-lang.org/std/sync/struct.Mutex.html
I'm not sure whether we can do this in C++, though.


Adapt to the new layout format

Upgrade launcher-include to follow the new format of nested Layout information, as changed in Starcounter/Starcounter#2690
The proof-of-concept work is done on the branch https://github.com/StarcounterPrefabs/Launcher/tree/mergecallback
This includes changing launcher-include. There is a separate task for that: https://github.com/StarcounterPrefabs/launcher-include/issues/9

Closing as done


Patch PHP 8.1 with ITIMER_REAL usage for timeout handling on Apple Silicon systems

Describe the feature

There a bug on Apple Silicon where max_execution_time reached too early.
This bug is described in this issue and fixed in this PR that has been merged in 8.2 & 8.3.
Because 8.1 is not maintained anymore, the fix will never be merged in this version.
Can the 8.1 (and maybe others) be dynamically patch using the Homebrew Formula ?

@jdecool Added in https://github.com/shivammathur/homebrew-php/pull/2765

Awesome.
Thanks @shivammathur


Changed to use RecognizeResult with status code and added ConfirmPrompt

Changed all response types to be an object with status code so validators can give feedback on validation violations
Added ConfirmPrompt with unit tests

    public Task Prompt(IBotContext context, string text, string speak = null)

I wouldn't define this on the base as it's going to have a radically different signature when you get to choices. You'll want to take in the list of choices along with options to control the formatting of the list.

Refers to: libraries/Microsoft.Bot.Builder.Prompts/BasePrompt.cs:64 in b59ccb7. [](commit_id = b59ccb7ee1050c5556ce9de1142f91776b7b0bb2, deletion_comment = False)

        context.Reply(activity);

You should probably ensure the activity has a type and then I'd conditionally set inputHint here if it's not specified.

Refers to: libraries/Microsoft.Bot.Builder.Prompts/BasePrompt.cs:76 in b59ccb7. [](commit_id = b59ccb7ee1050c5556ce9de1142f91776b7b0bb2, deletion_comment = False)

/// CurrencyPrompt recognizes currency expressions as float type

wrong name

Refers to: libraries/Microsoft.Bot.Builder.Prompts/NumberWithUnitPrompt.cs:27 in b59ccb7. [](commit_id = b59ccb7ee1050c5556ce9de1142f91776b7b0bb2, deletion_comment = False)

    public NumberPrompt(string culture, PromptValidator<NumberResult<T>> validator = null)

Ultimately you want to figure this out at recognize time so if anything this should be an argument on the recognize() method.

Refers to: libraries/Microsoft.Bot.Builder.Prompts/NumberPrompt.cs:25 in b59ccb7. [](commit_id = b59ccb7ee1050c5556ce9de1142f91776b7b0bb2, deletion_comment = False)

    protected NumberPrompt(IModel model, PromptValidator<NumberResult<T>> validator = null)

I don't support passing in the model on the JS side of things because I didn't see much value in it. The prompts don't do a ton so if you want to use a custom model just call parse() directly.   Or we could have a ModelPrompt that lets you work with models directly.

Refers to: libraries/Microsoft.Bot.Builder.Prompts/NumberPrompt.cs:31 in b59ccb7. [](commit_id = b59ccb7ee1050c5556ce9de1142f91776b7b0bb2, deletion_comment = False)

    public Task Prompt(IBotContext context, string text, string speak = null)

I can do that in classes which are derived from this by adding additional methods.  Are you saying that the functionality of Prompt() goes away with some prompt types?

In reply to: 370056056 [](ancestors = 370056056)

Refers to: libraries/Microsoft.Bot.Builder.Prompts/BasePrompt.cs:64 in b59ccb7. [](commit_id = b59ccb7ee1050c5556ce9de1142f91776b7b0bb2, deletion_comment = False)

    public Task Prompt(IBotContext context, string text, string speak = null)

Two part answer to that.
Part 1: when I designed the prompts library my intention was that you would only ever have a prompt() and recognize() method to keep things simple. You've deviated from that design so we're now out of sync. We can discuss the merits of my design separately but the fact is we're out of sync.
Part 2: yes. For both the confirm and choice prompts you need different arguments passed in and the "default" behavior of both those prompts should be different then the other prompts. By default you will want to include suggestedActions for both confirm and choice.  Sure you could just add new promptConfirm() and promptChoice() methods but now the developer needs to know that they should call prompt() for some prompts and something else for other prompts but design wise I chose to keep it simple and consistent by having the developer always just call prompt() and if need be I'll alter the signature of what you can pass the prompt() method to cover the expanded scope of what's possible.

In reply to: 370159044 [](ancestors = 370159044,370056056)

Refers to: libraries/Microsoft.Bot.Builder.Prompts/BasePrompt.cs:64 in b59ccb7. [](commit_id = b59ccb7ee1050c5556ce9de1142f91776b7b0bb2, deletion_comment = False)


Include Start logo

I would love to include a start logo for when I turn on Arduino, using the entire panel of LEDs.
The logo I have created already:
const byte StartLogoColors[9][3] = {{0, 0, 0}, {52, 115, 34}, {80, 167, 0}, {2, 178, 142}, {0, 165, 221}, {51, 66, 181}, {114, 41, 175}, {185, 30, 183}, {189, 17, 55}};
const byte StartLogo[8][40] =
{
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 1, 1, 0, 0, 2, 0, 2, 0, 0, 0, 3, 3, 3, 0, 4, 4, 4, 0, 0, 5, 0, 5, 5, 0, 5, 5, 0, 0, 0, 7, 0, 7, 0, 0, 8, 8, 8, 0, 0},
  {1, 0, 0, 1, 0, 2, 2, 0, 2, 0, 3, 0, 0, 0, 0, 0, 0, 0, 4, 0, 5, 5, 0, 5, 5, 0, 5, 0, 6, 0, 7, 7, 0, 7, 0, 0, 0, 0, 8, 0},
  {1, 1, 1, 1, 0, 2, 0, 0, 2, 0, 3, 0, 0, 0, 0, 0, 4, 4, 4, 0, 5, 0, 0, 5, 0, 0, 5, 0, 6, 0, 7, 0, 0, 7, 0, 0, 8, 8, 8, 0},
  {1, 0, 0, 0, 0, 2, 0, 0, 2, 0, 3, 0, 0, 0, 0, 4, 0, 0, 4, 0, 5, 0, 0, 5, 0, 0, 5, 0, 6, 0, 7, 0, 0, 7, 0, 8, 0, 0, 8, 0},
  {1, 0, 0, 1, 0, 2, 0, 0, 2, 0, 3, 0, 0, 0, 0, 4, 0, 0, 4, 0, 5, 0, 0, 5, 0, 0, 5, 0, 6, 0, 7, 0, 0, 7, 0, 8, 0, 0, 8, 0},
  {0, 1, 1, 0, 0, 2, 0, 0, 2, 0, 0, 3, 3, 3, 0, 0, 4, 4, 4, 0, 5, 0, 0, 5, 0, 0, 5, 0, 6, 0, 7, 0, 0, 7, 0, 0, 8, 8, 8, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
};

In void setup() I added a call to PrintLogoStartWithAnimation:
void setup()
{
  Serial.begin(115200);
  //randomSeed(analogRead(0));
  bande.begin();
  bande.setBrightness(luminosidad);
  printLogoStartWithAnimation(StartLogo, StartLogoColors);
  //printLogoWithAnimation(YtLogo, YtLogoColors);
  //print6DigitsNumberWithAnimation(0, 11, 0, 255, 255, 255, 1);
  refreshDisplay();
}

I have created printLogoStartWithAnimation:

If i<20, the logo is printed correctly, but the number of followers is wrong.
If i<5, the logo remains incomplete, but the number of followers is displayed correctly.

void printLogoStartWithAnimation(byte logo[][40], byte colors[][3])
{
  for(int i = 0; i < 20; i++)
  {
    printLogoStart(logo, colors, i);
    delay(50);
  }
}

I have created printLogoStart, with the possibility of including 40 LEDs in the array.
void printLogoStart(byte logo[][40], byte colors[][3], int animation = 4)
{
  for(int i = 0; i < 8; i++)
  {
    for(int j = 4 - animation; j < 6 + animation; j++)
    {
      for(int k = 0; k < 3; k++)
      {
        pannel[i][j][k] = colors[logo[i][j]][k];
      }
    }
  }
}

I would appreciate any help! Thank you very much!!

What do you mean by "I can't" ?


Audit modules with manually linking for RN 60 support

RN 60 introduced a new auto-linking scheme for native modules. As such, we should audit modules in which we have manual linking steps to see if they can be handled automatically in Flagship 9.
All of the following integrations are located in packages/flagship/src/lib/modules

[ ] android/react-native-adobe-analytics
[ ] android/react-native-camera
[ ] android/react-native-code-push
[ ] android/react-native-fcm
[ ] android/react-native-firebase
[ ] android/react-native-leanplum
[ ] android/react-native-navigation
[ ] android/react-native-sensitive-info
[ ] android/react-native-zendesk-chat
[ ] ios/react-native-adobe-analytics
[ ] ios/react-native-code-push
[ ] ios/react-native-firebase
[ ] ios/react-native-leanplum

react-native-adobe-analytics is no longer being maintained as of this year:
https://github.com/smalltownheroes/react-native-adobe-analytics
I did see that Adobe has their own React Native module:
https://github.com/adobe/react-native-acpanalytics
We could either fork and maintain react-native-adobe-analytics ourselves, or explore alternatives.

react-native-fcm has been deprecated and only seems to be used in fsengagement. We should convert it to use react-native-firebase.


Test net-kourier with non-default cluster suffix

In knative/networking#209 we allow the cluster suffix to be specified.
Once net-kourier tests are on KinD we can use a similar workflow to that of https://github.com/knative-sandbox/net-contour/actions/runs/296836515/workflow to test with a non-default cluster suffix.

We're doing this now!
https://github.com/knative-sandbox/net-kourier/blob/233c9ce347dde9fdb4252848d9cf747a9697c91d/.github/workflows/kind-e2e.yaml#L169


Include @types/ dependencies in dependencies not devDependencies

Describe the bug
Typescript packages using aws-cdk cannot find a declaration file for module 'yargs'
To Reproduce
Create a typescript package that requires aws-cdk.
mkdir repro && cd repro
echo "{}" > package.json
npm install<EMAIL_ADDRESS><EMAIL_ADDRESS>./node_modules/.bin/tsc --init
echo "import 'aws-cdk'" > index.ts
./node_modules/.bin/tsc

node_modules/aws-cdk/lib/settings.d.ts:1:24 - error TS7016: Could not find a declaration file for module 'yargs'. '/local/home/calebev/repro/node_modules/yargs/index.js' implicitly has an 'any' type.
  Try `npm install @types/yargs` if it exists or add a new declaration (.d.ts) file containing `declare module 'yargs';`

Typescript will type check libraries by default. It will fail checking aws-cdk because cdk does not include it's dependencies types in dependencies, it includes them in devDependencies.
Customers can fix this issue by

adding @types/yargs to their dependencies.
adding --skipLibCheck to their typescript options.

Expected behavior
There should not be any type errors in an effectively empty package. aws-cdk should include it's type dependencies in it's dependencies.
Version:

linux
javascript
0.34.0

I think in fact the real problem is that we should not be exporting symbols that depend on a particular 3P dependency. There is no actual need for they args declarations there (we can live with a much simpler, much more restrictive type here).


gem includes emacs lock file.

First, Thank you for your convenient gem!
I find font-awesome-rails-<IP_ADDRESS>.gem includes emacs lock file
'app/helpers/font_awesome/rails/#icon_helper.rb#' in the archive.
sugi@tempest:~/lib/rubygems/2.2/cache% tar vxf font-awesome-rails-<IP_ADDRESS>.gem --exclude metadata.gz --exclude checksums.yaml.gz -O | tar tz
data.tar.gz
LICENSE
README.md
Rakefile
app/assets/fonts/FontAwesome.otf
app/assets/fonts/fontawesome-webfont.eot
app/assets/fonts/fontawesome-webfont.svg
app/assets/fonts/fontawesome-webfont.ttf
app/assets/fonts/fontawesome-webfont.woff
app/assets/fonts/fontawesome-webfont.woff2
app/assets/stylesheets/font-awesome.css.erb
app/helpers/font_awesome/rails/#icon_helper.rb#        <==  here
app/helpers/font_awesome/rails/icon_helper.rb
lib/font-awesome-rails.rb
lib/font-awesome-rails/engine.rb
lib/font-awesome-rails/version.rb
test/dummy/app/assets/stylesheets/sass-import.css.sass
test/dummy/app/assets/stylesheets/scss-import.css.scss
test/dummy/app/assets/stylesheets/sprockets-require.css
test/dummy/app/controllers/pages_controller.rb
test/dummy/app/views/pages/icons.html.erb
test/dummy/config.ru
test/dummy/config/application.rb
test/dummy/config/boot.rb
test/dummy/config/environment.rb
test/dummy/config/initializers/secret_token.rb
test/dummy/config/routes.rb
test/dummy/log/test.log
test/font_awesome_rails_test.rb
test/icon_helper_test.rb
test/test_helper.rb

Yes, you're correct. Sorry about that. That looks like it was accidentally included from my development environment when I built the gem.
I don't plan on releasing a new version of the gem to fix this unless it's causing a problem that I'm not able to envision. However, we can probably take steps to prevent this kind of mistake in the future.  I've never been a fan of relying on the semi-standard approach of using git ls-files in the gemspec for building the manifest, but it might just be the cleanest approach..

Thanks again for this bug report. It should be fixed in the next release.


Point users to helm hub instead of the helm chart repo

I just wanted to propose that Users are directed directly to hub.helm.sh instead of the depreciated charts repo.

/cc @scottrigby


Refactor the specs that are making the build fail sporadically

Some assertions are making the build fail sporadically. It is because the array order matter in those assertions, when it should not.

:+1:


Added Event Calendar (@event-calendar/core)

Please don't add new cateogories or tags, make it work with what is already there 🙏

I checked the category and tags and it seems that there were only 2 extra tags that I already removed.


Add l2cap reconnection support on script part. Only Linux native part imlemented

Bluetooth connection can easily be dropped. In order to support automatic reconnection :

on linux native part : allow l2cap reconnection - default number of attempts = 5
on script part : add 'reconnect' 'connectionDrop' events to define a reconnection policy, for an example refer to https://github.com/Lahorde/node-sensortag

TODO other platform native implementation

Closing for now, until this can be also supported on OS X.


PROV & STORE: Don't decode keys in the 'file:' store loader

This makes the 'file:' store loader only read the file, and only decode
down to a base level binary format, and simply pass that blob of data
back to the OSSL_FUNC_store_load() object callback.
This offloads the decoding into specific OpenSSL types to libcrypto,
which takes away the issue of origins, which provider is it that holds
the key (or other future types of objects).
Because of this split, the 'file:' store loader needs a bit of extra code
to recognise binary formats other than DER, such as PVK and MSBLOB,
and pass those on to libcrypto as well.  ossl_store_handle_load_result()
can therefore no longer restrict its decoding of the passed data to be DER.
As a consequence, any store loader that handles some form of open file
data (such as a PEM object) can now simply pass that data back via
OSSL_FUNC_store_load()'s object callback.  As long as libcrypto has
access to a decoder that can understand the data, the appropriate
OpenSSL object will be generated for it, even if the store loader sits
in a different provider than any decoder or keymgmt.
For example, an LDAP store loader, which typically finds diverse PEM
formatted blobs in the database, can simply pass those back via the
object callback, and let libcrypto do the rest of the work.

Note that the PVK recognition is only tested with #15980 in place.

This should solve quite a bit of the problems we've seen with tpm2-openssl.  Not all the problems, but what remains should be possible to resolve on their side

When merged is this sufficient to close #15775 - or does more need to be done?

When merged is this sufficient to close #15775 - or does more need to be done?

#15775 isn't really relevant any more, as the TPM2 'file:' store loader has been dropped.

@mattcaswell spoke thusly:

When merged is this sufficient to close #15775 - or does more need to be done?

For all that I can see, modulo a weird TSS2 error memory error in some of the checks, it seems this works as expected

24 hours has passed since 'approval: done' was set, but as this PR has been updated in that time the label 'approval: ready to merge' is not being automatically set.  Please review the updates and set the label manually.

Merged
0550cdeb802a2462c4d59e0fc15a1f773054bc65 PROV & STORE: Don't decode keys in the 'file:' store loader
f40c5f2c53b9d5eec98993653c3d741b0226b697 PROV & STORE: Make the 'file:' store loader understand more binary formats


Add requested version to install error output

What this PR does / why we need it:
When installing a helm chart with incorrect version, the resulting error message is ambiguous:
$ helm repo add bitnami https://charts.bitnami.com/bitnami
$ helm repo update
$ helm3 install test bitnami/nginx --version 1.19.1
Error: failed to download "bitnami/nginx" (hint: running `helm repo update` may help)

$ helm3 search repo bitnami/nginx
NAME                            	CHART VERSION	APP VERSION	DESCRIPTION
bitnami/nginx                   	6.1.0        	1.19.1     	Chart for the nginx server

This is patch improves the error message to read:
$ helm3 install test bitnami/nginx --version 1.19.1
Error: failed to download "bitnami/nginx" at version "1.19.1" (hint: running `helm repo update` may help)

If applicable:

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

In this simplified example it seem obvious. In a CI context when the user may specify the version indirectly, it is a tremendous help when the version is in the actual error message. It may help with obvious typos as well as it hints that the error may not be in the repository url but rather the version itself.

I think this is a nice improvement, thank you.
I'll need input from an other maintainer to know if changing an error output is ok for backwards-compatibility.
How come the PR mentions an improvement with the install command but the test modified is for the show command?
That being said, I think this improvement would be nice for the show command (maybe update and pull too?)

Hey @marckhouzam, mb you can take a loot into very similar PR (versions in dependency update) - https://github.com/helm/helm/pull/8650

@marckhouzam Good point on the backwards compatibility. I figured it was a human friendly error message which should not be parsed, but I can see how it could break some CI flows.
With regards to the naming: I updated the format (with unconditional change at first) and the only failing test case was the one in show_test.go. Afterwards I proceeded with adding the condition as to not output at version "" for unset version, which would be worse for backwards compatibility.
I agree the unit test should be in a different test case / file. The current test (before this MR) is more of a side effect of the overall pre-release package test. Is this in scope of this MR or is it preferable to merge this as is and refactor the tests in a separate MR?

I agree the unit test should be in a different test case / file. The current test (before this MR) is more of a side effect of the overall pre-release package test. Is this in scope of this MR or is it preferable to merge this as is and refactor the tests in a separate MR?

@Mikulas I'm not sure I understand which test you are referring to here.  However I think that as long as we have a test covering the new code it should be enough. No need to refactor in this PR.  So if it's too complicated to add a test on the install and that the one on show covers the change, then it's ok for me.

Changing error strings is fine. Changing concrete error types is not okay.
Since this is just adding more information to an error message, this is fine.

Sorry for the delay @Mikulas and thank you for the contribution!  This will be better for users.


[#6253] Cleanup Assembly

Codecov Report

Merging #6328 into master will decrease coverage by 0.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #6328      +/-   ##
==========================================
- Coverage   39.59%   39.57%   -0.02%
==========================================
  Files        3065     3065
  Lines       91401    91401
  Branches    11836    11836
==========================================
- Hits        36186    36174      -12
- Misses      52233    52244      +11
- Partials     2982     2983       +1

Impacted Files
Coverage Δ

...pc/server/LoggingServerMessageListenerFactory.java
90% <0%> (-10%)
:arrow_down:

...p/pinpoint/rpc/stream/StreamChannelRepository.java
75% <0%> (-10%)
:arrow_down:

...corp/pinpoint/rpc/stream/StreamChannelManager.java
60.91% <0%> (-5.75%)
:arrow_down:

...rc/main/java/com/navercorp/pinpoint/test/Item.java
70% <0%> (-3.34%)
:arrow_down:

...tor/metric/datasource/DefaultDataSourceMetric.java
75% <0%> (-3.13%)
:arrow_down:

...vercorp/pinpoint/web/vo/ApplicationAgentsList.java
66.66% <0%> (-2.57%)
:arrow_down:

...navercorp/pinpoint/rpc/common/SocketStateCode.java
82.92% <0%> (-2.44%)
:arrow_down:

...java/com/navercorp/pinpoint/rpc/DefaultFuture.java
72.5% <0%> (-1.67%)
:arrow_down:

...point/rpc/client/DefaultPinpointClientHandler.java
72.4% <0%> (+0.32%)
:arrow_up:

...orp/pinpoint/rpc/server/DefaultPinpointServer.java
79.92% <0%> (+1.05%)
:arrow_up:

... and 1 more

Continue to review full report at Codecov.

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


Add ListOps exercise

This is the first time I add an exercise. I followed the walkthrough at https://exercism.org/docs/building/tracks/practice-exercises.
Do not hesitate to tell me if anything is wrong. I may try to implement other exercises so better be right from the beginning.
Some notes:

I inspired myself from the javaScript track https://github.com/exercism/javascript/blob/main/exercises/practice/list-ops, but they are creating a "class" to represent the string, on this part I decided to stick closer to my understanding of the instructions and followed what the java track did https://github.com/exercism/java/blob/main/exercises/practice/list-ops/src/main/java/ListOps.java (Note that the Go track also takes the "class" approach too)
for the example.php I tried to follow the instructions (not using std's functions), so maybe I could also put it as exemplar (with some added phpdoc)
[x] Should I add template documentation for the callable received in filter, map, foldl and foldr ? => Added to ease completion of the exercise
[x] Should I update the instructions ? => Added an "append" file to add some context around callables
[x] The PHPCS warnings are for line length in @testdox comments, how should I go to fix them ? => I do not think it is relevant to fix them here
[x] There is no task for this exercise, should I create them ? => I may do it in an up-comming Pull Request, but I do not think it is that necessary
[x] I used configlet to generate the exercise, it looks like this created a huge diff to config.json should I revert it to only add the relevant part for list-ops ? => I kept the diff as small as possible here
[x] Which level of difficulty is this exercise ? => Hard (7)

@neenjaw I put you as a reviewer as it looks like you are the maintainer for the exercises.

Thanks for your contribution! I'm not a maintainer, but have opinions on some of your questions.

Should I add template documentation for the callable received

Let students figure that out to add to the difficulty. Or reduce difficulty by providing it. Both options are OK.

Should I update the instructions ?

Please don't. They are synced to the problem specifications. If you would like to add PHP specific instructions (like the tasks you suggested), you can add exercises/practice/list-ops/.docs/instructions.append.md.

The PHPCS warnings are for line length

I suggest to generally suppress warnings by adding -n to the command in the shell scripts. Or adding <arg value="n" /> to phpcs-php.xml. Or merging #591, which also would allow to drop the huge comments about strict types in example solution and tests.

I used configlet to generate the exercise, it looks like this created a huge diff to config.json should I revert it to only add the relevant part for list-ops?

I would recommend doing so. Or better: Reformat config.json in another MR, e.g. using configlet fmt.

Which level of difficulty is this exercise ?

I see it as hard. The track has no (I haven't seen any, yet) static methods around, only a planned concept about it. Functional programming as such is not very common in this track, too. I haven't seen a concept for anonymous functions nor use of them in examples, yet. So, hard would be my choice.

Thank you for your feedback @mk-mxp !

Let students figure that out to add to the difficulty. Or reduce difficulty by providing it. Both options are OK.

Okay, I added it so it should be easier to learn things thanks to this exercise.

Please don't. They are synced to the problem specifications. If you would like to add PHP specific instructions (like the tasks you suggested), you can add exercises/practice/list-ops/.docs/instructions.append.md.

Okay, I did add a file to explain "callable". I don't intend on adding tasks for now at least.

I suggest to generally suppress warnings by adding -n to the command in the shell scripts. Or adding  to phpcs-php.xml. Or merging https://github.com/exercism/php/pull/591, which also would allow to drop the huge comments about strict types in example solution and tests.

I think you approach is right. I will let it for another Pull Request.

I see it as hard. The track has no (I haven't seen any, yet) static methods around, only a planned concept about it. Functional programming as such is not very common in this track, too. I haven't seen a concept for anonymous functions nor use of them in examples, yet. So, hard would be my choice.

Okay, I put it at 7 for now. This may be too high though. But in fact if none of the concepts are explained earlier it make sense.

Just thinking @mk-mxp, maybe I can just remove the class thing and have the methods in the global scope, that would make the exercise way easier.

list-ops is the next week exercise, does anyone have time to review this ?
I can merge it, but I would prefer a review before as this is the first time I contribute a full exercise. Once this is merged I will most likely address all the remaining exercises from 48in24 for the php track.

@homersimpsons We will get that merged in time. I think I need too long to get #591 merged. Could you add <arg value="n" /> to phpcs-php.xml, so the CI is fixed and re-run?
I'll look at your code again this weekend. If I remember correctly there were no show stoppers in it.

Could you add  to phpcs-php.xml, so the CI is fixed and re-run?

done

Note that the job "Configlet Generate / configlet-generate (pull_request)" is failing because it is trngi to pull the branch from this repository instead of from my fork ...

Note that the job "Configlet Generate / configlet-generate (pull_request)" is failing because it is trngi to pull the branch from this repository instead of from my fork ...

I need to investigate, what configlet generate changes and wants to commit. I haven't expected that.

Note that the job "Configlet Generate / configlet-generate (pull_request)" is failing because it is trngi to pull the branch from this repository instead of from my fork ...

@homersimpsons So you have been faster than me typing...anyways, the problem was:
Your local branch main needs to be updated to match exercism/php:main, then you must rebase your exercise-list-ops branch onto your main. configlet compares your /exercises/concept/lasagna/.docs/introduction.md to the current exercism/php:main and sees the need for an update. That's what the CI tries to commit, but that must not be done.

Thanks for contributing! Very nice work...


Unable to reach Kubernetes API endpoint (or anything, really) on fresh install

On a fresh Kubernetes install, I have:

initialized a new cluster with 'kubeadm' with a single controller node and 3 workers.
installed Calico using the "50 nodes or less, kubernetes data store" guide.

The nodes did come up as "ready" but the calico-node controller and basically any other pod has no connectivity, apparently.
I cannot ping from a pod, or make a SSL connection to the Kubernetes API endpoint.
Expected Behavior
Networking should work.  :)
Current Behavior

Possible Solution

Steps to Reproduce (for bugs)

install kubernetes
install calico using the URI from https://docs.projectcalico.org/manifests/calico.yaml, unchanged.

Context
Nothing works.
Your Environment
Details:

Nodes live in <IP_ADDRESS>/16 space, and have addresses of 10.43.100.[1-4]
Service CIDR <IP_ADDRESS>/16
Pod CIDR as defined in kubeadm: <IP_ADDRESS>/16
One interface on all nodes (eth0)

Output of 'kubectl get nodes':
NAME                     STATUS   ROLES    AGE    VERSION   INTERNAL-IP   EXTERNAL-IP   OS-IMAGE                       KERNEL-VERSION   CONTAINER-RUNTIME
kubepi01.rpi.flame.org   Ready    master   106m   v1.18.4   <IP_ADDRESS>   <none>        Debian GNU/Linux 10 (buster)   5.4.42-v8+       docker://19.3.11
kubepi02.rpi.flame.org   Ready    worker   105m   v1.18.4   <IP_ADDRESS>   <none>        Debian GNU/Linux 10 (buster)   5.4.42-v8+       docker://19.3.11
kubepi03.rpi.flame.org   Ready    worker   104m   v1.18.4   <IP_ADDRESS>   <none>        Debian GNU/Linux 10 (buster)   5.4.42-v8+       docker://19.3.11
kubepi04.rpi.flame.org   Ready    worker   104m   v1.18.4   <IP_ADDRESS>   <none>        Debian GNU/Linux 10 (buster)   5.4.42-v8+       docker://19.3.11

Output of calicoctl get nodes:
NAME                     ASN       IPV4             IPV6
kubepi01.rpi.flame.org   (64512)   <IP_ADDRESS>/16
kubepi02.rpi.flame.org   (64512)   <IP_ADDRESS>/16
kubepi03.rpi.flame.org   (64512)   <IP_ADDRESS>/16
kubepi04.rpi.flame.org   (64512)   <IP_ADDRESS>/16

get pods:
NAMESPACE     NAME                                             READY   STATUS             RESTARTS   AGE
kube-system   calico-kube-controllers-58b656d69f-g8w5d         0/1     CrashLoopBackOff   14         50m
kube-system   calico-node-6rgvs                                1/1     Running            0          54m
kube-system   calico-node-kgw99                                1/1     Running            0          55m
kube-system   calico-node-kr2t5                                1/1     Running            0          55m
kube-system   calico-node-wfvsq                                1/1     Running            0          54m
kube-system   calicoctl                                        1/1     Running            0          95m
kube-system   coredns-66bff467f8-lf4vq                         0/1     Running            0          110m
kube-system   coredns-66bff467f8-wmptd                         0/1     Running            0          110m
kube-system   etcd-kubepi01.rpi.flame.org                      1/1     Running            0          111m
kube-system   kube-apiserver-kubepi01.rpi.flame.org            1/1     Running            0          111m
kube-system   kube-controller-manager-kubepi01.rpi.flame.org   1/1     Running            0          111m
kube-system   kube-proxy-4257h                                 1/1     Running            0          109m
kube-system   kube-proxy-fjcp5                                 1/1     Running            0          109m
kube-system   kube-proxy-kqrfn                                 1/1     Running            0          110m
kube-system   kube-proxy-z2t42                                 1/1     Running            0          109m
kube-system   kube-scheduler-kubepi01.rpi.flame.org            1/1     Running            0          111m

I reset the entire state (including all iptables content) and tried again.  Same result, although coredns does come up now.
It seems that the pod cannot reach the world (my main site router, <IP_ADDRESS>, or other external addresses such as <IP_ADDRESS> for DNS) and calico-kube-controllers still cannot access the Kubernetes API.

From <IP_ADDRESS> node, routes do exist to three pods I created:
root@kubepi03:~#ip route get <IP_ADDRESS>
<IP_ADDRESS> dev cali6854d2a2ae4 src <IP_ADDRESS> uid 0
    cache
root@kubepi03:~# ip route get <IP_ADDRESS>
<IP_ADDRESS> via <IP_ADDRESS> dev eth0 src <IP_ADDRESS> uid 0
    cache
root@kubepi03:~# ip route get <IP_ADDRESS>
<IP_ADDRESS> via <IP_ADDRESS> dev eth0 src <IP_ADDRESS> uid 0
    cache

<IP_ADDRESS> is a pod on kubepi03, <IP_ADDRESS> is on kubepi02, and <IP_ADDRESS> is on kubepi04.
Running ping from the node itself does not work.
I can reach the service address (<IP_ADDRESS> in my case) for Kubernetes from any node, just not from all pods, and no pods seem to have external connectivity.

Closing.  This is due to something on Raspbian 64-bit, and I'm not sure what.  Ubuntu 20.04 on the same hardware with the same setup just worked out of the box, although I can't detect the difference.


Why not propagate model update events?

That would be super useful. Shall I do a PR?
https://github.com/gwenaelp/vfg-field-array/blob/5d0a1e3e36c442e389dff0ff9e62aea7f6b1eda6/src/components/field-array.vue#L189

Yes, definitely! It would be amazing!
Please use commitizen for the commit message, as i'd like to have a decent changelog for the future :)
Thanks in advance!

How about this: https://github.com/gwenaelp/vfg-field-array/pull/14


Bump the used gitops action version to v5

Type of Change

[ ] Bugfix
[x] Enhancement / new feature
[ ] Refactoring
[ ] Documentation

Description
Use the new Gitops Action version with Artifactory as the new default.

Should we update the default value for docker-image?

yes :)


Enhance AAD Provider and Rego Code to automate checks for policy MS.AAD.3.3v1

🗣 Description
Updated AAD Rego code  to check for MS.AAD.3.3v1: If Phishing-resistant MFA has not been enforced yet and Microsoft Authenticator is enabled, it SHALL be configured to show login context information.
Closes #410
Closes #1020
Changes in detail:

To code this issue for policy 3.3, we needed to retrieve the authentication method configurations that were already being returned by an existing ScubaGear cmdlet Get-MgBetaPolicyAuthenticationMethodPolicy for policies 3.4 & 3.5 but the JSON structure had to be modified to support all three policies.
The Rego was updated for policies 3.4 and 3.5 to read from the adjusted JSON structure. Unit tests and functional tests were adjusted accordingly.
Rego policy 3.5 was adjusted since it was coded wrong - when the policy migration state is not migrationComplete it should have a Criticality of Shall/Not-Implemented to align with the baseline requirement. This results in an N/A in the report Result column.
Products.Tests.ps1 was modified to support the case when a policy (e.g. 3.3) is N/A but has a tailored Details message instead of the generic "This product does not currently have the capability to check compliance for this policy" which only makes sense in some scenarios but not for policy 3.3.
The Rego for new policy implementation 3.3 was coded. Unit tests and functional tests were coded as well.

💭 Motivation and context
Previously MSAAD.3.1v1 was not being checked by ScubaGear. This change adds automation by checking if MS Authenticator has the appropriate context information enabled.

🧪 Testing
Tested against E5/G5 tenant to confirm 3.3v1 passes/fails when the settings for Microsoft Authenticator are changed.

✅ Pre-approval checklist

[x] This PR has an informative and human-readable title.
[x] PR targets the correct parent branch (e.g., main or release-name) for merge.
[x] Changes are limited to a single goal - eschew scope creep!
[x] Changes are sized such that they do not touch excessive number of files.
[x] All future TODOs are captured in issues, which are referenced in code comments.
[x] These code changes follow the ScubaGear content style guide.
[x] Related issues these changes resolve are linked preferably via closing keywords.
[x] All relevant type-of-change labels added.
[x] All relevant project fields are set.
[x] All relevant repo and/or project documentation updated to reflect these changes.
[x] Unit tests added/updated to cover PowerShell and Rego changes.
[x] Functional tests added/updated to cover PowerShell and Rego changes.
[x] All relevant functional tests passed.
[ ] All automated checks (e.g., linting, static analysis, unit/smoke tests) passed.

✅ Pre-merge checklist

[ ] PR passed smoke test check.

[ ] Feature branch has been rebased against changes from parent branch, as needed
Use Rebase branch button below or use this reference to rebase from the command line.

[ ] Resolved all merge conflicts on branch

[ ] Notified merge coordinator that PR is ready for merge via comment mention

✅ Post-merge checklist

[ ] Feature branch deleted after merge to clean up repository.
[ ] Verified that all checks pass on parent branch (e.g., main or release-name) after merge.

@ssatyapal123

You need to go through the pre-approval checklist at the top of the PR
Your branch is out of date with the main branch. Rebase.
Functional tests are missing so create a separate issue and we will add those in the next release

Nice work.

thx

@nanda-katikaneni - ready for merge


[popup windows] popup attached to text property stays visible even when text is deleted with "cc"

Describe the bug
A popup window attached to a text property might remain visible even when the text to which it's attached is deleted; if we press cc.
To Reproduce
Run this shell command:
vim -Nu NONE -S <(cat <<'EOF'
    vim9
    setline(1, 'the quick brown fox jumps over the lazy dog')
    var buf = bufnr('%')
    prop_type_add('textprop', {bufnr: buf, highlight: 'Search'})
    prop_add(1, 5, {type: 'textprop', length: 5, bufnr: buf})
    popup_create('attached to quick', {textprop: 'textprop', highlight: 'ErrorMsg'})
    feedkeys('cc', 'ntx')
EOF
)

The popup window displaying attached to quick is visible.
Expected behavior
The popup window is not visible because the text to which it was attached has been deleted.
Environment

Vim version: 8.2 Included patches: 1-2397
OS: Ubuntu 16.04.7 LTS
Terminal: xterm(363)

Additional context
If we press C instead of cc, the cursor being at the start of the line, the popup is correctly closed.
vim9
setline(1, 'the quick brown fox jumps over the lazy dog')
var buf = bufnr('%')
prop_type_add('textprop', {bufnr: buf, highlight: 'Search'})
prop_add(1, 5, {type: 'textprop', length: 5, bufnr: buf})
popup_create('attached to quick', {textprop: 'textprop', highlight: 'ErrorMsg'})
feedkeys('C', 'ntx')

no visible popup

This is inconsistent.  When deciding whether the popup is to be closed, it should not matter how we've deleted the text (C from start of line or cc).  What should matter is which text we have deleted.  Provided that we delete the text to which a popup is attached, then the latter should be automatically closed.

Workaround: remap cc to C:
vim9

nno cc <cmd>call <sid>CC()<cr>

def CC()
    exe 'norm! 0' .. v:count .. 'C'
    startinsert
    FixIndent()
enddef

def FixIndent()
    var splitted_cinkeys: list<string> = &cinkeys->split(',')
    var n: number = splitted_cinkeys->match('^!')
    if n == -1
        return
    endif
    var key: string = splitted_cinkeys[n]->trim('!', 1)
    if key =~ '^\^'
        key = substitute(key, '^\^', '<c-', '') .. '>'
        key = eval('"\' .. key .. '"')
    endif
    var cindent_was_off: bool = !&l:cindent
    setl cindent
    feedkeys(key, 'int')
    if cindent_was_off
        var buf: number = bufnr('%')
        TurnOffCindent = () => bufnr('%') == buf && !!execute('setl nocindent')
        au SafeState * ++once TurnOffCindent()
    endif
enddef

var TurnOffCindent: func

Since this FixIndent() function is quite long, and I'm already using it to fix https://github.com/vim/vim/issues/7719, I'm going to turn it into an exportable function and import it when necessary, to avoid duplicating code.

Workaround: remap cc to C:
vim9

nno cc <cmd>call <sid>CC()<cr>

def CC()
    exe 'norm! 0' .. v:count .. 'C'
    startinsert
    FixIndent()
enddef

def FixIndent()
    var splitted_cinkeys: list<string> = &cinkeys->split(',')
    var n: number = splitted_cinkeys->match('^!')
    if n == -1
        return
    endif
    var key: string = splitted_cinkeys[n]->trim('!', 1)
    if key =~ '^\^'
        key = substitute(key, '^\^', '<c-', '') .. '>'
        key = eval('"\' .. key .. '"')
    endif
    var cindent_was_off: bool = !&l:cindent
    setl cindent
    feedkeys(key, 'int')
    if cindent_was_off
        var buf: number = bufnr('%')
        TurnOffCindent = () => bufnr('%') == buf && !!execute('setl nocindent')
        au SafeState * ++once TurnOffCindent()
    endif
enddef

var TurnOffCindent: func

Since this FixIndent() function is quite long, and I'm already using it to fix https://github.com/vim/vim/issues/7719, I'm going to turn it into an exportable function and import it when necessary, to avoid duplicating code.

Same issue with dd, but only if there's no line before or after; i.e. in a buffer with a single line.

Same issue with dd, but only if there's no line before or after; i.e. in a buffer with a single line.

https://github.com/vim/vim/issues/5763 might be related.


notification support

Can I be notified when the application is running in background?

Hi, Sorry for late reply. I just provide a control you should use it and enhance according to your app requirement. chat simulator is just an example app.


Feature/more performant number grammar

Make the number DTMF grammar more performant for LumenVox.  Note that the more re-use we employ with rulerefs, the fewer cycles that their FST has to create.
Opening this for peer review along with the open source community.

@gfaza Can you review this for me?

Coverage decreased (-0.4%) to 98.339% when pulling 1cbe3f7534366f27247cea542d227b9f2e94982f on sfgeorge:feature/more-performant-number-grammar into 0c4f434e3ff99a764987869630624872cac39822 on benlangfeld:develop.

Does Lumenvox not have their own pare-compiled built-in grammar for this? These grammars were intended for use with Punchblock's recogniser.

tl;dr Here's a an attempt at a rationale for this PR.  Let me know whether or not this sounds reasonable and if so I'm happy to make the little tweaks to make hound-ci happy.  Thanks man!

Does Lumenvox not have their own pare-compiled built-in grammar for this? These grammars were intended for use with Punchblock's recogniser.

Good question there. LumenVox does have a builtin for this, but their builtins are compiled and cached on demand, and are optimized no more than any custom grammar that you pass in (this is good).  So one's custom grammars are optimized and cached with the same priority as their own builtins, which is nice.
One benefit for using a ruby_speech number dtmf grammar is that for customers who sometimes use ASR and sometimes use DTMF-only (such as myself), there is a consistent number dtmf grammar being used.
Additionally, having more control over your grammars, such as when you use ruby_speech, is especially helpful when there are issues with the builtins provided by vendors.  Due to performance problems I encountered, I can share that LumenVox support has recommended to me to stop using their builtin number grammar.  They encourage customers to use finite sequences rather than infinite whenever possible.  Their builtin number grammar itself is currently inifite and can cause trouble.  Now, this PR continues to support an infinite series for a number question, but there are 2 reasons why this is still helpful:

The key component to this PR is the fact that the "digit_series" ruleref is re-used.  One might think that the level of abstraction added by rulerefs would slow down a parser.  In the case of LumenVox, it is quite the opposite - the parser that generates a FST (Finite State Transducer / Finite State Automaton) only has to analyze a given ruleref once, and subsequent references to that same ruleref are recognized to be the same, preventing the state tree from growing even further.  This change alone makes the number grammar perform much better under LumenVox, all without changing
The API for RubySpeech::GRXML::Builtins.number and its use in Punchblock have superb support for passing in future options such as maxlength, much like to how RubySpeech::GRXML::Builtins.decimal already supports maxlength/minlength.  It would be straightforward in the future to mitigate parser issues by adding options to specify a finite limit on the integer length and decimal length of a number grammar.  The ideal length limit will likely vary widely per customer or application - and even more so why an API-powered grammar builder (achem, ruby_speech) is well-suited to solving this problem rather than a global and untouchable builtin.

To be fair, LumenVox is not the only vendor who recommends/steers toward a finite limit on a number sequence.  As seen in the Voxeo docs:

number - Specifies a voice or DTMF input grammar that recognizes numeric input. For Prophecy ASR, the maximum length of detectable digits is 16 when using this built-in grammar.

side note: Rebasing just to make sure that tests still pass following the nokogiri 1.7.0 release.  No recent changes to this PR.

Coverage decreased (-0.4%) to 98.339% when pulling 47d2ee741c2973bfec17447cbaf0b19d242ecf32 on sfgeorge:feature/more-performant-number-grammar into 4586e30531a4d1bb01e4f4eaa21c0e8c945c942f on benlangfeld:develop.

Coverage decreased (-0.4%) to 98.339% when pulling 6dddddb65a740bda7020336eb9954d0ea069429f on sfgeorge:feature/more-performant-number-grammar into 4586e30531a4d1bb01e4f4eaa21c0e8c945c942f on benlangfeld:develop.

Coverage decreased (-0.4%) to 98.339% when pulling 6dddddb65a740bda7020336eb9954d0ea069429f on sfgeorge:feature/more-performant-number-grammar into 4586e30531a4d1bb01e4f4eaa21c0e8c945c942f on benlangfeld:develop.

Coverage decreased (-0.4%) to 98.339% when pulling a8c9ca1b728e5156e0567c2bb8539f6a0e389c75 on sfgeorge:feature/more-performant-number-grammar into 4586e30531a4d1bb01e4f4eaa21c0e8c945c942f on benlangfeld:develop.

Coverage decreased (-0.4%) to 98.341% when pulling 6cfe028f0f5642a19ab64da03d71278268885b89 on sfgeorge:feature/more-performant-number-grammar into 4586e30531a4d1bb01e4f4eaa21c0e8c945c942f on benlangfeld:develop.

Rebasing in order to get an accurate code coverage delta.

Coverage decreased (-0.8%) to 98.099% when pulling 1d2ceb353541d3dd7c98f8c0820bc20c11384218 on sfgeorge:feature/more-performant-number-grammar into 64a843109202249cf77bdba24e531067f691de9e on adhearsion:develop.

Coverage decreased (-0.2%) to 98.229% when pulling fafa9835ce856376cca4e9b931719aa392048c4b on sfgeorge:feature/more-performant-number-grammar into faa625e6d45227e2c97ac08216e812975693412e on adhearsion:develop.

Coverage decreased (-0.2%) to 98.229% when pulling fafa9835ce856376cca4e9b931719aa392048c4b on sfgeorge:feature/more-performant-number-grammar into faa625e6d45227e2c97ac08216e812975693412e on adhearsion:develop.

Coverage decreased (-0.2%) to 98.229% when pulling fafa9835ce856376cca4e9b931719aa392048c4b on sfgeorge:feature/more-performant-number-grammar into faa625e6d45227e2c97ac08216e812975693412e on adhearsion:develop.

Coverage decreased (-0.2%) to 98.229% when pulling fafa9835ce856376cca4e9b931719aa392048c4b on sfgeorge:feature/more-performant-number-grammar into faa625e6d45227e2c97ac08216e812975693412e on adhearsion:develop.

Coverage decreased (-0.2%) to 98.229% when pulling fafa9835ce856376cca4e9b931719aa392048c4b on sfgeorge:feature/more-performant-number-grammar into faa625e6d45227e2c97ac08216e812975693412e on adhearsion:develop.

Coverage decreased (-0.2%) to 98.229% when pulling fafa9835ce856376cca4e9b931719aa392048c4b on sfgeorge:feature/more-performant-number-grammar into faa625e6d45227e2c97ac08216e812975693412e on adhearsion:develop.

Coverage decreased (-0.2%) to 98.229% when pulling fafa9835ce856376cca4e9b931719aa392048c4b on sfgeorge:feature/more-performant-number-grammar into faa625e6d45227e2c97ac08216e812975693412e on adhearsion:develop.

Coverage decreased (-0.2%) to 98.229% when pulling fafa9835ce856376cca4e9b931719aa392048c4b on sfgeorge:feature/more-performant-number-grammar into faa625e6d45227e2c97ac08216e812975693412e on adhearsion:develop.

Coverage increased (+0.8%) to 99.143% when pulling<PHONE_NUMBER>f29a45cd9fe8332fcf6750f2e398e0 on sfgeorge:feature/more-performant-number-grammar into faa625e6d45227e2c97ac08216e812975693412e on adhearsion:develop.

Coverage increased (+0.8%) to 99.143% when pulling<PHONE_NUMBER>f29a45cd9fe8332fcf6750f2e398e0 on sfgeorge:feature/more-performant-number-grammar into faa625e6d45227e2c97ac08216e812975693412e on adhearsion:develop.

@benlangfeld What are your thoughts on this PR?  Does my reasoning sound legit? 😁

@benlangfeld Is it okay to merge this?

Coverage increased (+0.6%) to 99.032% when pulling 18d054e13b4398932448e483768a4565e4bf0a00 on sfgeorge:feature/more-performant-number-grammar into e2fc590d6bfd8dbdf96a8833b077f88700aba926 on adhearsion:develop.

Coverage increased (+0.6%) to 99.088% when pulling ddeafffb74d022d4bfb97b634b0b124c65fa5bac on sfgeorge:feature/more-performant-number-grammar into 0a85675bec3f7c0ab7752d1cc8b758e06f29a193 on adhearsion:develop.

Coverage increased (+0.6%) to 99.088% when pulling ddeafffb74d022d4bfb97b634b0b124c65fa5bac on sfgeorge:feature/more-performant-number-grammar into 0a85675bec3f7c0ab7752d1cc8b758e06f29a193 on adhearsion:develop.

Coverage increased (+0.6%) to 99.088% when pulling ddeafffb74d022d4bfb97b634b0b124c65fa5bac on sfgeorge:feature/more-performant-number-grammar into 0a85675bec3f7c0ab7752d1cc8b758e06f29a193 on adhearsion:develop.

Coverage increased (+0.6%) to 99.088% when pulling ddeafffb74d022d4bfb97b634b0b124c65fa5bac on sfgeorge:feature/more-performant-number-grammar into 0a85675bec3f7c0ab7752d1cc8b758e06f29a193 on adhearsion:develop.

Coverage increased (+0.6%) to 99.088% when pulling ddeafffb74d022d4bfb97b634b0b124c65fa5bac on sfgeorge:feature/more-performant-number-grammar into 0a85675bec3f7c0ab7752d1cc8b758e06f29a193 on adhearsion:develop.

Coverage increased (+0.6%) to 99.088% when pulling ddeafffb74d022d4bfb97b634b0b124c65fa5bac on sfgeorge:feature/more-performant-number-grammar into 0a85675bec3f7c0ab7752d1cc8b758e06f29a193 on adhearsion:develop.

Thank you!


Missing button in form

Overview
The  page contains a form but there is no submit button.

Action Items
The form should have a submit button

Resources/Instructions
https://www.w3.org/TR/WCAG20-TECHS/H32

@bhaggya , When I run Axe tools, I am not seeing this issue.

Issue appears to be fixed


Hello, the problem is about the "remap" function

Hi, i look the file named utils.py which the path is highway_env/envs/common/utils.py, in the file, i noticed that define a function named "remap", and  in the highway_env.py, the "remap" function is used to caculate the reward , but i can't understand the reward function which in highway_env.py 81 lines, i don't understand why the reward function is this form, maybe it‘s normalization ？I' don't think my idea is right, can you tell me ? Thanks for you reply!

You are absolutely right, it is a normalization to the [0, 1] interval, through a linear mapping. Maybe the word remap is a poor choice here.

You are absolutely right, it is a normalization to the [0, 1] interval, through a linear mapping. Maybe the word remap is a poor choice here.

Thanks，but i don‘t know why normalization？I just guess，maybe in order to let the reward function convergence？I notice that when i use the baseline.json and highway_env to train the agent, Each episdoe score is positive，maybe the reward function has some negative numbers which will better to train the agent，this is not necessarily right，i just guess，thank you ！

In theory, if you scale or add on offset to the reward function you do not change the optimal policy.
In practice, deep reinforcement learning algorithms train better if the rewards are normalized into [-1, 1] or [0, 1] rather than, say, [-30, 100].

In theory, if you scale or add on offset to the reward function you do not change the optimal policy.
In practice, deep reinforcement learning algorithms train better if the rewards are normalized into [-1, 1] or [0, 1] rather than, say, [-30, 100].

Thanks for you help ！I wish you success in your studies！


IntelliJ mentions in templates

cc @timsneath @devoncarew

This will be partially addressed by https://github.com/flutter/flutter/pull/23665. We'll still want to update module/common/lib/main.dart.tmpl.


Using hexo.locals as function throws

After installing I receive following:
ERROR Plugin load failed: hexo-livereload
TypeError: object is not a function
    at /home/kuzzmi/Projects/blog/node_modules/hexo-livereload/index.js:18:6
    at /home/kuzzmi/Projects/blog/node_modules/hexo/lib/hexo/index.js:229:12
    at tryCatcher (/home/kuzzmi/Projects/blog/node_modules/hexo/node_modules/bluebird/js/main/util.js:24:31)
    at Promise._settlePromiseFromHandler (/home/kuzzmi/Projects/blog/node_modules/hexo/node_modules/bluebird/js/main/promise.js:454:31)
    at Promise._settlePromiseAt (/home/kuzzmi/Projects/blog/node_modules/hexo/node_modules/bluebird/js/main/promise.js:530:18)
    at Promise._settlePromises (/home/kuzzmi/Projects/blog/node_modules/hexo/node_modules/bluebird/js/main/promise.js:646:14)
    at Async._drainQueue (/home/kuzzmi/Projects/blog/node_modules/hexo/node_modules/bluebird/js/main/async.js:175:16)
    at Async._drainQueues (/home/kuzzmi/Projects/blog/node_modules/hexo/node_modules/bluebird/js/main/async.js:185:10)
    at Immediate.Async.drainQueues [as _onImmediate] (/home/kuzzmi/Projects/blog/node_modules/hexo/node_modules/bluebird/js/main/async.js:15:14)
    at processImmediate [as _immediateCallback] (timers.js:358:17)

I changed this code:
hexo.locals({
  livereload_js: function(){
    return serverUrl + '/livereload.js';
  }
});

to this:
hexo.locals.set('livereload_js', function(){
    return serverUrl + '/livereload.js';
});

No errors, but plugin is still not working.
I'm digging deeper to know what happens here, so if I find the solution before you, I'll make a pull request.

The hexo-server architecture is completely different from the 2.8.x version. You can take a look in hexo-browsersync to figure out how it plugs into the server.
Also, this is pretty much deprecated in versions > 3.x so you should use browsersync instead.

Hm... So LiveReload is not supported. I just don't want to switch to another LiveReload-analogue as I use LR everywhere.
I'll take a look into hexo-browsersync sources, perhaps I'll figure out how to remake this plugin to work fine with current Hexo version.

BrowserSync works out of the box, so you don't have to install anything besides that package.
It's cleaner than Livereload as no extension is required to use it, and a lot more powerful.

Ok, thanks for information, I'll take a look.


PLANNER-994: Fixed issues related to new Spots & Employee in roster screen

depends on #93

@rsynek PromiseUtils is probably impossible to test, since elemental2.promise.Promise is native javascript code (meaning the testing framework need to know how to deal with native javascript code). RosterRestService does need tests, and so do EmployeeRestService, TenantRestService, SpotRestService, ShiftRestService and RosterGenerator. I rather do all the REST service tests in a seperate PR (these tests been missing for a while).

@Christopher-Chianelli  Hi! Regarding PromiseUtils - I was afraid so. The REST endpoints could be tested in a separate PR, if you prefer to do so. However, if adding new features has higher priority, this never happens :) So, I am offering a bit different approach:
Each time you touch some area without tests, add some - as scouts leave the camp in a better shape than it was before their arrival.
Following this discipline you don't have to worry about huge PR with tests that usually follows after all features are developed. Remember the Definition of Done.


EmployeeRequestController#approve performance issue

Approve employee request usually takes too much time to execute: up to 5-10 seconds
Should be investigated and improved
 "phoenix": {
      "status": 200,
      "request_id": "e2e182c0-4413-4934-9356-870158c5890e#4479",
      "path": "/api/employee_requests/[redacted]/approve",
      "method": "POST",
      "log_type": "http",
      "handler": "Elixir.EHealth.Web.EmployeeRequestController#approve",
      "duration": 5548.64,
      "date_time": "2018-04-19T14:30:15Z",
      "api_version": "*/*"
    },

not relevant anymore. It has been changed to async


Using BBRUN inside a VM behind Proxy

How can I pass --net=host to "docker run"?
Additionally, I think that if you send this all the time, there would be no harm at all even if you have a direct internet connection.

Just did locally. Solved my problem.
function run(commands, image, dryRun, interactive, workDir) {   const cmd = interactive     ?run --rm -P --net=host -it --entrypoint=/bin/bash -v ${pwd()}:${workDir} -w ${workDir} ${image}    :run --rm -P --net=host -v ${pwd()}:${workDir} -w ${workDir} ${image} bash ${BUILD_SCRIPT};


The tray icon isn't shown on Linux

I use both Linux Debian Buster (with Gnome-shell desktop) and Fedora 32 (with Cinnamon desktop) and on both S.O. the tray icon is not shown.
I tried to disable and re-enable the try icon on Ferdi Settings without success.
Below there's the debug log taken from Ferdi:
{"host":{"platform":"linux","release":"4.19.0-10-amd64","screens":[{"id":1881264395124834,"bounds":{"x":0,"y":0,"width":1920,"height":1080},"workArea":{"x":0,"y":0,"width":1920,"height":1080},"accelerometerSupport":"unknown","monochrome":false,"colorDepth":24,"colorSpace":"{primaries:INVALID, transfer:INVALID, matrix:INVALID, range:INVALID}","depthPerComponent":8,"size":{"width":1920,"height":1080},"workAreaSize":{"width":1920,"height":1080},"scaleFactor":1,"rotation":0,"internal":false,"touchSupport":"unknown"},{"id":2763676107988071,"bounds":{"x":1920,"y":0,"width":1920,"height":1080},"workArea":{"x":1920,"y":0,"width":1920,"height":1054},"accelerometerSupport":"unknown","monochrome":false,"colorDepth":24,"colorSpace":"{primaries:INVALID, transfer:INVALID, matrix:INVALID, range:INVALID}","depthPerComponent":8,"size":{"width":1920,"height":1080},"workAreaSize":{"width":1920,"height":1054},"scaleFactor":1,"rotation":0,"internal":false,"touchSupport":"unknown"}]},"ferdi":{"version":"5.5.0","electron":"8.2.3","installedRecipes":[{"id":"discord","version":"1.1.3"},{"id":"gmail","version":"1.3.1"},{"id":"messenger","version":"1.1.0"},{"id":"proton-mail","version":"1.2.0"},{"id":"telegram","version":"3.0.0"},{"id":"whatsapp","version":"2.0.3"},{}],"devRecipes":[],"services":[{"id":"70a0cc9a-cdc6-46ca-9a27-627937025aac","recipe":"whatsapp","isAttached":true,"isActive":false,"isEnabled":true,"isHibernating":false,"hasCrashed":false,"isDarkModeEnabled":false},{"id":"5c9b6404-c700-482d-b25e-7ae9bea71e88","recipe":"discord","isAttached":true,"isActive":true,"isEnabled":true,"isHibernating":false,"hasCrashed":false,"isDarkModeEnabled":false},{"id":"c78068b2-fa0b-421c-acfd-a7c6caede16c","recipe":"telegram","isAttached":true,"isActive":false,"isEnabled":true,"isHibernating":false,"hasCrashed":false,"isDarkModeEnabled":false},{"id":"2fa01619-8482-41d4-802e-05986accdb97","recipe":"gmail","isAttached":true,"isActive":false,"isEnabled":true,"isHibernating":false,"hasCrashed":false,"isDarkModeEnabled":false}],"messages":[{"type":"error","info":["error","[mobx] Encountered an uncaught exception that was thrown by a reaction or observer component, in: 'Reaction[Autorun@160]'",{}]},{"type":"error","request":{"result":null,"wasExecuted":true,"method":"getInfo"},"error":{},"response":{},"server":"You are using Ferdi without a server"},{"type":"error","request":{"result":null,"wasExecuted":true,"method":"features"},"error":{},"response":{},"server":"You are using Ferdi without a server"},{"type":"error","request":{"result":null,"wasExecuted":true,"method":"all"},"error":{},"response":{},"server":"You are using Ferdi without a server"},{"type":"log","info":["log","Notification from Gmail",{"body":"","icon":"/assets/img/notification-badge.gif","tag":"en_mymail@domain.com"}]},{"type":"error","info":["error","Warning: You cannot PUSH the same path using hash history"]}],"workspaces":[],"windowSettings":{"width":800,"height":600,"x":0,"y":0,"displayBounds":{"x":1920,"y":0,"width":1920,"height":1080}},"settings":{"autoLaunchInBackground":false,"runInBackground":true,"reloadAfterResume":true,"enableSystemTray":true,"startMinimized":false,"minimizeToSystemTray":false,"privateNotifications":true,"showDisabledServices":true,"showMessageBadgeWhenMuted":true,"showDragArea":false,"enableSpellchecking":true,"spellcheckerLanguage":"en-us","darkMode":false,"locale":"en-US","fallbackLocale":"en-US","beta":false,"isAppMuted":false,"enableGPUAcceleration":true,"serviceLimit":5,"server":"You are using Ferdi without a server","predefinedTodoServer":"https://app.franztodos.com","autohideMenuBar":false,"lockingFeatureEnabled":false,"locked":false,"lockedPassword":"******","useTouchIdToUnlock":true,"scheduledDNDEnabled":false,"scheduledDNDStart":"17:00","scheduledDNDEnd":"09:00","hibernate":false,"hibernateOnStartup":true,"hibernationStrategy":300,"inactivityLock":0,"automaticUpdates":true,"showServiceNavigationBar":false,"universalDarkMode":true,"adaptableDarkMode":true,"accentColor":"#7367f0","serviceRibbonWidth":68,"iconSize":20,"sentry":false,"navigationBarBehaviour":"never","customTodoServer":"","todoServer":"isUsingCustomTodoService"},"features":{"isSpellcheckerIncludedInCurrentPlan":true,"needToWaitToProceed":false,"needToWaitToProceedConfig":{"delayOffset":3600000,"wait":10000},"isServiceProxyEnabled":true,"isServiceProxyIncludedInCurrentPlan":true,"isAnnouncementsEnabled":true,"isWorkspaceIncludedInCurrentPlan":true,"isWorkspaceEnabled":true,"isCommunityRecipesIncludedInCurrentPlan":true,"isSpellcheckerPremiumFeature":false,"isServiceProxyPremiumFeature":true,"isWorkspacePremiumFeature":false,"isSettingsWSEnabled":false,"isServiceLimitEnabled":false,"serviceLimitCount":0,"isCommunityRecipesPremiumFeature":false,"isCustomUrlIncludedInCurrentPlan":true,"isMagicBarEnabled":true,"isTeamManagementIncludedInCurrentPlan":true,"isTodosEnabled":true,"isTodosIncludedInCurrentPlan":true,"defaultTrialPlan":"franz-pro-yearly","subscribeURL":"https://getferdi.com","planSelectionURL":"https://getferdi.com","hasInlineCheckout":true,"isPlanSelectionEnabled":false,"isTrialStatusBarEnabled":false,"canSkipTrial":true,"pricingConfig":{"currency":"$","currencyID":"USD","plans":{"personal":{"monthly":{"id":"ferdi-free","price":0,"billed":0},"yearly":{"id":"ferdi-completely-free","price":0,"billed":0}},"pro":{"monthly":{"id":"ferdi-still-free","price":0,"billed":0},"yearly":{"id":"ferdi-forever-free","price":0,"billed":0}}}}},"user":"82c1cf9d-ab58-4da2-b55e-aaa41d2142d8"}}

Hey @ZextrasGiacomoMattiuzzi, can you still reproduce this issue with https://github.com/getferdi/ferdi/releases/tag/v5.6.4 ?
I used Ferdi with both Ubuntu GNOME and now Manjaro GNOME and I have never experienced issues with a missing tray icon.


Fixes handling BytesIO correctly

Passing a BytesIO object would be considered an instance of IOBase and therefore would not open it as an image.
Now, it will use Image.open on both strings and IOBase objects, but will accept PIL.Image objects as well in the else clause.

I was going to propose the same update

Sorry for late reply. merged this
version 0.5.1 has been released, on PyPI.


GraphEdit connection rework (API & optimizations)

Detailed changes:

Add get_closest_connection_at_point which return the closest connection at a given point in GraphEdit's local screen space (with the given maximum search distance). See the docs for a usage example.
Optimize connection drawing/handling

Introduce connections HashMap (node -> its connections)

The old logic iterated over all connections for every GraphNode, now only the relevant connections are checked where possible.

Each connection now caches the line, the start and end positions (in screen space) as well as an AABB. This allows for updating/drawing only those connections visible on the screen (this had a huge performance impact for large graphs). It's also used to accelerate fetching the connection from a screen position which is introduced in this PR.

Adjust theming/visual appearance

hovering a connection now highlights it (theme item connection_hover_tint_color)
the highlight color when dragging a connection onto a valid port is now a theme item (theme item connection_valid_target_tint_color)

Change signature of get_connection_list (now returns the list instead of using a return parameter) [only used internally]

For a demonstration of these new features see #83510.

Is there a guide on how to get the point from whatever space to screenspace that the GraphEdit is in? I remember it was difficult.

Changes:

Add method get_connections_intersecting_with_rect
Add method reset_all_connection_activity
get_closest_connection_at_point (and the new method) now fully transforms the screen space coordinates internally, so get_closest_connection_at_point(local_mouse_position + get_scroll_offset()) now becomes just
get_closest_connection_at_point(local_mouse_position)

Superceded by https://github.com/godotengine/godot/pull/83508.


added quote to tooltip description.

added quote to tooltip description.


Automatically split TeamCity builds into buckets

Context
Previously, our TeamCity builds aren't distributed evenly, we want to shorten the feedback time by splitting builds into small buckets. This PR reads the build time data JSON genreated by ci-health:
{

"Gradle_Check_Quick_1": {
        "languageNative": [
            {
                "buildTimeMs": 234,
                "testClass": "org.gradle.swiftpm.plugins.SwiftPackageManagerExportPluginTest"
            },
            ...
        ],
        "pluginUse": [
            {
                "buildTimeMs": 92,
                "testClass": "org.gradle.plugin.use.resolve.internal.ArtifactRepositoriesPluginResolverTest"
            },
            ...
         ]
},

"Gradle_Check_Platform_4": {
...

Moreover, looking at the cross version tests AllVersionsCrossVersionTest, several large subproject dominates the build time, some tiny subprojects even don't run tests at all.
This PR does:

For the functional tests, we automatically split buckets to evenly distributed buckets based on the statistics data. The basic rule is:

Each build project are split differently based on the test time data of that build project.
Large subproject are split into smaller buckets, e.g. core -> [core, core_2, core_3]. In this case, core/core_2 have a -PincludeClasses=A,B/-PincludeClasses=C,D parameter and core_3 has a -PexcludeClasses=A,B,C,D.
Small subprojects are joined to a single bucket.

For the cross version tests, we split them by major gradle version, i.e. gradle 1.x cross version test for all subprojects, gradle 2.x cross version test for all subproject, ... etc.

Also, this PR refactors the previous CIModel and factors out the GradleBuildBucketProvider so it can be easily adjusted in the future (for example, if we don't like buckets and want to use per-subproject infrastructure again).

I re-ran the pipeline and now there is this issue (on Windows only?) in the pre-step:
https://builds.gradle.org/viewLog.html?buildId=29483117&buildTypeId=Gradle_Check_Quick_2_instantExecution&tab=buildResultsDiv


[Improvement-16209][UDF Manage] Remove unused udf manage function

Purpose of the pull request
close #16209
Brief change log

Verify this pull request

This pull request is code cleanup without any test coverage.
(or)
This pull request is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:

(or)
Pull Request Notice
Pull Request Notice
If your pull request contain incompatible change, you should also add it to docs/docs/en/guide/upgrede/incompatible.md

Codecov Report
Attention: Patch coverage is 43.75000% with 9 lines in your changes missing coverage. Please review.

Project coverage is 41.23%.

Files
Patch %
Lines

...nscheduler/service/process/ProcessServiceImpl.java
70.00%
2 Missing and 1 partial :warning:

...pache/dolphinscheduler/spi/enums/ResourceType.java
0.00%
3 Missing :warning:

...ache/dolphinscheduler/api/audit/OperatorUtils.java
0.00%
0 Missing and 1 partial :warning:

...ache/dolphinscheduler/plugin/task/sql/SqlTask.java
0.00%
1 Missing :warning:

...heduler/tools/resource/MigrateResourceService.java
0.00%
1 Missing :warning:

Additional details and impacted files
@@             Coverage Diff              @@
##                dev   #16212      +/-   ##
============================================
- Coverage     41.32%   41.23%   -0.09%
+ Complexity     5162     5120      -42
============================================
  Files          1403     1397       -6
  Lines         44423    44023     -400
  Branches       4721     4642      -79
============================================
- Hits          18357    18154     -203
+ Misses        24262    24087     -175
+ Partials       1804     1782      -22

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


good way to show error or other messages?

Hello again,
I was wondering if there is a good way to show error messages in applications. for now, I am just using just new windows, with a function like this:
fn message_window(ctx: &mut Context, message: &'static str) {
    ctx.show_window(move |ctx| {
        Window::new()
            .title("Message")
            .position((170.0, 120.0))
            .size(130.0, 110.0)
            .resizeable(true)
            .child(
                TextBlock::new()
                    .text(message)
                .build(ctx)
            )
        .build(ctx)
    });
}

But that doesn't always seem to work, for example in a situation like this even though there is thread::sleep() both of the windows open at the same time after 3 seconds for some reason:
impl State for MainViewState {
    fn update(&mut self, _: &mut Registry, ctx: &mut Context) {
        if self.show_windows == true {
            message_window(ctx, "message");

            //simulate expensive function
            thread::sleep(Duration::from_secs(3));

            message_window(ctx, "other message");
            self.show_windows = false;
        }
    }
}

Is there some other way to show messages in a different window, or fix the fact that both windows show up at the same time?

Maybe you could use a Popup.
https://github.com/redox-os/orbtk/blob/develop/crates/widgets/src/popup.rs
I will push an example of how to use it.

@thivmcthiv the popup example is merged and on the master now.

Oh ok. thanks. (although I am now having issues with the popup widget) they dont seem to show up, even with .open(true) and .visibility(Visibility::Visible)


container-selinux-2:2.95-1.gite3ebc68.fc29 failes to reinstall

Is this a BUG REPORT or FEATURE REQUEST? (leave only one on its own line)
/kind bug
Description
Raising this as it seems like a likely root cause of ansible-community/ansible-bender#124. Also possibly related to #2984.
Steps to reproduce the issue:

sudo dnf -y install container-selinux

Describe the results you received:
Running transaction
  Preparing        :                                                                                1/1
Installed: container-selinux-2:2.95-1.gite3ebc68.fc29.noarch
  Installing       : container-selinux-2:2.95-1.gite3ebc68.fc29.noarch                                                                                1/1
  Running scriptlet: container-selinux-2:2.95-1.gite3ebc68.fc29.noarch                                                                                1/1

libsemanage.semanage_exec_prog: Child process /sbin/setfiles did not exit cleanly.
libsemanage.semanage_validate_and_compile_fcontexts: setfiles returned error code -1.
/usr/sbin/semodule:  Failed!

Installed: container-selinux-2:2.95-1.gite3ebc68.fc29.noarch
  Verifying        : container-selinux-2:2.95-1.gite3ebc68.fc29.noarch                                                                                1/1

Installed:
  container-selinux-2:2.95-1.gite3ebc68.fc29.noarch

Describe the results you expected:
Reinstall of the package without setfiles or semodule errors.
Additional information you deem important (e.g. issue happens only occasionally):
Output of podman version:
Version:            1.2.0
RemoteAPI Version:  1
Go Version:         go1.11.5
OS/Arch:            linux/amd64

Output of podman info --debug:
debug:
  compiler: gc
  git commit: ""
  go version: go1.11.5
  podman version: 1.2.0
host:
  BuildahVersion: 1.7.2
  Conmon:
    package: podman-1.2.0-2.git3bd528e.fc29.x86_64
    path: /usr/libexec/podman/conmon
    version: 'conmon version 1.12.0-dev, commit: d88bb0e63cb70f9787a8e410716924f380af361f'
  Distribution:
    distribution: fedora
    version: "29"
  MemFree: 156250112
  MemTotal: 503762944
  OCIRuntime:
    package: runc-1.0.0-85.dev.gitdd22a84.fc29.x86_64
    path: /usr/bin/runc
    version: |-
      runc version 1.0.0-rc6+dev
      commit: 1d3f73d4086533a858613bc4b6af2b5e882f4730
      spec: 1.0.1-dev
  SwapFree: 0
  SwapTotal: 0
  arch: amd64
  cpus: 1
  hostname: ansible-bender-dev.example.com
  kernel: 4.18.16-300.fc29.x86_64
  os: linux
  rootless: true
  uptime: 3h 35m 9.61s (Approximately 0.12 days)
insecure registries:
  registries: []
registries:
  registries:
  - docker.io
  - registry.fedoraproject.org
  - quay.io
  - registry.access.redhat.com
  - registry.centos.org
store:
  ConfigFile: /home/vagrant/.config/containers/storage.conf
  ContainerStore:
    number: 2
  GraphDriverName: overlay
  GraphOptions:
  - overlay.mount_program=/usr/bin/fuse-overlayfs
  GraphRoot: /home/vagrant/.local/share/containers/storage
  GraphStatus:
    Backing Filesystem: extfs
    Native Overlay Diff: "false"
    Supports d_type: "true"
    Using metacopy: "false"
  ImageStore:
    number: 1
  RunRoot: /run/user/1000
  VolumePath: /home/vagrant/.local/share/containers/storage/volumes

Additional environment details (AWS, VirtualBox, physical, etc.):
Attempted to run even just podman by itself in Vagrant machine brought up by
Vagrantfile in https://github.com/ansible-community/ansible-bender.  Occurs in both libvirt and virtualbox vagrant machines.

From https://github.com/containers/libpod/issues/2984#issuecomment-485451134, these don't look right.
$ rpm -q podman runc
podman-1.2.0-2.git3bd528e.fc29.x86_64
runc-1.0.0-85.dev.gitdd22a84.fc29.x86_64

$ ls -lZ /usr/bin/podman /usr/bin/runc
-rwxr-xr-x. 1 root root system_u:object_r:bin_t:s0 49614968 Apr  1 14:35 /usr/bin/podman
-rwxr-xr-x. 1 root root system_u:object_r:bin_t:s0  8952232 Mar 21 12:37 /usr/bin/runc

@rhatdan PTAL

@00willo what does
matchpathcon /usr/bin/podman /usr/bin/runc say?

@rhatdan
[vagrant@ansible-bender-dev ~]$ matchpathcon /usr/bin/podman /usr/bin/runc
/usr/bin/podman system_u:object_r:bin_t:s0
/usr/bin/runc   system_u:object_r:bin_t:s0

A dnf reinstall of container-selinux still does the same. That's what I retried first actually, I think I copied the output (for the description above) from an uninstall, followed by rm /var/run/containers and then an install, but all had the same result.

So I have no idea why container-selinux is blowing up.  This has nothing to do with containers.  The problem is something on your host is preventing semodule -i container.pp from happening.
rpm -q selinux-policy

Does semodule -i /usr/share/selinux/packages/container.pp.bz2
Give you any more data?

[vagrant@ansible-bender-dev ~]$ rpm -q selinux-policy
selinux-policy-3.14.2-40.fc29.noarch

That semodule command returned with no stdout and an exitcode of 0.

The vagrant box I'm using for this is fedora/29-cloud-base            (virtualbox, 29.20181024.1)

Tried to reinstall the container-selinux package again. There's an extra line in the output this time about semanage_direct_remove_key
Running transaction
  Preparing        :                                                                                1/1
Reinstall: container-selinux-2:2.95-1.gite3ebc68.fc29.noarch
  Reinstalling     : container-selinux-2:2.95-1.gite3ebc68.fc29.noarch                                                                                1/2
  Running scriptlet: container-selinux-2:2.95-1.gite3ebc68.fc29.noarch                                                                                1/2
libsemanage.semanage_direct_remove_key: Removing last container module (no other container module exists at another priority).
libsemanage.semanage_exec_prog: Child process /sbin/setfiles did not exit cleanly.
libsemanage.semanage_validate_and_compile_fcontexts: setfiles returned error code -1.
/usr/sbin/semodule:  Failed!

Reinstall: container-selinux-2:2.95-1.gite3ebc68.fc29.noarch
Reinstalled: container-selinux-2:2.95-1.gite3ebc68.fc29.noarch
  Cleanup          : container-selinux-2:2.95-1.gite3ebc68.fc29.noarch                                                                                2/2
Reinstalled: container-selinux-2:2.95-1.gite3ebc68.fc29.noarch
  Running scriptlet: container-selinux-2:2.95-1.gite3ebc68.fc29.noarch                                                                                2/2
  Verifying        : container-selinux-2:2.95-1.gite3ebc68.fc29.noarch                                                                                1/2
  Verifying        : container-selinux-2:2.95-1.gite3ebc68.fc29.noarch                                                                                2/2

Reinstalled:
  container-selinux-2:2.95-1.gite3ebc68.fc29.noarch

Complete!

What does matchpathcon say now?
$ matchpathcon /usr/bin/podman /usr/bin/runc
/usr/bin/podman system_u:object_r:bin_t:s0
/usr/bin/runc   system_u:object_r:bin_t:s0
Here is the post script
%post
# Install all modules in a single transaction
if [ $1 -eq 1 ]; then
	%{_sbindir}/setsebool -P -N virt_use_nfs=1 virt_sandbox_use_all_caps=1
fi
%_format MODULES %{_datadir}/selinux/packages/$x.pp.bz2
%{_sbindir}/semodule -n -s %{selinuxtype} -r container 2> /dev/null
%{_sbindir}/semodule -n -s %{selinuxtype} -d docker 2> /dev/null
%{_sbindir}/semodule -n -s %{selinuxtype} -d gear 2> /dev/null
%{_sbindir}/semodule -n -X 200 -s %{selinuxtype} -i $MODULES > /dev/null
if %{_sbindir}/selinuxenabled ; then
    %{_sbindir}/load_policy
    %relabel_files
    if [ $1 -eq 1 ]; then
	restorecon -R %{_sharedstatedir}/docker &> /dev/null || :
	restorecon -R %{_sharedstatedir}/containers &> /dev/null || :
    fi
fi
. %{_sysconfdir}/selinux/config
sed -e "\|container_file_t|h; \${x;s|container_file_t||;{g;t};a\\" -e "container_file_t" -e "}" -i /etc/selinux/${SELINUXTYPE}/contexts/customizable_types
matchpathcon -qV %{_sharedstatedir}/containers || restorecon -R %{_sharedstatedir}/containers &> /dev/null || :

We also have
%postun
if [ $1 -eq 0 ]; then
%{_sbindir}/semodule -n -r %{modulenames} &> /dev/null || :
if %{_sbindir}/selinuxenabled ; then
%{_sbindir}/load_policy
%relabel_files
fi
fi

I think it is this script that is firing on the old container-selinux removal.

@bachradsusi @Vrabec any ideas.
@00willo What is weird is this has not happened on any other machines that I know of.
container-selinux-2.100 should be available in updates-testing could you see if that works?

is this fixed? wouldnt it be better to file this as a bugzilla against the distribution and not upstream?

Yes this is a distribution issue and not an upstream issue. Please open a bugzilla if this is still an issue.

Sorry for not replying earlier @rhatdan, I got a little snowed under. Yep, I'll check with the latest updates and file with fedora if required. As fc30 is out now too, I'll see if it's an issue on that version too.


Added DateField output_format

Added output_format  to  QuickwitDateTimeOptions
This PR contains changes to the format of LeafHit document sent to root search. In order to avoid potentially parsing a JSON document for displaying things in the correct format, we now format the output document at the leaf level. When the root receives a LeafHit, the JSON document within is ready to be shipped into a user search result with the user-requested format.
Closes https://github.com/quickwit-oss/quickwit/issues/2257

One remark: I don't really like binding the output format unix_timestamp to the precision that applies only to the fast field.
I would rather choose between these 2 options:

return microseconds
fix the output_format. unix_timestamp is a broken format as we don't know if we have seconds, milliseconds, microseconds. I would prefer to have unix_timestamp_sec, unix_timestamp_ms, ``unix_timestamp_microsfor example.unix_timestamp` is nice only for ingestion as we can guess the format.

@fmassot I think what I can do in this PR at least to avoid confusion is to add output_precision  with default like other and have them separated from the fast field storage precision.

@evanxg852000: I just talked to @guilload and @fulmicoton : it would be super nice to have an output_format with unix_timestamp_secs, unix_timestamp_millis, unix_timestamp_micros, can you handle that?


go/types, types2: "import path cannot be absolute path" error not reported

For
package main
import "/foo"

the compiler reports:
main.go:2:8: import path cannot be absolute path

Both go/types and types2 report:
main.go:2:8: could not import /foo (can't find import: "/foo")
main.go:2:8: "/foo" imported and not used

Generally, should review all import path errors.
cc: @findleyr

Thank you for filing this issue @griesemer and Happy New Year to you and @findleyr!
I am currently at 90860e0c3110ac5898dfe8e0e0fafd0aea8d979a and it seems fixed; the result of this compilation using types2 seems to produce the desired result like this
go version devel go1.18-90860e0c31 Sat Jan 8 00:24:25 2022 +0000 darwin/amd64
package main
import "/foo"
main.go:2:8: could not import /foo (import path cannot be absolute path)
main.go:2:8: imported and not used: "/foo"

Shall we perhaps close this issue?

We're getting the correct could not import error, but we shouldn't get an imported and not used error (after all it couldn't be imported in the first place). This still needs to be addressed but it's not crucial for 1.18. Moving to 1.19.


Add clarification text to the start instructions per Diana's feedback.

Fixes the doc side of #9031.

This change is

Online preview: http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/cdd7a69d7413ea2c0226a9a80bf8ddbc8d388a13/


Remove merkle tree

Since TokenNetwork can only unlock all pending locks at once, the use of Merkle trees was just an unnecessary complication.  This PR replaces the Merkle root computation with a keccak256() of the submitted packed transfer.
This closes #1061.

Still locksroot is compared with 0.  https://github.com/raiden-network/raiden-contracts/pull/1062/files#diff-c24f379d5459208ce014d029b953437eR1153

I'll just say locksroot == 0 and locksroot == b"" are both usable as a hash of no locks.  If anybody gets a sequence of locks that hashes to 0, that's too big an unluck.

I still think we should support merkle trees, but for partial unlocks

We need to compare every pro) con) there.  For now, having a Merkle tree is just too gorgeous for what we actually do currently.


Create a way to axiomatize or skip top-level pattern bindings

 Issue by antalsz
Tuesday Oct 09, 2018 at 09:02 GMT
Originally opened as https://github.com/antalsz/hs-to-coq/issues/104

As it stands, we always translate them in normal modules, and always throw an error in axiomatized modules

 Comment by sweirich
Tuesday Jun 25, 2019 at 10:51 GMT

f9b2a4650c6a5f9ccfc99fb1a139815eef707116 has a partial solution here.  See PrelNames for an example.
We should do something a little more graceful than ignoring the patterns that cannot be translated though.
Also, it doesn't work in conjunction with axiomatization.


[VM] Could the open-port command allow specifying a port?

The simplified az network nsg rule create command is awesome, however, it would be great if you could use the az vm open-port command as a VM-focused way of achieving the same thing, but without having to look up and manage the NSG explicitly (fewer concept counts for new Azure users would be great!).
Since az vm create auto-creates an NSG behind the scenes, being able to expose a port on the VM would help support an easier "getting started" experience with VMs. Instead of the open-port command exposing all ports, it would nice to do something like the following:
az vm create -g <group> -n <name> --image UbuntuLTS
az vm open-port -g <group> -n <name> -p 80

Even further, I would actually love if it the az vm create command allowed specifying a list of ports to expose on the resulting NSG. Something like the following would be amazing:
az vm create -g <group> -n <name> --image UbuntuLTS --expose-ports 80,443

Both of these help achieve the same goal of preventing a user from needing to think about the NSG until necessary. Since exposing a port is such a common operation, it seems like this would be a nice companion/extension of the already-great abstraction created by the az vm create command in the first place.

Based on the name of "open-port" I though it was intended to be used with -p $PORT. I was actually a bit surprised when it open all traffic.

@devigned Me too :) This command would be immensely useful if it just had a -p flag.

Reviewing the email threads with @squillace, it looks like there wouldn't be a problem exposing a port(s) parameter here. I felt the default of "*" was a bit broad anyways.


Custom Fonts settings disappear from controls when a custom theme is set in project settings

Godot version:

Godot 3.0.2 stable (non-mono)
OS/device including version:

Windows 10 Pro x64
Issue description:

When setting a custom theme in project settings most text-based controls lose Custom Fonts settings in the inspector. Link Button seems to lose custom styles, colours and constants as well. Settings will only reappear once the theme is removed from project settings and the project is reloaded.
I believe this is related but distinct to #6098 as the issue only rectifies on project reload rather than selecting a different node
Steps to reproduce:
Create a scene
Add controls (Button, Link Button etc)
Create a new theme resource
Edit Theme > Create from Current Editor Theme
Save Theme resource
Project Settings > GUI > Theme > Set custom theme to newly created theme
Save scene
Select a control and settings should appear in the inspector as expected
Close the project
Re-open the project, open the scene.
Select a control, custom fonts settings should now be missing
Run project/scene, 2 errors should appear in the debugger
Minimal reproduction project:

customThemeBug.zip

This looks similar with #7001 and it's fixed by 88bfb27abf35b347b4fdb0def15b340f33c89209
but this one still valid.
I tested by creating new theme but not with Create from Current Editor Theme
the new theme contains only custom font for label.
and set it as custom theme at project setting.
after restarting editor, Controls has custom fonts setting, ERROR for other gui texture are shown though.
so, it seems there is a problem with the theme created by Create from Current Editor Theme

This is exactly the same problem I posted about on Twitter: https://twitter.com/nightblade99/status/1098791315922243585
Repro steps:

Use "Create from Current Editor Theme" to create a theme
Save the theme and set it as your Custom theme for the project
Try to edit a label to change fonts. custom_fonts is missing.

This is with 3.0.6.
Did you guys ever find a work-around for this? I tried removing the theme, but never thought to reload the project after.

Still present in 3.1.1 stable

Fixed in 3.2


Can we $emit the events when they're sended ?
I think it could be a performance problem (too much $emit phase) so I prefer ask for the feature before proposing a pull request.
Maybe the developer can register events that he needs and md-input can registers them on the fly ?
What do you think ?

If I remember correctly, you can use @focus.native.

I had the same question. Thank you for replying @vivescere . Can you please elaborate a little on how this would work? I'm trying this, but the event is not fired:
  <md-input-container>
     Vorname
     <md-input v-model="firstName" @keyup.enter="getStep(3)"></md-input>
  </md-input-container>

Never mind. I found the correct event notation; Thanks!
<md-input-container>
   Vorname
   <md-input v-model="firstName" @keyup.enter.native="getStep(3)"></md-input>
 </md-input-container>


2673 comma delimiter

Pull Request Checklist:

[x] Positive Test Case Written by Dev

[x] Automated Testing

[x] Sufficient User and Developer Documentation

[x] Passing Jenkins Build

[x] Peer Code review and approval

Positive Test Case

Navigate to the signup page in hydroshare.  Add a few different organizations, include at least one organization with a comma (if you start typing puerto rico, you'll see some orgs with commas) and at least one without.  Create the account and activate it.  Navigate to the profile page and validate all the organizations are displayed correctly.

With the same account created in test case 1, navigate to the profile and select edit.  Add and remove at least on organization with a comma and one organization without a comma.  Click save and validate the organizations displayed are correct.

Build finished.

+1

Email for documentation approval sent to @Lizabrazil

No documentation needed

If there are certain characters that are still not allowed in organization then that should be documented, please let me know if that is the case. It should really be documented on the interface level if a user tries to add an invalid character.

@Lizabrazil the only character the can't be in an organization is the semicolon

if a user tries to insert a semicolon do they get notified it is an invalid character? I'm guessing that won't be used often though

If they enter a semicolon it will add what they've typed already as an organization.
If an organization with a semicolon gets added to the existing organizations lookup database then we'll have the same problem we did with commas.  But that shouldn't happen without a developer manually adding it.