README.md: adding a git style guide

pulled from http://chris.beams.io/posts/git-commit/
Signed-off-by: Vincent Batts<EMAIL_ADDRESS>

On Wed, Sep 09, 2015 at 03:55:36PM -0700, Vincent Batts wrote:

pulled from http://chris.beams.io/posts/git-commit/

Maybe link there for folks who want more detail on or the motivation
behind a particular guideline?

particular guideline?

On Wed, Sep 09, 2015 at 03:55:36PM -0700, Vincent Batts wrote:

pulled from http://chris.beams.io/posts/git-commit/

And you seem to have left out what I think is the most important point
in Chris' post: what to put in the body 1.  Was there a reason to
leave that out?

Not a strong compulsion. I wonder if there is a better phrasing for that
bullet point.
On Sep 9, 2015 7:14 PM, "W. Trevor King"<EMAIL_ADDRESS>wrote:

On Wed, Sep 09, 2015 at 03:55:36PM -0700, Vincent Batts wrote:

pulled from http://chris.beams.io/posts/git-commit/

And you seem to have left out what I think is the most important point
in Chris' post: what to put in the body 1. Was there a reason to
leave that out?
—
Reply to this email directly or view it on GitHub
https://github.com/opencontainers/specs/pull/168#issuecomment-139069500.

On Wed, Sep 09, 2015 at 04:08:56PM -0700, Vincent Batts wrote:

particular guideline?

In Chris' post, each bullet point links to a section explaining why
and how.  The list your bringing in here is basically a table of
contents that references that more detailed information.

On Wed, Sep 09, 2015 at 04:17:44PM -0700, Vincent Batts wrote:

Not a strong compulsion. I wonder if there is a better phrasing for
that bullet point.

I'm fairly comfortable with his phrasing.  I usually talk about
“motivation” when I'm talking folks through good commit hygiene, but
his “why” is pretty much the same, and it's easier to type ;).

updated

And we can talk validation once the guide is in place. I'm not opposed to len() < 70

On Wed, Sep 09, 2015 at 08:08:29PM -0700, Vincent Batts wrote:

And we can talk validation once the guide is in place. I'm not
opposed to len() < 70

Ok.
I left some comments about minor nits with 3cbd1570, but I don't think
it's anything that's worth holding up a merge here (i.e. I'm happy to
file nit-fix PRs after this lands if we don't want to finish polishing
all of that out here).

After I have read so many barren changelog from the docker.git, it is important that the following statement be included.
All the important/useful/essential information on the conversation of the PR should be copied to the changelog.
This statement makes 7. Use the body to explain what and why vs. how be taken into effect.  The convenience of the GitHub entice every body write dryasdust changelogs.

@laijs is a link to the conversation sufficient?

The link is inconvenient when git log to see what has been changed recently and why,
when git blame to find something, or when there is no networking.
I'm a 8years of linux-kernel developer of which community is highly value the changelog.

On Thu, Sep 10, 2015 at 06:33:56AM -0700, Lai Jiangshan wrote:

All the important/useful/essential information on the conversation
of the PR should be copied to the changelog.

This is my personal preference too, but if we're documenting good
commit messages at the level of “remember to put a blank line between
the subject and the body”, I think it might be reaching too far for
now ;).  Once we no longer need to talk about syntax, we can go back
with another pass and try to work on getting conversation summaries in
the commit message.

@laijs PTAL

The change in the *.md looks good to me.
The rule 3/5 should apply for the sentence after the keyword of the subject,
so I think the subject of this change could be "README.md: Add a git style guide"

@laijs good point. :-)
done

LGTM

On Thu, Sep 10, 2015 at 05:41:52PM -0700, Lai Jiangshan wrote:

The rule 3/5 should apply for the sentence after the keyword of the
subject…

Other projects don't do this (e.g. git.git suggests lowecase after the
prefix 1), but I agree that “Capitalize the subject line” with the
“runtime: ...” example makes it pretty clear that it's the post-prefix
bit that gets Sentence cased.

… so I think the subject of this change could be "README.md: Add a
git style guide"

And I think this matches the style we're recommending.

On Sep 11, 2015 12:14 AM, "W. Trevor King"<EMAIL_ADDRESS>wrote:

On Thu, Sep 10, 2015 at 05:41:52PM -0700, Lai Jiangshan wrote:

The rule 3/5 should apply for the sentence after the keyword of the
subject…

Other projects don't do this (e.g. git.git suggests lowecase after the
prefix 1), but I agree that “Capitalize the subject line” with the
“runtime: ...” example makes it pretty clear that it's the post-prefix
bit that gets Sentence cased.

… so I think the subject of this change could be "README.md: Add a
git style guide"

And I think this matches the style we're recommending.

What are you saying? Yes or no to capitalization?

On Fri, Sep 11, 2015 at 04:15:57AM -0700, Vincent Batts wrote:

What are you saying? Yes or no to capitalization?

I'm agnostic on capitalization, but with the current capitalization
rule, I think your 142c257 looks good.  I was mostly saying that I
thought the current rule phrasing seemed clear enough to me, thanks to
the “runtime: ...” example ruling out the “capitalization means the
prefix” interpretation.

k
On Fri, Sep 11, 2015 at 10:05 AM, W. Trevor King<EMAIL_ADDRESS>wrote:

On Fri, Sep 11, 2015 at 04:15:57AM -0700, Vincent Batts wrote:

What are you saying? Yes or no to capitalization?

I'm agnostic on capitalization, but with the current capitalization
rule, I think your 142c257 looks good. I was mostly saying that I
thought the current rule phrasing seemed clear enough to me, thanks to
the “runtime: ...” example ruling out the “capitalization means the
prefix” interpretation.
—
Reply to this email directly or view it on GitHub
https://github.com/opencontainers/specs/pull/168#issuecomment-139556147.

LGTM

LGTM


[FEATURE-RD][Workflows] optimize sorting priority for workflow define

this pr will close #11460
Purpose of the pull request

Brief change log

Verify this pull request

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

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

Codecov Report

Merging #11462 (69e62c6) into dev (896fef6) will decrease coverage by 0.02%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                dev   #11462      +/-   ##
============================================
- Coverage     39.36%   39.34%   -0.03%
+ Complexity     4633     4628       -5
============================================
  Files           987      987
  Lines         37568    37550      -18
  Branches       4183     4178       -5
============================================
- Hits          14789    14774      -15
+ Misses        21227    21222       -5
- Partials       1552     1554       +2

Impacted Files
Coverage Δ

...erver/master/processor/queue/TaskEventService.java
69.64% <0.00%> (-10.72%)
:arrow_down:

...er/master/dispatch/host/assign/RandomSelector.java
77.77% <0.00%> (-5.56%)
:arrow_down:

...dolphinscheduler/remote/future/ResponseFuture.java
81.96% <0.00%> (-1.64%)
:arrow_down:

...r/plugin/task/sqoop/parameter/SqoopParameters.java
55.12% <0.00%> (-1.29%)
:arrow_down:

...che/dolphinscheduler/common/utils/HadoopUtils.java
15.86% <0.00%> (-0.73%)
:arrow_down:

...uler/api/service/impl/DataAnalysisServiceImpl.java
81.51% <0.00%> (-0.31%)
:arrow_down:

...pache/dolphinscheduler/common/utils/DateUtils.java
74.21% <0.00%> (-0.17%)
:arrow_down:

...api/service/impl/ProcessDefinitionServiceImpl.java
32.27% <0.00%> (-0.01%)
:arrow_down:

...e/dolphinscheduler/server/master/MasterServer.java
0.00% <0.00%> (ø)

...e/dolphinscheduler/server/worker/WorkerServer.java
0.00% <0.00%> (ø)

... and 5 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

BTW, it's a improvement, not a feature.


[Feature Request] Better error message when device not found in open_device()

Is your feature request related to a problem? Please describe.
I didn't noticed I broke my DKMS installation thus making the TT driver not load. tt-metal generated an intimidating error message which lead to me thinking it was an ABI issue as it happened to me a few times - I might have forgot to clean something or the build was partial. And lead me down several clean builds and GDB-ing to figure out which library was malfunctioning. Turns out just be driver problem.
terminate called after throwing an instance of 'std::out_of_range'
  what():  vector::_M_range_check: __n (which is 0) >= this->size() (which is 0)

Describe the solution you'd like
Instead of an exception. It would be nice to print an (fatal?) error stating the device is not available. Along the line of Failed to open device %z. Index out of range. %z devices avaliable This would help others in avoiding going down the wrong path.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

Hi @marty1885  I added good error message:
It should be something like this:
""Device index 1 out of range. There are 1 devices available.""
Thanks for report!

Thanks!


Building a query with no value in Mechanize::Form::Text causes 500 Internal Server Errors

I have an issue, which could be bespoke to the development project I'm working on. There is a form, which depending on the drop-downs chosen can cause, once displayed fields to no longer be required when sending the form POST request. At least this is how it works in the browser and the query string looks like fieldValue=&nextField=X. So it has an empty value, this causes the Server to eventually throw a 500 as it was unhappy about receiving the empty value.
In order to prevent empty values in the build_query, I've added a monkey patch to my fork...
Form.rb
Before
def build_query(buttons = [])
 ...
  when Mechanize::Form::Field
      successful_controls << f
  end
 ...
end

After
 when Mechanize::Form::Field
   if f.kind_of?(Mechanize::Form::Text)
     if f.value != ""
       successful_controls << f
     end
   else
       successful_controls << f
   end
 end

I'll look over the next few days at the current tests and if all the tests pass and I can recreate with a new test, I'll create a pull request.

Change link to my fork:
https://github.com/uksa/mechanize/commit/786117a7f780eaba09845c6c1738718309cc2e0f

As a side note, looking over RFCs re, the validity of having an empty value, I could not find any clear evidence to say if this is acceptable, which probable means it is...!

I think mechanize should add this feature，some server detect if params has the key to do something~~~~ mechanize is common  crawler ，I think you should custom mechanize to fit your situation

Yes it would seem that if this was apparent at the Server level, then being able to switch at the agent level would be the best place.
Perhaps something like a boolean for switching it on or off and defaulting to the way it is now, which allows blank values.

I've added a pull request:
https://github.com/sparklemotion/mechanize/pull/443

Given this has been hanging around since Sep2016, and a pull request was created, seems no point in leaving this open.


Aqara Smart Smoke Detector

Hello - You will need to modify this pull request to remove the submission of the capability. This will not get published in this Repo, and instead needs to be published in the STSE namespace. @greens Did I get that right?

@lelandblue looks like the capability may have already been published and they've included the definition here so that the tests will run. It's the best way to run tests with a custom capability.

@lelandblue looks like the capability may have already been published and they've included the definition here so that the tests will run. It's the best way to run tests with a custom capability.

Yes ~

Hello @Hongming6 and @liuyd96 I made an additional PR for the translations for this device here, please feel free to add this in your submission next time. https://github.com/SmartThingsCommunity/SmartThingsEdgeDrivers/pull/1200

Hello @Hongming6 and @liuyd96 I made an additional PR for the translations for this device here, please feel free to add this in your submission next time. #1200

Hi @Hongming6
Please add this into your PR.

I believe there are additional changes coming for this PR.

I believe there are additional changes coming for this PR.

