Serde support for ToLua

Hi, I want to implement support for ToLua for T:Serialze from serde. So you can lua_push just about anything :)
The problem I encountered is:
error[E0119]: conflicting implementations of trait `wrapper::convert::ToLua` for type `std::option::Option<unsafe extern "C" fn(*mut libc::c_void) -> i32>`:

Can we remove that implementation and make a newtype for it? The alternative is to make a wrapper for serde:
lua.push(SerdeWrapper(object))

Which, might be good too, but I still think it's superfluous. What do you think?

Another question is that serialization can fail. Should ToLua panic when it fails? Or maybe we could change ToLua::to_lua to allow errors?


Add endless-increment course.

For now, it is not needed.
Close #64.
Reopen it when it gets needed again.


Version Control / Log tab is dark in light theme

Everything looks pretty good so far, except the mentioned commit-list area.
I'm not sure what would be the best color for it, but the current dark background looks out of place.
Where can I try to adjust it for myself?

Hi, sorry for the delay. What do you think about this?

I tried the 3.0.0 version with IntelliJ 2019.2.3 and it's better than before, but since my report I've switched to https://github.com/4lex4/intellij-platform-solarized and I'm very satisfied with it as is.
Thanks for your efforts though; great work!

Sad to lose a user, but hopefully one day will be good enough to win you back!

Hello, is this still not fixed?
Your example is excellent and I won't switch to 4lex4 theme, because I like yours more, but this dark tab is very painful for the eyes

@xrab it should be fixed, are you still seeing the issue?

Hi there, kinda late.. .but I do see it indeed

And btw I do see it in one more place:


Fix helm chart server probe endpoint backward incompatible

Change
Fix helm chart server probe endpoint backward incompatible
Issue
https://github.com/apache/pinot/issues/12113
Problem
Made this change previously https://github.com/apache/pinot/pull/11800
But it is not backward compatible, if someone uses the following in their helm template:
probes:
      livenessEnabled: true
      readinessEnabled: true

It will throw error:
Error: INSTALLATION FAILED: template: pinot-v2/charts/pinot/templates/server/statefulset.yaml:93:26: executing "pinot-v2/charts/pinot/templates/server/statefulset.yaml" at <.Values.server.probes.livenessProbe.endpoint>: nil pointer evaluating interface {}.endpoint
It is because the previous commit  uses {{- if .Values.server.probes.readinessProbe.endpoint }} but never checked the existence of .Values.server.probes.readinessProbe
The above template setting should fall back to use .Values.server.probes.endpoint instead of throwing error.
Proposal
Change to if AND to ensure the existence of .Values.server.probes.readinessProbe
Testing

helm dependency update
helm install -f ./values.yaml pinot . -n pinot. It can spin up the k8s pods locally.
Edit values.yaml Test for separate liveness and readiness probe endpoint for server.

With only server: probes: livenessEnabled: true AND server: probes: readinessEnabled: true

It won't throw error
Liveness:   http-get http://:7443/health delay=120s timeout=1s period=20s #success=1 #failure=3
Readiness:  http-get http://:7443/health delay=120s timeout=1s period=20s #success=1 #failure=3

Adding livenessProbe: endpoint: "/health?checkType=liveness", readinessProbe: endpoint:"/health?checkType=readiness"

Liveness:   http-get http://:7443/health%3FcheckType=liveness delay=120s timeout=1s period=20s #success=1 #failure=3
Readiness:  http-get http://:7443/health%3FcheckType=readiness delay=120s timeout=1s period=20s #success=1 #failure=3

@walterddr


Update bower.json to avoid problems with name

Add informations in bower.json to avoid registry name problems.
After install, export-csv was registered in bower.json as :
"Highcharts export-csv plugin": "export-csv#*"

wrong registry name and version cause errors using bower for any task (ex: bower install) :

bower                        ENOTFOUND Package Highcharts export-csv plugin=export-csv not found

You also need to create git tags with versions ! See https://github.com/highcharts/export-csv/issues/69 for more info.

+1


Icon (gateway/BT) glitch when syncing remote sensor

Lauri: Spotted another issue. After the first sync is completed, the Gateway icon switched to a Bluetooth icon for a second. Even this is a cloud sensor at other side ot the world.
https://user-images.githubusercontent.com/24788772/158587817-8a7c02ef-63b3-4450-a6f1-bea6f23bf392.mp4

Can't reproduce. Can you try @markoaamunkajo?

I also cannot reproduce yet. Will recheck with Android 12 device

@andreevdenis I have not been able to reproduce this case.

Tried and couldn't reproduce this time. Will try later again and if still cannot reproduce, let's close.

This shouldn't be a thing in 2.0 version

Not seen in 2.1.0


Example instance

Would like to see what the software looks like (out of curiosity).

I fixed the demo, see https://uchan.plebco.de for a live instance.

Thanks bruv.


bug fix: Support more than just SqlServer at runtime :)

Found as part of building the docker sample, DbMigrator some Databases weren't registered in the container, and the GrateConfiguration wasn't making it to the migrator...

Thanks!


'peripy/create_crack.pyx' doesn't match any files

When I attempt to install peripy, I followed the instructions. I had installed cython and pyopencl, and they are ok. But when I installed peripy, I recieve this error "'ValueError: 'peripy/create_crack.pyx' doesn't match any files".  What should I do to solve this problem?

try installing using git


Added Github Action to generate API Reference documentation

Overview
This pull request includes several updates to the OpenAPI specifications for the new API Reference. The changes aim to improve the generation of API documentation using Redocly and streamline the process of combining multiple OpenAPI YAML files into a single documentation output.
Summary of Changes
1. GitHub Workflow Configuration

File: .github/workflows/build-api-ref.yml
Changes:

Modified workflow to automate the process of combining YAML files and generating API documentation.
Added steps to install dependencies, run the Python script, and generate documentation with Redocly.
Configured the workflow to upload the generated documentation as a workflow artifact.
Ensured the workflow runs on specific events such as push to the repository /res/ folder, and workflow_dispatch for manual triggers.

2. Redocly Configuration

File: redocly.yaml
Changes:

Added configuration to ensure Redocly correctly processes the combined OpenAPI YAML file.
Set up template reference for custom HTML rendering, ensuring the output aligns with the required documentation standards (mostly colors and stuff).

3. Python Script for Combining YAML Files

File: scripts/combine-yamls.py
Changes:

Developed a Python script that combines multiple OpenAPI YAML files into a single master YAML file (master_api_combined.yaml). This will be generated in an artifact output folder.
This script ensures that all relevant API definitions are consolidated and ready for documentation generation.

4. Redoc Template Update

File: templates/redoc-template.html
Changes:

Create a HTML Redoc template to accommodate custom styles and layout for the generated documentation.
Links to the MCF CSS and script files.

How to Test

Trigger the GitHub Action:
The workflow is triggered by a push to the /res/ folder, or can be manually triggered via workflow_dispatch in the GitHub Actions tab.

Verify Combined YAML:
Ensure the scripts/master_api_combined.yaml file is correctly generated by the Python script and contains the correct data from all the YAML files combined.

Check the Output:
The generated HTML documentation can be found as a workflow artifact. It is not permanently stored on the repo. After the workflow completes, you can download and review the master_api_combined.html file by checking out the workflow.

Next Steps

If there are any issues with the formatting or content, the Redoc template and Python script can be further modified.
Once the changes are verified, merge the pull request and ensure the updated documentation process is fully integrated.

FYI - I added in the compensation benchmark and skills intelligence yaml files into /res/ since they are not there yet.

Added in unit tests and updated Github Actions accordingly


Cannot use latest SwiftLint with CodeClimate reporter in Fastlane 2.172

This is follow-up to the recently closed issue https://github.com/fastlane/fastlane/issues/17855
Current output of SwiftLint codequality reporter used via Fastlane:
@rogerluan  would you like to take a loot at this? 🙂
[✔] 🚀
[08:25:29]: Get started using a Gemfile for fastlane https://docs.fastlane.tools/getting-started/ios/setup/#use-a-gemfile
[08:25:31]: ------------------------------
[08:25:31]: --- Step: default_platform ---
[08:25:31]: ------------------------------
[08:25:31]: Driving the lane 'ios lint' 🚀
[08:25:31]: Error setting value 'codequality' for option 'reporter'
[08:25:31]: You passed invalid parameters to 'swiftlint'.
[08:25:31]: Check out the error below and available options by running `fastlane action swiftlint`
+------------------+----------+
|        Lane Context         |
+------------------+----------+
| DEFAULT_PLATFORM | ios      |
| PLATFORM_NAME    | ios      |
| LANE_NAME        | ios lint |
+------------------+----------+
[08:25:31]: Unknown method 'warning', supported [:interactive?, :user_error!, :verbose, :important, :command_output, :command, :error, :success, :content_error, :password, :select, :crash!, :input, :not_implemented, :shell_error!, :build_failure!, :deprecated, :test_failure!, :confirm, :abort_with_message!, :header, :message]

+------+------------------+-------------+
|           fastlane summary            |
+------+------------------+-------------+
| Step | Action           | Time (in s) |
+------+------------------+-------------+
| 1    | default_platform | 0           |
+------+------------------+-------------+

[08:25:31]: fastlane finished with errors

[!] Unknown method 'warning', supported [:interactive?, :user_error!, :verbose, :important, :command_output, :command, :error, :success, :content_error, :password, :select, :crash!, :input, :not_implemented, :shell_error!, :build_failure!, :deprecated, :test_failure!, :confirm, :abort_with_message!, :header, :message]

Hey @bdolewski 👋
First, this is totally my fault, I wrote warning instead of important - that's the reason that error is showing up for you.
However, can you provide the command that you're using? If you use a valid option for reporter, you shouldn't face any problems.
Valid options:
available = ['xcode', 'json', 'csv', 'checkstyle', 'codeclimate', 'junit', 'html', 'emoji', 'sonarqube', 'markdown', 'github-actions-logging']

Lmk. I'll open a PR to fix the specific syntactic error you're facing.

Hey @bdolewski 👋
First, this is totally my fault, I wrote warning instead of important - that's the reason that error is showing up for you.
However, can you provide the command that you're using? If you use a valid option for reporter, you shouldn't face any problems.
Valid options:
available = ['xcode', 'json', 'csv', 'checkstyle', 'codeclimate', 'junit', 'html', 'emoji', 'sonarqube', 'markdown', 'github-actions-logging']

Lmk. I'll open a PR to fix the specific syntactic error you're facing.

Okay then, cannot wait to remove my workarounds on GitLab CI ;)

Okay then, cannot wait to remove my workarounds on GitLab CI ;)


Missing 2FA

No matter what I do i do not get a 2FA sent.
Tried normal installation tried a child bridge
But on new mobile devices i do get a 2FA sent

Same for me. Did you found a solution meanwhile?

No I have disabled the plug-in untill its fixed. But I hope its fixed soon
M.v.h
Jesper Frost
Den 2. okt. 2021 kl. 14.40 skrev SchneidoDUS @.***>:

