for emptyDir volumes, enforce ephemeral-storage definition

Checklist

[x] I have verified the policy does not exist in the samples library.

Is your policy request related to a problem? Please describe.
We are trying to enforce, that if any volume with emptyDir exists in POD (Deployment, ...) definition, each container using it must define requests.ephemeral-storage and limits.ephemeral-storage.
Describe the ideal solution you'd like
When any cronjob, daemonset, deployment, job, pod or statefulset defines volume of type emptyDir, containers using this volume must have in resources definition requests.ephemeral-storage and limits.ephemeral-storage present.
Additional context
Example pod with 3 containers, 2 using the emptyDir volume and defined ephemeral-storage requests and limits:
apiVersion: v1
kind: Pod
metadata:
 name: frontend
spec:
 containers:
 - name: jaeger-agent
   image: images.my-company.example/jaeger:v2
 - name: app
   image: images.my-company.example/app:v4
   resources:
     requests:
       ephemeral-storage: "2Gi"
     limits:
       ephemeral-storage: "4Gi"
   volumeMounts:
   - name: ephemeral
     mountPath: "/tmp"
 - name: log-aggregator
   image: images.my-company.example/log-aggregator:v6
   resources:
     requests:
       ephemeral-storage: "2Gi"
     limits:
       ephemeral-storage: "4Gi"
   volumeMounts:
   - name: ephemeral
     mountPath: "/tmp"
 volumes:
   - name: ephemeral
     emptyDir: {}

We're discussing how to tackle this policy in this discussion. Currently it seems like we may be blocked until there is an enhancement to the foreach logic.

Ok @rubroboletus after more time on this, I think I've solved it. Although, as mentioned in the above comment, we do have a limitation with foreach logic, I am able to work around it by combining containers[] and initContainers[] into the same array. Here is a policy which finally works (I am tested on latest-ish code but this should work for any of the 1.5 releases).
apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
  name: emptydir-requests-and-limits
  annotations:
    policies.kyverno.io/title: emptyDir has requests and limits
    policies.kyverno.io/category: Other
    policies.kyverno.io/severity: medium
    policies.kyverno.io/minversion: 1.5.0
    policies.kyverno.io/subject: Pod
    policies.kyverno.io/description: >-
      WIP
spec:
  background: false
  validationFailureAction: enforce
  rules:
  - name: emptydir
    match:
      resources:
        kinds:
        - Pod
    preconditions:
      all:
      - key: "{{ request.object.spec.volumes[?contains(keys(@), 'emptyDir')] | length(@) }}"
        operator: GreaterThanOrEquals
        value: 1
      - key: "{{request.operation}}"
        operator: In
        value:
        - CREATE
        - UPDATE
    validate:
      message: Containers mounting emptyDir volumes must specify requests and limits for ephemeral-storage.
      foreach:
      - list: "request.object.spec.volumes[?contains(keys(@), 'emptyDir')]"
        deny:
          conditions:
            any:
              # get the number of containers (based on name) which mount this emptyDir (by name)
            - key: "{{request.object.spec.[initContainers, containers][].volumeMounts[?name == '{{ element.name }}' ][].name | length(@) }}"
              operator: NotEquals
              # compare it to the number of containers (also mounting this same emptyDir vol by name) which have ephemeral-storage requests.
              # block if the two numbers aren't equal. If limits are specified but not requests, requests are automatically
              # set equal to the value of the limit. Therefore, this condition only works effectively if both requests and limits are not set.
              value: "{{request.object.spec.[initContainers, containers[?volumeMounts[?name == '{{element.name}}' ]]][].resources.requests.\"ephemeral-storage\" | length(@) }}"
            - key: "{{request.object.spec.[initContainers, containers][].volumeMounts[?name == '{{ element.name }}' ][].name | length(@) }}"
              operator: NotEquals
              # same as above but with limits
              value: "{{request.object.spec.[initContainers, containers[?volumeMounts[?name == '{{element.name}}' ]]][].resources.limits.\"ephemeral-storage\" | length(@) }}"

Test with this Pod:
apiVersion: v1
kind: Pod
metadata:
  name: frontend
spec:
  initContainers:
  - name: initapp
    image: images.my-company.example/app:v4
    resources:
      requests:
        ephemeral-storage: "2Gi"
      limits:
        ephemeral-storage: "4Gi"
    volumeMounts:
    - name: ephemeral
      mountPath: "/tmp"
  containers:
  - name: app
    image: images.my-company.example/app:v4
    resources:
      requests:
        ephemeral-storage: "2Gi"
      limits:
        ephemeral-storage: "4Gi"
    volumeMounts:
    - name: ephemeral
      mountPath: "/tmp"
  - name: log-aggregator
    image: images.my-company.example/log-aggregator:v6
    resources:
      requests:
        ephemeral-storage: "2Gi"
      limits:
        ephemeral-storage: "4Gi"
    volumeMounts:
    - name: ephemeral
      mountPath: "/tmp"
  volumes:
    - name: ephemeral
      emptyDir: {}

Comment out, for example, one of the limits for any container and see the Pod is blocked. Comment out both requests and limits and see the same thing. Note that in Kubernetes is you supply a limit but not a request, the request is automatically set to the same value as the limit.
$ k apply -f pod.yaml
Error from server: error when creating "pod.yaml": admission webhook "validate.kyverno.svc-fail" denied the request:

resource Pod/default/frontend was blocked due to the following policies

emptydir-requests-and-limits:
  emptydir: validation failed in foreach rule for Containers mounting emptyDir volumes
    must specify requests and limits for ephemeral-storage.

Try it out and let me know, please.

One known limitation I'll point out is with the CLI. The Kyverno CLI currently doesn't recognize JMESPath variables in the format request.object.spec.[initContainers, containers] and so testing right now won't be possible. We have an issue for that here.

Have you had time to evaluate this, @rubroboletus ?

Have you had time to evaluate this, @rubroboletus ?

not yet, will do it next week and let you know.

Bump

Final follow up


Support for configuration of jest

I want a git pre-commit hook that runs test on staged files before commits (similar to this)
This will require access to jest configs such as bail and findRelatedTests.
currently i am running this pre-commit
#!/bin/sh
PASS=true
echo "running tests"
CI=true npm test
if [[ "$?" == 0 ]]; then
    echo "\t\033[32mJest Tests Passed\033[0m"
else
    echo "\t\033[41mJest Tests Failed\033[0m"
    PASS=false
fi

but this results in every single test being run, which takes a long time. i want to effectively run
#!/bin/sh
STAGED_FILES=$(git diff --cached --name-only --diff-filter=ACM | grep "js$")
if [[ "$STAGED_FILES" = "" ]]; then
    exit 0
fi

PASS=true
echo "running tests"
jest --bail --findRelatedTests $STAGED_FILES
if [[ "$?" == 0 ]]; then
    echo "\t\033[32mJest Tests Passed\033[0m"
else
    echo "\t\033[41mJest Tests Failed\033[0m"
    PASS=false
fi

I believe allowing for this will encourage better practices and am willing to take a stab at it if the maintainers think that it would be useful.
(also open to other solutions that people might use to achieve the same functionality)

any plan to use https://github.com/okonet/lint-staged?
you can then implement what I suggested in
https://github.com/facebookincubator/create-react-app/issues/2336#issuecomment-303349467
"scripts": {
  "precommit": "lint-staged",
  "test:staged": "cross-env CI=true react-scripts test --env=jsdom --findRelatedTests"
}

then
"lint-staged": {
  "src/**/*.js": [
    "test:staged",
    "git add"
  ]
}

for the env variable, use cross-env.. it is cross platform
hope it helps!

@luftywiranda13 thanks for that it works like a charm. i read that issue but must have glazed over ur solution, my bad!
should this be documented? seems like something that people would want to use as their apps getting bigger.

Yes, would be great to document this.

@bowsplinter @gaearon ok, i'll make a PR 😊


DataDog is showing weird metric names (behaviour change)

Version: 4.2.0
Reporter used: App.Metrics.Datadog
.NET Core version used: netcoreapp3.1
Datadog dashboard is showing different metric names than it used to for Meter metric types. Before it was Akka.NET.akka.messages.recv.meter.value, and now it changes to Akka.NET.akka.messages.recv.meter.count.meter, breaking previously working DataDog dashboards.
Screenshot:

@Arkatufus this broke between 4.1 and 4.2 right?

No, it has always been broken on App.Metrics side, the reporting formatter is different compared to what DataDog agent uses

In essence, if you used a StatsD client to submit metrics to DataDog StatsD Agent, and then changed and use App.Metrics.Reporting.DataDog to submit metrics via DataDog HTTP client, all your old metrics and your dashboard will be hosed because the incompatible metrics formatting.

These code have to modified so that they reflect how DataDog StatsD Agent formats each metric types:
https://github.com/AppMetrics/AppMetrics/blob/features/4.2.0/src/Reporting/src/App.Metrics.Formatting.Datadog/DefaultDatadogMetricJsonWriter.cs#L35-L95


setup.py has dependencies on other ethereum hf projects

Dependencies are hardcoded on 2 other projects:
Ethash
Serpent
setup.py tries to download built tarballs of these projects -- we need

those projects to be imported into the Classic repo
CI set up

Looks like Classic Ethash already exists.  No sign there is any CI on the repo though

Serpent is now forked and building the develop on TravisCI
Ethereumproject/Serpent

this can be closed now, but we have a small dependency from a comment to the wiki:
# see: https://github.com/ethereumproject/pyethapp/wiki/Development:-Versions-and-Releases
Should we also form the wiki?

I believe a TravisCI system is being setup, if you need servers or domains coordinate with me in the IRC or by email.

We did some work while you were out -- hopefully nothing redundant was done.
We recently got bitNovosti to setup build.ethereumclassic.org, pointing at an AWS instance running TeamCity CI. Jetbrains gave us an Unlimited license for TeamCity gratis (along with 16 licenses for their other dev tools.  I have those for anyone who needs something like IDEA, PyCharm, or Webstorm)
EC2 Ubuntu Linux and Windows 2012R2 build agents are set up.  I bought a Mac Mini to act as an OSX agent, which will be co-located once it is set up in a week or so.

the Ethash and Serpent have been forked and the dependencies are resolved


add iIDM substation picture.

Signed-off-by: Anne Tilloy<EMAIL_ADDRESS>Please check if the PR fulfills these requirements (please use '[x]' to check the checkboxes, or submit the PR and then click the checkboxes)

[x] The commit message follows our guidelines
[ ] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

Does this PR already have an issue describing the problem ? If so, link to this issue using '#XXX' and skip the rest
No, I just add a picture to explain what is a substation in iIDM.
What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
What is the current behavior? (You can also link to an open issue here)
What is the new behavior (if this is a feature change)?
Does this PR introduce a breaking change or deprecate an API? If yes, check the following:

[ ] The Breaking Change or Deprecated label has been added
[ ] The migration guide has been updated in the github wiki (What changes might users need to make in their application due to this PR?)