Hi, @lelandblue  @greens
Sorry for the inconvenience, there is something wrong with the unmute command, we should found the issue early...
Please hold on https://github.com/SmartThingsCommunity/SmartThingsEdgeDrivers/pull/1160 and https://github.com/SmartThingsCommunity/SmartThingsEdgeDrivers/pull/1162.
We will request Aqara team to retest their devices, after that we will restart review process.

I believe there are additional changes coming for this PR.

Hi, @lelandblue @greens
Sorry for the inconvenience, there is something wrong with the unmute command, we should found the issue early... Please hold on #1160 and #1162.
We will request Aqara team to retest their devices with latest driver, after that we will restart review process.

Hi @lelandblue @greens
Aqara has finished self test with latest PR. Please continue the process.
Thanks.

@Hongming6 Please rebase your PR.

The overlap with this driver is going to cause problems: #1160
You'll need to merge one of these first then completely refactor after re-basing your branch.

Thank you. I think merge #1162 (Smoke Detector)  is much better since
relevant departments have started verification testing.


Add support for Kubernetes v1.31

What this PR does / why we need it:

Document Kubernetes v1.31 as a supported Kubernetes version
Update controller-runtime to v0.19.0
Update fixtures and tests

What type of PR is this?
/kind feature
Special notes for your reviewer:
I'll follow up with another PR to try to get tests working for providers that originally used the in-tree CCM.
Does this PR introduce a user-facing change? Then add your Release Note here:
Add support for Kubernetes v1.31

Documentation:
NONE

/assign @xrstf

/approve
/lgtm


build: update typescript, eslint, prettier and more

Typescript 3.9
Prettier 2.0
Eslint 7

closes #2570

This is a huge set of file diffs to look through - am I correct that the biggest changes here are to put parentheses around function arguments (e.g. (x) => x+2) and to alphabetize props in components everywhere? I support the former, but I don't know if I agree with the latter. It does make props easier to find in a long list, but it means they can't be grouped functionally - e.g. if I wanted to put all of the onEvent props at the end of a component as a convention.

@beyackle You are correct. You are also in luck, the alphabetized props already groups event handlers on* together at the end!

@beyackle I'm open to discuss new / changes to eslint rules. With respect to sorting props, I like that you don't have to think about it -- every prop has its place!

Giving it some more thought, I think I agree with the alphabetized props. It's one fewer way code can be changed without changing its meaning. If we decide it's too annoying, we can revert that part.


Use a static site generator

They make life so much easier.
I use Pelican for my website.

Uses pelican now :+1:


tailwindcss error

Hello,
Another try (using deno and postcss)
when trying to use it with tailwindcss
import tailwindcss from 'https://esm.sh/tailwindcss'
...

i get the following error
error: Uncaught TypeError: k_.Parser.extend(...).extend is not a function
at https://cdn.esm.sh/v14/tailwindcss@2.0.2/esnext/tailwindcss.js:25:17298
at https://cdn.esm.sh/v14/tailwindcss@2.0.2/esnext/tailwindcss.js:2:1074
at https://cdn.esm.sh/v14/tailwindcss@2.0.2/esnext/tailwindcss.js:25:26185
at https://cdn.esm.sh/v14/tailwindcss@2.0.2/esnext/tailwindcss.js:2:1074
at https://cdn.esm.sh/v14/tailwindcss@2.0.2/esnext/tailwindcss.js:25:27714
at https://cdn.esm.sh/v14/tailwindcss@2.0.2/esnext/tailwindcss.js:2:1074
at https://cdn.esm.sh/v14/tailwindcss@2.0.2/esnext/tailwindcss.js:89:35993
at https://cdn.esm.sh/v14/tailwindcss@2.0.2/esnext/tailwindcss.js:2:1074
at https://cdn.esm.sh/v14/tailwindcss@2.0.2/esnext/tailwindcss.js:89:37184
thanks for helping/idea

Please add Deno support to Tailwind, I'm using Deno/Alephjs (React) and would really like to use Tailwind as I do in my Node/Nextjs (React) projects: https://github.com/alephjs/aleph.js/issues/42#issuecomment-806056884

still fails because of #157
Download https://esm.sh/tailwindcss
Download<EMAIL_ADDRESS>error: Import<EMAIL_ADDRESS>failed: 500 Internal Server Error
    at https://cdn.esm.sh/v53/chokidar@3.5.2/deno/chokidar.js:2:414

i think this has been fixed


fix(react-twig): refactor light social media icon color

Fixes https://github.com/international-labour-organization/designsystem/issues/1012
Notes

Refactor social media icon color in light theme

@justintemps I tried passing the variable as a string but it doesn't seem to work. So for the time being I created a scss variable.

@Shashika6 also I think you forgot to implement the dark theme version

@bashlk, @Shashika6 and @GGKapanadze, the problem here isn't that css vars can't be used in mixins, the problem is that they don't work inside a data url, which is what the icon function and mixins are doing. They give us something like this:
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 21'%3e%3cpath fill='var(--ilo-color-blue)' d='M18.901 0.153564H22.581L14.541 9.34356L24 21.8466H16.594L10.794 14.2626L4.156 21.8466H0.474L9.074 12.0166L0 0.154564H7.594L12.837 7.08657L18.901 0.153564ZM17.61 19.6446H19.649L6.486 2.24056H4.298L17.61 19.6446Z'/%3e%3c/svg%3e");

If you see, the variable is getting passed appropriately, but because the SVG isn't in the DOM per se, it doesn't work.
I think this reveals a small but important flaw in our new approach for handling tokens, in that css variables can't be used in some contexts. I'm not sure what the best way to handle this is.

Yep, variables can't be directly used with fill, but if we still want to do background images for icons I can reimplement this mixin with 'mask-image'

Marking this as a draft till https://github.com/international-labour-organization/designsystem/issues/1189 is completed.


Merge to create ilib 13.0.0 build

Merge to create ilib 13.0.0 build

Merging the wrong way... need a different PR


Feature/second security pass

use optional auth for all resources that return descriptors (published content always visible, unpublished content visible if you are the owner or have rights in SAM)
this includes somewhat unexpected resources like tool listing and DAG display
lock down a few more like aliasing, stubbing, verification more precisiely

Coverage decreased (-13.8%) to 53.998% when pulling 383e9a12cebfe763fa8c992b33fc4f6e745a5497 on feature/second_security_pass into a83e107a0d5a97fb4bbe0296068ee3700de48ffc on develop.


Fwd SSH not working with our dockerhub images

[gkc] investigated this on Friday, works for me
Describe the bug
Need to investigate, the cause is unclear, but the initial ssh connection is failing to authenticate to the dockerhub sshnpd with both pure-dart and /usr/bin/ssh.
Steps to reproduce
Example docker compose:
version: "3.0"
networks:
  default:
services:
  sshnpd:
    network_mode: "host"
    image: atsigncompany/sshnpd:v4.0.0-rc.5
    volumes:
      - ${HOME}/.atsign/keys:/atsign/.atsign/keys
    command: -a "${TO}" -m "${FROM}" -d "${DEVICE}" -s -u -v
    restart: unless-stopped

Expected behavior
It works.
Screenshots
No response
Smartphones

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Were you using an atApplication when the bug was found?
No response
Additional context
No response

What was your sshnp command line? For me this works just fine as long as I use -u atsign (since the sshnpd on the container is running as user atsign) - if I use any other username then it will fail (as it should)

What was your sshnp command line? For me this works just fine as long as I use -u atsign (since the sshnpd on the container is running as user atsign) - if I use any other username then it will fail (as it should)

Ah, I did not pass the -u... should we make it so that the daemon shares that info... I did have -u set daemon side


api: Add isEmpty to component

This PR adds  Component#isEmpty to easily test if the component is empty.
Like, for example, that an empty component shouldn't be sent to the player.

I believe this has been discussed in the past in the lead-up to 4.0.0, and we decided against having an isEmpty method, with the plan to fix anything that did incorrectly produce an empty component that was not identity-equal to empty(). I think the more appropriate solution would be along the lines of that commit.
The solution used for the children processing (on the line you linked) is not ideal imo -- you're duplicating the work done when constructing the TextComponent later on. This might be a time to pull forward this change from the planned changes for 5.0.0, and do that instead.

Going to close this for now as it appears to be inactive. If you want this reopened in the future please let us know!


(Bug) pinata ipfs service sometimes fails with CORS error

Seems like it's related to the pinata ipfs service. I will be monitoring this issue on different accounts.

@sirpy
Its appears again to me but on QA env (1.30.1-17).
After the confirm transaction via Recieve method - the errors are displayed in the console.
I notice that the errors according to CORS happens randomly. In one case it could happen when you just open the wallet and in another case when you open your user profile.
So, I think these errors are impossible to reproduce by the correct steps.
Environment:
QA 1.30.1-17
Devices:
Windows 10 // Google Chrome v92
Attachments:
https://www.screencast.com/t/p2ItRiHJDt
https://www.screencast.com/t/N9VyQ2m7Sh2N

@serdiukov-o-nordwhale
1.i think this should be resolved by the new ipfs caching.
2. it seems like it is trying to fetch the same image for each feed item
3. lets maybe put ipfs.io first in order


[Bug] deployment.replicas missing omitempty

Describe the bug
When defining deployment I also need to define the amount of replicas that is needed.
I think we can assume 1 as long as not defined.
kubectl explain grafana.spec.deployment |grep replicas
   replicas	<integer> -required-

To Reproduce
Install the operator
Add the following yaml to the example grafana.
  deployment:
    terminationGracePeriodSeconds: 30

kubectl apply -f deploy/examples/Grafana.yaml
kubernetes will complain about missing config.
Expected behavior
Use the default of 1 replica
Suspect component/Location where the bug might be occuring
https://github.com/grafana-operator/grafana-operator/blob/5450b3501a938b36414259d5a3eecfc71b332094/api/integreatly/v1alpha1/grafana_types.go#L98
Additional context
Add any other context about the problem here.
Very similar to https://github.com/grafana-operator/grafana-operator/pull/485

@NissesSenap Is this open to work? I am a first-time contributor here and would like to try on this issue.

Yes @krishnaindani , please go for it. Feel free to reach out here or in slack if you get stuck.

sounds great, thank you so much. Sure will post the questions here and take the reference from the pr you mentioned in additional context.

So looking at the code and logic from https://github.com/grafana-operator/grafana-operator/pull/485, I was considering the same logic.
Like first converting the https://github.com/grafana-operator/grafana-operator/blob/master/api/integreatly/v1alpha1/grafana_types.go#L98 from int32 to *int32, so that when it is empty we can pass the default value and update the logic in here for function getReplicas https://github.com/grafana-operator/grafana-operator/blob/master/controllers/model/grafanaDeployment.go#L105.
With these changes, when I run the tests it passes. Do you have any recommendation on this or is there any better way I could do it?
Also is there any other place I need to update or any steps need to follow to update docs, examples, or anything?

@krishnaindani if we want to assume the default value when the user doesn't specify it, then I think you don't have to do anything other than assigning the pointer from the CR.
The type of the termination grace period in the Deployment is also a pointer, so you can just pass that through.

@krishnaindani if we want to assume the default value when the user doesn't specify it, then I think you don't have to do anything other than assigning the pointer from the CR.

Sorry I am unclear on how the default value will be set without getReplicas function. Would you please elaborate on this? Sorry if I am missing something

The type of the termination grace period in the Deployment is also a pointer, so you can just pass that through.

Do we need to do something with termination here?