Same for me. Did you found a solution meanwhile?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/colinbendell/homebridge-blink-for-home/issues/81#issuecomment-932745691, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ASOMCFD5XTS6DGCK5KEB2CDUE34TBANCNFSM5DBGUYWQ.
Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

I'm using homebridge on a Unraid Server trough docker. Just reseting the server via GUI didn't work.
So I've made a hard reset on Unraid docker and finally got the SMS.
So maybe you guys cloud try to do a hard reset on the device you are running homebridge.
Unfortunately live view is disabled for me, not sure why...

Hi guys, Blink support kicked me out a few days ago and since then i wasnt able to get plugin working again. I forced a 2MFA by login out and in, changing the pwd of my blink acocunt, but still get the following message. What else can I do? Please advise.
_[6.3.2022, 15:24:19] [Blink] {"message":"Client already deleted. Please re-login","lockout_time_remaining":0,"force_password_reset":false,"allow_pin_resend_seconds":90,"code":242}
[6.3.2022, 15:24:19] [Blink] POST /api/v5/account/login (401 Unauthorized)
[6.3.2022, 15:24:19] [Blink] {
'client-verified': '0',
'content-length': '150',
'content-type': 'application/json',
date: 'Sun, 06 Mar 2022 14:24:19 GMT',
server: 'nginx + Phusion Passenger',
status: '401 Unauthorized',
via: '1.1 2a44338adc8233e5b25aca28287a69c8.cloudfront.net (CloudFront)',
'x-amz-cf-id': 'Ki5aPzZX7gHplXT6S4Rt_oJcjiBXnzj1-hTgccr17FrJIwRq9aZb3w==',
'x-amz-cf-pop': 'FRA60-P3',
'x-blink-served-by': 'i-017822d3c26539dfd',
'x-cache': 'Error from cloudfront',
'x-content-type-options': 'nosniff',
'x-powered-by': 'Phusion Passenger'
}
[6.3.2022, 15:24:19] [Meross] [Küche] has been reported [online].
[6.3.2022, 15:24:19] [Blink] Error: 401 Unauthorized
at BlinkAPI.request (/usr/lib/node_modules/homebridge-blink-for-home/src/blink-api.js:167:19)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at BlinkAPI.login (/usr/lib/node_modules/homebridge-blink-for-home/src/blink-api.js:309:21)
at HomebridgeBlink.setupBlink (/usr/lib/node_modules/homebridge-blink-for-home/src/index.js:110:13)
at HomebridgeBlink.init (/usr/lib/node_modules/homebridge-blink-for-home/src/index.js:48:26)
[6.3.2022, 15:24:19] [Blink] Error: Unable to authenticate with Blink. Missing 2FA PIN?
at HomebridgeBlink.setupBlink (/usr/lib/node_modules/homebridge-blink-for-home/src/index.js:117:19)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at HomebridgeBlink.init (/usr/lib/node_modules/homebridge-blink-for-home/src/index.js:48:26)
[6.3.2022, 15:24:19] [Blink] NOTE: Blink devices in HomeKit will not be responsive.

I'm getting a similar issue, I cannot get it to generate a 2FA code from a plugin login attempt.  I've setup a brand new Intel NUC running Ubuntu and a new instance of HomeBridge as a test, installed the plug-in and still no 2FA code.  If i logout and back in with the app on my phone to generate a 2FA code and try to use that code I still get the same error message below.  Very strange as I've had this running for months with no issues and all of sudden it's erroring out.
[14/03/2022, 19:26:53] [Blink] POST /api/v5/account/login (401 Unauthorized)
[14/03/2022, 19:26:53] [Blink] {
  'client-verified': '0',
  'content-length': '150',
  'content-type': 'application/json',
  date: 'Mon, 14 Mar 2022 19:26:53 GMT',
  server: 'nginx + Phusion Passenger',
  status: '401 Unauthorized',
  via: '1.1 0a46842111c873a69a39e255bd934436.cloudfront.net (CloudFront)',
  'x-amz-cf-id': 'l6ISY9VqzXP2tRrM_M1SVj2_VDEmXnZvD_ShB_bLf9Ek0NQFHhFoXA==',
  'x-amz-cf-pop': 'LHR61-P3',
  'x-blink-served-by': 'i-00368fe836832b4d9',
  'x-cache': 'Error from cloudfront',
  'x-content-type-options': 'nosniff',
  'x-powered-by': 'Phusion Passenger'
}
[14/03/2022, 19:26:53] [Blink] Error: 401 Unauthorized
    at BlinkAPI._request (/usr/lib/node_modules/homebridge-blink-for-home/src/blink-api.js:167:19)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at BlinkAPI.login (/usr/lib/node_modules/homebridge-blink-for-home/src/blink-api.js:309:21)
    at HomebridgeBlink.setupBlink (/usr/lib/node_modules/homebridge-blink-for-home/src/index.js:110:13)
    at HomebridgeBlink.init (/usr/lib/node_modules/homebridge-blink-for-home/src/index.js:48:26)
[14/03/2022, 19:26:53] [Blink] Error: Unable to authenticate with Blink. Missing 2FA PIN?
    at HomebridgeBlink.setupBlink (/usr/lib/node_modules/homebridge-blink-for-home/src/index.js:117:19)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at HomebridgeBlink.init (/usr/lib/node_modules/homebridge-blink-for-home/src/index.js:48:26)
[14/03/2022, 19:26:53] [Blink] NOTE: Blink devices in HomeKit will not be responsive.


Fix small grammatical errors in readme

Just some small fixes for the readme...

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


New Rules: (require|disallow)ParenthesesAroundArrowParam

Requires parentheses around arrow function expressions with a single parameter.
// disallow
[1, 2, 3].map(x => x * x);
// require
[1, 2, 3].map((x) => x * x);

Fixes #1307.
Going to add the disallow rule after some feedback.
I used the isWrapped function from the requireParenthesesAroundIIFE rule.
I wasn't sure about the es6 test - so I did file.getDialect() !== 'es6' based on what @mikesherov said - I don't think we have any rules like this yet?
Also I used ArrowFunctionExpression since ArrowExpression didn't work - where should I be looking to know what to use (normally I can just find the jscs codebase). In the validateIndentation rule I see ArrowExpression.

Coverage decreased (-0.03%) to 99.26% when pulling 55b7dec10dc6c54dadf035649e9e5d2045a7671e on hzoo:requireParensArrow into ebf0a2dc080ae96072a3dc52f64957a851d66fd0 on jscs-dev:master.

Also I used ArrowFunctionExpression since ArrowExpression didn't work - where should I be looking to know what to use (normally I can just find the jscs codebase). In the validateIndentation rule I see ArrowExpression.

No place better then https://github.com/jquery/esprima/blob/master/esprima.js#L108-169

Coverage decreased (-82.12%) to 17.17% when pulling 1ae4aa61a6cce11fee41bdde8c4ef9ccda90b570 on hzoo:requireParensArrow into ebf0a2dc080ae96072a3dc52f64957a851d66fd0 on jscs-dev:master.

Coverage decreased (-0.05%) to 99.23% when pulling 6c642fc73e08c5ae22f5adc4ac56c5f1bcb5d55b on hzoo:requireParensArrow into ebf0a2dc080ae96072a3dc52f64957a851d66fd0 on jscs-dev:master.

Coverage decreased (-0.05%)

?

It's because of the if (file.getDialect() !== 'es6') { which might not be needed?

Coverage decreased (-0.02%) to 99.26% when pulling 980d15e964e35addd3d8a5a5f219b2ce7a365f5a on hzoo:requireParensArrow into fb9ce4fe6f55c83c96fa311a0973dfa77e5740af on jscs-dev:master.

Coverage increased (+0.01%) to 99.29% when pulling d152dea79edc3618d31ecc5286db8c05875688f0 on hzoo:requireParensArrow into fb9ce4fe6f55c83c96fa311a0973dfa77e5740af on jscs-dev:master.

Ok squashed and removed getDialect check.

Coverage increased (+0.01%) to 99.29% when pulling a8ef2ddd7ed88b088fb6a1161b4270babb533d1a on hzoo:requireParensArrow into fb9ce4fe6f55c83c96fa311a0973dfa77e5740af on jscs-dev:master.


Support overlayFS "per image"

Summary and Scope

Issue Type

RFE Pull Request

Use a symlink to refer to the primary overlayFS. This will enable an overlayFS to be created that matches the image name, meaning a new image will receive a new overlayFS unless the disk is wiped.
This enables rollbacks to a previous overlayFS by updating the symlink, updating rd.live.squashimg, and then rebooting.
Prerequisites

[ ] I have included documentation in my PR (or it is not required)
[ ] I tested this on internal system (x) (if yes, please include results or a description of the test)

Idempotency

Risks and Mitigations
This is not risky.

Needs a rebase and a documentation update to the repo's README.


Error when running on Android emulator

Describe the bug
When I want to run the application with an Android Emulator, I have plenty of errors. All errors are about a missing thing ("not found").
To Reproduce
Steps to reproduce the behavior:

Click on "run" with the Android emulator

Expected behavior
To run the application on my Android emulator.
Screenshots

Smartphone (please complete the following information):

Device: Pixel 5
OS: Android 11.0
API: 30

@jvondermarck
I don't use an emulator when debugging , i use a physical device and that error doesn't appear when using a physical device. It may have something to do with the emulator settings.
I have test a build on my physical device as late as tonight and no issue like above


Ignore abstract functions for unified-signatures rule

Bug Report

TSLint version: 5.11.0
TypeScript version: 2.9.2
Running TSLint via: (pick one) CLI

TypeScript code being linted
abstract class Foo {
    public abstract Bar(): void;
    public abstract Bar(data: any): void;
}

with tslint.json configuration:
{
    "defaultSeverity": "error",
    "extends": [
        "tslint:recommended"
    ],
    "jsRules": {},
    "rules": {},
    "rulesDirectory": []
}

Actual behavior
I'm getting the error These overloads can be combined into one signature with an optional parameter.
I could change it to:
abstract class Foo {
    public abstract Bar(data: any = null): void;
}

But of course this isn't ok for typescript because parameter initializers only work for functions that have a body.
Expected behavior
Ignore abstract function for the rule unified-signatures .

This would be good as an option on the rule. Related: #2433.

Hm, would it make sense to want to keep this option off? I would expect tslint to always ignore abstract functions for this rule. But I may be overlooking some cases.

☠ TSLint's time has come! ☠
TSLint is no longer accepting most feature requests per #4534. See typescript-eslint.io for the new, shiny way to lint your TypeScript code with ESLint. ✨
It was a pleasure open sourcing with you all!

