Closing a socket will hang the asyncio poller

When closing a socket the asyncio poller will crash, even when unregistering first: The whole coroutine will be broken, and couldn't find a way to actually catch the exception.
Version info:
libzmq-4.1.6
pyzmq-16.0.2
Python-3.5.4 |Continuum Analytics, Inc.| (default, Aug 14 2017, 13:26:58)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)]

Program to demonstrate the issue:
import asyncio
import zmq.asyncio as zmq_asyncio
import zmq
import logging

logging.basicConfig(level=logging.DEBUG)

zmq_asyncio.install()
ctx = zmq_asyncio.Context()
s1 = ctx.socket(zmq.PULL)
s1.bind('inproc://1')
s2 = ctx.socket(zmq.PULL)
s2.bind('inproc://2')
poller = zmq_asyncio.Poller()
poller.register(s1, zmq.POLLIN)
poller.register(s2, zmq.POLLIN)

async def ping():
    s = ctx.socket(zmq.PUSH)
    s.connect('inproc://1')
    s.connect('inproc://2')
    while True:
        s.send_unicode('ping')
        await asyncio.sleep(2)

async def unregister():
    await asyncio.sleep(1)
    poller.unregister(s1)
    await asyncio.sleep(0.5)  # Increase this to "solve" the bug
    s1.close()
    print('unregister')

async def listen():
    while True:
        try:
            poll_events = await poller.poll(2000)
        except (asyncio.CancelledError, KeyboardInterrupt):
            break
        except Exception:
            logging.exception('Error polling for events')
            continue
        for socket, poll_event in poll_events:
            msg = await socket.recv_unicode()
            print(socket, msg)
        if not poll_events:
            print('no msg')

loop = asyncio.get_event_loop()
asyncio.ensure_future(ping())
asyncio.ensure_future(unregister())
try:
    loop.run_until_complete(listen())
except Exception:
    logging.exception('error running loop')
finally:
    ctx.destroy()

It is expected to keep printing ping after removing and closing the socket. Instead the poller will get an exception and the statement poller.poll will never end, traceback:
ERROR:asyncio:Exception in callback _AsyncPoller.poll.<locals>.on_poll_ready(<Future cancelled>) at /opt/anaconda3/envs/venv/lib/python3.5/site-packages/zmq/eventloop/future.py:88
handle: <Handle _AsyncPoller.poll.<locals>.on_poll_ready(<Future cancelled>) at /opt/anaconda3/envs/venv/lib/python3.5/site-packages/zmq/eventloop/future.py:88>
Traceback (most recent call last):
  File "/opt/anaconda3/envs/venv/lib/python3.5/asyncio/events.py", line 127, in _run
    self._callback(*self._args)
  File "/opt/anaconda3/envs/venv/lib/python3.5/site-packages/zmq/eventloop/future.py", line 91, in on_poll_ready
    if watcher.exception():
  File "/opt/anaconda3/envs/venv/lib/python3.5/asyncio/futures.py", line 306, in exception
    raise CancelledError
concurrent.futures._base.CancelledError

Indeed, the cancel hookup is incorrect. The code assumes that a cancelled Future will have CancelledError as a regular exception, but unlike other failures, .exception() itself raises CancelledError, so cancel must be handled specially.
Fixed by #1115.

Thanks, that should fix it indeed.


Card wrap is activated when czar selects a card and there are 4 submitted cards

Wrap card property treated card submission and czar choice the same, so choosing a winner bumped the submitted card count over the four card threshold


Is it possible to add more FormattingOptions to DocumentFormattingParams?

Hi,
I'm working on the XML language server and I was wondering if the client is able to configure the FormattingOptions( in DocumentFormattingParams) and add customised configurations when the TextDocumentService's formatting service is called as of now it only seems that TabSize and InsertSpaces are available.

In general the literal can contain more options since the signature allows for
[key: string]: boolean | number | string;

As @rcjsuen pointed out it would be could to standardize those. But this has to happen in the protocol itself. Any objection to move the discussion about this to Microsoft/language-server-protocol#375


typstyle: 0.11.35 -> 0.12.0

Things done
Changelog: https://github.com/Enter-tainer/typstyle/releases/tag/v0.12.0
cc @drupol

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 349730

x86_64-linux

:white_check_mark: 1 package built:

typstyle

aarch64-linux

:white_check_mark: 1 package built:

typstyle

x86_64-darwin

:white_check_mark: 1 package built:

typstyle

aarch64-darwin

:white_check_mark: 1 package built:

typstyle


Webex Bronze - App docs

Purpose of this pull request
This pull request is to create Webex Bronze apps docs.
Select the type of change

[ ] Minor Changes - Typos, formatting, slight revisions
[ ] Update Content - Revisions, updating sections
[x] New Content - New features, sections, pages, tutorials
[ ] Site and Tools - .clabot, version updates, maintenance, dependencies, new packages for the site (Docusaurus, Gatsby, React, etc.)

Ticket (if applicable)
Webex App - Create Dochub page

@jpipkin1 Thanks for your review and suggestion. I have fixed the comments.

LGTM


Introduce TypeScript version

Hi @andyhall. Thank you for sharing this simple and great engine!
I post this issue to introduce typescript version of this library pawsong/voxel-physics-engine. I prefer using typescript to take advantage of auto complete and build time type checking, which is great for refactoring a large codebase.
I didn't make a PR as javascript has its own advantages :) Thanks again!

Hey, thanks for doing this! I'm keeping my project in JS right now but TS seems really promising and it's great to have options. When I get a chance I'll add a link from the project readme!
Also if you add any significant features please ping me - maybe I can backport, or otherwise keep the two modules in sync. I don't have anything particular planned on my side.
BTW, you might want to make your library a standalone repo, instead of a fork. I believe forks don't show up in github searches, so it will be hard for people to find otherwise.

I'm glad you like it :) I can make a PR for new features!
By the way, I been building my own voxel engine as a fork of voxel/voxel-engine-stackgl, and found your noa engine yesterday. noa is pretty simple and neat! I considered using noa and decided to stay with my voxel-engine-stackgl fork because of these reasons:

Babylon dependency

I don't know babylon very well :) Just don't want to add a massive dependency.

Javascript

As I prefer using typescript. Writing typings for noa is a viable option, but this option cannot take advantage of power of typescript while developing engine itself.

I will keep thinking about contributing to your great works :) Have a nice day and please let me know if you need any help.


bower.json "Main" - Should not be minified files

According to the bower spec, the "main" key in bower.json (which lists the main files in the package) should have the unminified files, yet ng-tags-input lists the minified files.
https://github.com/bower/bower.json-spec#main
(I'll try to submit a pull request if I can figure out how you're building your bower.json file)

Sorry for not replying sooner.
Thanks for pointing that out. I'll try to fix it for the next release.

This issue was selected to be spring-cleaned by a script. More information can be found here.
If anyone thinks this was a mistake and this issue should be reopened, please leave a message below explaining why. Before doing so, please consider reading the CONTRIBUTING file.


Redisstore working only in Python 2.7

Versions

Python: 3.5
OS: Mint 18
Kivy: 1.10
Kivy installation method: pip

Description
redisstore.py working only in Python 2.7 due to encoding problems.
There is suggested solution attached.
Edit: Attached zip removed.

Please point to the line which causes the issue and paste the fixed line here. Also share a traceback of the error you get.

diff redisstore_py2.py redisstore_py3.py
63a64

    newresult={}

69,70c70,73
<             result[k] = loads(result[k])
<         return result

        newk = k.decode()
        newresult[newk] = loads(result[k].decode())
    del(result)
    return newresult

76c79
<         for k, v in values.iteritems():

    for k, v in values.items():

81,86d83
<     def store_delete(self, key):
<         key = self.prefix + '.d.' + key
<         if not self.r.exists(key):
<             raise KeyError(key)
<         return self.r.delete(key)
<
90a88

95c93
<             skey = self.prefix + '.d.' + key

        skey = self.prefix + '.d.' + key.decode()

96a95,96

        svalues = filter(None, svalues)
        svalues = [i.decode() for i in svalues]

99a100

102c103
<             yield key, self.r.hgetall(skey)

    yield key, self.r.hgetall(skey)

redisstore_py2.py", line 76, in store_put
for k, v in values.iteritems():
AttributeError: 'dict' object has no attribute 'iteritems'

Thanks, it could be wrapped in code tags so it's readable. https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet#code

Fixed in https://github.com/kivy/kivy/pull/5194.

@gregers666 Please try with the linked change if it works for you.


v1.8 - graph of ET

Graph of ET in v1.8 is appearing as a text box instead of a graph.
ET does appear correctly in the text box section.

Yes, there is a bug in the current version. It's fixed in the next release 👍

Thank you 👍


Support JetBrainsRuntime distribution

Description:
Add support for JetBrainsRuntime Java distribution https://github.com/JetBrains/JetBrainsRuntime/
Justification:
I build a desktop app using Compose Multiplatform, and the best distribution to use when building/packaging it is JetBrains Runtime because it expands the runtime support for GUI apps, expanding Swing and AWT support for every platform and fixing bugs. I use Github Actions to build my app so having it be supported in this action would be very helpful.
Are you willing to submit a PR?
Im not familair with TypeScript/JavaScript so I cannot say yes.

Hello @Syer10

hi @Syer10, after the consultation with the team we have decided we are not currently planning to implement this feature. But I will not close this issue, because we want to see how much attention it is going to get :)

@panticmilos Would you accept community contributions for this? If so, feel free to assign this to me

It doesn't seem like they'd accept a community contribution without first showing demand.
But you could make a fork that included it and the evidence of repositories using your fork would be a good way to convince them to integrate it.

hi @yeikel, sorry for the delayed response. We are still not going to close this feature request, but still keeping it open for same reasons that I mentioned in the comment above :)

This sounds like a good idea especially for Android projects as it will match Android Studio.

I'd certainly like setup-java to support jbr as a distribution. It's worth doing for people that produce plugins for Jetbrains IDE's.

@yeikel why not create a branch in your fork that adds the support and then link to it here. We'll be able to see how much your repository is used pretty easily (GitHub tracks dependencies).

@yeikel why not create a branch in your fork that adds the support and then link to it here. We'll be able to see how much your repository is used pretty easily (GitHub tracks dependencies).

My intention was to contribute to this project in general, and I saw an issue I could try
I have no particular interest or need to support this runtime, and maintaining a fork is not something I am interested at this time

hOY MGA PUTANG INA NYO ANU PINAG KAJAGULUHAN NYO MGA HINDOT KAU

Would be nice to have thin in GitHub actions

This is a little late, but I submitted a PR that adds support for this:
- name: Setup JBR 17
  uses: gmitch215/setup-java@e1f4c15facc0cf68c0e764340e374be034e4a859
  with:
    distribution: 'jetbrains'
    java-version: 17

any news on this?

See #637


add failing spec for .rescue_from regression

see #1957

I guess I shouldn't be lazy, https://github.com/ruby-grape/grape/pull/1961 :)

#1961 includes the changes


SendGrid - TO PIMA CO ONLY

This PR sets up a SendGrid fn to send a message to users.  Initially - we'll use it to send a notification message to PIMA CO only.
If you are suggesting a fix for a currently exploitable issue, please disclose the issue to the prime-reportstream team directly outside of GitHub instead of filing a PR, so we may immediately patch the affected systems before a disclosure. See SECURITY.md/Reporting a Vulnerability for more information.
Changes

Adds a triggered function to periodlically check for messages and send them
Adds an HTTP triggered function to create an email schedule

Checklist
Testing