@krishnaindani the default value is assigned by Kubernetes if we don't provide a value for replicas and leave it nil . We do the same for terminationGracePeriod, you can do the same: https://github.com/grafana-operator/grafana-operator/pull/485

I have added a PR for this issue https://github.com/grafana-operator/grafana-operator/pull/494, let me know if any more changes are required. Thank you

Merged, thanks @krishnaindani

Thank you @pb82


Register Bug-fix

The register form doesn't work with "foundation_inline" as the formstyle. So, To-Do = Fix ;)

Hmm - but the register form should/does not use "foundation_inline". So, no fix needed.
However, this is definitely the cleaner way to inject the buttons - so fine to merge it, provided you have tested it across all templates. Have you?

Don't get me wrong - it is much more likely that the old version fails than the new one ;) and yet I have to ask whether it is tested because it is such a critical and prominent feature.
The devil is in the details here: if you inject buttons like this, they will be wrapped in an additional DIV (unlike in the old version) - and that can break a bunch of CSS rules, especially in the pixel-pusher bootstrap themes.

I tested all the formstyles on a template(SSF), not this formstyle on all templates. This ticket showed up while I was trying to get rid of Bootstrap and use foundation instead, for Sunflower.
Initially I thought of a different solution:

use row.element search for a INPUT tag with type "submit" which can be done in this "for loop" here
then append the login_link to its parent....

Would this solution be more stable ?
But then I looked at how the login form was operating and changed my idea...

No, your solution here is both the intended standard method /and/ the most appropriate solution. I had done the same change in the same way before, but then backed out for CSS problems in bootstrap themes.
You do not need to test the "foundation_inline" formstyle on all templates, no.
What I mean is that you need to test the button injection with all templates with their respective formstyles to see whether the template-specific CSS for this particular form doesn't break. And there is form-specific CSS!

On the other note:
To switch Sunflower to foundation should be as easy to start with as to just use the default theme with the default formstyles, with just a custom homepage. Then, later (if necessary) branch off and customize it.
...although the idea of "eating our own dogfood" is to make Sunflower feed back into mainline Sahana, which is obviously the less realistic the more custom stuff it uses - so a custom theme is actually counter-productive.
I think the main barrier is that people think they should retain the specific look&feel of the SSF theme - in spite of switching to foundation as framework. But that doesn't seem to make much sense - overriding the framework-CSS only to make it look like another framework - effectively replicating bootstrap theme on top of foundation. What's the point of switching frameworks then?
To make it harder?

You do actually not need to test the foundation_inline formstyle for the registration form at all - it is simply neither intended nor used for that form.
But you do need to test the change with all other formstyles that are used for this form, and check that the template-specific CSS for this particular form doesn't break.

...and note that your tests should not result in you backing out this change, but actually in fixing the respective CSS ;)

Okay....
Btw I'm making use of the CRMT css files and layout files for Sunflower, which looks much better than the default theme.So for now, I just changed the css.cfg to include the CRMT css files, which I should move into SSF as well ?

Whether CRMT looks better is a question of taste ;) that judgement is not universal.
Technically, CRMT is a mess - and not recommendable for re-use. Too much custom stuff, and extremely fragile form layouts. The default theme is much more robust - and introspective, hence flexible.
Of course, certain details could be picked from CRMT - the colouring, the gutting, the button style.
But else, the CRMT theme is a point solution and hence incomplete - it does not support all features in Eden. Certain features do not work at all due to layout conflicts.
So I can only recommend you to refrain from taking it wholesale .
As I said before: I would start with the default theme, and then cherry-pick the nice parts. And eventually you must really ask the question: where is the point with "eating our own dogfood" if Sunflower uses a custom (=non-default) theme?

And be careful with "fashionable" - it was only a few months ago when the current SSF theme was declared the "most beautiful" Sahana theme in the world.
Now it's CRMT that is traded as the top of beauty, but very soon we'll have more designer work (on another theme), and then CRMT will go out of fashion again - and could well be called "ugly" just like you call the default theme ugly now.

Technically, however, the default theme is the top of the line - the best supported, best integrated and most robust theme. And that is what I recommend it for, not for it's beauty ;)

+1 to SSF template using the default theme (base, can still have a few extras in an additional local style.css) as the best way to eat dogfood.
This /can/ be used as a testing ground to port in some speciifc CRMT theme features which are desired, but as Dominic says, the CRMT theme as a whole has some major issues preventing this being used as default....apart from the non-universal taste issue:

Forms have lots of manual width settings, so non-introspective => not suitable for default template => not suitable for SSF template
The Summary page layout has the filters only visible on the Table tab, not the Report or Map tabs.

@nursix Tested it with all the templates, and things only get better when 'Register' and 'login' are inside a div - they are displayed inline.

Ok, good to merge then :+1:


Allow (or enforce) encryption of .env file

Hi - thanks for building this great repo!
I noticed that you suggest adding .env to the .gitignore file - presumably because the config shouldn't be exposed as part of the repository?
Do you have a suggestion on how to share the .env file with members of my team?
The best answer I could find suggests checking in the .env file and encrypting it as an option.
What do maintainers think about allowing encryption of the .env file with one master password? I'd be happy to help with a PR if it would be welcomed and someone could help me think through best practice implementation.
Or, is there a better way to share the .env file with my team?

I think the typical way is to have .env.example in your repo, with comments to explain the settings, default values where possible (e.g. DATABASE_URL="postgres://localhost:5432/project"), and instructions for real secrets (GOOGLE_MAPS_API_KEY="ask in slack channel XYZ" or "see 1password/project/google maps key").  Then the README can instruct people to copy that file to .env and edit it.

@merwok In your EC2/SSM example, do you still use this library?

No, I connect to the SSM API (using https://github.com/caravancoop/configstore/) to get settings, without writing them to an env file.


Chore/cleanup

Codecov Report
Base: 35.58% // Head: 31.79% // Decreases project coverage by -3.80% :warning:

Coverage data is based on head (c720099) compared to base (ac84970).
Patch has no changes to coverable lines.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #18      +/-   ##
==========================================
- Coverage   35.58%   31.79%   -3.80%
==========================================
  Files          11       10       -1
  Lines         163      173      +10
  Branches       48       54       +6
==========================================
- Hits           58       55       -3
- Misses         97      109      +12
- Partials        8        9       +1

Impacted Files
Coverage Δ

elphi/lib/cpu_sampler.cpp
47.82% <ø> (ø)

elphi/lib/file_descriptor.cpp
77.77% <ø> (ø)

elphi/lib/perf_events.cpp
0.00% <ø> (ø)

elphi/lib/timeline_view.cpp
66.66% <ø> (ø)

elphi/lib/utils.cpp
0.00% <ø> (ø)

elphi/src/cpu_sampling.cpp
0.00% <ø> (ø)

elphi/include/elphi/utils.hpp
64.28% <0.00%> (-4.95%)
:arrow_down:

elphi/include/elphi/exception.hpp
0.00% <0.00%> (ø)

... and 3 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Lint fixes from DefinitelyTyped

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
4 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.01%) to 42.123%

Files with Coverage Reduction
New Missed Lines
%

extensions/notebook/src/jupyter/serverInstance.ts
4
75.5%

Totals

Change from base Build<PHONE_NUMBER>:
-0.01%

Covered Lines:
28179

Relevant Lines:
62523

💛  - Coveralls


TypeError: '>' not supported

line 1419, in parseAlert
command = 'sell' if positionContracts > quantity else 'buy'
TypeError: '>' not supported between instances of 'NoneType' and 'float'
command = 'sell' if positionContracts > quantity else 'buy'

Hey, thank you for the report. Could you tell me what exchange was it on? Also, did this happen with a recent revision? I'll do my best to fix it asap and I have a close idea of what happened, but it would help a lot if I could reproduce it.


Merge fixes and optimisation improvements

Fixes various merge issues, specifically:
a. Merge operations not working when passes >=2 and merge passes not set (because CutCode sequence was inappropriate)
b. Operations being merged when Merge passes set and Merge ops not set because operations of same type were being incorrectly merged. Fixes #656 and reported in #528 and #465.
c. Merge passes reversing direction unncessarily.

Improves Greedy optimisation with Merged Passes by reducing the size of the CutCode object being optimised by holding only a single copy of each CutGroup and continuing to burn this object rather than having to find the next copy of the same CutGroup. Implements #655.

Not working quite right with step_repeat and a special operation beep between two other ops.

I would go ahead and remove permitted and only do burns remaining, since it's a largely improved system.

I left it in because it is used by inner_selection_cutcode and I didn't want to touch that (because I could not work out what it was doing).
It appears to make every line segment a candidate, then gets the list of candidates (i.e. everything), adds all of them to the output list, then makes all of them not a candidate, then checks to see if there are any candidates left (no) and finishes. But that is clearly not what is happening, so I don't understand the code - and so I left it in rather than break something.

I noted that 2-opt actually introduced a lengthy travel move in one of my tests.
I have spent several hours testing this code with all combinations of optimise options and checking that the simulation was exactly as expected. At least as far as my testing goes, this now seems to be solid.

I am going to merge this anyhow. We can remove permitted in a future PR.

Literally the only thing permitted does is a boolean between 0 and 1 burns remaining. Setting that to an integer does the same thing. You could set permitted to 1 and then set it to 0 when the burns_remaining reaches 1. It literally does the same thing as yours but with a bit more naive usage.

Yes - but what does inner_selection_cutcode do?

I can't set burns_remaining to 1 at the beginning of greedy - like we currently do with permitted - because burns_remaining can be >1 because with Merge Passes checked it is equal to the value of operation passes. And inner_selection_cutcode also sets and clears permitted.
Which is why I need to understand what inner_selection_cutcode is doing.

Additional run for new code 1 pass with and without merges - these are consistent with the original code.

One pass, no merges

[22:50:17] Executing Greedy Short-Travel optimization
[22:50:17] Length at start: 2648966.038968
[22:51:20] Length at end: 81466.042493, optimized in 62.833405 seconds
[22:51:20] Executing Greedy Short-Travel optimization
[22:51:20] Length at start: 6450.561009
[22:51:20] Length at end: 0.020111, optimized in 0.012998 seconds

One pass, with merges

[22:22:32] Executing Greedy Short-Travel optimization
[22:22:33] Length at start: 2650756.095405
[22:23:35] Length at end: 81466.099295, optimized in 62.146681 seconds

I have realised that there will be an issue with step_repeat with this code - because the cutobjects are shared across repeats and the burns_remaining value will not be reset. I have an easy fix in mind and will create a new PR to resolve this this evening. This new PR will also address the very minor review comments I just submitted.


I don't have the calibration file. Do you know how to generate it?

I don't have the calibration file. Do you know how to generate it?

Hi there, you can follow this instruction to generate the files needed.

But I will follow this step and prompt that there is no calibration file

Hi, you can follow the Option 2. Use COLMAP of the instruction, which does not need a calibration file. You may need to install COLMAP in advance.


OnePlus Browser

OnePlus Browser - https://github.com/WhichBrowser/Parser-PHP/issues/174

Coverage remained the same at 100.0% when pulling a11b1efe011b4237858af1ab49f53e18d0f91768 on ayumi-cloud:OnePlus into 4899110cd2f87b01e04ced62dbb9dec541031dee on WhichBrowser:master.


Prevent outside day boxes from resizing on hover

Fixes #308.
Right now because outside days have no border and hovering does, the box for outside days slightly resizes when hovered over.
Adding a 1px invisible border is the easiest way to fix this.
Comparison:
Old:

