DFP Integrated Training Updates (Stress Testing/Benchmarks)

Description

Updated DFP integrated training benchmarks
Updated DFP integrated training modules to avoid out of memory error for training and inference tasks
Updated docs and added structural diagrams for better understanding of the workflow
Added monitor module implementation
Separated batch (file) and streaming (kafka) pipeline execution files
Re-organised notebooks to notebooks folder
Added new control message definitions
Added notebooks for DFP integrated training (Duo and Azure) with workflow diagrams and documentation.
Ensured all (DFP stages and modules) the notebooks running successfully
Addressed most of the flake8 warnings

Checklist

[x] I am familiar with the Contributing Guidelines.
[x] New or existing tests cover these changes.
[x] The documentation is up to date with these changes.

/merge


Waypoint capture & accuracy

For best sequence, report accuracy of waypoints as max(0, (100ft -distance) / 100ft).
Remove current waypoint grading (track-distance and capture threshold).

Can this be closed?


Plugin crash the app when trying to resize an image from file (i.e. gallery)

code:
window.imageResizer.resizeImage(
               function(data) {
                    console.log("resizeImage : \r\n" + data);
                }
               , function (error) {
                 console.log("Error : \r\n" + error);
               }, imageURI, 750, 750, {
                  resizeType: ImageResizer.RESIZE_TYPE_PIXEL,
                  imageDataType: ImageResizer.IMAGE_DATA_TYPE_URL,
                  format: ImageResizer.FORMAT_JPG
               }
            );

If you imageURI is an image chosen from gallery "content://media/external/images/media/5045"
the plugin crashes the app.
More info:
cordova -v 6.1.0
cordova platform version android 5.1.1
cordova-plugin-image-resizer 1.0.0 "ImageResizer"
android version 4 - 5
code for getting the image from the device:
navigator.camera.getPicture(
  that.photoTaken,
  that.onCaptureFail, {
    destinationType: Camera.DestinationType.FILE_URI,
    sourceType: Camera.PictureSourceType.PHOTOLIBRARY,
    mediaType: Camera.MediaType.PICTURE,
    saveToPhotoAlbum: true
  }
);

i met the same issue recently, which is wired , if i get image from camera ,the" resizeImage"  function works fine , if i choose image from  PHOTOLIBRARY,  app crash.

Same here. Damn it.  Here are the crash logs.
E/AndroidRuntime( 4183): FATAL EXCEPTION: pool-1-thread-2
E/AndroidRuntime( 4183): Process: com.myapp.android, PID: 4183
E/AndroidRuntime( 4183): java.lang.IllegalArgumentException: Found query in URI: file:///storage/emulated/0/Android/data/com.myapp.android/cache/IMG_20161120_204314.jpg?1479654794267
E/AndroidRuntime( 4183): 	at java.io.File.checkURI(File.java:235)
E/AndroidRuntime( 4183): 	at java.io.File.<init>(File.java:177)
E/AndroidRuntime( 4183): 	at com.raananw.ImageResizePlugin$ImageTools.getBitmap(ImageResizePlugin.java:102)
E/AndroidRuntime( 4183): 	at com.raananw.ImageResizePlugin$ResizeImage.run(ImageResizePlugin.java:197)
E/AndroidRuntime( 4183): 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
E/AndroidRuntime( 4183): 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
E/AndroidRuntime( 4183): 	at java.lang.Thread.run(Thread.java:841)
E/Sensors (  822): Lightsensor values:49.000000
E/android.os.Debug(  822): !@Dumpstate > sdumpstate -k -t -z -d -o /data/log/dumpstate_app_error
E/Sensors (  822): Lightsensor values:49.000000
E/libEGL  ( 4183): call to OpenGL ES API with no current context (logged once per thread)

