scss-lint 0.41 linters fail with undefined method when parsing some string interpolations

I just upgraded to scss-lint 0.41 and the entire scss-lint command fails with "undefined method" when parsing my scss files.
It seems to be related to string interpolation. I've narrowed it down to these test cases.
Test 1
/*
#{hue(#639)}
*/

Results:
SCSSLint::Linter::ColorKeyword raised unexpected error linting file test1.scss: 'undefined method `[]' for nil:NilClass'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter/color_keyword.rb:8:in `visit_script_color'
ruby/2.2.0/gems/sass-3.4.18/lib/sass/tree/visitors/base.rb:36:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:131:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:142:in `block in visit_children'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `each'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `visit_children'
ruby/2.2.0/gems/sass-3.4.18/lib/sass/tree/visitors/base.rb:38:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:131:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:142:in `block in visit_children'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `each'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `visit_children'
ruby/2.2.0/gems/sass-3.4.18/lib/sass/tree/visitors/base.rb:38:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:131:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:142:in `block in visit_children'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `each'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `visit_children'
ruby/2.2.0/gems/sass-3.4.18/lib/sass/tree/visitors/base.rb:38:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:131:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:142:in `block in visit_children'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `each'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `visit_children'
ruby/2.2.0/gems/sass-3.4.18/lib/sass/tree/visitors/base.rb:38:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:131:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:142:in `block in visit_children'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `each'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `visit_children'
ruby/2.2.0/gems/sass-3.4.18/lib/sass/tree/visitors/base.rb:38:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:131:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:25:in `run'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:49:in `run_linter'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:30:in `block in find_lints'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:28:in `each'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:28:in `find_lints'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:18:in `block in run'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:17:in `each'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:17:in `run'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/cli.rb:58:in `scan_for_lints'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/cli.rb:51:in `act_on_options'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/cli.rb:28:in `run'
ruby/2.2.0/gems/scss_lint-0.41.0/bin/scss-lint:6:in `<top (required)>'
ruby/2.2.0/bin/scss-lint:23:in `load'
ruby/2.2.0/bin/scss-lint:23:in `<main>'
Report this bug at https://github.com/brigade/scss-lint/issues

To help fix this issue, please include:
- The above stack trace
- SCSS-Lint version: 0.41.0
- Sass version: 3.4.18
- Ruby version: 2.2.3

Test 2
// scss-lint:disable comment
/* #{'string'} */

Results:
SCSSLint::Linter::SpaceBetweenParens raised unexpected error linting file test2.scss: 'undefined method `[]' for nil:NilClass'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter/space_between_parens.rb:80:in `feel_for_enclosing_parens'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter/space_between_parens.rb:22:in `feel_for_parens_and_check_node'
ruby/2.2.0/gems/sass-3.4.18/lib/sass/tree/visitors/base.rb:36:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:131:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:142:in `block in visit_children'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `each'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `visit_children'
ruby/2.2.0/gems/sass-3.4.18/lib/sass/tree/visitors/base.rb:38:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:131:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:142:in `block in visit_children'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `each'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `visit_children'
ruby/2.2.0/gems/sass-3.4.18/lib/sass/tree/visitors/base.rb:38:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:131:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:142:in `block in visit_children'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `each'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `visit_children'
ruby/2.2.0/gems/sass-3.4.18/lib/sass/tree/visitors/base.rb:38:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:131:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:142:in `block in visit_children'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `each'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `visit_children'
ruby/2.2.0/gems/sass-3.4.18/lib/sass/tree/visitors/base.rb:38:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:131:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:25:in `run'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:49:in `run_linter'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:30:in `block in find_lints'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:28:in `each'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:28:in `find_lints'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:18:in `block in run'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:17:in `each'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:17:in `run'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/cli.rb:58:in `scan_for_lints'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/cli.rb:51:in `act_on_options'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/cli.rb:28:in `run'
ruby/2.2.0/gems/scss_lint-0.41.0/bin/scss-lint:6:in `<top (required)>'
ruby/2.2.0/bin/scss-lint:23:in `load'
ruby/2.2.0/bin/scss-lint:23:in `<main>'
Report this bug at https://github.com/brigade/scss-lint/issues

To help fix this issue, please include:
- The above stack trace
- SCSS-Lint version: 0.41.0
- Sass version: 3.4.18
- Ruby version: 2.2.3

Test 3
$color: rebeccapurple;

/* #{hue($color)} */

Results:
SCSSLint::Linter::SpaceBetweenParens raised unexpected error linting file test3.scss: 'undefined method `count' for nil:NilClass'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter/space_between_parens.rb:105:in `trim_right_paren'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter/space_between_parens.rb:38:in `check'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter/space_between_parens.rb:9:in `check_node'
ruby/2.2.0/gems/sass-3.4.18/lib/sass/tree/visitors/base.rb:36:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:131:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:142:in `block in visit_children'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `each'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `visit_children'
ruby/2.2.0/gems/sass-3.4.18/lib/sass/tree/visitors/base.rb:38:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:131:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:142:in `block in visit_children'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `each'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `visit_children'
ruby/2.2.0/gems/sass-3.4.18/lib/sass/tree/visitors/base.rb:38:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:131:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:142:in `block in visit_children'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `each'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:140:in `visit_children'
ruby/2.2.0/gems/sass-3.4.18/lib/sass/tree/visitors/base.rb:38:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:131:in `visit'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/linter.rb:25:in `run'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:49:in `run_linter'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:30:in `block in find_lints'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:28:in `each'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:28:in `find_lints'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:18:in `block in run'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:17:in `each'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/runner.rb:17:in `run'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/cli.rb:58:in `scan_for_lints'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/cli.rb:51:in `act_on_options'
ruby/2.2.0/gems/scss_lint-0.41.0/lib/scss_lint/cli.rb:28:in `run'
ruby/2.2.0/gems/scss_lint-0.41.0/bin/scss-lint:6:in `<top (required)>'
ruby/2.2.0/bin/scss-lint:23:in `load'
ruby/2.2.0/bin/scss-lint:23:in `<main>'
Report this bug at https://github.com/brigade/scss-lint/issues

To help fix this issue, please include:
- The above stack trace
- SCSS-Lint version: 0.41.0
- Sass version: 3.4.18
- Ruby version: 2.2.3

The error messages mention 2 different linters, but I suspect it is some common, underlying parsing code that is failing.

Not good. We're getting a badsource_range (3:25 to 3:36) for the Funcall node. Note that that range doesn't exist. I can't tell if an scss-lint monkey patch has broken this range, or Sass (I suspect Sass).
With this patch:
$ git diff
diff --git i/lib/scss_lint/linter/space_between_parens.rb w/lib/scss_lint/linter/space_between_parens.rb
index 3a47173..db0beeb 100644
--- i/lib/scss_lint/linter/space_between_parens.rb
+++ w/lib/scss_lint/linter/space_between_parens.rb
@@ -6,6 +6,10 @@ module SCSSLint
     include LinterRegistry

     def check_node(node)
+      puts "NODE:     #{node}"
+      puts "INSPECT: `#{node.inspect}`"
+      puts "SOURCE:  `#{source_from_range(node.source_range)}`"
+      puts "AT:      #{node.source_range.inspect}"
       check(node, source_from_range(node.source_range))
       yield
     end

on your last test:
$ cat issue-568-2.scss
$color: rebeccapurple;

/* #{hue($color)} */