[X] Tested locally?
[ ] Ran quickTest all?
[ ] Ran ./prime test against local Docker ReportStream container?
[ ] Downloaded a file from http://localhost:7071/api/download?
[ ] Added tests?

Specific Security-related subjects a reviewer should pay specific attention to

Does this PR introduce new endpoints?

new endpoint A
new endpoint B

Does this PR include changes in authentication and/or authorization of existing endpoints?
Does this change introduce new dependencies that need vetting?

YES - adds:

implementation("com.cronutils:cron-utils:9.1.5")

implementation("khttp:khttp:0.1.0")

Does this change require changes to our infrastructure?

Does logging contain sensitive data?

Does this PR include or remove any sensitive information itself?

If you answered 'yes' to any of the questions above, conduct a detailed Review that addresses at least:

What are the potential security threats and mitigations? Please list the STRIDE threats and how they are mitigated

Spoofing (faking authenticity)

Threat T, which could be achieved by A, is mitigated by M

Tampering (influence or sabotage the integrity of information, data, or system)
Repudiation (the ability to dispute the origin or originator of an action)
Information disclosure (data made available to entities who should not have it)
Denial of service (make a resource unavailable)
Elevation of Privilege (reduce restrictions that apply or gain privileges one should not have)

Have you ensured logging does not contain sensitive data?
Have you received any additional approvals needed for this change?

Process

[ ] Are there licensing issues with any new dependencies introduced?
[ ] Includes a summary of what a code reviewer should verify?
[ ] Updated the release notes?
[ ] Database changes are submitted as a separate PR?
[ ] DevOps team has been notified if PR requires ops support?

Fixes
List GitHub issues this PR fixes

#issue

To Be Done
Create GitHub issues to track the work remaining, if any

#issue

Agree – change made
From: Thomas D. @.>
Sent: Tuesday, July 13, 2021 12:20 PM
To: CDCgov/prime-reportstream @.>
Cc: Matt young @.>; Assign @.>
Subject: Re: [CDCgov/prime-reportstream] SendGrid - TO PIMA CO ONLY (#1443)
@td-usds commented on this pull request.

In prime-router/src/main/kotlin/azure/EmailEngineFunction.kt https://github.com/CDCgov/prime-reportstream/pull/1443#discussion_r669044274 :

 val reportFiles = workflowEngine

                   .fetchDownloadableReportFiles(

                           last.toInstant().atOffset(ZoneOffset.UTC),

                           org )

   return reportFiles;

}

/**

* TODO: Fixme!

*/