Will this ever be resolved, seeing that there is no activity on the repo. :(

I get all the new messages but haven't enough time to fix the stuff... if someone would like to write a bugfix and creates a pull request I will check and merge it.

@JoschkaSchulz I have no idea about objective c or java. Could you please fix this. Lot of people are dependent on this.

@srameshr
Found query in URI: file:///storage/emulated/0/Android/data/com.myapp.android/cache/IMG_20161120_204314.jpg?1479654794267

maybe call it without query string then?
btw, maybe i'm wrong, but you're not using the plugin provided by this repository (com.raananw.ImageResizePlugin vs. info.protonet.imageresizer.ImageResizer). Maybe you should call the author of com.raananw.ImageResizePlugin for action.

Both these repositories are similar. I have tried it with both the plugins. It throws the same error.
Could you elaborate on what do you mean by "without query"? Do you mean to just remove ?1479654794267 ? Or something else?
BTW, I am not appending any query to the path. It is what Cordova camera plugin provides by default.
May be I will check the path that is provided by camera and gallery and I will update
@salzig

@salzig OMG!!! It was due to the query string. I removed query string and it worked! 👍
If anyone comes here, please look at it, here is the solution:
Here is the file path that is provided by Cordova when an image is chosen by gallery:
file:///storage/emulated/0/Android/data/com.eatup.ios/cache/IMG_20161122_124728.jpg?1083017394

You got to remove the query string ?1083017394 else, your app will crash.
var imagePath = file:///storage/emulated/0/Android/data/com.eatup.ios/cache/IMG_20161122_124728.jpg?1083017394;

if(imagePath.indexOf("?") > 0) {
  imagePath = imagePath.trim().split("?")[0];
}

And then provide this imagePath to the window.imageResizer.resizeImage function.

@srameshr have you even tried this plugin? info.protonet.imageresizer.ImageResizer (They are similar, but not the same)
As I can see, this exception only happens in RaananW/PhoneGap-Image-Resizer/.../ImageResizePlugin.java#L102 cause their are not using FileHelper.getInputStreamFromUriString provided here: org.apache.cordova.camera.FileHelper (with the same 'remove query'-hack used internally).
This helper is used in this repo (see: ImageResizer.java#L95. So your issue should not happen with this plugin.

@LAndreas
Then why are people who are using this plugin seems to be raising the same issue. As in this thread.

I'm not sure if this is the same issue like yours. Maybe @eliaweiss could provide a stracktrace?

@LAandreas
Either way, the plugin fails when you try to upload an image from gallery.

@srameshr thats guessing, not knowing. Your problem happens cause of a different source code.
would be cool if @eliaweiss or @twainyoung could provide a stacktrace.

Would like to see a Stack trace for that Project, then I can maybe invest some time to write a fix.

@salzig True. PS: @eliaweiss @twainyoung


@inject doesn't hoist statics props of component

RE: #88, #92, #95
I was previously on v3.5.1 and just upgraded to v3.5.5. Discovered an issue where a component decorated with @inject was failing to apply my defaultProps for the component causing an undefined error for a property:
@inject("mystore") @observer
class MyClass extends React.Component {
    // ...
}

MyClass.propTypes = { /* ... */ }
MyClass.defaultProps = { /* ... */ }

This was working fine in v3.5.1. But as of v3.5.5 (I assume as of v3.5.4) this code fails. Default props for this component never gets set. And I see the new warning about setting props on the HoC. Given in #92, static props were hoisted for @observer, I was wondering why the same wasn't done for @inject, and instead the new warnings were added?
The code I had before was much easier to read. I now have to do this:
MyClass.wrappedComponent.propTypes = { /* ... */ }
MyClass.wrappedComponent.defaultProps = { /* ... */ }

and at least in my opinion that doesn't look that clean. Shouldn't the use of @inject be transparent? Just curious. I have only been using react and mobx for a couple months now so I could be missing something.

Thanks for reporting! This should behave the same for both inject and observer indeed

Addressed this issue in mobx-react 4. Hoisting is not possible the other way around, as it leads to highly confusing / ambigious scenarios (initially tested that, see the discussion on this commit: https://github.com/mobxjs/mobx-react/commit/666577b41b7af8209839e7b243064a31c9951632
Instead, improved the docs to explain these scenarios better.

4.0.0 has been released, closing the issue


Builder Blocks are instantiated during registration

Problem
This getName() method is called during block registration
https://github.com/Z3d0X/filament-fabricator/blob/50f0cc63d86f327d124f380ebb27057f66fce6b4/src/PageBlocks/PageBlock.php#L22-L25
https://github.com/Z3d0X/filament-fabricator/blob/50f0cc63d86f327d124f380ebb27057f66fce6b4/src/FilamentFabricatorManager.php#L78
Potential Solution
A potential viable solution might be to Explicitly set a name like in Layouts
https://github.com/Z3d0X/filament-fabricator/blob/50f0cc63d86f327d124f380ebb27057f66fce6b4/src/Layouts/Layout.php#L11-L16
make:page-block could auto to generate $name.
This would be a breaking a change, since existing application would need to explicitly set the $name.
Other ideas are welcome

This might also be the root cause of https://github.com/Z3d0X/filament-fabricator/issues/122


Code Refactoring - Part 1 - Scope Out Needed Changes and Improvements

In order for the UI team to quickly add new features and fix bugs, we decided to overhaul the code base for the UI. This issue is part 1 of the multi part process of refactoring the code base.
In this issue, Marc will go through the code base on his own, come up with suggestions and improvements the UI team can make and then leave comments with his findings. We will then meet this upcoming Saturday (May 23, 2021), go over Marc and Waleeds findings, decide the changes that need to be made and start the refactoring process.

Closing, as @waleedza99 already has an extensive list of improvements listed in #59


The Speech-To-Text service does not support Korean. I wonder when I plan to apply.

Is your feature request related to a problem? Please describe.
Bing Speech Service supports Korean in the Speech-To-Text service. I would like to use the new Speech SDK but I was using Bing Speech service because it does not support Korean language. I am worried that it will be canceled after one year.
Describe the solution you'd like
Describe alternatives you've considered
Speech SDK can be made to support Korean. Also, the quality of the Korean voice supported by the Text-To-Speech service is not very good. So, I am using AWS Polly. Of course, it is possible because there are few users, but I think that it is better to provide better service in this case to win another AWS or Google.
Additional context
As a Korean MVP, I hope that Microsoft will expand the Korean language service in Korea and use it for many developers.

the SDK is not responsible for deciding when/if a new language gets added.
We also can deny/confirm and language support.
You should other support options described here.
https://docs.microsoft.com/en-us/azure/cognitive-services/speech-service/support
Not sure what other options are available for you as an MVP
For feature requests etc I believe this is the best choice: https://docs.microsoft.com/en-us/azure/cognitive-services/speech-service/support#uservoice-forum


fix(table): add translatable label props for all components and features of the table

Summary

Need to expose translatable labels for all components and features of the table

Change List (commits, features, bugs, etc)

added props through the entire chain to translate labels

Related Issues

Closes IBM/carbon-addons-iot-react#71

Acceptance Test (how to verify the PR)

Try out the new story on stateful table with I18N strings and notice that they're all changed.

How about we consolidate all of the i18n strings in the component into a single, top-level prop?  I think it's important to keep a logical difference between the "view" (the changing 'state' of the table) and the static props (data, columns, options, etc.) that define the component.  This, to me, fits in with the more static props.
(Also, most users would likely prefer providing all of the strings in a single prop and passing that in wholesale)
Example:
<Table
  data={data}
  columns={columns}
  view={view}
  i18n={
    pageBack
    pageForward
    pageItemRange
    ...
    clickToExpand
    ...
    clearAllFilters
  }
/>

@scottdickerson if you don't mind, I'm happy to do this refactor this afternoon

@bryancboyd that's a nicer idea I think thanks, don't forget to get the search placeholder text

@scottdickerson just pushed commits refactoring the props, can you review?

:tada: This PR is included in version 1.31.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.31.1 :tada:
The release is available on npm package (@release-1.x dist-tag)
Your semantic-release bot :package::rocket:


[SFC] What are the return codes

Hi,
what are the return codes sent by SFC ?
I need these to set a CMD repair script and select according choice using errorlevel.
I assume a normal sfc sends 0, but what happens when error where found and repaired, and found but not repaired ?
Thank you

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 0d979606-3b11-34e5-70db-88d90855cf5c
Version Independent ID: d2358e0b-7688-ac7f-0f08-fc198b6a57a9
Content: sfc
Content Source: WindowsServerDocs/administration/windows-commands/sfc.md
Product: windows-server
Technology: windows-commands
GitHub Login: @JasonGerend
Microsoft Alias: alalve

Did you ever figure this out?

Hi, not sure to fully understand your answer but no. Didn't find more info.

Here's a breakdown of the %errorlevel% codes, with some additional details:
0: No integrity violations were found. This is indeed the ideal outcome, indicating all protected system files are healthy.
1: System File Checker found corrupt files and attempted to repair them. This doesn't necessarily guarantee successful repair. SFC checks if it has a cached copy of the healthy file and replaces the corrupt one. However, if the cached copy is also corrupt or unavailable, the repair may not be successful.
2: System File Checker found corrupt files but could not repair them. This usually means the tool lacks a healthy copy of the file or encounters permission issues preventing the replacement. It's crucial to investigate further and find alternative solutions for these unfixable files.
Always check/parse the CBS.log file for the full details of what happened..

Very kind.
Thanks


Badger 2040W: Date_Time?

Hi,
I wrote a little script that looks at a dictionary with birthday and shows me how long until the next person has a birthday.
import badger2040
import utime

# Birthday information
birthdays = {
    'Person1': (9, 1),
    'Person2': (20, 1),
    'Person3': (4, 2),
}

# Function to get the current date in the format DD/MM
def get_current_date():
    current_time = utime.localtime()
    current_day = current_time[2]
    current_month = current_time[1]
    return current_day, current_month

# Function to display birthday message
def display_birthday_message(display, next_birthday_person, days_until_birthday):
    # Display "Happy birthday!" on the screen
    display.set_pen(15)  # White background
    display.clear()

    display.set_pen(0)  # Black text
    display.set_font("bitmap8")

    # Display the name centered, larger, and a bit lower
    text_width = display.measure_text(next_birthday_person, scale=5)
    display.text(next_birthday_person, (296 - text_width) // 2, 30, scale=5)

    # Display "Happy birthday!" centered and larger
    birthday_message = "Gelukkige verjaardag!"
    text_width = display.measure_text(birthday_message, scale=3)
    display.text(birthday_message, (296 - text_width) // 2, 95, scale=3)

    display.update()
    utime.sleep(5)  # Display the message for 5 seconds

# Function to calculate countdown
def countdown(current_date, stop_date):
    current_day, current_month = current_date
    stop_day, stop_month = stop_date

    # Calculate days until the next birthday
    if current_month < stop_month or (current_month == stop_month and current_day <= stop_day):
        days_until = (stop_month - current_month) * 30 + (stop_day - current_day)
    else:
        # Birthday is in the next year
        days_until = (12 - current_month + stop_month) * 30 + (stop_day - current_day)

    return days_until

# Display Setup
display = badger2040.Badger2040()

# Run the script every 8 hours
while True:
    # Get the current date
    current_date = get_current_date()

    # Find the next birthday
    next_birthday_person = None
    days_until_birthday = float('inf')

    for person, birthday in birthdays.items():
        days_until = countdown(current_date, birthday)

        if days_until < days_until_birthday:
            days_until_birthday = days_until
            next_birthday_person = person

    # Set pen color and font for the next person's birthday and days until
    display.set_pen(15)  # White background
    display.clear()

    display.set_pen(0)  # Black text
    display.set_font("bitmap8")

    # Display the next person's birthday centered, larger, and a bit lower
    text_width = display.measure_text(next_birthday_person, scale=5)
    display.text(next_birthday_person, (296 - text_width) // 2, 30, scale=5)

    # Display remaining days larger and centered
    days_text = f"Nog {days_until_birthday} dagen"
    text_width = display.measure_text(days_text, scale=4)
    display.text(days_text, (296 - text_width) // 2, 95, scale=4)  # Updated height to 95

    display.update()

    # Check if it's someone's birthday
    if days_until_birthday == 0:
        display_birthday_message(display, next_birthday_person, days_until_birthday)

    # Calculate and display countdown
    count_days = days_until_birthday
    countdown_text = f"Countdown: {count_days} days"
    text_width = display.measure_text(countdown_text, scale=4)
    display.text(countdown_text, (296 - text_width) // 2, 130, scale=4)

    display.update()

    # Sleep for 8 hours
    utime.sleep(1 * 60)  # 8 hours in seconds

Runs fine with Thonny! But when I run this on battery, the date is complely wrong on screen. Does this script use date time from Thonny? How do you get the correct date from the onboard 2040 chip, untethered?

I think that you should first connect to wifi and get the date from NTP. Check the example clock.py
https://github.com/pimoroni/badger2040/blob/a8552a55ad090783f9bf06aa2a07821051accf87/badger_os/examples/clock.py#L12-L20

Thank you. Sorry for asking, this is all a bit new to me. Thanks!


Wi-Fi strength not being passed by MQTT

WIFI strength not being passed by MQTT thread

I check the code and tested with my cam.
It seems to be ok.
What is your model_suffix?
Please try both commands:
cat /proc/net/wireless | awk 'END { print $3 }' | sed 's/\.$//'
cat /proc/net/wireless | grep wlan0 | awk '{ print $3 }' | sed 's/\.$//'

Check this commit:
https://github.com/roleoroleo/yi-hack-Allwinner-v2/commit/46d0ded99e59c89da52997a0595df2b0d5a73c32


Can't upload file using command line ftp client in Windows

Simple cmd:
Visator.exe - file to upload;
<IP_ADDRESS> - ip address for Windows Embedded Compact 7 device;
@echo off

if exist %~dp0Visator.exe (

    echo Upload file to device ...

    (
        echo open <IP_ADDRESS>
        echo anonymous
        echo binary
        echo cd /HardDisk
        echo literal pasv
        echo put Visator.exe
        echo quit
    ) > %~dp0upload

    ftp -s:%~dp0upload > nul

    del %~dp0upload /q > nul

    echo Done.
)

ftp> open <IP_ADDRESS>
Связь с <IP_ADDRESS>.
220 This is mooftpserv v1.3. Hey ho let's go!
Пользователь (<IP_ADDRESS>:(none)): anonymous
230 Login successful.
ftp> binary
200 Switching to BINARY mode.
ftp> cd /HardDisk
200 Alright, I'll do it...
ftp> literal pasv
227 Switched to passive mode (192,168,5,105,192,110)
ftp> put Visator.exe
500 Specified argument was out of the range of valid values. Parameter name: newAddress
150 Opening data connection.

I need upload a file using script and I don't know how to do that.

I haven't tested it yet, but if you're using the Windows FTP command-line client, then you should probably use active mode. This stackoverflow link tells me that this client does not support passive mode: http://stackoverflow.com/questions/18643542/how-to-use-passive-ftp-mode-in-windows-command-prompt

Ok, with curl passive mode works fine:
curl -v --ftp-pasv -T Visator.exe ftp://<IP_ADDRESS>/HardDisk/ --user anonymous:
but active mode not working:
curl -v --disable-epsv --disable-eprt --ftp-port <IP_ADDRESS> -T Visator.exe -u anonymous: 'ftp://<IP_ADDRESS>/HardDisk/'
If you find out a way how to do this using Windows FTP command-line client, please let us know.

Could this be a firewall or routing issue? In active mode, the client opens a socket to which the server will connect.
I tried using the Windows ftp client locally, with client and server on the same machine, and it worked and used the active mode correctly.

We'll, it's not a server issue, closing.


Remove exists() from getEndpoint()

Should fix tests running under travis build and boot2docker where
unix:///var/run/docker.sock does not exist.
exists was not necessary since connecting to a non-existent unix
socket would fail anyways and is already handled.

:metal:


B 19573 ppm est weight review message confusing

Agility ticket
INT PR
https://github.com/transcom/mymove/pull/12598
Summary
When creating a shipment as a service counselor, this field would attempt to validate the input which was decorated with a comma, such as 12,000
How to test

Log in as a service counselor, and create a shipment for a move.
Under the estimated weight section, enter in a weight which would be given a comma delimited value.
Swap a number by highlighting the characters to switch, and overwrite the digit.
A validation error would pop up like this:

(This is due to the comma being provided to the event pipeline, and the parsing functions within the validator is unable to cast a non-number string to a number).
But instead, we see the message does not pop up

Warnings

:warning:
This PR does not include changes to unit tests, even though it affects app code.

  Generated by :no_entry_sign: dangerJS against 0ee58e10d199996ccb78e49e45443dbdf257c154


Samples loading Go built .dll's into C# using P/Invoke

Right now we are looking into loading shared-c libraries built from Golang code (using cgo) into our C# project. There is not much documentation on how to import .dll's built from Golang code into .NET, so I spent a little time working through this and constructed a pretty solid and varied array of examples that could be useful for others in the future looking to do the same thing. Especially since Go is becoming more of a prominent tool as it matures.
If you guys are interested in putting some samples out for the public to use, let me know. Not looking for any ownership or anything, just think that it would be helpful to others looking to use P/Invoke to import Go built .dlls or other shared-c libraries into C# code.
Repo is here
Target framework
Check the .NET target framework(s) being used, and include the version number(s).

[ ] .NET Core 3
[ ] .NET Framework 4.8

I originally created the issue in dotnet/docs here and was instructed to bring it to samples instead.  I do think this would be a good addition because this practice is becoming more prevalent.

Sounds good! The structure of a sample is pretty easy to handle. Create a new directory here: https://github.com/dotnet/samples/tree/master/core/interop as this seems to be the appropriate folder. I'm not sure what directory name would be good, but maybe godll or something. (not simply "go" though as we don't want to confuse it with a language-specific folder.
Then, create a subfolder named "cs" and have your csharp project and code in that folder. Include a readme.md file and make sure to add the metadata so that the sample will be searchable via https://docs.microsoft.com/en-us/samples/browse/
So I think your folder path would be something like /core/interop/godll/cs/
Here is an example readme (and sample) with some metadata you can use as a template: https://github.com/dotnet/samples/tree/master/core/encoding/cyrillic-to-latin/cs

@johncburns1 Thank you again for the submission. I'm going to close this issue per the comments in the related PR.


Interested in a Dockerfile for stringer?

Since Heroku's going to start charging for dynos soon, and because I wanted to figure out how, I got stringer working inside of a Docker container:
https://github.com/darron/stringer/commit/591cbb8d0677dbce8a970e74acdbe16a31d071e8
I'm using a Heroku Postgres DB - but the app is running inside a Docker container on a Digital Ocean instance.
Rake commands are much more complicated with this setup - I haven't even tried.
Most of the required ENV variables are passed along with the container starting - here's what I have setup:
/news/RACK_ENV:production
/news/SECRET_TOKEN:not-the-real-one
/news/STRINGER_DATABASE_HOST:hostname.compute-1.amazonaws.com
/news/STRINGER_DATABASE_PASSWORD:the-password
/news/STRINGER_DATABASE_PORT:5432
/news/STRINGER_DATABASE_USERNAME:the-username
/news/STRINGER_DATABASE:stringer

Nice - yeah, I'm always open to new deployment options. Someone else has done some work on this in the past: https://github.com/antonlindstrom/stringer-docker
Once you've got it fully ironed out, a pull request adding instructions to the docs folder would be great.

Hi @darron - going to close this issue. Feel free to re-open or pull request if you have any updates on this. Thanks for your interesting :)


Allow flake8 4.x

Similar to https://github.com/wemake-services/flake8-eradicate/pull/219, this PR aims to allow flake8-broken-line to install along with flake8 v4.x

are you interested in adding py3.10 support as well?

@sobolevn little update on this, looks like its not currently possible. cffi (a dependency of poetry) doesnt install on 3.10 yet unless you compile it from source (https://groups.google.com/g/python-cffi/c/POcxTwqPHk0). Probably worth waiting for those wheels and trying this at a later date. For what I can see there is nothing that prevents this package from supporting python 3.10, so all that should be done is add "3.10" to the matrix of versions to test


Error retrieving parent for item

Error:(3) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Borderless.Colored'.
After using this library,i am getting such error...
Before using this library i use previous version of this(7).
This is my .xml code line

That's unrelated to this library.
You're probably using a version of AppCompat in your app that's a mismatch to the version used by this library.

ok. Thanks #afollestad


Revert  "pageserver: roll open layer in timeline writer (#6661)" + PR #6842

This reverts commits 587cb705b898565d459d044df84d1ac2633f00bf (PR #6661)
and
fcbe9fb1840b7628fd242eec3bfd0df83535d0f7 (PR #6842)
Conflicts:
pageserver/src/tenant.rs
pageserver/src/tenant/timeline.rs
The conflicts were with

pageserver: adjust checkpoint distance for sharded tenants (#6852)
pageserver: add vectored get implementation (#6576)

Removing myself as reviewer as I don't know the context of this revert

2424 tests run: 2298 passed, 4 failed, 122 skipped (full report)
Failures on Postgres 16
* `test_forward_compatibility`: [release](https://neon-github-public-dev.s3.amazonaws.com/reports/pr-6938/8068786919/index.html#suites/0fbaeb107ef328d03993d44a1fb15690/d030f4fd66b2fc99)

Failures on Postgres 15
* `test_forward_compatibility`: [release](https://neon-github-public-dev.s3.amazonaws.com/reports/pr-6938/8068786919/index.html#suites/0fbaeb107ef328d03993d44a1fb15690/2ec73c0526be406b)

Failures on Postgres 14
* `test_forward_compatibility`: [release](https://neon-github-public-dev.s3.amazonaws.com/reports/pr-6938/8068786919/index.html#suites/0fbaeb107ef328d03993d44a1fb15690/d07ea28de333c14b)

* `test_multi_attach`: [debug](https://neon-github-public-dev.s3.amazonaws.com/reports/pr-6938/8068786919/index.html#suites/7538959189f4501983ddd9e167836c8b/623c52191bd62004)

# Run all failed tests locally:
scripts/pytest -vv -n $(nproc) -k "test_forward_compatibility[release-pg14] or test_multi_attach[debug-pg14] or test_forward_compatibility[release-pg15] or test_forward_compatibility[release-pg16]"

Test coverage report is not available
The comment gets automatically updated with the latest test results
d4c4da0 at 2024-02-27T17:56:34.806Z :recycle:

This is fun. It's failing because the previous version includes the layer flushing we are trying to revert, but we are removing the allowed log line from the test code (here). We can either add the whitelist back in or force merge as is.

This is fun. It's failing because the previous version includes the layer flushing we are trying to revert, but we are removing the allowed log line from the test code (here). We can either add the whitelist back in or force merge as is.

Yeah, same diagnosis on my side.
I'm thinking of adding to the allowed_errors, will push a change.


Requesting Dark Theme Variant does not work for FluentTheme

Describe the bug
When setting the Application.Current.RequestedThemeVariant to ThemeVariant.Dark nothing changes when the FluentTheme is active.
It works fine when the SimpleTheme is active, and the Application.Current.ActualThemeVariant correctly reports Dark.
To Reproduce

Clone the branch avalonia-v.0.11 from over here.
Make sure the Default Style toggle button is inactive and then toggle the Dark Theme button.

Expected behavior
I expected the window to turn dark and the text on the toggle buttons white, just like in the SimpleTheme.
Also I expected to actually "see" the toggle buttons in the FluentTheme, but this might be another issue.
Screenshots
FluentTheme with Light variant:

FluentTheme with Dark variant (not working as expected):

Desktop (please complete the following information):

OS: Windows
Version 10

Additional context
Works as expected with v.0.10.

toggle dark / light variant should work but swapping out entire theme is a heavy lifting. Check how ControlCatalog does it.

Sent you a PR to fix FluentTheme toggle Light / Dark. Swapping entire theme is not possible without opening the window again. Correct me if I'm wrong @maxkatz6

@timunie is right, as ControlThemes are statically resolved. And if you try to dynamically change set of these static resources, existing controls won't be refreshed. It is not intended to do so, as swapping different themes in runtime is not a supported scenario.
But theme variant switching, like Dark or Light or other, should work fine. Having both fluent and simple themes included at once would definitely affect this behavior.

Swapping entire theme is not possible without opening the window again.

Window re-opening is one of ways to do it, yes. Probably the best for this kind of demo apps.
Another option would be to recreate content of the window, or mark or reference Control.Theme with DynamicResource for all of your controls (not really recommended though due to performance).
You also can try to remove any theme includes from Application.xaml, and instead add them to your windows independently.

I'm converting this into a discussion as default behavior is by design sadly. But performance also kind of matters 😃


[Backport release-21.05] nextcloud: 20.0.7 -> 20.0.13, 21.0.2 -> 21.0.5

(cherry picked from commit 49573709c5f842f0e3fbe4da3cd02f1c74aa9b1b)

Motivation for this change
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Release notes)

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

[ ] Fits CONTRIBUTING.md.

whooops, going to fix that in a second


Support for Resources

Hey all
I'm trying to build a small javascript component which imports a single external resource. I can't seem to figure out what's causing the error here. But, my best guess is resources aren't yet supported.
// Build Script
import { componentize } from '@bytecodealliance/componentize-js';
import { readFile, writeFile, mkdir } from 'node:fs/promises';
import { resolve } from 'node:path';

const jsSource = await readFile('main.js', 'utf8');

const { component } = await componentize(jsSource, {
  witPath: resolve('wit'),
  enableStdout: true,
  preview2Adapter: '../wasi_snapshot_preview1.reactor.wasm.dev',
  worldName: "function-world",
  debug: true,
});

await mkdir('out', { recursive: true });
await writeFile('cool_function.wasm', component);

// Function

export function handleRequest(req) {
  return {
    status : 200,
    headers : [],
    body : req.body
  }
}

// Function World

world function-world {
  use mycelia:http/interfaces.{client} // importing the client throws
  export handle-request: func(req: http-request) -> http-response
}

// Dep snippet

interface interfaces {
  use types.{client-request, client-result}
  resource client {
    constructor()
    send: func(req: client-request) -> client-result
  }
}

thread '<unnamed>' panicked at /Users/gbedford/.cargo/git/checkouts/jco-c2d1523c7c4f4f8a/be4ab7c/crates/js-component-bindgen/src/function_bindgen.rs:1121:71:
no entry found for key
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
wasm://wasm/015bfc9a:1

RuntimeError: unreachable
    at __rust_start_panic (wasm://wasm/015bfc9a:wasm-function[4802]:0x291bdc)
    at rust_panic (wasm://wasm/015bfc9a:wasm-function[4789]:0x2915cb)
    at _ZN3std9panicking20rust_panic_with_hook17h53a16cc107f82a01E (wasm://wasm/015bfc9a:wasm-function[4788]:0x2915a8)
    at _ZN3std9panicking19begin_panic_handler28_$u7b$$u7b$closure$u7d$$u7d$17h785108f94bf7bebdE (wasm://wasm/015bfc9a:wasm-function[4776]:0x2907fb)
    at _ZN3std10sys_common9backtrace26__rust_end_short_backtrace17he50a360aef66315aE (wasm://wasm/015bfc9a:wasm-function[4775]:0x29071e)
    at rust_begin_unwind (wasm://wasm/015bfc9a:wasm-function[4783]:0x290eb1)
    at _ZN4core9panicking9panic_fmt17h5e1c79a8a40da992E (wasm://wasm/015bfc9a:wasm-function[4949]:0x29f4e5)
    at _ZN4core6option13expect_failed17h9b74a8942db97e9aE (wasm://wasm/015bfc9a:wasm-function[5012]:0x2a944b)
    at _ZN106_$LT$js_component_bindgen..function_bindgen..FunctionBindgen$u20$as$u20$wit_bindgen_core..abi..Bindgen$GT$4emit17hdee68ca0c39977e9E (wasm://wasm/015bfc9a:wasm-function[1454]:0xe311e)
    at _ZN16wit_bindgen_core3abi18Generator$LT$B$GT$4emit17h4215c8ba60679758E (wasm://wasm/015bfc9a:wasm-function[34]:0x5bf4)

Thanks for posting. Yes resources have not been implemented in this project yet. It was top of my list until it wasn't! Will leave this one open to track.

I recently implemented resource support for componentize-py (and implemented it for the wit-bindgen Rust and C generators earlier).  I'd be interested in helping with this.


Bug: Missing progress bar in recursive join queries

Kùzu version
master
What operating system are you using?
No response
What happened?
The progress report is missing when running recursive join queries.
Are there known steps to reproduce?
No response

Added in #4488


RFC:

One of the directions modern web components are moving is declarative html. A bit likejsx but the other way around :) Now for html / js @rictic made a extension https://github.com/Polymer/vscode-plugin that brings auto completion for web components and their attribute defenition look up to a next level. https://youtu.be/zxcfPACo4-g?t=1h3m42s So that part is already done and backed by Google. Notice that we are talking web components in general here not just polymer.
The problem is there is no html inline ts solution yet. We can't really expect from the polymer team to integrate
</dom-module>

EDIT: Note I am also looking into how close ES20XX syntax and typescript syntax are going to get that a future browser can just ignore all the typing syntax and read
</dom-module>

I think the correct way to handle this is to add a new typescript plugin for polymer. the plugin would be the main entry point from IDEs and would get the HTML first hand; the plugin then can defer to the TS language service for the TS and JS code sections (and would tell the TS LS about the which language the content is).
More information can be found at https://github.com/Microsoft/TypeScript/wiki/Writing-a-Language-Service-Plugin.
Also a similar effort, though is not identical, is the Vue extension for VSCode, see https://github.com/octref/vetur
For the build part, I am assuming you already have a build driver that does the TS to JS transformation.

Marking as duplicate of #6508


Update externs for ResizeObserver

I've imported this PR and sent it for internal testing and review.


🐛 BUG: Unable to delete Wrangler secrets with "@" in the key name

Which Cloudflare product(s) does this pertain to?
Workers/Other, Wrangler
What version of Wrangler are you using?
2.15.1
What operating system are you using?
macOS 13.3.1
Describe the Bug
Unable to delete Wrangler secrets with certain characters, specifically "@" in the name.
(I accidentally used wrangler to put a secret with an "@" character in the key name)
Steps to Reproduce:

Create a Wrangler secret with a name containing the '@' symbol
Attempt to delete the secret using the wrangler secret delete command or the web interface
Observe that the command fails with an error message

When attempting to delete a secret with a name containing the '@' symbol in wrangler CLI, the command fails and generates the error message "Cannot read properties of undefined (reading 'map')".
Additionally, attempting to remove the binding for the secret from the web interface also generates an error, with the message "workers.api.error.binding_not_found (Code: 10056)".

hi @robotson  :) thanks for flagging this. in an effort to remove stale issues so we can have better signal on current friction points, we’re closing out issues that have not been updated within the last 6 months. if this is still a problem, please feel free to open a new issue referencing this one. please be sure to include an updated summary and any additional context and we will review. thank you!


Refactoring Cask file

Hmm, newer Cask does not support Emacs 23. So tests are failed on Emacs 23.

Hmm, newer Cask does not support Emacs 23. So tests are failed on Emacs 23.

OK. I ignore this error and will fix travis.yml later.


Theedge 3709 add activation key

Description
Include the select of activationKey to image create and update wizard.
Image Creation

Image Detail

Image Update

Fixes # (THEEDGE-3709)
Type of change
What is it?

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Documentation update
[ ] Tests update

Checklist:

[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[x] I run npm run lint:js:fix to check that my code is properly formatted

Codecov Report
Attention: 44 lines in your changes are missing coverage. Please review.

Comparison is base (fee1ed4) 25.66% compared to head (a37f59b) 25.43%.

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

Files
Patch %
Lines

src/components/form/ActivationKeysSelector.js
0.00%
31 Missing and 4 partials :warning:

src/Routes/ImageManagerDetail/ImageDetailTab.js
0.00%
3 Missing :warning:

src/store/actions.js
0.00%
3 Missing :warning:

src/Routes/ImageManager/steps/imageOutput.js
0.00%
1 Missing :warning:

src/api/images/index.js
50.00%
1 Missing :warning:

src/components/form/ReviewStep.js
0.00%
1 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #793      +/-   ##
==========================================
- Coverage   25.66%   25.43%   -0.23%
==========================================
  Files         137      138       +1
  Lines        3791     3837      +46
  Branches     1371     1379       +8
==========================================
+ Hits          973      976       +3
- Misses       2523     2562      +39
- Partials      295      299       +4

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


move docker-compose file to cres-orchastration

Docker-compose file is not only for vehicleMaster app. cresFileServer also should have it. So the entire compose file to be moved to cres_orchastration project


how can i build on centos6 x64? gcc 4.4.6

how can i build on centos6 x64?
gcc 4.4.6

It's a C++11 library, so unfortunately you'll have to upgrade your compiler if you want to build it.
The oldest version of gcc I've tested against is gcc 4.8.5.


feat(node-http-handler): improve stream collection performance

I noticed stream collectors were doing iffy copy operations during the stream -> Uint8Array process.
  /**
   * Perf results, Node.js 18
   *
   * 100K items: 5466ms vs 3930ms
   * 10K items: 54ms vs 15ms
   * 1K items: 4.6ms vs 1.3ms
   * 100 items: 0.94ms vs 0.28ms
   * 10 items: 0.71ms vs 0.18ms
   * 1 item: 0.53ms vs 0.06ms
   */

doing some more testing of practical scenarios
the existing algorithm pulls ahead if chunk size is very large like 100k, because there are relatively few Uint8Array copies in that case

in practical terms it seems S3::getObject response stream alternates between 16384 chunk size (default ReadableStream highwatermark) and 1024 for some reason I don't understand: could be the difference in data rates between the stream source and the reader.
At these chunk sizes, the Array buffering is not faster until approximately 1 million bytes, at which point it suddenly becomes several times (3x to 6x) faster. A breakpoint in internal behavior?
Anyway, I've modified the algo to use an Array but only to collect the chunks. The chunks are then rewritten or moved into a single Uint8Array of known final length rather than repeatedly increasing the size of a discarded Uint8Array.
test code:
collect stream of 1 elements 0.5354740619659424
collect stream (alternate algorithm) of 1 elements 0.0736701488494873
collect stream (alternate algorithm 2) of 1 elements 0.08908200263977051

collect stream of 10 elements 0.5985689163208008
collect stream (alternate algorithm) of 10 elements 0.10771608352661133
collect stream (alternate algorithm 2) of 10 elements 0.1118621826171875

collect stream of 100 elements 0.5355470180511475
collect stream (alternate algorithm) of 100 elements 0.0846397876739502
collect stream (alternate algorithm 2) of 100 elements 0.09865403175354004

collect stream of 1000 elements 0.5386970043182373
collect stream (alternate algorithm) of 1000 elements 0.17470288276672363
collect stream (alternate algorithm 2) of 1000 elements 0.0959329605102539

collect stream of 10000 elements 0.5814781188964844
collect stream (alternate algorithm) of 10000 elements 1.519124984741211
collect stream (alternate algorithm 2) of 10000 elements 0.12869906425476074

collect stream of 100000 elements 1.1589949131011963
collect stream (alternate algorithm) of 100000 elements 11.25875186920166
collect stream (alternate algorithm 2) of 100000 elements 0.3245420455932617

collect stream of 1000000 elements 34.94601106643677
collect stream (alternate algorithm) of 1000000 elements 95.69593620300293
collect stream (alternate algorithm 2) of 1000000 elements 1.0913150310516357

collect stream of 10000000 elements 3237.118015050888
collect stream (alternate algorithm) of 10000000 elements<PHONE_NUMBER>504395
collect stream (alternate algorithm 2) of 10000000 elements 7.6842029094696045

const assert = require("assert");

const length = 100_000_000;
const chunk_size = [1024, 16384];

const streams = [0, 0, 0].map(
  () =>
    new ReadableStream({
      start(controller) {
        let j = 0;
        for (let i = 0; i < length; ) {
          const size = chunk_size[j++ % chunk_size.length];
          controller.enqueue(new Uint8Array(Math.min(size, length - i)).fill(i));
          i += size;
        }
        controller.close();
      },
    })
);

async function collectStream(stream) {
  let res = new Uint8Array(0);
  const reader = stream.getReader();
  let isDone = false;
  while (!isDone) {
    const { done, value } = await reader.read();
    if (value) {
      const prior = res;
      res = new Uint8Array(prior.length + value.length);
      res.set(prior);
      res.set(value, prior.length);
    }
    isDone = done;
  }
  return res;
}

async function collectStream2(stream) {
  const buffer = [];
  const reader = stream.getReader();
  let isDone = false;
  while (!isDone) {
    const { done, value } = await reader.read();
    if (value) {
      buffer.push(...value);
    }
    isDone = done;
  }
  return new Uint8Array(buffer);
}

async function collectStream3(stream) {
  const chunks = [];
  const reader = stream.getReader();
  let isDone = false;
  let length = 0;

  while (!isDone) {
    const { done, value } = await reader.read();
    if (value) {
      chunks.push(value);
      length += value.length;
    }
    isDone = done;
  }

  const collected = new Uint8Array(length);
  let offset = 0;
  for (const chunk of chunks) {
    collected.set(chunk, offset);
    offset += chunk.length;
  }

  return collected;
}

(async () => {
  performance.mark("A");
  const collected = await collectStream(streams[0]);
  performance.mark("B");

  performance.mark("C");
  const collected2 = await collectStream2(streams[1]);
  performance.mark("D");

  performance.mark("E");
  const collected3 = await collectStream3(streams[2]);
  performance.mark("F");

  const m1 = performance.measure(`collect stream of ${length} elements`, "A", "B");
  const m2 = performance.measure(`collect stream (alternate algorithm) of ${length} elements`, "C", "D");
  const m3 = performance.measure(`collect stream (alternate algorithm 2) of ${length} elements`, "E", "F");

  console.log(m1.name, m1.duration);
  console.log(m2.name, m2.duration);
  console.log(m3.name, m3.duration);

  for (let i = 0; i < Math.max(collected.length, collected2.length, collected3.length); ++i) {
    const a = collected[i];
    const b = collected2[i];
    const c = collected3[i];
    assert.strictEqual(a, b, `inequality 1x2 ${a}!=${b} at index ${i}`);
    assert.strictEqual(a, c, `inequality 1x3 ${a}!=${c} at index ${i}`);
  }

  assert.strictEqual(collected.length, length);
  assert.strictEqual(collected2.length, length);
  assert.strictEqual(collected3.length, length);

  /**
   */
})();

Algorithm 2 is faster in all cases in Node.js 20, tested with v20.13.1
collect stream of 1 elements 0.3272499999999994
collect stream (alternate algorithm) of 1 elements 0.16454099999999983
collect stream (alternate algorithm 2) of 1 elements 0.052832999999999686

collect stream of 10 elements 0.30933299999999875
collect stream (alternate algorithm) of 10 elements 0.14699999999999847
collect stream (alternate algorithm 2) of 10 elements 0.04962500000000247

collect stream of 100 elements 0.3576250000000023
collect stream (alternate algorithm) of 100 elements 0.15420899999999804
collect stream (alternate algorithm 2) of 100 elements 0.053958000000001505

collect stream of 1000 elements 0.35991700000000293
collect stream (alternate algorithm) of 1000 elements 0.21433299999999988
collect stream (alternate algorithm 2) of 1000 elements 0.05191600000000207

collect stream of 10000 elements 0.39937499999999915
collect stream (alternate algorithm) of 10000 elements 0.8763749999999995
collect stream (alternate algorithm 2) of 10000 elements 0.07458300000000051

Note: this PR's implementation increases memory usage temporarily when collecting a stream.


volumes: Improve error message when reload fails due to open files

Include the volume-relative paths to the open files, by inspecting /proc/self/fd/*. This may or may not be entirely reliable (the containers view of open files might not be the same as that outside of the container), but ought to at least be better than the status quo.
import modal
import os

stub = modal.Stub()
volume = modal.Volume.from_name("test123", create_if_missing=True)

@stub.function(volumes={"/volume": volume})
def f():
    with open("/volume/test.txt", "w") as f:
        try:
            volume.reload()
        except RuntimeError as ex:
            print(ex)

    os.chdir("/volume")
    try:
        volume.reload()
    except RuntimeError as ex:
        print(ex

-->
there are open files preventing the operation: ['test.txt'] (relative to where the volume is mounted)
there are open files preventing the operation: the current working directory is inside the volume

Changelog

When Volume reloads fail due to open files, we now try to identify and report the relevant paths. Note that there may be some circumstances in which we are unable to identify all files blocking a reload and will report a generic error message in that case.

BTW I added a short changelog because this is a nice enhancement and also it may be useful for users to know about the potential for less-than-full information; feel free to edit!

Ok, made this cover more cases by checking all processes:
import modal
import os
from multiprocessing import Process
import time

stub = modal.Stub()
volume = modal.Volume.from_name("test123", create_if_missing=True)

def subp():
    with open("/volume/test2.txt", "w") as f:
        time.sleep(5)

def subp2():
    os.chdir("/volume")
    time.sleep(5)

@stub.function(volumes={"/volume": volume})
def f():
    with open("/volume/test.txt", "w") as f:
        try:
            volume.reload()
        except RuntimeError as ex:
            print(ex)

    p = Process(target=subp)
    p.start()
    try:
        volume.reload()
    except RuntimeError as ex:
        print(ex)
    p.join()

    p = Process(target=subp2)
    p.start()
    try:
        volume.reload()
    except RuntimeError as ex:
        print(ex)
    p.join()

    os.chdir("/volume")
    try:
        volume.reload()
    except RuntimeError as ex:
        print(ex)

->
there are open files preventing the operation: path test.txt is open

there are open files preventing the operation: path test2.txt is open from 'python-u-<edited-for-brevity>'

there are open files preventing the operation: cwd of 'python-u-<edited-from-brevity>' is inside the volume

there are open files preventing the operation: cwd is inside the volume

To keep the error message from becoming insanely long I'm now only including the first offending path/cwd found.

Thanks for the review and changelog entry @mwaskom !

Is it right that, contra your previous version where a long list of files could be printed, here we'll report at most one open file that is blocking the reload?

@mwaskom Correct. Reasoning being that the error messages can be very verbose if we include every path and process that is keeping open files. If we had a way to present the user with a nicely bulleted list in the error message that would be more palatable but I didn't find any precedent for that (nor I am sure that's a good idea...).

Makes sense!


Cant connect windows server 2012 R2

Please make sure these boxes are checked (put an 'x' inside them) before creating the issue.

[x] I am using Python 3.5 or higher (run python --version on the command line)
[x] I have followed the official guides to install the bot for my system
[x] I have updated my dependencies to the latest version using the appropriate update_dependencies script
[x] I am running version 1.9.6_2 of MusicBot

Description of issue
Cant connect to my Discord server the bot is running from windows server 2012 R2 dedicated box in a German Data Center.
The bot joins the server and the channel
!play "youtube link" i see the !play link in the console
But the console just keeps trying to connect
Also made sure Pythons path is pointed to its exe in server 2012 R2
I've opened all UDP ports on outgoing traffic and tried  re-authing the bot with Discord still the same issue persists.
Steps to reproduce

opened all UDP ports on outgoing traffic
re authing the bot with Discord

Log file
Please attach your MusicBot log file (located at logs/musicbot.log) to this issue. You can do so by dragging and dropping the file here.
[47.002077103] 2018-02-04 02:21:42,184 - INFO - launcher: Starting sanity checks
[48.002243042] 2018-02-04 02:21:42,185 - INFO - launcher: Checking for Python 3.5+
[48.002243042] 2018-02-04 02:21:42,185 - INFO - launcher: Checking console encoding
[49.001932144] 2018-02-04 02:21:42,186 - INFO - launcher: Setting console encoding to UTF-8
[49.001932144] 2018-02-04 02:21:42,186 - INFO - launcher: Ensuring we're in the right environment
[51.003217697] 2018-02-04 02:21:42,188 - INFO - launcher: Adding local bins/ folder to path
[51.003217697] 2018-02-04 02:21:42,188 - INFO - launcher: Required checks passed.
[52.002429962] 2018-02-04 02:21:42,189 - INFO - launcher: Optional checks passed.
[52.002429962] 2018-02-04 02:21:42,189 - INFO - launcher: Moving old musicbot log
######################### PRE-RUN SANITY CHECKS PASSED #########################
[2.0321047306060791] 2018-02-04 02:21:44,169 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 213 in _setup_logging: Set logging level to INFO
[2.0321047306060791] 2018-02-04 02:21:44,169 - INFO - musicbot.bot | In bot.py::MainThread(364), line 80 in init: =========== MusicBot (version 1.9.6_2) ===========
[2.0331065654754639] 2018-02-04 02:21:44,170 - INFO - musicbot.bot | In bot.py::MainThread(364), line 86 in init: Loaded autoplaylist with 2531 entries
[2.036109209] launcher-INFO: Connecting
[4.6062393188476562] 2018-02-04 02:21:46,743 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 1011 in on_ready: Connection established, ready to go.
[4.6062393188476562] 2018-02-04 02:21:46,743 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 324 in _cache_app_info: Caching app info
[4.7242450714111328] 2018-02-04 02:21:46,861 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 828 in _scheck_ensure_env: Ensuring data folders exist
[4.7262456417083740] 2018-02-04 02:21:46,863 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 844 in _scheck_server_permissions: Checking server permissions
[4.7272453308105469] 2018-02-04 02:21:46,864 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 848 in _scheck_autoplaylist: Auditing autoplaylist
[4.7272453308105469] 2018-02-04 02:21:46,864 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 852 in _scheck_configs: Validating config
[4.7272453308105469] 2018-02-04 02:21:46,864 - DEBUG - musicbot.config | In config.py::MainThread(364), line 155 in async_validate: Validating options...
[4.7272453308105469] 2018-02-04 02:21:46,864 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 855 in _scheck_configs: Validating permissions config
[4.7272453308105469] 2018-02-04 02:21:46,864 - DEBUG - musicbot.permissions | In permissions.py::MainThread(364), line 59 in async_validate: Validating permissions...
[4.7282450199127197] 2018-02-04 02:21:46,865 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1022 in on_ready: Connected to Discord!
[4.7302451133728027] 2018-02-04 02:21:46,867 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1032 in on_ready: Bot:<PHONE_NUMBER>17193738/Smokes Music Bot#6058 [BOT]
[4.7312452793121338] 2018-02-04 02:21:46,868 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1040 in on_ready: Owner:<PHONE_NUMBER>9443712/smokedog77#2953
[4.7332441806793213] 2018-02-04 02:21:46,870 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1043 in on_ready: Server List:
[4.7342445850372314] 2018-02-04 02:21:46,871 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1044 in :  - The Dog House
[4.7362442016601562] 2018-02-04 02:21:46,873 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1088 in on_ready: Not bound to any text channels
[4.7372457981109619] 2018-02-04 02:21:46,874 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1114 in on_ready: Not autojoining any voice channels
[4.7402460575103760] 2018-02-04 02:21:46,877 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1118 in on_ready: Options:
[4.7412462234497070] 2018-02-04 02:21:46,878 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1120 in on_ready:   Command prefix: !
[4.7422456741333008] 2018-02-04 02:21:46,879 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1121 in on_ready:   Default volume: 25%
[4.7432458400726318] 2018-02-04 02:21:46,880 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1123 in on_ready:   Skip threshold: 4 votes or 50%
[4.7442452907562256] 2018-02-04 02:21:46,881 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1124 in on_ready:   Now Playing @mentions: Enabled
[4.7462456226348877] 2018-02-04 02:21:46,883 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1125 in on_ready:   Auto-Summon: Enabled
[4.7472462654113770] 2018-02-04 02:21:46,884 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1126 in on_ready:   Auto-Playlist: Enabled
[4.7482459545135498] 2018-02-04 02:21:46,885 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1127 in on_ready:   Auto-Pause: Enabled
[4.7492463588714600] 2018-02-04 02:21:46,886 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1128 in on_ready:   Delete Messages: Enabled
[4.7512462139129639] 2018-02-04 02:21:46,888 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1130 in on_ready:     Delete Invoking: Disabled
[4.7522461414337158] 2018-02-04 02:21:46,889 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1131 in on_ready:   Debug Mode: Disabled
[4.7532463073730469] 2018-02-04 02:21:46,890 - INFO - musicbot.bot | In bot.py::MainThread(364), line 1132 in on_ready:   Downloaded songs will be saved
[4.7552461624145508] 2018-02-04 02:21:46,892 - INFO - musicbot.bot | In bot.py::MainThread(364), line 258 in _join_startup_channels: Found owner in "streaming Live"
[4.7562460899353027] 2018-02-04 02:21:46,893 - INFO - musicbot.bot | In bot.py::MainThread(364), line 267 in _join_startup_channels: Attempting to join The Dog House/streaming Live
[4.7572464942932129] 2018-02-04 02:21:46,894 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 437 in get_voice_client: Connection attempt 1 to streaming Live
[4.7572464942932129] 2018-02-04 02:21:46,894 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 376 in join_voice_channel: (join_voice_channel) creating futures
[4.7572464942932129] 2018-02-04 02:21:46,894 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 382 in join_voice_channel: (join_voice_channel) setting voice state
[4.7582461833953857] 2018-02-04 02:21:46,895 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 385 in join_voice_channel: (join_voice_channel) waiting for session id
[4.8682525157928467] 2018-02-04 02:21:47,005 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 2564 in on_voice_state_update: Voice state update for<PHONE_NUMBER>17193738/Smokes Music Bot#6058 on The Dog House/streaming Live -> [JOIN, CONNECT]
[4.8682525157928467] 2018-02-04 02:21:47,005 - INFO - musicbot.bot | In bot.py::MainThread(364), line 2575 in on_voice_state_update:<PHONE_NUMBER>17193738/Smokes Music Bot#6058 has joined The Dog House/streaming Live
[4.8692538738250732] 2018-02-04 02:21:47,006 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 389 in join_voice_channel: (join_voice_channel) waiting for voice data
[4.9702587127685547] 2018-02-04 02:21:47,107 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 403 in join_voice_channel: (join_voice_channel) connecting...
[19.9770386219024658] 2018-02-04 02:22:02,114 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 408 in join_voice_channel: (join_voice_channel) connection failed, disconnecting
[19.9770386219024658] 2018-02-04 02:22:02,114 - WARNING - musicbot.bot | In bot.py::MainThread(364), line 446 in get_voice_client: Failed to connect, retrying (1/5)
[20.4790618419647217] 2018-02-04 02:22:02,616 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 437 in get_voice_client: Connection attempt 2 to streaming Live
[20.4790618419647217] 2018-02-04 02:22:02,616 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 376 in join_voice_channel: (join_voice_channel) creating futures
[20.4790618419647217] 2018-02-04 02:22:02,616 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 382 in join_voice_channel: (join_voice_channel) setting voice state
[20.4800617694854736] 2018-02-04 02:22:02,617 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 385 in join_voice_channel: (join_voice_channel) waiting for session id
[20.5910675525665283] 2018-02-04 02:22:02,728 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 2552 in on_voice_state_update: Resumed voice connection to The Dog House/streaming Live
[20.5920684337615967] 2018-02-04 02:22:02,729 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 2564 in on_voice_state_update: Voice state update for<PHONE_NUMBER>17193738/Smokes Music Bot#6058 on The Dog House/streaming Live -> [RESUME, CONNECT]
[20.5920684337615967] 2018-02-04 02:22:02,729 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 389 in join_voice_channel: (join_voice_channel) waiting for voice data
[35.5958468914031982] 2018-02-04 02:22:17,733 - WARNING - musicbot.bot | In bot.py::MainThread(364), line 446 in get_voice_client: Failed to connect, retrying (2/5)
[36.0968723297119141] 2018-02-04 02:22:18,234 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 437 in get_voice_client: Connection attempt 3 to streaming Live
[36.0968723297119141] 2018-02-04 02:22:18,234 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 376 in join_voice_channel: (join_voice_channel) creating futures
[36.0968723297119141] 2018-02-04 02:22:18,234 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 382 in join_voice_channel: (join_voice_channel) setting voice state
[36.0978722572326660] 2018-02-04 02:22:18,235 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 385 in join_voice_channel: (join_voice_channel) waiting for session id
[36.2058780193328857] 2018-02-04 02:22:18,343 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 2552 in on_voice_state_update: Resumed voice connection to The Dog House/streaming Live
[36.2068791389465332] 2018-02-04 02:22:18,344 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 2564 in on_voice_state_update: Voice state update for<PHONE_NUMBER>17193738/Smokes Music Bot#6058 on The Dog House/streaming Live -> [RESUME, CONNECT]
[36.2068791389465332] 2018-02-04 02:22:18,344 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 389 in join_voice_channel: (join_voice_channel) waiting for voice data
[51.2036557197570801] 2018-02-04 02:22:33,341 - WARNING - musicbot.bot | In bot.py::MainThread(364), line 446 in get_voice_client: Failed to connect, retrying (3/5)
[51.7046825885772705] 2018-02-04 02:22:33,842 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 437 in get_voice_client: Connection attempt 4 to streaming Live
[51.7046825885772705] 2018-02-04 02:22:33,842 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 376 in join_voice_channel: (join_voice_channel) creating futures
[51.7057516574859619] 2018-02-04 02:22:33,843 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 382 in join_voice_channel: (join_voice_channel) setting voice state
[51.7057516574859619] 2018-02-04 02:22:33,843 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 385 in join_voice_channel: (join_voice_channel) waiting for session id
[51.8216905593872070] 2018-02-04 02:22:33,959 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 2552 in on_voice_state_update: Resumed voice connection to The Dog House/streaming Live
[51.8216905593872070] 2018-02-04 02:22:33,959 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 2564 in on_voice_state_update: Voice state update for<PHONE_NUMBER>17193738/Smokes Music Bot#6058 on The Dog House/streaming Live -> [RESUME, CONNECT]
[51.8226914405822754] 2018-02-04 02:22:33,960 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 389 in join_voice_channel: (join_voice_channel) waiting for voice data
[66.8234667778015137] 2018-02-04 02:22:48,960 - WARNING - musicbot.bot | In bot.py::MainThread(364), line 446 in get_voice_client: Failed to connect, retrying (4/5)
[67.3245284557342529] 2018-02-04 02:22:49,461 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 437 in get_voice_client: Connection attempt 5 to streaming Live
[67.3245284557342529] 2018-02-04 02:22:49,461 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 376 in join_voice_channel: (join_voice_channel) creating futures
[67.3245284557342529] 2018-02-04 02:22:49,461 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 382 in join_voice_channel: (join_voice_channel) setting voice state
[67.3255307674407959] 2018-02-04 02:22:49,462 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 385 in join_voice_channel: (join_voice_channel) waiting for session id
[67.4384982585906982] 2018-02-04 02:22:49,575 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 2552 in on_voice_state_update: Resumed voice connection to The Dog House/streaming Live
[67.4384982585906982] 2018-02-04 02:22:49,575 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 2564 in on_voice_state_update: Voice state update for<PHONE_NUMBER>17193738/Smokes Music Bot#6058 on The Dog House/streaming Live -> [RESUME, CONNECT]
[67.4384982585906982] 2018-02-04 02:22:49,575 - VOICEDEBUG - musicbot.bot | In bot.py::MainThread(364), line 389 in join_voice_channel: (join_voice_channel) waiting for voice data
[82.4402770996093750] 2018-02-04 02:23:04,577 - WARNING - musicbot.bot | In bot.py::MainThread(364), line 446 in get_voice_client: Failed to connect, retrying (5/5)
[82.9413025379180908] 2018-02-04 02:23:05,078 - CRITICAL - musicbot.bot | In bot.py::MainThread(364), line 460 in get_voice_client: Voice client is unable to connect, restarting...
[83.0513083934783936] 2018-02-04 02:23:05,188 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 463 in get_voice_client: Connected in -1517707369.5s
[83.0513083934783936] 2018-02-04 02:23:05,188 - INFO - musicbot.bot | In bot.py::MainThread(364), line 464 in get_voice_client: Connected to The Dog House/streaming Live
[83.0533094406127930] 2018-02-04 02:23:05,190 - DEBUG - musicbot.bot | In bot.py::MainThread(364), line 294 in _join_startup_channels: Error joining The Dog House/streaming Live
Traceback (most recent call last):
File "C:\Users\Administrator\Desktop\MusicBot\musicbot\bot.py", line 280, in _join_startup_channels
player = await self.get_player(channel, create=True, deserialize=self.config.persistent_queue)
File "C:\Users\Administrator\Desktop\MusicBot\musicbot\bot.py", line 551, in get_player
voice_client = await self.get_voice_client(channel)
File "C:\Users\Administrator\Desktop\MusicBot\musicbot\bot.py", line 466, in get_voice_client
vc.ws._keep_alive.name = 'VoiceClient Keepalive'
AttributeError: 'NoneType' object has no attribute 'ws'
[83.0563085079193115] 2018-02-04 02:23:05,193 - ERROR - musicbot.bot | In bot.py::MainThread(364), line 295 in _join_startup_channels: Failed to join The Dog House/streaming Live
[83.0583083629608154] 2018-02-04 02:23:05,195 - ERROR - musicbot.bot | In bot.py::MainThread(364), line 999 in on_error: Exception in on_voice_state_update
Traceback (most recent call last):
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\lib\site-packages\discord\client.py", line 307, in _run_event
yield from getattr(self, event)(*args, **kwargs)
File "C:\Users\Administrator\Desktop\MusicBot\musicbot\bot.py", line 2584, in on_voice_state_update
player = await self.get_player(state.my_voice_channel)
File "C:\Users\Administrator\Desktop\MusicBot\musicbot\bot.py", line 563, in get_player
'Use %ssummon to summon it to your voice channel.' % self.config.command_prefix)
musicbot.exceptions.CommandError: The bot is not in a voice channel.  Use !summon to summon it to your voice channel.
[83.0653092861175537] 2018-02-04 02:23:05,202 - ERROR - musicbot.bot | In bot.py::MainThread(364), line 999 in on_error: Exception in on_voice_state_update
Traceback (most recent call last):
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\lib\site-packages\discord\client.py", line 307, in _run_event
yield from getattr(self, event)(*args, **kwargs)
File "C:\Users\Administrator\Desktop\MusicBot\musicbot\bot.py", line 2584, in on_voice_state_update
player = await self.get_player(state.my_voice_channel)
File "C:\Users\Administrator\Desktop\MusicBot\musicbot\bot.py", line 563, in get_player
'Use %ssummon to summon it to your voice channel.' % self.config.command_prefix)
musicbot.exceptions.CommandError: The bot is not in a voice channel.  Use !summon to summon it to your voice channel.
[83.0693609714508057] 2018-02-04 02:23:05,206 - ERROR - musicbot.bot | In bot.py::MainThread(364), line 999 in on_error: Exception in on_voice_state_update
Traceback (most recent call last):
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\lib\site-packages\discord\client.py", line 307, in _run_event
yield from getattr(self, event)(*args, **kwargs)
File "C:\Users\Administrator\Desktop\MusicBot\musicbot\bot.py", line 2584, in on_voice_state_update
player = await self.get_player(state.my_voice_channel)
File "C:\Users\Administrator\Desktop\MusicBot\musicbot\bot.py", line 563, in get_player
'Use %ssummon to summon it to your voice channel.' % self.config.command_prefix)
musicbot.exceptions.CommandError: The bot is not in a voice channel.  Use !summon to summon it to your voice channel.

Very similar to #1440
Please feel free to reopen if there are any more updates to this


Need factory function for make_sync_tls_client_ws and others

The sync_client class is missing factory functions for the tls versions.
The async_client has these factory functions.

It seems that thy exist:
https://github.com/redboltz/mqtt_cpp/blob/master/include/mqtt/sync_client.hpp#L374

You're right. My mistake. I was spelling it wrong.


Chore: add bundlesize test

This patch adds production build output gzipped file size checks to the
test script so that any future efforts, including changes to the
bundler, may only introduce known size differences. Note:
• Initial limits were taken from the present gzipped chunk sizes rounded
up to the 10th of a kibibyte.
• Only production JavaScript and CSS files are checked.
• The package.json bundlesize configuration options should be moved to a
separate file when possible.
https://github.com/siddharthkp/bundlesize/pull/171
• A leading zero is necessary for floating point limits less than one.
Without a leading zero, checks against these limits appear to always
pass.
• bundlesize was not added to dev because it doesn't support any quiet
options and is verbose. Tests are only executed at precommit.
• JEDEC notation is used. bundlesize internally uses Bytes utility which
only supports base 2 units.
https://github.com/visionmedia/bytes.js

@montehurd, yes!


Delete the right index

All indices are deleted with the index name as the prefix, but if we have 'items' and 'items_test' it will also wipe out 'items_test', adding a dash to the filter will solve this problem in all cases as all indices are named 'items-[0-9]+' .

Coverage decreased (-0.5%) to 97.5% when pulling d6609f5f6c520b261aa4b6eea7bfcd35ad721298 on jfrolich:delete-right-indices into 18f3c51230377fd1e9f0b91c330421f2b4e9b971 on infinitered:master.

Thanks for this suggestion! Wouldn't it be simpler to replace this:
https://github.com/infinitered/elasticsearch-elixir/blob/921531ee767127801367271a82ac1e4d2b587cad/lib/elasticsearch/indexing/index.ex#L38
with this?
:ok <- clean_starting_with(config, "#{alias}-", 2)

Thanks for this suggestion! Wouldn't it be simpler to replace this:
elasticsearch-elixir/lib/elasticsearch/indexing/index.ex
Line 38 in 921531e
:ok <- clean_starting_with(config, alias, 2),
with this?
:ok <- clean_starting_with(config, "#{alias}-", 2)

Yep that was my first commit, but I figured people might have "posts" and "posts-test". This makes it more robust.

@jfrolich that makes sense. Can you fix the test failure so that we can get this merged?

Just pushed a working version

Great, thanks! :star: :star: :star:


Add some kind of debugging for run-away patterns

I thin I may be hitting a run-away pattern. I'm somewhat surprised because it doesn't seem to be hitting the time/iteration limits -- just running forever (AFAICT).
I'm wondering if anything was ever added for this, or if you have any tips for how to figure out which rules are misbehaving and/or find a minimal expression that demonstrates the problem. Trying to wrap my head around how to quickly zero in on the problem so that I can figure out how to address it.


Document how to use the local werkzeug client to unittest JSONRPC apps

I'm not actually sure at all how to do this :)

Hi man, thanks for this module.
I got this working. I can do a pull request on the documentation if you open to it?

@marthinus-engelbrecht yes, of course.
Thank you!

Here example of the test with pytest.


addons

@IshwaranRudhara Have you resolved the code changes?

thala onnum purila thala, neegale matirugah

@anburocky3 I resolved the conflict and it is ready to merge

I don't see any commits from you @yogesh7401

Merged. Thank you for your contributions. @IshwaranRudhara @yogesh7401


Added support for conditional banners via pattern

I was looking for a way to only include banner for a subset of my sources, which was not supported.
I've implemented a new option called "pattern", which is tested against the file contents. The banner will only be injected if there is a match. The option is default off, so will not affect existing usage. Tests included.
This is very neat if you are working with IE typescript, and need to add /* istanbul ignore next */ to all those pesky "var __extends = this.__extends || function (d, b) {" statements. Hope others can benefit!

Thanks for issuing the PR, merging now


Missing bakery_yaml.json

As mentioned in issue #611, the build and deploy process fails to place a bakery_yaml.json file in the deployed gh-pages branch of a font project.
The collateral effect is that the "Setup" tab of the webapp displays an infinite "loading" icon.
http://googlefonts.github.io/fontbakery/#/felipesanches/CoinyTests/setup

Closing as its for the old codebase


Apply pagination in client listing page

Describe the task
Apply pagination on the client listing page. The number of clients per page should be 20
Steps to reach Clients page

Go to CRM
Click on Clients

References
Specify any reference material / links

Hi, @gulshan81 please refer the screenshot of the page where you have to apply pagination. You have to apply pagination for both Inactive and Active clients.

Not needed right now.


mypy plugin crashes

It looks like mypy plugin does not work with recent mypy versions. Test case
import pydantic_xml as pxml

class Model(pxml.BaseXmlModel):
    elem: int = pxml.element()

produces
$ mypy xml_mypy.py --show-traceback
xml_mypy.py:4: error: INTERNAL ERROR -- Please try using mypy master on GitHub:
https://mypy.readthedocs.io/en/stable/common_issues.html#using-a-development-mypy-build
Please report a bug at https://github.com/python/mypy/issues
version: 1.13.0
Traceback (most recent call last):
  File "mypy/checkexpr.py", line 5848, in accept
  File "mypy/nodes.py", line 1969, in accept
  File "mypy/checkexpr.py", line 480, in visit_call_expr
  File "mypy/checkexpr.py", line 614, in visit_call_expr_inner
  File "mypy/checkexpr.py", line 1471, in check_call_expr_with_callee_type
  File "mypy/checkexpr.py", line 1565, in check_call
  File "mypy/checkexpr.py", line 1811, in check_callable_call
  File "mypy/checkexpr.py", line 1245, in apply_function_plugin
  File "/home/eltoder/dev/scratch/.venv/lib/python3.10/site-packages/pydantic_xml/mypy.py", line 39, in _element_callback
    return super()._pydantic_field_callback(self._pop_first_args(ctx, 4))
AttributeError: 'super' object has no attribute '_pydantic_field_callback'
xml_mypy.py:4: : note: use --pdb to drop into pdb

Mypy version: mypy 1.13.0 (compiled: yes)

fixed in version 2.14.1


Battery percentage is shown for a peripheral device.

Current behavior
My prompt was always showing "0%" for the battery level, even though I'm on a desktop that doesn't have a battery. It turns out that this is because I recently started using a Wacom tablet, which always shows a battery level of "0%", despite the fact that it doesn't have a battery.
Here's the output of running upower on my machine, which is what battery.zsh is using to query for battery information.
$ upower -e
/org/freedesktop/UPower/devices/tablet_wacom_battery_0
/org/freedesktop/UPower/devices/DisplayDevice

$ upower -i /org/freedesktop/UPower/devices/tablet_wacom_battery_0
  native-path:          wacom_battery_0
  model:                Wacom Intuos S
  power supply:         no
  updated:              Wed 10 Oct 2018 11:01:39 AM EDT (39 seconds ago)
  has history:          yes
  has statistics:       yes
  tablet
    warning-level:       none
    percentage:          0%
    icon-name:          'battery-missing-symbolic'

Expected behavior
Battery level should be shown only for the machine, and not for any peripheral devices.
Relevant Zsh configuration (.zshrc)
# Your configuration here

Environment
Spaceship version:  (use echo $SPACESHIP_VERSION)
Zsh version:
Zsh framework: <None/oh-my-zsh/prezto/etc>
Zsh plugin manager: <None/antigen/zplug/etc>
Terminal emulator: <iTerm/Hyper/Terminator/etc>
Operating system: <macOS/Windows/Linux>
Screenshot
Provide a screenshot that shows your issue.

Possible solution

Can you check what other methods of querying battery level output for you?
pmset -g batt
acpi -b

I get command not found for both.

These are tools that you'd have to install if you want to try, I asked this because I doubt we can do anything about upower discovering more batteries than needed, but if either pmset or acpi tools behave better, we can make battery module prefer these tools over upower.

Ah, that's what you meant. I installed acpi and acpi -b gives me nothing. I'm on Debian and pmset seems to be a Mac utility, so nothing for that. What you suggest sounds good to me.

Thanks for the detailed report. I see the following options,

Detect removable devices which provide battery information and filter them out. But this might lead to never ending list of devices or we could use generic filters like tablet etc,.
Similar to #233, provide option to specify the battery to be used on prompt.
Disable battery section from the user end with either SPACESHIP_PROMPT_ORDER or SPACESHIP_BATTERY_SHOW variables.
As @maximbaz noted, If any of the other tools behave better, prefer those.

I propose moving acpi before upower, simple and seems like what we need.


Remove StateType enum

Didn't add any value since the enum was not re-used in multiple places.

Codecov Report

Merging #30 into master will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##            master       #30   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            6         6
  Lines          201       197    -4
  Branches        35        35
=========================================
- Hits           201       197    -4

Impacted Files
Coverage Δ

src/awsstepfuncs/pass_state.py
100.00% <100.00%> (ø)

src/awsstepfuncs/state.py
100.00% <100.00%> (ø)

src/awsstepfuncs/state_machine.py
100.00% <100.00%> (ø)

src/awsstepfuncs/task_state.py
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 cdf7eaa...1232dbb. Read the comment docs.


Bug in model.py?

Hi, great work to begin with!
I'm wondering there might a bug in your https://github.com/glample/tagger/blob/master/model.py#L244, where it will break when I turn off the char_lstm (setting char_dim=0 I think?). The reason is the input now has only one element and pass the check in L244 as a list and cause error in L252. I think the right way is either removing the check or replacing with:
inputs = T.concatenate(inputs, axis=1) if len(inputs)!=1 else inputs[0]

I'm wondering there might a bug in your https://github.com/glample/tagger/blob/master/model.py#L244, where it will break when I turn off the char_lstm (setting char_dim=0 I think?). The reason is the input now has only one element and pass the check in L244 as a list and cause error in L252. I think the right way is either removing the check or replacing with:
inputs = T.concatenate(inputs, axis=1) if len(inputs)!=1 else inputs[0]
No it won't break the code

Sorry for the delay.. There was a small bug indeed, thank you for spotting it. Your fix was correct, I pushed it here: https://github.com/glample/tagger/commit/c735605fc2218975019aca04bd64796ac4f363bd


How to deal with XSS vulnerability warning? (SECURITY-2488 / CVE-2021-43577)

Hi folks, in our Jenkins we are getting the following warning:
Warnings have been published for the following currently installed components:
OWASP Dependency-Check Plugin 5.1.1
XXE vulnerability

Linking here:
https://www.jenkins.io/security/advisory/2021-11-12/#SECURITY-2488
XXE vulnerability in OWASP Dependency-Check Plugin
SECURITY-2488 / CVE-2021-43577
OWASP Dependency-Check Plugin 5.1.1 and earlier does not configure its XML parser to prevent XML external entity (XXE) attacks.
This allows attackers able to control workspace contents to have Jenkins parse a crafted XML file that uses external entities for extraction of secrets from the Jenkins controller or server-side request forgery.
As of publication of this advisory, there is no fix.

Are there any recommendations how to deal with this warning?

Unfortunately - the ODC Jenkins plugin project is seeking a new maintainer: https://github.com/jenkinsci/dependency-check-plugin#seeking-new-maintainer. My understanding would be to use a new version of ODC: https://github.com/jenkinsci/dependency-check-plugin#builder

Jenkins plugin got a new release that fixes this (v5.1.2), which should resolve the issue for you. Project is still looking for a new maintainer though, you should not expect anything but security fixes from the current maintainer based on comments in the issue related to the CVE.

Oh, I see this is not the repository for the plugin. Sorry for the confusing and thanks for all the information!
The plugin repository is located here: https://github.com/jenkinsci/dependency-check-plugin


Expose methods on PgArgumentBuffer as pub

This PR exposes methods on PgArgumentBuffer, as they are required to be able to implement Encode on custom collections.

Closing because we will not accept this PR as-is. Please open an issue so we can discuss design for this.


Review and clean up CLI help

[ ] Review/update enclaver build flags
[ ] Review/update enclaver run flags
[ ] Review/update enclaver run-eif flags

Done in #103 and #107 (not yet merged)


Fix problem with calling send method of RequestBuilder

In this PR I'm fixing the problem with calling send method second time and futher on same RequestBuilder object. For example, when we execute the following code:
...
auto rb = client.get("localhost:9080");
auto resp1 = rb.send();
resp1.then([&completedRequests](Http::Response response) {
}, Async::IgnoreException);
responses.push_back(std::move(resp1));

auto resp2 = rb.send();
resp2.then([&completedRequests](Http::Response response) {
}, Async::IgnoreException);
responses.push_back(std::move(resp2));

auto resp3 = rb.send();
resp3.then([&completedRequests](Http::Response response) {
}, Async::IgnoreException);
responses.push_back(std::move(resp3));

auto sync = Async::whenAll(responses.begin(), responses.end());
Async::Barrier<std::vector<Http::Response>> barrier(sync);
...

We will get runtime exception:
terminate called after throwing an instance of 'std::runtime_error'
  what():  ::getaddrinfo(host.c_str(), port, &hints, &addrs): No such file or directory
Aborted (core dumped)

It's caused by the fact that host value is empty after moving.
terminate called after throwing an instance of 'std::runtime_error'
  what():  ::getaddrinfo(host.c_str(), port, &hints, &addrs): No such file or directory

Thread 1 "http_client_exa" received signal SIGABRT, Aborted.
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51	../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#1  0x00007ffff725f801 in __GI_abort () at abort.c:79
#2  0x00007ffff78b48fb in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#3  0x00007ffff78bad3a in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#4  0x00007ffff78bad95 in std::terminate() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#5  0x00007ffff78bafe8 in __cxa_throw () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#6  0x00005555555cacd3 in Pistache::Http::Connection::connect (this=0x5555558637b0, addr=...) at /home/pistache/src/client/client.cc:396
#7  0x00005555555cd951 in Pistache::Http::Client::doRequest (this=0x7fffffffdb90, request=..., timeout=...)
    at /home/pistache/src/client/client.cc:873
#8  0x00005555555ccde0 in Pistache::Http::RequestBuilder::send (this=0x7fffffffdc90) at /home/pistache/src/client/client.cc:750
#9  0x0000555555561f04 in main ()
(gdb) f 6
#6  0x00005555555cacd3 in Pistache::Http::Connection::connect (this=0x5555558637b0, addr=...) at /home/pistache/src/client/client.cc:396
396	    TRY(::getaddrinfo(host.c_str(), port, &hints, &addrs));
(gdb) p host
$2 = ""

From my point of view, it would be better for plain user to have an opportunity to call send method again (maybe after several seconds, it depends) and it's not a good practice to force user to keep in mind details of implemetation (that std::move is used). Also, in my opinion, it's ok for each send method call to pass copy of Request object to doRequest method .

@dennisjenkins75 I have tried to write a test and faced with a problem. During test execution I run server in the separate thread:
  auto options = Http::Endpoint::options().threads(1);
  _endpoint.init(options);
  _endpoint.setHandler(Http::make_handler<HelloHandler>());
  _endpoint.serve();

There is a problem with _endpoint.shutdown() call (I do in desctructor). I have decided to fix this problem and only after that I come back to this PR.

@dennisjenkins75 Dennis, I have added a test for verifying that "send()" method can be called multiple times. Is this test follow test style of this project? I'm ready to change something if it's necessary.

The test looks fine.  Fix the merge conflicts and I'll merge it.

Igor, the unit test ("http_client_test.cc") no longer passes on my system, under either GCC or Clang.  Both have the same failure mode:
The first HTTP request is responded to.
The second HTTP request is sent, but no response ever comes.
The third HTTP request is never sent.
Test fails because "response_counter" is 1, not 3.
I should tinker with "git bisect" to determine why its failing.
If you update this test, you should add "Tcp::Options::ReuseAddr" to the options.

@dennisjenkins75 Ok, I will see it now. What about adding running all tests on CI ?

We should definitely run all tests on CI.  I don't know "travis-ci" though, so I'll need to look it up, or someone can submit a PR for it.  But we should fix the broken test (or broken feature) before making unit test passing mandatory.

@dennisjenkins75 I have the following error on this test:
10: [ RUN      ] request_builder.multiple_send_test
10: terminate called after throwing an instance of 'Pistache::Http::HttpError'
10:   what():  Encountered invalid HTTP version
1/1 Test #10: http_client_test .................***Exception: Child aborted  0.26 sec

I will try to fix it asap.


prost-build: Support enerating single include file

Rebase of #123 and addresses this issue from abandoned #333
Fixes #395

@danburkert can you take a look at this?

FWIW I would love to use this as well.

Oh that'd be sweet, @danburkert can I provide any help for you on this project, to get this in ? (or anything else)

+1 : this will be very helpful for projects with 100+ proto files and almost as many package definitions.
Would be even more useful if glob support were to be added to compile_protos (#469).

Hmm not sure why the tests didn't run and I can't approve/run them. @SkamDart can you try to force push or put a new commit to see if that triggers it?

@LucioFranco made a trivial change and pushed.


Need to clear all lodging keys on change

Reproduction:
Using the Lark Camp sample event:

Choose camp 1 lodging
Choose tent camping
Choose any area
Change camp 1 to camp two
Inspect the camper and notice that the "lodging_2" and "lodging_3 choices are still present.

Maybe efficiently fixed with  #231


Add error logging in Django GraphQLView

Description
Add a method in the Django GraphQLView to logging the error if a logger object is passed to the view.
So in your urls.py when you define the graphql endpoint you only have to pass the additional argument logger
from strawberry.django.views import GraphQLView
import logging

urlpatterns = [
    path(
        "graphql", GraphQLView.as_view(schema=schema, logger=logging.getLogger()), name="graphql"
    ),
    ...
]

In this should be easier to inherit the GraphQLView in order to customize the log (for example if you are using an external system like Sentry...)
Types of Changes

[ ] Core
[ ] Bugfix
[ ] New feature
[ x ] Enhancement/optimization
[ ] Documentation

Issues Fixed or Closed by This PR

Checklist

[ x ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ x ] I have read the CONTRIBUTING document.
[ x ] I have added tests to cover my changes.
[ x ] I have tested the changes and verified that they work and don't break anything (as well as I can manage).

Hi, thanks for contributing to Strawberry 🍓!
We noticed that this PR is missing a RELEASE.md file. We use that to automatically do releases here on GitHub and, most importantly, to PyPI!
So as soon as this PR is merged, a release will be made 🚀.
Here's an example of RELEASE.md:
Release type: patch

Description of the changes, ideally with some examples, if adding a new feature.

Release type can be one of patch, minor or major. We use semver,so make sure to pick the appropriate type. If in doubt feel free to ask :)


FF Nightly latest update: Blue

Hi,
At FF Nightly latest update, the TabBar and MenuBar are blue.
Here is the image: https://imgur.com/a/NFm4H5d
The image was took at FF Nightly clean install with dark theme + ShadowFox clean install.
Thanks

I can't reproduce, and I don't think there is any code in ShadowFox that could be doing this - ShadowFox doesn't style the TabBar or MenuBar, nor have that shade of blue as a preset value.
Can you try with a fresh profile and make sure there are no Firefox Color themes or system themes effecting this?

I can't reproduce, and I don't think there is any code in ShadowFox that could be doing this - ShadowFox doesn't style the TabBar or MenuBar, nor have that shade of blue as a preset value.
Can you try with a fresh profile and make sure there are no Firefox Color themes or system themes effecting this?

PROBLEM:
I found the culprit: Windows!
I don't know if it is a Windows' bug or just a new Windows' rule, but Windows' system color settings now seem to be applied to everything, including non-Windows apps, programs etc.
At Windows colors I had "Title bars" as blue, so yesterday my FF' TabBar & MenuBar went to blue... awful!
SOLUTION:
Unchecking "Title bars" solved the blue, and stopped interfering with non-Windows software colors.
I believe this info might be interesting for ShadowFox' users, in case of dealing with same issue.
I apologize for thinking that the problem was ShadowFox (I couldn't imagine that was Windows).
I am closing the issue.
Thank you!

Thanks for the update and letting me know the solution you found!
And no worries :)


Boosting: Add df 2 lambda for mboost chapter

Add what df 2 lambda achieves, how it works and how it is used in mboosting

then please close the issue 😇


What's with the icon?

1 and 3 are when installed
2 is the one I added to %appdata%\Microsoft\Windows\Start Menu\Programs
I have v0.15.0. I don't think using new version make any difference.

That looks odd - that's not an icon we bundle in the installer so I'm unsure where it comes from. Could you see where the shortcut points?

The program it points to is picotorrent. There is nothing wrong there. The icon that is showing is in 1 and 3 is qimgv's, an image viewer: https://github.com/easymodo/qimgv

For me the icon becomes that of adobe photoshop's


Apps not working

Describe the issue
Not working:-
1.Suffuse showing black screen
2. spotify not working , crash issue
WORKING LIST:-
1.itorrent is working
2.ytm music ultimate working
Instructions to reproduce
Just open show black screen death
What version of LiveContainer are you using?
Version 2.0-release (main/ebea623)
Other
No response

Try latest build and let me know

Tried the latest version spotify started working but infuse app still not
working
On Sun, 4 Aug 2024 at 10:47 AM, Duy Tran Khanh @.***>
wrote:

Try latest build https://github.com/khanhduytran0/LiveContainer/actions
and let me know
—
Reply to this email directly, view it on GitHub
https://github.com/khanhduytran0/LiveContainer/issues/106#issuecomment-2267342344,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A7QCEQWWD3M5TMNNF75ZHD3ZPW2M3AVCNFSM6AAAAABL6QEXZGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENRXGM2DEMZUGQ
.
You are receiving this because you authored the thread.Message ID:
@.***>

Fixed in latest build


New feature implementation/#2189 Add support for uploading nested folders

resolves #2189
Implementation:

frontend/taipy-gui/src/components/Taipy/FileSelector.tsx: Added an option to include webkitdirectory in the <include ...> block, which delivers the directory structure, relative to the point of entry as the webkitRelativePath attribute of a blob / file.
frontend/taipy-gui/src/workers/fileupload.worker.ts: Parsed the blob and added the filePath variable, containing the mentioned relative path, to the FormData of the request
taipy/gui/gui.py/Gui/__upload_files(self): Added the support for parsing the filePath and reconstructing the directory with the imitated nested folder structure in the given save director (/tmp by default)

Limitations:

Support for  is limited to desktop browsers (see webkitdirectory)
The React framework does not include webkitdirectory as an option for InputHTMLAttributes, so it is added as an attribute (see https://github.com/facebook/react/issues/3468#issuecomment-1031366038), which conflicts with the TypeScript ESLint guidelines

Help needed:

Resolve the second limitation (although I don't see how)

@jrobinAV I've just taken a look at the goodies and they seem pretty sweet. Do I have to sign up somewhere to get them ?

@RymMichaut should contact you very soon.

It’s already done. Waiting for Joshua to contact me
Regards,
PS: I don't work on Wednesdays. If it's urgent, mention it in the mail.
Le jeu. 14 nov. 2024 à 15:50, Jean-Robin @.***> a
écrit :

@RymMichaut https://github.com/RymMichaut should contact you very soon.
—
Reply to this email directly, view it on GitHub
https://github.com/Avaiga/taipy/pull/2206#issuecomment-2476554093, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AHP2YATLFBDSSAZUGHEI7XL2AS2BTAVCNFSM6AAAAABRD3W5BSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINZWGU2TIMBZGM
.
You are receiving this because you were mentioned.Message ID:
@.***>


BindableCollection.AddRange calls CollectionChanged with e.NewItems == null

When calling BindableCollection.AddRange, the CollectionChanged event gets raised as expected, but the event handler's NotifyCollectionChangedEventArgs.NewItems is always null.
Expected behaviour:
The added/removed items should be listed in e.NewItems/e.OldItems, like when calling BindableCollection.Add(...).
Affected version:
Stylet 1.3.4

The problem is right here: ListCollectionView doesn't allow Add events with ranges of added items. The options are therefore 1) raise multiple Add events, or 2) raise a Reset event. We do the latter: if the user wants multiple Add events, they can call BindableCollection.Add multiple times themselves.

Ah, I was wondering why you didn't simply use the NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction, IList, IList) constructor. 😃
The implementation in ListCollectionView seems silly/dated...
My BindableCollection is initialized with multiple entries. my View contains both a DataGrid for editing, as well as a "graph" which should reflect any data changes on the fly, therefore I need to attach PropertyChanged listeners to all entries.
Seems like my "workaround" of using a loop with the BindableCollection.Add in the initialization must therefore become a permanent thing.
Thanks for the clarification. 👍