New:

Coverage remained the same at 86.501% when pulling 08008648ad151541eb2ea977e59a29a22a215a97 on timhwang21:timhwang21/fix-outside-day-hover-box-size into 8d67526e3c0623ff73e915a77d5bd506cb95f420 on airbnb:master.

Coverage remained the same at 86.501% when pulling 08008648ad151541eb2ea977e59a29a22a215a97 on timhwang21:timhwang21/fix-outside-day-hover-box-size into 8d67526e3c0623ff73e915a77d5bd506cb95f420 on airbnb:master.

Ah @majapw sorry, could you roll this back...? My fault for only quickly verifying the fix on the initial screen. On calendars with leading outside dates, you get this:

I poked around for a bit for a better solution, but admittedly CSS isn't really my thing and I couldn't find any simple, perfect solution.

Right. Forgot about the collapsed table border thing. I'll dig into this a bit more, see if I can't find a similarly elegant solution.


Adds a Link::SetLinearVelocity() method

🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸
🎉 New feature
Summary
This PR adds a Link::SetLinearVelocity() method. I foresee this method being useful for testing behaviour of systems like the hydrodynamics or liftDrag plugin which are dependent on velocity for their output forces.
Signed-off-by: Arjo Chakravarty<EMAIL_ADDRESS>Checklist

[x] Signed all commits for DCO
[x] Added tests
[x] Added example and/or tutorial
[x] Updated documentation (as needed)
[ ] Updated migration guide (as needed)
[x] codecheck passed (See contributing)
[ ] All tests passed (See test coverage)
[x] While waiting for a review on your PR, please help review another open pull request to support the maintainers

Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining Signed-off-by messages.

This pull request has been mentioned on Gazebo Community. There might be relevant details there:
https://community.gazebosim.org/t/new-ignition-releases-2022-03-01-citadel-edifice-fortress/1313/1


Rename project

Please don't call this "osu!tau". If you want to include osu! in the title something like "tau for osu!" may work.
On second thoughts, maybe we can make an exception for rulesets. Although it's going to get pretty silly if every ruleset has osu! in its name.. When we put them up on osu!direct for instance. Interested to hear your opinion.

you can blame me for the naming; i only named it so because that's namely what i call all gamemodes; i've played far too long to not do that, plus i felt it would be appropriate because it's an osu mode, although not official i consider it pretty significant

i hope this rename should be sufficient enough, if i missed anything then please tell me!

Personally, seeing how the community is now capable of making custom rulesets, there's two possible options:

Separate built-in official rulesets with the osu! prefix, and have all the other rulesets be named normally, strictly prohibiting them being named starting with osu!.
Strictly force every single ruleset to be named osu!<name>, to maintain the theme.

While initially I was more open about naming everything as osu!<name>, even a custom ruleset I had in mind, I'm probably leaning towards the first option, which is to name custom rulesets without the osu! prefix (or variants, them being os!, osu-, etc.).

This really isn't the best place to discuss about ruleset naming, seeing as this issue has already been resolved over here.

Still not sure on direction forward, but we'll figure something out before we begin to distribute 3rd party rulesets.

I'm just going to reopen the issue so that everyone can feel free and discuss about this.

When discussed, it will be done on the official repo (or not at all and just be released as documentation). And it's too far away to open an issue yet.


String Type

Could we consider the inclusion of string types?
It may be an immutable subtype of extern.
String type marker:
arg = ""+arg;

It would have the following expressions:

str.length: size of the string (a constant). Type: unsigned.
str.charCodeAt(index): character code, a nonnegative integer less than 2^16. Type: (unsigned) → fixnum.

This is motivated by the idea that converting an external string into a typed array before passing it in an asm.js exported function is probably not the most efficient approach. Yet, in my experience, string parsing in JS can be boosted a lot.

Out of curiosity, what are you guys planning to make (or have made) with asm.js + StringView?


websocket not run on wss https ssl supervisor

hi all
we config our web with SSL and it works when using #php artisan websockets:serve
but dont work when using supervisord
error are : failed: Error in connection establishment: net::ERR_CONNECTION_REFUSED

someone please enlight me where to make change again.
thanks!

turn out i used systemd
https://webmasters.stackexchange.com/questions/119037/how-do-i-run-websockets-as-a-service-when-the-web-server-starts-and-monitor-it-t

Was your anyKey intentional?
I use supervisord in multiple projects, you have to configure it correctly (I use also Plesk) :
[program:laravel-websocket]
command=/path/to/your/php /var/www/vhosts/path/to/yout/artisan websockets:serve
autostart=true
autorestart=true
user=your_user
stderr_logfile=/var/log/supervisor-laravel.websocket.err.log
stdout_logfile=/var/log/supervisor-laravel.websocket.out.log

Never run as root
Absolute paths, and of course follow supervisord config guide
Check error logs
Do a netcat/port scan on configured port to be sure you don't miss proxy/firewall rules

note must run command with root
[program:websockets]
command=sudo php /home/{{youusername}}/public_html/artisan websockets:serve
numprocs=1
autostart=true
autorestart=true
user=root

Make sure the key and certificate files are readable through the UNIX permissions.


Provide automated release generation

Problem
Currently only code-checkouts are available for working with CHIP. We need to prepare for release management, which will help us with:

naming releases (e.g. saying "I am testing on v1.2.3" instead of always tip of tree)
providing build assets (e.g. sample apps that are pre-built and can be flashed/used as is without rebuilding)

Proposed Solution
Use github releases, in an automated manner like https://github.com/marketplace/actions/automatic-releases
Plan would be to:

create a workflow for 'build release'
automate generation of build assets
generate the release and append assets to it

We will use branches for releases, but no artifacts. Closing for now as we are unlikely to look for full releases.


Tests are broken when running tox

I have tried to run the tests using tox. Tried on py36, py37, and py38, all produce the following error.
___ ERROR collecting samples/test_google_search.py ___ samples/test_google_search.py:35: in <module>     unittest.main() ../../.pyenv/versions/3.6.10/lib/python3.6/unittest/main.py:95: in __init__     self.runTests() ../../.pyenv/versions/3.6.10/lib/python3.6/unittest/main.py:258: in runTests     sys.exit(not self.result.wasSuccessful()) E   SystemExit: False

Most likely, you ran tox without any arguments and picked up the samples directory.

I had to run tox -- tests in order to get pytest to pick only the tests folder.
The tests are now running up to 48% where they hang-up and do not seem to progress.

Looks like the tests are failing on the latest version of Firefox, CI is hard-coded to Firefox 68 so it went undetected.

Thank you for looking into this

Firefox failures fixed by #782


Support for specifying timezone in individual schedules in powerCycleCentral

This is required when teams in different timezones manage their own resources.   The resource-tagged version supports a timezoneTag but this isn't applicable for centrally-configured schedules.

Given that some customers are offshore, we want the service to cater for different timezones
When customers are in different timezones and configure their schedule to their localtime
Then the service will stop/start scheduled services based to their localtime

Including tests, and documentation, of course.

Right now, if the subject resource has a Tag (by default Timezone) this will be used as the timezone for the schedule.  Otherwise the Account has a configured timezone, which inherits from the global defaults, otherwise UTC as a failsafe default.
defaults:
  settings:
    timezone: Australia/Melbourne
    timezoneTag: Timezone

accounts:
  includeList:
    - accountId: "222222222222"
      # All settings from the 'default' section can be specified here to make them specific to an account
      settings:
        timezone: Australia/Melbourne
        timezoneTag: Timezone

This may be sufficient.

Customer has confirmed that specifying Timezone at the account level will be sufficient.  Closing this ticket, and will raise another one to write a unit test to validate this behaviour.


Mediawiki page export

https://en.wikipedia.org/wiki/ABC_notation
shows an example how ABC notation may be integrated into Mediawiki pages.
Unfortunately the standard ABC notation results sometimes do not properly render in Mediawiki due to the limitations of https://raw.githubusercontent.com/lilypond/lilypond/refs/heads/master/scripts/abc2ly.py so simply
wrapping into a score tag is sometimes not sufficient. I would hope there could be some tool support for finding out what works and what does not.
<score lang="ABC">
X:1
T:The Legacy Jig
M:6/8
L:1/8
R:jig
K:G
GFG BAB | gfg gab | GFG BAB | d2A AFD |
GFG BAB | gfg gab | age edB |1 dBA AFD :|2 dBA ABd |:
efe edB | dBA ABd | efe edB | gdB ABd |
efe edB | d2d def | gfe edB |1 dBA ABd :|2 dBA AFD |]
</score>

For something like this, you probably want to use abcjs or abc2svg directly.
This is not a function of my tool.


Employ designer for layout of Usage page

Please complete the following fields as applicable:
Usage page is an important one for org admins. The overall design is very poor. We added new features, new reports and inserted new buttons for them wherever we could easily fit them on the screen at the time, which is understandable. We need to re-order items on the screen too 'download global statistics' is a very prominent top right whereas the main purpose of the page is intended for org statistics (and this makes people wonder what 'global' means in this context). This will require some development work to implement the design. I could take the lead on this by approaching a designer. A designer could also advise on how to position and display the plan per template chart.
Expected behaviour:
Usage page should be more user friendly and look more like the rest of the screens - plans, templates, guidance.
Actual behaviour:
Page has grown organically, with elements added to it as and when completed.
Steps to reproduce:
View Usage page and compare against various screens - Users, Plans, Templates, Guidance.

Closed as reworked usage dashboard


KAFKA-10287: PROPOSAL: safe offset tracking

This PR should be targeted to trunk, but it's not a trivial task. I just wanted to propose this approach.
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

Hey @cadonna , I was reflecting on your fix for KAFKA-10287, and it seems like dealing with those sentinel values is quite risky. We've had several bugs in the past, I don't feel certain that we don't have bugs today, and any refactoring could easily introduce bugs in the future.
What do you think about taking a structural approach to offset sentinel management, like in this proposal?
This wouldn't be for 2.6, but it's targeted at that branch because I built upon your PR.


Create th.json

Thai language for gitignore.io for Thai people

Finally, Thai language is available.

request a new pull


[Vertical Nav] Add option for collapse trigger to be bottom aligned and for submenus to act like an accordion

Select one ...  (check one with "x")
[ ] bug
[x] feature request
[x] enhancement

Expected behavior
Should be useful having a property to set the collapse trigger on the bottom, something like this:

Also, increase the size of icons when the nav is collapse should be nice:

The screenshot are from ant.design

Other posible improvements: show submenu on the right without expand the item inside de navbar (issue submenu in the screenshot), only expand the current selected menu (CI / CD, in the image)

@gperdomor
I think I understand the use case for having the collapse trigger at the bottom of the sidebar (as a configurable option).
But what is the use case for only expanding the active section? How is that better than allowing users to expand and navigate directly to an item in the submenu?

@mathisscott reasons could vary, from personal preference or to avoid confussions... For example check this image:

I don't know if Charmander is a root menu or a sub menu, I don't know that menu is from Fire group, I need check the down arrow to know that, in the gitlab version I know exactly where I am.
In the other hand, imagine you have a lot of root menu, for example in a modular app where each module can add only one menu entry, but many submenu entries, as user y need do something, but maybe you don't know where is the link, so you start to expand one by one until you get it... Now you have a lot of expanded entries, which could be ugly (IMO) and confusing at least for the common user, also you get a lot of vertical scroll.
If you have a lot of expanded menus, you can produce scroll in the navbar and you can lost the current menu of sight.
And maybe more reasons...