@Suppress( "UNRESOLVED_REFERENCE")
private fun dispatchToSendGrid(

   template: String,

   emails: List<String>,

Are we expecting in the future to do more than iterate over it? Based on the logic and name, it doesn't appear that way.
I guess generally speaking: yes, I agree (with caveats), but here, I would change it.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub https://github.com/CDCgov/prime-reportstream/pull/1443#discussion_r669044274 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ABT6JPOR3ARHT4KUAPOWQFLTXSGVVANCNFSM47SS4NQQ .  https://github.com/notifications/beacon/ABT6JPLH4NPNZFBCJS6QN63TXSGVVA5CNFSM47SS4NQ2YY3PNVWWK3TUL52HS4DFWFIHK3DMKJSXC5LFON2FEZLWNFSXPKTDN5WW2ZLOORPWSZGOFIG75HY.gif


Add linkerSettings to .binaryTarget

Description
Would it be reasonable to add the linkerSettings parameter to .binaryTarget? It seems to me that you could be just as likely to want to add linker settings, like -dead_strip or something, from a binary target as a normal target
Expected behavior
No response
Actual behavior
No response
Steps to reproduce
No response
Swift Package Manager version/commit hash
No response
Swift & OS version (output of swift --version && uname -a)
No response

@neonichu @abertelrud wdyt?

I am not 100% sure what that would mean, could you elaborate? In principle, we are not running any commands for a binary target, so those settings wouldn't really go anywhere. Or do you mean in order to impart them to clients of the binary target?

Ah yes I mean that they would propagate up the dependency tree to the final consumer, but I see now that I wasn't clear enough about this, since it's more clear in the case of static binary targets than dynamic ones. But I imagine the semantics would be similar to the existing target types' as well.

Yah, I think that's reasonable. I am not 100% sure off hand if there are any existing linkerSettings that we don't propagate that we should warn/error about in the special case of binary targets, but generally speaking this makes sense to me.


Offboard yaw movement causes loss of vertical height EKF2

PX4 1.8.0 dev + commits up to around mid-september (27b2dad1)
PX4Flow and TFMini lidar, no GPS, indoor flight.
Device holds position in air after mavlink commanded takeoff. When device is commanded to perform a yaw manoeuvre it progressively looses vertical height throughout the course of that manoeuvre. This is tested in real flight, not SITL.
Simplified code describing the actions performed (based on dronekit)
# Takeoff
vehicle.arm_and_takeoff(1.5)
# Wait for vehicle to reach target altitude
time.sleep(5)
# Send target_local_NED commands prior to setting offboard mode
for i in range(10):
bitmask = 0b0000001111111111
msg = vehicle.message_factory.set_position_target_local_ned_encode(
0, # time_boot_ms (not used)
self.target_system_id, self.target_component_id,
mavutil.mavlink.MAV_FRAME_LOCAL_NED, # frame
bitmask,
0, # North
0, # East
0, # Down
0, 0, 0, # x, y, z velocity in m/s (not used)
0, 0, 0, # x, y, z acceleration (not supported yet, ignored in GCS_Mavlink)
0, 0) # yaw, yaw_rate (not supported yet, ignored in GCS_Mavlink)
# send command to vehicle
vehicle.send_mavlink(msg)
time.sleep(0.25)
# Perform a 360 degree rotation
start_yaw = vehicle.attitude.yaw
for i in range(20):
        time.sleep(0.25)
bitmask = 0b0000000111111111
yaw_rate = 0.3
yaw = start_yaw + 18 * i * 0.0174533
msg = vehicle.message_factory.set_position_target_local_ned_encode(
0, # time_boot_ms (not used)
self.target_system_id, self.target_component_id,
mavutil.mavlink.MAV_FRAME_LOCAL_NED, # frame
bitmask,
0, # North
0, # East
0, # Down
0, 0, 0, # x, y, z velocity in m/s (not used)
0, 0, 0, # x, y, z acceleration (not supported yet, ignored in GCS_Mavlink)
yaw, yaw_rate) # yaw, yaw_rate (not supported yet, ignored in GCS_Mavlink)
# send command to vehicle
vehicle.send_mavlink(msg)
# Land
vehicle.mode = VehicleMode("LAND")
time.sleep(4)
vehicle.armed = False

Flight log:
https://logs.px4.io/plot_app?log=d79c2235-4891-458e-8c9d-4e910504bc9f
Drone HW:
Pixracer / FMUv4
PX4Flow
TFMini
Would greatly appreciate any help in identifying the issue here, is it an issue with how I'm interacting with mavlink via the bitmask, or is there an issue with the firmware or parameters themselves?
Thanks!

@ChrisHughes This might be a hardware limitation on demanding a yaw rate too high.
Is this also a problem wehn the yaw rate is lower?

Hi ChrisHughes, Have you tested the code in the simulation e.g. Gazebo?

PX4 1.8.0 dev + commits up to around mid-september (27b2dad)
PX4Flow and TFMini lidar, no GPS, indoor flight.
Device holds position in air after mavlink commanded takeoff. When device is commanded to perform a yaw manoeuvre it progressively looses vertical height throughout the course of that manoeuvre. This is tested in real flight, not SITL.
Simplified code describing the actions performed (based on dronekit)
# Takeoff
vehicle.arm_and_takeoff(1.5)
# Wait for vehicle to reach target altitude
time.sleep(5)
# Send target_local_NED commands prior to setting offboard mode
for i in range(10):
bitmask = 0b0000001111111111
msg = vehicle.message_factory.set_position_target_local_ned_encode(
0, # time_boot_ms (not used)
self.target_system_id, self.target_component_id,
mavutil.mavlink.MAV_FRAME_LOCAL_NED, # frame
bitmask,
0, # North
0, # East
0, # Down
0, 0, 0, # x, y, z velocity in m/s (not used)
0, 0, 0, # x, y, z acceleration (not supported yet, ignored in GCS_Mavlink)
0, 0) # yaw, yaw_rate (not supported yet, ignored in GCS_Mavlink)
# send command to vehicle
vehicle.send_mavlink(msg)
time.sleep(0.25)
# Perform a 360 degree rotation
start_yaw = vehicle.attitude.yaw
for i in range(20):
time.sleep(0.25)
bitmask = 0b0000000111111111
yaw_rate = 0.3
yaw = start_yaw + 18 * i * 0.0174533
msg = vehicle.message_factory.set_position_target_local_ned_encode(
0, # time_boot_ms (not used)
self.target_system_id, self.target_component_id,
mavutil.mavlink.MAV_FRAME_LOCAL_NED, # frame
bitmask,
0, # North
0, # East
0, # Down
0, 0, 0, # x, y, z velocity in m/s (not used)
0, 0, 0, # x, y, z acceleration (not supported yet, ignored in GCS_Mavlink)
yaw, yaw_rate) # yaw, yaw_rate (not supported yet, ignored in GCS_Mavlink)
# send command to vehicle
vehicle.send_mavlink(msg)
# Land
vehicle.mode = VehicleMode("LAND")
time.sleep(4)
vehicle.armed = False

Flight log:
https://logs.px4.io/plot_app?log=d79c2235-4891-458e-8c9d-4e910504bc9f
Drone HW:
Pixracer / FMUv4
PX4Flow
TFMini
Would greatly appreciate any help in identifying the issue here, is it an issue with how I'm interacting with mavlink via the bitmask, or is there an issue with the firmware or parameters themselves?
Thanks!

Same here. Any solution?


Add way to filter providers

Each provider needs to have a name for configuration, i.e PathProvider has 'path'.
Here using a classmethod since class properties are deprecated.
The intention is that the caller can choose a particular provider or providers to
allow for finding python.
Fixes #17

That makes sense. About the small details, should the filter be applied to any providers added by .add_provider or not? Both ways could make sense, don't know what way seems best to you

Let's make some API changes.

Deprecate the add_provider() method
Provide a global register() function to add to the ALL_PROVIDERS (name -> provider class) map.

And of course, the filter applies to added providers.

Thanks, I will continue to do more changes.

Thanks for integrating the changes!


Checkout matching openshift-ansible branch

@stevekuznetsov PTAL
Running tests with mentioned changes:

PR against release 1.5 - https://ci.openshift.redhat.com/jenkins/view/All/job/jhadvig/5/
PR against master        - https://ci.openshift.redhat.com/jenkins/view/All/job/jhadvig/6/

Fixes https://github.com/openshift/origin/issues/15186

I would rather see if we can fix the oct sync openshift-ansible step generated by sjb at the start of the job

Yeah I kinda understand why you want to fix it in the generated step but this is a pretty specific use-case in which we checkout the branch of o-a repository based on the branch against which the PR is sent.  Not sure if this wouldn't be better in the step itself with a proper comment
@stevekuznetsov thoughts ?

Any reason why we don't always want to check out the matching branch if it exists? Seems like this would be applicable to stage, too (but not rebase-1.7)

Closing in favor of https://github.com/openshift/aos-cd-jobs/pull/434


Bluetooth: Host: Doc bt_irk.rpa

Could you spell out “Document” in the commit subject as well? Otherwise looks fine to me.

@jhedberg can you please take a look?


Update blog links in documentation.

Some links, such as this:
https://www.sandromaglione.com/techblog/option_type_and_null_safety_dart
Return 404 and require a manual redirect clickthrough to their new location, in this case:
https://www.sandromaglione.com/articles/option_type_and_null_safety_dart
Please update these.  Thanks!

@SandroMaglione, Could you explain why this is still the issue? It's bogus to me that the link on pubdev to documentation has been broken for so long because you decided to revamp your website. Documentation is basically unusable, and people who are trying to find something are unable to. I suggest separating your personal website from the documentation.


Beta 2: New Docker deployment has Embedded MariaDB issue

📑 I have found these related issues/pull requests
https://github.com/louislam/uptime-kuma/issues/5279
https://github.com/louislam/uptime-kuma/issues/5353
🛡 Security Policy

[X] I agree to have read this project Security Policy

Description
Setting up a new instance, embedded MariaDB gives errors when trying to setup
👟 Reproduction steps
New AWS EC2 instance, t4g.nano, Ubuntu Server 24.04 (ARM64)
sudo apt update
sudo apt install docker.io -y
sudo docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:nightly2
Open browser and go to http://x.x.x.x:3001
Select embedded MariaDB
👀 Expected behavior
New instance of Uptime Kuma ready to use
😓 Actual Behavior
Showing the Docker logs with
sudo docker logs -f uptime-kuma
shows a looping error of MariaDB failing to start with an error
🐻 Uptime-Kuma Version
2.0.0-beta.0-nightly-20241105100618
💻 Operating System and Arch
Ubuntu Server 24.04 (ARM64)
🌐 Browser
Google Chrome
🖥 Deployment Environment
N/A
📝 Relevant log output
Welcome to Uptime Kuma
Your Node.js version: 20.18.0
2024-11-28T00:59:26Z [SERVER] INFO: Env: production
2024-11-28T00:59:28Z [SERVER] INFO: Uptime Kuma Version: 2.0.0-beta.0-nightly-20241105100618
2024-11-28T00:59:28Z [SERVER] INFO: Loading modules
2024-11-28T00:59:30Z [SERVER] INFO: Creating express and socket.io instance
2024-11-28T00:59:30Z [SERVER] INFO: Server Type: HTTP
2024-11-28T00:59:31Z [SERVER] INFO: Data Dir: ./data/
2024-11-28T00:59:31Z [SETUP-DATABASE] INFO: db-config.json is not found or invalid: ENOENT: no such file or directory, open 'data/db-config.json'
2024-11-28T00:59:31Z [SETUP-DATABASE] INFO: Starting Setup Database on 3001
2024-11-28T00:59:31Z [SETUP-DATABASE] INFO: Open http://localhost:3001 in your browser
2024-11-28T00:59:31Z [SETUP-DATABASE] INFO: Waiting for user action...
Request /setup-database-info
2024-11-28T00:59:50Z [SETUP-DATABASE] INFO: Database is configured, close the setup-database server and start the main server now.
2024-11-28T00:59:50Z [SETUP-DATABASE] INFO: The setup-database server is closed
2024-11-28T00:59:50Z [DB] INFO: Database Type: embedded-mariadb
2024-11-28T00:59:50Z [MARIADB] INFO: Embedded MariaDB: /app/data/mariadb is not found, create one now.
2024-11-28T01:00:36Z [MARIADB] ERROR: 2024-11-28  0:59:50 0 [Warning] mariadbd: io_uring_queue_init() failed with errno 95
2024-11-28  0:59:50 0 [Warning] InnoDB: liburing disabled: falling back to innodb_use_native_aio=OFF
2024-11-28  0:59:51 0 [Warning] You need to use --log-bin to make --expire-logs-days or --binlog-expire-logs-seconds work.
Killed

2024-11-28T01:00:36Z [MARIADB] INFO: Starting Embedded MariaDB
2024-11-28T01:00:36Z [MARIADB] INFO: 2024-11-28  1:00:36 0 [Note] Starting MariaDB 10.11.6-MariaDB-0+deb12u1 source revision  as process 72

2024-11-28T01:00:37Z [MARIADB] INFO: 2024-11-28  1:00:36 0 [Note] mariadbd: Aria engine: starting recovery
recovered pages: 0% 10% 21% 33% 43% 54% 67% 80% 90% 100% (0.0 seconds); tables to flush: 5 4 3 2 1 0
 (0.0 seconds);
2024-11-28  1:00:36 0 [Note] mariadbd: Aria engine: recovery done
2024-11-28  1:00:36 0 [Note] InnoDB: Compressed tables use zlib 1.2.13
2024-11-28  1:00:36 0 [Note] InnoDB: Number of transaction pools: 1
2024-11-28  1:00:36 0 [Note] InnoDB: Using ARMv8 crc32 + pmull instructions
2024-11-28  1:00:36 0 [Note] mariadbd: O_TMPFILE is not supported on /tmp (disabling future attempts)
2024-11-28  1:00:36 0 [Warning] mariadbd: io_uring_queue_init() failed with errno 95
2024-11-28  1:00:36 0 [Warning] InnoDB: liburing disabled: falling back to innodb_use_native_aio=OFF
2024-11-28  1:00:36 0 [Note] InnoDB: Initializing buffer pool, total size = 128.000MiB, chunk size = 2.000MiB
2024-11-28  1:00:36 0 [Note] InnoDB: Completed initialization of buffer pool
2024-11-28  1:00:36 0 [Note] InnoDB: File system buffers for log disabled (block size=512 bytes)
2024-11-28  1:00:36 0 [Note] InnoDB: Starting crash recovery from checkpoint LSN=17071
2024-11-28  1:00:36 0 [Note] InnoDB: End of log at LSN=46680
2024-11-28  1:00:36 0 [Note] InnoDB: To recover: 21 pages
2024-11-28  1:00:36 0 [Note] InnoDB: 128 rollback segments are active.
2024-11-28  1:00:36 0 [Note] InnoDB: Removed temporary tablespace data file: "./ibtmp1"
2024-11-28  1:00:36 0 [Note] InnoDB: Setting file './ibtmp1' size to 12.000MiB. Physically writing the file full; Please wait ...
2024-11-28  1:00:36 0 [Note] InnoDB: File './ibtmp1' size is now 12.000MiB.
2024-11-28  1:00:36 0 [Note] InnoDB: log sequence number 46680; transaction id 14
2024-11-28  1:00:36 0 [Note] InnoDB: Loading buffer pool(s) from /app/data/mariadb/ib_buffer_pool
2024-11-28  1:00:36 0 [Note] InnoDB: Cannot open '/app/data/mariadb/ib_buffer_pool' for reading: No such file or directory
2024-11-28  1:00:36 0 [Note] Plugin 'FEEDBACK' is disabled.

2024-11-28T01:00:37Z [MARIADB] INFO: 2024-11-28  1:00:37 0 [Warning] You need to use --log-bin to make --expire-logs-days or --binlog-expire-logs-seconds work.

2024-11-28T01:00:37Z [MARIADB] INFO: Waiting for Embedded MariaDB to start...
2024-11-28T01:00:37Z [MARIADB] INFO: 2024-11-28  1:00:37 0 [Note] Server socket created on IP: '<IP_ADDRESS>'.
2024-11-28  1:00:37 0 [ERROR] Can't start server : Bind on unix socket: No such file or directory
2024-11-28  1:00:37 0 [ERROR] Do you already have another server running on socket: /app/data/run/mariadb.sock ?
2024-11-28  1:00:37 0 [ERROR] Aborting

2024-11-28T01:00:38Z [MARIADB] INFO: Stopped Embedded MariaDB: 1
2024-11-28T01:00:38Z [MARIADB] ERROR: Try to restart Embedded MariaDB as it is not stopped by user
2024-11-28T01:00:38Z [MARIADB] INFO: Starting Embedded MariaDB

I did the same commands on Debian 12 ARM and it worked.

As you have found, it is duplicate of https://github.com/louislam/uptime-kuma/issues/5279.
Will be fixed in the next beta, please follow #5279 for the latest progress.


Add support for iOS and macOS via MoltenVK

This PR adds support for running these examples on iOS and macOS using MoltenVK.
Some examples currently do not run successfully on either or both platforms...but this PR gets the core functionality in place...and provides a base for future fixes to both MoltenVK and to individual examples to allow them to run on iOS and macOS.

Thank you very much for this awesome PR. I don't have any Apple devices to test this, so this is very much appreciated and  great addition 👍
Please give me some time to review it though, before I'll merge this into master 😉

Please consider any licensing issues. Some of the headers include verbiage like "If you read this you agree to a license elsewhere".

@eloj
Good point. Sorry about that...it was unintentional...and a result of starting with files from the MoltenVK demos to build the SW examples.
I'll modify the copyright notices to an MIT license to bring them in line with the other SW files.
@SaschaWillems
I have an update to this PR on its way anyway. It will include a number of fixes to the examples...so that many more examples will be working out of the box. I will include the copyright changes in that update too.
So...perhaps you can hold off merging this PR until I've updated it. It should be ready sometime early next week.
Regarding the logo...we would like to include it...to clarify how the examples work on iOS and macOS...and to recognize Brenwill's contribution. But...if you need to have a policy about that...we understand...and will remove it. The important thing is to make the examples available on iOS and macOS. Let me know.

I agree with @eloj on the copyright issue. Licenses throughout the repository should match and changing them to MIT would be appreciated.
And I'm fine with having the logo in the readme for the MacOS and iOS samples so people can see that this is a Brenwill contribution. I'll also add a note about your contributions in the main readme once merged. Credit where credit is due 😉
One thing I noticed is the size of the assimp libraries. The repo is already pretty big, so is there any way of getting these a bit smaller?

I've addressed the concerns above regarding copyright, logos, and the large AssImp libs. I've also updated the docs, and fixed a number of the examples that were not working on iOS and macOS.
This should be good to go now. Let me know if anything else needs to be addressed.

Thanks for the changes! Looks great so far, will take a closer look at this later this weekend and merge it into master 👍

Just out of curiosity: For all other platforms you need to enable the platform specific instance extension, but I don't see  the ones for iOS or MacOS in there. Aren't those required, or is MoltenVK adding them implicitly?

MoltenVK doesn't actually validate extensions right now...but it should...and I'll add it to the MoltenVK todo list.
In the meantime...I'll add the extension enabling to the SW examples...as you indicate...and I'll issue another PR.

I've submitted PR #349 to add the MoltenVK extension names to vkCreateInstance().


Reviews endpoint

Add a basic /reviews/:productId endpoint that handles GET requests and returns an array of reviews.

good use of status codes


Support of  --pre

I wanted to install octopress 3.0 rc, which is normally installed via
gem install octopress --pre

But
brew gem install octopress --pre

fails with
Could not find a valid gem 'octopress'

Hi @oschrenk
Thanks for opening an issue about this.  I have opened a pull request that should solve the issue here, so hopefully we can get that into homebrew core somewhat soon here.
As mentioned in the pull request, it is a bit of a hacky workaround, so I see that proposed method potentially being depreciated in the future, but for now should solve your problem.

@oschrenk I apologize on the time frame that this has taken to get a fix out.  I just had a quick second to look over what needed to be done to finish this off and realized that Octopress now has a official release available, which should allow you to install it with brew-gem.
Again, sorry for the delay on this, and hopefully I can find some time to finish up testing the fix I have in the PR above.

I'm not super comfortable supporting this feature. Closing.


Delete and view secrets from the sidebar

https://user-images.githubusercontent.com/5660941/194973675-cb671563-d879-49db-b565-8ddc46d5f9e5.mp4
I tried to achieve the same result with less code repetition but was not successful.
Toggling classes directly from JS breaks when the session is updated.
JS.toggle adds a display block which breaks the app secrets switch buttons layout
Negative margins are very inconsistent between browsers and cause an unwanted "jump" effect

JS.toggle adds a display block which breaks the app secrets switch buttons layout

You can pass display: "flex" or similar as an option, would that help?


Create a map upgrade CLI to move asset's to correct locations

For users who do not have 'write' access via the Web Server, provide a CLI to do the upgrade.

Closed by #61


[Marker.io] our portfolio section does not match figma

Steps to reproduce:

go to our portfolio section
compare with figma

Actual result:it does not match the designs
Expected result:if current behaviour is correct, then close this one else fix this.

Reported by: vinod<EMAIL_ADDRESS>- Contact via Marker.io
Source URL: https://proav-stg.webflow.io/education
Issue details: Open in Marker.io
Device typedesktopBrowserChrome <IP_ADDRESS>Screen Size1366 x 768OSWindows 10 (10.0.0)Viewport Size1517 x 712Pixel<EMAIL_ADDRESS>
Figma have old layout so closing this

🤖 Marker.io bot - This issue was marked as ✅ Resolved in Marker.io


Occasional test failure - TADA_FindPotentialDuplicatesMultipleOrgs does not grow dataset

We have noticed occasional failures of this test, although TADA_FindPotentialDuplicatesMultipleOrgs has not been edited recently.
The solution for this issue will require finding example data sets which cause this failure and modifying TADA_FindPotentialDuplicatesMultipleOrgs to address those scenarios.

Example data set that will fail this test:
df` <- TADA_DataRetrieval(startDate = "2006-07-17",
endDate =  "2006-07-18",
statecode =  "DE")

Additional data sets that cause test failures for testing:
df2 <- TADA_DataRetrieval(startDate =  "2023-02-14",
endDate = "2023-02-15",
statecode =  "CO")

df3 <- TADA_DataRetrieval(startDate = "2010-11-30",
endDate =  "2010-12-01",
statecode = "AL" )

@wokenny13 - I think the extra rows are being added in situations where records from the same organization are being identified as duplicates in TADA_FindPotentialDuplicatesMultipleOrgs.

I think the issue may be here:
# get rid of results with no site group added - not duplicated spatially
  dupsites <- subset(dupsites, !dupsites$TADA.MonitoringLocationIdentifier %in% c("No nearby sites")) %>%
    tidyr::separate_rows(TADA.MonitoringLocationIdentifier, sep = ",")

As a result of changes to TADA_FindNearbySites


boardd: no conflate on sendcan

Boardd was dropping messages if sent too fast

Should resolve #1641

@pd0wm should we add the "bool conflate" back to SubMaster's constructor?

Submaster is really designed to have the latest available packet. I think it's fine to have a raw sub socket in this case.


Re-enable gas price from pending transactions with fix

This PR contains the original reverted commit and then  a second commit on top to fix the issue on rinkeby:

// This works better than rust-web3's block_with_txs because some nodes set the miner field to
// null. This does not follow the ethrpc specification and fails deserialization in rust-web3.

https://eth.wiki/json-rpc/API#returns-27
For the staging pods this happens on the rinkeby node but not on the mainnet node (didn't test xdai).
Test Plan
Added test

Correct, it's only miner explicitly being set to null that's the problem. Will make an issue/pr for it on rust-web3.


Fix #1184

I just copied the line above and pasted the value from the issue creator into it. The string I added is probably for an old version of the application, since I had no problems with the icon. This comment was written through a translator, sorry for any mistakes
Before accepting, please seek approval from @KTibow. Since I myself did not check this Pull Request

hey, I don't think this will work, but for the sake of testing how would I build an APK?

@KTibow download the debug file from the actions tab.

actually doesnt help, as that's not the launcher activity, and i just had an outdated version
however if you could make the ha icon use the less detailed version that would be appreciated - see https://github.com/home-assistant/assets/blob/master/logo/logo-small-black.svg
or at least fill in the holes as the current version is way too detailed

So is the icon working as intended? @KTibow


Should warn about memory leaks potentials

https://mythbusters.js.org/#/v8-tips/freeing-memory
using

var foo = { bar: 'hello world' }
foo.bar = undefined // Efficient way (good)

can lead to memory leaks because foo keeps the string key "bar" stored potentially forever. Can happen when objects are used as maps.

not sure if I understand you, the point here is
foo.bar = undefined // Efficient way (good)

instead of
delete foo.bar // Inefficient way (bad)

you keep bar reference in the object, but this is less aggresive than delete the key for the garbage collector.


[Snyk] Security upgrade python from 3.5 to 3.12.3

This PR was automatically created by Snyk using the credentials of a real user.![snyk-top-banner](https://github.com/andygongea/OWASP-Benchmark/assets/818805/c518c423-16fe-447e-b67f-ad5a49b5d123)
Snyk has created this PR to fix 2 vulnerabilities in the dockerfile dependencies of this project.
Keeping your Docker base image up-to-date means you’ll benefit from security fixes in the latest version of your chosen image.
Snyk changed the following file(s):

base/django/1.11.4/Dockerfile

We recommend upgrading to python:3.12.3, as this image has only 205 known vulnerabilities. To do this, merge this pull request, then verify your application still works as expected.
Vulnerabilities that will be fixed with an upgrade:

Issue
Score

Out-of-bounds Write SNYK-DEBIAN10-LIBWEBP-5893093
  829

Out-of-bounds Write SNYK-DEBIAN10-LIBWEBP-5893093
  829

Out-of-bounds Write SNYK-DEBIAN10-LIBWEBP-5893093
  829

Out-of-bounds Write SNYK-DEBIAN10-LIBWEBP-5893093
  829

Resource Exhaustion SNYK-DEBIAN10-NGHTTP2-5953390
  829

[!IMPORTANT]

Check the changes in this PR to ensure they won't cause issues with your project.
Max score is 1000. Note that the real score may have changed since the PR was raised.
This PR was automatically created by Snyk using the credentials of a real user.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
📜 Customise PR templates
🛠 Adjust project settings
📚 Read about Snyk's upgrade logic

Learn how to fix vulnerabilities with free interactive lessons:
🦉 Resource Exhaustion

Checkmarx One – Scan Summary & Details – 7a0c8f3a-482b-4564-946b-ad118a55f797
New Issues

Severity
Issue
Source File / Package
Checkmarx Insight

Path_Traversal
/base/oracle-java/utils/list-versions.py: [57](https://github.com/TheRedHatter/vulhub/blob/snyk-fix-e35fff92bf9cb1e9270cbe2713df9e8f//base/oracle-java/utils/list-versions.py# L57)
Attack Vector

Fixed Issues

Severity
Issue
Source File / Package

Client_DOM_XSS
/electron/CVE-2018-15685/src/index.html: [17](https://github.com/TheRedHatter/vulhub/blob/snyk-fix-e35fff92bf9cb1e9270cbe2713df9e8f//electron/CVE-2018-15685/src/index.html# L17)

Client_Potential_XSS
/electron/CVE-2018-15685/src/index.html: [17](https://github.com/TheRedHatter/vulhub/blob/snyk-fix-e35fff92bf9cb1e9270cbe2713df9e8f//electron/CVE-2018-15685/src/index.html# L17)

Path_Traversal
/python/PIL-CVE-2017-8291/app.py: [37](https://github.com/TheRedHatter/vulhub/blob/snyk-fix-e35fff92bf9cb1e9270cbe2713df9e8f//python/PIL-CVE-2017-8291/app.py# L37)

Path_Traversal
/base/oracle-java/utils/list-versions.py: [57](https://github.com/TheRedHatter/vulhub/blob/snyk-fix-e35fff92bf9cb1e9270cbe2713df9e8f//base/oracle-java/utils/list-versions.py# L57)


[decompiler] Support define-perm

This should be detected by the top level stuff.

The define-perm macro we have uses if, but some files have when and others have if. Not a big deal?

Internally when is just an if without an else where the body is a single form, so it won't be an issue.  Where do you see one with a when? I would expect them to be ifs but i might be missing something.

There's something going wrong with this logic:
https://github.com/water111/jak-project/blob/21fefa0aaa5b502b44bf5a35d9574e76d3e01de6/decompiler/IR2/Form.cpp#L1128
yet in target-h it picks when.
(when (or (not *sidekick*) (zero? *sidekick*))
  (set! *sidekick* #f)
  )

maybe there's a dead set that triggers this check but doesn't print? I forget how that works...

target-h:
(when (or (not *target*) (zero? *target*))
  (set! *target* #f)
  )

(when (or (not *sidekick*) (zero? *sidekick*))
  (set! *sidekick* #f)
  )

main-h:
(when (or (not *dproc*) (zero? *dproc*))
  (set! *dproc* #f)
  )

texture:
(when (or (not *font-texture*) (zero? *font-texture*))
  (set! *font-texture* #f)
  )

game-info-h:
(set! gp-0 (when (or (not *game-info*) (zero? *game-info*))
           (set!
            gp-0
            (new 'static 'game-info :mode 'debug :current-continue #f)
            )
           (set! (-> gp-0 fuel-cell-time) (new 'global 'boxed-array uint64 116))
           (set!
            (-> gp-0 enter-level-time)
            (new 'global 'boxed-array uint64 32)
            )
           (set! (-> gp-0 in-level-time) (new 'global 'boxed-array uint64 32))
           (set! *game-info* gp-0)
           gp-0
           )
  )


Proper Variable Expansion

Currently, dotbot uses os.path.expandvars.
However, in some cases, it may be desireable to follow proper shell parameter substitution. (see: the related manual)
Here is an example usage: I want my zshrc to work. Some systems may define $ZDOTDIR to be $XDG_DATA_HOME/zsh, some may leave it undefined.
The typical solution would be to use ${ZDOTDIR:-$HOME}/.zshrc as the install location. However, without parameter substitution, there is no way to achieve this.

Great idea! I can certainly see how this can be useful.
We probably want to follow the Open Group standard rather than the Bash one.
Is there a Python builtin similar to os.path.expandvars that does this? Or will we have to write something ourselves?

I was meaning to link the Open Group standard, but I was at work (office) and had to find it using my phone, so I just got the one I found first.
Unfortunately I couldn't find a Python builtin that achieve this... Or a package (had a quick look through pypi), so we'll probably have to write one ourselves (maybe make it into a package for others to use?)
The standard is fairly well defined. I see four possible solutions:

delegate the expansion to /bin/sh : should be simplest to implement, but also the slowest
copy /bin/sh (probably bash or mksh) implementation, make it into a separate utility, call that : medium time to implement, still fairly slow due to external exec
copy /bin/sh implementation, make into cython packge... probably a while to implement (I haven't had any experience with cython, have you?)
write an implementation from scratch in pure python, either taking inspiration from bash/mksh or simply following the standard : medium time to implement, most portable (no external deps)

Technically, wordexp(3) can be useful here, but it can be... interesting to work with. (OpenBSD does not implement it, despite being a POSIX standard, on Apple it essentially delegates the expansion to perl... it's a fairly large mess on some systems, as I found out when trying to fix neovim's broken globber).
However, a (VERY) minimalistic implementation of basic expansion using it (no error checking etc) is effectively 10 lines of code.
Fairly good question on how to approach this.

I'd prefer to write an implementation from scratch in pure Python.
For reference, here's the implementation of posixpath.expandvars from Python 3.4:
# Expand paths containing shell variable substitutions.
# This expands the forms $variable and ${variable} only.
# Non-existent variables are left unchanged.

_varprog = None
_varprogb = None

def expandvars(path):
    """Expand shell variables of form $var and ${var}.  Unknown variables
    are left unchanged."""
    global _varprog, _varprogb
    if isinstance(path, bytes):
        if b'$' not in path:
            return path
        if not _varprogb:
            import re
            _varprogb = re.compile(br'\$(\w+|\{[^}]*\})', re.ASCII)
        search = _varprogb.search
        start = b'{'
        end = b'}'
        environ = getattr(os, 'environb', None)
    else:
        if '$' not in path:
            return path
        if not _varprog:
            import re
            _varprog = re.compile(r'\$(\w+|\{[^}]*\})', re.ASCII)
        search = _varprog.search
        start = '{'
        end = '}'
        environ = os.environ
    i = 0
    while True:
        m = search(path, i)
        if not m:
            break
        i, j = m.span(0)
        name = m.group(1)
        if name.startswith(start) and name.endswith(end):
            name = name[1:-1]
        try:
            if environ is None:
                value = os.fsencode(os.environ[os.fsdecode(name)])
            else:
                value = environ[name]
        except KeyError:
            i = j
        else:
            tail = path[j:]
            path = path[:i] + value
            i = len(path)
            path += tail
    return path

So it's not way too complicated, but it's not super simple either.

Maybe we can wrap around this?
Detect any time there is ${c VARIABLE c} (c being different control sequences, as per standard), and use posixpath.expandvars for the actual expansion. Since it does not modify non-existent variables, we can detect when substitution is going to be needed.

Yeah, that could save some effort.

The Open Group spec specifies different cases for when a parameter is set, but null (e.g export abcd). From my quick tests, however, python does not seem to be aware of that situation. Can you look around and see if there's a way to detect those?

Current state: I got (as far as I can tell, for now) basic detection going (including depth-first searches so we expand the innermost things first, to avoid collisions). What I'm going to do (for now) is I'll make null variants work the same as the non-null ones (e.g something-orother will do the same thing as something:-orother) until a decision is made.

Did some testing with various shells, and there seems to be disagreement on what constitutes a "Null Parameter".
According to zsh, export test makes test set but null. According to bash, ksh and mksh, that does not mean it's set, and to make it set but null, one must export test=''.
This might be a zsh bug. I couldn't find a spec from Open Group...
The script I used to test can be found here.
Tested with the following shells:

mksh
zsh
ksh
bash

All the shells except zsh had the same output.
Zsh only differs from the others on one line: it also outputs "tdef is set".
Any insight? Could default to python's detection (which is consistent with the other shells, '' is a value, but without an = it is not).

Nice! You're also supporting command substitution? That's cool.
Depth-first searches? Does the standard allow for nested expansion (I don't know)?
Defaulting to Python's detection (using what's in os.environ) seems reasonable.

The standard does not seem to require it, but every single implementation I see does. Try this, for example ${A:+${PATH:=path is totally defined}}.
Command substitution is fairly trivial to achieve, but it might cause side effects if it directly replaces posix.expandvars. I'm probably going to make command substitution optional (linked to a variable that defaults to false) and essentially pull a subprocess.run (essentially say that if you use this, you must be the one to sanitize it).
Not entirely sure what to do if the variable is false: either keep the value (e.g $(echo hi) would expand to $(echo hi)) or substitute null by default (e.g ab$(echo hi)cd would expand to abcd)

Oh I see. For our purposes, it may be okay to skip recursive substitution if it's more effort.
What's the issue with command substitution and variable expansion? One uses $(...) and the other uses ${...} (or just $...), so they don't conflict.
Btw, we might want to skip implementing ${parameter:=[word]} (assigning default values), because it's kinda weird if we're dependent on execution order.

I already have recursive substitution, it's very easy to implement.
The issue with $(...) is that it has to call something external (very often even a shell), and could be ran on an untrusted string.
Not entirely sure how we're dependent on execution order... the typical use case is for stuff like XDG_CONFIG_HOME, where you go ${XDG_CONFIG_HOME:=$HOME/.config}, that way if it is set, use it, and if it isn't, default to the spec.

I don't think we need to worry about what's in a $(...). Just like Dotbot can run shell commands directly with the shell directive. What's in the install.conf.yaml is trusted.
That being said, I don't know if we want to support $(...) in links. It might be overkill.
Using default values is fine, we just shouldn't assign default values.

If the standard specifies assigning default values (note: this is only with := and =, which have to be explicitly used by the user) there shouldn't be a problem.
Another tidbit: even if we assign values, they will only propagate to our process' children (so e.g if we assign to XDG_CONFIG_HOME, the next shell directives will be able to use it, but it won't affect the outside environment).

Right. But if there's something like this for example:
(suppose $parameter is unset before executing)
- link:
    "a": "~/${parameter:=[a]}"
    "b": "~/${parameter:=[b]}"

Then the results will be dependent on the order in which these are executed.

This use case makes no sense, however.
If $parameter is set, then the two link to the same place.
If it is, I have no clue what the user is expecting by trying to assign different values to the same thing.
Essentially, I don't see a reason not to implement it, especially considering I already have support for it. (I'm planning to clean up a bit and upload an initial version for sanity testing before Monday).

Okay, sure. I guess there's no harm in having it implemented.

I still want to implement %, %%, # and ##, but I need to understand them better first... not entirely sure how I'd make them.
This is because after some thought, I realized I want this to be where my zshrc links: ${ZDOTDIR:-${XDG_CONFIG_HOME:-$HOME}/${${XDG_CONFIG_HOME:-.}%${XDG_CONFIG_HOME}}zsh} (it's quite something, yes).,, I'll probably just define ZDOTDIR for now... Complexity of the parser is increasing slightly (partially because of special cases I hadn't thought of, but I guess I'll show off what I've got done up to now).
Current status: here.
I'm taking a small break (some personal life issues arose), so please accumulate comments and suggestions here until then :)

Whoa progress looks good!
Yeah, take your time, best of luck with everything that's going on.

If you could test / read / give out comments (RFC style), that'd be really appreciated :)
I'm probably not going to be able to work on this for a week or two, so the idea would be to accumulate ideas in that time so I can get to implementing / improving.
The short version of how it functions (to save you time if you do choose to go through the code):

it loops character by character and pushes the status of the string into a stack
see line 121 to 131 for details on what stack statuses do
the stack entry is actually a tuple: tuple[0] is the character responsible for the change in status, tuple[1] is the new status
-2 means that the word has been modified, so parsing has to start from the beginning (non-optimal, but shouldn't be a big deal imo, my rpi2 handles it about as fast as my desktop does)

os_* are the direct "modify os settings" functions
* are the wrapper functions that call the os_* functions if needed.
the param_lambda stuff essentially implement all of 2.6.2 that's currently implemented (see lines 61-64ish, it's essentially just a behavior table)

Ok, I'll take a look soon. Things are a bit crazy right now with projects and finals at university, so it may be a week or two…

Random thought that I wanted to write down so I don't forget -- we need to make sure that variable expansion works as expected on both POSIX systems as well as Windows. Python automatically imports the correct thing for os.path depending on the system, loading either posixpath or ntpath.

Well, this would be a replacement for posixpath.
We can simply have a wrapper as os.path that would choose between our posixpath and ntpath.

:+1:
I just added that comment to make sure that we don't forget :)

FYI there would definitely be more project that could use a way to use a POSIX compatible variable substitution, most of the time the main reason is being able to define a default value.
Example of a project that's looking for a solution to this docker/compose#1377

Possible use case
So I have some systems that I would preferr alternative configs.
Is there a way to say:
bash_aliases
.bash_aliases.$(HOSTNAME) or bash_aliases.$(MAC)
so take bash_aliases unless HOSTNAME or MAC or etc exist
likewise ignore, use .tmux.conf every where expect on A B C machines.
bad example.  maybe its an app i'm installing via dotbot

I think it's too much effort to get this right / enough of an edge case that it's not worth the effort. For the original task:

The typical solution would be to use ${ZDOTDIR:-$HOME}/.zshrc as the install location. However, without parameter substitution, there is no way to achieve this.

There's a workaround by adding ZDOTDIR=${ZDOTDIR:-$HOME} to the ./install script itself. Not pretty (doesn't go in the config file), but it works.


Lava doesn't render at super small sizes

Test was done at 512 size -

Ok this is a vanilla issue, not a me issue

The game renders it relative to where it should be in the chunk instead of where it should be in the world


Encrypt each RBD devices using uniquely generated ID in ceph-csi

Describe the feature you'd like to have
What new functionality do you want?
currently, ceph-csi is supported only vault based encryption to encrypt each rbd device with unique Key, only one kubernetes secret will be used for encryption which will be provided in storage-class.
What is the value to the end user? (why is it a priority?)
if ceph-csi can generate its own secret and use it for encrypting the devices, the encryption will be more secure.
How would the end user gain value from having this feature?
How will we know we have a good solution? (acceptance criteria)
the ceph-csi can create/get a secret and update the secret with some imageID as key and the value as the unique key, the plugin who is responsible for encrypting and decrypting the rbd image can make use of a secret.
we can mount the secrets to some path in pod spec. but it will slow down the operation as the dynamic update of secrets takes some time to reflect in the pod as kubelet needs to sync the secrets and pod volume mounts.
Concern:

ceph-csi need to make sure the secret data is not corrupted when multiple instances are accessing it.
ceph-csi should not generate the different Keys for single RBD image if it's mounted on different nodes

@vasyl-purchel @ShyamsundarR @humblec @dillaman can you please add your thoughts on this one?

With current setup for the encryption using kms it should be easy to add another provider to use k8s secrets.
Currently we use volumeID as a key for kms so with multiple instances accessing it should not cause problems since we create key once and then we read it for all following operations (the only potential issue is if multiple instances try to mount volume at exactly the same time so first GET request returns no passphrase and all of them will try to write it, and it's up to KMS to ensure you're not overriding the value unintentionally)
For the tests - vault tests already checking that when we create a volume and mount it first time - key is populated in vault and after deleting volume - key is gone also.

With current setup for the encryption using kms it should be easy to add another provider to use k8s secrets.
Currently we use volumeID as a key for kms so with multiple instances accessing it should not cause problems since we create key once and then we read it for all following operations (the only potential issue is if multiple instances try to mount volume at exactly the same time so first GET request returns no passphrase and all of them will try to write it, and it's up to KMS to ensure you're not overriding the value unintentionally)

as we support RWX PVC  we need to make sure we are not overwriting the keys if the same operations are performed from the different nodes at the same time.

For the tests - vault tests already checking that when we create a volume and mount it first time - key is populated in vault and after deleting volume - key is gone also.

currently, ceph-csi is supported only vault based encryption to encrypt each rbd device with unique Key, only one kubernetes secret will be used for encryption which will be provided in storage-class.

That's not quite correct, right? The CSI supports a static per-StorageClass LUKS passphrase or a Vault-managed per-PV passphrase. Is the goal with this future to implement a Vault-like service for managing per-PV LUKS passphrases? If so, I would say that it would be better to just integrate w/ the k8s KMS service directly and not try to build your own KMS.

currently, ceph-csi is supported only vault based encryption to encrypt each rbd device with unique Key, only one kubernetes secret will be used for encryption which will be provided in storage-class.

That's not quite correct, right? The CSI supports a static per-StorageClass LUKS passphrase or a Vault-managed per-PV passphrase. Is the goal with this future to implement a Vault-like service for managing per-PV LUKS passphrases? If so, I would say that it would be better to just integrate w/ the k8s KMS service directly and not try to build your own KMS.

I agree with @dillaman, if the intention is to create a kubernetes secrets based KMS for per-PV encryption, we should rather integrate with existing solutions and not (re)create our own.
The RWX discussion, and multi-node update/create of the secret does need handling/testing, but not at the cost of building out a KMS (at least till we run out of options or figure out otherwise).

currently, ceph-csi is supported only vault based encryption to encrypt each rbd device with unique Key, only one kubernetes secret will be used for encryption which will be provided in storage-class.

That's not quite correct, right? The CSI supports a static per-StorageClass LUKS passphrase or a Vault-managed per-PV passphrase. Is the goal with this future to implement a Vault-like service for managing per-PV LUKS passphrases? If so, I would say that it would be better to just integrate w/ the k8s KMS service directly and not try to build your own KMS.

Yes, that's current, it's a static secret embedded into the node-stage secret. which will be passed to the csi plugin.
@dillaman  kubernetes KMS service is something deployed outside of kubernetes like vault service?

@dillaman kubernetes KMS service is something deployed outside of kubernetes like vault service?

Right now it's basically a framework to encrypt k8s secrets within the backend etcd db. So the method to integrate with it would be to have the CSI driver create / delete per-PV k8s Secrets.
Of course, I'm not sure what the value-add is with per-PV LUKS passphrases vs a StorageClass passphrase. Any attack vector that could be used to extract the current StorageClass passphrase could most likely be used to extract the per-PV passphrase.
Looking around at other CSI drivers, the Portworx CSI driver provides a way for individual PVCs to point to their own Secrets in arbitrary namespaces for per-PV encryption. Of course, if you wanted to have the CSI driver pull Secrets from another namespace, the storage admin would need to tweak the RBAC rules for the CSI driver. Additionally, it requires custom annotations within the PVC which breaks any idea of keeping the PVCs generic.
All of this talk, however, does bring up the need for rotating the LUKS passphrases in case you have a leak and need to re-key the volumes.

the only benefit I see to have per-pv passphrase is to reduce chance of attack on this passphrase - i.e. guess it if you have a lot of pvs created from storage class and got access to the volumes itself.
re-encryption is something that is definitely need to be tackled, if there are any examples done in other providers - I'd like to take a look, but don't know when we'll get time to work on it.
currently it is possible to do re-encryption manually in case passphrase compromised - i.e. re-encrypt volume with LUKS and update after the passphrase in vauuult or k8s secrets.


Add Mellow template

Mellow is the default starter template of the Boring Stack. The Boring Stack Mellow is a minimal, simple implementation of User authentication, including

login,
registration,
password reset,
email verification, and
password confirmation.

In addition, Mellow includes a simple "profile" page where your user can update their name, email address, and password.

Hi @DominusKelvin
Is there some sort of design (figma) file to guide the development of this views?

Hey @babblebey there is none, I do have an idea of how the will look mostly just minimal but still useful that folks will build on top of them.
I put out a Tweet for designers who want to contribute to creating the design for Mello. If I don't have any feedback, I will do the designs myself as we plan to get Mellow ready at least for Vue by Wednesday

Sounds great @DominusKelvin
That can then be replicated for React and Svelte for sure.

Sounds great @DominusKelvin
That can then be replicated for React and Svelte for sure.

Yeah exactly. Mellow is first of several templates we will be building to help folks either use them as the basis for their next fullstack JavaScript project or as guides
@babblebey which of these frontend frameworks do you write? Or are you solely backend?

That's a fine one there @DominusKelvin.
I will be contributing to the React ⚛ templates, and be willing to dabble on the backend a little bit too, when I can.

Here is the link for the design of mellow on Figma
https://www.figma.com/file/VQFwlNIP2ZCfQadSqKE8D0/Mellow?type=design&node-id=0-1&mode=design&t=ElSotHFgb9eKcOev-0

Here is the link for the design of mellow on Figma
https://www.figma.com/file/VQFwlNIP2ZCfQadSqKE8D0/Mellow?type=design&node-id=0-1&mode=design&t=ElSotHFgb9eKcOev-0

Great Stuff @DominusKelvin
Let's get to it.


Thanks for watching! OpenAI issue

At the beginning of some media, it seems to be spamming Thanks for watching! over and over. Apparently this is a common issue (the hallucination problem) and I'm wondering how it could be remedied.
More information here: https://github.com/openai/whisper/discussions/679
Example of what I'm seeing:
0
00:00:00,000 --> 00:01:13,380
Thanks for watching! Thanks for watching! Thanks for watching! Thanks for watching!

1
00:01:14,820 --> 00:01:15,780
Thanks for watching!

2
00:01:16,220 --> 00:01:23,820
Thanks for watching! Thanks for watching! Thanks for watching! Thanks for watching!

3
00:01:25,840 --> 00:01:28,120
Thanks for watching!

4
00:01:28,560 --> 00:01:29,560
Thanks for watching!

5
00:01:41,260 --> 00:01:44,260
Thanks for watching!

6
00:01:57,100 --> 00:02:04,220
Thanks for watching! Thanks for watching! Thanks for watching! Thanks for watching!

7
00:02:05,060 --> 00:02:06,560
Thanks for watching!

8
00:02:28,740 --> 00:02:29,420
Thanks for watching! Thanks for watching! Thanks for watching!

9
00:02:35,960 --> 00:02:50,260
Thanks for watching! Thanks for watching!

10
00:02:54,500 --> 00:02:59,400
Thanks for watching!

11
00:03:04,220 --> 00:03:12,780
Thanks for watching! Thanks for watching!

12
00:03:25,980 --> 00:03:29,380
Thanks for watching!

13
00:03:38,600 --> 00:03:39,900
Thanks for watching!

14
00:03:40,340 --> 00:03:40,620
Thanks for watching!

15
00:03:42,180 --> 00:03:43,080
Thanks for watching!

16
00:03:46,180 --> 00:03:46,960
Thanks for watching!

17
00:03:48,280 --> 00:03:53,220
Thanks for watching! Thanks for watching! Thanks for watching! Thanks for watching! Thanks for watching! Thanks for watching! Thanks for watching!

18
00:03:53,820 --> 00:03:54,440
Thanks for watching!

19
00:03:57,420 --> 00:03:59,240
Thanks for watching!

There's nothing that I can do, as it's implemented via Whisper and stable-ts and isn't a subgen implementation problem.  I am considering moving to WhisperX which is supposed to be better at detecting hallucinations.


is humanize rounding correctly?

trying out the humanize function, and it looks like it's broken or perhaps I'm doing something wrong?
iex> Size.humanize!(2147483647)
"2 GB"

this should return 2.14 GB since the round param is default to 2 and<PHONE_NUMBER> bytes is 2.14 GB.
next:
iex> Size.humanize!(2147483647, round: 3)
"2 GB"

how can I please obtain a correct rounded value?

I believe the problem is that you are expecting one gigabyte to be<PHONE_NUMBER> (10^9) bytes but humanize! function (and the rest of functions and macros) works with the assumption that one gigabyte is<PHONE_NUMBER> (2^30) bytes.
Take this for example:
Size.gigabytes(1)
1073741824

Sadly there is not an easy solution apart from upgrading the library to make this distinction between gigabytes and gibibytes, kilobytes and kibibytes, etc.

Thanks for your prompt reply.
I think I got fooled by the fact it returns "GB" and not "GiB" as correct unit symbol.
Yes, it's the Decimal units (10^9) as expected end result for my issue - I'm trying to display storage space to users in my app, and it's preferable to have e.g "2.14 GB" instead of "2 GB".
Here quick example of Python's equivalent library.
> pip install humanize
> python -c "import humanize; print(humanize.naturalsize(2147483647, binary=True, format='%.2f'))"
2.00 GiB
> python -c "import humanize; print(humanize.naturalsize(2147483647, binary=False, format='%.2f'))"
2.15 GB

Seems like humanize macro would benefit from binary: true option and some underlying macros to support it. Are you planning to add such functionality?

Sorry, not for the moment.

That's fine. Thanks for your honestly.
I resolved my issue with file_size library - I'm not its author - just link for others who might want a library with bit and byte based units.


Fix AtTimezone to call field get sql

Coverage remained the same at ?% when pulling 9745e44f106b7929a314cb2f893f840725d99060 on mikeengland:masternew into 374ed1a51372eaf05b5b16122e3ab92014047c47 on kayak:master.


Investigate adding the new native HA WebRTC support

This would be nice when Frigate adds the ability to act as a RTSP proxy rather than just RTMP. I suspect that without it, for people to leverage WebRTC they would still need to create custom camera entities adding their camera's RTSP data to it. Seems to be in the plans for Frigate 0.10.
Of course the above would be nicer in order to reduce direct connections with the camera, but it would also be nice if the card could talk to Frigate API (if it had an API for that, of course) to retrieve the original RTMP feed as configured in the frigate.yaml. That would also prevent users from having to create custom camera entities for all the cameras they want to use with WebRTC. But I suspect the API does not support it, for good reasons, and if the above becomes true, there would not be a need anyway.

As per my update on #331 , direct card <-> Frigate communication is not desirable. Yes, once Frigate supports exposing RTSP I think it'll open some new doors for us. For now though, adding this would let people have a better experience with Nest cameras (the only integration I could find that currently uses the new native support, although I presume it'll grow).


model performance on coco dataset

Thanks for your great work in text-to-image synthesis task.
I have a problem about  DM-GAN on COCO dataset. I have trained your model on coco dataset 120 epoch but I only got 25 IS and this value stuck since 30 epoch. This reuslt is far from yours.  Did you use some tricks during training?

i have the same problem while use coco


option for information notification added

Added a new option(id-4 , color - Blue(#3366FF) ) for informative notifications

Thanks for the suggestion.


v2.0.0-pre8 amd64 docker image issue

Description of the Issue
When I try to export v2.0.0-pre8 amd64 docker image as a tar file, I have a "content digest" not found error.
docker save -o /tmp/logstash-exporter.tar kuskoman/logstash-exporter:v2.0.0-pre8

Error response from daemon: unable to create manifests file: NotFound: content digest sha256:032ffa992421121441d61ae63fcfbbbed1e6e654dfc3c34c66acec05425f50da: not found

docker inspect kuskoman/logstash-exporter:v2.0.0-pre8

[
    {
        "Id": "sha256:4a1ca93cd35f30902acfe3b5b80ed12e744a89f2dd96999eb7730d994e3aeac8",
        "RepoTags": [
            "kuskoman/logstash-exporter:v2.0.0-pre8"
        ],
        "RepoDigests": [
            "kuskoman/logstash-exporter@sha256:4a1ca93cd35f30902acfe3b5b80ed12e744a89f2dd96999eb7730d994e3aeac8"
        ],
        "Parent": "",
        "Comment": "buildkit.dockerfile.v0",
        "Created": "2024-07-23T20:04:43.742320678Z",
        "DockerVersion": "27.1.1",
        "Author": "",
        "Config": {
            "Hostname": "",
            "Domainname": "",
            "User": "65534",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "9198/tcp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "EXPORTER_CONFIG_LOCATION=/app/config.yml"
            ],
            "Cmd": null,
            "Image": "",
            "Volumes": null,
            "WorkingDir": "/",
            "Entrypoint": [
                "/app/main"
            ],
            "OnBuild": null,
            "Labels": null
        },
        "Architecture": "amd64",
        "Os": "linux",
        "Size": 2276,
        "GraphDriver": {
            "Data": null,
            "Name": "overlayfs"
        },
        "RootFS": {
            "Type": "layers",
            "Layers": [
                "sha256:909eeef154b127774902df2b9c21d01b32581fff0f1211a556a021eeb5a5fa81",
                "sha256:c9c1e4e13fef5a2ee0dd7898ae04b8aa4c38980378402b593271ae20afb710a5"
            ]
        },
        "Metadata": {
            "LastTagTime": "2024-08-06T09:25:39.857162626Z"
        }
    }
]

Version of logstash-exporter, or logstash-exporter Image
v2.0.0-pre8
Version of Chart (if applicable)
No response
Operating System/Environment
MacOS
Logs
No response

Configuration problem on my side, can be ignored


Update README-hi.md

We are not participating in Hacktoberfest.
/close
/cc @kubernetes/sig-docs-hi-owners (if the PR is a valid correction, feel free to reopen)

/language hi


Private tangle install command failure.

Bug description
Command failure while running the private tangle install script.
Docker and docker-compose version
Which version of Docker and docker-compose are you running?

Docker version: 20.10.12

Hardware specification
What hardware are you using?

Operating system: Ubuntu
RAM: 1 GB
Cores: 1
Device: Ubuntu VM from digital ocean

Steps To reproduce the bug
Explain how the maintainer can reproduce the bug.

clone one-click-tangle github repo
install dependencies like docker and compose
got to "~/one-click-tangle/hornet-private-net/" directory and run "./private-tangle.sh install"

Expected behaviour
Normally a private tangle with a node, a spammer and a COO should be deployed and running.
Actual behaviour
the script exited with an error.
Errors
root@ubuntu-s-1vcpu-1gb-blr1-01:/one-click-tangle/hornet-private-net# ./private-tangle.sh install
Setting permissions for Hornet...

Creating hornet-private-net_node_run ... done
ERROR: 1
root@ubuntu-s-1vcpu-1gb-blr1-01:~/one-click-tangle/hornet-private-net#
Also, inside the key-pair.txt file, the following was produced:
tool not found.
pwd-hash:            generates a scrypt hash from your password and salt
p2pidentity-gen:     generates a p2p identity private key file
p2pidentity-extract: extracts the p2p identity from the private key file
ed25519-key:         generates an ed25519 key pair
ed25519-addr:        generates an ed25519 address from a public key
jwt-api:             generates a JWT token for REST-API access
snap-gen:            generates an initial snapshot for a private network
snap-merge:          merges a full and delta snapshot into an updated full snapshot
snap-info:           outputs information about a snapshot file
snap-hash:           calculates the sha256 hash of the ledger state inside a snapshot file
bench-io:            benchmarks the IO throughput
bench-cpu:           benchmarks the CPU performance
db-migration:        migrates the database to another engine
db-hash:             calculates the sha256 hash of the ledger state of a database
db-health:           checks the health status of the database
db-split:            split a legacy database into tangle and utxo
coo-fix-state:       applies the latest milestone in the database to the coordinator state file

this now should be fixed by forcing Hornet 1.0.5 as the image , please check @ABresting


Upgrading PostgreSQL — reasons to

Upgrading PostgreSQL is not fun, but there may be pressing reasons to do it sooner than EOL of the current version. This issue is for accumulating such reasons. It may turn out that we won't accumulate sufficient reasons to upgrade before EOL, and that's good to know too!
Currently (September 2024) Central requires v14 (supported through November 12, 2026), v16 has been out for a year, v17 is probably not too far off.
Major reasons

…

Minor reasons

…

"Pity we didn't have this but we worked around it now already anyway"

(pg 15) "Allow unique constraints and indexes to treat NULL values as not distinct" — would have allowed me to fold two very similar tables (user_site_preferences & user_project_preferences) into one, and would've saved some lines of code handling these two tables.

For reference: https://www.postgresql.org/support/versioning/


WIP: start on token endpoint

Signed-off-by: Andrew Keesler<EMAIL_ADDRESS>

Release note:

TODO: what should release note be?

Closing in favor of https://github.com/vmware-tanzu/pinniped/pull/249 so that we can share this branch amongst core team members.


Extend Travis config to add tests against dev-master of PHPUnit

Partially closes #44
I'm not putting it to allow_failures, as we want to see if it's failing, not silently ignore it.

Thank you, @keradus !

you welcome ;)


Error in prepare_template when setting up "custom video code"

Command:
!python -m tools.prepare_template --data_root data/custom --people_ID BAR_APose --model_type smpl --gender neutral --model_path smplx/models/
Result:
0% 0/256 [00:00<?, ?it/s]
Traceback (most recent call last):
File "/usr/lib/python3.7/runpy.py", line 193, in _run_module_as_main
"main", mod_spec)
File "/usr/lib/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/content/drive/MyDrive/ColabNotebooks/NeRF/Anim-NeRF/tools/prepare_template.py", line 86, in
distances_chunk = body_mesh.nearest.signed_distance(points_chunk)
File "/usr/local/lib/python3.7/dist-packages/trimesh/proximity.py", line 307, in signed_distance
return signed_distance(self._mesh, points)
File "/usr/local/lib/python3.7/dist-packages/trimesh/proximity.py", line 231, in signed_distance
closest, distance, triangle_id = closest_point(mesh, points)
File "/usr/local/lib/python3.7/dist-packages/trimesh/proximity.py", line 138, in closest_point
candidates = nearby_faces(mesh, points)
File "/usr/local/lib/python3.7/dist-packages/trimesh/proximity.py", line 43, in nearby_faces
rtree = mesh.triangles_tree
File "/usr/local/lib/python3.7/dist-packages/trimesh/caching.py", line 103, in get_cached
value = function(*args, **kwargs)
File "/usr/local/lib/python3.7/dist-packages/trimesh/base.py", line 811, in triangles_tree
tree = triangles.bounds_tree(self.triangles)
File "/usr/local/lib/python3.7/dist-packages/trimesh/triangles.py", line 338, in bounds_tree
tree = util.bounds_tree(triangle_bounds)
File "/usr/local/lib/python3.7/dist-packages/trimesh/util.py", line 1597, in bounds_tree
import rtree
ModuleNotFoundError: No module named 'rtree'

You can try to pip install rtree.

Thanx. This worked fine.


Empty primary key being inserted

GORM Playground Link

https://github.com/go-gorm/playground/pull/587
Description
From what I understand about gorm, struct fields that are equal to their zero values should be automatically omitted when inserting into a database. Specifically, if the primary key of a struct is equal to its zero value, gorm should not attempt to insert that value. This was the case prior to v1.20.4, which contains this commit, breaking the described functionality.
For example...
import "github.com/google/uuid"

type Person struct {
   ID               uuid.UUID
   FirstName string
   LastName string
}

function CreatePerson(db *gorm.DB) (Person, error) {
  person := {
     FirstName: "John",
     LastName: "Doe",
   }

   tx := db.Debug().Create(&person)
   // EXPECTED debug output: INSERT INTO "persons" ("first_name", "last_name") VALUES ('John', 'Doe')
   // ACTUAL debug output: INSERT INTO "persons" ("id", "first_name", "last_name") VALUES ('00000000-0000-0000-0000-000000000000', 'John', 'Doe')

   return person, tx.Error
}

Hey @chad-bekmezian-snap
try this:
import "github.com/google/uuid"

type Person struct {
   ID               uuid.UUID
   FirstName string
   LastName string
}

func (p *Person) BeforeCreate(tx *gorm.DB) (err error) {
	p.ID = uuid.New()
	return
}

func CreatePerson(db *gorm.DB) (Person, error) {
  person := {
     FirstName: "John",
     LastName: "Doe",
   }

   tx := db.Debug().Create(&person)

   return person, tx.Error
}

Hey @chad-bekmezian-snap
try this:
import "github.com/google/uuid"

type Person struct {
   ID               uuid.UUID
   FirstName string
   LastName string
}

func (p *Person) BeforeCreate(tx *gorm.DB) (err error) {
	p.ID = uuid.New()
	return
}

func CreatePerson(db *gorm.DB) (Person, error) {
  person := {
     FirstName: "John",
     LastName: "Doe",
   }

   tx := db.Debug().Create(&person)

   return person, tx.Error
}

That does of course work, however it does not change the fact that prior to v1.24.4 empty ids were not inserted, as is consistent with Gorm's behavior. Additionally, our enterprise database is generating the uuid, since Gorm omits the zeroed ID field--until now.

cc @jinzhu

@jinzhu I'm facing this issue too, that looks like a regression. Would you accept a PR?

Maybe adding test for this stage can be a useful way to avoid delete this code. 😃 I'm with the same issue 😢

Hi! Sorry, is there any change attached to this issue? 😮

I just opened a PR to solve this, go give it some love https://github.com/go-gorm/gorm/pull/6970


Bumping to newer version of c2s

Mostly minor changes. Diff with c2s.py seems to have a lot of changes but it is essentially going from 8 space tabs to 4 space tabs.

Somehow I don't seem to have the rights to merge.


elyra-pipeline CLI doesn't handle mismatched runtime values for empty pipelines

Describe the issue
Follow up to  https://github.com/elyra-ai/elyra/issues/2037:
$ elyra-pipeline submit empty-airflow.pipeline --runtime-config my_kubeflow_test_instance

────────────────────────────────────────────────────────────────
 Elyra Pipeline Submission
────────────────────────────────────────────────────────────────

Traceback (most recent call last):
  File "/opt/anaconda3/envs/upstream/bin/elyra-pipeline", line 8, in <module>
    sys.exit(pipeline())
  File "/opt/anaconda3/envs/upstream/lib/python3.7/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/opt/anaconda3/envs/upstream/lib/python3.7/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/opt/anaconda3/envs/upstream/lib/python3.7/site-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/opt/anaconda3/envs/upstream/lib/python3.7/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/opt/anaconda3/envs/upstream/lib/python3.7/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/opt/anaconda3/envs/upstream/lib/python3.7/site-packages/elyra/cli/pipeline_app.py", line 263, in submit
    _preprocess_pipeline(pipeline_path, runtime=runtime, runtime_config=runtime_config)
  File "/opt/anaconda3/envs/upstream/lib/python3.7/site-packages/elyra/cli/pipeline_app.py", line 141, in _preprocess_pipeline
    runtime_description = primary_pipeline['app_data']['properties']['runtime']
KeyError: 'properties'

To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Screenshots or log output
If applicable, add screenshots or log output to help explain your problem.
Log Output

Paste the log output here.

Expected behavior
A clear and concise description of what you expected to happen.
Deployment information
Describe what you've deployed and how:

Elyra version: [e.g. 1.5.3]
Installation source: [e.g. PyPI, conda, from source, official container image, custom container image]
Deployment type: [e.g. local installation, Docker, Kubernetes, Kubeflow [notebook server] , Open Data Hub]
Operating system: [e.g. macos, linux]

Might be resolved by https://github.com/elyra-ai/elyra/pull/2041?


kubectx errors with Ubound Variable

Whenever I run kubectx I get the error message in the output: /usr/local/bin/kubectx: line 250: $@: unbound variable.
I assume this is a reference to https://github.com/ahmetb/kubectx/blob/3504e66edbe51e1bcbb57cd02b2cf6972e9d501d/kubectx#L250
I'm on MacOS (amd64 intel CPU).
kubectx version 0.9.4, installed via brew. Tried reinstalling, no difference.
Happens in both Bash and zsh.
FWIW, kubens also errors - with /usr/local/bin/kubens: line 226: $@: unbound variable
Any idea what might I might be missing in my env?
Edit: I should also add that kubectx some-context actually works fine, it's just the bare kubectx which should list all contexts which is failing for me.

There's a very decent chance your bash version has updated to a newer version that broke something.
I cannot repro this right now. But if you provide a full output with DEBUG=1 env var set, I can take a look.
To unblock yourself, go to Releases tab and download the binary version of kubectx implemented in Go.

Last call to provide s repro with DEBUG=1.

Thank you for the reminder, apologies for the delay, I had missed the original notification. I will grab latest and try to reproduce again tonight with DEBUG=1.

Output with DEBUG=1:
$ DEBUG=1 kubectx
+ set -eou pipefail
+ IFS='
	'
+ SELF_CMD=/usr/local/bin/kubectx
+ KUBECTX=/Users/sod/.kube/kubectx
/usr/local/bin/kubectx: line 250: $@: unbound variable

Running on zsh 5.7.1 (x86_64-apple-darwin19.0)
I grabbed the binary version from the release and that does indeed work for me, so I'll just pop that in my path. If you'd like me to try anything else, I'm happy to assist - but this workaround fixes all my issues so we can close this out if it's a niche edge case / environment-specific issue not affecting anyone else.

I assume kubectx is running in bash (despite you launch it from zsh) so I may need your bash version as well. 😇

Apologies for the delay. Bash version info below:
$ bash --version
GNU bash, version 4.0.0(1)-release (i386-apple-darwin19.4.0)
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law


[Automation] Generate Fluent Lite from communication#package-preview-2022-07

[Automation] Generate Fluent Lite from communication#package-preview-2022-07

/azp run prepare-pipelines

/azp run java - communication - ci


[Suggestion] Warning Text Font Size

The warning text is way too big, and the ability to change the size would drastically make it easier to customize and cause fewer issues with text cutting off.

There's an option to scale down the entire element.

That changes the size of the entire overlay which also makes the icon font smaller.


[Bug] Word level timestamps are wrong

Using version 2.9.0 Xenova/whisper-base.en with return_timestamps: true it produces timestamps which are wrong:
const audio = new Float32Array(await (await fetch("audio.pcm")).arrayBuffer());
const pipe = await pipeline("automatic-speech-recognition", "Xenova/whisper-base.en");
const result = await pipe(audio, {num_beams:1, do_sample:false, temperature:1,
	top_k:0, chunk_length_s:30, stride_length_s:5, return_timestamps:"word"});
console.log(JSON.stringify(result));

prints:
...
{"text":" get","timestamp":[37.82,38.02]},
{"text":" rid","timestamp":[38.02,38.26]},
{"text":" of","timestamp":[38.26,38.46]},
{"text":" all","timestamp":[38.46,38.64]},
{"text":" these","timestamp":[38.64,38.84]},
{"text":" buttons","timestamp":[38.84,39.18]},
{"text":" and","timestamp":[39.18,40.42]},
{"text":" just","timestamp":[40.42,40.56]},
{"text":" make","timestamp":[40.56,40.76]},
{"text":" a","timestamp":[32.47,32.59]},
{"text":" giant","timestamp":[32.59,32.89]},
{"text":" screen.","timestamp":[32.89,34.01]}]}

Notice how timestamp for last 3 texts is messed, starting at ~32, which is lower then some previous timestamps. These timestamps are invalid and start time should be around ~41 (not 32)
Use attached audio.zip PCM file as a source.
This is not a regression as I can reproduce the issue with v2.6.1.
Using "small" model instead of "base" produces the same problem, which makes me think that the bug is somewhere in JS sources, potentially related to how chunks are handled

Yep that's definitely an issue, thanks for reporting! If you don't mind, could you test in the python library to make sure the bug isn't present there too?

I have tested with https://colab.research.google.com/drive/1hwTlVlkATbyXZCZ0XY5aSP7qZcBfHC-W?usp=sharing#scrollTo=RlPSTcP8U_nI and that one produces correct timestamps


Support one of these parameters as required?

I have an app which uses three parameters for a request, the paramType is 'form'. I want it to be at least one of these 3 parameters as required. Does swagger support that?

Closing this for now. Please reopen if still an issue.


Linux kernel update for the project

This is interesting: https://lwn.net/Articles/713963/

So, if you rely on 3.18.y, you should upgrade.  But really, go use 4.4.y
or 4.9.y, those are both much better, and far more secure.

14.04 is using 3.13 as default (Ubuntu provides extended support for it by backporting patches and so) but it worth considering moving to Linux kernel 4.4 which is officially supported by Ubuntu and is apt-get install away.
The Vagrant development box and the ServerCentral servers are on Ubuntu 14.04 and kernel 3.13 (the default).
4.4-family has quite a lot of improvements including a major patches about the NUMA scheduling which seems to affect the current preview of Round 14.
The idea is mentioned here about Vagrant image: 2496.

There is a ongoing migration to newer Ubuntu. So this becomes irrelevant.


[AutoPR sql/resource-manager] chore: jsonfmt sql

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/7103

(message created by the CI based on PR content)

This PR has been merged into https://github.com/Azure/azure-sdk-for-python/pull/7047


Iterator parameter names changed

https://dart-review.googlesource.com/c/sdk/+/192385 caused the following:
   info • Don't rename parameters of overridden methods • packages/flutter/lib/src/foundation/basic_types.dart:139:38 • avoid_renaming_method_parameters
   info • Don't rename parameters of overridden methods • packages/flutter/lib/src/foundation/basic_types.dart:149:57 • avoid_renaming_method_parameters

log
Relevant file: https://github.com/flutter/flutter/blob/master/packages/flutter/lib/src/foundation/basic_types.dart
cc @lrhn, please let me know if you need help.

Thanks for the fix -- replaced with a manual roll in https://github.com/flutter/flutter/pull/82310 so we don't need to add, then remove, ignore lines to avoid triggering lints about difference from the current SDK names.


Fix Missing Permission

Fixes missing permission, now returns an Exception.
Related:

#1168 (not sure if gets fixed)
#1172
#1240 (PR)

Rebased this to v1.0-pre-release since this is a breaking change.


Not everything should be grabbable by the hands

Pretty sure this is the cause of a crash when the hands get close together, but it's also just a problem if the hands happen to be on top of multiple entities with colliders when gripping - as whichever entity happens to be seen by the grabbing system first will get grabbed, even if it's not actually intended to be interacted with.
Solution: Add a Grabbable marker component

NICE CATCH


Edit File

Feature
As a User, I want a feature to edit existing files and store the updated version
Reason
This is essential to correct errors inside the file annotations.
Criteria

[ ] open file
[ ] display current annotations
[ ] edit annotations
[ ] save updated version

Duplicate see file issue


May I ask if it is possible to upload the file for Generate NTU RGB+D 60 or NTU RGB+D 120 dataset？

May I ask if it is possible to upload the file for Generate NTU RGB+D 60 or NTU RGB+D 120 dataset？

I will upload those codes as soon as possible.
If you need those codes now, you can refer CTR-GCN github page.
Thank you!

Thank you！

I will upload those codes as soon as possible.
If you need those codes now, you can refer CTR-GCN github page.
Thank you!

Hello, I have replicated your experiments on the NTU 60 and 120 datasets. I would like to replicate the experiments on the NW-UCLA dataset now, but I found that there is no config file for the NW-UCLA dataset in the warehouse. Can you upload it? Thank you.

I will upload those codes as soon as possible.
If you need those codes now, you can refer CTR-GCN github page.
Thank you!

Hello, I have replicated your experiments on the NTU 60 and 120 datasets. I would like to replicate the experiments on the NW-UCLA dataset now, but I found that there is no config file for the NW-UCLA dataset in the warehouse. Can you upload it? Thank you.

Hello, I also replicated the experiment on the NTU 60 and 120 datasets. But the accuracy of my replication is not as high as the accuracy in the article. I would like to ask if you have achieved the accuracy mentioned in the article? I suspect that this issue is caused by different environmental configurations. So may I ask if you are willing to share the version information of your Python, PyTorch, CUDA, and CuDNN? Your sharing will be of great help to me. Thank you！


GLES2 Flickering lights

Godot version:
3.1 Stable
OS/device including version:
Zorin OS 12 Core (Ubuntu 16.04 LTS)
Issue description:
Lights flicker in GLES2 wen moving/rotating the view/camera, this happens in editor, game and Android (maybe more but I only tested those). It happens to all light types (omni, spot and directional).
https://youtu.be/MZhBTE5mzkY
Steps to reproduce:
Just add some lights to an GLES2 scene and move the view/camera around.

I guess #28485 is related.
your scene has a pretty big mesh with more than 8 lights.

No it doesn't. There are only 3 lights total, and the mesh is not a solid chunk, and even if it was, it shouldn't do that.

Can you reproduce this in 3.2alpha3?

Looks like a duplicate of https://github.com/godotengine/godot/issues/28819 which was already fixed in master

It seems to be fixed on 3.2 alpha 3


Add review and design notes

Following the discussion on Monday document the desire for the separation of concerns even if we won't be there at the start.

@stsquad please fix the failure 😀

@mathieupoirier can you also approve this PR as an ACK that you agree to becoming a maintainer? The process of adding maintainers is not yet documented, so at this point is tribal knowledge. I have an issue in my backlog to formally document it.
Once you approve this PR as well, I'll approve it, merge it, and add you both (@stsquad and @mathieupoirier) as maintainers.

@mathieupoirier @stsquad you should have an invitation pending to become maintainers of this repo.


I can't open terminal in vs code

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version: 1.61.1
OS Version: Windows 10 Pro Insider Preview
just see this I can't do anything

.

I am also having the same issue I have to use my cmd for the terminal work.

/duplicate #134418


Captions regression in 3.3.0

Have you read the FAQ and checked for duplicate open issues?
Yes
What version of Shaka Player are you using?
3.3.0
Can you reproduce the issue with our latest release version?
Yes
Can you reproduce the issue with the latest code from master?
I can on the nightly demo
Are you using the demo app or your own custom app?
Custom
If custom app, can you reproduce the issue using our demo app?
Yes
What browser and OS are you using?
Brave, Linux
What are the manifest and license server URIs?
https://bin.snopyta.org/?b692293141083c43#7jpXJvfKgK6JMxQ8JZFpHqkmTbtUmm6gV2QkqcZRtxCU
What configuration are you using?  What is the output of player.getConfiguration()?
Default / Demo
What did you do?
const player = document.querySelector("video").ui.getControls().getPlayer();
player.addTextTrackAsync("https://...", "EN", "SUBTITLE", "application/ttml+xml", null, "ENGLISH");

What did you expect to happen?
When the captions have 2 lines, they shouldn't be overlapped.
What actually happened?
The captions appear overlapped.

It looks like this is a result of https://github.com/google/shaka-player/commit/cdeffbb9e6afcc68cb2165bcc0c99be20c9cb153

Maybe this related to https://github.com/google/shaka-player/issues/3741?

That might be the case, yes. Reverting the line of code that seems to be causing this also looks to fix that issue.

@theodab Did you find a solution for this?

Yeah, I believe so.
I think the problem is that our TTML text parser, if you assign a region to an element, also assigns that region to all of that element's descendants.
https://github.com/google/shaka-player/commit/cdeffbb9e6afcc68cb2165bcc0c99be20c9cb153, on further inspection, wasn't really the source of the problem; it just exposed the problem, by removing the logic in the displayer that said to ignore regions if there weren't on root elements.
So the fix I am working on right now is to just only assign a region if it's set directly in the element, and ignore inherited regions for the purposes of positioning.
I just want to take some time first to hopefully figure out whether or not this is going to break some other use case.

Another example with the same error:
<?xml version="1.0" encoding="utf-8"?>
<tt xml:lang="" xmlns="http://www.w3.org/ns/ttml" xmlns:tts="http://www.w3.org/ns/ttml#styling">

		<styling>