🤖 Beep boop! 👉  TSLint is deprecated 👈 (#4534)  and you should switch to typescript-eslint! 🤖
🔒 This issue is being locked to prevent further unnecessary discussions. Thank you! 👋


Re-organize schema views and remove node add menu (ENG-2388)

Description
This PR re-organizes SchemaVariantViews into SchemaViews. SchemaViews contain SchemaVariantViews, which is a more accurate depiction of the underlying system and prevents confusion. To satisfy use cases in the frontend, new getters and types have been added that extend and organize the raw views from the backend. It should be much easier to avoid conflating "schemas" with "schemaVariants" in the frontend now.
As a result of the aforementioned changes, the route name has changed as well as affected tests and modules.
Additionally, this commit removes nodeAddMenu and references to the old Node concept that have lingered. Since "category" is now on the SchemaVariant and is non-optional, we no longer need the abstraction layer.

Additional Changes

Add per-package benchmark when installing builtins in sdf (rounded to two decimal places upon display)
Reduce logging when creating a SchemaVariant when installing builtins in sdf (info --> debug)
Add additional metadata to reduced logging
Remove unused default_schema_variant_id field on Schema since it should be an edge in the future

bors merge


Prebuilts for Apple Silicons (darwin-arm64v8)

Hi, is there any plan to add prebuilts for darwin-arm64v8?

Yes, it is dependent on a CI provider making Apple Silicon M1 hardware available for free to open source projects. If anyone knows of one please add a comment (or better yet a PR to integrate with it).
Please see https://github.com/lovell/sharp/issues/2460 for some discussion about how to compile libvips from source on this new platform.

Thanks a lot! I should search in lovell/sharp first. I'm leaving this issue open. Feel free to close it.

I think you could also cross-compile for aarch64-apple-darwin on a x86_64-apple-darwin environment (or even on x86_64-unknown-linux-gnu). Note that dependencies built upon Rust (i.e. librsvg) require Rust to be installed via the beta channel, as Apple Silicon support only recently landed in Rust/Rustup. Perhaps we should wait for Rust 1.49 before considering this approach.

I think you could also cross-compile for aarch64-apple-darwin on a x86_64-apple-darwin machine

In an happy coincidence, I actually worked on this today: https://github.com/lovell/sharp-libvips/pull/74 (very wip, probably unmergable in its current state due to the maintenance cost)
Ran into some libffi trouble (which was quite expected) as the python build script is bugged
librsvg can be worked around by using an older version. As detailed in the PR, macports did exactly that.

For anyone that has subscribed to this issue for updates, please see also https://github.com/lovell/sharp/issues/2604

sharp v0.28.0 is now available and provides prebuilt libvips binaries for darwin-arm64v8. Merci beaucoup for your help @abarisain!

Great! Thanks everyone!


[BEAM-9547] Add support for drop_duplicates and duplicated

This PR adds support for drop_duplicates and duplicated, by building on top of groupby.apply().
Also in this PR:

A bugfix to make groupby.apply() preserve the original column order.
A new test suite in frames_test.py called BeamSpecificTest, intended for testing functionality that only exists in Beam, like keep='any'.

GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

Run PythonLint PreCommit

can you please add a unit test to verify the groupby bug you are fixing?

Thanks, good idea. Testing the apply bug directly uncovered another edge case that wasn't being handled. Pushed two commits:

bc898ec adds new test case for column order bug
332045b adds new test case and fix for an issue with determining when to include grouped columns in the output index

I also rebased to resolve merge conflicts.
@rohdesamuel would you mind taking another look at the two new commits since it includes a functionality change?

Run RAT PreCommit

lgtm, thanks!


WebSocketsWrapper error when trying to download from FC2 Live

Checklist

[X] I'm reporting a broken site
[X] I've verified that I'm running yt-dlp version 2022.04.08 (update instructions) or later (specify commit)
[X] I've checked that all provided URLs are alive and playable in a browser
[X] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[X] I've searched the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue
[ ] I've read about sharing account credentials and I'm willing to share it if required

Region
No response
Description
Downloading of streams from https://live.fc2.com/ broke with the latest version of yt-dlp. The FC2 Live extractor was working in the  2<IP_ADDRESS> release, albeit it required a workaround.
The program now throws a 'WebSocketsWrapper' object has no attribute 'pool' error, I have the verbose logs pasted below.
Verbose log
[debug] Command-line config: ['-vU', 'https://live.fc2.com/10323104/', '--add-header', 'Accept-Encoding:gzip, deflate']
[debug] Encodings: locale cp1252, fs utf-8, out utf-8, err utf-8, pref cp1252
[debug] yt-dlp version 2022.04.08 [7884ade] (win_exe)
[debug] Python version 3.8.10 (CPython 64bit) - Windows-10-10.0.19044-SP0
[debug] Checking exe version: ffmpeg -bsfs
[debug] Checking exe version: ffprobe -bsfs
[debug] exe versions: ffmpeg N-106355-ga24e6ca8bf-20220320 (setts), ffprobe N-106355-ga24e6ca8bf-20220320
[debug] Optional libraries: brotli, certifi, Cryptodome, mutagen, sqlite, websockets
[debug] Proxy map: {}
Latest version: 2022.04.08, Current version: 2022.04.08
yt-dlp is up to date (2022.04.08)
[debug] [fc2:live] Extracting URL: https://live.fc2.com/10323104/
[fc2:live] 10323104: Downloading webpage
[fc2:live] 10323104: Requesting member info
[fc2:live] 10323104: Downloading ControlServer data
[fc2:live] 10323104: Fetching HLS playlist info via WebSocket
ERROR: 'WebSocketsWrapper' object has no attribute 'pool'
Traceback (most recent call last):
  File "yt_dlp\YoutubeDL.py", line 1408, in wrapper
  File "yt_dlp\YoutubeDL.py", line 1478, in __extract_info
  File "yt_dlp\extractor\common.py", line 641, in extract
  File "yt_dlp\extractor\fc2.py", line 209, in _real_extract
  File "yt_dlp\utils.py", line 5489, in __init__
  File "yt_dlp\utils.py", line 5493, in __enter__
AttributeError: 'WebSocketsWrapper' object has no attribute 'pool'

Did some quick tests and that does seems to fix the issue. Thanks.

@pukkandan Yes, it does


Move file close defers to AFTER we check if the file was successfully created

In the quickstarts, move the defer to after the file creation error is checked, just like:
https://blog.golang.org/defer-panic-and-recover

Note: @y-yagi took care of the tasks quickstart in:
https://github.com/gsuitedevs/go-samples/pull/11

Are you going to replace oauth2.NoContext too?

I'll change the contexts in a separate PR. Let's keep the scope to defers for this one -- thanks!


Update Slimscroll to V.1.3.6

Update Slimscroll to V.1.3.6

The version we have has been modified to support MS Touch Events which is required by IE 11. The updated version does not have that.
Thanks for the contribution.


Naming container on creation

Is there support for naming a container at the point of creation?
I've filed this as a bug rather than a feature request as #37 seems to indicate that this is (or was) intended to be possible.
ContainerOptionsBuilder::new(...) accepts a 'name' which turns out to be the name of the image. The builder also has a 'name' method which sets the same parameter.
There doesn't appear to be any way to set the container name here without making a second round trip to the docker daemon.
the redundancy makes me think the 'name' method on the builder should be setting the container name, not the image name. (although were that the case, the identical method names would be pretty confusing!)

Crate version: 0.5.0
OS: ubuntu 19.04
Output of running docker version on the command line: 18.09.3, build 774a1f4

scratch that, took a closer look at the source code. should have done that first.
had some stray whitespace that was causing the container creation to fail with a 400 error


cache-manager - add named return type to createCache

Please check if the PR fulfills these requirements

[x] Followed the Contributing guidelines.
[x] Tests for the changes have been added (for bug fixes/features) with 100% code coverage.
[x] Docs have been added / updated (for bug fixes / features)

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
Solves #923
This PR introduces a named return type, Cache, for the createCache() method. This type explicitly defines the structure of the cache instance, enabling:
Improved type inference and autocomplete in TypeScript.
Easier integration with frameworks like NestJS by allowing direct reference to the Cache type.
Stronger type guarantees, ensuring compatibility with future updates.
Does this PR introduce a breaking change?
No. The changes are fully backward compatible. The new type definition is an explicit representation of the existing inferred type, so no runtime behavior is affected.
Code example
import { Cache, createCache } from 'cache-manager';

const cache: Cache = createCache();

cache.set('key', 'value', 60).then(() => {
  cache.get<string>('key').then((value) => {
    console.log(value); // Outputs: 'value'
  });
});

@PoOwAa thanks so much for the pull request!

@PoOwAa - I should have this released in the next week or so. Will that work?

@PoOwAa - I should have this released in the next week or so. Will that work?

Perfect, thanks for the quick reply!


Fix code edior isn't loading old-prefixed solutions

See #6184 (anyway this PR is not closing that issue, this is just a hotfix).
Tested locally.

Works well!  Thanks!


Feature Request: Async Client

Feature Request: Async Client
Most of what vecs manages involves interacting with a database over a network. Sqlalchemy and psycopg2 both support async operations but vecs does not. Creating an async client would unblock the python interpreter while waiting on those external systems and would enable much better performance in async environments e.g. an async enabled web server like FastAPI. That use case will be particularly important if vecs users deploy the Collection.query or Collection.upsert methods behind an API
Potential Usage:
vx = await vecs.create_async_client(DB_CONNECTION)
...
docs = await vx.create_collection(name="docs", dimension=3)
...
# same for `upsert`, `create_index`, and `query`

We use unasync in the supabase python libraries (except for supabase-py) to expose both a sync and async interface - but unasync generates synchronous code from an asynchronous codebase, while we already have a synchronous codebase here
I'm a maintainer for the supabase python community libraries, I'd be happy to help here 😄

hi @anand2312
thanks! I'll take a look at unasync, thats an interesting approach
in the short term I think we'll want to make sure the overall API is stable before introducing the async interface but that could be a good option

@olirice Do you have any plans to add this feature?

it hasn't been scheduled for development yet. we'd be open to outside contributions if you're interested in working towards a PR?


add tests to make sure we always fetch overviews

Things to test:

simple COG + reprojection
simple COG + no reprojection
files with GCPS (which we wrap into a WarpedVRT) + reprojection (2nd WarpedVRT)
files with GCPS (which we wrap into a WarpedVRT) + no reprojection

closed by https://github.com/cogeotiff/rio-tiler/commit/25fe5b30e743388027f3ae1f0cc96177cd6996fe


Conditionally load NS globally

Hi guys,
I have had a tiny problem since one of the latest updates.
I'd like to load a second namespace globally, without writing it on every page seperately. I know, there is an option to preload multiple NS's initially, but the 2nd NS is connected a condition (authentication).
Previously I used the _app's 'getInitialProps' method, but I can't get it to work again with the latest version of nexti18next.
Here is the example code of the previously working solution.
const mergeRequiredNameSpaces = (pageProps, isAuth) => {
    const defaultNamepaces = [
        'common',
        !isAuth && 'guest'
    ].filter(Boolean)

    return {
        ...pageProps,
        namespacesRequired: pageProps.namespacesRequired
            ? [...defaultNamepaces, ...pageProps.namespacesRequired]
            : defaultNamepaces
    }

const globalGetInitialProps = async globalCtx => {
    const { Component, ctx } = globalCtx
    const componentPageProps = Component.getInitialProps ? (await Component.getInitialProps(globalCtx)) : {}

    const isAuth = await processToken(ctx, ctx.apolloClient)

    const pageProps = mergeRequiredNameSpaces(componentPageProps, isAuth)
    pageProps.initialSnacks = pageProps.initialSnacks && pageProps.initialSnacks.length === 0
        ? null
        : pageProps.initialSnacks
    return { pageProps }
}

You should be able to solve this by writing your own helper function or HOC. Good luck!


Parsing error: '=' expected

This is caused by the icon name chosen:

import { Icon, InlineIcon } from "@iconify/react";
import trophy from "@iconify/icons-mdi-light/trophy";
import airplane-arrival from "@iconify/icons-twemoji/airplane-arrival";

I am using a standard create react app for typescript
npx create-react-app my-app --typescript
It appears to be some sort of linting issue that will block loading of icons with dashes
in the name.
Test repo: https://github.com/peterennis/aeicons-react

That's correct error. You can name variable whatever you want, variables with dash are invalid.
That's why when you view such icon on Iconify website, it suggests to use different variable name: https://iconify.design/icon-sets/twemoji/airplane-arrival.html (click "React" tab):
import airplaneArrival from '@iconify/icons-twemoji/airplane-arrival';

You can use any name for import. It imports default export, not named export:
import notABoat from '@iconify/icons-twemoji/airplane-arrival';


Sections for Applied, Waitlisted, and Rejected

In the applications tab, it would be nice to have different sections for all these categories

Created new page with all sections


Updated/fixed sort by

Now using exif date_time_original rather than modified date.
This fixes this issue: https://github.com/waschinski/photo-stream/issues/5

Unsure if this is because of my change here, or because of some other config, but I can't arrow key through photos now, so don't merge this unless you can confirm that this is just an issue on my side, and not with the commit.

@waschinski fixed this,


Add support/coverage for Swift 5

Expected Behavior

Current Behavior

Context

Steps to Reproduce (for bugs)

Your Environment

Build scan URL:

This issue has been converted into an epic and split into the various step I see for this support. I scoped tool chain 4.1.3 and 4.2.3 on CI in this issue simply because we have known failures with newer tool chain and the coverage is lacking around those.


The C code is longer than Ruby/Batchfile but it's included in "Other" category.

I maked a simple Hello World program in all possible languages, I created the Ruby code earlier and C code later. But even C code is longer than Ruby code, it's still included in Other category and I want visitors to see "C" language in Languages section instead of Batchfile. Is this a bug or something I don't know?
This is my repository

GitHub will only show at most 6 languages in the side bar, and it'll show the six most popular by bytes of code. The rest will be grouped into "Other". You're seeing Batchfile instead of C because you have more bytes of Batchfile code than C:
C# 3.91 KB
Visual Basic .NET 3.63 KB
Java 3.21 KB
Python 2.98 KB
Ruby 2.68 KB
Batchfile 2.54 KB
C++ 2.24 KB
C 2.01 KB
F# 64 Bytes
Shell 29 Bytes
BASIC 23 Bytes

As this isn't a bug and is expected behaviour, I'm moving this to Discussions.


Update "PythonProjectResource" to "PythonAppResource"

Description
For .NET 9, we should obsolete AddPythonProject and replace it with AddPythonApp to align with AddNodeApp etc. the "project" term should be reserved for .NET projects, ie with a .csproj, to keep the differences between a "ProjectResource" and "ExecutibleResource" clear.
Notes -

I created a fully new class and methods to preserve the old ones as obsoleted.
I changed the summary of the api docs for anything obsoleted to say a generic thing we say in other .NET methods we obsolete.
I also updated the tests - I didn't create new ones and leave the current ones, which I could do instead if that's better - and the playground.
I left "project" as a term in api docs and params where it makes sense, ie the "python project's folder", because it seems like overkill to change all of that? Also at that point its really the python app entry points folder which is weird? But all of the methods and the class itself now use the terminology "App"

I fully expect there to be edits on this since it's the first time I'm touching an Aspire Integration sooooooooo go nuts!
Fixes #5020 (in the opposite way as requested, but per discussion with @aaronpowell and @DamianEdwards  this makes more sense)
Checklist

Is this feature complete?

[ ] Yes. Ready to ship.
[x] No. Follow-up changes expected.

Are you including unit tests for the changes and scenario tests if relevant?

[x] Yes
[ ] No

Did you add public API?

[x] Yes

If yes, did you have an API Review for it?

[ ] Yes
[x] No

Did you add <remarks /> and <code /> elements on your triple slash comments?

[ ] Yes
[ ] No

[ ] No

Does the change make any security assumptions or guarantees?

[ ] Yes

If yes, have you done a threat model and had a security review?

[ ] Yes
[ ] No

[x] No

Does the change require an update in our Aspire docs?

[x] Yes

Link to aspire-docs issue: TBD

[ ] No

Microsoft Reviewers: Open in CodeFlow

/cc @aaronpowell

Ok so I didn't change the test syntax and now its failing but there was some weird spacing so maybe thats it? @joperezr pls halp

GREAT NEWS these test failures aren't mine!!!

/azp run

@radical the tests have gone bad again. Cosmos, Elastic search and timeouts all over.

@radical the tests have gone bad again. Cosmos, Elastic search and timeouts all over.

re:Elasticsearch, the tests need to be looked at properly. I see bunch of failures like:
      Watch task over Kubernetes Executable resources terminated unexpectedly. Check to ensure dcpd process is running.
      System.Net.Http.HttpRequestException: Error while copying content to a stream.
       ---> System.Net.Http.HttpProtocolException: The HTTP/2 server sent invalid data on the connection. HTTP/2 error code 'PROTOCOL_ERROR' (0x1). (HttpProtocolError)
         at System.Net.Http.Http2Connection.ThrowRequestAborted(Exception innerException)
         at System.Net.Http.Http2Connection.Http2Stream.TryReadFromBuffer(Span`1 buffer, Boolean partOfSyncRead)
         at System.Net.Http.Http2Connection.Http2Stream.ReadDataAsync(Memory`1 buffer, HttpResponseMessage responseMessage, CancellationToken cancellationToken)
         at k8s.LineSeparatedHttpContent.CancelableStream.ReadAsync(Byte[] buffer, Int32 offset, Int32 count, CancellationToken cancellationToken)
         at System.IO.StreamReader.ReadBufferAsync(CancellationToken cancellationToken)
         at System.IO.StreamReader.ReadLineAsyncInternal(CancellationToken cancellationToken)
         at k8s.Watcher`1.<>c.<CreateWatchEventEnumerator>b__21_1[TR](Task`1 t)
         at System.Threading.Tasks.ContinuationResultTaskFromResultTask`2.InnerInvoke()
         at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
      --- End of stack trace from previous location ---
         at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
         at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
      --- End of stack trace from previous location ---
         at k8s.Watcher`1.CreateWatchEventEnumerator(Func`1 streamReaderCreator, Action`1 onError, CancellationToken cancellationToken)+MoveNext()
         at k8s.Watcher`1.CreateWatchEventEnumerator(Func`1 streamReaderCreator, Action`1 onError, CancellationToken cancellationToken)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
         at Aspire.Hosting.Dcp.KubernetesService.WatchAsync[T](String namespaceParameter, CancellationToken cancellationToken)+MoveNext() in /_/src/Aspire.Hosting/Dcp/KubernetesService.cs:line 216
         at Aspire.Hosting.Dcp.KubernetesService.WatchAsync[T](String namespaceParameter, CancellationToken cancellationToken)+MoveNext() in /_/src/Aspire.Hosting/Dcp/KubernetesService.cs:line 216
         at Aspire.Hosting.Dcp.KubernetesService.WatchAsync[T](String namespaceParameter, CancellationToken cancellationToken)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
         at Aspire.Hosting.Dcp.ApplicationExecutor.<>c__DisplayClass40_1`1.<<WatchResourceChanges>b__10>d.MoveNext() in /_/src/Aspire.Hosting/Dcp/ApplicationExecutor.cs:line 331
      --- End of stack trace from previous location ---
         at Aspire.Hosting.Dcp.ApplicationExecutor.<>c__DisplayClass40_1`1.<<WatchResourceChanges>b__10>d.MoveNext() in /_/src/Aspire.Hosting/Dcp/ApplicationExecutor.cs:line 331
      --- End of stack trace from previous location ---
         at Polly.ResiliencePipeline.<>c.<<ExecuteAsync>b__3_0>d.MoveNext()
      --- End of stack trace from previous location ---
         at Polly.Outcome`1.GetResultOrRethrow()
         at Polly.ResiliencePipeline.ExecuteAsync(Func`2 callback, CancellationToken cancellationToken)
         at Aspire.Hosting.Dcp.ApplicationExecutor.<>c__DisplayClass40_0.<<WatchResourceChanges>g__WatchKubernetesResourceAsync|3>d`1.MoveNext() in /_/src/Aspire.Hosting/Dcp/ApplicationExecutor.cs:line 329
         --- End of inner exception stack trace ---
         at System.Net.Http.HttpContent.LoadIntoBufferAsyncCore(Task serializeToStreamTask, MemoryStream tempBuffer)
         at System.Net.Http.HttpContent.WaitAndReturnAsync[TState,TResult](Task waitTask, TState state, Func`2 returnFunc)
         at k8s.Kubernetes.CreateResultAsync[T](HttpRequestMessage httpRequest, HttpResponseMessage httpResponse, Nullable`1 watch, CancellationToken cancellationToken)
         at k8s.AbstractKubernetes.ICustomObjectsOperations_ListClusterCustomObjectWithHttpMessagesAsync[T](String group, String version, String plural, Nullable`1 allowWatchBookmarks, String continueParameter, String fieldSelector, String labelSelector, Nullable`1 limit, String resourceVersion, String resourceVersionMatch, Nullable`1 timeoutSeconds, Nullable`1 watch, Nullable`1 pretty, IReadOnlyDictionary`2 customHeaders, CancellationToken cancellationToken)
         at k8s.AbstractKubernetes.k8s.ICustomObjectsOperations.ListClusterCustomObjectWithHttpMessagesAsync(String group, String version, String plural, Nullable`1 allowWatchBookmarks, String continueParameter, String fieldSelector, String labelSelector, Nullable`1 limit, String resourceVersion, String resourceVersionMatch, Nullable`1 timeoutSeconds, Nullable`1 watch, Nullable`1 pretty, IReadOnlyDictionary`2 customHeaders, CancellationToken cancellationToken)
         at k8s.WatcherExt.<>c__DisplayClass1_0`2.<<MakeStreamReaderCreator>b__0>d.MoveNext()
      --- End of stack trace from previous location ---
         at k8s.Watcher`1.<>c.<CreateWatchEventEnumerator>b__21_1[TR](Task`1 t)
         at System.Threading.Tasks.ContinuationResultTaskFromResultTask`2.InnerInvoke()
         at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
      --- End of stack trace from previous location ---
         at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
         at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
      --- End of stack trace from previous location ---
         at k8s.Watcher`1.CreateWatchEventEnumerator(Func`1 streamReaderCreator, Action`1 onError, CancellationToken cancellationToken)+MoveNext()
         at k8s.Watcher`1.CreateWatchEventEnumerator(Func`1 streamReaderCreator, Action`1 onError, CancellationToken cancellationToken)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
         at Aspire.Hosting.Dcp.KubernetesService.WatchAsync[T](String namespaceParameter, CancellationToken cancellationToken)+MoveNext() in /_/src/Aspire.Hosting/Dcp/KubernetesService.cs:line 216
         at Aspire.Hosting.Dcp.KubernetesService.WatchAsync[T](String namespaceParameter, CancellationToken cancellationToken)+MoveNext() in /_/src/Aspire.Hosting/Dcp/KubernetesService.cs:line 216
         at Aspire.Hosting.Dcp.KubernetesService.WatchAsync[T](String namespaceParameter, CancellationToken cancellationToken)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
         at Aspire.Hosting.Dcp.ApplicationExecutor.<>c__DisplayClass40_1`1.<<WatchResourceChanges>b__10>d.MoveNext() in /_/src/Aspire.Hosting/Dcp/ApplicationExecutor.cs:line 331
      --- End of stack trace from previous location ---
         at Aspire.Hosting.Dcp.ApplicationExecutor.<>c__DisplayClass40_1`1.<<WatchResourceChanges>b__10>d.MoveNext() in /_/src/Aspire.Hosting/Dcp/ApplicationExecutor.cs:line 331
      --- End of stack trace from previous location ---
         at Polly.ResiliencePipeline.<>c.<<ExecuteAsync>b__3_0>d.MoveNext()
      --- End of stack trace from previous location ---
         at Polly.Outcome`1.GetResultOrRethrow()
         at Polly.ResiliencePipeline.ExecuteAsync(Func`2 callback, CancellationToken cancellationToken)
         at Aspire.Hosting.Dcp.ApplicationExecutor.<>c__DisplayClass40_0.<<WatchResourceChanges>g__WatchKubernetesResourceAsync|3>d`1.MoveNext() in /_/src/Aspire.Hosting/Dcp/ApplicationExecutor.cs:line 329

Maybe this should have failed the test, but it seems to keep going.
re:cosmos, that's always an issue :/ cc @eerhardt
One of the reasons for timeouts is that sometimes you have lot of docker images being downloaded and increases the time taken per test! We need to figure out a solution for this one.

re:elasticsearch, towards the end you get:
dbug: Aspire.Hosting.Dcp.ApplicationExecutor[0] Stopped watching Container resources.
dbug: Aspire.Hosting.Dcp.ApplicationExecutor[0] Stopped watching Service resources.
dbug: Aspire.Hosting.Dcp.ApplicationExecutor[0] Stopped watching Endpoint resources.
crit: Aspire.Hosting.Dcp.ApplicationExecutor[0]
      Watch task over Kubernetes Executable resources terminated unexpectedly. Check to ensure dcpd process is running.
      System.Net.Http.HttpRequestException: Error while copying content to a stream.
       ---> System.Net.Http.HttpProtocolException: The HTTP/2 server sent invalid data on the connection. HTTP/2 error code 'PROTOCOL_ERROR' (0x1). (HttpProtocolError)
...
dbug: Aspire.Hosting.Dcp.ApplicationExecutor[0] Stopped watching Executable resources
...

.. but we keep running with rns. We should fail operations in that.

That looks like dcp crashed or stopped running or something.

@radical that error is the same as the one from this issue.
cc @karolz-ms

/azp run

I will work with @radical  to see if we can narrow down these HTTP/2 error code PROTOCOL_ERROR errors


Nested Configs and Refactor Lite

Addresses:

WB-1799

New Features:

Ability to un-nest sweep parameters when populating the SweepRun.config object. This introduces additional HyperParameter properties is_nested and nested_delimiter. Nesting logic is tucked away in config/utils.py.

Refactor:

Separate out search into a seperate module, with an abstract class. This is based on raytune's suggest pattern and sets up future work towards more search algos. New classes RandomSearch, GridSearch, and BayesSearch mimic the previous behavior in old *_next_runs() functions.
Seperate out tests_search and tests_config, as well as moving some common functions to tests/utils.py.
Repeatably random behavior in search algos with np.random.RandomState
General code cleanup
Removing unused imports, re-ordering imports

Thanks for the review. I have reasons for the refactors, but kind of a moot point: I agree with you it wasn't requested and its not needed so probably better to just leave things as they are. I'm gonna take out the couple parts we need and make a new PR with minimal changes.


Cirrus hanging after address selection when moving between multiple accounts

Probably low priority since users likely won't be switching back and forth between wallets.
When logging out and back in between wallets, the UI starts hanging briefly after address selection in Cirrus. Have not verified Stratis side of it.
Looks like a frontend code related lockup, maybe some observables not being handled for unsubs or some other memory leak.
I'll find some time to dig into this myself, posting here in the meantime.

Hey @mrtpain, there were some observables not being unsubbed, those should be fixed in <IP_ADDRESS>.
I'll leave this open to recheck once Core <IP_ADDRESS> is out. I expect Cirrus Core <IP_ADDRESS> to be launched early next year as well.


Update how-to-networking-private-link-portal.md (Typo "flexible serve…

…r"→"Flexible Server")
https://github.com/MicrosoftDocs/azure-databases-docs/blob/main/articles/mysql/flexible-server/how-to-networking-private-link-portal.md
#PingMSFTDocs

@SudheeshGH - related #10

Looks good. Thanks @hyoshioka0128


Changed DEST_DISK to /dev/sda2

Description of changes:
In the new ubuntu image we have enabled uefi which requires dev/sda1 partition. So for all other actions we have changed DEST_DISK to sda2.
Testing (if applicable):
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/lgtm


(Request)movement features

Can someone make movement stuff like optimizable autostrafer for kz long jumps and movement recorder

Autostrafer is already does have 100% sync in strafes

Autostrafer is already does have 100% sync in strafes

its legit strafer bro i mean hardstrafes like 6 per second for long jumps
actually i think u can add ur pull this feature
For hvh u need rage bhops tho

Optimizable autostrafer would be cool in ur pull
i think u can do this :))

@danielkrupinski bruh what u thing about this cant u paste or write?


Fix link description

A link of "Dapr documentation for resource bindings" sets to go to "References" section's same name in this page but did not work it. Other added link sentences is setting not [1] but (URL).
Summary
Describe your changes here.
Fixes #Issue_Number (if available)

Thanks for merging me!


sleepphasealarm: Fix inverted setting

because it was
format: v => v?"No":"Yes",

Argh, sorry about that! I must have missed that when I put those changes in :(


VAL-436: Enhance KAPI mev-m stream endpoint

found that this endpoint doesnt work on holesky
curl https://keys-api-holesky.testnet.fi/v2/modules/operators/keys
{"statusCode":500,"message":"Internal server error"}%
{"_entry":"{"context":"ExceptionsHandler","level":"error","message":"column \"operatorIndex\" does not exist","stack":["error: column \"operatorIndex\" does not exist\n    at Parser.parseErrorMessage (/app/node_modules/pg-protocol/dist/parser.js:287:98)\n    at Parser.handlePacket (/app/node_modules/pg-protocol/dist/parser.js:126:29)\n    at Parser.parse (/app/node_modules/pg-protocol/dist/parser.js:39:38)\n    at Socket.\u003canonymous\u003e (/app/node_modules/pg-protocol/dist/index.js:11:42)\n    at Socket.emit (node:events:513:28)\n    at Socket.emit (node:domain:489:12)\n    at addChunk (node:internal/streams/readable:324:12)\n    at readableAddChunk (node:internal/streams/readable:297:9)\n    at Readable.push (node:internal/streams/readable:234:10)\n    at TCP.onStreamRead (node:internal/stream_base_commons:190:23)"]}"}


Links on releases 7.0.0 are broken

https://github.com/ajv-validator/ajv/releases/tag/v7.0.0
All links pointing to v7-beta are broken.
E.g: https://github.com/ajv-validator/ajv/blob/v7-beta/docs/strict-mode.md

Thank you - I think I've replaced them all now :)

Thank you - I think I've replaced them all now :)


Project custom rdfs labels

resolves #98

@joschne please review this PR :)

Changes requested done.
Please review again @joschne :)


Initial version of the API docs #315

Summary
This pull request fixes #315 but it is still in progress. To improve the quality, I would like to have reviews from others as much as possible.
Checking the previews on GitHub Web UI from https://github.com/seratch/java-slack-sdk/tree/api-docs/docs/guides or running the jekyll server on your local machine enables the review much easier.
Requirements (place an x in each [ ])

[x] I've read and understood the Contributing Guidelines and have done my best effort to follow them.
[x] I've read and agree to the Code of Conduct.

@shaydewael Thank you very much for all the great suggestions and feedback! I've updated the documents. The latest version is deployed here: https://seratch.github.io/java-slack-sdk/

Codecov Report

Merging #346 into master will not change coverage.
The diff coverage is 46.02%.

@@           Coverage Diff           @@
##             master   #346   +/-   ##
=======================================
  Coverage        70%    70%
  Complexity     1977   1977
=======================================
  Files           244    244
  Lines          6162   6162
  Branches        542    542
=======================================
  Hits           4314   4314
  Misses         1511   1511
  Partials        337    337

Impacted Files
Coverage Δ
Complexity Δ

.../app_backend/events/handler/GroupCloseHandler.java
100% <ø> (ø)
2 <0> (ø)
:arrow_down:

.../app_backend/events/handler/TeamRenameHandler.java
100% <ø> (ø)
2 <0> (ø)
:arrow_down:

...ackend/events/handler/ChannelUnarchiveHandler.java
100% <ø> (ø)
2 <0> (ø)
:arrow_down:

...del/src/main/java/com/slack/api/model/Message.java
100% <ø> (ø)
0 <0> (ø)
:arrow_down:

...slack/api/app_backend/oauth/OAuthFlowOperator.java
0% <ø> (ø)
0 <0> (ø)
:arrow_down:

...end/events/handler/MemberJoinedChannelHandler.java
100% <ø> (ø)
2 <0> (ø)
:arrow_down:

...-model/src/main/java/com/slack/api/model/Team.java
100% <ø> (ø)
0 <0> (ø)
:arrow_down:

...kend/events/handler/UserResourceDeniedHandler.java
100% <ø> (ø)
2 <0> (ø)
:arrow_down:

...app_backend/events/handler/FileCreatedHandler.java
100% <ø> (ø)
2 <0> (ø)
:arrow_down:

.../app_backend/events/handler/FileChangeHandler.java
100% <ø> (ø)
2 <0> (ø)
:arrow_down:

... and 121 more

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 703cad6...0ce5b72. Read the comment docs.


Add file like object interface

This is a feature request to add a File Like Object interface that simply takes the same args and then wraps the generator output of stream_zip. Specifically the .read method might be the only meaningful method to add. This can be very handy for libraries like boto3 where you want to do a multipart streaming upload thus preserving the low memory functionality that is core to using an awesome library like stream-zip.
Kind of imaging something like:
import boto3
from stream_zip import stream_zip_as_flo

zipped_flo = stream_zip_as_flo(...)
s3_client = boto3.client("s3", config=AWS_CONFIG)
s3_client.upload_fileobj(
    zipped_flo,
    AWS_BUCKET_NAME,
    object_key,
    Config=TransferConfig(
        multipart_threshold=...,
        multipart_chunksize=...,
        io_chunksize=...,
        use_threads=False
    )
)

I'm doing my own implementation in my project but am not an expert. I'd be willing to contribute a PR in tandem with someone who knows generators and the ins-and-outs of this library.
Thanks for the great library!

Ah so it's not in the library itself, but there is https://stream-zip.docs.trade.gov.uk/output-examples/#file-like-object that shows how to convert an iterable of bytes to a file like object, and then also https://stream-zip.docs.trade.gov.uk/output-examples/#upload-to-s3 that shows how to use it for uploads to S3
On having it in stream-zip itself... I'm torn. I can see it would be useful, but I think the fact that it'll only useful to some, and the fact that the functionality can be achieved without it being in stream-zip as you (and the documentation) say, make me lean to not having it in the code base.

Yeah, I actually used the two examples as inspiration for my implementation. There may even be a library out there that is explicitly focused on turning generators into FLOs. I just wanted to bring it up since I didn't see any discussion on it in the issues. Feel free to close this if at this time it is out of scope.

There may even be a library out there that is explicitly focused on turning generators into FLOs

On this, I would love for it to be in the standard library... feels like the thing that would be in https://docs.python.org/3/library/io.html maybe? I've nosed around but never found anything.

Yeah, I actually used the two examples as inspiration for my implementation.

That is their purpose really.
On being out of scope... might ponder a bit more. Really want the library to keep its focus, and not contain converters for all possible output (and input) types. But: needing a file-like object is also quite a common requirement, and it's a bit fiddly to make one, so maybe this should be an exception.

Have now asked if the conversion should be in boto3: https://github.com/boto/boto3/discussions/3819

I have pondered a bit, and even if boto3 won't end up adding it, I am pro it not being in this stream-zip to keep it minimal. This isn't necessarily a permanent decision, but closing this issue in the meantime.

For reference by anyone in the future here is my implementation of a file-like-object wrapper class (different from the one referenced in the docs which would cause an exception in some cases)
generator = stream_zip(remote_files(specs), chunk_size=chunk_size)

class StreamingZipFile:
    def __init__(self, generator, chunk_size=CHUNK_SIZE):
        self.generator = generator
        self.buffer = b""

    def read(self, bytes=None):
        while bytes is not None and len(self.buffer) < bytes:
            try:
                self.buffer += next(self.generator)
            except StopIteration:
                break
        result = self.buffer[:bytes]
        self.buffer = self.buffer[bytes:]
        return result

(different from the one referenced in the docs which would cause an exception in some cases)

Ah - when would it cause an exception?

Also I wonder if there is a performance issue with the implementation of StreamingZipFile above. Could the += involve quite a lot of copying of bytes since each time the whole bytes instance has to be contiguous in memory? Say using the default chunk size of stream-zip, this would involve copying
0 the first iteration I suspect (since I think Python would avoid copying in this special case)
64 KiB + 64 KiB the second
64 KiB + 64 KiB + 64 KiB the third
etc
And so end up processing quite a lot.
From a quick test the default value of bytes passed into the read function of the file like object from upload_fileobj is 8388608 - the multipart_chunksize. And some very rough calculations suggest that this would result over ~500 MiB processed internally for an 8MiB file. And it would get much bigger for a larger multipart_chunksize.

I'll see if I can dig up the error in my logs (it was a while ago).
That's actually a very good point about the += operand!  You're absolutely right. That being said I've processed some relatively large zipfiles with it (>3 GB) without seeing significant memory inflation. I may run a test with the example from the docs again, and see 1) if i can reproduce the error, and 2) see what's going on under the hood with my implementation.

Ah so I wouldn’t have thought it had a lot of memory inflation, more performance in terms of cpu usage/speed since it won’t have the entire 500MiB in memory at once, just in total over the construction of one 8MiB upload part it would have copied 500MiB internally.

I will test that too, and I'll test it outside of my co's application because there could be some underlying infrastructure stuff that could be hiding some things.

Now when it comes to profiling python we are starting to get out of my area of expertise. So I don't feel comfortable posting any strong conclusions, but a basic cProfile shows the timing of my implementation and the docs to depend on the size parameter passed into the .read method. As you lower the value passed into the .read method my implementation begins to perform better than the docs implementation. And as the parameter value is increased the docs implementation performs better. The differences in both ways become greater as the magnitude of the parameter increases.
Here is a surprise: With my implementation is that as you pointed out the bytes object is immutable and using the += would result in a copy. I tried using a bytearray instead which is mutable and using the .extend method, which should modify it inplace not resulting a copy. Both methods performed about the same, so I'm not sure if some optimization is happening under the hood in python.
I can email the ipython notebook to you if you want.

Here is a surprise: With my implementation is that as you pointed out the bytes object is immutable and using the += would result in a copy. I tried using a bytearray instead which is mutable and using the .extend method, which should modify it inplace not resulting a copy. Both methods performed about the same, so I'm not sure if some optimization is happening under the hood in python.

I guess the doesn't surprise my too much - an extend would still have to re-allocate the bytes of the bytearray in most cases I think? The (im)mutability I don't think comes into it I suspect - it's more the fact that in both the total memory allocated needs to be contiguous, and there is no way as far as I know to allocate memory next to already allocated memory, so each would need a copy

As you lower the value passed into the .read method my implementation begins to perform better than the docs implementation. And as the parameter value is increased the docs implementation performs better

Ah good to know - do you have ball park figure of the point at which they perform about the same?

I can email the ipython notebook to you if you want.

Ideally it would attached to a comment in this issue if possible to keep things public?

Related: have now published https://github.com/uktrade/to-file-like-obj, with an example of using it with upload_fileobj to upload to S3 in its README


Bug: bin remove leads to "corrupt" .bin/config.json file

I added 3 binaries with bin and then removed one of the binaries again with bin remove <binary>.
After this I had a look at the .bin/config.json file and I found, that the file still contains fragments of the removed tool like this:
{
    "default_path": "<redacted>/bin",
    "bins": {
        "<redacted>/bin/bin": {
            "path": "<redacted>/bin/bin",
            "remote_name": "bin",
            "version": "v0.4.0",
            "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
            "url": "github.com/marcosnils/bin",
            "provider": "github"
        },
        "<redacted>/bin/bit": {
            "path": "<redacted>/bin/bit",
            "remote_name": "bit",
            "version": "v1.0.4",
            "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
            "url": "https://github.com/chriswalz/bit/releases/tag/v1.0.4",
            "provider": ""
        }
    }
}
 "<redacted>/bin/syncthing": {
            "path": "<redacted>/bin/syncthing",
            "remote_name": "syncthing",
            "version": "v1.14.0",
            "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
            "url": "github.com/syncthing/syncthing",
            "provider": "github"
        }
    }
}

To me, it looks like the the content of the config file is not reset before the changed config file is written back to disk.
https://github.com/marcosnils/bin/blob/8d946cb240845c92bff704ce2c0a5a1527e36126/pkg/config/config.go#L99
Additionally, I feel like the permissions for this file should not default to 0666 but something more restricted, e.g. 0600 or 0640.

Additionally, I feel like the permissions for this file should not default to 0666 but something more restricted, e.g. 0600 or 0640.

I guess we can change it to 664. That's the default when you touch a new file.

To me, it looks like the the content of the config file is not reset before the changed config file is written back to disk.

Weird bug indeed.. Just tried adding and removing a binary and couldn't reproduce. Are you able to repro consistently?

To me, it looks like the the content of the config file is not reset before the changed config file is written back to disk.

Think I've found what's happening. We're not actually closing the file after writing in the write method. So we can't be sure that write actually flushes the file after returns. I just saw that you're changing this in your fork, mind adding this please?


For non SQLite databases, the init flow does not ask for language

In the current workflow, CLI always introspects on non-SQLite databases and does not introspect on SQLite.
We used this classification to provide template downloading for SQLite and introspection for other databases.
The introspection workflow currently does not ask for language, so, we need to print files for either TS/JS or not print anything but prisma.project file.
This needs further spec.

This is fixed in the latest alpha, 0.0.102

This is not valid anymore with the new init flow in place.


Load

Hi @qbilius here is a PR for the code that I wrote last week.  There are a couple of issues I'd like to discuss with you about it.
Here are some questions -- these are mostly notes for us when we talk:

I still need to write a test for the feature extraction API.
do we want to load from __RECENT for validation, or just allow loading from the "real" storage?
do we want to force load_params to be used instead of save params?
am I handling scoping correctly?   I have some questions/comments here about exactly what we want to do.

We agreed to group the saving db params as "save_params" in analogy to load_params

ok @qbilius I've added an extraction test and done the save_params items stuff we agreed to.   Can you have a look at the PR now for review?

Great! I'll get to it on Friday. Tomorrow is nearly the whole day of meetings for me.


signup is created for email and password

I worked with antonio to help correct the synax and the signup for when the user will submit their email and password. Also the error is showing to come from another page on ProfileEdit1

Thank you for sharing with team.  Great job


Check type of parametrized argument to avoid mismatch

Newer test coverage has reminded us that we check argnames only, not argtypes in parameters of @nnbench.parametrize and @nnbench.product.
To fix, we grab the expected types from the signature and optionally unwrap them in the appropriate manner if they are generics or union types.

Repro:
import nnbench
from nnbench.runner import BenchmarkRunner

@nnbench.parametrize(
    (dict(a=float(i), b=i+1) for i in range(2))
)
def strsum(a: str | int, b: str | int) -> str:
    return a + b

if __name__ == "__main__":
    runner = BenchmarkRunner()
    runner.run(__name__, params={})

prints TypeError: expected type str | int, got type <class 'float'> for parametrized argument 'a' on this branch.


MINOR: Use toString in Records implementations only for summary metadata

This patch fixes a couple problems with logging of request/response objects which include records data. First, it adds a missing toString to LazyDownConversionRecords. Second, it changes the toString of MemoryRecords to not print record-level information. This was always a dangerous practice, but it was especially bad when these objects ended up in request logs. With this patch, implementations use toString only to print summary details.
Committer Checklist (excluded from commit message)

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

Still LGTM :)

retest this please

retest this please


Notebook server extension to Kernel Gateway

Notebook extension that uses remote kernels served up by Kernel Gateway.

This is looking good. When you're ready for me to test from install through use, take the WIP off and let me know.

I think this is ready for a test drive.

:shipit:


Improve withIOManager haddoc

It should explicitly say that one cannot do any async-io outside of withIOManager. So not only returning IOManager from withIOManager is wrong but also returning any async IO too.

Fixed in #1897


Style inconsistency in filtering dialogues

While the currently active choice in the mode selector of the label filter is highlighted using black colour (light theme), in the dialogues nested here it is the lightened colour of the respective folder. This situation does not contribute to intuitive operation.
I'd prefer the folder dependent colouring for creating consistency and only use black/white indicators for the high contrasting white/black folder accent colours. This would also have the advantage of emphasising the "Apply" button and thus making it better visible as the necessary final action.

Do you think the "Apply" button is redundant? I'm thinking of removing it from the layout.

What do you think?

This should be fixed in 2.2.1. Let me know your thoughts!

That's easier to grasp, and at one glance. One point, though: the colour contrast between the background and the chosen item indicator demands for a shadowy environment. Might be higher.

I see your point. Right now it's the same across the whole app. Might make it a bit darker in the future.


[Backport] [2.8] [BUG] cannot drop the username and password of a private registry in the secret cattle-system/cattle-private-registry in the downstream cluster once it is set on RKE1 downstream cluster

Backport of https://github.com/rancher/rancher/issues/45605

the fix can be validated on the latest v2.8-head

This issue is waiting for an alpha/RC to properly test.

Reproduced the issue on v2.8.4 for scenario 1. See below:

#
Scenario
Result

1
Unset private registry username from downstream RKE1 cluster
:x:

REPRODUCTION STEPS

Setup Rancher v2.8.3.
Provisioned a downstream RKE1 node driver cluster with an authenticated registry.
Took note of the cattle-private-registry secret and it's values.
Updated the private registry to unset the username.
Validated that the cattle-private-registry is still there and has data/.dockerconfigjson still present and same value.

Now that this has been reproduced, will attempt to now validate with a tag that has the fix.

Validated that this is addressed in v2.8.6-alpha3. See details below:
ENVIRONMENT DETAILS

Rancher install: Docker
Rancher version: v2.8.6-alpha3

TEST RESULT

#
Scenario
Result

1
Unset private registry username from downstream RKE1 cluster
:white_check_mark:

2
Unset private registry password from downstream RKE1 cluster
:white_check_mark:

3
Unset both the private registry username and password from downstream RKE1 cluster
:white_check_mark:

VALIDATION STEPS
Scenario 1

Setup Rancher via the rancher2 Terraform provider. Sample main.tf below:

terraform {
  required_providers {
    rancher2 = {
      source  = "rancher/rancher2"
      version = "4.1.0"
    }
  }
}
provider "rancher2" {
  api_url   = var.rancher_api_url
  token_key = var.rancher_admin_bearer_token
  insecure  = true
}

########################
# CREATE RKE1 CLUSTER
########################
resource "rancher2_cluster" "cluster" {
  name                                                       = var.cluster_name
  default_pod_security_admission_configuration_template_name = var.default_pod_security_admission_configuration_template_name
  rke_config {
    kubernetes_version = var.kubernetes_version
    network {
      plugin = var.network_plugin
    }
    private_registries {
      url      = var.private_registry_url
      user     = var.private_registry_username
      password = var.private_registry_password
    }
  }
}

########################
# CREATE NODE TEMPLATE
########################
resource "rancher2_node_template" "node_template" {
  name = var.node_template_name
  engine_insecure_registry = [var.insecure_registry]
  amazonec2_config {
    access_key     = var.aws_access_key
    secret_key     = var.aws_secret_key
    ami            = var.aws_ami
    region         = var.aws_region
    security_group = [var.aws_security_group_name]
    subnet_id      = var.aws_subnet_id
    vpc_id         = var.aws_vpc_id
    zone           = var.aws_zone
    root_size      = var.aws_root_size
    instance_type  = var.aws_instance_type
  }
}

########################
# CREATE ETCD NODE POOL
########################
resource "rancher2_node_pool" "etcd_node_pool" {
  cluster_id       = rancher2_cluster.cluster.id
  name             = var.etcd_node_pool_name
  hostname_prefix  = var.node_hostname_prefix
  node_template_id = rancher2_node_template.node_template.id
  quantity         = var.etcd_node_pool_quantity
  control_plane    = false
  etcd             = true
  worker           = false
}

########################
# CREATE CP NODE POOL
########################
resource "rancher2_node_pool" "control_plane_node_pool" {
  cluster_id       = rancher2_cluster.cluster.id
  name             = var.control_plane_node_pool_name
  hostname_prefix  = var.node_hostname_prefix
  node_template_id = rancher2_node_template.node_template.id
  quantity         = var.control_plane_node_pool_quantity
  control_plane    = true
  etcd             = false
  worker           = false
}

########################
# CREATE WORKER NODE POOL
########################
resource "rancher2_node_pool" "worker_node_pool" {
  cluster_id       = rancher2_cluster.cluster.id
  name             = var.worker_node_pool_name
  hostname_prefix  = var.node_hostname_prefix
  node_template_id = rancher2_node_template.node_template.id
  quantity         = var.worker_node_pool_quantity
  control_plane    = false
  etcd             = false
  worker           = true
}

Provisioned a downstream RKE1 node driver cluster with an authenticated registry.
Took note of the cattle-private-registry secret and its values.
Updated the registry to unset the username.
Validated that the cattle-private-registry secret does not have same value found in data/.dockerconfigjson.

It is updated to have the taken out username.

Reverted the change and ensured the value in data/.dockerconfigjson reverted as well.

Scenario 2

Repeated scenario 1, but unset the password instead of the username.

The cattle-private-registry secret is updated so that data/.dockerconfigjson reflects the change.

Scenario 3

Repeated scenario 1, but unset both the username and password.

The cattle-private-registry secret is updated so that data/.dockerconfigjson reflects the change.


[Site] Refresh banner

Refreshed banner
Fix menu icons (mobile)
Fix homepage spacing (mobile)

x
Mobile
Desktop

Before

After

Thank you @smnandre.


Similar project name

This project is named similarly to https://github.com/vsergeev/u-msgpack-python, though in that case the u connotes "micro". It also shares the same import line import umsgpack. I'm not asking you to change the name, I'm just leaving an issue here in case others are confused by this in the future (as I was when installing it via pip :wink:).

Sorry about that, I didn't know about yours! I can rename mine (e.g. to msgpacku) if you'd like, I don't think there are many (if any) users out there of this guy at this point. Also, it seems that your implementation also solves my primary annoyance at the default implementation by default, so maybe I didn't need to make this in the first place.

msgpacku, msgpack-unicode, msgpack-unicode-python, unicode-msgpack-python, etc. all sound fine to me, if you are comfortable with changing it. I think it will make the two PyPI package names less ambiguous (currently there is u-msgpack-python and umsgpack, and it's not obvious they're different implementations).
u-msgpack-python does address unicode encoding/decoding consistently, but it won't be as performant as your wrapper, since u-msgpack-python is a pure Python implementation. It's main purpose is provide a portable, drop-in implementation that doesn't requiring any compilation (which is a major pain point for Python when cross-compiling for another arch, IMO).

Published msgpacku, and updated the description of umsgpack to point to u-msgpack-python and msgpacku.


Add planetary constants to c++

add constants about planets (mass, rotation period, distance from the sun, average density etc.)
first manually, then we'll generate them

[X] mass
[X] rotation period
[ ] distance from the sun
[ ] average density


No LICENSE.md on the root project

For projects using your library is mandatory to include the MIT license as stated by the MIT library itself. However there is no LICENSE in the root of your project.
This is the MIT statement "The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software."

license.md created.


file_bundle_utils assumes paths are relative to the running process CWD

The file bundle adapters convert relative paths in the OTIO files here:
https://github.com/AcademySoftwareFoundation/OpenTimelineIO/blob/5dff8be58d1c4b63040fc70c8afd261bd31d6e55/src/py-opentimelineio/opentimelineio/adapters/file_bundle_utils.py#L132
This uses the process CWD as the root directory.  It might make more sense to make paths relative to the .otio file location.  Alternatively, we could disallow relative paths in file bundles entirely.

I agree that using the CWD is not a good idea.
If we allow the paths to be relative to the .otio file, then converting between OTIOZ and OTIOD will allow the content.otio to be identical. If we disallow relative paths, then that conversion will require re-writing the paths.

I think the right way to fix this, given that this is the only thing in OTIO that cares about this, is to add an argument to the adapter that allows you to specify the relative path policy:

disallow
relative to CWD of process
relative to root otio file

If we wanted to preserve the current behavior we could leave the default at "relative to CWD of process" otherwise we could set it to relative to root otio file.


Pressing configure excludes button presents another configure excludes button

#21037
Pressing this:

Presents:

I've already committed to configuring them, why do I need to press it twice?

This is not a regression. This has been the flow for a while now but should be improved. Moving to March

After looking through this again, I believe the intention behind this design was to show the user more information about the error and what they need to do. Hovering over the status bar item to find out the details was not very discoverable.
I'm unsure what a good alternative approach would be here. If we just open the tsconfig.json and don't display any message when a user clicks on this item status bar, it may not be clear to the user what they need to do. My vote would be to try to open the tsconfig if it exists and also display a error/message inside of it indicating what to fix

My vote would be to try to open the tsconfig if it exists and also display a error/message inside of it indicating what to fix

That might be better.

How do I get that "configure excludes" message to show up? Is it only for very large workspaces?

Yes, try creating a jsconfig.json that includes node_modules for a large project. A config file like this should do it:
{
    "exclude": []
}

Shouldn't it open the jsconfig if that exists? Now it only shows the message and doesn't open the jsconfig.

Sorry, I didn't specify the expected behavior very well here. Opening the jsconfig automatically was a pretty annoying experience, so now, when the configure excludes is triggered, you should see a warning message about this. Clicking the warning message should open the jsconfig

You're describing the opposite of what I thought - that previously you have to click twice to get to the jsconfig, and that now it should open the jsconfig automatically after the first click.
That's what I see in stable (I click the status bar, then click the button in the message bar). In Insiders, I click the status bar then see it open a warning message with no button to open the jsconfig.

Yes you are correct. This is not doing the correct thing when you click on the status bar. It should try to open the config file if one exists

Moving to july as I want more expose in insiders and the issue is not very high priority


Implement authentication server to generate SAS token

Description
The authentication server is responsible for authenticating agents and issue a new SAS token that can be used to publish events. Token generation information is kept inside a database for each deployment. Auth server authenticates the user with incoming JWT with a token endpoint. consumer key is taken from the JWT and extracts the relevant publisher name and the tokens need to generate the SAS token. Generated SAS token reply back to the client.

Agent implementation task https://github.com/wso2/apim-analytics-publisher/issues/9

Agent implementation task https://github.com/wso2/apim-analytics-publisher/issues/9

Fixed with https://github.com/wso2-enterprise/choreo-apim-analytics-auth-api/pull/9

Fixed with https://github.com/wso2-enterprise/choreo-apim-analytics-auth-api/pull/9

@madushadhanushka Can you please close this issue if the task is done


Calendar view: add context menu to element that have a note

Similar to calendar plugin where right click on days with note will open note related context menu.
Neew to find a way to process days that have notes from several journals.

Released in 1.2.0


0.43.0

I really need the bugfixes in XF4.3.0. However, I can't update because of a name change in XF: ListItemsLayout -> LinearItemsLayout. I can't compile XF4.3 with Fabulous because of this. Please update ASAP!

This same error
FSC : error FS0193: The module/namespace 'Xamarin.Forms' from compilation unit 'Xamarin.Forms.Core' did not contain the namespace, module or type 'ListItemsLayout'

Just published it to NuGet.org
Will be available in a few moments.


⚠ Bofrost.lu has degraded performance

In 525ffcf, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1554 ms

Resolved: Bofrost.lu performance has improved in 2209190 after 1 hour, 22 minutes.


Devenv.exe unexpected error

[Window Title]
devenv.exe
[Main Instruction]
An unexpected error occurred
[Content]
Please press Ctrl+C to copy the contents of this dialog and report this error to our issue tracker.
[^] Hide details  [Close]
[Expanded Information]
Build: 16.4.19310.1

System.ArgumentNullException: Value cannot be null.
Parameter name: first
   at System.Linq.Enumerable.Union[TSource](IEnumerable`1 first, IEnumerable`1 second)
   at Microsoft.PythonTools.Interpreter.CondaPackageManager.<GetEnvironmentVariables>d__23.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   at Microsoft.PythonTools.Interpreter.CondaPackageManager.<CacheInstalledPackagesAsync>d__59.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.PythonTools.Interpreter.CondaPackageManager.<GetInstalledPackagesAsync>d__64.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.PythonTools.Project.TestFrameworkInfoBar.<IsPyTestInstalledAsync>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   at Microsoft.PythonTools.Project.TestFrameworkInfoBar.<CheckAsync>d__2.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.PythonTools.Project.TestFrameworkWorkspaceInfoBar.<CheckAsync>d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.PythonTools.WorkspaceInfoBarManager.<TriggerInfoBarsAsync>d__15.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.PythonTools.Infrastructure.VSTaskExtensions.<HandleAllExceptions>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at Microsoft.VisualStudio.Telemetry.WindowsErrorReporting.WatsonReport.GetClrWatsonExceptionInfo(Exception exceptionObject)

Duplicate of #5935
It's been fixed, but it's going to be a few months before it makes its way into public VS release. Or you can use a preview version and get the changes much sooner (weeks).
A temporary workaround is to remove the Conda environment from the project which allow you to open the project without issues. If you need the conda environment for development, try using the Conda base environment (see below on how to add it) or recreate the conda virtual environment.
Let me know if any of these workarounds work for you or if you need more help.
image


[iOS][Extensibility] Non-existent custom properties are sent as "null"

Platform
iOS
Author or host
Host
Version of SDK
2.4.6
Details
In the ACRBaseCardElementRenderer.render() hook, when the acoElem doesn't have any additional properties, instead of being nil as expected, it's a string: "null". This is contrary to convention on Swift and Obj-C where the lack of something would normally be nil. Further, there's no mention of this in the documentation which implies that it will be a dictionary.

@jscalo , thanks for reporting the issue. I will take a look at it. thanks

@jscalo
Hello,
You need to create a resolver and register it with the registration.
Examples for a resolver can be found in ADCResolver.h and ADCResolver.m.
Main protocol that needs to be implemented is
- (UIImageView *)resolveImageViewResource:(NSURL *)url
The method should return a UIImageView asynchronously. By assigning the image to the image view once the image become available will notify the renderer and render the image in the AdaptiveCard view via KVO.
The registration example is here.
When registering, you register the resolver for each url's scheme as desired as shown in below.
   [_resolvers setResourceResolver:resolver scheme:@"https”];
Thank you

@jscalo
Hello,
You need to create a resolver and register it with the registration.
Examples for a resolver can be found in ADCResolver.h and ADCResolver.m.
Main protocol that needs to be implemented is
- (UIImageView *)resolveImageViewResource:(NSURL *)url
The method should return a UIImageView asynchronously. By assigning the image to the image view once the image become available will notify the renderer and render the image in the AdaptiveCard view via KVO.
The registration example is here.
When registering, you register the resolver for each url's scheme as desired as shown in below.
   [_resolvers setResourceResolver:resolver scheme:@"https”];
Thank you

Thanks @jwoo-msft ! (But I think this meant to go into #5252 ? )

Thanks @jwoo-msft ! (But I think this meant to go into #5252 ? )


Documentation: Hosting locally.

Greetings.
As you may already know, i have been battling with drizzle, mysql and planetscale, where most of the issues came from SSL errors.
I have found my solution to my problem.
I found out that planetscale uses HTTP / HTTPS to connect to instances, something planetscale supports but not something standard mysql servers do.
so this is my new index.ts file in drizzle that works.
import { drizzle } from "drizzle-orm/mysql2";
import mysql from 'mysql2';

// Create a MySQL connection pool (synchronous operation)

/*
Some options include:
    host: process.env["DATABASE_HOST"],
    user: process.env["DATABASE_USERNAME"],
    password: process.env["DATABASE_PASSWORD"],
    database: process.env["DATABASE_NAME"],
*/

import { env } from "@/env";
import * as schema from "./schema";

const pool = mysql.createPool({
    uri: 'mysql://root:MARIADB@localhost:3306/lucia',
    waitForConnections: true,
    connectionLimit: 10,
    queueLimit: 0
});

export const db = drizzle(pool, { schema, mode: "default" });

I do not care about the connection URI, it's local.

@iamtouha Resolves issue #26


Create example data

Especially for outside users, it's very helpful to have a small example dataset. We may be able to directly use real data we have, but if it's too large or complicated, we may have to make toy data.

This is now linked here.


Multiple issues with gzip package

Please answer these questions before submitting your issue. Thanks!
What version of Go are you using (go version)?
go version go1.6.1 linux/amd64
What operating system and processor architecture are you using (go env)?
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/redacted"
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GO15VENDOREXPERIMENT="1"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0"
CXX="g++"
CGO_ENABLED="1"

What did you do?
If possible, provide a recipe for reproducing the error.
A complete runnable program is good.
A link on play.golang.org is best.
I tried to read gzipped stream over SSH using gzip package.  I'm still struggling with minimal example, but here's the gist of it:

Using golang.org/x/crypto/ssh package connect to a remote machine and execute

cat some-large.file | gzip -f

Set session.Stdout to an instance of bytes.Buffer.
Try feeding this buffer to gzip.NewReader

What did you expect to see?
Gzip stream is parsed.
What did you see instead?

First problem: gzip.NewReader is blocking - why do you try to read in this function? A workaround is to create a fake reader which will instantiate gzip.Reader after ensuring some data are already received.
Second problem: gzip code seems to not be able to read from stream (i.e. it wants all bytes to have been already received). This is just my guess though. See below: it panics when truncating the bytes.Buffer

panic(0xa2fec0, 0xc820c9a370)
	/usr/local/go/src/runtime/panic.go:481 +0x3e6
bytes.(*Buffer).Truncate(0xc820bf2690, 0x0)
	/usr/local/go/src/bytes/buffer.go:71 +0xbf
bytes.(*Buffer).ReadByte(0xc820bf2690, 0xf7, 0x0, 0x0)
	/usr/local/go/src/bytes/buffer.go:300 +0x51
compress/flate.(*decompressor).moreBits(0xc82111a400, 0x0, 0x0)
	/usr/local/go/src/compress/flate/inflate.go:719 +0x4d
compress/flate.(*decompressor).huffSym(0xc82111a400, 0xc82111a430, 0x0, 0x0, 0x0)
	/usr/local/go/src/compress/flate/inflate.go:741 +0x5b
compress/flate.(*decompressor).huffmanBlock(0xc82111a400)
	/usr/local/go/src/compress/flate/inflate.go:485 +0x46
compress/flate.(*decompressor).copyHuff(0xc82111a400)
	/usr/local/go/src/compress/flate/inflate.go:638 +0x3e
compress/flate.(*decompressor).Read(0xc82111a400, 0xc820d78000, 0x8000, 0x8000, 0xc82015b400, 0x0, 0x0)
	/usr/local/go/src/compress/flate/inflate.go:355 +0x1ae
compress/gzip.(*Reader).Read(0xc820c8c2c0, 0xc820d78000, 0x8000, 0x8000, 0x656375746f624578, 0x0, 0x0)
	/usr/local/go/src/compress/gzip/gunzip.go:269 +0xef

Error message in both bytes and in gzip packages are nondescript and carry very little useful information.  Eg. "bytes.Buffer: truncation out of range" is next to useless w/o specifying what the range was and what the index was.  Same goes for "gzip: invalid checksum" and "gzip: invalid header", spurious io.EOF and other low-level non-digestable stuff.

I'm going to say this as working as intended.

Set session.Stdout to an instance of bytes.Buffer.
Try feeding this buffer to gzip.NewReader

This is not safe. The SSH session will be writing to the bytes.Buffer concurrently while gzip.Reader is reading from the buffer. This is racy and I suspect that running the program with the race detector will report an error. You should be using io.Pipe.

First problem: gzip.NewReader is blocking - why do you try to read in this function?
That is how GZIP works. There is a header that has to be read.

Second problem: gzip code seems to not be able to read from stream
GZIP uses DEFLATE under the hood. Read only returns data when the internal dictionary is filled (~32KB or so) or if there was a special synchronization marker. These markers are only inserted if gzip.Writer.Flush is called or if Z_SYNCFLUSH is used in the C library.

Error message in both bytes and in gzip packages are nondescript
My guess is that the program is racy. I don't think we'll be able to provide good errors in this case.


Failed to load the gradle-manager package

[Enter steps to reproduce below:]

...
...

Atom Version: 1.2.4
System: windows 10
Thrown From: Atom Core
Stack Trace
Failed to load the gradle-manager package
At undefined

SlickGrid requires jquery module to be loaded

Commands

Config
{
  "core": {},
  "editor": {
    "tabLength": 4,
    "invisibles": {},
    "ctrl-alt-b": "vue-format:format"
  }
}

Installed Packages
# User
atom-tsd, v0.9.0
bottom-dock, v0.3.5
build-gradle, v0.4.0
build-grunt, v0.3.0
file-icons, v1.6.13
formatter-coffeescript, v0.1.1
go-plus, v3.5.2
gradle-manager, v0.0.4
jsformat, v0.9.0
linter-docker, v0.1.2
navigate, v0.1.13
run-in-terminal, v0.5.0
sync-settings, v0.6.0

# Dev
gradle-manager, v0.0.0

Hey @henjue, it looks like you're working on this package right now, so I'm going to close this.


Gumgum: Update supported user ids

@jeanstemp, thanks for pointing that out! conflict has now been resolved and PR updated!


Redesign

Code is still needed for new text positions
whenimagininthesumma

also omg #1  !!

LGTM 👍

can you replace the cover image in the readme too? thanks.


Issue merge bathy

This routine will merge an (finer) inner bathymetry to a (coarser) outer bathymetry along the boundary, for use with nesting. I found the original file "hycom_bathy_merge.py" did not work as it required both bathymetries to have the same grid-size.

It looks to me. So  I am merging it. Probably it would be nice to add an example of launching this script.