Re: Charmander. I disagree. The design of the vertical nav makes it fairly clear that Charmander is a child of fire. I don't know that the gitlab design makes it any clearer. It is a noisier design that, at first glance, let me to believe that CI/CD was a child of “Merge Requests” and that Pipelines was a grandchild of that navigation element. There is no indication, for example, that CI/CD is in fact expandable. No arrow, caret, or anything. So I don't think that this UI is a good model for the described use case.
Re: a lot of root menus and submenu entries. I think that is definitely an edge case. And, at some point, should inspire a product team to reconsider their information architecture. I fully agree that it would be ugly. But I don't know if the reason it would be ugly is Clarity.
I'm on board with an option to put the collapse trigger to the bottom. And even an option to force only one sub-menu to be expanded at a time. But forcing it such that only the active submenu is ever expanded is too much, IMO. And it would require a user to click root menu items blindly and inhibit exploration of their child menus. Basically compounding the problem you mention, not solving for it.
An option to force only one submenu to be open at a time (like an accordion) solves the bad-information-architecture-and-can’t-fix-it issue you describe.

For the collapse trigger placement, we need a boolean input that defaults to the existing top aligned collapse trigger but aligns the trigger to the bottom when set opposite to the default setting -- most likely using flex-order: -1.
For the accordion functionality, that's a little trickier. We will again need a boolean input but this one will be used inside the vertical nav behavior logic to close all other root-level menus when a new one is opened. We'll need to make sure the root-level header maintains highlighting as expected.

You confusion is caused because I'm hover the issue menu, this is the normal view:

You right about the carret, in gitlab is missing. but the left color in all menu group I think is a good idea...
Anyway, is only a proposal about possible things that could be improved, but the suggestion is improve the component api and make it more flexible, and I know, is the first release of this component, and is great :D

While I think both the request for the collapse to be at the bottom and the different treatment of sub-menus both have some degree of merit, I'd suggest they be split into two issues, as they don't have strong dependencies on one another.

Our current  design supports clicking the bottom of the vertical nav (if there is space) to act as a toggler.
This is a worthwhile enhancement request, but is challenging to implement due to the existing behaviors and nature of Clarity Angular. As we build out Clarity Core, this should be possible to realize with the applications managing the state and functionality more directly instead of Clarity Angular.
In an effort to clean up our backlog and focus our attention, I’m going to close this as likely to be resolved by upcoming implementations in Clarity Core. Please follow our development and releases to see when we release relevant components to make this possible.

Our current  design supports clicking the bottom of the vertical nav (if there is space) to act as a toggler.
This is a worthwhile enhancement request, but is challenging to implement due to the existing behaviors and nature of Clarity Angular. As we build out Clarity Core, this should be possible to realize with the applications managing the state and functionality more directly instead of Clarity Angular.
In an effort to clean up our backlog and focus our attention, I’m going to close this as likely to be resolved by upcoming implementations in Clarity Core. Please follow our development and releases to see when we release relevant components to make this possible.


Fixed error in SyntaxTreeGraphVizTest()

OUT type in the Parser was int, causing a boxed double in
SimpleExpressionParser to be cast to int, which caused an
InvalidCastException. Fixed by using OUT type double.

thanks for the fix.
olivier


Add user Authentication to the API

To read more about: https://www.apollographql.com/docs/apollo-server/security/authentication/

Authentication is determining whether a given user is logged in, and subsequently determining which user someone is.
Authorization is then determining what a given user has permission to do or see.
Apollo Graphql Docs

I need to reproduce this article https://www.apollographql.com/blog/backend/auth/setting-up-authentication-and-authorization-apollo-federation/


On iOS+Google Maps, the initialRegion property doesn't work

Is this a bug report?
Yes

Have you read the Installation Instructions?
Yes
Environment

"expo": "^27.0.1",
"react": "16.3.1",
"react-native": "https://github.com/expo/react-native/archive/sdk-27.0.0.tar.gz",
"react-navigation": "1.5.11"

That version of expo comes with react-native-maps 0.21.0
Platform: Google Maps on iOS
Steps to Reproduce
Create a MapView (Google Maps) with an initialRegion property and run it on iOS.
Expected Behavior
It should start at the region that was set, just like on iOS Apple Maps and Android Google Maps.
Actual Behavior
The map will start all the way zoomed out, as if there was no region set.
Reproducible Demo
https://snack.expo.io/B1KBGrp6G
<MapView
  style={{ flex: 1 }}
  provider={MapView.PROVIDER_GOOGLE}
  initialRegion={{
    latitude: 47.6062,
    longitude: -122.3321,
    latitudeDelta: 0.0922,
    longitudeDelta: 0.0421,
  }}
  onPress={() => Alert.alert('onPress')}
  onLongPress={() => Alert.alert('longPress')}
  onPoiClick={() => Alert.alert('onPoiClick')}
/>

Using region instead of initialRegion works fine, however.

I'm using version 0.20.1, same issue. If I pass region property or use .animateToRegion(), it works fine, but setting initialRegion only centers the map to the coordinates without considering latitudeDelta and longitudeDelta values.

but when you perform setState action, the map will animate back to the region.
any solution for this?


Initializing car at a specified location and a specified speed

How to set our car to a given position? It seems we're able to select from a list of pos_start defined in Unreal editor. So we just go ahead adding a playerstart in Unreal and use a new ID for it. Then we can compile and use this new playerID to start the car from there. Correct?
Can we set the car's speed to a given value?

Hi @hs105!

So we just go ahead adding a playerstart in Unreal and use a new ID for it. Then we can compile and use this new playerID to start the car from there. Correct?

That's correct!

Can we set the car's speed to a given value?

Not right now, but this will change in the next release, take a look at #595

even starting the car at a given speed is not possible when an episode starts? Just the initial speed we want to set it.

Hey @hs105.
This is not possible with our code as it is, but you can test it using Unreal Engine editor. We haven't test anything like that currently.

Got it.
thanks!

You welcome!

@hs105
Could you please tell me your method to gain an initial speed when an episode starts ?


Dependency issue with latest validate-go and protovalidate-go

Hi,
Upgrading connectrpc.com/validate now fails with the latest buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go
It works fine with the previous version v1.34.2-20240717164558-a6c49f84cc0f.2
go 1.23.1
buf 1.42.0
require (
  connectrpc.com/connect v1.17.0
  connectrpc.com/validate v0.1.0
  buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.34.2-20240717164558-a6c49f84cc0f.2
)

go get -u ./...
go: downloading buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.34.2-20240920164238-5a7b106cbb87.1
go: finding module for package buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate/priv
go: ... imports
        connectrpc.com/validate imports
        github.com/bufbuild/protovalidate-go imports
        github.com/bufbuild/protovalidate-go/internal/evaluator imports
        github.com/bufbuild/protovalidate-go/internal/constraints imports
        buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate/priv: module buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go@latest found (v1.34.2-20240920164238-5a7b106cbb87.2), but does not contain package buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate/priv

It works again now with buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.34.2-20240920164238-5a7b106cbb87.2


Add an additional_fields kwarg to all jobs

[X] I have read the Developer Guide. Don't lie! 😉
[X] My PR is on a custom branch and is not named main.
[X] I have added relevant unit tests. Note: Your PR will likely not be merged without proper tests.

The purpose of this PR is to add an additional_fields kwarg to all jobs. This is primarily meant to assist with provenance tracking. For instance, if you are running a workflow on a material "MP-10", you could set additional_fields={"tag": "MP-10"} for the relevant jobs. Several workflow engines support tagging, but we want to provide an option for this independent of the workflow engine in case the user doesn't run with one or the workflow engine doesn't support it.

@samblau: Any thoughts? The implementation here is trivial, but I'm curious if you would prefer a different approach (or maybe you don't care because you do the tagging via Jobflow/FireWorks).


fixes bug with opportunity signups

adding a different business name now updates the contact as opposed to throwing an error
fixes #494
added tests for basic coverage to opportunity signups
fixes #492

Cool LGTM :+1:


Presence channel Android - FATAL EXCEPTION: pusher-java-client eventQueue

We are integrating this package, and everything worked fine on ios devices.
When I tried to run the app on android, I keep getting the following exception and the app shuts down.
E/AndroidRuntime( 8593): FATAL EXCEPTION: pusher-java-client eventQueue
E/AndroidRuntime( 8593): java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.pusher.client.channel.User.getId()' on a null object reference
E/AndroidRuntime( 8593): 	at com.pusher.channels_flutter.PusherChannelsFlutterPlugin.onUsersInformationReceived(PusherChannelsFlutterPlugin.kt:272)
E/AndroidRuntime( 8593): 	at com.pusher.client.channel.impl.PresenceChannelImpl.handleSubscriptionSuccessfulMessage(PresenceChannelImpl.java:126)
E/AndroidRuntime( 8593): 	at com.pusher.client.channel.impl.PresenceChannelImpl.onMessage(PresenceChannelImpl.java:58)
E/AndroidRuntime( 8593): 	at com.pusher.client.channel.impl.ChannelManager.onMessage(ChannelManager.java:116)
E/AndroidRuntime( 8593): 	at com.pusher.client.connection.websocket.WebSocketConnection.handleEvent(WebSocketConnection.java:177)
E/AndroidRuntime( 8593): 	at com.pusher.client.connection.websocket.WebSocketConnection.access$600(WebSocketConnection.java:27)
E/AndroidRuntime( 8593): 	at com.pusher.client.connection.websocket.WebSocketConnection$6.run(WebSocketConnection.java:261)
E/AndroidRuntime( 8593): 	at com.pusher.client.util.Factory$1.run(Factory.java:119)
E/AndroidRuntime( 8593): 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
E/AndroidRuntime( 8593): 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
E/AndroidRuntime( 8593): 	at java.lang.Thread.run(Thread.java:923)

This only happens on android when subscribing to a presence channel.
In the 'onAuthorizer' function we do a request to our api which returns the socket_auth(or presence_auth) function from the pusher laravel package.
How can we solve this issue?

Im experiencing the same issue, but, does the onAuthorizer even get called? I think it crashes right after trying to subscribe.

The onAuthorizer is called in my application. But after this, it crashes.

Same issue, did you find a solution?

E/AndroidRuntime( 5696): FATAL EXCEPTION: pusher-java-client eventQueue
E/AndroidRuntime( 5696): Process: com.pravera.flutter_foreground_task_example, PID: 5696
E/AndroidRuntime( 5696): java.lang.NullPointerException
E/AndroidRuntime( 5696): 	at e.c.a.c.m(:90)
E/AndroidRuntime( 5696): 	at e.c.a.c.a(:209)
E/AndroidRuntime( 5696): 	at e.c.b.f.f.b$d.run(:166)
E/AndroidRuntime( 5696): 	at e.c.b.h.b$a.run(:119)
E/AndroidRuntime( 5696): 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
E/AndroidRuntime( 5696): 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
E/AndroidRuntime( 5696): 	at java.lang.Thread.run(Thread.java:920)

I haven't found a solution yet, i think the issue is in the package and needs to be fixed.
Also noticed that private channels where only fixed in v.1.0.5 so i hope the presence channels will be fixed in v.1.0.6...

It seems the plugin crashes here:
PusherChannelsFlutterPlugin.kt 272:    "userId" to channel.me.id
Is it possible you set a breakpoint there in Android Studio, and see what is in the "me" member?

