Use sonar-fork-analysis action

Hi, sorry it took so long but I finally found the time to look into the Sonar problem.
I ended up refactoring the majority of the hacky workarounds in a separate github action https://github.com/EvaristeGalois11/sonar-fork-analysis so it could be more easily reused.
This pull request will most likely fail because workflow of type workflow_run are taken from the default branch instead of the pull request one, but the fix should work fine after being merged.
Close #783

@EvaristeGalois11 that's amazing, thank you! Great idea to make it a reusable action. I think this will benefit a lot of other projects that use Sonar.
We'll need another PR to test it :)

Thank you @armandino, I'm planning to add gradle support too so it can be used by even more people :)
Do you mind if I reference instancio in the readme as a real life example of how to use the action with maven?

Do you mind if I reference instancio in the readme as a real life example of how to use the action with maven?

Sure thing! I also wanted to mention it in this thread:
https://community.sonarsource.com/t/how-to-use-sonarcloud-with-a-forked-repository-on-github/7363/34
It's the one that always came up in my search when I was looking for a solution. If you don't mind, I'll post a reply there.

Sure thing! I also wanted to mention it in this thread:
https://community.sonarsource.com/t/how-to-use-sonarcloud-with-a-forked-repository-on-github/7363/34
It's the one that always came up in my search when I was looking for a solution. If you don't mind, I'll post a reply there.

Oh that's a really great idea, thank you!


[comp:select] select 的label-key 为 value时, v-model的值异常

[x] I have searched the issues of this repository and believe that this is not a duplicate.

Reproduction link
https://codesandbox.io/s/festive-christian-9qw56j?file=/src/Demo.vue
Steps to reproduce
见复现连接
What is expected?
label-key 为 value时, v-model的值正常
What is actually happening?
label-key 为 value时, v-model的值异常
Environment Info
"@idux/cdk": "^1.0.0-beta.8",
    "@idux/components": "^1.0.0-beta.8",
    "@idux/pro": "^1.0.0-beta.8",

closed #892


fix: iframe event when visible/invisible

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


Hi, does the google colab support training dreambooth on SDXL?

Hi i have a few questions
1st, does the google colab fast-stable diffusion support training dreambooth on SDXL?
2nd, I see there's a train_dreambooth.py and train_dreambooth_lora.py. What's the difference between them? i also see there's a train_dreambooth_lora_sdxl.py, when will there be a pure dreambooth version of sdxl? i.e train_dreambooth_sdxl.py. Another question is, is it possible to pass negative prompt into SDXL? Thank you so much Ben!

The one on google colab fast stable diffusion is using full dreambooth or dreambooth lora? Whats the difference between full dreambooth and dreambooth lora? Sorry if its a silly question

The one on google colab fast stable diffusion is using full dreambooth or dreambooth lora? Whats the difference between full dreambooth and dreambooth lora? Sorry if its a silly question

LoRA is a smaller model less than 1GB that contains the trained concept, can be plugged-in in A1111, not as good as full dreambooth, but in the SDXL case, it's good enough

what do you mean by full dreambooth here? The actual dreambooth model? From what i understand, dreambooth is a model and it can be combined with various finetune techinque such as Lora, am i correct? What do you mean by full dreambooth here. What finetune technique does the fast-stable-diffusion google colab use? Full dreambooth?

colab notebook offers full dreambooth for v1.5 and v2.1, meaning the output model is the full 2gb model, a LoRA is no more than 200mb.

when will sdxl training feature be added on google colab?

when will sdxl training feature be added on google colab?

probably won't be added to colab, google is contently putting obstacles to such notebooks, so at the moment it's avaliable on Runpod and Paperspace only

i'm building a web application for my side project, is it possible to know the code to run training and inference for sdxl model? Thanks!

https://github.com/TheLastBen/diffusers/blob/main/examples/dreambooth/train_dreambooth_rnpd_sdxl_lora.py

I have a quick question, in the google colab fast-stable-diffusion, it doesn't seem to generate regularization images, i thought dreambooth requires regularization image to effectively train your face. Did you intentionally leave it out?

My dreambooth method is different, it doesn't use regularization, and the instance prompt is just one single unknown token.

Quick question, what's the difference between train_dreambooth_rnpd_sdxl_lora.py and train_dreambooth_sdxl_lora.py? Which one should i use?

I think the only differences are vae.to(accelerator.device, dtype=torch.float32) ->  vae.to(accelerator.device, dtype=weight_dtype)
and
batch["pixel_values"]=(vae.encode(batch["pixel_values"].to(accelerator.device, dtype=weight_dtype)).latent_dist.sample() * vae.config.scaling_factor)

they are the same, just tiny changes

Did you update the fast dreambooth jupyter notebook? I now ran into issue of python version. Do you know why this happened? Also do you have the code to run inference for sdxl model?
self.process_distribution(spec, dist, deps)