Other information:
(if any of the questions/checkboxes don't apply, please delete them entirely)

Nice image. Just before it, I would add a simple sentence, something like:
"The following image shows the main elements of the iidm model"


[Features][Service] locator upgrades

Purpose

Clean up some of the init code and scaffolding structure, as well as what is provided by service locator

Does this introduce a breaking change?

[ ] Yes
[ ] No

Pull Request Type
What kind of change does this Pull Request introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Documentation content changes
[ ] Other... Please describe:

Pull Request Checklist

[ ] Public API changes
[ ] Verified for cross-platform
[ ] Synced with iOS, Web team
[ ] Internal review completed
[ ] UI Changes

[ ] Screen captures included
[ ] Tested for Light/Dark mode
[ ] Tested for screen rotation
[ ] Tested on Tablet and small screen device (5")
[ ] Include localization changes

[ ] Tests

[ ] Memory leak analysis performed
[ ] Tested on API 21, 26 and latest
[ ] Tested for background mode
[ ] Unit Tests Included
[ ] UI Automated Tests Included

How to Test

Open...
Click on...

What to Check
Verify that the following are valid

...

Other Information

@ahammer I think we can close this PR?


Hardware enhancement - indicator LEDs

I think the next revision of our board should have at least one LED that can be used to indicate any of the following:

Hardware is powered on
Hardware is linked to a device
Data received from device
Firmware updated successfully

We can use different blinking patterns for different indications.
An indicator LED would also be helpful as it draws a user's eye to the device to reduce the possibility that it's accidentally left behind somewhere.
@AaronPerl let me know your thoughts when you've got a chance

Alternatively we could go with a more expensive RGB LED and use different colors to indicate what 'mode' the hardware is currently in (i.e. keyboard, mouse, remote, gamepad, etc.).

I like the idea, though with an RGB LED I would prefer to use the different colors to indicate statuses (disconnected, connected but not in use, in use, etc.). We could even use a 2 in 1 red/green LED and use yellow for connected but not in use (such as http://www.digikey.com/product-detail/en/lite-on-inc/LTST-C155GEKT/160-1172-1-ND/269244).
Indicating a successful firmware update would be difficult due to us not being able to change the bootloader code, but we could probably do something with storing the firmware version in EEPROM and comparing it on startup to see if an update happened.

Yeah the on-successful-firmware-update indication isn't really necessary, just spitballing. Not worth the development time to implement what is a very minor feature.
Definitely like using different colors to indicate different statuses - the 2-in-1 red/green LED is nice, and not too expensive in the quantities we're looking at for our prototype boards.


enhancerefresh hms table before run mtmv task

There are some caches in the HMS catalog, which can result in the inability to maintain consistency with Hive side data even after a successful refresh of the materialized view.
In this PR, the cache of relevant HMS tables will be cleared before refreshing the materialized view to solve this problem

run buildall

run buildall

run buildall


Move the textfield cursor to next position after a mention selected.

@krishnakumarcn Thanks for the PR I will push a new version soon

@fayeed this issue is now coming on flutter web...can you help?

@fayeed this issue is now coming on flutter web...can you help?


Script to get file validation statuses as a list locally

Description
I would like to be able to obtain a list of all the file names and related file validation statuses from ingest given a submission uuid.
I have modified a script written by Enrique to do something similar, however my modifications allow me to list all the file names alongside their validation status, so that I can make use of this information locally.
To run at the command-line:
python get_file_states.py -s 47702cc7-5148-4a19-9025-73367b165ac8
The get_file_states.py script is inside this repo, in the "scripts" folder.
Currently, the script outputs the correct information but it is not outputting the expected number of file names. The number of file names is much lower than the actual number of files associated with the submission in ingest prod (https://contribute.data.humancellatlas.org/submissions/detail?uuid=47702cc7-5148-4a19-9025-73367b165ac8&project=6e177195-0ac0-468b-99a2-87de96dc9db4).
To do:

[x] Investigate why and obtain missing file names and their validation statuses with @ESapenaVentura

Closing this as have sorted this now. It was indeed the page number limit.


Fix typo in nginx_proxy_block_locations

The template incorrectly puts [ ] around the global value of nginx_proxy_block_locations which should already be a list.
Current deployments of this role with the default nginx_proxy_block_locations: []  will have the following in /etc/nginx/conf.d/proxy-default.conf (which interestingly does not seem to be a syntax error):
    location [] {
        return 404;
    }

After application of this fix those three lines will be removed.
If you set:
nginx_proxy_block_locations:
- "^~ /django_prometheus"

you should get something like:
    location ^~ /django_prometheus {
        return 404;
    }

re: the valid syntax, it's because [] are valid in a URL, cf https://stackoverflow.com/a/1547940/286218 and NGINX location definitions can start with a URL directly after the location, cf http://nginx.org/en/docs/http/ngx_http_core_module.html#location

After running this version immediately after running 1.4.0:
[root@localhost conf.d]# git diff proxy-default.conf
diff --git a/proxy-default.conf b/proxy-default.conf
index 61e4525..aabdb7e 100644
--- a/proxy-default.conf
+++ b/proxy-default.conf
@@ -26,9 +26,6 @@ server {
         root   /usr/share/nginx/html;
     }

-    location [] {
-        return 404;
-    }

So precisely as described.
Incidentally no obvious changes to the served content. (No doubt this wasn't being matched anyway, with no-one requesting [] in the browser.

and also:
  8     nginx_proxy_block_locations:
  7     - "^~ /django_prometheus"
  3     - "^~ /announcements"
  0     - "^~ /site"

generates:
    location ^~ /django_prometheus {
        return 404;
    }
    location ^~ /announcements {
        return 404;
    }
    location ^~ /site {
        return 404;
    }


[Existing API Name] : Food Receipe API

Brief Description 🤓
I would like to add the food receipe API where if the user Could search the food Receipe contents in the serch bar it will give the contents of receipe to make it .
Pls do add the GSSOC Label
Thanks in advance

This is the image for the Food Receipe website
Provide reference!
https://developer.edamam.com/edamam-recipe-api
Select the open source program you are contributing to
Other
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINES of this project.

Greetings @Aksshay88🎀 ! , We are excited to have you dive into another issue with us!🚀
Your involvement in our project has been invaluable, and we're confident that your skills and insights will help us conquer this challenge😇.  Use command /gssoc24 to self assign the issue.  This issue represents an exciting opportunity for us to improve and enhance our project, and we are thrilled to have you on board.
We request you to follow CONTRIBUTING GUIDELINES.
Looking for your PR soon!
In case of any issues, you can contact us on Discord.❣

/gssoc24


Added ECMWF MR spinup

Added ECMWF MR spinup

CI failed as branch merged before they'd completed. Master test left running.


chore(SprintOrg): Prepare for the upcoming Sprint

Task Description
To organise all Apeiro and Heureka sprint activities
Acceptance Criteria:

[ ] Apeiro Backlog: Review committed epics for sprint 11
[ ] Apeiro Backlog: Outline stakeholder-understandable epics planned for Sprint 12
[ ] Apeiro Backlog: Review Apeiro  commitments in the next Heureka Core Meeting on 13th Nov.
[ ] Apeiro Backlog: Update Apeiro project board - Next Apeiro Monthly backlog meeting takes place on 15th Nov.
[ ] Heureka Backlog: Review committed epics for sprint 11
[ ] Heureka Backlog: Outline epics for sprint 12

Sprint 11/24 Retrospective
Duration Oct 21  - Nov 17
Planned Epics

Implement Authentication
Conduct Design Sessions for the Implementation of OpenStack Compliance Scan
Implement Continuous Scans for the Scanners
Post-PoC Performance Improvements
Address initial feedback from Heureka PoC demo

Closed Epics:

Implement Authentication

Touched Epics:

Conduct Design Sessions for the Implementation of OpenStack Compliance Scan
Implement Continuous Scans for the Scanners
Post-PoC Performance Improvements
Address initial feedback from Heureka PoC demo

Untouched Epics

...

Sprint 12/24 Planning
Duration Nov 18 - Dec 15
Availability:

Rolled-over Epics – Touched Epics from 9/24

...

Moved Epics – Untouched Epics from 9/24

...

Planned Epics

December Workshop (Req for Remediation Management + 2025 Roadmap)


Add tooltip to icon_button

An icon button sometimes isn't very useful as the user might recognise what it is or does. So let's allow for a tooltip.
This is what it looks like:

Nice, though how does this work? Doesn't it need javascript?

Oh oops, I was pushing ahead without thinking... this requires Flowbite. 🤦

I guess we'll close this PR, perhaps when petal component adds tooltips we can revisit.

Actual, hang on... I can make it work without Flowbite... Will update this PR.

Updated. Now it works with just Tailwind (but also works with Flowbite if it's there). :)

Thanks, can you add a test to button_test.exs?

Test added.


Fix table columns alignment for numerals and dates

Resolves #1220
Description

I have added the CSS alignment for the class in the main CSS file, application.css.
And have referenced it in places where it suits. Wherever there's a table.
If I missed someplace or added it to somewhere you don't want, let me know.
Type of change

Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?
I ran the following testing measure
rubocop -a
bundle exec rspec

Screenshots

Nicely done, it looks great!
However, I don't think all the views were fixed. Please look at the "Views to Update" section of the issue (https://github.com/rubyforgood/diaper/issues/1220) and verify that all column headings and column value cells for all the pages listed have been updated. I noticed that donations#show (navigate to this by going to "All Donations", finding one with dollar values, and clicking its View button) is not, and in purchases#index, the column headings don't look like they are right aligned. There may be others as well.
Also, I will be adding purchases/show and items/show to the list in the issue, since they have numeric columns as well.

Also, I added a note to the issue...when you are in purchases#index, would you also please change "Amount spent" to "Amount Spent"?

An easy way to test that all views requiring the change have been changed is to look at each "All..." view on the left side menu, inspect them, and for each of those, click View on a record to see if it has numeric or date columns and if it has been fixed. There may not necessarily be numbers on the index page for this to be the case (Inventory Adjustments, for example).
The list of views to change in the issue description may not be complete. Please use the navigation method I mentioned above to verify that all views needing changing have been changed.

Alright, I'll do these changes and update the PR and ping you.

Alright, @armahillo, I'm making these changes right now

hi @keithrbennett, I went over the views you mentioned in #1220 and beyond that too, if I still missed any spot, let me know
hi @armahillo I loved your 2nd suggestion as it seemed cleaner
let me know if anything needs fixing, and the two "Merge" commits that you see in the PR is me keeping my branch up to date with the master here

I have a suggestion, that when we are summing up table numerals at the bottom row
Instead of doing this
5,085,974 (Total)
5,085,974 (This page)

we do this
(Total)     5,085,974
(This page) 5,085,974

I'll take a look at the new changes.
Regarding the "Total" caption, I agree with you that the current approach could be improved. I think the most correct way to handle that would be to remove "Total" from the number column and have 2 captions on the left to replace the one, saying:
Total, All Pages
Total, This Page
...because the captions would look odd before the numbers, too.

@keithrbennett makes sense, that would also require changing the tests too

I think the following pages have some issues:
http://localhost:3000/diaper_bank/requests - "Date" heading is left aligned
http://localhost:3000/diaper_bank/requests/15 - Fields are still left aligned
http://localhost:3000/diaper_bank/distributions - "Date of Distribution" heading is right aligned
http://localhost:3000/diaper_bank/distributions/20 - I think in this case, "Total" should be left aligned, because it is a row heading and not a column heading, and there may be other rows and row headings added in the future. Also, that final row appears to be missing a TD because the grey shading does not extend to the right margin. Also the package count column (both heading and data) should be right aligned.
http://localhost:3000/diaper_bank/donations/3 - Same comment re: total as above.
http://localhost:3000/diaper_bank/vendors - I think a phone number should be considered a string, and left justified.
I suggest adding to the "How Has This Been Tested" section something like: "Every page available via the navigation panel on the left side of the web page, and every page accessed via View buttons on those pages, have been visually inspected." (I apologize that this was not mentioned in the original issue.)

@keithrbennett I went over all the things you mentioned in the previous comment, went through all the views, if something is still left, let me know.

I think that's everything. It looks great, thank you!

Thanks for resolving all those issues! This is great!


Use criyle/go-judge as the runner

The actual sandboxed runner is criyle/go-sandbox. go-judge wraps it to expose a nifty API via REST or gRPC that I think can handle everything we need (it supports the interactive use case, too).
Code is not yet polished and lots cases (like compilation error) aren't handled yet.

LGTM! :D


cannot bosh ssh to compiling machines

In AWS, bosh helpfully tags compilation machines so you can see what they're compiling, eg compiling/bzip2_1.0.6
However, you can't then do bosh ssh  compiling/bzip2_1.0.6 --gateway_host micro.msackman.cf-app.com --gateway_user vcap
This is consistent with the output of bosh vms which also suggests these are not actually machine jobs/indices.
However, surely much of the point of not shutting down compilation machines after failure is so that you can ssh in and have a poke around to try and figure out what went wrong, if the logs are not enough for you. On that basis, it would be very useful if the bosh ssh command would work.

Closing. bosh ssh into compilation VMs was implemented earlier in the year.


Additional module not deployed

Hi,
I modified the vars file and set "true" on arm_exporter and metallbexporter but in the end it did not deploye.
Also when I change the IP in "suffixdomains" example <IP_ADDRESS>, after I deployed the IP is not changed and remains <IP_ADDRESS>.
I think it just ignores the changes to the vars.jsonnet file.

Check-out the readme.
You need to re-generate the manifests with make then make deploy after changing vars.jsonnet.

Check-out the readme.
You need to re-generate the manifests with make then make deploy after changing vars.jsonnet.
OMG perdona la mia stupidità.
Now works.
But what if I want to use SMTP Relay? If I put "true", I get error:
"RUNTIME ERROR: Field does not exist: smtpRelay
main.jsonnet:38:32-47	thunk from <$>
:1293:24-25	thunk from <function >
:1293:5-33	function
main.jsonnet:38:15-48	$

	builtin function <flatMap>

During evaluation

make: *** [manifests] Error 1"

Check-out the readme.
You need to re-generate the manifests with make then make deploy after changing vars.jsonnet.

OMG forgives my stupidity. Now works.
But what if I want to use SMTP Relay? If I put "true", I get error:
"RUNTIME ERROR: Field does not exist: smtpRelay
main.jsonnet:38:32-47	thunk from <$>
:1293:24-25	thunk from <function >
:1293:5-33	function
main.jsonnet:38:15-48	$
	builtin function <flatMap>

During evaluation

make: *** [manifests] Error 1"

Fixing it right now. Thanks for finding this out :)


Milestone 1: Morse decode

In this milestone, we achieved the following...

Created a method to decode a Morse code character.
Returned the corresponding character in uppercase.
Created a method to decode an entire word in Morse code.
We separated every character in a word by a single space.
We created a method to decode the entire message in Morse code.
We separated every character in a word by 3 spaces.

Thank you @GzimAsani  for pointing it out. It escaped our minds. We will update it now.

Thank you for reviewing and approving our code.

Thanks alot @Lizdev-05 for implement the required changes, Thanks @GzimAsani  for reviewing  and approving our project.


The ++ pattern is too greedy?

I was expecting the pattern Any++ * T(Bar) to match the sequence Foo Foo Foo Bar, just as the regular expression .*b matches aaab, but it seems like the Any++ matches all of Foo Foo Foo Bar, meaning the whole pattern fails to match (since there is no Bar after that sequence). I don't know if this is by design, nor what the consequences would be of making it more like the kleene star, but I thought I would bring it up for discussion.
My use case was for matching a Y inside an X, where the last child of Y is a Z (for reasonable values of X, Y, and Z):
In(X) * T(Y) << (Any++ * T(Z) * End)

If I didn't care about both the X and the Y I could just have T(Z) * End, but I now it's important that the Y is in an X and has the children specified. In this particular case I can do (!T(Z))++ * T(Z), but in general this might not be satisfactory.

So I would write that as
In(X) * T(Y) << ((!T(Z))++ * T(Z) * End)

The current implementation does not backtrack the | or ++ matching based on the continuation.  For some of the optimisations I applied, I actually carry the continuation around, so that could be possible to do.
There is another similar case:
((T(X) * T(Y)) | (T(X)) * T(Z)

This matches XYZ or XZ. But
((T(X) | (T(X) * T(Y))) * T(Z)

only matches XZ.

Are these optimisations of the Trieste code, or optimisations written in the client code?

Are these optimisations of the Trieste code, or optimisations written in the client code?

Trieste code optimisations.  Before a pattern like
T(A) * T(B) * T(C)
would result in for dynamic dispatch calls before it tries to see if there is a T(A). By CPS converting the pattern it becomes one, and the continuation is a dynamic dispatch as well.
E.g. here we set_continuation
https://github.com/microsoft/Trieste/blob/0b2ec3c5ea7bf52b0f6b2ed9e4f9d571aba47a8b/include/trieste/rewrite.h#L957
This could form the basis for the better backtracking, but would need care given the other optimisations.


[Service Bus] TypeError: Cannot read property '_process' of undefined

Following up for @azure/service-bus v7 package issues from https://github.com/Azure/azure-sdk-for-js/issues/9792#issuecomment-746480634 by @otociulis and @NoelAbrahams
Quoting @otociulis:
we're using "@azure/service-bus": "^7.0.0", (latest at the moment of writing) and we are running into same issue when running our microservice utilizing service bus in the Azure Cloud - usually this happens after longer periods of inactivity:
 /home/azure-user/render-service/node_modules/rhea/lib/connection.js:731
             this.local_channel_map[k]._process();
                                       ^
 TypeError: Cannot read property '_process' of undefined
     at Connection._process (/home/azure-user/render-service/node_modules/rhea/lib/connection.js:731:39)
     at processTicksAndRejections (internal/process/task_queues.js:79:11)

Typescript version: 4.0.5
Node.js version: 12.18.4
Rhea version (from package-lock.json): 1.0.24

@otociulis,
Can you share some details on how your microservice is utilizing Service Bus? Which methods of the ServiceBusClient are you using and how are you re-using the client across operations? You mentioned inactivity, was this for sending or receiving messages? Do you have any logs that can show what was happening with the client just before this error showed up?
@NoelAbrahams, same questions for you.
@chradek will pick this issue up on Monday (Feb 1) and may have more follow up questions.

@otociulis,
Can you share some details on how your microservice is utilizing Service Bus? Which methods of the ServiceBusClient are you using and how are you re-using the client across operations? You mentioned inactivity, was this for sending or receiving messages? Do you have any logs that can show what was happening with the client just before this error showed up?
@NoelAbrahams, same questions for you.
@chradek will pick this issue up on Monday (Feb 1) and may have more follow up questions.

@ramya-rao-a
This is all the stack we have at the moment.
Cannot read property '_process' of undefined
at Connection._process (E:\sitesroot\foo-bar\node_modules\rhea\lib\connection.js:731:39)

We use the service bus to implement push notifications. Basically, a new message is pushed onto a service bus topic and we have subscribers listening to the topic. When they receive a message, they dispatch it to the user's device. We use the recieveMode of 'receiveAndDelete'.
That's about it. But this error keeps getting logged periodically.

@NoelAbrahams
Can you share your package-lock.json or package.json? Can you tell if there are multiple versions of rhea installed in your project?
When you say this periodically occurs, is it after some sort of event like a temporary network issue, or is it every ~N minutes?
If possible, can you also enable logging with the following end variable setting and share the results?:
export DEBUG=azure*,rhea*,-rhea:raw,-rhea:message,-azure:core-amqp:datatransformer

Hi @ramya-rao-a ,
thanks for picking this up. We are using SB as a communication channel to push updates between Nest.js microservices - one of the microservice is running as AppService on Azure and other one is a separate Azure VM running on Ubuntu Linux in Standard NC6_Promo (6 vcpus, 56 GiB memory) instance. The VM is long-running (weeks of operation) and it consumes and replies back on SB for messages sent from AppService(s) which can come in days apart.
I'm using ServiceBusClient with DefaultAzureCredentials identity like this:
const identity = new DefaultAzureCredential();
this.serviceBusClient = new ServiceBusClient(namespace, identity);

this.receiver = this.serviceBusClient.createReceiver(
    source.topic,
    source.subscription,
);

if (destination) {
    this.sender = this.serviceBusClient.createSender(destination.topic);
}

this.receiver.subscribe(this, {
    autoCompleteMessages: false,
});

inside a class that implements MessageHandlers interface; I implemented processMessage that parses incoming message and either completes it or abandons:
try {
    // Do processing stuff and generate replies

    await Promise.all(
        outgoingMessages.map((m) => this.sender.sendMessages(m)),
    );

    await this.receiver.completeMessage(message);
} catch (ex) {
    await this.receiver.abandonMessage(message);
    throw ex;
}

I also have processError implemented that just writes the error message into logging system.
From what I see on my end is that everything works fine until it doesn't because of some kind of internal timeout - once I restart the service everything starts working again.
I have only this rhea version in package lock:
"rhea": {
  "version": "1.0.24",
  "resolved": "https://registry.npmjs.org/rhea/-/rhea-1.0.24.tgz",
  "integrity": "sha512-PEl62U2EhxCO5wMUZ2/bCBcXAVKN9AdMSNQOrp3+R5b77TEaOSiy16MQ0sIOmzj/iqsgIAgPs1mt3FYfu1vIXA==",
  "requires": {
    "debug": "0.8.0 - 3.5.0"
  }
},

@otociulis
Is it the VM service that runs for weeks that's seeing this issue, but not the AppService-based microservice? Do you know about how long it takes for you to see this error after you start your service? How long after the last message you received?
We've tried reproducing this issue in the past with no luck, but I'm wondering if a long period of inactivity is a key part of this.

We have upgraded to azure service bus sdk version to v7.0.3 two weeks back. We also have messageHandler and errorHandler in place where it logs error messages in case of any issues. Very often we see that the subscriber stops receiving messages and there are no error logs at the subscriber end. After restart, subscriber starts processing the messages. Its very sporadic and difficult to reproduce and debug as well.
We had faced this issue in previous versions and had raised an issue with Microsoft earlier. Please refer to GIT issue - https://github.com/Azure/azure-sdk-for-js/issues/9926#issue-652268637). Upon Microsoft suggestion we upgraded to v7.0.3.
After upgrade also we are still facing the same issue which has high impact on our end consumers.

@Sahana-Ramdurg This issue is specific to the TypeError: Cannot read property '_process' of undefined scenario which is not your case. Please log a support ticket in the Azure portal with information around the timestamp for when you see the subscriber stop receiving messages, so that they can also check the server side logs to see if we can learn something from there. Please ask for the Azure SDK team to be looped in at the earliest as per this comment. Also share a code snippet of how you are using the ServiceBusClient and whether you are using sessions or not

@ramya-rao-a  Thanks a lot for your reply. We have created support ticket -<PHONE_NUMBER>003217

Unfortunately I haven't been able to reproduce this issue. We're going to close this issue due to inactivity, but if someone encounters it again please open a new issue and if possible provide logs by setting the DEBUG environment variable to DEBUG=azure*,rhea*,-rhea:raw,-rhea:message,-azure:core-amqp:datatransformer

Reopening as we've finally been able to reproduce this issue in one of our testing environments and I was able to track down what is happening.
So, the error that occurs is TypeError: Cannot read property 'process' of undefined. This is being thrown from rhea's Connection.prototype._process method when iterating over the local session channels:
for (var k in this.local_channel_map) {
  this.local_channel_map[k]._process(); // <-- This is where the error is thrown
}

This looks like it should be completely safe at first glance. If we have 3 sessions on the connection, we'll iterate over them from the local_channel_map and call _process() on each one. If for some reason a session is deleted from this.local_channel_map, it isn't a big deal because the for..in is smart enough to skip deleted members.
However, there is also Connection.prototype.remove_all_sessions which we end up calling in our disconnected logic. It completely replaces this.local_channel_map:
Connection.prototype.remove_all_sessions = function() {
  this.remote_channel_map = {};
  this.local_channel_map = {}; // <-- Goodbye old object!
};

I did notice this when I investigated this error in the past and suspected the issue had to do with remove_all_sessions somehow, but couldn't figure out a code path where it actually would. This method would need to be invoked somehow while iterating over the local_channel_map inside the Connection.prototype._process method. This would lead to the error being thrown because the this.local_channel_map in the for statement would be a different object than this.local_channel_map in the for body. That didn't seem possible because rhea doesn't ever call remove_all_sessions, only we do in our SDKs in response to the disconnected event. I figured surely the disconnected event would need to wait for the for..in loop to complete before it could be emitted since that loop is synchronous and thus blocking.
Oh, but there's always a twist.
Just a quick reminder, this._local_channel_map contains Session objects. When _process is called on a session, that in turn calls _process on each of the session's links. If a link need to write something, such as a flow frame, rhea ends up calling transport.write on the connection, which takes any pending frames that need to be written and sends them over the socket.
This is where things get interesting. If the socket was already closed for some reason, we get a writeAfterEnd error, which the rhea connection immediately handles and emits the disconnected event. Note that this event is emited synchronously, so the call stack still shows this is all triggered from that session._process that was invoked. Finally, our SDK's disconnected event handler removes all the sessions not by deleting them individually (which would be safe), but by replacing the local_channel_map object via remove_all_sessions.
In our test that is failing, we're calling connection.idle, which will cause the socket to end. I suspect that the users who see this would also have encountered the idle timeout at just the right moment for this sequence of events to occur, but really anything that causes the socket to be put in a closed state at the right time could lead to this.
So, how do we fix it?
The most straightforward way would be by updating rhea. There are 2 options:

Update remove_all_sessions so that it deletes all the keys in the channel maps explicitly rather than overwriting the maps with new empty objects.
Update _process to hold a reference to this._local_channel_map and use the same reference in both the for..in statement and the body of the for loop.

My vote would actually be to do both for total safety. The 1 issue we're going to run into is rhea has had a major version bump, so we'll either need to hotfix rhea 1.x, or absorb the breaking change present in rhea 2.x.


update csv for fips-compliant

recent pull request put it in different place
this patch was generated with make bundle

/hold for https://github.com/openstack-k8s-operators/placement-operator/pull/206

Fixed this in #206 along with a check that will prevent it to happen again.


Builder: append gftools version number to font's unique font id name record, fixes issue #380

Not yet working, but I'm starting with a draft PR if anyone wants to give feedback. Should fix issue #380 when done.

I don't think the TrueType Unique ID is the right place for these sort of things. That one is fairly standard and always includes the font name, its version and the vendor. These three price of info are sufficient to uniquely identify fonts. Extra pieces of info like the tooling versions don't belong there. If a different version of gftools made a difference, then the font version would have been bumped as well, which would be reflected in the TT unique ID.
Makeotf traditionally appended its own version at the end of name id 5 (the version string).
Some vendors also use the nameID 10 (description) for this sort of things.
In a similar fontmake issue, people have proposed to use the meta table which allows to define private tags that can contain any string.

If a different version of gftools made a difference, then the font version would have been bumped as well, which would be reflected in the TT unique ID.

This may not be the case. Users often don't have the latest version of gftools installed or they may hand the work over to another designer who is using a newer or older version.
I agree that the uniqueID may not be the correct record for this info though.

If we're not going to make a meta table with our own private tag. Appending the info to the version record (nameID 5) is better imo.

Thank you both! I will try to update this soon, looking at the open type spec it seems like either will work.
Name ID 5:

Version string. Should begin with the syntax “Version .” (upper case, lower case, or mixed, with a space between “Version” and the number)... A character such as “;” is helpful to separate different pieces of version information.

Name ID 10:

Description; description of the typeface. Can contain revision information, usage recommendations, history, features, etc.

At this point gftools builder is not putting anything in Name ID 10, and I get this in Name ID 5:
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
    Version 1.003; ttfautohint (v1.8.3)
</namerecord>

So I'll try to update this PR to get this, unless anyone thinks Name ID 10 would be better:
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
    Version 1.003; ttfautohint (v1.8.3); gftools (v0.7.3)
</namerecord>

Closing since we have a better implementation in #780


[Bug] [db] Database upgrade from version 2.0.5 to 3.0.0b1 error

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened
upgrade dolphinschelduler version from 2.0.5 to 3.0.0-beta-1 will cause error, according to the upgrade doc https://dolphinscheduler.apache.org/en-us/docs/latest/user_doc/guide/upgrade.html
What you expected to happen
ATT
How to reproduce
install version 2.0.5 and them upgrade to 3.0.0-beta-1
Anything else
No response
Version
3.0.0-beta-1
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

This task need a lot of work, I think it can be provided in the official version of 3.0.

I do not think so, if our upgrade script can not upgrade from 2.0.5 to 3.0.0-bate-2, we will lose some of the users who interesting in version 3.0 but still use 2.0.5

close by https://github.com/apache/dolphinscheduler/commit/dd34a1da67f8fbbb89bedde655f6257a3b523050 and https://github.com/apache/dolphinscheduler/commit/3915c4f40a1e533645483dbf51e9ffbb0c460d46


[DATAFU-148] Spark Support

Creating this PR to consolidate all the realted changes to first version that supports Spark.
DATAFU-148

Copy of comments from Jira:
In SparkDFUtils.scala:

dedup2 could use some additional description to differentiate it from dedup.
flatten is missing documentation
for broadcastJoinSkewed, the description of the numberCustsToBroadcast field isn't clear to me
joinWithRange could use some more documentation. For example, the fields are not all documented. It's not immediately obvious to me what DECREASE_FACTOR does and why it should have a default value of 2^8.
Also, joinWithRange seems characteristically different from the other in this file, as it's a bit more use-case specific. Maybe later it would make sense to move this to a separate file.

@matthayes , @eyala - I've fixed according to your comments.

re-opening after adding ScalaPythonBridge functionallity

Merged the commit from Feb 18th


ValueError: RedisCache only supports caching of normal LLM generations, got <class 'langchain.schema.ChatGeneration'>

System Info
Python 3.10, Langchain > v0.0.212
Who can help?
No response
Information

[ ] The official example notebooks/scripts
[ ] My own modified scripts

Related Components

[X] LLMs/Chat Models
[ ] Embedding Models
[ ] Prompts / Prompt Templates / Prompt Selectors
[ ] Output Parsers
[ ] Document Loaders
[ ] Vector Stores / Retrievers
[ ] Memory
[ ] Agents / Agent Executors
[ ] Tools / Toolkits
[ ] Chains
[ ] Callbacks/Tracing
[ ] Async

Reproduction
Enable caching with langchain.llm_cache = RedisCache
Expected behavior
This works with version <= v0.0.212

Closing. Issue has been fixed by https://github.com/hwchase17/langchain/pull/6746


Feature: implement Orbita chatbot

Orbita chatbot is (nearly) ready to be implemented. Waiting on a whitelisted domain.
Here are the installation docs.
Installation-OrbitaENGAGE-COVID-19[1].docx

marketing information included here with *screenshots @kbakeann @thedanmarino :
Orbita COVID-19 Response Overview.pdf

@kbakeann images as requested, its from the attached pdf


Scraping OKpy server stuff from the homework materials

Right now we have a lot of homework materials / labs that require OKpy authentication and submission. What's the best path forward for scraping this away from the notebooks so that others can interact with them. Two main ideas I had:

Write a helper script that clones the homework/lab repos and automatically scrapes out the server-specific stuff, then places the repo in the user's current directory.
Publish a "public-facing" version of the homeworks/labs.
Provide a "request access to the homeworks" form and then we grant people private access so they can clone w/o the answers being public. Combine this with #1

Any other ideas on how this could be handled? @henchc you mentioned this before, so curious as to your thoughts

I think option 1 shouldn't be too hard. if you take hw1 as an example, you can remove the _ = ok.auth(inline=True) line and all .submit lines. When you run _ = ok.grade('q2') you can still see if you got the answer correct because the answers are all local at this point.
this would allow one to complete the entire course and get it graded, but it wouldn't track it in a database like the OKpy servers (which I don't think we could expect to support).
am i missing something?

and as for #3 isn't it all public already?

cool, we can shoot for 1 and good point re: number 3

ok this should be fixed by https://github.com/choldgraf/dsep_stack/blob/master/z2d8/scripts/remove_okpy_from_data8.py


Error! MEdia Player Error Unknown(1) -2147483648

I am using this but it give error please help me.

got same error ,please help!
Error! Media Player Error: Unknown (1) -2147483648
wav file stream

Only see this error on HTC Desire x.

Closing, reopen if still an issue.

still an error, please reopen

I am facing the same issue.


Calibre doesn't run

Describe the bug
Just after install, running calibre ends with SIGABRT.
Steps To Reproduce

nix-env -i calibre
calibre

Expected behavior
Calibre should run.
Screenshots
[pierre@viper:~]$ nix-shell -p calibre --run calibre
qt.glx: qglx_findConfig: Failed to finding matching FBConfig for QSurfaceFormat(version 2.0, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize -1, redBufferSize 1, greenBufferSize 1, blueBufferSize 1, alphaBufferSize -1, stencilBufferSize -1, samples -1, swapBehavior QSurfaceFormat::SingleBuffer, swapInterval 1, colorSpace QSurfaceFormat::DefaultColorSpace, profile  QSurfaceFormat::NoProfile)
qt.glx: qglx_findConfig: Failed to finding matching FBConfig for QSurfaceFormat(version 2.0, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize -1, redBufferSize 1, greenBufferSize 1, blueBufferSize 1, alphaBufferSize -1, stencilBufferSize -1, samples -1, swapBehavior QSurfaceFormat::SingleBuffer, swapInterval 1, colorSpace QSurfaceFormat::DefaultColorSpace, profile  QSurfaceFormat::NoProfile)
Could not initialize GLX
/tmp/nix-shell-2060922-0/rc: line 1: 2060941 Aborted                 calibre

Notify maintainers
@pSub @AndersonTorres
Metadata
[pierre@viper:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 5.10.0-7-amd64, Debian GNU/Linux, 11 (bullseye)`
 - multi-user?: `no`
 - sandbox: `no`
 - version: `nix-env (Nix) 2.3.12`
 - channels(pierre): `"nixpkgs-21.11pre293448.2a1c29ef4ba"`
 - nixpkgs: `/home/pierre/.nix-defexpr/channels/nixpkgs`

This is a duplicate of  #9415
A common workaround is to use https://github.com/guibou/nixGL

Isn't a bug that this package's default state is to not run? Why not make GL-depending packages use nixGL by default?

Isn't a bug that this package's default state is to not run? Why not make GL-depending packages use nixGL by default?

Yes, it's a bug. My guess is that the problems would be that nixGL is inherently impure, or that adding it to every OpenGL package might require adding every possible driver into the closure.

Would it be a problem to include all drivers in the closure, and leave the choice at run time?

@AndersonTorres why close the bug? It's stale but the problem persists. calibre will run fine with the help of nixGL but not without, and there's no warning, documentation or helper script for that.

I believed it was already closed.

@patka-123 sorry for the late reply, but it's still true for me with /nix/store/glic4pdqdl2rs4xirc1j406hyd16mcfz-calibre-7.1.0:
$ nix-shell -p calibre --run calibre
qt.glx: qglx_findConfig: Failed to finding matching FBConfig for QSurfaceFormat(version 2.0, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize -1, redBufferSize 1, greenBufferSize 1, blueBufferSize 1, alphaBufferSize -1, stencilBufferSize -1, samples -1, swapBehavior QSurfaceFormat::SingleBuffer, swapInterval 1, colorSpace QColorSpace(), profile  QSurfaceFormat::NoProfile)
qt.glx: qglx_findConfig: Failed to finding matching FBConfig for QSurfaceFormat(version 2.0, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize -1, redBufferSize 1, greenBufferSize 1, blueBufferSize 1, alphaBufferSize -1, stencilBufferSize -1, samples -1, swapBehavior QSurfaceFormat::SingleBuffer, swapInterval 1, colorSpace QColorSpace(), profile  QSurfaceFormat::NoProfile)
Could not initialize GLX
/tmp/nix-shell-3617183-0/rc : ligne 3 : 3621404 Aborted                 (core dumped)calibre

(but it works great with nixGL)


Don't add the same method twice to an unsolved class

Fixes #185

Given that this PR is about recognizing different expressions that belongs to the same method, maybe it is more efficient to rewrite the equal method in UnsolvedMethod instead? That way we can reuse the codes for other contexts.

I considered this idea, but decided against it because UnsolvedMethod doesn't know the fully-qualified name of the class that the method belongs to.

I considered this idea, but decided against it because UnsolvedMethod doesn't know the fully-qualified name of the class that the method belongs to.

I see. Thank you.


nsh:support $! get last pid use nsh run

Summary
nsh:support $! get last pid use nsh run
Impact
nsh
Testing
sim nsh
test:
    nsh> hello &
    hello [4:100]
    nsh> Hello, World!!

    nsh> echo $!
    4
    nsh> echo $!
    3
    nsh> ps
      PID GROUP PRI POLICY   TYPE    NPX STATE    EVENT     SIGMASK           STACK COMMAND
        0     0   0 FIFO     Kthread   - Ready<PHONE_NUMBER>000000 0069616 Idle_Task
        1     1 224 FIFO     Kthread   - Waiting  Signal<PHONE_NUMBER>000000 0067536 loop_task
        2     2 224 FIFO     Kthread   - Waiting  Semaphore<PHONE_NUMBER>000000 0067504 hpwork 0x45ae80 0x45aea8
        3     3 100 FIFO     Task      - Running<PHONE_NUMBER>000000 0067536 nsh_main
    nsh>

[Experimental Bot, please feedback here]
No, this PR does not meet the NuttX requirements. Here's why and how to improve it:
Missing Information

Summary:

Why is this change necessary?  Is there a bug with the existing $! behavior? Does it not work at all? Or are you adding a new feature?
What code is being changed? Be specific. Mention the files and functions modified.
How does the change work? Provide a technical explanation of your solution.

Impact:

Most "Impact" sections are marked as "nsh." While technically correct, it's not informative. Consider these points:

Is new feature added?  If this is entirely new functionality, state that explicitly.
Impact on user:  Will users need to change their scripts or commands? If so, how?
Impact on documentation: Does this change require updates to the NuttX documentation?

Testing:

Build Host(s):  List the operating system, CPU architecture, and compiler you used for testing.
Target(s):  Specify the simulator or hardware architecture and board configuration used.
Testing logs before change:  The logs currently show the behavior after the change. Include logs demonstrating the problem before your modification.

Improving the PR

Expand the Summary: Provide a clear and concise explanation of the problem, your solution, and the code affected.

Detail the Impact: Explain any user-facing changes, potential compatibility issues, and the need for documentation updates.

Complete the Testing section: Include information about your build host and target environment, and demonstrate the issue being fixed by providing both "before" and "after" logs.

By addressing these points, you'll make your PR much easier for reviewers to understand and accept.


Add version: OpenRA.OpenRA version playtest-20221126

Result: Installation Failed

Manifest
Add/Remove Programs

Name
OpenRA
Shotcut

Version
playtest-20221126
22.11.25

Publisher
OpenRA developers
Meltytech, LLC

ProductCode

Shotcut

Auto-updated by vedantmgoyal2009/winget-pkgs-automation in workflow run 4158
Microsoft Reviewers: Open in CodeFlow

This version of the application isn't available for download from the provided URL anymore, nor is it available on the devleoper's GitHub releases page.

This version of the application isn't available for download from the provided URL anymore, nor is it available on the devleoper's GitHub releases page.

Yep. Looks like the version got withdrawn by the publisher.

The automation has updated this pull request with Google Chrome Beta, so I will proceed with that.


Add note to README about rubocop linter, remove node_modules from it

addresses https://github.com/studentinsights/studentinsights/issues/1092
Who is this PR for?
developers
What problem does this PR fix?
don't run rubocop on node_modules, and add a note for adding Rubocop linting in Sublime

selfie


can't close search box by clicking top bar

steps: click search button, click top bar (above column headers). search box does not close.

it should also close when clicking the search button a second time instead of flashing closed and reopening


test: login more directly

@raisedadead I was going to comment out the tests that were failing, but I realised it was always cy.login() that failed. That's used in an awful lot of the tests, so I tried re-writing it.
I'm not keen on turning off the tests right now, not while we're making so many big changes.

No worries, while you are here can you update the workflow jobs to not "fail-fast"? See: https://docs.github.com/en/actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idstrategyfail-fast

Sure, did you want that for all the strategies?  If it was just Cypress, let me know and I'll revert the others.

Sure, did you want that for all the strategies?

Not really, but now that you have added it - I think it's fine.

@raisedadead I've finally squashed all the bugs. Hopefully this will make a difference.

I've finally squashed all the bugs. Hopefully this will make a difference.

If this works, you know I owe you a few 🍻 !

I'll take you up on that!


Publishing Timeouts (Again)

As I was updating the "Task" section of each of my Kata Descriptions for all of the Kata in the PHP Kata Series I have authored, I noticed that the publishing started to timeout again:

I presumed this was because the Stats pages were being refreshed.  But when I checked my profile page, the page said nothing about when stats were being refreshed:

So are the background processes failing again?

Yes, looks like there were some more queue processing dropouts. The stats refresh shouldn't have anything to do with publishing (unless somehow stats refreshing is bringing down the queue processor, which I don't think is the case).
I'll continue to monitor the servers to try to identify what happened. Closing this for now.


31 integrate with blafkingsd civitai browser plus

Creates framework for querying tags from civitai to append to tag files.

Among getting tags from civitai, this pr implements a test file management interface a critically moves all constants to the “globals.py” file to avoid future circular imports and define a standard for where these glovally used constants should be defined.

Caught another issue after requesting those changes.
Any file paths that include dots in the file name (e.g. sd_xl_offset_example-lora_1.0.safetensors) will result in your code not recognizing it as a file.
SD Lora Tagger: No such file F:\AI\Models\LoRAs\XL\L_XL_sd_xl_offset_example-lora_1.0.safetensors
SD Lora Tagger: No such file F:\AI\Models\LoRAs\XL\sd_xl_offset_example-lora_1.0.safetensors

Yeah, that due to the use of splitext(), i can make a quick function to trim the last period not the first

I'm still working on getting the row tags to match what's in the tag files because the tag files are having the filename + extension written to them as the initial tag while they should only have the file name (and no extension) but the rows only have the file name (no extension) so I need to investigate why this is occurring because wile there's a mismatch you cannot search by tag


Width is calculated to be far too big if the file contains a large line.

This occurs for me for both merge view and regular codemirror views.
Working with a diff with regularly sized lines of code:

However, when you change to viewing a file which has longer lines of code in it, the codemirror div expands to try and fit the largest line of code in the file:

You can stretch it across two monitors to view the scroll bar again:

And then scroll down to find the lines causing the issue (even though if they're large enough it still can't fit them in view):

To show you the DOM layout, I've screen captured a few different elements across two screens:
Firstly, the "root" element for this structure, which has the correct (bounding) width.

When I replace the CM div with just a 100%width/height coloured div, it works exactly as intended.
The distortion of size only occurs once CM has loaded and parsed the file.
Secondly, the wrapper element for the codemirror div and a few other pieces, which have no width property set.

Thirdly the div which I give to codemirror to do the editing, which you can see has the width that the wrapper element has (i.e. showing that codemirror is setting the width for the parent)

Finally one of the divs that codemirror itself creates:

(and just to show that it happens with non-merge view as well):

I could be setting up my css wrong for this width malarkey, so I'm happy to try out any suggestions.
(Also, you can see that I can't get vertical resizing of the merge view working correctly. I'd appreciate any help in this area as well).
In fact, I can't get vertical resizing for views to properly respect the parent divs maxHeight either, which might be related:
        // Where codeOptions has viewportMargin: Infinity
        var codeView = CodeMirror(codeDiv, codeOptions);

        codeDiv.style.maxHeight = "100vh";
        codeView.setSize(null, "auto");

Is the editor, by any chance, directly in a flexbox container? If so, adding another intermediate <div> around it might help with this.

Unfortunately no, there's no flex directly involved.
Based on your suggestions, I've tried adding a div wrapper, as well as setting that div (and even the  parent) to display:block/table-layout:fixed. Still no luck :(

Could this be because it's in a table?

Got it working by setting the parent's parent's div container's width directly (and not relying on flex-xxx, especially flex-basis)


pythonPackages.pycurl: Fix darwin build

Motivation for this change
18.03 ZHF darwin edition: #36454 (Please backport to 18.03!)
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[x] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg build pythonPackages.pycurl

Success on x86_64-darwin (full log)
Attempted: pythonPackages.pycurl
Partial log (click to expand)
tests/write_to_stringio_test.py .s                                       [100%]

=============================== warnings summary ===============================
tests/setopt_lifecycle_test.py::TestString
  cannot collect test class 'TestString' because it has a __new__ constructor

-- Docs: http://doc.pytest.org/en/latest/warnings.html
============================== 2 tests deselected ==============================
======= 184 passed, 7 skipped, 2 deselected, 1 warnings in 13.89 seconds =======
/nix/store/sc2zaygahgfm520d5w98i4drndib87c3-python2.7-pycurl-<IP_ADDRESS>

Success on x86_64-linux (full log)
Attempted: pythonPackages.pycurl
Partial log (click to expand)
tests/write_to_stringio_test.py .s                                       [100%]

=============================== warnings summary ===============================
tests/setopt_lifecycle_test.py::TestString
  cannot collect test class 'TestString' because it has a __new__ constructor

-- Docs: http://doc.pytest.org/en/latest/warnings.html
============================== 2 tests deselected ==============================
======= 184 passed, 7 skipped, 2 deselected, 1 warnings in 16.43 seconds =======
/nix/store/y11k7vhh53afz09l5909rcadsrm7nxw9-python2.7-pycurl-<IP_ADDRESS>

Success on aarch64-linux (full log)
Attempted: pythonPackages.pycurl
Partial log (click to expand)
tests/write_to_stringio_test.py .s                                       [100%]

=============================== warnings summary ===============================
tests/setopt_lifecycle_test.py::TestString
  cannot collect test class 'TestString' because it has a __new__ constructor

-- Docs: http://doc.pytest.org/en/latest/warnings.html
============================== 2 tests deselected ==============================
======= 184 passed, 7 skipped, 2 deselected, 1 warnings in 42.06 seconds =======
/nix/store/f3wamir0aav8ifziz4ghmpqlpwi6970i-python2.7-pycurl-<IP_ADDRESS>

@GrahamcOfBorg build python3.pkgs.pycurl

Success on x86_64-linux (full log)
Attempted: python3.pkgs.pycurl
Partial log (click to expand)
/nix/store/9ck0p6rjqbl73i76g9rb7yrjp62zbdz6-python3.6-pycurl-<IP_ADDRESS>

Failure on aarch64-linux (full log)
Attempted: python3.pkgs.pycurl
Partial log (click to expand)
=============================== warnings summary ===============================
tests/setopt_lifecycle_test.py::TestString
  cannot collect test class 'TestString' because it has a __new__ constructor

-- Docs: http://doc.pytest.org/en/latest/warnings.html
============================== 6 tests deselected ==============================
== 8 failed, 334 passed, 5 skipped, 6 deselected, 1 warnings in 59.75 seconds ==
part1part2
builder for '/nix/store/y3vh4crcy7mkrs347cg4vvw7jfwa5amn-python3.6-pycurl-<IP_ADDRESS>.drv' failed with exit code 1
error: build of '/nix/store/y3vh4crcy7mkrs347cg4vvw7jfwa5amn-python3.6-pycurl-<IP_ADDRESS>.drv' failed

There seems to be a problem with Python 3.

Oh. Will look into solving this ASAP

@GrahamcOfBorg build python2.pkgs.pycurl

Success on x86_64-linux (full log)
Attempted: python2.pkgs.pycurl
Partial log (click to expand)
/nix/store/lkc8lvs2dmxkwxqmhmaadwi2ad82a5n2-python2.7-pycurl-<IP_ADDRESS>

Failure on aarch64-linux (full log)
Attempted: python2.pkgs.pycurl
Partial log (click to expand)
Using /build/pycurl-<IP_ADDRESS>/tests/fake-curl/curl-config-empty ()
=============================== warnings summary ===============================
tests/setopt_lifecycle_test.py::TestString
  cannot collect test class 'TestString' because it has a __new__ constructor

-- Docs: http://doc.pytest.org/en/latest/warnings.html
============================== 6 tests deselected ==============================
== 4 failed, 339 passed, 7 skipped, 6 deselected, 1 warnings in 67.78 seconds ==
builder for '/nix/store/fnh74x3xp3znp2ck2hxr1lwihynmzw12-python2.7-pycurl-<IP_ADDRESS>.drv' failed with exit code 1
error: build of '/nix/store/fnh74x3xp3znp2ck2hxr1lwihynmzw12-python2.7-pycurl-<IP_ADDRESS>.drv' failed

That's strange: Before, it was
======= 184 passed, 7 skipped, 2 deselected, 1 warnings in 42.06 seconds =======

Now we get
== 4 failed, 339 passed, 7 skipped, 6 deselected, 1 warnings in 67.78 seconds ==

Where are the additional tests coming from?
So, it's not a problem with Python 3.

Yup. checkPhase doesn't succeed with python3. Let's just disable failing tests for now.


(NEW-MATHOD) Amazon Gift Card Codes Generator Unlimited Free 2023 $100 NEW Tools

Description
1minute ago — Amazon Gift Card Generator 2023 No Human Verification bears an exceptional amazon gift card code this code is a 14 character long alphanumeric code contains both alphabet and numbers when initiated the sum will be added to your amazonpay wallet in spite of the fact that it can t be moved or reclaimed for cash you can surely involve it for all
CLICK HERE TO GET FREE NOW
CLICK HERE TO GET FREE NOW
orders and installments made on amazon you can utilize these amazon present voucher cards present boxes welcoming cards and other simple present plans to send presents on each event like
commemeggustions birthday celebrations weddings celebrations and that s just the beginning to add an amazon gift voucher code you really want to go to the amazonpay segment of the amazon application on
the amazonpay landing page you look down and you ll see a choice to add an e gift voucher there just sort or duplicate the code from our site and afterward tap on add gift card amazon e gift card codes
will use for amazon pay balance and are valid for up to 12 months at the time of redeeming the amazon pay balance can t be redeemed to a bank account you can only use that balance to get a discount on any item purchased through the amazon app or website twitch gift card code generator
Steam gift card code generator etsy gift card code generator shein gift card code generator feedback list of unused amazon gift card codes 2023 amazon gift card generator no human verification free gift card codes 2023 free amazon gift card codes list free 500 amazon gift card generator 100
amazon gift card generator 2023 list of unused amazon gift card codes 2023 free 200 amazon gift card code amazon gift card tricks amazon gift card free codes amazon gift cards are plastic with a built in microchip loaded with an amount of money that is normally not very high to make purchases or payments defined by the national commission for the protection and defence of megguss
bears an exceptional amazon gift card code this code is a 14 character long alphanumeric code contains both alphabet and numbers when initiated the sum will be added to your amazonpay wallet in spite of the fact that it can t be moved or reclaimed for cash you can surely involve it for all
orders and installments made on amazon you can utilize these amazon present voucher cards present boxes welcoming cards and other simple present plans to send presents on each event like FREE!!*


feat: add support for exception thrown in async method

Fix #42

@SamVerschueren thanks for taking a look. Fixed.

@SamVerschueren let me know if you find something else.

I checked everything again. It looks good to me! The only small remark I have is that it might be a good idea of we rewrote this block the same way as what we have with the async advices in this PR.
Great work @mgechev!


Upgrade flink-connector-timestream and sample appto Flink 1.15.3

Description of changes:

Delete the backported Async Sink code
Upgrade flink-connector-timestream to Flink 1.15
Update the sample app to Flink 1.15

This has been tested by running the sample app and data generator as per README. I observed data arriving in Timestream.
Note, I have not updated:

THIRD-PARTY-LICENSES.txt
The project README which references Flink 1.13

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

Just reviewed. LGTM. I can merge if everyone is ok with


nextKeyHashes Disappeared when the document is version 1

Hi All, I am new to create issue in a open source repo and please feel free to correct me if I am wrong or not appropriate 🙏
I found that when the prerotation is enabled for createDID when the log is version 1(v1), the v1 log cannot resolve the nextKeyHash in meta by calling resolveDID,  such that when I am call updateDID to rotate the key to v2, it caused error.
The output of resolveDID for v1Log:

when I am updating the DID with pre-rotated key

After tracking the code, I found the issue should caused by src/method.ts line 138-139
https://github.com/decentralized-identity/trustdidweb-ts/blob/67b6b2c12d49167eabba56ef9632820213eda8a2/src/method.ts#L138-L139
After I fix the code like this, the pre rotation works properly
meta.nextKeyHashes = parameters.nextKeyHashes ?? [];

newKeysAreValid(meta.updateKeys, [], meta.nextKeyHashes, false, meta.prerotation === true);

Thank you! This should be fixed in #23


feature: add size for humanize byte size

[x] Rebased/mergable
[x] Tests pass
[x] CHANGELOG.md updated

@nathanielc Apologies for the delay. I'm just updated as what you mentioned.

@jsvisa Thanks!

may i know from which kapacitor version the function humanize is supported. could you please let me know
Additional could you please let me know how can I view  the kapacitor documentation for 1.5.6 . If someone has a backup of the documentation could you please share it


transcoding failed on a 640x480 video

I'm not able to even transcode one video that I have in a large group. It does transcode in the HandBrake GUI, CLI and also with ffmpeg but not under the very straight forward usage of transcode-video.
transcode-video input.avi
EDIT: I just wanted to add that its a little strange that its failing on this one when it works on everything else. The only significant difference is that this video is 640x480 and the rest are 1280x720. It is also encoded with xvid and mp3 - everything else is h264 and aac.
I have a long log file here:
[21:51:41] hb_init: starting libhb thread
[21:51:41] thread<PHONE_NUMBER>00 started ("libhb")
HandBrake 1.0.7<PHONE_NUMBER>) - Darwin x86_64 - https://handbrake.fr
8 CPUs detected
Opening input.avi...
[21:51:41] CPU: Intel(R) Core(TM) i7-3820QM CPU @ 2.70GHz
[21:51:41]  - Intel microarchitecture Ivy Bridge
[21:51:41]  - logical processor count: 8
[21:51:41] hb_scan: path=input.avi, title_index=1
udfread ERROR: ECMA 167 Volume Recognition failed
disc.c:274: failed opening UDF image input.avi
disc.c:352: error opening file BDMV/index.bdmv
disc.c:352: error opening file BDMV/BACKUP/index.bdmv
[21:51:41] bd: not a bd - trying as a stream/file instead
libdvdnav: Using dvdnav version 5.0.1
libdvdread: Encrypted DVD support unavailable.
libdvdread:DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.IFO failed
libdvdread:DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.BUP failed
libdvdread: Can't open file VIDEO_TS.IFO.
libdvdnav: vm: failed to read VIDEO_TS.IFO
[21:51:41] dvd: not a dvd - trying as a stream/file instead
Input #0, avi, from 'input.avi':
Metadata:
encoder         : VirtualDubMod 1.4.13
Duration: 00:23:15.02, start: 0.000000, bitrate: 4140 kb/s
Stream #0:0: Video: mpeg4 (Simple Profile) [XVID / 0x44495658]
yuv420p, 640x480 [PAR 1:1 DAR 4:3]
29.97 fps, 29.97 tbn
Stream #0:1: Audio: mp3 [U[0][0][0] / 0x0055]
44100 Hz, 2 channels, s16p, 128 kb/s
[21:51:41] scan: decoding previews for title 1
[21:51:42] scan: audio 0x1: mp3, rate=44100Hz, bitrate=128000 Unknown (MP3) (2.0 ch)
[21:51:42] scan: 10 previews, 640x480, 29.970 fps, autocrop = 0/0/0/0, aspect 4:3, PAR 1:1
[21:51:42] libhb: scan thread found 1 valid title(s)

Using preset: CLI Default
title 1:

stream: input.avi
duration: 00:23:15
size: 640x480, pixel aspect: 1/1, display aspect: 1.33, 29.970 fps
autocrop: 0/0/0/0
support opencl: no
chapters:

1: cells 0->0, 0 blocks, duration 00:23:15

audio tracks:

1, Unknown (MP3) (2.0 ch) (iso639-2: und)

subtitle tracks:
[21:51:42] 1 job(s) to process
[21:51:42] json job:
{
"Audio": {
"AudioList": [
{
"Encoder": 16384,
"Track": 0
}
],
"CopyMask": [
"copy:aac",
"copy:ac3",
"copy:eac3",
"copy:dtshd",
"copy:dts",
"copy:mp3",
"copy:truehd",
"copy:flac"
],
"FallbackEncoder": "ca_aac"
},
"Destination": {
"ChapterList": [
{
"Name": ""
}
],
"ChapterMarkers": false,
"File": "input.mkv",
"Mp4Options": {
"IpodAtom": false,
"Mp4Optimize": false
},
"Mux": "mkv"
},
"Filters": {
"FilterList": [
{
"ID": 5,
"Settings": {
"mode": "3"
}
},
{
"ID": 6,
"Settings": {
"mode": 2,
"rate": "27000000/900000"
}
},
{
"ID": 11,
"Settings": {
"crop-bottom": 0,
"crop-left": 0,
"crop-right": 0,
"crop-top": 0,
"height": 480,
"width": 640
}
}
]
},
"Metadata": {},
"PAR": {
"Den": 1,
"Num": 1
},
"SequenceID": 0,
"Source": {
"Angle": 0,
"Path": "input.avi",
"Range": {
"End": 1,
"Start": 1,
"Type": "chapter"
},
"Title": 1
},
"Subtitle": {
"Search": {
"Burn": true,
"Default": false,
"Enable": false,
"Forced": false
},
"SubtitleList": []
},
"Video": {
"ColorMatrixCode": 0,
"Encoder": "x264",
"Level": "3.0",
"OpenCL": false,
"Options": "vbv-maxrate=1500:vbv-bufsize=3000:crf-max=25:qpmax=34",
"Preset": "medium",
"Profile": "high",
"QSV": {
"AsyncDepth": 4,
"Decode": false
},
"Quality": 1.0,
"Tune": "",
"Turbo": false,
"TwoPass": false
}
}
[21:51:42] starting job
[21:51:42] work: mixdown not specified, track 1 setting mixdown Stereo
[21:51:42] work: bitrate not specified, track 1 setting bitrate 160 Kbps
[21:51:42] job configuration:
[21:51:42]  * source
[21:51:42]    + input.avi
[21:51:42]    + title 1, chapter(s) 1 to 1
[21:51:42]    + container: avi
[21:51:42]    + data rate: 4140 kbps
[21:51:42]  * destination
[21:51:42]    + input.mkv
[21:51:42]    + container: Matroska (libavformat)
[21:51:42]  * video track
[21:51:42]    + decoder: mpeg4
[21:51:42]    + filters
[21:51:42]      + avfilter (yadif='mode=0')
[21:51:42]        + yadif: mode=0
[21:51:42]      + Framerate Shaper (mode=2:rate=27000000/900000)
[21:51:42]        + frame rate: 29.970 fps -> peak rate limited to 30.000 fps
[21:51:42]      + Crop and Scale (width=640:height=480:crop-top=0:crop-bottom=0:crop-left=0:crop-right=0)
[21:51:42]        + source: 640 * 480, crop (0/0/0/0): 640 * 480, scale: 640 * 480
[21:51:42]    + Output geometry
[21:51:42]      + storage dimensions: 640 x 480
[21:51:42]      + pixel aspect ratio: 1 : 1
[21:51:42]      + display dimensions: 640 x 480
[21:51:42]    + encoder: H.264 (libx264)
[21:51:42]      + preset:  medium
[21:51:42]      + options: vbv-maxrate=1500:vbv-bufsize=3000:crf-max=25:qpmax=34
[21:51:42]      + profile: high
[21:51:42]      + level:   3.0
[21:51:42]      + quality: 1.00 (RF)
[21:51:42]  * audio track 1
[21:51:42]    + decoder: Unknown (MP3) (2.0 ch) (track 1, id 0x1)
[21:51:42]      + bitrate: 128 kbps, samplerate: 44100 Hz
[21:51:42]    + mixdown: Stereo
[21:51:42]    + encoder: AAC (Apple AudioToolbox)
[21:51:42]      + bitrate: 160 kbps, samplerate: 44100 Hz
[21:51:42] sync: expecting 41809 video frames
[21:51:42] encx264: min-keyint: 30, keyint: 300
[21:51:42] encx264: encoding at constant RF 1.000000
[21:51:42] encx264: unparsed options: qpmax=34:vbv-maxrate=1500:vbv-bufsize=3000:crf-max=25:level=3.0
x264 [info]: using SAR=1/1
x264 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
x264 [info]: profile High, level 3.0
[21:51:42] sync: first pts video is 0
[21:51:42] sync: Chapter 1 at frame 1 time 0
[21:51:42] sync: first pts audio 0x1 is 0
/usr/local/bin/transcode-video: transcoding failed: input.avi

@ProxyCell Thanks for including your .log file output! I reformatted to be a little more readable.
OK, when you say "a large group," do you mean several other .avi files in the same folder or on the same drive? Do any of your other files work with transcode-video?
The only time you should ever get this generic sounding "transcoding failed" error message is for a serious system call failure. So, is your current working directory read-only or perhaps full?

It is part of a group of 95 videos - 94 transcoded perfectly fine but I noticed this one didn't come through and ran it again and found this error
The rest are all h264/aac/720 while this one is xvid/mp3/480
The drive and folder permissions should be fine. The others were transcoded in the same directory and I have gone on to transcode other files since that batch.

@ProxyCell Thanks for the quick response!
OK, the error indicates a catastrophic failure propagated by HandBrakeCLI. In fact, the failure appears to be so bad that HandBrakeCLI couldn't even print an error message to the console. :)
So, I need you to invoke HandBrakeCLIdirectly with exactly the same parameters that transcode-video would be passing to it. Fortunately, that's incredibly easy with the --dry-run option! Just do this at your command line in the same working directory:
transcode-video --dry-run input.avi

...and then copy the output of that command and paste it back into your console.
That we can take transcode-video out of the equation and see what happens.

Alright! Thats an awesome feature by the way.
HandBrakeCLI --input=input.avi --output=input.mkv --markers --encoder=x264 --crop=0:0:0:0 --auto-anamorphic --deinterlace --rate=30 --pfr --encoder-preset=medium --encoder-profile=high --encoder-level=3.0 --quality=1 --audio=1 --aencoder=ca_aac --encopts=vbv-maxrate=1500:vbv-bufsize=3000:crf-max=25:qpmax=34
[22:20:55] hb_init: starting libhb thread
[22:20:55] thread 700004f42000 started ("libhb")
HandBrake 1.0.7<PHONE_NUMBER>) - Darwin x86_64 - https://handbrake.fr
8 CPUs detected
Opening input.avi...
[22:20:55] CPU: Intel(R) Core(TM) i7-3820QM CPU @ 2.70GHz
[22:20:55]  - Intel microarchitecture Ivy Bridge
[22:20:55]  - logical processor count: 8
[22:20:55] hb_scan: path=input.avi, title_index=1
udfread ERROR: ECMA 167 Volume Recognition failed
disc.c:274: failed opening UDF image input.avi
disc.c:352: error opening file BDMV/index.bdmv
disc.c:352: error opening file BDMV/BACKUP/index.bdmv
[22:20:55] bd: not a bd - trying as a stream/file instead
libdvdnav: Using dvdnav version 5.0.1
libdvdread:DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.IFO failed
libdvdread:DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.BUP failed
libdvdread: Can't open file VIDEO_TS.IFO.
libdvdnav: vm: failed to read VIDEO_TS.IFO
[22:20:55] dvd: not a dvd - trying as a stream/file instead
Input #0, avi, from 'input.avi':
  Metadata:
    encoder         : VirtualDubMod 1.4.13
  Duration: 00:23:15.02, start: 0.000000, bitrate: 4140 kb/s
    Stream #0:0: Video: mpeg4 (Simple Profile) [XVID / 0x44495658]
      yuv420p, 640x480 [PAR 1:1 DAR 4:3]
      29.97 fps, 29.97 tbn
    Stream #0:1: Audio: mp3 [U[0][0][0] / 0x0055]
      44100 Hz, 2 channels, s16p, 128 kb/s
[22:20:55] scan: decoding previews for title 1
[22:20:55] scan: audio 0x1: mp3, rate=44100Hz, bitrate=128000 Unknown (MP3) (2.0 ch)
[22:20:55] scan: 10 previews, 640x480, 29.970 fps, autocrop = 0/0/0/0, aspect 4:3, PAR 1:1
[22:20:55] libhb: scan thread found 1 valid title(s)
+ Using preset: CLI Default
+ title 1:
  + stream: input.avi
  + duration: 00:23:15
  + size: 640x480, pixel aspect: 1/1, display aspect: 1.33, 29.970 fps
  + autocrop: 0/0/0/0
  + support opencl: no
  + chapters:
    + 1: cells 0->0, 0 blocks, duration 00:23:15
  + audio tracks:
    + 1, Unknown (MP3) (2.0 ch) (iso639-2: und)
  + subtitle tracks:
[22:20:55] 1 job(s) to process
[22:20:55] json job:
{
    "Audio": {
        "AudioList": [
            {
                "Encoder": 16384,
                "Track": 0
            }
        ],
        "CopyMask": [
            "copy:aac",
            "copy:ac3",
            "copy:eac3",
            "copy:dtshd",
            "copy:dts",
            "copy:mp3",
            "copy:truehd",
            "copy:flac"
        ],
        "FallbackEncoder": "ca_aac"
    },
    "Destination": {
        "ChapterList": [
            {
                "Name": ""
            }
        ],
        "ChapterMarkers": false,
        "File": "input.mkv",
        "Mp4Options": {
            "IpodAtom": false,
            "Mp4Optimize": false
        },
        "Mux": "mkv"
    },
    "Filters": {
        "FilterList": [
            {
                "ID": 5,
                "Settings": {
                    "mode": "3"
                }
            },
            {
                "ID": 6,
                "Settings": {
                    "mode": 2,
                    "rate": "27000000/900000"
                }
            },
            {
                "ID": 11,
                "Settings": {
                    "crop-bottom": 0,
                    "crop-left": 0,
                    "crop-right": 0,
                    "crop-top": 0,
                    "height": 480,
                    "width": 640
                }
            }
        ]
    },
    "Metadata": {},
    "PAR": {
        "Den": 1,
        "Num": 1
    },
    "SequenceID": 0,
    "Source": {
        "Angle": 0,
        "Path": "input.avi",
        "Range": {
            "End": 1,
            "Start": 1,
            "Type": "chapter"
        },
        "Title": 1
    },
    "Subtitle": {
        "Search": {
            "Burn": true,
            "Default": false,
            "Enable": false,
            "Forced": false
        },
        "SubtitleList": []
    },
    "Video": {
        "ColorMatrixCode": 0,
        "Encoder": "x264",
        "Level": "3.0",
        "OpenCL": false,
        "Options": "vbv-maxrate=1500:vbv-bufsize=3000:crf-max=25:qpmax=34",
        "Preset": "medium",
        "Profile": "high",
        "QSV": {
            "AsyncDepth": 4,
            "Decode": false
        },
        "Quality": 1.0,
        "Tune": "",
        "Turbo": false,
        "TwoPass": false
    }
}
[22:20:55] starting job
[22:20:55] work: mixdown not specified, track 1 setting mixdown Stereo
[22:20:55] work: bitrate not specified, track 1 setting bitrate 160 Kbps
[22:20:55] job configuration:
[22:20:55]  * source
[22:20:55]    + input.avi
[22:20:55]    + title 1, chapter(s) 1 to 1
[22:20:55]    + container: avi
[22:20:55]    + data rate: 4140 kbps
[22:20:55]  * destination
[22:20:55]    + input.mkv
[22:20:55]    + container: Matroska (libavformat)
[22:20:55]  * video track
[22:20:55]    + decoder: mpeg4
[22:20:55]    + filters
[22:20:55]      + avfilter (yadif='mode=0')
[22:20:55]        + yadif: mode=0
[22:20:55]      + Framerate Shaper (mode=2:rate=27000000/900000)
[22:20:55]        + frame rate: 29.970 fps -> peak rate limited to 30.000 fps
[22:20:55]      + Crop and Scale (width=640:height=480:crop-top=0:crop-bottom=0:crop-left=0:crop-right=0)
[22:20:55]        + source: 640 * 480, crop (0/0/0/0): 640 * 480, scale: 640 * 480
[22:20:55]    + Output geometry
[22:20:55]      + storage dimensions: 640 x 480
[22:20:55]      + pixel aspect ratio: 1 : 1
[22:20:55]      + display dimensions: 640 x 480
[22:20:55]    + encoder: H.264 (libx264)
[22:20:55]      + preset:  medium
[22:20:55]      + options: vbv-maxrate=1500:vbv-bufsize=3000:crf-max=25:qpmax=34
[22:20:55]      + profile: high
[22:20:55]      + level:   3.0
[22:20:55]      + quality: 1.00 (RF)
[22:20:55]  * audio track 1
[22:20:55]    + decoder: Unknown (MP3) (2.0 ch) (track 1, id 0x1)
[22:20:55]      + bitrate: 128 kbps, samplerate: 44100 Hz
[22:20:55]    + mixdown: Stereo
[22:20:55]    + encoder: AAC (Apple AudioToolbox)
[22:20:55]      + bitrate: 160 kbps, samplerate: 44100 Hz
[22:20:55] sync: expecting 41809 video frames
[22:20:56] encx264: min-keyint: 30, keyint: 300
[22:20:56] encx264: encoding at constant RF 1.000000
[22:20:56] encx264: unparsed options: crf-max=25:vbv-maxrate=1500:level=3.0:vbv-bufsize=3000:qpmax=34
x264 [info]: using SAR=1/1
x264 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
x264 [info]: profile High, level 3.0
[22:20:56] sync: first pts video is 0
[22:20:56] sync: Chapter 1 at frame 1 time 0
[22:20:56] sync: first pts audio 0x1 is 0
Segmentation fault: 11

@ProxyCell This case is exactly why I included that feature. :)
OK, now we know it's HandBrakeCLI dying a horrible death and not transcode-video. However, that doesn't excuse my code yet.
Here's what you need to try next, but be warned that it's very tedious. :) This is your command, right?
HandBrakeCLI --input=input.avi --output=input.mkv --markers --encoder=x264 --crop=0:0:0:0 --auto-anamorphic --deinterlace --rate=30 --pfr --encoder-preset=medium --encoder-profile=high --encoder-level=3.0 --quality=1 --audio=1 --aencoder=ca_aac --encopts=vbv-maxrate=1500:vbv-bufsize=3000:crf-max=25:qpmax=34

So just start removing options and arguments, one at time, and see if it suddenly starts working. Then we'll know if transcode-video was passing it something it couldn't handle.
BTW, if this input file is small enough and there aren't any copyright restrictions, is it possible to upload this somewhere that I can inspect it and try it myself?

Alright - I ran through them and its --deinterlace
I can upload this easily, its just a 2008 episode of a Japanese variety show. Its 722mb but the quality is horrendous. So I am surprised that it detects interlaced frames as I'm sure its already deinteraced. Let me know if you would like this thrown up somewhere for you to download.

Additional:
I'm going to run it with this new line now. I just reduced it to the plain command arguments earlier to try and eliminate any possible issues.
transcode-video --dry-run --mp4 --veryquick --burn-srt "subtitle.srt" input.avi
HandBrakeCLI --input=input.avi --output=input.mp4 --markers --encoder=x264 --crop=0:0:0:0 --auto-anamorphic --deinterlace --rate=30 --pfr --encoder-preset=medium --encoder-profile=high --encoder-level=3.0 --quality=1 --audio=1 --aencoder=ca_aac --srt-file=subtitle.srt --srt-burn --encopts=vbv-maxrate=1500:vbv-bufsize=3000:crf-max=25:qpmax=34:partitions=none:ref=1:bframes=1:rc-lookahead=30:me=dia

@ProxyCell It's not HandBrakeCLI that thinks your video is interlaced. My code automatically applies that filter if the input frame rate is 29.97 and the video is not MPEG-2 format.
Try this to work around the problem:
transcode-video -H _deinterlace input.avi

Be sure to use the _ (underscore) there. That should remove the --deinterlace option from the command line sent to HandBrakeCLI.
Thanks for offering to upload the file but I know exactly what's wrong now.
What I don't know is why HandBrakeCLI is dying on that. That's clearly a bug.

Thanks a lot! I never came across the issue when using HandBrake-GUI or CLI, ffmpeg and such because I never ran de-interlacing on it.
Lets close this ticket off as its a bug in the upstream.
Now let me heap some praise on you man: I've spent MONTHS encoding my blu rays, DVDs, etc to h265 and then kept having to deal with two issues: speed - it took MONTHS, right? and the other was compatibility with some devices/software.
I came across a blog article which dealt with the benchmarks and quality comparison of different presets on h264 for HandBrake and your video_transcoding. It praised your suite of tools so I decided to give h264 a try again and ran my own quality comparison tests. I made 10 different encodes of a 6 minute video of a live concert and passed them around to friends to rank them in terms of quality.
The --quick and --veryquick were the top two.
It may have been because the source was a 1080i Blu Ray of a live concert in a dark venue but still, I was convinced to switch over. Your suite has probably saved me MONTHS in just the past few days already as I used to encode at the VERYSLOW preset for handbrake/ffmpeg.
While I have the storage space and bandwidth to run the encodes on a CDN my company possesses, these servers aren't really meant to encode and are terrifyingly slow. They are all built just to serve audio/video-streams as quickly as possible. Just one of the benefits of working at this company :)

@ProxyCell You are very welcome and thanks so much for using my tools! I'm glad they're working so well for you. This is exactly why I do it. :)
Just so you know, I use --veryquickmyself  to transcode my entire video library. And that library is huge. Why waste time, right? :)
In fact, my command line typically looks like this:
transcode-video --abr --veryquick --audio-width main=surround "/path/to/Movie.mkv"

And they look great! Honestly it's very difficult to tell any of them from transcodings done using the default medium preset or slow. Even on my 80-inch TV. I have to get a foot away from my 27-inch iMac screen to tell the difference. And that's only for a few small scenes in a few videos.
I'm glad you like --veryquick too!

Yeah. I decided its best to spend my time WATCHING rather than ENCODING!
Any chance that "--abr --veryquick --target small" can be combined?

@ProxyCell I wouldn't combine those since they're all very different.


[Dropdown] Allow for multiple anchor toggles.

v5 allowed you to have multiple anchors for the same dropdown. Simplifies the code to only allow one, but is much more efficient to reuse a dropdown with knockoutjs etc.

How would you see that implemented in 6? A single dropdown pane that will attach to whichever anchor point was clicked? Then which one does it anchor to for a programmatic open? It also makes aria attributes much more difficult to manage.

@zurbchris
A single dropdown pane that will attach to whichever anchor point was clicked?
Yes
Then which one does it anchor to for a programmatic open?
Default to first anchor, but open could optionally take an anchor?
It also makes aria attributes much more difficult to manage.
True, but our use case cannot afford to recreate essentially the same dropdown multiple times. The cleanup logic could be kept generic for all anchors. You would probably need to have a this.$anchors and this.$active_anchor. I was working on a potential pr, but decided to wait until https://github.com/zurb/foundation-sites/pull/7353 was resolved.
It might be too heavy handed, but we currently utilize that functionality with v5.

@tjhiggins Now that #7353 is closed, does that help with your PR? I'm going to close this for now. Please reopen if you'd like to submit that PR.


[Enhancement] Support reporting proifle for insert into statement when error occurs

Fixes #issue
What type of PR is this:

[ ] BugFix
[ ] Feature
[x] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto-backported to the target branch

[x] 3.1
[x] 3.0
[x] 2.5
[ ] 2.4

[FE PR Coverage Check]
:heart_eyes: pass : 3 / 3 (100.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/qe/StmtExecutor.java
3
3
100.00%
[]

@Mergifyio backport branch-3.1

@Mergifyio backport branch-3.0


Roll Flutter Engine from b4b4c15d3a60 to 2d2b51d69c8e (3 revisions)

https://github.com/flutter/engine/compare/b4b4c15d3a60...2d2b51d69c8e
2023-02-23<EMAIL_ADDRESS>Remove obsolete references in ViewConfiguration documentation (flutter/engine#39708)
2023-02-23<EMAIL_ADDRESS>Roll Skia from 1b2d815e9778 to fff6c987d803 (2 revisions) (flutter/engine#39823)
2023-02-23<EMAIL_ADDRESS>Roll Skia from a321a8750271 to 1b2d815e9778 (5 revisions) (flutter/engine#39821)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com,rmistry<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Commit queue failed; closing this roll.


Design fail

Hello everybody,
i want to ask how i, or the project itself, can change the color from the title named objects?
So in my case it looks so:

but i want to look is like lcars closer without the (white) fade...
Thanks for help...

If you followed entities portion of the guide and created the entities, turning off input_boolean.lcars_texture will disable the white fade. To change the titles, you need to remove the title from your existing card and create a Markdown card to act as the title for the cards below. I recommend putting them all into a vertical stack card so they stay grouped together. Is German/Deutsch your native language?

It appears that you speak German (please forgive me if that is incorrect), so I attempted a Chat-GPT translation of the README. Please let me know if that helps and if it's reasonably accurate. https://github.com/th3jesta/ha-lcars/blob/master/README-DE.md

Yes i speak german. You too?
I think i installed it wrong. I mean its many beers along where i installed it, so i can bee posible that i followed the wrong tutorial...
I will reinstall it and check it again. Is there an deinstall manual?

 Ich schlage vor, einfach die Dokumentation zu lesen und Ihre Arbeit zu überprüfen.

Okay, i will do that...

So, i think it looks better, bot how can i fix this underline?

That gets tricky due to how card alignments are handled in Home Assistant. I've not solved that problem for myself, but some folks in the Discord server have used things like Lovelace Layout Card to great effect to line up the tops and bottoms of cards and stacks. I recommend joining the Discord and asking for help there. It's a great community 😃  🍻

Did you have a picture?

Sure, here's an image and the beginning of the conversation from which it came from: https://discord.com/channels/1059179538371858493/1059182416822030406/1114294065371021513

looks good
How you added the stardate? and how you created the nice floorplan? :XD

It's not mine. That's all from user lordpsycho on the the Discord channel. He created all of that, and explains it in Discord. He put a lot of work into it!

Sorry I missed it. I responded.