I am stuck at the same problem, is there any solution available?

I happened to find a solution for Presence-Channel subscription for this package.
It works for both Android and Web.
All you have to do is declare your channelName, onSubscriptionSucceeded(), onEvent(), onSubscriptionError() under the pusher.subscribe() rather than declare it under pusher.init(). And for the server-side, you must provide user_id and user_info  to pusher.authenticate().
I am attaching my code on the flutter-side and server-side (I used a nodeJs server).
1. flutter
import 'dart:convert';
import 'dart:io';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:http/http.dart';
import 'package:pusher_channels_flutter/pusher_channels_flutter.dart';
import 'secrets.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatefulWidget {
  const MyApp({Key? key}) : super(key: key);

  @override
  State<MyApp> createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  static PusherChannelsFlutter pusher = PusherChannelsFlutter.getInstance();
  String userName = 'Anonymous';
  String get authURL => "${_hostname()}/pusher/auth/$userName";
  String channelName = 'presence-my-channel';

  Future<void> _initPusher() async {
    try {
      await pusher.init(
        apiKey: apikey, // Place Your own Api Key
        cluster: cluster, // Place Your own Cluster
        onConnectionStateChange: onConnectionStateChange,
        onAuthorizer: onAuthorizer,
        useTLS: true,
        authEndpoint: authURL,
      );

      await pusher.subscribe(
        channelName: channelName,
        onSubscriptionSucceeded: (data) {
          onSubscriptionSucceeded(channelName, data);
        },
        onSubscriptionError: (message, e) {
          onSubscriptionError(message, e);
        },
        onEvent: (event) {
          onEvent(event);
        },
      );
      await pusher.connect();
    } catch (e) {
      if (kDebugMode) {
        print("Error: $e");
      }
    }
  }

  void onConnectionStateChange(dynamic currentState, dynamic previousState) {
    if (kDebugMode) {
      print("Connection: $currentState");
    }
  }

  String _hostname() {
    if (kIsWeb) {
      return 'http://localhost:5000';
    } else {
      if (Platform.isAndroid) {
        return 'http://<IP_ADDRESS>:5000';
      } else {
        return 'http://localhost:5000';
      }
    }
  }

  dynamic onAuthorizer(
      String channelName, String socketId, dynamic options) async {
    var result = await post(
      Uri.parse(authURL),
      headers: {"Content-Type": "application/x-www-form-urlencoded"},
      body: {
        "socket_id": socketId,
        "channel_name": channelName,
      },
    );
    return jsonDecode(result.body);
  }

  void onSubscriptionSucceeded(String channelName, dynamic data) {
    if (kDebugMode) {
      print("onSubscriptionSucceeded: $channelName data: $data");
    }
  }

  void onSubscriptionError(String message, dynamic e) {
    if (kDebugMode) {
      print("onSubscriptionError: $message Exception: $e");
    }
  }

  void onEvent(PusherEvent event) {
    if (kDebugMode) {
      print("Event Received: ${event.data}");
      print("Event name: ${event.eventName}");
    }
  }

  @override
  void initState() {
    super.initState();
    _initPusher();
  }

  @override
  Widget build(BuildContext context) {
    return Container();
  }
}

Note:  Add this below code in flutter-side Web
<head>
  <script
    charset="utf-8"
    src="https://js.pusher.com/7.0/pusher.min.js"
  ></script>
  ...
</head>

2. server (nodeJs)
// First install the dependencies:
// npm install pusher express cors

const express = require("express");
const cors = require("cors");
const Pusher = require("pusher");
const pusher = new Pusher({
  appId: "APP_ID",
  key: "APP_KEY",
  secret: "APP_SECRET",
  cluster: "APP_CLUSTER",
  useTLS: true,
});
const app = express();

app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cors());
app.post("/pusher/auth/:id", function (req, res) {
  const socketId = req.body.socket_id
  const channel_name = req.body.channel_name
  const presenceData = {
    user_id: req.params.id,
    user_info: { id: req.params.id},
  };
  const authResponse = pusher.authenticate(socketId, channel_name, presenceData);
  console.log('server auth', authResponse)
  res.send(authResponse);
})

const port = process.env.PORT || 5000;
app.listen(port);

Hope it helps!

Hi @OlrikNijmeijer does the solution posted above help? If not, could you share the code you are using for subscribing to the channel and the version in use?

My issue was that I tried to use multiple repositories which called "connect()" on the pusher channels plugin.
Fixed by having single connection handler

Thanks @shubhrajyotidey305
I just removed following callbacks and kept onAuthorized only in init() and it works fine.


SBNotificationHub unknown on Xcode 7 / IOS 9

I'm trying to use Azure Notification Hub in my IOS project. I've done this successfully in the past on other projects but this time I am having a problem.
I added version 2.2.30921 of the framework to my IOS 9 project and following the tutorial I have hit a problem.
The tutorial suggests using registerNativeWithDeviceToken in the app delegate callback didRegisterForRemoteNotificationsWithDeviceToken; however, I'm getting a build error saying that SBNotificationHub is an unknown type (and  Xcode is unhelpfully making an incorrect recommendation that I replace with SBNotificationHub with NSNotification).
Hopefully the attached screenshot is self explanatory.

Is there a regression in build 30921? Does the tutorial need an update? Or is it my bad.
Nick

My bad - following an old tutorial. Looks like the supported way to do this is using the MSClient object to connect to an Azure Mobile Service??

NH logic is built into mobile services, the SBNotificationHub, etc classes are part of this repo: https://github.com/Azure/azure-notificationhubs, if you want to create your issue over there.

Thanks very much for the redirect. Looks like my options are to use Mobile Services against an Azure Mobile app, or if I just want notifications and none of the other app goodness, use the other repo you've redirected me to.
Much obliged!
Nick


Test fail-fast of gradle-bot

Don't merge. This is a deliberate failure to test fail-fast functionality of gradle-bot.

@bot-gradle test and merge

OK, I've already triggered a build for you.

OK, I've already triggered a build for you.

@bot-gradle test and merge

OK, I've already triggered a build for you.

Pre-tested commit build failed.


How to call user-rpc for multiple key

Hi ,
I have a yang action defined in a list called "aggregation" and "ru-instance " is the key of the list
When i try to pass multiple ru-instance in same xml i'm getting the below error . Please let me know how to pass multiple ru-instance action in the same xml file .
> user-rpc --content /home/airvana/vimala/DateTime/usr/bin/examples-action-mul.xml
ly ERROR: Invalid order of elements "ru-instance" and "ru-instance". (/o-ran-aggregation-base:aggregated-o-ru/aggregation[ru-instance='2']/ru-instance)
ly ERROR: Invalid position of the key "ru-instance" in a list "aggregation". (/o-ran-aggregation-base:aggregated-o-ru/aggregation[ru-instance='2']/ru-instance)
cli_send_recv: Failed to send the RPC.

xml file:
<aggregated-o-ru xmlns="urn:o-ran:agg-base:1.0" xmlns:xc="urn:ietf:params:xml:ns:netconf:base:1.0" >
    <aggregation xmlns="urn:o-ran:agg-base:1.0">
        <ru-instance>2</ru-instance>
            <X0005B9_reset xmlns="urn:commscope:o-ran:ru:1.0">
            </X0005B9_reset>
            <ru-instance>4</ru-instance>
                        <X0005B9_reset xmlns="urn:commscope:o-ran:ru:1.0">
            </X0005B9_reset>
              </aggregation>
</aggregated-o-ru>