File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 784, in process_distribution
distros = WorkingSet([]).resolve(
File "/usr/lib/python3/dist-packages/pkg_resources/init.py", line 781, in resolve
dist = best[req.key] = env.best_match(
File "/usr/lib/python3/dist-packages/pkg_resources/init.py", line 1066, in best_match
return self.obtain(req, installer)
File "/usr/lib/python3/dist-packages/pkg_resources/init.py", line 1078, in obtain
return installer(requirement)
File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 712, in easy_install
return self.install_item(spec, dist.location, tmpdir, deps)
File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 738, in install_item
dists = self.install_eggs(spec, download, tmpdir)
File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 923, in install_eggs
return self.build_and_install(setup_script, setup_base)
File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 1191, in build_and_install
self.run_setup(setup_script, setup_base, args)
File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 1177, in run_setup
run_setup(setup_script, args)
File "/usr/lib/python3/dist-packages/setuptools/sandbox.py", line 253, in run_setup
raise
File "/usr/lib/python3.8/contextlib.py", line 131, in exit
self.gen.throw(type, value, traceback)
File "/usr/lib/python3/dist-packages/setuptools/sandbox.py", line 195, in setup_context
yield
File "/usr/lib/python3.8/contextlib.py", line 131, in exit
self.gen.throw(type, value, traceback)
File "/usr/lib/python3/dist-packages/setuptools/sandbox.py", line 166, in save_modules
saved_exc.resume()
File "/usr/lib/python3/dist-packages/setuptools/sandbox.py", line 141, in resume
six.reraise(type, exc, self._tb)
File "/usr/lib/python3/dist-packages/setuptools/_vendor/six.py", line 685, in reraise
raise value.with_traceback(tb)
File "/usr/lib/python3/dist-packages/setuptools/sandbox.py", line 154, in save_modules
yield saved
File "/usr/lib/python3/dist-packages/setuptools/sandbox.py", line 195, in setup_context
yield
File "/usr/lib/python3/dist-packages/setuptools/sandbox.py", line 250, in run_setup
_execfile(setup_script, ns)
File "/usr/lib/python3/dist-packages/setuptools/sandbox.py", line 45, in _execfile
exec(code, globals, locals)
File "/tmp/easy_install-n4cy5z6p/numpy-1.25.1/setup.py", line 22, in
RuntimeError: Python version >= 3.9 required.

i got the error from running  python3 setup.py install (which is python 3.8)

i fixed that issue, by using the older version of transformers and numpy. Another issue i have is i got this error
Traceback (most recent call last):
File "/home/ubuntu/content/diffusers/examples/dreambooth/train_dreambooth_rnpd_sdxl_lora.py", line 782, in
main()
File "/home/ubuntu/content/diffusers/examples/dreambooth/train_dreambooth_rnpd_sdxl_lora.py", line 777, in main
network.save_weights(model_path, torch.float32, None)
File "/home/ubuntu/content/diffusers/examples/dreambooth/lora_sdxl.py", line 1005, in save_weights
torch.save(state_dict, file)
File "/home/ubuntu/.local/lib/python3.8/site-packages/torch/serialization.py", line 440, in save
with _open_zipfile_writer(f) as opened_zipfile:
File "/home/ubuntu/.local/lib/python3.8/site-packages/torch/serialization.py", line 315, in _open_zipfile_writer
return container(name_or_buffer)
File "/home/ubuntu/.local/lib/python3.8/site-packages/torch/serialization.py", line 288, in init
super().init(torch._C.PyTorchFileWriter(str(name)))
RuntimeError: [enforce fail at inline_container.cc:365] . invalid file name: .safetensors
this is my command
accelerate launch /home/ubuntu/content/diffusers/examples/dreambooth/train_dreambooth_rnpd_sdxl_lora.py
--image_captions_filename
--train_text_encoder
--pretrained_model_name_or_path="stabilityai/stable-diffusion-xl-base-0.9"
--instance_data_dir=/home/ubuntu/content/VenusAI/Avatar/Sessions/test/instance_images
--output_dir=/home/ubuntu/content/VenusAI/Avatar/Sessions/test/output
--captions_dir=/home/ubuntu/content/VenusAI/Avatar/Sessions/test/captain
--instance_prompt=""
--seed=123456
--resolution=1024
--mixed_precision=fp16
--train_batch_size=1
--gradient_accumulation_steps=1 --gradient_checkpointing
--use_8bit_adam
--learning_rate=2e-6
--lr_scheduler="linear"
--lr_warmup_steps=0
--max_train_steps=80
i thought you can pass in the safetensor file no?

sorry if i'm asking too much, but how do i use convert_original_stable_diffusion_to_diffusers.py to convert .safetensor sdxl file to diffusers so that i can pass the output into pretrained_model_name_or_path to run
accelerate launch /home/ubuntu/content/diffusers/examples/dreambooth/train_dreambooth_rnpd_sdxl_lora.py
--image_captions_filename
--train_text_encoder
--pretrained_model_name_or_path="stabilityai/stable-diffusion-xl-base-0.9" \
--instance_data_dir=/home/ubuntu/content/VenusAI/Avatar/Sessions/test/instance_images
--output_dir=/home/ubuntu/content/VenusAI/Avatar/Sessions/test/output
--captions_dir=/home/ubuntu/content/VenusAI/Avatar/Sessions/test/captain
--instance_prompt=""
--seed=123456
--resolution=1024
--mixed_precision=fp16
--train_batch_size=1
--gradient_accumulation_steps=1 --gradient_checkpointing
--use_8bit_adam
--learning_rate=2e-6
--lr_scheduler="linear"
--lr_warmup_steps=0
--max_train_steps=80

I'm a beginner programmer and have spent the past few days browsing stackoverflow and the relevant communities, but couldn't find the solution to my problem. Would appreciate if anyone has any insight to the following.
I am trying to train my dreambooth using the colab: https://colab.research.google.com/github/ShivamShrirao/diffusers/blob/main/examples/dreambooth/DreamBooth_Stable_Diffusion.ipynb
But when tried to train on stabilityai/stable-diffusion-xl-base-1.0 and default settings, I encountered:
Revision Not Found for url: https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/fp16/model_index.json. Invalid rev id: fp16
So I removed fp16 and then encountered:
AttributeError: 'UNet2DConditionModel' object has no attribute 'add_embedding'. Did you mean: 'class_embedding'?
I tried various solutions like updating my python and changing to a different diffuser version, but still encountered the error above. It seems i'd have to dig into the source code, but as a beginner programmer I have barely any idea what I'm doing. Again, would appreciate if anyone has any idea or point me to the correct repo.


Occasionally getting "No Access-Control-Allow-Origin header" error

Hi,
Sometimes when I use the search() method I get the following error:
No Access-Control-Allow-Origin header is present on the requested resource. Origin [...] is therefore not allowed access. The response had HTTP status code 403.

I was wondering if you had an idea why I'm getting this error and why it only occurs sometimes. From what I've read, this error suggests that the Reddit API is occasionally not returning all the necessary headers but I feel that it's more likely I messed up somewhere.
Thanks!
P.S. If it's important. I was supplying snoowrap with an anonymous token using the following function:
fetchAnonymousToken: function() {
    const form = new FormData();
    form.set('grant_type', 'https://oauth.reddit.com/grants/installed_client');
    form.set('device_id', 'DO_NOT_TRACK_THIS_DEVICE');
    return fetch('https://www.reddit.com/api/v1/access_token', {
        method: 'post',
        body: form,
        headers: { authorization: `Basic ${btoa(clientId + ':')}` },
        credentials: 'omit',
    }).then(response => response.text())
      .then(JSON.parse)
      .then(tokenInfo => tokenInfo.access_token)
      .then(anonymousToken => {
          const anonymousSnoowrap = new snoowrap({ accessToken: anonymousToken });
          anonymousSnoowrap.config({ proxies: false, requestDelay: 1000 });
          anonymous_requester = anonymousSnoowrap;
          lscache.set('anonymous_requester_json', anonymousSnoowrap);
          console.log('Got anonymous snoowrap requester');
      });
}

my bad, the issue was that my access token had expired


[Toast] Screen readers read title twice

Provide a general summary of the issue here
useAriaToast returns toastProps that have the same linked element in aria-labelledby and aria-describedby, making screen readers read the title twice, instead of title first, then description.
🤔 Expected Behavior?
aria-labelledby should link the title element, while aria-describedby should link to the description element
😯 Current Behavior
Both aria-labelledby and aria-describedby use the title ID
💁 Possible Solution
I'm not familiar with the codebase but I think useSlotId is generating the same ID as useId in the title. I would be happy to help with a PR for this!
🔦 Context
No response
🖥 Steps to Reproduce
https://codesandbox.io/s/stoic-mccarthy-v3spgh?file=/src/App.js:0-1353
Version
3.0.0-beta.6
What browsers are you seeing the problem on?
Chrome
If other, please specify.
No response
What operating system are you using?
OSX
🧢 Your Company/Team
No response
🕷 Tracking Issue
No response

I'm not sure I'm seeing the same issue, it sounds like you were getting the same id as aria-labelledby and aria-describedby?

I'm not sure I'm seeing the same issue, it sounds like you were getting the same id as aria-labelledby and aria-describedby?

Yes, and I'm actually not able to reproduce it again 😵💫 I was certain I saw that behaviour in my CodeSandbox, so I don't know it might've been my browser. Closing until I find a way to repro, sorry for taking your time!


Lang cookie missing secure/httpOnly attributes

Gitea version: 1.10.2
Git version: 2.24.0
Operating system: Linux
Database:

[X] MySQL

Can you reproduce the bug at https://try.gitea.io:

[X] Yes (provide example URL)

Description
I've configured my Gitea instance with CSRF_COOKIE_HTTP_ONLY and COOKIE_SECURE:
; Set false to allow JavaScript to read CSRF cookie
CSRF_COOKIE_HTTP_ONLY              = true
; If you use session in https only, default is false
COOKIE_SECURE     = true

which works fine, except for the lang cookie that doesn't seem to respect that setting:

resulting in a security scanner complaining about the cookie missing the secure and httpOnly attributes.

I think it all boils down to the i18n module for macaron-go : https://github.com/go-macaron/i18n/blob/5a5348d12f10480196f7376cf48de94fa93eb236/i18n.go#L202

My bad, I just saw that i18n in Gitea is a fork.

@rodolpheh thanks for your work! Looks like the changes also have been pulled into the i18n Gitea fork in the meantime. Is there any option which allows to enable this or is currently the only way to enable/test this to manually change the settings which are off by default in i18n.go before compiling Gitea?

Sorry I have a terrible memory and barely remembered doing that :smile: . Unfortunately it seems that I haven't pushed any changes that would allow setting those in Gitea. I had to dig a little before finding what I had changed in Gitea to make it work. Please find attached a patch file until a proper push is made on Gitea. I pulled the latest sources to make sure this works so hopefully it should work for you.
After applying this patch, the Secure and HttpOnly flags should be added if you had COOKIE_SECURE and CSRF_COOKIE_HTTP_ONLY set to true in your app settings.
macaron.go.patch.txt

@rodolpheh Thanks for the hint, I couldn't apply your patch, probably because I build from source so I had no /routers/routes/macaron.go b/routers/routes/macaron.go file to begin with.
Based on your patch I went with this: gitea-1.13.1-lang-cookie.txt. Not sure if it's ready for a PR like it is, but it appears to do the trick:

@rodolpheh Thanks for the hint, I couldn't apply your patch, probably because I build from source so I had no /routers/routes/macaron.go b/routers/routes/macaron.go file to begin with.
Based on your patch I went with this: gitea-1.13.1-lang-cookie.txt. Not sure if it's ready for a PR like it is, but it appears to do the trick:


Attempt to set up Qulice static analysis

Codecov Report

Merging #1 (b0e7359) into master (4c63cc0) will not change coverage.
The diff coverage is 100.00%.

@@             Coverage Diff             @@
##              master        #1   +/-   ##
===========================================
  Coverage     100.00%   100.00%
  Complexity         3         3
===========================================
  Files              1         1
  Lines              5         6    +1
  Branches           0         1    +1
===========================================
+ Hits               5         6    +1

Impacted Files
Coverage Δ

src/main/java/org/uast/astgen/Main.java
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


Fixes for upgraded xacro

Prevents warnings from xacro in Jade

merge conflicts, fixed here: https://github.com/ros-industrial/robotiq/pull/79


Composer update in git bash is all messy

VSCode Version:1.29.1
OS Version: windows 10

Steps to Reproduce:

open vs code from the start menu
browse the project folder
press CTRL+` To open terminal
type composer update and it displays the text as follows

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

This is likely related to winpty, tracking in https://github.com/Microsoft/vscode/issues/45693


[REPO] Increase Pul request for dependabot

Is there an existing issue that is already proposing this?

[X] I have searched the existing issues
[X] I use the right issue type

Describe your request.
Right now, dependabot can only create maximum of 5 Pull request. To increase to 15 would be better.

Maximum is already set to 20.


Door States dont work

My door shows up as doorState = 1 if closed or opened

The door is clearly closed, and the state is 1 if opened or closed
Here is the code I'm using:
`import requests
import os
import json
import time
APP_ID = "Vj8pQggXLhLy0WHahglCD4N1nAkkXQtGYpq2HrHD7H1nvmbT55KqtN6RSF4ILB/i"
LOCALE = "en"
HOST_URI = "myqexternal.myqdevice.com"
LOGIN_ENDPOINT = "api/v4/User/Validate"
DEVICE_LIST_ENDPOINT = "api/v4/UserDeviceDetails/Get"
DEVICE_SET_ENDPOINT = "api/v4/DeviceAttribute/PutDeviceAttribute"
USERNAME = "***********"
PASSWORD = "**********"
myq_userid                  = ""
myq_security_token          = ""
myq_cached_login_response   = ""
myq_device_id               = ""
def lambda_handler(event, context):
if event['session']['application']['applicationId'] != "amzn1.ask.skill.********":
    print "Invalid Application ID"
    raise
else:
    # Not using sessions for now
    sessionAttributes = {}

    login()
    get_device_id()

    if event['session']['new']:
        onSessionStarted(event['request']['requestId'], event['session'])
    if event['request']['type'] == "LaunchRequest":
        speechlet = onLaunch(event['request'], event['session'])
        response = buildResponse(sessionAttributes, speechlet)
    elif event['request']['type'] == "IntentRequest":
        speechlet = onIntent(event['request'], event['session'])
        response = buildResponse(sessionAttributes, speechlet)
    elif event['request']['type'] == "SessionEndedRequest":
        speechlet = onSessionEnded(event['request'], event['session'])
        response = buildResponse(sessionAttributes, speechlet)

    # Return a response for speech output
    return(response)

def open():
change_door_state("open")
def close():
change_door_state("close")
def status():
state = check_door_state()
if state == 1:
    return "open"
elif state == 2:
    return "closed"
elif state == 3:
    return "stopped"
elif state == 4:
    return "opening"
elif state == 5:
    return "closing"
elif state == 8:
    return "moving"

elif state == 9:
return "open"
else:
    return str(state) + " is an unknown state for the door."

def login():
global myq_userid
global myq_security_token
global myq_cached_login_response

params = {
    'username': USERNAME,
    'password': PASSWORD
}

login = requests.post(
        'https://{host_uri}/{login_endpoint}'.format(
            host_uri=HOST_URI,
            login_endpoint=LOGIN_ENDPOINT),
            json=params,
            headers={
                'MyQApplicationId': APP_ID
            }
    )

auth = login.json()

myq_security_token = auth['SecurityToken']
return True

def change_door_state(command):
open_close_state = 1 if command.lower() == "open" else 0
payload = {
    'attributeName': 'desireddoorstate',
    'myQDeviceId': myq_device_id,
    'AttributeValue': open_close_state,
}

device_action = requests.put(
    'https://{host_uri}/{device_set_endpoint}'.format(
        host_uri=HOST_URI,
        device_set_endpoint=DEVICE_SET_ENDPOINT),
        data=payload,
        headers={
            'MyQApplicationId': APP_ID,
            'SecurityToken': myq_security_token
        }
)

return device_action.status_code == 200

def get_devices():
devices = requests.get(
'https://{host_uri}/{device_list_endpoint}'.format(
host_uri=HOST_URI,
device_list_endpoint=DEVICE_LIST_ENDPOINT),
headers={
'MyQApplicationId': APP_ID,
'SecurityToken': myq_security_token
}
)
return devices.json()['Devices']

def get_device_id():
global myq_device_id
devices = get_devices()

for dev in devices:
    if dev["MyQDeviceTypeName"] in ["VGDO", "GarageDoorOpener", "Garage Door Opener WGDO"]:
        myq_device_id = str(dev["MyQDeviceId"])
        # This skill assumes only one garage door, so we take the first one we come across
        break

def check_door_state():
devices = get_devices()
for dev in devices:
    if dev["MyQDeviceTypeName"] in ["VGDO", "GarageDoorOpener", "Garage Door Opener WGDO"]:
        # This skill assumes only one garage door, so we take the first one we come across
        myq_device_id = str(dev["MyQDeviceId"])
        return 1

Called when the session starts
def onSessionStarted(requestId, session):
print("onSessionStarted requestId=" + requestId + ", sessionId=" + session['sessionId'])
Called when the user launches the skill without specifying what they want.
def onLaunch(launchRequest, session):
# Dispatch to your skill's launch.
getWelcomeResponse()
Called when the user specifies an intent for this skill.
def onIntent(intentRequest, session):
intent = intentRequest['intent']
intentName = intentRequest['intent']['name']
# Dispatch to your skill's intent handlers
if intentName == "StateIntent":
    return stateResponse(intent)
elif intentName == "MoveIntent":
    return moveIntent(intent)
elif intentName == "HelpIntent":
    return getWelcomeResponse()
else:
    print "Invalid Intent (" + intentName + ")"
    raise

Called when the user ends the session.
Is not called when the skill returns shouldEndSession=true.
def onSessionEnded(sessionEndedRequest, session):
# Add cleanup logic here
print "Session ended"
def getWelcomeResponse():
cardTitle = "Welcome"
speechOutput = """You can open or close your garage door by saying, ask my garage door to open."""
# If the user either does not reply to the welcome message or says something that is not
# understood, they will be prompted again with this text.
repromptText = 'Ask me to close your garage door by saying ask my garge door to close'
shouldEndSession = True

return (buildSpeechletResponse(cardTitle, speechOutput, repromptText, shouldEndSession))

def moveIntent(intent):
"""
Ask my garage to {open|close|shut|go up|go down}
"intent": {
"name": "StateIntent",
"slots": {
"doorstate": {
"name": "doorstate",
"value": "close"
}
}
}
"""
if (intent['slots']['doorstate']['value'] == "close") or (intent['slots']['doorstate']['value'] == "shut") or (intent['slots']['doorstate']['value'] == "go down"):
close()
speechOutput = "Ok, I'm closing your garage door"
cardTitle = "Closing your garage door"
elif (intent['slots']['doorstate']['value'] == "open") or (intent['slots']['doorstate']['value'] == "go up"):
open()
speechOutput = "Ok, I'm opening your garage door"
cardTitle = speechOutput
else:
speechOutput = "I didn't understand that. You can say ask the garage door to open or close"
cardTitle = "Try again"
repromptText = "I didn't understand that. You can say ask the garage door if it's open, or tell it to open or close"
shouldEndSession = True

return(buildSpeechletResponse(cardTitle, speechOutput, repromptText, shouldEndSession))

def stateResponse(intent):
"""
Ask my garage door if it's {open|closed}
"intent": {
"name": "StateIntent",
"slots": {
"doorstate": {
"name": "doorstate",
"value": "closed"
}
}
}
"""
doorstate = status()
if (intent['slots']['doorstate']['value'] == "open") or (intent['slots']['doorstate']['value'] == "up"):
    if doorstate == "open":
        speechOutput = "Yes, your garage door is open"
        cardTitle = "Yes, your garage door is open"
    elif doorstate == "closed":
        speechOutput = "No, your garage door is closed"
        cardTitle = "No, your garage door is closed"
    else:
        speechOutput = "Your garage door is " + doorstate
        cardTitle = "Your garage door is " + doorstate

elif (intent['slots']['doorstate']['value'] == "closed") or (intent['slots']['doorstate']['value'] == "shut") or (intent['slots']['doorstate']['value'] == "down"):
    if doorstate == "closed":
        speechOutput = "Yes, your garage door is closed"
        cardTitle = "Yes, your garage door is closed"
    elif doorstate == "open":
        speechOutput = "No, your garage door is open"
        cardTitle = "No, your garage door is open"
    else:
        speechOutput = "Your garage door is " + doorstate
        cardTitle = "Your garage door is " + doorstate

else:
    speechOutput = "I didn't understand that. You can say ask the garage door if it's open"
    cardTitle = "Try again"

repromptText = "I didn't understand that. You can say ask the garage door if it's open"
shouldEndSession = True

return(buildSpeechletResponse(cardTitle, speechOutput, repromptText, shouldEndSession))

--------------- Helpers that build all of the responses -----------------------
def buildSpeechletResponse(title, output, repromptText, shouldEndSession):
return ({
"outputSpeech": {
"type": "PlainText",
"text": output
},
"card": {
"type": "Simple",
"title": "MyQ - " + title,
"content": "MyQ - " + output
},
"reprompt": {
"outputSpeech": {
"type": "PlainText",
"text": repromptText
}
},
"shouldEndSession": shouldEndSession
})
def buildResponse(sessionAttributes, speechletResponse):
return ({
"version": "1.0",
"sessionAttributes": sessionAttributes,
"response": speechletResponse
})
`
and the request:
{   "session": {     "sessionId": "SessionId.1f02711e-a628-4d9d-a4a2-e805b5b3d43b",     "application": {       "applicationId": "amzn1.ask.skill.**********"     },     "attributes": {},     "user": {       "userId": "amzn1.ask.account.***********"     },     "new": true   },   "request": {     "type": "IntentRequest",     "requestId": "EdwRequestId.ea46cda3-9b09-4d33-ac74-ae98b991c0bb",     "locale": "en-US",     "timestamp": "2017-02-15T03:00:17Z",     "intent": {       "name": "StateIntent",       "slots": {         "doorstate": {           "name": "doorstate",           "value": "up"         }       }     }   },   "version": "1.0" }
and the results from Lambda:
{   "version": "1.0",   "response": {     "outputSpeech": {       "text": "Yes, your garage door is open",       "type": "PlainText"     },     "shouldEndSession": true,     "reprompt": {       "outputSpeech": {         "text": "I didn't understand that. You can say ask the garage door if it's open",         "type": "PlainText"       }     },     "card": {       "content": "MyQ - Yes, your garage door is open",       "type": "Simple",       "title": "MyQ - Yes, your garage door is open"     }   },   "sessionAttributes": {} }

Hi @SConaway, I just created a pull request for @jbnunn to merge that should hopefully fix the issue that you are having.  Thanks!

Thanks @tigerbrain it works perfectly


ImportError: cannot import name 'Self' from 'typing_extensions'

Traceback (most recent call last):
  File "/home/kim/.pyenv/versions/3.10.4/lib/python3.10/runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/home/kim/.pyenv/versions/3.10.4/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/home/kim/src/specter-desktop/src/cryptoadvance/specter/__main__.py", line 7, in <module>
    entry_point()
  File "/home/kim/src/specter-desktop/.env/lib/python3.10/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/home/kim/src/specter-desktop/.env/lib/python3.10/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/home/kim/src/specter-desktop/.env/lib/python3.10/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/kim/src/specter-desktop/.env/lib/python3.10/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/kim/src/specter-desktop/.env/lib/python3.10/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/home/kim/src/specter-desktop/src/cryptoadvance/specter/cli/cli_server.py", line 152, in server
    init_app(app, hwibridge=hwibridge)
  File "/home/kim/src/specter-desktop/src/cryptoadvance/specter/server.py", line 166, in init_app
    specter.service_manager = ExtensionManager(
  File "/home/kim/src/specter-desktop/src/cryptoadvance/specter/managers/service_manager/service_manager.py", line 56, in __init__
    class_list = get_classlist_of_type_clazz_from_modulelist(
  File "/home/kim/src/specter-desktop/src/cryptoadvance/specter/util/reflection.py", line 94, in get_classlist_of_type_clazz_from_modulelist
    module = import_module(fq_module_name)
  File "/home/kim/.pyenv/versions/3.10.4/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/home/kim/src/specter-desktop/src/cryptoadvance/specterext/devhelp/service.py", line 7, in <module>
    import strawberry
  File "/home/kim/src/specter-desktop/.env/lib/python3.10/site-packages/strawberry/__init__.py", line 1, in <module>
    from . import experimental, federation
  File "/home/kim/src/specter-desktop/.env/lib/python3.10/site-packages/strawberry/federation/__init__.py", line 1, in <module>
    from .argument import argument
  File "/home/kim/src/specter-desktop/.env/lib/python3.10/site-packages/strawberry/federation/argument.py", line 3, in <module>
    from strawberry.arguments import StrawberryArgumentAnnotation
  File "/home/kim/src/specter-desktop/.env/lib/python3.10/site-packages/strawberry/arguments.py", line 18, in <module>
    from strawberry.annotation import StrawberryAnnotation
  File "/home/kim/src/specter-desktop/.env/lib/python3.10/site-packages/strawberry/annotation.py", line 15, in <module>
    from typing_extensions import Annotated, Self, get_args, get_origin
ImportError: cannot import name 'Self' from 'typing_extensions' (/home/kim/src/specter-desktop/.env/lib/python3.10/site-packages/typing_extensions.py)

This is happening if i use typing_extensions==3.10.2 and it disappears after pip3 install typing_extensions==4.0.0. Now, i'd like to use 3.10.2 as i have a conflict otherwise:
  typing_extensions<5.0.0,>=3.7.4 (from strawberry-graphql==0.155.2->-r requirements.in (line 35))
  typing-extensions<4.0,>=3.7 (from hwi==2.1.1->-r requirements.in (line 11))

So i'd appreciate if you can either fix the issue or adjust the dependencies (in order to convince the other project to upgrade).
System Information

Operating system: Linux, python 3.10.4
Strawberry version (if applicable): 0.156.3

hi @k9ert, I'll see if we can put import Self inside an if TYPE_CHECKING
we are probably going to require typing extensions 4.1 soon due to #2227 so it might be worth asking those libraries not to do any upper level pinning for typing extensions

hi @k9ert, I'll see if we can put import Self inside an if TYPE_CHECKING

Thank you, very much appreciated. I've asked on the other project as well to get it up-to-date.

It's here: https://github.com/bitcoin-core/HWI/issues/572
They are already thinking about the update.

This should have been fixed in HWI now :) I'll close the issue!

The discussion is ongoing on there side and they have some point of not immediately removing the upper pin.

I'll see if we can put import Self inside an if TYPE_CHECKING

What about that?


Don't ask Loris for height/width.

Closes #512.

Coverage remained the same at 100.0% when pulling 41719173becdef5e428d13067b666121f80a5c46 on non_loris_manifests into e6d7f028039166e04e23adca721d35260ab04c4e on master.


[Playlist] Synced playlists displaying default poster

Version Number
1.20.0-nightly29
What branch are you on?
nightly
Describe the Bug
Description:
When using the sync_to_users template variable under - pmm: playlist, the playlists created and synced to the specified users do not retain the original playlist poster, instead displaying the default poster.
Steps to Reproduce:

Set the following configuration:

playlist_files:
- pmm: playlist
  template_variables:
    libraries: [library name]
    sync_to_users: Bob, Ben

Run the program.
Check the synced playlists for the non-admin users listed in sync_to_users.

Expected Behavior:
The synced playlists should retain the original playlist poster.
Actual Behavior:
The synced playlists display the default poster instead of the original one.
Relevant Collection/Overlay/Playlist Definition
No response
Logs
No response

I tried a few things to update the poster of the synced playlist (in sync_playlist() from builder.py).
Everything give me a (403) forbidden.
Interestingly, the Plex log show me the same error (403) whenever I try with pmm or manually from Plex web interface.
So the feature is clearly not (yet?) supported in plex.
I found a feature suggestion and a reddit post about this.
If the feature got supported at one point, here are the lines that were giving me the 403:
    def sync_playlist(self):
        ...
        new_playlist = self.obj.copyToUser(user)
        new_playlist.uploadPoster(filepath=self.collection_poster.location)  # Unknown Error: (403) forbidden
        new_playlist.uploadPoster(url=self.obj.posterUrl)  # Unknown Error: (403) forbidden
        ...

Closing the issue (I just created it for visibility and possibly future implementation, put Plex is not known to be super fast to fix this kind of stuff).

This is a known Plex issue - playlist posters cannot be shared with other users.


guitarix: 0.37.1 -> 0.37.2

Motivation for this change
Things done

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

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

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

@GrahamcOfBorg build guitarix

No attempt on x86_64-darwin (full log)
The following builds were skipped because they don't evaluate on x86_64-darwin: guitarix
Partial log (click to expand)

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnsupportedSystem = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnsupportedSystem = true; }
to ~/.config/nixpkgs/config.nix.

Success on x86_64-linux (full log)
Attempted: guitarix
Partial log (click to expand)
shrinking /nix/store/s4pbzf1ayvh2y8n0plvd67kjpfxj8235-guitarix-0.37.3/lib/lv2/gx_echo.lv2/gx_echo_gui.so
shrinking /nix/store/s4pbzf1ayvh2y8n0plvd67kjpfxj8235-guitarix-0.37.3/lib/lv2/gx_echo.lv2/gx_echo.so
shrinking /nix/store/s4pbzf1ayvh2y8n0plvd67kjpfxj8235-guitarix-0.37.3/lib/libgxwmm.so
shrinking /nix/store/s4pbzf1ayvh2y8n0plvd67kjpfxj8235-guitarix-0.37.3/lib/libgxwmm.so.0.1
shrinking /nix/store/s4pbzf1ayvh2y8n0plvd67kjpfxj8235-guitarix-0.37.3/lib/libgxw.so
shrinking /nix/store/s4pbzf1ayvh2y8n0plvd67kjpfxj8235-guitarix-0.37.3/lib/libgxw.so.0.1
/nix/store/vp40my263xk32f07788srrgl59rycsna-binutils-2.30/bin/strip is /nix/store/vp40my263xk32f07788srrgl59rycsna-binutils-2.30/bin/strip
stripping (with command /nix/store/vp40my263xk32f07788srrgl59rycsna-binutils-2.30/bin/strip and flags -S) in /nix/store/s4pbzf1ayvh2y8n0plvd67kjpfxj8235-guitarix-0.37.3/lib  /nix/store/s4pbzf1ayvh2y8n0plvd67kjpfxj8235-guitarix-0.37.3/bin
patching script interpreter paths in /nix/store/s4pbzf1ayvh2y8n0plvd67kjpfxj8235-guitarix-0.37.3
checking for references to /build in /nix/store/s4pbzf1ayvh2y8n0plvd67kjpfxj8235-guitarix-0.37.3...

Success on aarch64-linux (full log)
Attempted: guitarix
Partial log (click to expand)
shrinking /nix/store/3vr95fgvb6gxpnws3aj07jw985an3gh9-guitarix-0.37.3/lib/lv2/gx_amp.lv2/gx_amp.so
shrinking /nix/store/3vr95fgvb6gxpnws3aj07jw985an3gh9-guitarix-0.37.3/lib/libgxwmm.so
shrinking /nix/store/3vr95fgvb6gxpnws3aj07jw985an3gh9-guitarix-0.37.3/lib/libgxwmm.so.0.1
shrinking /nix/store/3vr95fgvb6gxpnws3aj07jw985an3gh9-guitarix-0.37.3/lib/libgxw.so
shrinking /nix/store/3vr95fgvb6gxpnws3aj07jw985an3gh9-guitarix-0.37.3/lib/libgxw.so.0.1
/nix/store/8wl4dykwswy42wxj671b6k7vk2ydxg86-binutils-2.30/bin/strip is /nix/store/8wl4dykwswy42wxj671b6k7vk2ydxg86-binutils-2.30/bin/strip
stripping (with command /nix/store/8wl4dykwswy42wxj671b6k7vk2ydxg86-binutils-2.30/bin/strip and flags -S) in /nix/store/3vr95fgvb6gxpnws3aj07jw985an3gh9-guitarix-0.37.3/lib  /nix/store/3vr95fgvb6gxpnws3aj07jw985an3gh9-guitarix-0.37.3/bin
patching script interpreter paths in /nix/store/3vr95fgvb6gxpnws3aj07jw985an3gh9-guitarix-0.37.3
checking for references to /build in /nix/store/3vr95fgvb6gxpnws3aj07jw985an3gh9-guitarix-0.37.3...
/nix/store/3vr95fgvb6gxpnws3aj07jw985an3gh9-guitarix-0.37.3


[Mac OS] Top-left tooltips appear in two stages

The top-left tooltips for 'Close', 'Minimize' and 'Maximize' display in two steps with a glitch. A first part of the tooltip appears immediately. The rest appears about 0.5seconds later.

This seems to be fixed now


Write standards to VINE converter

I'm working on this.

done... at least for now. In converters-vine


Document extras.headers attributes

Whilst we added extras to messages, customers at present are not permitted to use any of these attributes (apart from push) as all attributes are reserved by Ably for future use.
We should reserve a single attribute such as metadata or headers for customers to use.
I think we generally agreed headers was best.
Note that in time, these custom headers may become more useful when we implement streaming query language functionality.
@paddybyers @SimonWoolf are you happy with me to create a PR to update the spec and documentation to reflect this?
┆Issue is synchronized with this Jira Task by Unito

@QuintinWillison this is an issue to document it, so probably docs rather than spec repo?
(the spec already says extras is an untyped object that sdks should treat opaquely, TM2i)

Good spot, @SimonWoolf. Thanks. I'll transfer this back to the docs repository...


Displaying meaningless dates after parsing in YYYY-MM-DD format

I am using jalali-angular-datepicker in reactive, When i parse todays date in (YYYY-MM-DD) format, the date shown is like this (0775-09-21). I think it parses the date twice, how to avoid it.

Hi
could you please reproduce it in plunker?
I think you make the moment object in a wrong way you should use the following way
moment('miladi date')
moment('shamsi date', 'jYYYY/jMM/jDD')

or
moment.locale('fa');
moment('shamsi date');

demo in plunker

Here is the  Stackblitz demo

try this
    this.testForm = this.formBuilder.group({
      date: [moment().format('YYYY-MM-DD')],
    });

as you see in this component document  input should be moment object or format as iso 8601 Notation.

const d1: string = moment('1396-12-12', 'jYYYY-jMM-jDD').format('YYYY-MM-DD');
const d2: string = '2018-03-03';
this.testForm = this.formBuilder.group({
  date: [d1],
  date2: [d2]
});

Thanks a lot both of you guys @fingerpich and @peymanebrahimi


nginx-sso: 0.22.0 -> 0.23.0

Motivation for this change
Things done

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

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

[x] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

/nix/store/vc8563srl8q3ym7nhzlm4lrv6qf9v5d5-nginx-sso-0.22.0-bin	  48.9M
/nix/store/b6d4ikg9s1fx9bj2yp050ln97m77nvkj-nginx-sso-0.23.0-bin	  48.9M
Notify maintainers
cc @delroth

thanks!


Test Ubuntu 22.04 on CI

[x] I agree to follow the project's code of conduct.
[ ] I added an entry to CHANGES.md if knowledge of this change could be valuable to users.

r? @jdroenner


[WIP] Use craft runtime path for temp location

@benjamminf Still working on this. Currently there is a response but it is:

Error uploading the file: This file type is not allowed

Mate, thanks for your help with this! Wasn't aware of getRuntimePath - good to know.

Ok last issue… CraftCMS v2.6.2945 doesn't include json as a valid upload filetype.
Adding the following to the general.php is a workaround:
'extraAllowedFileExtensions' => 'json'

Yeah that's expected, it's in the installation instructions ;) So has this solved your issue then?

@benjamminf Yep all good. No errors.

@klepl @pixeljitsu Does this merge solve https://github.com/benjamminf/craft-embedded-assets/issues/25


Request: Flask integration example

I tried to integrate bower static with Flask but got an error when running the app ("AttributeError: 'Publisher' object has no attribute 'run' ").  A full example would be appreciated.  TIA
from flask import Flask, render_template
import bowerstatic
import os.path

app = Flask(__name__)
bower = bowerstatic.Bower()

components = bower.components('components', os.path.join(os.path.dirname(__file__), 'bower_components') )

@app.route('/')
def home():
    return "Hello world"

if __name__ == "__main__":
    app = bower.wrap(app)
    app.run(debug=True)  # <- got the error here

It's been in there for a while.


Could not fetch frame data from the server (A manifest file not exists)

My actions before raising this issue

[x ] Read/searched the docs
[x ] Searched past issues

When I try to enter into any job in concrete task, I can't see any images and I get the following error:
Could not fetch frame data from the server
Error: . "\"cannot get requested data type: chunk, number: 0, quality: Quality.COMPRESSED\\nA manifest file not exists, index cannot be created\"".

I've found the following logs in cvat container for this task:
[2021-04-22 11:14:26,412] ERROR cvat.server.task_52: cannot get requested data type: chunk, number: 0, quality: Quality.COMPRESSED
Traceback (most recent call last):
  File "/home/django/cvat/apps/engine/views.py", line 470, in data
    buff, mime_type = frame_provider.get_chunk(data_id, data_quality)
  File "/home/django/cvat/apps/engine/frame_provider.py", line 167, in get_chunk
    return self._loaders[quality].get_chunk_path(chunk_number, quality, self._db_data)
  File "/home/django/cvat/apps/engine/cache.py", line 29, in get_buff_mime
    chunk, tag = self.prepare_chunk_buff(db_data, quality, chunk_number)
  File "/home/django/cvat/apps/engine/cache.py", line 63, in prepare_chunk_buff
    reader = ImageDatasetManifestReader(manifest_path=db_data.get_manifest_path(),
  File "/home/django/cvat/apps/engine/media_extractors.py", line 361, in __init__
    self._manifest.init_index()
  File "/home/django/utils/dataset_manifest/core.py", line 287, in init_index
    self._index.create(self._manifest.path, 3 if self._manifest.TYPE == 'video' else 2)
  File "/home/django/utils/dataset_manifest/core.py", line 224, in create
    assert os.path.exists(manifest), 'A manifest file not exists, index cannot be created'
AssertionError: A manifest file not exists, index cannot be created
[2021-04-22 11:25:37,711] INFO cvat.server.task_52: get repository request

I've found that it is still possible to dump annotations but I can't export the full dataset.
Expected Behaviour
Images in the job should be loaded properly.
Current Behaviour
Images are not loaded in the task with error notification.
 Canvas 3D functionality. Basic actions. (#3112)

    * Rename, add css class

    * Update cypress test.

Docker version docker version (e.g. Docker 17.0.05): 20.10.05
Are you using Docker Swarm or Kubernetes? Nope
Operating System and version (e.g. Linux, Windows, MacOS): GNU/Linux Ubuntu 4.15.0-140-generic

@nstolyarov , Could you please describe in more detail the current task, from what data did you create this task, what parameters did you use?
Also, the task was available before migration (in this case, have you seen any errors when migrating data?) / the task is not available immediately after creation?

Some update:
Seems it has happened after some update with git pull and docker-compose -f ./docker-compose.yml -f ./docker-compose.dev.yml -f docker-compose.override.yml up --build.

I created this task from connected file share with image quality 70% and segment size 20. All other options were set by default.
And yes, it was available earlier.

Update x2:
It affects on this task and all the previous tasks.

Could I ask you to check the data folder data/data/{data_id}/raw/ for existing or no dummy_{N}.txt files(for images)

Hi, @Marishka17 !
There is nothing in this folder for this task and the same situation is for all previous tasks. But for other tasks everything is ok.

Maybe you still have migration logs?
All tasks that are now inaccessible were created with share? In this case, was share available at the time of data migration?

There was no migration cause we start our work with CVAT from #2865 . Perhaps I am misunderstanding what migration is?
Yes, all tasks were created with share. And yes, share is available all the time.

@Marishka17
Would generation a Manifest file on the fly if it does not exist be an option to fix?
I think it should not take long time.

Follow below steps to create missing manifest files:

create manually_migrate.py

import glob
import os
from re import search
from django.conf import settings
from django.db import migrations
from cvat.apps.engine.models import DimensionType, StorageChoice,StorageMethodChoice
from utils.dataset_manifest import ImageManifestManager, VideoManifestManager
from cvat.apps.engine.models import Data
query_set = Data.objects.filter(storage_method=StorageMethodChoice.CACHE)
with open("exceptions_log.txt", "w") as log_file:
    for db_data in query_set:
        try:
            upload_dir = '{}/{}/raw'.format(settings.MEDIA_DATA_ROOT, db_data.id)
            if os.path.exists(os.path.join(upload_dir, 'meta_info.txt')):
                    os.remove(os.path.join(upload_dir, 'meta_info.txt'))
            else:
                for path in glob.glob(f'{upload_dir}/dummy_*.txt'):
                    os.remove(path)
            if os.path.exists(os.path.join(upload_dir, 'manifest.jsonl')):
                continue
            data_dir = upload_dir if db_data.storage == StorageChoice.LOCAL else settings.SHARE_ROOT
            if hasattr(db_data, 'video'):
                media_file = os.path.join(data_dir, db_data.video.path)
                manifest = VideoManifestManager(manifest_path=upload_dir)
                meta_info = manifest.prepare_meta(media_file=media_file)
                manifest.create(meta_info)
                manifest.init_index()
            else:
                manifest = ImageManifestManager(manifest_path=upload_dir)
                sources = []
                if db_data.storage == StorageChoice.LOCAL:
                    for (root, _, files) in os.walk(data_dir):
                        sources.extend([os.path.join(root, f) for f in files])
                    sources.sort()
                else:
                    sources = [os.path.join(data_dir, db_image.path) for db_image in db_data.images.all().order_by('frame')]
                if any(list(filter(lambda x: x.dimension==DimensionType.DIM_3D, db_data.tasks.all()))):
                    content = []
                    for source in sources:
                        name, ext = os.path.splitext(os.path.relpath(source, upload_dir))
                        content.append({
                            'name': name,
                            'extension': ext
                        })
                else:
                    meta_info = manifest.prepare_meta(sources=sources, data_dir=data_dir)
                    content = meta_info.content

                if db_data.storage == StorageChoice.SHARE:
                    def _get_frame_step(str_):
                        match = search("step\s*=\s*([1-9]\d*)", str_)
                        return int(match.group(1)) if match else 1
                    step = _get_frame_step(db_data.frame_filter)
                    start = db_data.start_frame
                    stop = db_data.stop_frame + 1
                    images_range = range(start, stop, step)
                    result_content = []
                    for i in range(stop):
                        item = content.pop(0) if i in images_range else dict()
                        result_content.append(item)
                    content = result_content
                manifest.create(content)
                manifest.init_index()
        except Exception as ex:
            log_file.write(str(ex))

docker cp /path/to/manually_migrate.py cvat:/home/django/
docker exec -it cvat /bin/bash
python3 manage.py shell
exec(open('manually_migrate.py').read())

Hi, @Marishka17!
Thank you, the proposed script solves this issue.


[Windows] Fix reading keyboard layout names.

Fixes https://github.com/godotengine/godot/issues/94071
Code based on https://github.com/dotnet/winforms/issues/4345#issuecomment-1137879442

Thanks!


create-script-context fails with DeserialiseFailure

Summary
create-script-context fails with DeserialiseFailure:
create-script-context --generate-tx test_minting_context_equivalance_ci0_tph_dummy_tx.signed --out-file test_minting_context_equivalance_ci0_tph_script_context.redeemer --cardano-mode --testnet-magic 42

create-script-context: DecoderFailure (LocalStateQuery HardForkBlock (': * ByronBlock (': * (ShelleyBlock (ShelleyEra StandardCrypto)) (': * (ShelleyBlock (ShelleyMAEra 'Allegra StandardCrypto)) (': * (ShelleyBlock (ShelleyMAEra 'Mary StandardCrypto)) (': * (ShelleyBlock (AlonzoEra StandardCrypto)) ('[] *)))))) Query (BlockQuery (HardForkBlock (': * ByronBlock (': * (ShelleyBlock (ShelleyEra StandardCrypto)) (': * (ShelleyBlock (ShelleyMAEra 'Allegra StandardCrypto)) (': * (ShelleyBlock (ShelleyMAEra 'Mary StandardCrypto)) (': * (ShelleyBlock (AlonzoEra StandardCrypto)) ('[] *))))))))) ServerAgency TokQuerying BlockQuery (QueryIfCurrent (QS (QS (QS (QS (QZ GetUTxOWhole))))))) (DeserialiseFailure 3 "expected map len")\n'

Steps to reproduce the behavior

generate dummy redeemer file, result looks like

{"fields":[{"list":[]},{"list":[]},{"map":[{"k":{"bytes":""},"v":{"map":[{"k":{"bytes":""},"v":{"int":0}}]}}]},{"fields":[{"fields":[{"fields":[{"int":42}],"constructor":1},{"fields":[],"constructor":1}],"constructor":0},{"fields":[{"fields":[],"constructor":2},{"fields":[],"constructor":1}],"constructor":0}],"constructor":0},{"map":[{"k":{"bytes":""},"v":{"map":[{"k":{"bytes":""},"v":{"int":0}}]}}]},{"list":[]},{"list":[]},{"list":[]},{"fields":[],"constructor":1}],"constructor":0}

use the dummy redeemer to generate a dummy Tx
derive the correct redeemer from the dummy Tx - while running the corresponding create-script-context command, it fails with DeserialiseFailure

Actual Result
create-script-context fails with DeserialiseFailure
Expected Result
The correct redeemer is derived from the dummy Tx.
Describe the approach you would take to fix this
No response
System info
OS: Fedora 35
Plutus apps: fdb0eec477fc0f99f5edfdbc11c041dbd35ca6bb

I am using input-output-hk/cardano-node@73f9a746362695dc2cb63ba757fbcabb81733d23, which is a bit older.
input-output-hk/cardano-node@65422ff373f2f88a563afa746a9a16d211ffdc7c doesn't sync on testnet for me.

@mkoura does it work with 2b1d18c6c7b7142d9eebfec34da48840ed4409b6? That's the cardano-node's version stated in plutus-apps/cabal.project that you mentioned in the issue (fdb0eec477fc0f99f5edfdbc11c041dbd35ca6bb).

It still doesn't work with node master of 1.35.0-rc4, which are the node versions that need to be tested.
create-script-context --generate-tx test_context_equivalance_ci0_lwh_dummy_step2_tx.signed --out-file test_context_equivalance_ci0_lwh_script_context.redeemer --cardano-mode --testnet-magic 42

DecoderFailure (LocalStateQuery HardForkBlock (': * ByronBlock (': * (ShelleyBlock (ShelleyEra StandardCrypto)) (': * (ShelleyBlock (ShelleyMAEra 'Allegra StandardCrypto)) (': * (ShelleyBlock (ShelleyMAEra 'Mary StandardCrypto)) (': * (ShelleyBlock (AlonzoEra StandardCrypto)) ('[] *)))))) Query (BlockQuery (HardForkBlock (': * ByronBlock (': * (ShelleyBlock (ShelleyEra StandardCrypto)) (': * (ShelleyBlock (ShelleyMAEra 'Allegra StandardCrypto)) (': * (ShelleyBlock (ShelleyMAEra 'Mary StandardCrypto)) (': * (ShelleyBlock (AlonzoEra StandardCrypto)) ('[] *))))))))) ServerAgency TokQuerying BlockQuery (QueryIfCurrent (QS (QS (QS (QS (QZ GetCurrentPParams))))))) (DeserialiseFailure 14 "decodeNS: invalid index 5")


Pkg 1568

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_3286a4tl4e/clone/recipe/meta.yaml:32: missing_pip_check: For pypi packages, pip check should be present in the test commands
WARNING: /tmp/abs_3286a4tl4e/clone/recipe/meta.yaml:41: missing_description: The recipe is missing a description
Errors were found

Linter check found the following problems:
The following problems have been found:
WARNING: /tmp/abs_101amhjaqy/clone/recipe/meta.yaml:48: missing_description: The recipe is missing a description
Warnings were found


Make interface name standard on all boxes for Atlassian environment

Platform and architecture (e.g. Linux/x64: Windows Server 2016 x64

Java version (from "java --version") e.g. 1.8.0_181, 11.0.4+11 etc.: jdk8u202-b08

Variant e.g. HotSpot or OpenJ9: Don't know

Have you tested it with other vendors' java: No

Steps to reproduce:

Download the list-interfaces.jar file from https://jira.atlassian.com/browse/CONFSERVER-10979
Navigate to jdk8u202-b08\bin
Run java.exe -jar list-interfaces.jar

Error messsage and/or description of what is not working as expected: The ethX value ranges from 0-3, need to configure it so that on all hosts can be eth0

Thanks for getting in touch. Could you please explain a bit more what the problem is, what you want to achieve and what makes you think that the problem is in AdoptOpenJDK?

Hi Andreas, thanks for the quick response!
The issue is when I use the AdoptOpenJDK java.exe -jar list-interfaces command, I want the ethernet adapter to be the same on all 4 nodes in my Confluence cluster. Right now, on two nodes the eth value is eth1 and two of the nodes they are eth0.
I am trying to automate this so that the value is always eth0 on all 4 boxes. The reason this is an AdoptOpenJDK cause is because this is a Windows box and it doesn't use that value for any of the network adapter names.

@rdsouza3 Can you try with jdk8u252 and also one of our adoptopenjdk.net/upstream.html builds.

Sorry, I might be missing something. I looked into the linked JAR with a decompiler. This is the entire code we're talking about:
import java.net.NetworkInterface;
import java.util.ArrayList;
import java.util.Collections;

public class ListInterfaces {
    public ListInterfaces() {
    }

    public static void main(String[] var0) throws Exception {
        ArrayList var1 = Collections.list(NetworkInterface.getNetworkInterfaces());
        System.out.println("interfaces.size() = " + var1.size());

        for(int var2 = 0; var2 < var1.size(); ++var2) {
            NetworkInterface var3 = (NetworkInterface)var1.get(var2);
            System.out.println("networkInterface[" + var2 + "] = " + var3);
            System.out.println("                   (" + var3.getInterfaceAddresses() + ")");
        }

    }
}

Java queries the OS and prints what the OS returns. On my system (Linux):
interfaces.size() = 4
networkInterface[0] = name:docker0 (docker0)
                   ([/<IP_ADDRESS>/16 [/<IP_ADDRESS>]])
networkInterface[1] = name:virbr0 (virbr0)
                   ([/<IP_ADDRESS>/24 [/<IP_ADDRESS>]])
networkInterface[2] = name:enp4s0 (enp4s0)
                   ([/fe80:0:0:0:a14b:8e7d:e366:1311%enp4s0/64 [null], /<IP_ADDRESS>/24 [/<IP_ADDRESS>]])
networkInterface[3] = name:lo (lo)
                   ([/0:0:0:0:0:0:0:1%lo/128 [null], /<IP_ADDRESS>/8 [null]])

The relevant implementation code: https://github.com/AdoptOpenJDK/openjdk-jdk11u/blob/479d310f10d41ee860e1270a7d4cd5aa56d806a7/src/java.base/windows/native/libnet/NetworkInterface.c#L216. This calls into GetIfTable on Windows and assigns names like ethX by enumerating the data returned by  GetIfTable. As far as I can see, it makes no guarantees regarding sort order. So it's not a Java problem per-se.
You could try changing the names and see if that changes anything (m comes before v). Otherwise, I'd rely on the adapter name (vmxnet3) instead of the adapter order.


Differentiate English datasets into MTEB core & other

As new English datasets are added (e.g. NarrativeQA), we may want to have an option to only evaluate on the core MTEB English datasets (e.g. allow providing a collection or kit kwarg to the evaluation that could be called mteb-core or so and then filters down to only the MTEB datasets that are in the English Overall average; Similar there could be a cmteb-core kwarg & so on
For the leaderboard, we could then have new tabs for those non-core datasets.
Another option of course is to consider every new English dataset as MTEB core but then the old averages are no longer valid and it seems not worth it rerunning all models everytime a new English ds is added.
Curious if people have thoughts! cc @tomaarsen

Partially done in https://github.com/embeddings-benchmark/mteb/pull/228


ruby_parser.rb - add void_stmt to insert_comments loop

Description
While running YARD with Ruby 2.7, the following comment is not added to class B:
module A
  # comment
  # ...
  # end comment
  class B

but, if a blank line is added between module A and the comment, it parses fine.
Tests passed in my fork, but 2.7/trunk is not tested against.  I checked the issue locally.
I could add Actions testing on Windows (Ruby 2.4 thru trunk), which I assume would show the issue.
Completed Tasks

[x] I have read the Contributing Guide.
[x] The pull request is complete (implemented / written).
[x] Git commits have been cleaned up (squash WIP / revert commits).
[ ] I wrote tests and ran bundle exec rake locally (if code is attached to PR).

Coverage decreased (-0.03%) to 93.723% when pulling 10a2e5bd8e25b52576462413060df2c08b72bd08 on MSP-Greg:void-stmt into 4b5c875c307ae029c27024bfe56a98c899f1685e on lsegal:master.

Superfantastic!

@lsegal This PR will resolve the following repositories CI failures related to RuboCop when using Ruby 2.7.0-dev.

https://circleci.com/gh/rubocop-hq/rubocop-performance/862
https://circleci.com/gh/rubocop-hq/rubocop-rails/2073
https://circleci.com/gh/rubocop-hq/rubocop-minitest/962

I'm happy when it is released :-)

@koic
Thanks for testing.  Over the weekend some changes were made to irb (see https://github.com/ruby/ruby/commit/efbca15116d4aea1588c6ba4ef0eb72c3c55c1db), and it broke YARD, specifically the code here:
https://github.com/lsegal/yard/blob/4b5c875c307ae029c27024bfe56a98c899f1685e/lib/yard/parser/ruby/legacy/ruby_lex.rb#L1-L7
A simple fix is to add gem 'irb', '1.1.0' somewhere, but I think a more permanent fix is needed...

The ruby-token.rb was also removed at https://github.com/ruby/ruby/commit/45bb6f28db04a1f267f5b8d79392cb35087510d8 but the class, RubyToken was copied and pasted to lib/yard/parser/ruby/legacy/ruby_lex.rb of YARD.
RubyLex in lib/irb/ruby-lex.rb was big-bang changed at https://github.com/ruby/ruby/commit/94b740b2499242e1aca67f7bbf595e75e63abc40#diff-80fbffd8d3dfc72fb539e0c03a8f0581 and also copied and pasted to the same file (lib/yard/parser/ruby/legacy/ruby_lex.rb).
I think SLex should be also copied from lib/irb/slex.rb and be pasted to the same file (lib/yard/parser/ruby/legacy/ruby_lex.rb).

Another option is to remove legacy, given that YARD has officially dropped support for the 1.8 parser a while ago. If Ruby is going in the same direction, I don't see a reason to keep such old outdated code.

@lsegal

Another option is to remove legacy

I briefly looked at this.  The following overload statement parses with the legacy parser, but a Ripper based parser may not allow it, since the parameters aren't valid Ruby code:
https://github.com/lsegal/yard/blob/ebd6269df6d9d12d4dce0fae53fbf80dfe7d5c4f/lib/yard/handlers/ruby/decorator_handler_methods.rb#L3-L4
Thoughts?

@lsegal @MSP-Greg  Sorry to bump a PR - could we get a tracking issue for the irb/slex etc. issue above for visibility?
Ran into it myself and had quite a difficult time debugging to find this conversation among other irb/slex issues over the ages / trying to deduce if my environment was just broken. :smiley_cat:

I opened a workaround patch #1296 for using Ruby 2.7.0.


Add Line/Block Commenting with Shortcut

Would like to have Edit/Toggle Comment to affect current cursor line, or all lines of a selection. The feature would scan each line and if the first non-whitespace character is an apostrophe, it would be deleted (uncomment), otherwise an apostrophe would be inserted at column 1 of the line.
Shortcut: Ctrl + '

This seems quite possible.  Will consider more.  May need to verify parsed source to properly handle cases where the line/selection includes portions of multi-line doc comments; however, that may not really be a problem.


Add initial gke testing

Signed-off-by: Artem Glazychev<EMAIL_ADDRESS>

GCLOUD_SERVICE_KEY
GOOGLE_COMPUTE_ZONE
GOOGLE_PROJECT_ID

@glazychev-art This is looking very promising :)


is it lv.SIZE_CONTENT or lv.SIZE.CONTENT ?

In python code generated by SquareLine Studio v1.1.1, lv.SIZE.CONTENT is regularly reference. However, in my latest lvgl-micropython build, it's lv.SIZE_CONTENT. Which is correct?

Some names were adjusted in the v9 bindings to fix a bug. However, I think SquareLine still uses v8 names.

thanks! I can manually adjust the exported code for now; I'm assuming SquareLine Studio will be updated once an official v9 is released.


Assignment 6 - Kori Kettner

Accepting this, but it would be better if it used more than just "User-Agent".  Browsers lie about their user-agent strings all the time (most browsers allow you to change them), but the other headers allow for more identification.


Update referee and candidate chaser emails content

Context
The final PR related to updating email content regarding referees.
This PR reworks the SendAdditionalReferenceChaseEmailToCandidatesWorker service so that it sends a new (3rd) email to referees.
It also edits the content in the first two referee chaser emails and the 2nd email that goes to candidates asking them to replace their referee.
Changes proposed in this pull request

Rework SendAdditionalReferenceChaseEmailToCandidatesWorker service to send a new chaser email to referees.
Adds that new email
Various content updates on other chaser emails

New referees chaser email

Chase referee again (candidate email)
Before

After

reference_request_email (first email)
Before

After

reference_request_chaser_email (second email)
Before

After

Guidance to review
Content
Candidate chaser when ref has not responded
https://docs.google.com/document/d/1o2bCTF1_DzpVe8XXaRxfNJ6fdW-iL72WYnkpyhC9vkI/edit#heading=h.yfkxyane0l0f
First ref chaser
https://docs.google.com/document/d/1o2bCTF1_DzpVe8XXaRxfNJ6fdW-iL72WYnkpyhC9vkI/edit#heading=h.9e2i2jf01819
Second ref chaser
https://docs.google.com/document/d/1o2bCTF1_DzpVe8XXaRxfNJ6fdW-iL72WYnkpyhC9vkI/edit#heading=h.vwznwj6qrgna
Third chaser (new email)
https://docs.google.com/document/d/1o2bCTF1_DzpVe8XXaRxfNJ6fdW-iL72WYnkpyhC9vkI/edit#heading=h.pmjp6jxmgry
Link to Trello card
https://trello.com/c/8LCXhKhv/1645-dev-design-tweaks-to-make-references-go-faster
https://trello.com/c/np1c1DRm/933-speeding-up-the-references-process-replace-the-content-on-the-referee-has-not-replied-after-10-working-days-email
https://trello.com/c/LpISs3mN/936-speeding-up-the-references-process-replace-the-content-on-the-candidate-has-asked-for-a-reference-second-email-to-referee-email
https://trello.com/c/ZS74fKwm/935-speeding-up-the-references-process-replace-the-content-on-the-candidate-has-asked-for-a-reference-first-email-to-referee-email
https://trello.com/c/1x3TnKZp/950-speeding-up-the-references-process-add-a-3rd-nudge-email-to-referees-who-dont-give-a-reference-after-20-working-days-if-candidat
Things to check

[x] This code doesn't rely on migrations in the same Pull Request
[x] If this code includes a migration adding or changing columns, it also backfills existing records for consistency
[x] API release notes have been updated if necessary
[x] New environment variables have been added to the Azure config

On the new referee chaser email, 'Will you not give [Candidate] a reference', - can we actually reiterate the course(s) they applied to?
I just realised the reference form does not include this information.
I've made the necessary edits as suggestions in the Google doc so you can see what has changed:
https://docs.google.com/document/d/1o2bCTF1_DzpVe8XXaRxfNJ6fdW-iL72WYnkpyhC9vkI/edit#heading=h.pmjp6jxmgry
@davidgisbey


Update Player Bio “dre”

Automatically generated by Netlify CMS

👷 Deploy Preview for 4shame processing.

Name
Link

🔨 Latest commit
916a1df37b28c67a0f4ba8474d07d351d46db2e7

🔍 Latest deploy log
https://app.netlify.com/sites/4shame/deploys/64109e1368a6300008fd1a88


Add build.rs check for LIB{MNL,NFTNL}_LIB_DIR and use to link

Equivalent to https://github.com/mullvad/mnl-rs/pull/5 but for this library.
Here we have to emit linking information for both libnftnl and libmnl since libnftnl depends on libmnl.
For some reason I don't understand it seems to be important in which order they are emitted. If I emit the libmnl linking stuff first it won't compile.

This change is

Reviewed 1 of 1 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


Tests for GCS

Right now I'm sort of getting this tested by proxy via CloudVolume's tests. It's ugly though.

there is a bug in the current implementation using the latest versions of crc32c cloud-volume and cloud-files.
metadata.py", line 71, in fetch_info
    info = self.cache.download_json(self.meta.join(self.mesh_path, 'info'))
  File "/usr/local/lib/python3.7/site-packages/cloudvolume/cacheservice.py", line 354, in download_json
    res = self.download( [ path ], compress=compress, progress=False )
  File "/usr/local/lib/python3.7/site-packages/cloudvolume/cacheservice.py", line 477, in download
    raise frag['error']
  File "/usr/local/lib/python3.7/site-packages/cloudfiles/cloudfiles.py", line 176, in download
    check_crc32c(path, content, server_hash)
  File "/usr/local/lib/python3.7/site-packages/cloudfiles/cloudfiles.py", line 153, in check_crc32c
    crc = crc32c(content)
  File "/usr/local/lib/python3.7/site-packages/cloudfiles/lib.py", line 155, in crc32c
    return crc32clib.value(binary) # an integer
AttributeError: module 'crc32c' has no attribute 'value'

There was an issue with google-resumable-media and google-crc32c where their versions were conflicting with crc32c.
https://github.com/googleapis/google-resumable-media-python/pull/162#issuecomment-682082258
Can you double check to see if your version of google-crc32c is at 1.0.0?


Did removing selector-set have a adverse effect on performance.

selector-set is supposed to be very performant when you have large number of elements to match on. We might have taken a performance hit when we remove it as a dependency in favor of simple WeakMap in #20.
I'm gonna try to make some performance tests to see if there's a noticeable difference and post them here.

// Naive loop
// O(n x m) -> at a tree depth of 20 and selector list of 100
// this is 2,000 matches calls.
for (const el of elements) {
  for (const sel of selectors) {
    if (el.matches(sel)) {
      // do something
    }
  }
}

// SelectorSet
for (const el of elements) {
  // set calls matches only against selectors that have a chance of
  // matching, dropping 2,000 calls to just a handful.
  if (set.matches(el)) {
      // do something
    }
  }
}

Prior art
git clone https://github.com/dgraham/delegated-events.git
cd delegated-events
npm install
npm run bench

You also need to run npm run bootstrap in order to pull the submodules containing the vendored libraries.

I ended up taking the jsperf test linked on the selector-set README and adding a new case for the Map lookup and found it performs about the same as linear.
SelectorSet x 50,848 ops/sec ±0.87% (63 runs sampled)
Linear x 104 ops/sec ±2.31% (52 runs sampled)
Map x 122 ops/sec ±1.76% (51 runs sampled)
Fastest is SelectorSet

I wanted to check what the difference this change has on code on github.com and added the following performance measuring to the getMatches call and ran some form submissions. I ran these on a pull request in my local environment where there are approximately 100 forms.
Note that all the results are in milliseconds
WeakMap
   function getMatches(el) {
+    const start = window.performance.now()
     const results = []
     for (const selector of formHandlers.keys()) {
       if (el.matches(selector)) {
         const handlers = formHandlers.get(selector) || []
         results.push(...handlers)
       }
     }
+    console.debug(`Time running: ${window.performance.now() - start}`)
     return results
   }

Time running: 0.17500005196779966
Time running: 0.1300000585615635
Time running: 0.11499994434416294
SelectorSet
+  const start = window.performance.now()
   const matches = selectorSet && selectorSet.matches(form)
+  console.debug(`Time running: ${window.performance.now() - start}`)

Time running: 0.04000007174909115
Time running: 0.06000010762363672
Time running: 0.04000007174909115
So it seems in practice the current method is double the time SelectorSet takes to run the same operation but the difference is ~0.1 milliseconds. It might be worth being as performant as we can here but I would lean towards having less dependencies in remote-form.
selector-set is 1.5kB which takes 30ms to download on 3G according to Bundle Phobia.

@koddsson I just stumbled on this.  Sounds like the perf differences were negligible.  Good to close?


fix eth-hash version

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@conda-forge-admin, please rerender

@conda-forge-admin, please rerender

@conda-forge-admin. please restart ci

@conda-forge-admin, please rerender


[CodingStandard] RemoveUselessDocBlockFixer should not reformat custom annotations

When using custom annotations with parameters, RemoveUselessDocBlockFixer reformats the annotation.
Any idea how to prevent that behaviour? Can't get the xDebug to work right now and don't have the time to keep trying, but I need to fix that, so I'll get back to it later. Any idea where to look is appreciated though :-)

Hey, thanks for reporting.
From top of my head, I'd blame:

https://github.com/Symplify/Symplify/blob/master/packages/BetterPhpDocParser/src/Printer/PhpDocInfoPrinter.php
resp. https://github.com/Symplify/Symplify/blob/master/packages/BetterPhpDocParser/src/Printer/OriginalSpacingRestorer.php

They take care about spacing in printed docblock


Runtime Texture Atlas Construction

The tilemap engine relies on a fixed-function 'tilemap pipeline' which reads textures from an atlas with  uniform layout (fixed size tiles).  Atlas textures must be uniform to a fixed grid layout, and must be constructed with 2-pix repeating-texture padding to fix texture sampling bilinear filtering error.
For rapid development purposes it is highly advantageous to be able to specify individual png src textures and assign them into the game.  Moreover, calculation of the padding area means that atlas sheets ideal from an asset designer's perspective are still not OK for our purposes.
Therefore I propose adding an Atlas builder to the engine, with the following basic image editing features:

Define atlas parameters

Tile dimensions are required
Size should be dynamic, size hint is OK

Cut rectangle from bitmap
Paste into atlas at given TileID

Engine applies padding automatically

Option to dump result to disk, for debugging use.

Note that I considered turning off bilinear filtering as a work-around for 2-pix padding.

It does not look good for most environments  (is OK for sprites tho)
It doesn't completely fix the problem since GPU may still fetch 'nearest' pixel from neighboring tile depending on zoom factor and especially during any rotation effect.

Yes ! From a gameplay designer point of view, we should make it easy to drop new images and tiles as needed in the "image" directory and have them being picked up automatically by the engine (reloading the engine is okay, but doing it on the fly is even crazier), then it would be possible to reference these new tiles by filename/UVs. Any size should work, the engine would figure out the best texture size for these.
I'm assuming internally it will try to store those images into an Atlas to limit the number of draw calls.

Follow-up on the technical design of the tile engine:  Multiple atlases can be used by issuing mutli-pass TileMap draws, where tiles from the current atlas are valid IDs and tiles from different atlas are nil.  The cost of the draw pass should be pretty inexpensive.
In a pinch, an atlas could just as well be a single tile.  This would be an OK work-around for immediate-use of added texture resources.  The engine will use the slow-path of issuing separate draw calls for each non-atlas'd texture until the next engine reload.  On reload, things get baked into a texture and perf is restored.
This effectively maintains gameplay perf while allowing rapid development with possible perf penalties, as it is considered acceptable criteria to have perf penalties during development cycles.


bug: BTC send on Testnet says insufficient funds even if available

There is a bug that is causing CI test failures in shard 8. To reproduce:

Login to Leather and switch to Testnet
Try and send some BTC
Observe the error Insufficient funds even if you have funds available

I tried on production and it seems like I can send a smaller amount there:

@markmhendrickson we started seeing this fail in the CI and it's blocking us merging any PRs to the extension at the moment.

This user reported the same error, their unable to send tBTC after trying a few different amounts.
'I got tBTC, but wallet says I have not enough funds even when I try to send only a piece of it'

This fix was tested as part of @fbwoolf's PR https://github.com/leather-io/extension/pull/5859/files


Improve typing and queryClient state

Code creation doesn't seem to be able to create these types atm


New error reporting in beta causes undefined results in numerous cases

Expected Behavior
When the vmErrorsOnRPCResponse option is set to true in the provider, submitting a transaction via eth_sendTransaction, eth_sendRawTransaction, or personal_sendTransaction, always returns a response with a transaction hash in the results field.
Current Behavior
In some cases such as out of gas, or gas exceeds block gas limit, the result field on the JSON RPC response is undefined.
Your Environment

Versions impacted: anything that depends on ganache-core v2.1.0-beta.0, including ganache-cli v6.1.0-beta.0 and ganache v1.1.0-beta.0

We're getting exactly hat nickjm with Metamask only. Everything works on tests with ganache-cli but if we "plug in" metamask and do the same function call (it's a call, not a tx) we get an error-less response as well.
In latest ganache-cli the error is completely undefined. In 1.0.2 it was:
Invalid JSON RPC response: {"id":70,"jsonrpc":"2.0","error":{"code":-32603}}

Turns out in our case it was just the error reporting change causing issues.
We had a piece of code do a call on every "element" which was expected to fail if such element was not present in a specific state in another contract.
This was expected and the error message was supposed to contain "revert" in that case. Since this changed we bubbled up the original error back (the "erorrless RPC error").
Seems it really is just the case of not reporting the error properly.

i'm having the same issue on Ganache 1.1.0-beta.0 for Mac
owner.transfer(price);
It throws the error:

Error: Invalid JSON RPC response: {"id":55,"jsonrpc":"2.0"}

However when I download the previous release v1.0.2 from here:
https://github.com/trufflesuite/ganache/releases
and run the same code I get the message:

Error: VM Exception while processing transaction: revert

Great, are you able to also change the default version delivered to github, npm and your site to be the official major/minor releases? Beta versions should not be the default, as they are not production ready!
If you go here:
http://truffleframework.com/ganache/
The download on a mac links to:
https://github.com/trufflesuite/ganache/releases/download/v1.1.0-beta.0/Ganache-1.1.0-beta.0.dmg
On Github the default branch is develop:
https://github.com/trufflesuite/ganache-cli
Which should actually be master:
https://github.com/trufflesuite/ganache-cli/blob/master/package.json
https://github.com/trufflesuite/ganache-cli/blob/develop/package.json
Users should be able to opt-into betas, but not have them by default :)

Thanks for pointing that out, @kmturley.
On the download link, it seems I forgot to tick the "prerelease" box on the "releases" page. I've fixed that, and the download link should be pointing at v1.0.2 now as a result.
On develop vs master, we've made that change intentionally in some (most?) of our repositories so that PRs automatically target the correct branch. If we don't do this, then people often find out they have merge conflicts with the current line of development rather late in their coding process. We do still use master to track stable releases, it just isn't set as the default branch.

cool, I have some other suggestions for user onboarding/tutorials, will make a separate ticket for those!


Compiled file location

VSCode Version: 1.32.1
OS Version: Windows 10 (1809) x64 EN

Steps to Reproduce:

Compile
Check

Just recently something happened to my gamemode, when I compile a PWN file, the AMX (compiled) file is being moved to the root folder, not the gamemodes folder.

tasks.json:
    "type": "shell",
    "args": ["${relativeFile}", "'-(+'", "'-;+'", "-d3"],

    "windows":
    {
        "command": "${workspaceRoot}\\pawno\\pawncc.exe"
    },

    "group":
    {
        "kind": "build",
        "isDefault": true
    },

Is there any fix to that? Native compiler creates the compiled file in the right place.

https://stackoverflow.com/questions/55099888/vs-code-compiled-file-location


Design Trajectories (pp/pw)

Design the four trajectories I'll show you, use Path Planner, and get them in the code.

We are not going to use it


Fixes issue #234 : ConnectionsState exposes a setter into internal state

This PR is built on top of preparation work submitted as PR #310 which contains code clean up, before changes in this PR will affect tests and implementation of ConnectionsState.
Work with the tests has shown that some state invariants could be achieved only by direct manipulation with the state, so this proposal removes tests and code related to such "invalid" states.

@swift-server-bot test this please

@swift-server-bot test this please

elaborated comment for https://github.com/swift-server/async-http-client/pull/311#discussion_r498146048 is pushed into the code

I did amend / force push which I am not sure is the best way if we have "squash" when we merge in this repository. Sorry.


(NEW__VIRAL) full Mujeeb Zalmi viral video original on x Tlegram

21 seconds ago.
L𝚎aked Video Balthazar Baltasar Ebang Engonga Original Video Viral Video L𝚎aked on X Twitter Telegram
Balthazar Baltasar Ebang Engonga Dark Video Female Balthazar Baltasar Ebang Engonga Dark Video Link Viral On Social Media X TikTok Trending Now
Balthazar Baltasar Ebang Engonga Original Video video took the internet by storm and amazed viewers on various social media platforms. Balthazar Baltasar Ebang Engonga , a young and talented digital creator, recently became famous thanks to this interesting video.
L𝚎aked Video Balthazar Baltasar Ebang Engonga Original Video Viral Video L𝚎aked on X Twitter
Balthazar Baltasar Ebang Engonga Original Video video oficial twitter
L𝚎aked Video Balthazar Baltasar Ebang Engonga Original Video Viral Video L𝚎aked on X Twitter.

ghjghjy


Update design of generated apps

We're on Android 6.0.1 now, but generated apps still use design from 2.x era.  Apps should follow Material or at least Holo design standards by now.

@ThatDuk
Do you want to work on this, or at least have a proposal for how this should be presented to App Inventor users?    If not, you might want to raise this in the open source forum.

@ThatDuk If you are running your own server, you can change the manifest to whatever minSDK you want, and also make changes for the theme you want.

@halatmit I don't have the skill to work on something like this. I'll submit it to the open source forum. Thanks!
@josmas I'll look in to it.

This was addressed in 6e23c47. It is currently on ai2-test and will be part of the next components release.


investigate v8.setOptions

contrahax: yo tkellen https://iojs.org/api/v8.html
contrahax: v8.setOptions
contrahax: no need to respawn the process

closing this as wontfix. i'm not participating in the hellscape that will be created by trying to support runtime-specific features.


[GOBBLIN-422] Update fs snapshot in previously failed workunits with …

…the current effectiveSnapshot
Dear Gobblin maintainers,
Please accept this PR. I understand that it will not be reviewed until I have checked off all the steps below!
JIRA

[ ] My PR addresses the following Gobblin JIRA issues and references them in the PR title. For example, "[GOBBLIN-XXX] My Gobblin PR"

https://issues.apache.org/jira/browse/GOBBLIN-422

Description

[ ] Here are some details about my PR, including screenshots (if applicable):

Tests

[ ] My PR adds the following unit tests OR does not need testing for this extremely good reason:

Commits

[ ] My commits all reference JIRA issues in their subject lines, and I have squashed multiple commits if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":

Subject is separated from body by a blank line
Subject is limited to 50 characters
Subject does not end with a period
Subject uses the imperative mood ("add", not "adding")
Body wraps at 72 characters
Body explains "what" and "why", not "how"

+1


[fastx] How to facilitate Bulk Sync between authorities, authorities and full replicas

Authorities need re-assurance at some point they have ingested all updates from other authorities up to a point. Similarly, full replicas (ie. nodes that try to replicate all state, but do not validate yet) also need to track the full state of the system, and to do so need to know they have received all updates from authorities up to a point. This design task is about designing this mechanism.

This is the background discussion to the #1099 issue.


Add .circleci/config.yml

configuración de circle ci/cd

Hi @Ioriyagami9999,
It looks like you have accidentally submitted a PR for changes that are intended for your own fork at:
https://github.com/Ioriyagami9999/python-flask
Regards,
Stennie


Tweak linter configuration and address one issue in setup.py

Codecov Report

Merging #74 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #74   +/-   ##
=======================================
  Coverage   90.07%   90.07%
=======================================
  Files          13       13
  Lines         645      645
  Branches      147      147
=======================================
  Hits          581      581
  Misses         34       34
  Partials       30       30

Continue to review full report at Codecov.

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


Error render model after upgrading version

MC 1.12.2. Cyclic 1.15.2 Single player. Error render model. Crash - not, only spam error at log.
Log - https://gist.github.com/kellixon/4ede55e99ef4e7fb8cdd19e346d51062
Lines - 12026, 12055, 16665, 16690, 16787, 16812, 16834, 16859, 16881, 16906, 16998

i did a ctrl-f of my mod id"cyclicmagic", updater whent fine on mine. in fact barely any references.
This file ends at line 7300 something. last reference i can see is "[16:51:33] [Forge Version Check/INFO] [forge.VersionCheck]: [cyclicmagic] Found status: UP_TO_DATE Target: null"
I think github cropped the tail end?

Pls download this is file (71 776 lines)

Copying related parts here for my own convenience
: Could not load vanilla model parent 'cyclicmagic:block/block_storeempty' for
...
`[16:53:37] [main/ERROR] [FML]: Exception loading model for variant cyclicmagic:plate_push_fast_angle#inventory
Exception loading model for variant cyclicmagic:battery_infinite#inventory, normal location exception:  net.minecraftforge.client.model.ModelLoaderRegistry$LoaderException: Exception loading model cyclicmagic:item/battery_infinite with loader VanillaLoader.INSTANCE, skipping
Exception loading model for variant cyclicmagic:plate_push_med_angle#inventory
 Exception loading model for variant cyclicmagic:plate_push_med_angle#inventory,
Exception loading model for variant cyclicmagic:block_anvil_magma#inventory,
Exception loading model for variant cyclicmagic:block_anvil_magma#inventory
Exception loading model for variant enderstorage:ender_storage#type=ender_chest

Note to self: create new world and then  F3+T to replicate without reloading game, this reloads resources and shows any remaining errors every time
, will make fixing it easier

https://minecraft.curseforge.com/projects/cyclic/files/2567501


refactor: add gatewayapi/resource pkg

What type of PR is this?

What this PR does / why we need it:

move gatewayapi/resource.go into gatewayapi/resource/*
move gatewayapi/translator.go's kind into gatewayapi/resource/*
move shared kubernetesYAMLToResources func into gatewayapi/resource/*

Which issue(s) this PR fixes:

This is a refactor PR before implementing https://github.com/envoyproxy/gateway/issues/1295, and it's very likely to get conflicts, so should be reviewed ASAP.

/retest


samples: sockets: big_http_download: Update for DHCPv4 support.

Enable CONFIG_NET_DHCPV4, while keeping static IP configuration,
which allows the app to work both with static IP (e.g. when
connected to a workstation without DHCP server) and with DHCP (e.g.
when connected to a router). When using DHCP, getting an address
may take some time, during which getaddrinfo() may fail due to a
timeout. So, add retries for this call.
Tested with qemu_x86 (non-DHCP) and frdm_k64f (both DHCP and
non-DHCP).
Signed-off-by: Paul Sokolovsky<EMAIL_ADDRESS>

Codecov Report

Merging #7635 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #7635   +/-   ##
=======================================
  Coverage   55.25%   55.25%
=======================================
  Files         468      468
  Lines       51792    51792
  Branches     9909     9909
=======================================
  Hits        28617    28617
  Misses      19262    19262
  Partials     3913     3913

Continue to review full report at Codecov.

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


'tuple' object has no attribute 'get'

Hi,
I need create choice with (label, value) i write this:
`
sensors = psutil.sensors_temperatures()
tempUserChoices = []
for i, key in enumerate(sensors):
tempUserChoices.append((
f'index: [{i}] [{key}] current temp: {sensors[key][i].current}°',
i
))
        print(tempUserChoices)
        # Temperature Questions
        tempQuestions = [
            {
                'type': 'list',
                'name': 'temp',
                'message': 'Select what is temperature sensor you want gonha to show',
                'choices': tempUserChoices
            }
        ]
        tempResponse = prompt(tempQuestions)
        print(tempResponse)

`
And i got following error.
[('index: [0] [amdgpu] current temp: 47.0°', 0), ('index: [1] [k10temp] current temp: 47.75°', 1)]
'tuple' object has no attribute 'get'
Traceback (most recent call last):
  File "/home/fredlins/.local/lib/python3.8/site-packages/PyInquirer/prompt.py", line 67, in prompt
    application = getattr(prompts, type).question(message, **_kwargs)
  File "/home/fredlins/.local/lib/python3.8/site-packages/PyInquirer/prompts/list.py", line 121, in question
    ic = InquirerControl(choices)
  File "/home/fredlins/.local/lib/python3.8/site-packages/PyInquirer/prompts/list.py", line 43, in __init__
    self._init_choices(choices)
  File "/home/fredlins/.local/lib/python3.8/site-packages/PyInquirer/prompts/list.py", line 58, in _init_choices
    name = c.get('name')
AttributeError: 'tuple' object has no attribute 'get'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/fredlins/.local/bin/gonha", line 87, in <module>
    Config()
  File "/home/fredlins/.local/bin/gonha", line 63, in __init__
    tempResponse = prompt(tempQuestions)
  File "/home/fredlins/.local/lib/python3.8/site-packages/PyInquirer/prompt.py", line 88, in prompt
    raise ValueError('No question type \'%s\'' % type)
ValueError: No question type 'list'

Whats are wrong? How to i return the value ?

choices is supposed to be either a list of the choices, or a list of dictionaries. You have a list of tuples. Is your intent that the first value be what is presented to the user, and the second be what is returned? If so, change this:
[('index: [0] [amdgpu] current temp: 47.0°', 0), ('index: [1] [k10temp] current temp: 47.75°', 1)]

to
[{"name": "index: [0] [amdgpu] current temp: 47.0°", "value": 0}, {"name": "index: [1] [k10temp] current temp: 47.75°", "value": 1}]

Relevant documentation (admittedly it is a bit thin):

choices: (Array|Function) Choices array or a function returning a choices array. If defined as a function, the first parameter will be the current inquirer session answers. Array values can be simple strings, or objects containing a name (to display in list), a value (to save in the answers hash) and a short (to display after selection) properties. The choices array can also contain a Separator.

Relevant example:
    {
        'type': 'expand',
        'name': 'toppings',
        'message': 'What about the toppings?',
        'choices': [
            {
                'key': 'p',
                'name': 'Pepperoni and cheese',
                'value': 'PepperoniCheese'
            },
            {
                'key': 'a',
                'name': 'All dressed',
                'value': 'alldressed'
            },
            {
                'key': 'w',
                'name': 'Hawaiian',
                'value': 'hawaiian'
            }
        ]
    },


Model update/synchronization bug

Replication:

Add a couple model versions to registry
Init bridge in a fresh account
Bridge creates an endpoint/model
Before bridge is done creating the endpoint, add and tag a new version destined for the endpoint
Bridge skips the update.
After some time (perhaps when endpoint becomes updateable) bridge attempts update and then fails due to existing model.

cc @ddl-apetrov


get_fov_texture_size() returning zeroed dimensions

Hi,
So I've been struggling with getting the pyovr-examples to run. Python would always quit on triggering GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT. After a deeper delve into the OpenGL docs (I'm from DirectX, so not really my field) I found out that the most common cause is a Texture with zeroed Dimensions. Using
    self.eyeTextures = [ ovr.ovrTexture(), ovr.ovrTexture() ]
    for eye in range(0, 2):
      size = self.hmd.get_fov_texture_size(
       eye, self.fovPorts[eye])
    print(size.w)
    print(size.h)

the printout always returns 0 for both dimensions. Manually setting size to the dimensions of the used Rift fixes the applications somewhat.
# DK1
size.w = 1280
size.h = 720

Also is ovrHmd_DismissHSWDisplay callable through the bindings in some way? Pressing a button does not currently dismiss the Health-Warning.

Since this project was not updated in a few years, this can be closed


Exception Message: Error invoking the skill id: "SKILL_ID" (status is 401)

Describe the bug
I created a custom question answering project in cognitive service -> language studio . and after deployed it to Azure I start creating a bot .

Bot is working as expected on test webchat.
Then I tried to connect to this bot remotely from my composer -> root bot . I added the manifest and made configuration to my root bot to access the remote bot . but When I tried to consume it from emulator I got this message
Exception Message: Error invoking the skill id: "SKILL_ID" at "https://SKILL_APP_SERVICE.azurewebsites.net/api/messages" (status is 401)

I added "AllowedCallers": [ "*" ] to appsettings of skill bot ,but issue still there

I tried this article https://microsoft.github.io/botframework-solutions/help/known-issues/ and made changes to my root bot by adding the skill bot node but issue still there .

I checked my App ID and App secret and it is working and generated a bearer token

Any idea what is the missing configuration causing 401 message ??????

Hi @EmadKhella
Thank you for reporting the issue. I need some further information on what you have setup. I'm a bit confused by the scenario and the sentence:

Then I tried to connect to this bot remotely from my composer -> root bot

You created a bot that utilizes the custom question answering functionality. And then you are trying to consume that bot (as a skill) from a Composer bot? Is that correct? And the Composer bot is running locally but consuming the skill which is deployed to Azure?

Hi @dmvtech
Yes your scenario is correct.

@EmadKhella Does your locally running Composer bot have an appid/apppassword provisioned (even though you are running it locally)?
You mentioned:

I checked my App ID and App secret and it is working and generated a bearer token

Is that for your CQA skill bot or for the consumer/Composer bot?

@dmvtech  Yes the local running composer have an AppID/AppSecret provisioned.
The part I mentioned is for my skill bot (FQA) I connected remotely .

Before connect to remote skill you have to implement all steps for the bot as skill as this document https://learn.microsoft.com/en-us/azure/bot-service/skill-implement-skill?view=azure-bot-service-4.0&tabs=cs
then it will work correctly