I see the following:
$ bundle exec bin/scss-lint issue-568-2.scss
NODE:     #<Sass::Script::Tree::Funcall:0x007fbc42e85070>
INSPECT: `hue($color)`
SOURCE:  ``
AT:      (3:25 to 3:36 in issue-568-2.scss)
SCSSLint::Linter::SpaceBetweenParens raised unexpected error linting file issue-568-2.scss: 'undefined method `count' for nil:NilClass'
/Users/srawlins/code/scss-lint/lib/scss_lint/linter/space_between_parens.rb:109:in `trim_right_paren'
/Users/srawlins/code/scss-lint/lib/scss_lint/linter/space_between_parens.rb:42:in `check'
/Users/srawlins/code/scss-lint/lib/scss_lint/linter/space_between_parens.rb:13:in `check_node'
...

I'm using sass 3.4.17 (reporter is using 3.4.18)

Getting something similar fwiw

Duplicate of #531.
I've implemented a workaround that avoids linting interpolation in /*...*/ comments since the Sass parser returns incorrect source ranges, and I think for most developers it's not critical that this code be linted.
It looks like @srawlins has a pull request in https://github.com/sass/sass/pull/1875 which fixes the upstream issue, but given that might take a while to merge and eventually released in a gem version I'm inclined to go with the workaround I've implemented in 27492d33322f87c3d47420db39cb39cddcc67983 until then.


Problems with new mode and auto-detection

Hi,
it's a long time, but I've cleaned up my codebase and now I could add a regex mode.
But before I can provide that code with a clear conscience, I've to resolve some final problems ;)
The main problem I still have is the language auto-detection feature (maybe related to #1213).
When I run the tests, I get several errors while hljs.highlightAuto().
If I set the relevance as I think it has to be, I get 132 mismatches...
However, If I don't set any relevance-property at all, there are a few less - but still 123...
But even if I set relevance to zero on every submode (and even the mode itself) in my language definition, I still get 18 misdetects (e.g. brainfuck, clean, javascript, qml, vbscript, ...).
Now, I try to add some illegals, but I'm not sure if that will really help here (there are not that much patterns that aren't allowed in common regex flavors)..
Do I miss something?

Is this still an open issue?  The auto-detection stuff is tuned so it's very fragile and easy to get out of balance... I'm not sure what you're doing - are you adding a new grammar or?

Ping.

Closing due to inactivity (and old issue).  If there is still a question or issue here feel free to reply anytime and we can reopen if necessary.


default nodeSelector labels

currently, the device plugin CR samples set nodeSelector that no-one sets:
deployments/operator/samples/deviceplugin_v1_dlbdeviceplugin.yaml:  nodeSelector:
deployments/operator/samples/deviceplugin_v1_dlbdeviceplugin.yaml-    feature.node.kubernetes.io/dlb: 'true'
--
deployments/operator/samples/deviceplugin_v1_fpgadeviceplugin.yaml:  nodeSelector:
deployments/operator/samples/deviceplugin_v1_fpgadeviceplugin.yaml-    feature.node.kubernetes.io/fpga-arria10: 'true'
--
deployments/operator/samples/deviceplugin_v1_gpudeviceplugin.yaml:  nodeSelector:
deployments/operator/samples/deviceplugin_v1_gpudeviceplugin.yaml-    feature.node.kubernetes.io/gpu-i915: 'true'
--
deployments/operator/samples/deviceplugin_v1_qatdeviceplugin.yaml:  nodeSelector:
deployments/operator/samples/deviceplugin_v1_qatdeviceplugin.yaml-    feature.node.kubernetes.io/qat-c6xx: 'true'
--
deployments/operator/samples/deviceplugin_v1_sgxdeviceplugin.yaml:  nodeSelector:
deployments/operator/samples/deviceplugin_v1_sgxdeviceplugin.yaml-    feature.node.kubernetes.io/custom-intel.sgx: 'true'

(except SGX)
The next NFD release brings powerful labeling capabilities. We should have the samples defaults backed by NFD labeling rules and documentation how to deploy/use them.
This is to avoid end-user confusion that pods don't run when using the samples.

@mythi

The next NFD release brings powerful labeling capabilities.
Can you point me out on them? Are they described in the customization guide?

@bart0sh that's the place for more info.

@mythi would it be better to contribute to change NFD to support all our devices instead? So far it's done for sgx only.

@mythi where would you suggest to put nodefeaturerules yaml[s]? They should be applied before plugins as nfd rescans them once per minute.
would it make sense to put all of them into one file and tell users to load all of them in advance with kubectl -f ?


update(userspace): add an extra checks to clear syscalls

What type of PR is this?
/kind cleanup
Any specific area of the project related to this PR?
/area libscap-engine-bpf
/area libscap-engine-kmod
/area libscap-engine-modern-bpf
Does this PR require a change in the driver versions?
No
What this PR does / why we need it:
This PR covers the case in which some syscalls don't have an associated ppm_sc and so we cannot set them as (un)interesting. For this reason, we default them to 0.
Which issue(s) this PR fixes:
Special notes for your reviewer:
Does this PR introduce a user-facing change?:
NONE

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: 042cd7fbfb01b8fa3e876cc9b39a92607ac8cfb5

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, FedeDP
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97,FedeDP]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, FedeDP, jasondellaluce
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97,FedeDP,jasondellaluce]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Custom Decorators in Django

Article checklist
Attention
Our Peer Reviewer and Content Moderator teams do NOT provide any revisions services. All revisions and edits should be completed on your own forked repo (as to not take up room in the queue) in order for our team to review them all in a timely manner.
ANY ARTICLE SUBMITTED WITH GLARING ERRORS WILL BE IMMEDIATELY CLOSED.

As a rule of thumb - please be sure to only submit articles (pull requests) that are fully polished and ready to be published. Be sure to go through our resources documents for extra and 3rd party (vetted) resources to help improve overall technical writing.

Pre-submission checks

Please ensure that you have only one open topic suggestion (issue) + in-review article (linked pull request) at a time. This will ensure that we complete the review process in a timely manner from inception to publishing

If you have not already, please go over our Resources Page for more tips and tricks on how to improve your overall technical writing so reviews are swifter, increase the chance of a payout and provide more value to our readers.

For first-time contributors and for more details on our submission guidelines, see our Contributing Guidelines.

Formatting and structure checks

[x] Have you used the correct folder and file structure? - see Contribution Guidelines

[x] Is your article properly formatted in Markdown? - see Github Markdown guide

[x] Have you used our preferred heading structure? - H3 (###) and up

[x] Does your article follow any of the suggested structure formats? - see example formats

[x] Is your article over 750 words? - Tool: Wordcounter.net

[x] Is the article you are submitting an in-depth and unique article? Does it go beyond what is in the official docs and what is covered in other blog sites. See these articles as examples.

[x] Does your article provide enough value and detail about your topic? - Articles should be clear, accurate, and fully explained.

[x] Can your article be understood by beginners? - Assume the audience is smart but has no prior exposure to the common terminology in your article.

[ ] Have you included a hero image that is 600x400 pixels, under 300KB in size, and have the copyright to use it? - Tools: Pixlr Image Editor for resizing and Unsplash for Creative Commons images

Grammar & plagiarism checks

[x] Have you spellchecked and grammar checked your article? - Tools: Write&Improve - ProWritingAid - Grammarly
[x] Please place your article through a 3rd party plagiarism checker. We suggest using Quetext, this tool is free and has a daily limit. We typically accept articles with 10% or less.
[x] Have you checked your article for readability? - Tool: Hemmingway
[x] Have you added sources for quotes and images that aren't yours?

Technical checks

[x] Are your code snippets properly formatted for syntax highlighting - see Syntax guide
[x] Have you checked your code runs correctly and you've highlighted all necessary dependencies for installation?
[x] Are the software programs and packages you're highlighting in your article up to date, using current versions and not deprecated?

Topic suggestion this closes

Remove the backticks and add the issue number below to link and close your Topic Suggestion (issue) when your article has been published (PR has been merged). See this video for more details.

This closes #7701

Finally, delete the article checklist notes in blockquotes and submit your PR. We look forward to reviewing your article.

🚀

@BOVAGE
Question, does this pull request have a corresponding topic suggestion form?

👍
Thank you - just needed to make sure they were linked (see image) that way once the article is published (merged) it auto-closes the topic form as well.

👍
Thank you - just needed to make sure they were linked (see image) that way once the article is published (merged) it auto-closes the topic form as well.

Okay sir. Got it

@BOVAGE just noticed that you have not included any author details (to create your author profile).
This is how your articles will be listed under your profile.
In order to publish the article we would need your author details - please see the new contributor folder for more info on how to submit.

@BOVAGE just noticed that you have not included any author details (to create your author profile).
This is how your articles will be listed under your profile.
In order to publish the article we would need your author details - please see the new contributor folder for more info on how to submit.

I added the author details now sir.

Plagiarism check is done

Hello @BOVAGE  I will get started on this technical review as soon as possible. Sorry for the delay. Thanks

@Collince-Okeyo would like to do a test review on this PR
@WanjaMIKE  if you have not started yet.
👍

Sure, @Collince-Okeyo you can take up the PR. Thanks

🚀
Thank you Mike
@Collince-Okeyo
@WanjaMIKE is a veteran in the program - he is always a reliable resource if you have any questions as well. 💯

Sure, @Collince-Okeyo you can take up the PR. Thanks

Thank you @hectorkambow and @WanjaMIKE for this opportunity

@Collince-Okeyo, I have made the suggested changes. Thank you.

@Collince-Okeyo
It looks like this PR is ready for a "ready for final review" label?
Assuming both prelim & tech review have been completed?

@Collince-Okeyo
It looks like this PR is ready for a "ready for final review" label?
Assuming both prelim & tech review have been completed?

@hectorkambow , thank you for following up,...
The PR is ready for a "ready for final review" label since all the reviews are completed.

Hello @hectorkambow ,
Please add the 'ready for final review' tag to this PR

Hello @hectorkambow.
@Collince-Okeyo is done with the review.

Thank you for the ping @BOVAGE
I lose many notification in my inbox.

@BOVAGE
Well done !
Please review any edits made by your peer reviewer (or myself) to improve future blog post.
You'll be able to see your live published article on the site (in about 30 mins or so).
To give your article a boost in page engagement - be sure to share it across your social site (LinkedIn/Twitter) and tag the EngEd program so we can also share it and give it some traction/exposure as well!
If you have not done so already - consider adding a skill section to your author page. This will go a long way for potential future employers.
NOTE: Also, take into consideration that you can add any other past projects of yours: videos, talks, tutorials, articles (on ANY other site) - you can add them to your EngEd profile.
Think of the EngEd profile as your one-stop shop for everything you do in DEV - making it easier for you to share all your accomplishments when you go out for an interview or employment opp.
It can be from any blog site (or site in general).
Let me know if you have any questions moving forward.
Also important NOTE: We wanted to mention that we're going to take a focus on content centered around Kubernetes (K8s) for the month of August.
The best five (5) K8s related articles that come in this month will be eligible to receive a complimentary virtual pass to KubeCon USA ($75.00 value) in Oct.
We're looking for content that enriches developers' understanding of K8s, best practices, and its many use cases.
Please be sure to go over the already published content the EngEd community has created on Kubernetes to see where we can build upon or further explore. 🚀


Error execute example

Hi.
i need help with this error when i execute the example code and when the app try to inflate a component this fail
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.mercadopago.example/com.mercadopago.MainActivity}: android.view.InflateException: Binary XML file line #22: Binary XML file line #22: Error inflating class com.mercadopago.customviews.MPTextView
what can i do for resolved this problem?

Issue has been solved


Fix bug caused by changing of names of persons

as attendees stores names of persons.
thus, make names of persons unique and uneditable.

fixed


Add pull request template

Description
Please provide a summary of the pull request and the issue it fixes. Please add necessary details, context, dependencies, explanation of when review is needed (see next section), etc.
This pull requests adds a pull request template file which will be used to fill in the description section (like here) when creating pull requests in the future. Please review this soon so that any future contributors can benefit from using the template. Thanks.
Fixes #575
Review Time Estimate
Please give your idea of how soon this pull request needs to be reviewed by selecting one of the options below. This can be based on the criticality of the issue at hand and/or other relevant factors.

[x] Immediately
[ ] Within a week
[ ] When possible

Type of changes
Please select a relevant option:

[ ] Bug fix (non-breaking change which fixes an issue).
[ ] New feature (non-breaking change which adds functionality).
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected).
[x] Other (any another change that does not fall in one of the above categories.)

Checklist:
Please select all applicable options:

[ ] I have signed the Rokwire Contributor License Agreement (CLA). (Any contributor who is not an employee of the University of Illinois whose official duties include contributing to the Rokwire software, or who is not paid by the Rokwire project, needs to sign the CLA before their contribution can be accepted.)
[x] I have updated the CHANGELOG.
[x] I have read the Contributor Guidelines.
[x] I have performed a self-review of my own code.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My change requires updating the documentation.
[x] I have made necessary changes to the documentation.
[ ] I have added tests related to my changes.
[x] My changes generate no new warnings.
[ ] New and existing unit tests pass locally with my changes.
[ ] Any dependent changes have been merged and published in downstream modules.

@sandeep-ps this pr looks good to me. Would you fix the conflicts, then we will merge it. Thanks.

Resolved conflicts. Thanks.


[FEATURE REQUEST] Time/Date constants are missing from the safe bindings

This time/date constants are missing from the safe bindings

G_TIME_SPAN_DAY
G_TIME_SPAN_HOUR
G_TIME_SPAN_MILLISECOND
G_TIME_SPAN_MINUTE
G_TIME_SPAN_SECOND

How would they be used from C, and for which API?

I'm using the G_TIME_SPAN_DAY to get the number of days in a TimeSpan
like so:
today_midnight.difference(&date) / G_TIME_SPAN_DAY

Maybe TimeSpan should be an actual struct (Deref<Target=i64> etc) and implement as_days(), as_minutes(), etc. methods (and from_days() etc constructors) on it? That seems nicer to use than such constants.
What do you think?

Maybe TimeSpan should be an actual struct (Deref<Target=i64> etc) and implement as_days(), as_minutes(), etc. methods (and from_days() etc constructors) on it? That seems nicer to use than such constants.

Sounds good to me.


DFP-2759 Removed secret information from logs

Is there any way to create a test to verify this is producing the expected logs?


Initial home page

When there's no project open or the last one can't be found, display a text explaining the situation, and a Browse button

Fixed


Unable to find a specification for React-Core depended upon by EXSplashScreen

Description
When I trying pod install in ios folder I getting this error.
Unable to find a specification for React-Core depended upon by EXSplashScreen
You have either:

out-of-date source repos which you can update with pod repo update or with pod install --repo-update.
mistyped the name or version.
not added the source repo that hosts the Podspec to your Podfile.

Version
0.69.6
Output of npx react-native info
System:
OS: macOS 12.5.1
CPU: (10) arm64 Apple M1 Pro
Memory: 117.50 MB / 16.00 GB
Shell: 5.8.1 - /bin/zsh
Binaries:
Node: 16.13.2 - /usr/local/bin/node
Yarn: 1.22.18 - /usr/local/bin/yarn
npm: 8.7.0 - /usr/local/bin/npm
Watchman: 2<IP_ADDRESS> - /opt/homebrew/bin/watchman
Managers:
CocoaPods: 1.11.3 - /opt/homebrew/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 21.4, iOS 16.0, macOS 12.3, tvOS 16.0, watchOS 9.0
Android SDK: Not Found
IDEs:
Android Studio: Not Found
Xcode: 14.0.1/14A400 - /usr/bin/xcodebuild
Languages:
Java: javac 19 - /usr/bin/javac
npmPackages:
@react-native-community/cli: Not Found
react: Not Found
react-native: Not Found
react-native-macos: Not Found
npmGlobalPackages:
react-native: Not Found
Steps to reproduce
When I trying pod install in ios folder I getting this error.
Unable to find a specification for React-Core depended upon by EXSplashScreen
You have either:

out-of-date source repos which you can update with pod repo update or with pod install --repo-update.
mistyped the name or version.
not added the source repo that hosts the Podspec to your Podfile.

Snack, code example, screenshot, or link to a repository
When I trying pod install in ios folder I getting this error.
Unable to find a specification for React-Core depended upon by EXSplashScreen
You have either:

out-of-date source repos which you can update with pod repo update or with pod install --repo-update.
mistyped the name or version.
not added the source repo that hosts the Podspec to your Podfile.

Hi @cankilinc
Thanks for reporting this issue.
I believe this issue is related to expo-splash-screen and the way how it integrates with React Native core. Please open this issue against this other repository:
https://github.com/expo/expo/issues
I'll be closing this but feel free to reopen if the other repo points back to us as a issue in the core of React Native.


Remove some Limitations / Pitfalls

Hi There
I have a proposal to improve the PoExtractor and would like to get some feedback from you whether you the proposed solution is agreeable with the project and whether you would accept a PR.
Motivation
My team discussed using this tool and we anticipate the limitations regarding name convention and msgctxt to lead to some friction:

our coding style says field members need to start with a lower case character. We'd have a choice of:

ignoring "warnings" in the IDE --> this lessens the values of IDE warnings overall
each and every time add a // ReSharper disable once InconsistentNaming required directive --> cumbersome.

deriving the msgctxt from the class the  IStringLocalizer is used in creates a few scenarios where the PoExtractor uses a different msgctxt than OrchardCore.Localization will use. These can happen by accident. The code will still compile, and we'll only find out once someone reports localizations as missing - creating friction in the process. This can happen accidentally, for example, when you move some code using IStringLocalizer<T> to another class.

theoretically we could write an Analyzer ourselves to ensure code is conformant with the conventions used in the PoExtractor. However, that would duplicate some of what PoExtractor is doing - so not better to maintain. Furthermore, if we can write an analyzer which can judge conformity (correct name for IStringLocalizer<T>, T is correctly chosen), we can most likely also just remove the limitations with similar code. And we think that's worth more.

Solution Idea
What's missing in the current implementation is, instead of just reading the AST, also resolving types.
From some quick research it seems to me that for this we need a roslyn SemanticModel besides the SyntaxTree. And the SemanticModel requires a Compilation.
I've done a very dirty proof of concept:
See here
and here
The result of this is, that the field/property the  IStringLocalizer<T> is assigned to can have any name.
The part of generating a different msgctxt depending on the type parameter T is not addressed, but from what I see can be done with the information already made available in this change.
I'm not really experienced with Roslyn, so there's a few questions-marks / risks:

maybe there's a better way to achieve the same
haven't tested how it works when the code doesn't compile
haven't tested whether/how it works when the source references another version of the Microsoft.Extensions.Localization, which defines the IStringLocalizer<T> interface
maybe a Compilation doesn't really mean compiling it... I just don't understand this well enough, yet ;-)

Having said that, I think it's not unlikely that it would only work on compiling (error-free) code (warnings would probably be fine).
If that limitation is fine, maybe the PoExtractor could be simplified by removing explicit support for razor (and even liquid?) templates by opening + building the whole project. My expectation here is that this would deal with generating the classes from .razor files automatically and the tool could then work on any class and not care for whether it's razor/liquid or whatnot.
I would, however, expect this to slow down processing time.
For us, both would be acceptable.
Alternative Solution
Instead of using Roslyn, and analyze source code, one could also analyze the IL with Mono.Cecil. From past experience, I would say, for the problem at hand, Mono.Cecil is simpler to work with than SyntaxTree + SemanticModel but:

only ever works on compiled code. The current solution does not need a compiled result, it doesn't even need code without errors / compiling code.
Cecil development seems to be on the backburner, and I'm not sure about continued support/development
don't know how well this integrates with AoT / native compilation
consider me biased because I have experience with Mono.CeCil but almost none with Roslyn

I appreciate your input @BrunoJuchli, all the feedback is welcome:
Regarding localization field names, I remember that we suggested in the past to make optional, the user can provide his/her names

deriving the msgctxt from the class the IStringLocalizer is used in creates a few scenarios where the PoExtractor uses a different msgctxt than OrchardCore.Localization will use.

Could you please elaborate?

Instead of using Roslyn, and analyze source code, one could also analyze the IL with Mono.Cecil.

I don't think it's something that can we go for unless there are some good reasons - regardless of your experience in Cecil :) -
I'm glad to collaborate with you guys to make the PO Extractor works as expected with your project(s)

I suggest that you write a failing test so that we can start to fix the issues that you are facing

I appreciate your input @BrunoJuchli, all the feedback is welcome:

I appreciate your quick feedback and willingness to hear what I have to say :-) Thanks!

Regarding localization field names, I remember that we suggested in the past to make optional, the user can provide his/her names

This can address the problem of the convention being in violation of the "users" coding style guide.
However, it does not address the problem where these are accidentally misnamed.
These cases are likely to fall through safety nets and make it to production.
In our case, our release cycle works with late-localization. That is, we first deploy a release where not all texts are localized. Localization then happens some time after (few days). That is, it's not unexpected to see "developer texts". On the translation side, we have tooling support to tell translators that there's translations missing. Of course, it doesn't pick up what isn't extracted to the PO, so probably no-one will notice these untranslated texts for quite a while.
The result is:

degradation in the quality of our software. Instead of taking days, it could take months.
customers need to reach out to us to inform us about a bug. This costs the customer, our support team, and ultimately binds development resources. All involved parties of course have better use for their time ;-)

Therefore my goal is to get rid of the conventions in the PO Extraction tool (you can still use them in your SW, it doesn't matter). Instead, it should follow the rule:
If it compiles, extraction works.

deriving the msgctxt from the class the IStringLocalizer is used in creates a few scenarios where the PoExtractor uses a different msgctxt than OrchardCore.Localization will use.

Could you please elaborate?

namespace ExampleApp;

public class Foo(
    IStringLocalizer<Bar> S)
{
      public void DoSomething()
      {
           Write(
                S["this is some translatable text"];
      }
}

The po extractor will create:
msgctxt "ExampleApp.Foo"
msgid "this is some translatable text"
msgstr ""

And OrchardCore.Localization will search for:
msgctxt "ExampleApp.Bar"
msgid "this is some translatable text"
Note: I originally wrote "a few scenarios". For code-examples, it's just this one. I was thinking in scenarios how you could accidentally get to this state of violating the convention and expressed myself poorly. But here's how you can accidentally achieve this scenario:

copy + paste or move the IStringLocalizer<T> definition to another class.
duplicate a class, but forget to adapt the T of IStringLocalizer<T>.
(automated) extract class refactoring

Instead of using Roslyn, and analyze source code, one could also analyze the IL with Mono.Cecil.

I don't think it's something that can we go for unless there are some good reasons - regardless of your experience in Cecil :) -

I understand and concur with your assessment.

I suggest that you write a failing test so that we can start to fix the issues that you are facing
I'll do that.

If you've got some idea/knowledge about the compilation / SemanticModel aspect I'd appreciate it very much if you could give me some feedback whether you think it would be acceptable to use it.

In your example above, there's an issue that we are facing frequently, the generic type SHOULD be the same as the class name, we suggested creating an analyzer instead

@sebastienros @Skrypt your thoughts

In your example above, there's an issue that we are facing frequently, the generic type SHOULD be the same as the class name, we suggested creating an analyzer instead

Writing an analyzer is more work than removing these conventions from PO extractor.
The reason for this is, that the analyzer would use the same tools (roslyn) that PO extractor is already using.
It requires the same code to determine whether the correct type is used as the PO extractor would use to get rid of the convention.
From a usability perspective, I would also argue that the analyzer is worse.
Do you agree?

I'm writing an analyzer in the client app that uses this library.
I think we could fix the generated localization resource here but the issue no one will tell the app the types should match, right?

I'm writing an analyzer in the client app that uses this library.
I think we could fix the generated localization resource here but the issue no one will tell the app the types should match, right?

When the PoExtractor is changed, why should the types match? It'll be up to consumer to decide whether they should match.
Each developer/team can decide for their own conventions (or lack thereof).
If they decide for a convention, then an analyzer would be useful --> so I see why offering an Analyzer makes sense.
Is there a reason why the convention would need to be followed by everyone using Orchard? And the PoExtractor?
(In my case, I would certainly prefer it to be opt-in, but I'm not using orchard itself).

Even if you are not using OC if you check ASP.NET Core samples, you will notice generic types for the logger, string localizer .. etc should match the class, so this is not OC specific. I agree for naming the localizer fields they should be framework agnostic

Even if you are not using OC if you check ASP.NET Core samples, you will notice generic types for the logger, string localizer .. etc should match the class, so this is not OC specific. I agree for naming the localizer fields they should be framework agnostic

Ah yes. I blame microsoft for establishing this practice 🙄 - a pity.
I do understand that as component authors it makes sense to follow "established practice". Even though arguably there exists better practice, and so I would say it would be nice to support both ;-)

Instead of using a type parameter, pass the info into the ctor, say like:
public class Logger : ILogger
{
     public Logger(
         Type type)
     {
     ...
     }
}

And when injecting the ILogger into FooService, the DI container would pass typeof(FooService) as the type parameter to the Logger implementation. There's plenty of DI containers which are capable of doing so. For some examples, see here.
That's  less typing for developers, no chance for mistakes, and it doesn't require writing an analyzer... ;-)

Ah yes. I blame microsoft for establishing this practice 🙄 - a pity.

lol, could you please elaborate on why you are using a different type in the generic type?

The PoExtractor could also emit an error if the type parameter T of IStringLocalizer doesn't match the type of the class it's used in.

Could be, but I think this is not a tool responsibility, right?

Ah yes. I blame microsoft for establishing this practice 🙄 - a pity.

lol, could you please elaborate on why you are using a different type in the generic type?

Because I make mistakes, and for our localization tooling it doesn't matter much ;-)
But, after our discussion, I understand see that there's no value in deliberately choosing a different T. And therefore, the analyzer makes sense, because it's better to fail fast in the IDE than later when executing extractpo.
So thanks for being that patient with me ;-)
(Like I said, it would be even nicer if the type would be left out instead, and would be deduced reliably per convention (so, basically, what PoExtractor is doing, but not what OrchardCore.Localization is doing)).

The PoExtractor could also emit an error if the type parameter T of IStringLocalizer doesn't match the type of the class it's used in.

Could be, but I think this is not a tool responsibility, right?

I think this depends on intended usage of the tool. If you pass it invalid input, the tool should give back an error.
That is:

if extractpo respect the T argument of IStringLocalizer<T> (that is, deduce the msgctxt from it), then it should not warn in case T doesn't equal the class IStringLocalizer<T> is used in.
if extractpo deduces msgtxt from the class  IStringLocalizer<T> is used in, then using IStringLocalizer<Bar> inside of Foo is invalid data. There is no point in creating POT entries for these, instead a warning/error should be generated.

Vision
So, to cover all cases optimally, I think it should work as follows:
Analyzer
Searches for usages of IStringLocalizer<T>. When the T doesn't match the type it's used in (for example, using IStringLocalizer<Bar> inside of Foo) the analyzer generates an error.
Optionally, it could also offer a fix-up, which would be to change the T from Bar to Foo.
ExtractPo
Generates POT files from usages of IStringLocalizer[...] and IStringLocalizer<T>[...].
The name of fields and properties the IStringLocalizer/IStringLocalizer<T> is assigned to does not matter.
The following rules would be used to define msgctxt:

IStringLocalizer<T> --> full name of T.
IStringLocalizer --> full name of the type the IStringLocalizer is used in

To make it clear I didn't say that the analyzer should be a part of this repo :)
For T, S, and H I agree with you, I will try to make it optional, there's a related issue in the repo
For generic parameters, we could use the passed type and log a warning during the extraction process

Hope the above suggestions are fine for you


Break up Misc section

I also added the typescript config

Ooo, I like this change a lot. Thank you!

Thanks


Alternative display using template in jsp

As this Alternative display using template is in HTML Code .
I wanted to know how to rewrite it in JSP.
Thank You!

I'm sorry @snehadhiravani9 , that request doesn't really even make sense. HTML is a client (browser) side technology. JSP is a server side technology. What you do on the server side is entirely up to you, and has no bearing on Slickgrid or on the templates.


chore: Update Pizza Action to Latest Version ()

Description

I have updated the gh action
Related Tickets & Documents

fixes #206
Mobile & Desktop Screenshots/Recordings

Steps to QA

Tier (staff will fill in)

[ ] Tier 1
[ ] Tier 2
[ ] Tier 3
[ ] Tier 4

[optional] What gif best describes this PR or how it makes you feel?

@jpmcb, I think we need to add a tag v2 for this to work? Right now it shows it as an invalid version if you use @v2.


Color of outside circle of indicated cards in Rainbow-mode not clearly distinguishable

The color indicator for a hinted card in a 'rainbow'-game is not properly visible. I would suggest making the border of the color indicator circle thicker, or use a divided circle instead of a cirle
It's especially the difference between green&multicolor and blue&multicolor circles of indicated cards on smaller screens, as these colors are very close to eachother.

These colors blue and green are too hard to distinguish if the size is small.
My suggestion is to make the outter circle larger, or even better to split the circle, as I've done in the example:

Also, when it's just/certain multicolor, there is a small grey circle around the multicolor indicated card, which could be misinterpreted as 'white':

I would suggest removing the grey circle, or making it black.

I like the split circle. Will try!


feature request: Flag to prioritize locally installed formatter

Did you check existing requests?

[X] I have searched the existing issues

Describe the feature
It would be nice to have a flag for the config that made conform prioritize locally installed formatters, instead of those installed by Mason
Provide background
Often we may find ourselves working in a project where we need to abide to certain formatting guidelines, and the tools used are not the same that we may personally use, for example:
In a Typescript project, we might personally choose to use BiomeJS, but we may find ourselves working in a project that expects us to run Prettier.
Right now, if we configured Conform like so:
typescript = { "biome", "prettier" }
We would always run BiomeJS on the file, regardless of whether the project that we're working on already has a configuration file for Prettier, and has its binary installed as a dependency
What is the significance of this feature?
nice to have
Additional details
No response

I just found out the following snippet :
  formatters_by_ft = {
    python = function(bufnr)
      if require("conform").get_formatter_info("ruff_format", bufnr).available then
        return { "ruff_format" }
      else
        return { "isort", "black" }
      end
    end,

see https://github.com/stevearc/conform.nvim/blob/master/README.md#options
Haven't tried it on my own, but it looks like you could do similar to pick prettier if it's available + fallback to biome.

This is correct way to get that behavior. All the tools are available, you just have to write the glue code yourself.

@stevearc I have a similar question but about local vs global installs of the same tool.
If I have prettier installed globally, but it's also set up locally in the project with some extra plugins that I don't have installed globally, is there a way to prioritize using the local install rather than the global one?


Ensure SharedAssetDepot stays alive while lock is held

This is a PR into #1049 so merge that first.
This fixes a problem I noticed while looking at CesiumgS/cesium-unity#540. The SharedAssetDepot keeps itself alive until the last asset it manages becomes unreferenced. It does this by maintaining an IntrusivePointer to itself in some situations. The problem is that it can release this reference while the current thread also holds the mutex. This will result in the SharedAssetDepot being destroyed (just) before the mutex is released, which causes undefined behavior (an assert in debug builds, to start).
This PR adds a test to demonstrate the problem. It fixes it by using a helper class to hold a reference to the depot while the mutex is locked, so that the depot always outlives the mutex lock.

Thanks @kring ! I think everything makes sense. Nothing jumps out at me so I'll go ahead and merge :smile:


Docs reorganization

I've been walking through the documentation and had a few notes.  I'd be happy to make these changes but wanted to check in before I submitted anything.
The separation between single machine and distributed learning seems odd to me.  Many of the topics listed in single machine (grid search, pipelining, possibly even incremental learning) are still relevant when on a cluster.
I might instead flatten the TOC to just remove the single-machine/distributed distinction, and give all of the subsections their own home.  This might flatten the TOC to something like the following:

Pipelines
Hyper-parameter search
Incremental learning
Generalized Linear Models
Joblib
XGBoost
Clustering
Examples
API

I've also found it pleasant recently to start sections with the API relevant for that section.  Futures docs for an example.  This gives a quick list at the beginning of each section on the API relevant for that section.  Those functions still link to the main API doc page.
Any thoughts or objections to this reorganization @TomAugspurger ?

The separation between single machine and distributed learning seems odd to me.

Agreed. I'm not sure why I found that distinction so relevant a few months ago.
Your proposed TOC sounds reasonable. For now, I think Pipelines would make a good home for things in preprocessing/.

I've also found it pleasant recently to start sections with the API relevant for that section.

That could get a bit boring for scikit-learn style estimators, since it'll (almost) always be.fit, .transform, etc :) Perhaps I'm misunderstanding though.

And I'll have time to work on this later today or tomorrow, as I wait around for pandas release things to finish.

That could get a bit boring for scikit-learn style estimators, since it'll (almost) always be.fit, .transform, etc :) Perhaps I'm misunderstanding though.

Yeah, to be clear I'm saying that we just add the .. autosummary:  line at the top of each relevant section.   When you go to the Generalized Linear Models section you see LinearRegression, LogisticRegression, PoissonRegression, _GLM at the top of the section.  If you care to you can click on those to be taken to the full API docs on another page.


feature: labels at kcp- namespaces in workload clusters

Feature Description
The kcp syncer generates namespaces with cryptic names in the workload clusters and the additional information about the source of the namespace is stored in an annotation. This is:

hard to use when listing the namespaces
hard/impossible to use in Prometheus query

In addition, consider a situation when the same deployment is deployed in two instances of kcp (kcp-stable, kcp-unstable) using the same names of namespaces, workspaces, and deployments.
If there is only one workload cluster that has two syncers syncing the workloads from both kcp instances, then spotting the right namespace is a real challenge. The reason is that the namespace and workspace names are the same for both kcp instances. The only way to figure out which namespace belongs to which kcp instance is also to know the UID of the SyncTarget.
The same complication would be also faced while doing some aggregated Prometheus queries (Grafana dashboards) over multiple kcp instances (and associated workload clusters)
Proposed Solution
Instead of using only the annotation for storing the information about the source of the namespace, the syncer would create also labels for each of the generated namespaces. The labels would define:

namespace name
workspace path

the namespace was synced from.
In addition, when creating the SyncTarget, there would be also an option to specify additional labels to be added to each of the namespaces that are generated/managed by the syncer. eg:
kubectl kcp workload sync synctarget-for-kcp-stable --additional-labels kcp.instance=kcp-stable ...

In that way, we could easily filter the needed namespaces and create Prometheus queries in a Grafana dashboard.
Alternative Solutions
We can add some additional labels in our GitOps repository, but:

it makes the aggregated GitOps repository much more complicated
these labels would end up in a deployment/pod, but not at namespace level

So it's more like a workaround, but not a solution
Want to contribute?

I would love to, but I suffer from lack of my time

Additional Context
No response

This is straightforward to implement it seems
@sttts I think we mostly need your insight about how much we want to leak this type of information in the WorkloadCluster.
However today the NamespaceLocator annotation contains all this information available (SyncTarget name, workspace, uid + upstream namespace and workspace).
So if this is acceptable as a visible annotation, why can't we add some of this already-visible information in label ?

Given the data is already present in an annotation, it's no less secure to also have it in labels. No objections from my side.

/transfer-issue contrib-tmc


fixed: 'this' and 'self' issues in server.js, storage.js and commente…

Hey, I took the liberty to fork and try out your fork. Had some issues with it, but managed to get around them. So here are my 2c perhaps they help out in the future...
Also some questions.
If I am using copay front-end. Why is then addressFormat: 'cashaddr' ?
Why am I getting keys wallet.beAuthPrivateKey and wallet.beAuthPublicKey to be null? Can they be null? This is why I commented out  $.checkState(wallet.beAuthPrivateKey); otherwise I get Error: Invalid state,
In v8.js line 183 i replace wallet.beAuthPublicKey with wallet.pubKey could this work instead or have I created an error without knowing it?

Hi! Thanks!
this is still WIP, it should be ready ~ next week.

If I am using copay front-end. Why is then addressFormat: 'cashaddr' ?

This is the address format of the blockchain explorer.   Bitcore v8 user cashaddr.  Old insight-api, copay.

Why am I getting keys wallet.beAuthPrivateKey and wallet.beAuthPublicKey to be null?

that was an error on the code, I am fixing it now.  Those are the auth credentials for the block explorer.
thanks for taking a look.  Please check this branch for next updates.

Awesome, thank you for quick response. Please, let me know if I can somehow help - contribute. I will be watching and testing your V8 branch occasionally. Best of luck!


Avoid OutofMemory exceptions from intensive queries

We should be doing this

Done in https://github.com/KnowWhereGraph/kwg-deployment/pull/34/commits/ee578e2c5717862eacdf5b2dd898fb63e52198a9


[pubsub] handle unsubscriptions from processes with no active subscriptions

Fixes https://github.com/whatyouhide/redix/issues/168.

Great catch! Thank you @superhawk610 💟

@whatyouhide saw that a new release had been published and updated assuming this PR would be included, but I noticed that 0.10.6 doesn't include this change. Perhaps this was by mistake?

@superhawk610 I think it does? https://diff.hex.pm/diff/redix/0.10.5..0.10.6
What made you think that 0.10.6 doesn't include this?

@superhawk610 it was kind of by mistake, I wanted to get the urgent memory leak fix out on 0.10.6. Just released v0.10.7 👍

Thank you!


error : an illegal memory access was encountered at ...

Hi
when inferring the model an error occurred
this my code
from torch2trt import TRTModule
import torch
import cv2

model_trt.load_state_dict(torch.load('pose_trt.pth'))

net_input_height_size = 256
img_mean=(128, 128, 128)
img_scale=1/256
stride = 8
pad_value=(0, 0, 0)

image = cv2.imread('aaa.png')
height, width, _ = image.shape
scale = net_input_height_size / height

scaled_img = cv2.resize(image, (0, 0), fx=scale, fy=scale, interpolation=cv2.INTER_CUBIC)
scaled_img = normalize(scaled_img, img_mean, img_scale)
min_dims = [net_input_height_size, max(scaled_img.shape[1], net_input_height_size)]
padded_img, pad = pad_width(scaled_img, stride, pad_value, min_dims)

tensor_img = torch.from_numpy(padded_img).permute(2, 0, 1).unsqueeze(0).float()
output_trt = model_trt(tensor_img)
print(output_trt)

this error
THCudaCheck FAIL file=/pytorch/aten/src/THC/THCCachingHostAllocator.cpp line=278 error=700 : an illegal memory access was encountered
...
...

RuntimeError: cuda runtime error (700) : an illegal memory access was encountered at /pytorch/aten/src/THC/THCCachingHostAllocator.cpp:278

Do you have any solution
Thanks

Hola,
I don't see the the compiled model istance (  model_trt = TRTModule() ) in the code you sent.
Try to use a simple kind of data first like ( data = torch.rand((1, 3, 256, 344)).cuda() ).
Unfortunately I don't remember such an error and now I don't have the right machine to run those codes because my laptop doesn't support cuda.
Anyway do you get that error only with the compiled net? So you have succesfully trained your net and inferred with it without compilation?
Hope it can help

i used the pth-> onnx->trt method succeeded infer this model


Fix and update docs

This PR makes 3 changes to the code examples in the docs.

Fix incorrect parameters used in addIf method.
Corrects the 2nd and 3rd arguments to be title and url respectively. Additionally, it ensures that the configure callback is placed as the 4th parameter, and the callback now receives a Section instance instead of a Navigation instance.

Populate missing attributes and depth to the array outputs.

Simplified the usage by utilizing arrow functions in the callbacks.

Feel free to share your thoughts and review.😄

Thanks!


Feature/send username messaging

This feature enables a user to send a username via messaging to the respective counterparty.

Codecov Report

Merging #268 into master will decrease coverage by 0.25%.
The diff coverage is 16.66%.

@@            Coverage Diff             @@
##           master     #268      +/-   ##
==========================================
- Coverage   63.16%   62.91%   -0.26%
==========================================
  Files          19       19
  Lines        1105     1111       +6
  Branches      209      209
==========================================
+ Hits          698      699       +1
- Misses        353      358       +5
  Partials       54       54

Flag
Coverage Δ

#integration
34.38% <16.66%> (-0.1%)
:arrow_down:

#unit
62.91% <16.66%> (-0.26%)
:arrow_down:

Impacted Files
Coverage Δ

src/typings.ts
100% <ø> (ø)
:arrow_up:

src/Messaging.ts
29.41% <16.66%> (-2.74%)
:arrow_down:

Continue to review full report at Codecov.

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


snyk protect

https://support.snyk.io/hc/en-us/articles/360003812558-Protect-your-code-with-patches

Would deal with this:

https://github.com/lodash/lodash/issues/4738
https://snyk.io/test/github/danielnixon/eslint-plugin-total-functions?targetFile=package.json

Another option to deal with the lodash vuln: https://github.com/typescript-eslint/typescript-eslint/issues/2279


fix(deps): build psycopg3 instead of using pre-build binary

Description
Since the update of the base python docker image from alpine:3.16 to 3.20 we've had segmentation faults while connecting to aws rds postgres databases. With the debug environment variable from the psycopg2 dependency we found connection issues while connecting to our database (see logs below).
Building the psycopg3 postgresql adapter instead of using the pre-build dependency as it's described in the psycopg3 installation documentation the connection could be established again as expected.
Also see the slack thread on this issue.
Test results
I've locally build and tested both the alpine and debian django +nginx dockerimages and tested them against the bitnami and aws rds postgres database.
Extra information
Additional logs:
Debug logs with the alpine image containing the psycopg2-binary 2.9.9 dependency:
[19] psyco_connect: dsn = 'dbname=dd client_encoding=UTF8 user=aws_admin password=bla host=defectdojo-rds-dev port=5432', async = 0
[19] connection_setup: init connection object at 0x7f18ab9af240, async 0, refcnt = [1] connection_setup: init connection object at 0x7f18ab9af240, async 0, refcnt = 11
[19] con_connect: connecting in SYNC mode
[19] conn_connect: new PG connection at 0x7f18aaf8d4b0
[19] conn_connect: PQconnectdb(dbname=dd client_encoding=UTF8 user=aws_admin password=bla host=defectdojo-rds-dev port=5432) returned BAD
[19] connection_init: FAILED
!!! uWSGI process 19 got Segmentation Fault !!!

Debug logs with the alpine image containing the self-build psycopg2 2.9.9 dependency:
[19] psyco_connect: dsn = 'dbname=dd client_encoding=UTF8 user=aws_admin password=bla host=defectdojo-rds-dev port=5432', async = 0
[19] connection_setup: init connection object at 0x7f87c53e3240, async 0, refcnt = 1
[19] con_connect: connecting in SYNC mode
[19] conn_connect: new PG connection at 0x7f87c49248a0
[19] conn_connect: server standard_conforming_strings parameter: on
[19] conn_connect: server requires E'' quotes: NO
[19] conn_connect: using protocol 3
[19] conn_connect: client encoding: UTF8
[19] clear_encoding_name: UTF8 -> UTF8
[19] conn_set_fast_codec: encoding=UTF8
[19] conn_set_fast_codec: PyUnicode_DecodeUTF8
[19] conn_connect: DateStyle ISO, MDY
[19] connection_setup: good connection object at 0x7f87c53e3240, refcnt = 1

@gietschess
Note: There's a PR to move to psycopg3 that's closer to being merged as well #10348

@gietschess
Note: There's a PR to move to psycopg3 that's closer to being merged as well #10348

with this pr we would still use the not recommended prebuild binary version of psycopg.
i don't really mind about the postgres clients version, just wanted to keep it up to date as alpine informs about using a old client version when installing version 14:
* Setting postgresql14 as the default version
*
* You are using 'postgresql14'. It's recommended to upgrade to the latest
* major version provided by package 'postgresql16'.
* Use command 'pg_versions' to switch between versions.
*

Original tests have not been failing. Is there some way to improve tests to detect SegFault earlier?

hi @kiblik ,
i couldn't reproduce the segfault with the bitnami postgres database from the helmchart and the alpine docker image but with a external postgres database.
my best guess would be that the segfault results due to some encryption configuration of the database but i'm not completly sure about that.

@gietschess

Note: There's a PR to move to psycopg3 that's closer to being merged as well #10348

with this pr we would still use the not recommended prebuild binary version of psycopg.

Yes, but if we're moving to psychopg3 then maybe do a PR for the non-binary version of psychopg3 instead of the non-binary version of psychopg2. At least that's what I was thinking.
At one point in time we switched to the binary version of psychopg for a specific reason but that was quite some time ago so I don't have a problem with using the non-binary/source version of that module.
I'd prefer not to use non-binary 2 over binary 3 of that module when non-binary 3 is a valid option.

i don't really mind about the postgres clients version, just wanted to keep it up to date as alpine informs about using a old client version when installing version 14:

The one place where this can cause problems is for iron installs - we've planning on deprecating that but it's not "official' yet.  I just don't want to optimize for one distro and break others if we don't absolutely have to - from a quick look at building psychopg3, only libpq5. Just checked with the most "interesting" distro (RHEL 8) and pip has no issues building psychopg3 assuming you have the needed Postgres dev packages installed.
So I'll make my comments as resolved as far as the PG 16 is concerned.

alright, i've tested with the prebuild psycopg3 binary alpine image which also leads into segmentation faults.
with the self build ones both debian and alpine looked fine.

alright, i've tested with the prebuild psycopg3 binary alpine image which also leads into segmentation faults.
with the self build ones both debian and alpine looked fine.

OK. Perfect. Feel free to change this PR to use the source/you-build-it psycopg3 or close it and open a new one if that's easier for you.
I'm happy to take a PR to move to a built version of psycopg3 instead of the  binary version that's currently in place after #10348 was merged.

Do we know when this will be released? We're facing the same issue with OVH managed PG databases 👀

Do we know when this will be released? We're facing the same issue with OVH managed PG databases 👀

@hajali-amine This went into the dev branch so will be part of the 2.37.0 (August) release. Minor version releases happen on the 1st Monday of the month or for August 5th.
If you need it sooner than that, you can always change requirements.txt like the PR does and build your own docker images using the dockerfiles in this repo.


Optax speedup, blackjax compatibility, pixelated grid settings, partial COOLEST support, shapelets light profile, ...

This PR brings various improvements to the code:

optax gradient descent step is now jitted, so it's much faster (more than x2 speedup most of the time)
preliminary support for COOLEST file update
simplified the initialization and handling of pixelated coordinate grids. Note: this will still be improved in the future, e.g., to have several pixelated profiles per model components (lens, lens light, source)
ensure compatibility with latest versions of blackjax (>= 0.9.6). Big thanks to @duxfrederic @EiffL and @rlouf for your help regarding this.
removed (temporarily support for multiple chains in blackjax
improved requirements.txt
ass support for Shapelets light profile, through the JAX implementation from gigalens
many other minor improvements and fixes

Why disabling the multi-chain sampling with Blackjax if you don't mind me asking? Is there an issue with it?

Ok, let me know if you run into trouble! People often get stuck because you need to vmap the whole adaptation sampling loop since we return a compiled kernel.

Will do :) thanks for your help


Remove .travis.yml - we're on CircleCI now

Looks like PRs aren't running on Travis anymore either, so I'm assuming we don't need .travis.yml anymore.

Do it.


feat: la factory util + docs + example

Background
Adds a light account factory utility function to grab the address based on the chain.

Also incorperates this into the docs
Also adds references to the example DAApp

Testplan
TBA

Looks good to me from the docs perspective 🙌


Trim unwanted whitespaces.

Long time no see ;)
On a colleagues machine we had some issues regarding whitespaces. I am not sure what the rootcause is, but trimming the whitespaces does the job.

Good to hear from you, and thanks for the fix!


Cannot apply entity archetypes (from schematic)

I am currently running

SpongeForge version: spongeforge-1.12.2-2838-7.3.1-RC4077
Java version: 1.8.0_241
Operating System: Windows 10

Plugins/Mods: EconomyLite, LuckPerms, Nucleus

Issue Description
Hello, when I try to generate an entity from a schema, I get exactly the same error as #1959
[Server thread/ERROR] [Sponge]: Error occurred while executing command 'myplugin' for source EntityPlayerMP['SeaMoon69'/16, l='world', x=-301,12, y=114,00, z=302,13]: Could not retrieve value for key 'sponge:spawn_type'
java.util.NoSuchElementException: Could not retrieve value for key 'sponge:spawn_type'
        at org.spongepowered.api.event.cause.EventContext.require(EventContext.java:116) ~[EventContext.class:1.12.2-2838-7.3.1-RC4077]
        at org.spongepowered.common.entity.SpongeEntityArchetype.apply(SpongeEntityArchetype.java:151) ~[SpongeEntityArchetype.class:1.12.2-2838-7.3.1-RC4077]

with this code
for (Entry<Vector3i, TileEntityArchetype> tileEntByPos : schematic.getTileEntityArchetypes().entrySet()) {
	Vector3i position = tileEntByPos.getKey();
	TileEntityArchetype tileEntity = tileEntByPos.getValue();

	tileEntity.apply(player.getLocation().add(rotateY(position, rotation)));
}
for (Entry<Vector3d, EntityArchetype> entByPos : schematic.getEntitiesByPosition().entries()) {
	Vector3d position = entByPos.getKey();
	EntityArchetype entityArc = entByPos.getValue();

here -> entityArc.apply(player.getLocation().add(rotateY(position, rotation)));
}

but in my case using snapshot then using the restore method also throws an error
[Sponge]: Error occurred while executing command 'myplugin' for source EntityPlayerMP['SeaMoon69'/16, l='world', x=-301,45, y=114,00, z=302,33]: null
java.lang.NullPointerException: null
        at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:770) ~[minecraft_server.1.12.2.jar:?]
        at org.spongepowered.common.entity.SpongeEntitySnapshotBuilder.build(SpongeEntitySnapshotBuilder.java:256) ~[SpongeEntitySnapshotBuilder.class:1.12.2-2838-7.3.1-RC4077]
        at org.spongepowered.common.entity.SpongeEntityArchetype.toSnapshot(SpongeEntityArchetype.java:183) ~[SpongeEntityArchetype.class:1.12.2-2838-7.3.1-RC4077]
        at org.spongepowered.common.entity.SpongeEntityArchetype.toSnapshot(SpongeEntityArchetype.java:65) ~[SpongeEntityArchetype.class:1.12.2-2838-7.3.1-RC4077]

You shouldn't have to apply all the archetypes yourself, just apply the schematic to the location, as the copy pasta plugin demonstrates.

The second error was obtained using the second line of code provided on issue #1959, where the author says using toSnapshot works.
Optional<Entity> entity2 = entity1.createArchetype().toSnapshot(entity1.getLocation()).restore();

Also, following a conversation about the sponge discord, you answered me after ask how to rotate schematics
@SeaMoon15 rotating isn’t supported yet. We don’t have a way in the api to rotate blockstates.
So I cannot use schematic.apply as you advise me on your answer to the problem.
If you have another way to rotate schematic than do it manually, can you tell me how ?

[Server thread/ERROR] [Sponge]: Error occurred while executing command 'myplugin' for source EntityPlayerMP['SeaMoon69'/16, l='world', x=-301,12, y=114,00, z=302,13]: Could not retrieve value for key 'sponge:spawn_type'
java.util.NoSuchElementException: Could not retrieve value for key 'sponge:spawn_type'

This specifically says that you need to provide the EventContext (in a stack frame) for the SpawnType for the associated entity spawned).
Wrap with a try with resources like so:
try (StackFrame frame = Sponge.getCauseStackManager().pushStackFrame()) {
  frame.addContext(EventContextKeys.SPAWN_TYPE, SpawnTypes.PLUGIN);
  // do things with your archetypes being applied
}

Thanks, it works !


fix for duplicate SubscriptionPaymentBehavior

SubscriptionPaymentBehavior exist both in the subscription_item and subscription.

Thanks for this. Seems like cargo-tarpaulin broke. I'll sort it out in a separate PR and then rerun CI for you. TY!

Hello, I have fixed the coverage stuff and added automatic releases.  Thanks!


Dropdown: When width is set we get weird behaviour

Info
Using the below code:
<GoAFormItem label="Dropdown" requirement="optional">
  <GoADropdown
    name="dropdown"
    placeholder="Select a value"
    width="20ch"
    onChange={function (name: string, values: string[] | string): void {
      throw new Error("Function not implemented.");
    }}
  >
    <GoADropdownItem key="_none_" name="none" value="" label="None" />
    <GoADropdownItem key="_some_" name="some" value="" label="Some" />
  </GoADropdown>
</GoAFormItem>

You'll see some odd behaviour. First, even though width is set, there's a brief flash from the width being 100% first, and then going to the set width. Second, if you remove the Dropdown Items, the width ignores the width property and goes to 100%.
Acceptance Criteria:

If width is set, there shouldn't be a flash between 100% width and the chosen width, it should just go automatically to the chosen width
If no Dropdown Items exist inside a Dropdown, it should still respect the width property

:tada: This issue has been resolved in version 1.17.0-alpha.114 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version 5.0.0-alpha.10 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version 5.3.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version 1.28.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version 3.0.0-alpha.9 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version 3.2.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Feature/uppercase shortcuts

:sparkles: Description by Cal
This PR introduces a configuration change in .callstack.yml to exclude the helpers/ directory and modifies the conditional rendering of the CheckerSearch component in CheckerCapture.vue.

Diagrams of code changes
sequenceDiagram
    participant User
    participant CheckerCapture
    participant CheckerCaptureControls
    participant CheckerSearch

    User->>CheckerCapture: Interacts with component
    CheckerCapture->>CheckerCaptureControls: @input event
    CheckerCaptureControls-->>CheckerCapture: onInputKey
    alt capturedKeys.length > 0
        CheckerCapture->>CheckerSearch: Render with :query="capturedKeys"
    end

Key Issues
None.

Files Changed

File: /.callstack.yml
	Added a configuration to exclude the 'helpers/' directory.

File: /components/checker/CheckerCapture.vue
	Updated the conditional rendering of the 'CheckerSearch' component to use a double negation for clarity.

@callstackai review


Improve anchor link

The current value is broken, the header has the .h-16 class name which equals to 4rem.
https://react.dev/reference/react/useDeferredValue#showing-stale-content-while-fresh-content-is-loading
Before

After

For this test, I used:

but it equally improve the experience with the default value (16px for the default font size)

Thanks! Don't know how this happened. I thought I fixed this before. :P

I was working on updating all the links in https://mui.com/ this weekend from the old to the new React docs, happy to have solved this small annoyance :)


Fix code examples

Summary
Minor fixes to code examples in docstrings to make sure they run without error. Mostly adding imports and defining variables. Some syntax errors too.
These were identified as part of https://github.com/Qiskit/documentation/issues/1893.

The pulse changes look okay to me, but keep in mind that pulse is being moved out of this repo (https://github.com/Qiskit/qiskit/pull/13164).


Config Source not using CLI flag default value [BUG]

Describe the bug
It's the same bug #1171 that was solved before. But now it happens with

github.com/micro/cli/v2 v2.1.2
github.com/micro/go-micro/v2 v2.9.0

What are you trying to do?

Setting a custom flag using micro.Flags with a default value.

const expectedValue string = "flagvalue"
// Create a new service using the configuration settings
service := micro.NewService(
		micro.Flags(
			&cli.StringFlag{
				Name:    "flag",
				Usage:   "It changes something",
				EnvVars: []string{"flag"},
				Value:   expectedValue,
			},
		),
	)

Adding CLI config source
Reading from config and retrieve the flag default value ("flagvalue")

What did you expect to happen?
I expect to receive the flag default value ("flagvalue")

What happens instead?
Instead I'm receiving the default value provided by config.Get("flag").String("default")

How to reproduce the bug:
If possible, please include a minimal code snippet here.
clone the repo https://github.com/diegoortizmatajira/go-micro-test
execute go run main.go
INFO[0000] Expected value (flagvalue) Found value (default)
Environment:
go version go1.14.4 linux/amd64

GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/diegoortizmatajira/.cache/go-build"
GOENV="/home/diegoortizmatajira/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GONOPROXY="https://gitlab.com/get-software:https://gitlab.com/get-software:"
GONOSUMDB="https://gitlab.com/get-software:https://gitlab.com/get-software:"
GOOS="linux"
GOPATH="/home/diegoortizmatajira/go"
GOPRIVATE="https://gitlab.com/get-software:https://gitlab.com/get-software:"
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/lib/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/lib/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/home/diegoortizmatajira/Development/personal/go-micro-test/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build973094596=/tmp/go-build -gno-record-gcc-switches"

Looks like if you remove env.NewSource() in your snippet，things would work

Looks like if you remove env.NewSource() in your snippet，things would work

When removed it takes the value from the flag definition, but it will prevent the app from taking settings from environment vars as commonly used in containerized apps.

Looks like if you remove env.NewSource() in your snippet，things would work

Thanks @sadwxqezc, it worked as I'm requiring it.


networkInfo.details.cellularGeneration always return 4g on Android

Environment
I'm using expo
System:
    OS: Windows 10 10.0.22000
    CPU: (8) x64 11th Gen Intel(R) Core(TM) i5-1135G7 @ 2.40GHz
    Memory: 3.93 GB / 15.74 GB
  Binaries:
    Node: 16.15.0 - C:\Program Files\nodejs\node.EXE
    Yarn: Not Found
    npm: 8.5.5 - C:\Program Files\nodejs\npm.CMD
    Watchman: Not Found
  SDKs:
    Android SDK: Not Found
    Windows SDK: Not Found
  IDEs:
    Android Studio: Version     2<IP_ADDRESS> AI-211.7628.21.2111.8309675
    Visual Studio: 17.2.32526.322 (Visual Studio Community 2022)
  Languages:
    Java: <IP_ADDRESS> - C:\Program Files\Common Files\Oracle\Java\javapath\javac.EXE
  npmPackages:
    @react-native-community/cli: Not Found
    react: 17.0.1 => 17.0.1
    react-native: 0.64.3 => 0.64.3
    react-native-windows: Not Found
  npmGlobalPackages:
    *react-native*: Not Found

Platforms
Android
Versions

Android: 12
react-native-netinfo: 9.3.0
react-native: 0.64.3
react: 17.0.1

Description
Hello, I'm trying to get cellular connection generation on Android.
It always returns 4G with phones and sims that support 5g. It also returns 4g when from Android settings 2g or 3g is forced.
Reproducible Demo
Setup expo app
get networkInfo.details.cellularGeneration
force 2g/3g from Android settings
open the app e log the info from networkInfo.details.cellularGeneration

Hi there! This isn't a use case of mine and I'm typically the only person that answers anything around here, so to set expectations clearly: you'll need to dig in and figure it out.
I suggest finding the related parts of the Java code inside node_modules, adding System.err printouts of API calls + arguments in && API call results for the associated areas where we fetch information, and watching adb logcat to see what the system is saying
It may simply be that you need to imperatively fetch state, because changing the cellular generation may not cause the system to call our network callback hook, meaning we have stale data
Regardless those are just ideas - once you find the root cause, if you can come up with a good solution post a PR I can definitely help merge + release, I just can't help troubleshoot as I don't have any available free time to do so
Hope this helps, I do sincerely wish you or anyone that wants to tackle it good luck


Update protobuf and protobuf-plugin versions.

Current coverage is 63.35%

Merging #95 into master will increase coverage by +3.75% as of cb8ce7b

@@            master     #95   diff @@
======================================
  Files           93      80    -13
  Stmts         2550    2235   -315
  Branches       280     265    -15
  Methods
======================================
- Hit           1520    1416   -104
+ Partial         91      85     -6
+ Missed         939     734   -205

Review entire Coverage Diff as of cb8ce7b

Powered by Codecov. Updated on successful CI builds.

LGTM


Use Markdown

At the very least, when the document states "skypespaces, including asterisks" you should make sure that the asterisks are preserved.

@anthonypants - much appreciated! This probably got mangled in the conversion from TechNet. Thank you very much for catching and fixing!


New package: CoralBlox v1.0.0

Registering package: CoralBlox
Repository: https://github.com/open-AIMS/CoralBlox.jl
Created by: @Zapiano
Version: v1.0.0
Commit: 8c61d19fc68c972ce7537216efb56882095bc3d6
Git reference: HEAD
Release notes:

## What's Changed
* Move plotting methods to an extension package by @ConnectedSystems in https://github.com/open-AIMS/CoralBlox.jl/pull/2
* Allow plotting whe extension is loaded. by @DanTanAtAims in https://github.com/open-AIMS/CoralBlox.jl/pull/3
* Consider values close to 0.0 as 0.0 by @ConnectedSystems in https://github.com/open-AIMS/CoralBlox.jl/pull/4
* Changes to handle small size classes by @ConnectedSystems in https://github.com/open-AIMS/CoralBlox.jl/pull/5
* Implements more accurate growth when cover block goes to new size class by @Zapiano in https://github.com/open-AIMS/CoralBlox.jl/pull/10
* Implement changes to provide compatibility with ADRIA.jl by @Zapiano in https://github.com/open-AIMS/CoralBlox.jl/pull/6
* Rename package to CoralBlox by @Zapiano in https://github.com/open-AIMS/CoralBlox.jl/pull/14
* Update/rename CoralBlox extensions by @Zapiano in https://github.com/open-AIMS/CoralBlox.jl/pull/15
* rename apply_survival to apply_mortality by @DanTanAtAims in https://github.com/open-AIMS/CoralBlox.jl/pull/17
* Implement a linear extension scale factor model to prevent coral out-growing habitable area by @Zapiano in https://github.com/open-AIMS/CoralBlox.jl/pull/18
* Circular Buffer Implementation by @DanTanAtAims in https://github.com/open-AIMS/CoralBlox.jl/pull/11
* Add MIT LICENSE by @Zapiano in https://github.com/open-AIMS/CoralBlox.jl/pull/19
* Update README by @Zapiano in https://github.com/open-AIMS/CoralBlox.jl/pull/20

## New Contributors
* @ConnectedSystems made their first contribution in https://github.com/open-AIMS/CoralBlox.jl/pull/2
* @DanTanAtAims made their first contribution in https://github.com/open-AIMS/CoralBlox.jl/pull/3
* @Zapiano made their first contribution in https://github.com/open-AIMS/CoralBlox.jl/pull/10

**Full Changelog**: https://github.com/open-AIMS/CoralBlox.jl/commits/v1.0.0

Closing in favor of https://github.com/JuliaRegistries/General/pull/112634


API doc should indicate when I should expect TextSearchMatchNew vs TextSearchContextNew in a text search result

Testing #223154
I can see that the result of findTextInFilesNew can be TextSearchMatchNew | TextSearchContextNew. When should I expect each of these types? I'm not sure I understand what the purpose of TextSearchContextNew is.

TextSearchContext is like the surrounding context lines that you see in the search editor.

For example, here, lines 1791 and 1793 are context lines because they come directly before and after line 1792.
I can try to explain this better in the docs, though!


chore(deps): update dependency enzyme-adapter-react-16 to v1.15.1

This PR contains the following updates:

Package
Type
Update
Change

enzyme-adapter-react-16 (source)
devDependencies
minor
1.14.0 -> 1.15.1

Release Notes

airbnb/enzyme
v1.15.1
Compare Source
v1.15.0
Compare Source

Renovate configuration
:date: Schedule: At any time (no schedule defined).
:vertical_traffic_light: Automerge: Enabled.
:recycle: Rebasing: Whenever PR becomes conflicted, or if you modify the PR title to begin with "rebase!".
:no_bell: Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

Available now for Enterprise: Renovate Pro with real-time webhook handling and priority job queue.

:tada: This PR is included in version 2.152.11 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


[CIEDEV-2148] Releases Page

Added Static Release Page

Updated Home Page

OLD

CURRENT

Updated Navbar for quick access to modules & releases
Fixed bug with footer being non-sticky

OLD

CURRENT

General UI improvements

Implemented ListReleaseTypes API + unit test

Implemented ListOrganization API + unit test

Gateway Changes, client mocks, and more unit tests

@adcharre OpenTelemetry side was not tested for the release service, as currently, we don't have the satellite deployed on the testing environment. One thing we can do,  we can deploy the satellite and configure it to send traces to an existing project in Lightstep (any test project) or set up a new Terrarium project. Does it sound sensible?
Previously the Otel side was tested back in January/February when we instrumented all other services and had the Terrarium project set up, and satellite deployed.

Can we merge this? @adcharre @odelanno

API Example: api/releases?age=1h


HC-Sticky breaks Chosen (or viceversa)

Hi, I just wanted to let you know that when hc-sticky.js is included in a page where the plug-in Chosen is used, Chosen breaks.
You can see it in the following fiddle: http://jsfiddle.net/q37k614d/
If you remove hc-sticky.js and run it again, you’ll see that the multiple select element renders properly.

The problem seems to be the naming of the style plugin. I renamed it to hcStyle and it works nicely with Chosen. If you want I can send a pull request.

Obsolete.


Android support

Despite the README declares this client to be cross-platform, at least on Android it doesn't fully work:
var items = await _webDavClient.Propfind($"remote.php/dav/files/Me");

works on windows, but fails on android:

Is anyone out there that was successful in using this library on any mobile platform?

Duplicated: https://github.com/skazantsev/WebDavClient/issues/59


Add WSConv1d

I just did a minor modification on WSConv2d to implement a WS version Conv1d.
It works fine with my own model which is a time series model using Transformer + Conv1d, and it removes the overfitting issue in my model.
Thanks

Thanks a lot! Could you also add a test case just like the wsconv2d test ? Just to make sure to test it works quickly if in future there are any code changes ?

Sure, I put a very simple example in tests/test_conv.py and push requested.
Thanks

Thanks a lot! You can always push another commit to the same branch and that commit should appear in the same PR.


Multiple security groups are created with the kubernetes.io/cluster tag

Description
The issue is exactly the same as #1810, but for EKS managed node groups, with the same workaround (and presumably the same fix)

[x] ✋ I have searched the open/closed issues and my issue is not listed.

Versions

18.10.1

Terraform version:

Terraform v1.1.6
on linux_amd64
+ provider registry.terraform.io/gavinbunney/kubectl v1.14.0
+ provider registry.terraform.io/hashicorp/aws v3.72.0
+ provider registry.terraform.io/hashicorp/cloudinit v2.2.0
+ provider registry.terraform.io/hashicorp/helm v2.2.0
+ provider registry.terraform.io/hashicorp/kubernetes v2.3.2
+ provider registry.terraform.io/hashicorp/local v2.2.2
+ provider registry.terraform.io/hashicorp/tls v3.1.0
+ provider registry.terraform.io/oboukili/argocd v2.2.8
+ provider registry.terraform.io/terraform-aws-modules/http v2.4.1

Your version of Terraform is out of date! The latest version is 1.1.7. You can update by downloading from https://www.terraform.io/downloads.html

Reproduction Code [Required]

Steps to reproduce the behaviour:
Create a cluster with this module, using default values and containing at least one eks_managed_node_group

Possible workaround:
Disable creation of either the node_group or shared node group security groups through module variables and create a separate security group outside this module.

hi @blakepettersson - the EKS managed node group sub-module security group does not have these tags currently

@bryantbiggs so it seems :facepalm:. The issue in the case of EKS managed node groups seems to be that EKS autogenerates a security group that already has the kubernetes.io/cluster/${var.cluster_name} set, which conflicts with the tag which is set by aws_security_group.node. I'll setup a proper repro for this.

Events:
  Type     Reason                  Age                  From                Message
  ----     ------                  ----                 ----                -------
  Normal   EnsuringLoadBalancer    97s (x6 over 4m16s)  service-controller  Ensuring load balancer
  Warning  SyncLoadBalancerFailed  96s (x6 over 4m14s)  service-controller  Error syncing load balancer: failed to ensure load balancer: Multiple tagged security groups found for instance i-07d843b5953ca7412; ensure only the k8s security group is tagged; the tagged groups were sg-0bc8599e71f8a54a9(my-testing-k8s-node-20220419213507462100000009) sg-0b189fb8969ff5bd4(eks-cluster-sg-my-testing-k8s-987542792)

@bryantbiggs so it seems 🤦. The issue in the case of EKS managed node groups seems to be that EKS autogenerates a security group that already has the kubernetes.io/cluster/${var.cluster_name} set, which conflicts with the tag which is set by aws_security_group.node. I'll setup a proper repro for this.

https://github.com/terraform-aws-modules/terraform-aws-eks/blob/dc8a6eecddc2c6957ba309a939ee46f39b946461/node_groups.tf#L160

I'm also experiencing an issue with this after installing the aws-load-balancer-controller. I get the following error from there.
{"level":"error","ts":1651137191.6512694,"logger":"controller-runtime.manager.controller.targetGroupBinding","msg":"Reconciler error","reconciler group":"elbv2.k8s.aws","reconciler kind":"TargetGroupBinding","name":"k8s-echoserv-echoserv-aaf854977c","namespace":"echoserver","error":"expect exactly one securityGroup tagged with kubernetes.io/cluster/geeiq-test-k8s for eni eni-0605625aa92fe670e, got: [sg-0cc7f9db258d4e3f8 sg-0e95a58276d2c4ae5]"}

After checking the console. i can see i have 2 sgs with the same tag "kubernetes.io/cluster/<cluster_name>" = "owned".
Im also using eks managed node groups.

@kaykhancheckpoint check the last couple posts for the workaround from leiarenee

This workaround worked for me. (https://github.com/terraform-aws-modules/terraform-aws-eks/issues/1810)
Module 'eks'
  node_security_group_tags = {
    "kubernetes.io/cluster/${local.name}" = null
  }

@diginc @leiarenee yup, thank you

This workaround did not work for us.

@rcmurphy / @mr-kelly can you try:
  cluster_tags = {
    "kubernetes.io/cluster/${local.name}" = null
  }

Where ${local.name} is the name of your cluster

I can confirm we've tried that. It did not work.

~I can confirm we've tried that. It did not work.~

apologies - does that mean that it does work for your case or not?

It means my ops engineer told me he did it and then realized that you would actually posted a slightly different command, So we never actually tried it. We are used to different work around though (In this case we need to set a kernel parameter, so are using a start up container that’s privileged to do it instead.)

On Jun 3, 2022, at 20:22, Bryant Biggs @.***> wrote:

I can confirm we've tried that. It did not work.
apologies - does that mean that it does work for your case or not?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.

@rcmurphy / @mr-kelly can you try:
  cluster_tags = {
    "kubernetes.io/cluster/${local.name}" = null
  }

Where ${local.name} is the name of your cluster

In my Karpenter Example, this doesn't work.

And these stop create security group doesn't work so:
  create_node_security_group = false
  create_cluster_security_group = false

I am still trying....

In this offical doc:
https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html
AWS says :

And in my karpenter example,
kubernetes.io/cluster/cluster-name=owned appears twice.

If I understand you correctly @bryantbiggs , EKS automatically tags the clusters primary security group with "kubernetes.io/cluster/$clustername" = owned.
And that would mean you basically have to use attach_cluster_primary_security_group = true, because the clusters primary security group will always have the problematic tag, since you state that
cluster_tags = {
    "kubernetes.io/cluster/${local.name}" = null
  }

does not work.
An alternative would be to set create_security_group = falsein the node group, which seems like the equivalent of setting attach_cluster_primary_security_group = true.
Do I understand this correctly?

If I understand you correctly @bryantbiggs , EKS automatically tags the clusters primary security group with "kubernetes.io/cluster/$clustername" = owned. And that would mean you basically have to use attach_cluster_primary_security_group = true, because the clusters primary security group will always have the problematic tag, since you state that
cluster_tags = {
    "kubernetes.io/cluster/${local.name}" = null
  }

does not work.
An alternative would be to set create_security_group = falsein the node group, which seems like the equivalent of setting attach_cluster_primary_security_group = true.
Do I understand this correctly?

No - the security group and tag in question only come into play when they are attached to nodes. So you can have 40+ security groups in your account with this tag without issue, but as soon as you attach more than one of those security groups to node(s) in your cluster, then its a conflict

That is very interesting.
My clusters were built without attach_cluster_primary_security_group = true.
Yet the aws-lb-controller complains as soon as I add the tag to any second security group.

Hi, @kaykhancheckpoint how did you actually deploy and enabled the "load balancer controller"?

Running into what appears to be a similar issue, I think I've been able to work around it by using   create_cluster_primary_security_group_tags = false.
The problem appears to be that there are more than 1 security group that are tagged with "kubernetes.io/cluster/${var.cluster_name}" = "owned". Setting that variable to false seems to at least stop Karpenter nodes from picking up the additional security group which stops things like the aws-lb-controller from complaining about ENIs with multiple security groups.
This may be a clue when running an apply:
module.eks.aws_ec2_tag.cluster_primary_security_group["karpenter.sh/discovery"] will be destroyed

Note that existing Karpenter instances need to be replaced for this tag change to take effect.

I think this issue has probably been closed prematurely; I just hit it as well with this template.

The issue still exists with module terraform-aws-modules/eks/aws:v18.26.6.
The proposed workaround resolved my problem.

+1
Stepped over this as well with 18.26.6, using attach_cluster_primary_security_group = true.
Results was the inability to have the ELB working, having two security groups with "kubernetes.io/cluster/<cluster_name>" = "owned".
Using create_cluster_primary_security_group_tags = false, but honestly atm i'm not able to say if this is a proper setup or just a workaround.


Creating an issue to test GitHub REST API

This is a dummy issue created to test the GitHub REST API listing open/closed issues on this repo.

Closing this dummy test issue.