List example:
augment  "/or-agg-base:aggregated-o-ru/or-agg-base:aggregation" {
        action X0005B9_reset {
            output {
              leaf reset-response {
                type enumeration { enum RP_RESET_OK;}

              }
        }
        }

/o-ran-aggregation-base:aggregated-o-ru/aggregation[ru-instance='2']/commscope-o-ran-ru:X0005B9_reset

My guess is that you are trying to create 2 instances of a list, your XML is wrong. This is probably the right one.
<aggregated-o-ru xmlns="urn:o-ran:agg-base:1.0" xmlns:xc="urn:ietf:params:xml:ns:netconf:base:1.0" >
    <aggregation>
        <ru-instance>2</ru-instance>
        <X0005B9_reset xmlns="urn:commscope:o-ran:ru:1.0">
        </X0005B9_reset>
    </aggregation>
    <aggregation>
        <ru-instance>4</ru-instance>
        <X0005B9_reset xmlns="urn:commscope:o-ran:ru:1.0">
        </X0005B9_reset>
    </aggregation>
</aggregated-o-ru>

I'm etting the below error now

user-rpc --content /home/airvana/vimala/DateTime/usr/bin/examples-action-mul.xml
ly ERROR: Unknown element "X0005B9_reset". (/o-ran-aggregation-base:aggregated-o-ru/aggregation[ru-instance='4']/commscope-o-ran-ru:X0005B9_reset)
ly ERROR: Unexpected action node "X0005B9_reset". (/o-ran-aggregation-base:aggregated-o-ru/aggregation[ru-instance='4']/commscope-o-ran-ru:X0005B9_reset)
cli_send_recv: Failed to send the RPC.

Okay, sorry, I somehow completely missed the fact that you are executing an action. In that case you cannot include several instances of a parent list, it would defeat the purpose of action, which is to tie an operation to specific parent instances.

Thank you @michalvasko .
Can i execute 2 actions for the same instance ?
Example : X0005B9_reset and X0005B9_reboot are action under "aggregation " list

2

No, you cannot. There must always be a single RPC/action in every NETCONF <rpc> message.

Thank you @michalvasko


Adding support to query cipher policies in aws_ec2_load_balancer_listener based on ssl_policy name. Closes #274

Integration test logs

Logs
No env file present for the current environment:  staging
 Falling back to .env config
No env file present for the current environment:  staging
customEnv TURBOT_TEST_EXPECTED_TIMEOUT 300

SETUP: tests/aws_ec2_load_balancer_listener []

PRETEST: tests/aws_ec2_load_balancer_listener

TEST: tests/aws_ec2_load_balancer_listener
Running terraform
data.aws_partition.current: Refreshing state...
data.aws_region.primary: Refreshing state...
data.aws_caller_identity.current: Refreshing state...
data.aws_region.alternate: Refreshing state...
data.null_data_source.resource: Refreshing state...
tls_private_key.example: Creating...
tls_private_key.example: Creation complete after 0s [id=9dcae79e7d2f6affc51b25e47500c44b4616691d]
tls_self_signed_cert.example: Creating...
tls_self_signed_cert.example: Creation complete after 0s [id=97244952936137431849117081124795314292]
aws_iam_server_certificate.test_cert_alt: Creating...
aws_vpc.my_vpc: Creating...
aws_iam_server_certificate.test_cert_alt: Creation complete after 3s [id=ASCA4OUXSEZ32JM5I7XKY]
aws_vpc.my_vpc: Still creating... [10s elapsed]
aws_vpc.my_vpc: Creation complete after 12s [id=vpc-0b5c28e020725544d]
aws_internet_gateway.igw: Creating...
aws_lb_target_group.my_targetGroup: Creating...
aws_internet_gateway.igw: Creation complete after 6s [id=igw-0ea837c535fe8e50d]
aws_subnet.my_subnet2: Creating...
aws_subnet.my_subnet1: Creating...
aws_lb_target_group.my_targetGroup: Creation complete after 6s [id=arn:aws:elasticloadbalancing:us-east-1:123456789012:targetgroup/tf-20210412105938294200000001/c54728ab0aac88a1]
aws_subnet.my_subnet1: Creation complete after 3s [id=subnet-04adcc91cb4e4b164]
aws_subnet.my_subnet2: Creation complete after 3s [id=subnet-05969fd981bebdff7]
aws_lb.my_lb: Creating...
aws_lb.my_lb: Still creating... [10s elapsed]
aws_lb.my_lb: Still creating... [20s elapsed]
aws_lb.my_lb: Still creating... [30s elapsed]
aws_lb.my_lb: Still creating... [40s elapsed]
aws_lb.my_lb: Still creating... [50s elapsed]
aws_lb.my_lb: Still creating... [1m0s elapsed]
aws_lb.my_lb: Still creating... [1m10s elapsed]
aws_lb.my_lb: Still creating... [1m20s elapsed]
aws_lb.my_lb: Still creating... [1m30s elapsed]
aws_lb.my_lb: Still creating... [1m40s elapsed]
aws_lb.my_lb: Still creating... [1m50s elapsed]
aws_lb.my_lb: Still creating... [2m0s elapsed]
aws_lb.my_lb: Still creating... [2m10s elapsed]
aws_lb.my_lb: Creation complete after 2m17s [id=arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/turbottest28765/db118e19c1d46801]
aws_lb_listener.named_test_resource: Creating...
aws_lb_listener.named_test_resource: Creation complete after 2s [id=arn:aws:elasticloadbalancing:us-east-1:123456789012:listener/app/turbottest28765/db118e19c1d46801/03a1391b36d65872]

Warning: Deprecated Resource

The null_data_source was historically used to construct intermediate values to
re-use elsewhere in configuration, the same can now be achieved using locals

Apply complete! Resources: 10 added, 0 changed, 0 destroyed.

Outputs:

account_id =<PHONE_NUMBER>12
aws_partition = aws
load_balancer_arn = arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/turbottest28765/db118e19c1d46801
region_name = us-east-1
resource_aka = arn:aws:elasticloadbalancing:us-east-1:123456789012:listener/app/turbottest28765/db118e19c1d46801/03a1391b36d65872
resource_id = arn:aws:elasticloadbalancing:us-east-1:123456789012:listener/app/turbottest28765/db118e19c1d46801/03a1391b36d65872
resource_name = turbottest28765
target_group_arn = arn:aws:elasticloadbalancing:us-east-1:123456789012:targetgroup/tf-20210412105938294200000001/c54728ab0aac88a1

Running SQL query: test-get-query.sql
[
  {
    "arn": "arn:aws:elasticloadbalancing:us-east-1:123456789012:listener/app/turbottest28765/db118e19c1d46801/03a1391b36d65872",
    "default_actions": [
      {
        "AuthenticateCognitoConfig": null,
        "AuthenticateOidcConfig": null,
        "FixedResponseConfig": null,
        "ForwardConfig": {
          "TargetGroupStickinessConfig": {
            "DurationSeconds": null,
            "Enabled": false
          },
          "TargetGroups": [
            {
              "TargetGroupArn": "arn:aws:elasticloadbalancing:us-east-1:123456789012:targetgroup/tf-20210412105938294200000001/c54728ab0aac88a1",
              "Weight": 1
            }
          ]
        },
        "Order": 1,
        "RedirectConfig": null,
        "TargetGroupArn": "arn:aws:elasticloadbalancing:us-east-1:123456789012:targetgroup/tf-20210412105938294200000001/c54728ab0aac88a1",
        "Type": "forward"
      }
    ],
    "load_balancer_arn": "arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/turbottest28765/db118e19c1d46801",
    "port": 443,
    "protocol": "HTTPS"
  }
]
✔ PASSED

Running SQL query: test-hydrate-query.sql
[
  {
    "akas": [
      "arn:aws:elasticloadbalancing:us-east-1:123456789012:listener/app/turbottest28765/db118e19c1d46801/03a1391b36d65872"
    ],
    "ssl_policy_detail": {
      "Ciphers": [
        {
          "Name": "ECDHE-ECDSA-AES128-GCM-SHA256",
          "Priority": 1
        },
        {
          "Name": "ECDHE-RSA-AES128-GCM-SHA256",
          "Priority": 2
        },
        {
          "Name": "ECDHE-ECDSA-AES128-SHA256",
          "Priority": 3
        },
        {
          "Name": "ECDHE-RSA-AES128-SHA256",
          "Priority": 4
        },
        {
          "Name": "ECDHE-ECDSA-AES128-SHA",
          "Priority": 5
        },
        {
          "Name": "ECDHE-RSA-AES128-SHA",
          "Priority": 6
        },
        {
          "Name": "ECDHE-ECDSA-AES256-GCM-SHA384",
          "Priority": 7
        },
        {
          "Name": "ECDHE-RSA-AES256-GCM-SHA384",
          "Priority": 8
        },
        {
          "Name": "ECDHE-ECDSA-AES256-SHA384",
          "Priority": 9
        },
        {
          "Name": "ECDHE-RSA-AES256-SHA384",
          "Priority": 10
        },
        {
          "Name": "ECDHE-RSA-AES256-SHA",
          "Priority": 11
        },
        {
          "Name": "ECDHE-ECDSA-AES256-SHA",
          "Priority": 12
        },
        {
          "Name": "AES128-GCM-SHA256",
          "Priority": 13
        },
        {
          "Name": "AES128-SHA256",
          "Priority": 14
        },
        {
          "Name": "AES128-SHA",
          "Priority": 15
        },
        {
          "Name": "AES256-GCM-SHA384",
          "Priority": 16
        },
        {
          "Name": "AES256-SHA256",
          "Priority": 17
        },
        {
          "Name": "AES256-SHA",
          "Priority": 18
        }
      ],
      "Name": "ELBSecurityPolicy-2016-08",
      "SslProtocols": [
        "TLSv1",
        "TLSv1.1",
        "TLSv1.2"
      ]
    },
    "title": "turbottest28765-03a1391b36d65872"
  }
]
✔ PASSED

Running SQL query: test-list-query.sql
[
  {
    "arn": "arn:aws:elasticloadbalancing:us-east-1:123456789012:listener/app/turbottest28765/db118e19c1d46801/03a1391b36d65872",
    "load_balancer_arn": "arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/turbottest28765/db118e19c1d46801",
    "port": 443,
    "protocol": "HTTPS"
  }
]
✔ PASSED

Running SQL query: test-not-found-query.sql
null
✔ PASSED

Running SQL query: test-turbot-query.sql
[
  {
    "akas": [
      "arn:aws:elasticloadbalancing:us-east-1:123456789012:listener/app/turbottest28765/db118e19c1d46801/03a1391b36d65872"
    ],
    "title": "turbottest28765-03a1391b36d65872"
  }
]
✔ PASSED

POSTTEST: tests/aws_ec2_load_balancer_listener

TEARDOWN: tests/aws_ec2_load_balancer_listener

SUMMARY:

1/1 passed.

Example query results

Results
List load balancer listeners contains security policy with weak cipher
select
  arn,
  ssl_policy_detail ->> 'Name' ssl_policy_name,
  cipher ->> 'Name' cipher
from
  aws_ec2_load_balancer_listener,
  jsonb_array_elements(ssl_policy_detail -> 'Ciphers') cipher
where
  cipher ->> 'Name' = 'DES-CBC3-SHA';

+--------------------------------------------------------------------------------------------------------------------+-----------------------------------+--------------+
| arn                                                                                | ssl_policy_name                   | cipher       |
+--------------------------------------------------------------------------------------------------------------------+-----------------------------------+--------------+
| arn:aws:elasticloadbalancing:us-east-1:123456789012:listener/app/turbottest13371/26a42642d673c40e/65c7adb8cb68d8f0 | ELBSecurityPolicy-TLS-1-0-2015-04 | DES-CBC3-SHA |
+--------------------------------------------------------------------------------------------------------------------+-----------------------------------+--------------+

@LalitTurbot Are we waiting on the example before merging?

@Subhajit97 How did we decide on the column title ssl_policy_detail? And does this column just contain the policy name, or full details about it? If it contains full details, would we do better to store the SSL policy details in another table and then join the information?


Field_by_name is deprecated in pyarrow 13

lance/dataset.py:216: FutureWarning: The 'field_by_name' method is deprecated, use 'field' instead

This is fixed in https://github.com/lancedb/lance/pull/1361

Are these changes reflected in setup.py and pyproject.toml? pip install lancedb still seems to be picking pylance==0.8.1, reproducing this error 😅

@prrao87 it should be updated with the latest lancedb release that went out early this morning.


UndefVarError: Float32Convert not defined

I updated to GeoMakie 0.7 and now my tests are failing:
CairoMakieExt: Error During Test at /home/sbozzolo/repos/ClimaAnalysis.jl/test/GeoMakieExt.jl:8
  Got exception outside of a @test
  UndefVarError: `Float32Convert` not defined
  Stacktrace:
    [1] axis_setup!(axis::GeoMakie.GeoAxis)
      @ GeoMakie ~/.julia/packages/GeoMakie/L2UOi/src/makie-axis.jl:22
    [2] initialize_block!(axis::GeoMakie.GeoAxis)
      @ GeoMakie ~/.julia/packages/GeoMakie/L2UOi/src/geoaxis.jl:532
    [3] _block(T::Type{GeoMakie.GeoAxis}, fig_or_scene::Makie.Figure, args::Vector{Any}, kwdict::Dict{Symbol, Any}, bbox::Nothing; kwdict_complete::Bool)
      @ Makie ~/.julia/packages/Makie/ND0gA/src/makielayout/blocks.jl:388
    [4] _block(T::Type{GeoMakie.GeoAxis}, fig_or_scene::Makie.Figure, args::Vector{Any}, kwdict::Dict{Symbol, Any}, bbox::Nothing)
      @ Makie ~/.julia/packages/Makie/ND0gA/src/makielayout/blocks.jl:308
    [5] _block(::Type{GeoMakie.GeoAxis}, ::Makie.Figure; bbox::Nothing, kwargs::@Kwargs{title::String})
      @ Makie ~/.julia/packages/Makie/ND0gA/src/makielayout/blocks.jl:276
    [6] _block(::Type{GeoMakie.GeoAxis}, ::GridLayoutBase.GridPosition; kwargs::@Kwargs{title::String})
      @ Makie ~/.julia/packages/Makie/ND0gA/src/makielayout/blocks.jl:270
    [7] _block
      @ ~/.julia/packages/Makie/ND0gA/src/makielayout/blocks.jl:263 [inlined]
    [8] #_#1346
      @ ~/.julia/packages/Makie/ND0gA/src/makielayout/blocks.jl:254 [inlined]
    [9] _geomakie_plot_on_globe!(place::Makie.Figure, var::ClimaAnalysis.OutputVar{Vector{Float64}, Base.ReshapedArray{Float64, 2, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}, Tuple{}}, String, Dict{String, String}, Interpolations.Extrapolation{Float64, 2, Interpolations.GriddedInterpolation{Float64, 2, Matrix{Float64}, Interpolations.Gridded{Interpolations.Linear{Interpolations.Throw{Interpolations.OnGrid}}}, Tuple{Vector{Float64}, Vector{Float64}}}, Interpolations.Gridded{Interpolations.Linear{Interpolations.Throw{Interpolations.OnGrid}}}, Interpolations.Throw{Nothing}}}; p_loc::Tuple{Int64, Int64}, plot_coastline::Bool, more_kwargs::Dict{Symbol, Dict}, plot_fn::typeof(MakieCore.surface!))
      @ GeoMakieExt ~/repos/ClimaAnalysis.jl/ext/GeoMakieExt.jl:53
   [10] _geomakie_plot_on_globe!
      @ ~/repos/ClimaAnalysis.jl/ext/GeoMakieExt.jl:13 [inlined]
   [11] #heatmap2D_on_globe!#2
      @ ~/repos/ClimaAnalysis.jl/ext/GeoMakieExt.jl:117 [inlined]

Here's my env:
Status `/tmp/jl_vI95rm/Project.toml`
  [4c88cf16] Aqua v0.8.7
  [13f3f980] CairoMakie v0.12.2
  [29b5916a] ClimaAnalysis v0.5.2 `~/repos/ClimaAnalysis.jl`
  [e30172f5] Documenter v1.4.1
  [db073c08] GeoMakie v0.7.0
  [a98d9a8b] Interpolations v0.15.1
  [98e50ef6] JuliaFormatter v1.0.56
  [85f8d34a] NCDatasets v0.14.4
  [bac558e1] OrderedCollections v1.6.3
  [1bc83da4] SafeTestsets v0.1.0
  [10745b16] Statistics v1.10.0
  [8dfed614] Test

The release notes mention something about Float32. Is something required to move to 0.7?

Nothing should be required, but thanks for letting me know.
What's the output of:
]st -m Makie

Status `/tmp/jl_DXeIYt/Manifest.toml`
⌅ [ee78f7c6] Makie v0.20.10
Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. To see why use `status --outdated -m`

Indeed, I have 0.20.10.
Shouldn't GeoMakie compats forbid from having incompatible versions of Makie?
This is my compat section:
[compat]
Aqua = "0.8"
CairoMakie = "0.11.11, 0.12"
Documenter = "1"
GeoMakie = "0.6.5, 0.7"
Interpolations = "0.14, 0.15"
JuliaFormatter = "1"
NCDatasets = "0.13.1, 0.14"
OrderedCollections = "1.3"
SafeTestsets = "0.1"
Statistics = "1"
Test = "1"
julia = "1.9"

Yes, I'm not sure why this the case.  I suspect the issue is that environments are being stacked somehow.
Try this compat section:
[compat]
Aqua = "0.8"
CairoMakie = "0.12"
Documenter = "1"
GeoMakie = "0.7"
Interpolations = "0.14, 0.15"
JuliaFormatter = "1"
NCDatasets = "0.13.1, 0.14"
OrderedCollections = "1.3"
SafeTestsets = "0.1"
Statistics = "1"
Test = "1"
julia = "1.9"

Yes, I'm not sure why this is the case. I suspect the issue is that environments are being stacked somehow.
Try this compat section:
[compat]
Aqua = "0.8"
CairoMakie = "0.12"
Documenter = "1"
GeoMakie = "0.7"
Interpolations = "0.14, 0.15"
JuliaFormatter = "1"
NCDatasets = "0.13.1, 0.14"
OrderedCollections = "1.3"
SafeTestsets = "0.1"
Statistics = "1"
Test = "1"
julia = "1.9"

and maybe run Pkg.resolve?

This works, and now that I looked at CI more carefully, I realized the reason it's failing is not the same as what I have locally.
It's possible that something is off with my environments locally, so I think we can close this issue.
Thank you very much for your very quick help!


Face Detection in Python Using a Webcam

Description
Write a basic script to detect faces in webcam using haar cascade.
Type of issue

[x] Feature (New Script)

Checklist:

[x] I have read the project guidelines.
[ ] I have checked all the existing projects, before submitting a new project issue.
[ ] I have checked previous issues to avoid duplicates.
[ ] This issue will be meaningful for the project.

I can take this one!

I want to work on this as well

I want to do this as well!

Assigning to @MitanshiKshatriya  because he/she created the issue!!

@Tomyzon1728  @brtymn  You guys can submit your approaches as well or you can submit an improved version after they submit.
Thanks.

@AdityaJ7 thanks! Sure I will start working on it and make a PR after Sunday only.


Run spectorgram but nothing happened

Hi there，
This is the first time I run pothosware in my win10.
I installed it with the PothosSDR-2016.10.03-vc14-x64.exe.
In SoapySDRUtil --find, I can find R820T tuner.
In Pothosware, I set a SDR source"driver, rtlsdr" and a spectrogram with samplerate at 2e6, but when I run it, anything happened. I can not see spectrogram.
Can u tell me why?
[15:23:05.163627] PothosGui.MainWindow: Welcome to Pothos v0.4.0-PothosSDR-2016.10.03-vc14-x64
[15:23:05.522866] PothosGui.GraphEditor: Loading C:/Users/Dexter/Desktop/untitled.pothos
[15:23:05.694980] PothosGui.MainWindow: Initialization complete
[15:23:06.588000] : Win32; Microsoft Visual C++ version 14.0; Boost_106100; UHD_003.010.000.HEAD-0-g6e1ac3fc
[15:23:07.039000] ::1: Found Rafael Micro R820T tuner
[15:23:07.666000] ::1: Found Rafael Micro R820T tuner
[15:23:07.840000] SoapySDR: Using format CF32.
[15:23:07.849000] ::1: Exact sample rate is: 2000000.052982 Hz
[15:23:07.930000] ::1: [R82XX] PLL not locked!
[15:23:08.027000] ::1: [R82XX] PLL not locked!

[15:23:07.039000] ::1: Found Rafael Micro R820T tuner
[15:23:07.666000] ::1: Found Rafael Micro R820T tuner
[15:23:07.840000] SoapySDR: Using format CF32.
[15:23:07.849000] ::1: Exact sample rate is: 2000000.052982 Hz
[15:23:07.930000] ::1: [R82XX] PLL not locked!
[15:23:08.027000] ::1: [R82XX] PLL not locked!

These errors might mean that the RTL has not been tuned. Is the center frequency set? Perhaps that is the issue. The only other thing that comes to mind is did you press the activate button for the topology?


Bucket region name correction for for us-east-1

First of all, thank you very much for creating this fork and updating it! It really moved my work forward.
It so happened that I have a bucket in us-east-1. For legacy reasons, AWS SDK's method getBucketLocation does not return us-east-1 when asking about bucket in that region, but the string US instead. That behaviour is confirmed by AWS employee and reflected in the latest source code. So, for consistency, I propose the following change to address this issue.
I also took liberty to add target/ folder to .gitignore since the project is built with Maven.

Pull Request Test Coverage Report for Build 32

0 of 2 (0.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.2%) to 90.765%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/main/java/com/github/platform/team/plugin/AmazonS3Wagon.java
0
2
0.0%

Totals

Change from base Build 27:
-0.2%

Covered Lines:
344

Relevant Lines:
379

💛  - Coveralls

👍


FR: Add Findbugs plugin

Consider adding as many of these that makes sense
https://www.javacodegeeks.com/2012/10/java-code-quality-tools-overview.html

https://gleclaire.github.io/findbugs-maven-plugin/ <== Talks about Findbugs no longer being maintained.
https://spotbugs.github.io/ is the recommended replacement.
Make that SpotBugs


Prepare migration plan for moving from the architecture based on the Provisioner to the Compass Manager

In the current architecture the Provisioner is responsible for registering Runtimes and preparing Config Map for Compass Runtime Agent. There is a need to prepare a detailed plan how to switch from the current architecture to the new one based on the Compass Manager.
Cover the following:

[ ] What will be the phases of migration?
[ ] Would there be a need to distinguish Kyma resources representing new and migrated Runtimes? Would KEB need to behave differently?
[ ] Consider whether we need to perform any steps in a maintenance window?

There are the following assumptions concerting the Compass Manager Operator:

it watches Kyma resource
it should start registration if Application Connector module is enabled
it should handle registration, and configuration secret creation as follows:

register runtime, and create configuration secret for CRA if the runtime was not registered previously
fetch one time token from Compass, and update secret if the runtime was  already registered

The open questions:

Where the Compass Runtime ID will be stored? In the first approach we planned to label Kyma resource, but it was agreed to not do so. Should there be some additional resource?
How we can verify whether Runtime was registered already? Mind that in trials scenario runtime may be removed and recreated at a later time.
How long one time token for runtime lives?
Is it possible to fetch one time token without runtimeID? Will subouccountID suffice?


STELLAR.EXPERT LOADING ISSUES

I have typed in my accounts followed by a *lobstr.co and no accounts are appearing. Stellar.Expert has stoppe working fo rme for two days.  No one else on the TG channel seems to be having an issued.  Suggestions?

@cressy123 It sounds like your query would be best dealt with by the support team.
Please see the link below to our dedicated support line:
Support :Help Center
Note: Click on the live chat icon at the bottom corner of the page to start a conversation


How to manage a redirect request in fetch

I am using fetch to communicate with the node server(Express). I am building a SPA. On each request to the server I am checking if the session is valid or not. If the session is not valid I am redirecting from node to a login page. The problem is that. If the session is getting invalidated(for eg: get/post request running in the background without a page refresh) the request is failing silently. It is not getting redirected.
I had the same issue for the ajax request also. What I had done is by checking the request is xhr and accept json. Then send a json response and handle the redirect in the frond end.
if (req.xhr && req.accepts('json')) {
  res.json({status:'session_timeout'});
}else{
  res.redirect('/login');
}

How can I do the same by using fetch. How do I handle redirect using fetch.

Hi @jetsonjohn. This is really a usage question and we can't really write your application for you. We don't know what all the intricacies of your authentication system need to be.
From your server-side code example, it seems that you're doing things right. All what's left is that whenever you make a fetch() request, you need to parse its JSON response and check for whether the status key is equal to "session_timeout", then perform the redirect to /login manually. Which our examples in the README for how to parse JSON from responses.


Fix changelog clustering typo

IMPORTANT: Please do not create a Pull Request without creating an issue first.
Before submitting (must do checklist)

[x] Did you read the contribution guide?
[ ] Did you update the docs? We use Numpy format for all the methods and classes.
[ ] Did you write any new necessary tests?
[x] Did you update the CHANGELOG?

Type of Change

[x] Examples / docs / tutorials / contributors update
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] Improvement (non-breaking change which improves an existing feature)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Proposed Changes

Related Issue
#136.
Closing issues
Closes #136.

Codecov Report

Merging #137 (4c87eeb) into master (d4b98a4) will decrease coverage by 1.08%.
The diff coverage is n/a.

:exclamation: Current head 4c87eeb differs from pull request most recent head d18357c. Consider uploading reports for the commit d18357c to get more accurate results

@@            Coverage Diff             @@
##           master     #137      +/-   ##
==========================================
- Coverage   88.06%   86.98%   -1.09%
==========================================
  Files          66       66
  Lines        2865     2865
==========================================
- Hits         2523     2492      -31
- Misses        342      373      +31

Impacted Files
Coverage Δ

etna/models/nn/deepar.py
73.91% <0.00%> (-26.09%)
:arrow_down:

etna/models/nn/tft.py
75.00% <0.00%> (-25.00%)
:arrow_down:

etna/transforms/pytorch_forecasting.py
92.20% <0.00%> (-7.80%)
:arrow_down:

etna/loggers/base.py
92.30% <0.00%> (-1.93%)
: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 d4b98a4...d18357c. Read the comment docs.