Added mouse support for posix and windows

Added mouse support for posix and windows.
Depending on the terminal all mouse moves; left, middle, right clicks, scroll events,
shift and ctrl are reported.
fixes #8

This is great work, thanks for doing it! 💯 Wunderbar! 😃
It will take me a while to properly review it, I'll finish it by the end of this week. We could refine the Nim style and the examples a little bit and maybe the doco too. But overall it looks very good!
Stay tuned 😎

@enthus1ast Just wondering, have you had a chance to look at my comments? No rush though, I'm not going anywhere 😀

@johnnovak yep, will do the changes this weekend!

had no chance yet to finally test the changes on every relevant os.
When this is done; merge?

@enthus1ast Excellent work! There's just two comments that you haven't addressed yet, otherwise I'm fine to merge it. I'll also test it in the next few days.

@enthus1ast I've tested it on Windows and OS X, looks good. I left two further minor comments on the drawing example. Could you also please get rid of the compiler warnings?
OS X
/Users/johnnovak/dev/jn/illwill-mouse/illwill.nim(253, 5) Hint: 'gLastMouseInfo' is declared but not used [XDeclaredButNotUsed]

Windows

D:\Work\Code\illwill-mouse\illwill.nim(343, 49) Warning: type pragmas follow the type name; this form of writing pragmas is deprecated [Deprecated]
no idea how to fix this (or what the problem is) , this came straight out of c2nim *shrug*

ok, also fixed the Deprecated warning.


Change ddev list to default to showing all

The Problem/Issue/Bug:
@ultimike and @rickmanelius both recommended that the new global site listing default to ddev list --all, as they both got caught by missing actual global projects.
How this PR Solves The Problem:
ddev list shows all.
ddev list --active-only shows only sites active in docker.
Manual Testing Instructions:
Automated Testing Overview:

Related Issue Link(s):
Release/Deployment notes:

Awesome! Thank you for the quick turn on this :)

And... if you have the energy to try another round or just to experience this change @rickmanelius it's in the prerelease: https://github.com/drud/ddev/releases/tag/v1.9.0-alpha2, thanks!


Broken magnifying glass on search box

Browser: Firefox 45.0
OS: Manjaro (Arch) Linux

This unicode char is supposed to be a left-pointing magnifying glass (U+1F50D), but the unicode symbols are not globally accepted. Perhaps this would make more sense as an SVG?

Thanks for reporting! Are there easy solutions to detect SVG support and have a proper fallback to image? We could do this with the logo too by the way ;)

Thanks for reporting!

My pleasure -- this looks like a very interesting project :)

Are there easy solutions to detect SVG support and have a proper fallback to image?

It looks as though modernizr supports this. I don't know the details of how the detection works, though, sorry.
I don't know if it's worth it though -- as far as I as aware the vast majority of browsers now support SVG (the exception being IE8, which MS no longer support).

We could do this with the logo too by the way ;)

Sounds like a good idea to me :)

This looks like the most promising way to do it:
https://css-tricks.com/a-complete-guide-to-svg-fallbacks/#fallback-inline-svg-text

That looks like a really good resource. I've personally used the inline svg it mentions there recently, but I can't remember what broswer I was targetting.
Is there a formal definition of the browsers that commonsearch intends to support? That would probably help us to select the correct solution.

@meshy you're very right. I'm going to write some more docs to be a little more explicit about the requirements! There are some here: https://about.commonsearch.org/developer/frontend but they should be expanded.


Update cellomics functions

After your comments on my big PR on the UI I'm like "NOW LOOK AT MORE CODE BWAHAHAH".
Summary of PR:

The cellomics_semantic_filename has been updated to support the filename format used by the BBBC17/HT29 dataset. The HT29 dataset has files in the format:

AS_09125_050116110001_A01f00d1.DIB
ie, there is an underscore (or is that a lodash? ;)) in the screen name! Bah!! I've updated the cellomics_semantic_filename function so it can correctly parse screen names with and without underscores. It also ignores the '_stitched' tag that gets added to stitched files.

The snail stitch function has been re-written to accept the spiral configuration as an argument. Through it'd be nice to write this function such that I could just input snail_stitch((3, 2), 'left') and it'd do the rest, so I'd like to add this as an issue (however low priority).

Tests! A more comprehensive test has been written for the cellomics_semantic_filename function, along with a test for make_key2file and two tests for the stitching function. I adapted your method of generating test images from test_pre.py. Only thing I'm not sure about are the image_files_25 and image_files_6 functions. Is there any way to generate the number of images where I'd just need to call image_files(25) and image_files(6) ?

Coverage increased (+2.49%) to 48.87% when pulling 49ec613e609e23676f2734dc1e87446e7e91cd47 on starcalibre:update-cellomics-functions into a5d6744c871a65c499d07f7dc3a264a1d5792e77 on microscopium:master.

Coverage increased (+2.49%) to 48.87% when pulling c5aa92a2eb640f8034e4be082dc0f14e8e738499 on starcalibre:update-cellomics-functions into a5d6744c871a65c499d07f7dc3a264a1d5792e77 on microscopium:master.

Very cool! I love seeing the test coverage creep up! And nice use of fixtures!

Oh and btw, that is outrageous about the screen name (!!!), but let's stick to "underscore". =P I did crack up seeing this PR! =D

Yeah, we
Oh and btw, that is outrageous about the screen name (!!!), but let's stick
to "underscore". =P I did crack up seeing this PR! =D
—
Reply to this email directly or view it on GitHub
https://github.com/microscopium/microscopium/pull/33#issuecomment-76164528
.

Yeah, we'll probably just end up renaming this screen to something more
sensible but I guess it'll be good to make this function able to handle
anything that Cellomics produces. I'll see how I go with the regex..
On Thu, Feb 26, 2015 at 11:36 PM, Adrian Hecker<EMAIL_ADDRESS>wrote:

Yeah, we
Oh and btw, that is outrageous about the screen name (!!!), but let's
stick to "underscore". =P I did crack up seeing this PR! =D
—
Reply to this email directly or view it on GitHub
https://github.com/microscopium/microscopium/pull/33#issuecomment-76164528
.

Coverage increased (+1.81%) to 48.19% when pulling e3e9c4ad3931097dbcb041373b6b3100e6a1563d on starcalibre:update-cellomics-functions into a5d6744c871a65c499d07f7dc3a264a1d5792e77 on microscopium:master.

@jni

I'm using regex for everything in the semantic function now, I think despite the 'ASCII puke' of the regex syntax this is much more robust and readable than the string split gymnastics I was using before. Should also be able to n-padded field, channels and columns for any value of n and non-numerics in the plate barcode. Note I still need to move one of the tests back to being a doctest, agreed this function needs an example.

Both the docstring and code for the stitch function has been updated. I think I'd prefer to keep it as order being the parameter for the time being, the generalise it in a later PR that will address.

Refactored image_files function in the tests per the format you suggested.

That's three very badass commits! I agree 100% that the regex is better. Even though it's ugly, it's actually a simple regex to follow, and yes, probably much more robust! And I'm happy to see that the parametrised fixture worked!!! =D


Fix compiler warning Cast to size_t before doing comparison

Fix compiler warning about signed/unsigned comparison by casting signed -> unsigned before doing the comparison. I think this is safe assuming std::numeric_limits<DDS_Long>::max() is never negative and always smaller than size_t.
https://ci.ros2.org/job/ci_linux/10551/gcc/new/

CI (testing just rmw_connext_cpp and just connext)

Linux
Linux-aarch64
macOS
Windows


Name of Saved File

Hi,
Thanks for a great plugin.
I'm using the basic demo version and it's perfect except for one thing: how do I get the name of the file on the server?
I figure I can use the template function to insert it in a data property, but I need help getting the saved name.
Kind regards,
Tim

same here

I managed to resolve this myself, so here are the steps, so as to help anyone else with the same problem:

Create a holder for the file name

In the "files-template" section (within your HTML) add the attribute data-filepath="" to the  element

Send the data to the template function on successful upload

In the "demo-config.js" file find the "onUploadSuccess" function
replace the line that says ui_multi_update_file_status(id, 'success', 'Upload Complete'); with ui_multi_update_file_status2(id, 'success', 'Upload Complete', JSON.stringify(data));

Populate the template field

In the "demo-ui.js" file add the following function:
function ui_multi_update_file_status2(id, status, message, response) {
$('#uploaderFile' + id).find('span').html(message).prop('class', 'status text-' + status);
// EXTRACT SAVED FILE NAME FROM RESPONSE
var searchString = "files/";
var indexBegin = response.indexOf(searchString) + searchString.length;
var lengthResult = response.length - indexBegin - 2;
var filePath = response.substr(indexBegin, lengthResult);
// SET VALUE IN TEMPLATE
$('#uploaderFile' + id).attr("data-filepath", filePath);
}

Easy when you know how ;)


bug: The published builds on Docker Hub for spacebin are purely for arm64 platform

What happened?
The published builds on Docker Hub for spacebin are purely for arm64 platform. Better to use multi platform images that support both amd64 and arm64 platforms.
Minimum steps to reproduce
N/A
Version
Any
What browsers are you seeing the problem on?
No response
Relevant log output
No response

Latest images pushed are amd64. I've just fixed the Github action that automatically creates Docker images on release so I think we will just end up doing only amd64 images from now on, since I no longer have to build on my M1 laptop.


Fix nested DelegatingLogger issue.

Ensures only one layer of DelegatingLogger is created. Currently if you run a renderer with logging, you end up with many nested loggers which slows performance and eventually crashes the renderer. It would be useful to us at Softwire if this could be merged soon.

Could you give an example of where this error occurs please?

We're using the logger in conjunction with Alephant-Publisher-Queue, which uses Alephant-Lookup.
The writer creates a LookupHelper, which calls Logger.set_logger in its constructor. Without the check to see if it has already been initialized, this creates a new DelegatingLogger wrapping the currently existing DelegatingLogger.
This means that our renderer seems to be making a new DelegatingLogger for each item it renders, which gradually slows down the renderer until it crashes after a few hours.

Your change would mean that the set_logger method will only actually set the logger on it's first call (not inline with expected behaviour). The problem is instead within LookupHelper as you pointed out.

The problem will still occur any time set_logger is called with a DelegatingLogger, such as that returned by get_logger. The latest change I've pushed should be able to prevent that by only wrapping the value in a DL if it is not already a DL, while still allowing set_logger to set the logger more than once.

I have also submitted a PR to fix the misuse of the logger in the LookupHelper : https://github.com/BBC-News/alephant-lookup/pull/5

Although this seems like a small PR, it has actually opened up a much bigger discussion amongst the @BBC-News/framework team. There is fundamental issues with the original design of Alephant-Logger.
@revett and @darnould will be discussing this internally, and then will share thoughts here.

I'm going to close this PR, as we've now re-architectured the Logger functionality within Alephant:

New Alephant-Logger example

The example demonstrates using two driver gems we've released to accommodate different functionality. The drivers are passed into Alephant Logger, and we include the standard Ruby Logger as well.


Firefox Addon "Bad source or badly formatted message, skipping" from bootstrap-content-message-handler.js - console spam

I'm seeing a spam of:
Handling window message [bootstrap-content-message-handler.js:167:21](moz-extension://ab53cc0e-d7fc-4dfe-8d84-71c9e7ffc4e0/content/bootstrap-content-message-handler.js)
Bad source or badly formatted message, skipping. [bootstrap-content-message-handler.js:171:25](moz-extension://ab53cc0e-d7fc-4dfe-8d84-71c9e7ffc4e0/content/bootstrap-content-message-handler.js)

in the browser console in Firefox v121.0.1 using WebNowPlaying v3.0.1. As in, like 10 times a second or something.
I'm not sure what it's actually skipping, or how much of a problem it actually is. The spam certainly wasn't helpful when trying use the console to debug my userscripts on youtube though lol

Hmm interesting... You are right, it's Bitwarden, but the behaviour starts and stops as I enable/disable the WebNowPlaying addon...
here's the file (zipped because apparently Github doesn't let you upload .js files here)

I can replicate this now and this is indeed very annoying.
WebNowPlaying uses window messages to communicate, just like BitWarden seems to do for some cases. The issue is that BitWarden decides to log on each message, no matter what data it contains. I could "fix" the "Bad source..." warning but it'd still print "Handling window message" annoyingly. Consider opening a PR or issue on BitWarden to only log if a message came from its own scripts. As a temporary workaround you can just disable debug messages in the developer tools since these are printed with console.debug.

Got it. Thanks for looking into it.


[Snyk] Security upgrade adm-zip from 0.4.7 to 0.4.11

Snyk has created this PR to fix one or more vulnerable packages in the `npm` dependencies of this project.

Changes included in this PR

Changes to the following files to upgrade the vulnerable dependencies to a fixed version:

package.json
package-lock.json

Vulnerabilities that will be fixed
With an upgrade:

Severity
Priority Score (*)
Issue
Breaking Change
Exploit Maturity

579/1000  Why? Mature exploit, Has a fix available, Low severity
Arbitrary File Write via Archive Extraction (Zip Slip) npm:adm-zip:20180415
No
Mature

(*) Note that the real score may have changed since the PR was raised.

Commit messages

Package name: adm-zip
    The new version differs by 50 commits.

80d259f Version bump
3f00a03 Fixed #176
650e752 Fixed wrong date on files (issue #203)
d01fa8c Fixed bugs introduced with 0.4.9
c0cc85d Merge pull request #219 from jontore/master
39c83a2 Merge pull request #209 from poshta1900/fix
b94c5dd Merge pull request #227 from hhaidar/master
c95c553 Merge pull request #228 from jmcollin78/patch-1
cda668c Fix issue #218
0f2cb41 Fix octal literals so they work in strict mode
888931d To support strict mode use 0o prefix to octal numbers
89b6f67 Update package.json
9592298 Update README.md
ce59e5a Merge pull request #215 from grnd/master
38cb4a4 fix: resolve both target and entry path
18c3d31 Update package.json
666adec Update package.json
499d59b Update package.json
62f6400 Merge pull request #212 from aviadatsnyk/master
6f4dfeb fix: prevent extracting archived files outside of target path
ef0abe6 add try-catch around fs.writeSync
e116bc1 Merge pull request #208 from pmuens/patch-1
12d2099 Fix data accessing example in README
032566b Merge pull request #204 from BridgeAR/master

See the full diff

Check the changes in this PR to ensure they won't cause issues with your project.

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

No point in fixing goof, is a test project.


Fix: Cast shift operand to uint to comply with Go's type requirements

Description
Problem
The current implementation of the alaw.go and ulaw.go files uses int16 type for shift operations, which causes compilation errors in newer versions of Go. The error messages are as follows:
../../go/src/github.com/zaf/g711/alaw.go:95:18: invalid operation: compressedByte >>= seg - 1 (shift count type int16, must be unsigned integer)
../../go/src/github.com/zaf/g711/ulaw.go:102:24: invalid operation: frame >> seg (shift count type int16, must be unsigned integer)

Solution
This pull request addresses the issue by casting the shift operands to uint, ensuring compliance with Go's requirement for unsigned integer types in shift operations.
Changes

In alaw.go:
// Before: compressedByte >>= seg - 1
// After:
compressedByte >>= uint(seg - 1)

In ulaw.go:
// Before: frame >> seg
// After:
frame >> uint(seg)

Impact
These changes resolve the compilation errors without altering the logic of the code. It ensures compatibility with current and future versions of Go that enforce stricter type checking for shift operations.
Testing
The modifications have been tested locally, and the package now compiles successfully without any errors related to shift operations.
Additional Notes
This fix is necessary for users trying to use this package with recent Go versions. It maintains the original functionality while adhering to Go's language specifications.

I appreciate your time in reviewing this pull request. Please let me know if you need any further information or if you'd like me to make any additional changes.

Thank you for the detailed report. Can you please let me know of the Go version and platform that experiences this error? It seems to compile fine with 1.23 so I guess your changes are needed for some future version (1.24?)


[Add] Gaurav Sen

Fixes Issue #477

Changes proposed

Added a new subcategory for backend: system-design
Added a new link for Gaurav Sen

Screenshots

Note to reviewers

I have made the changes.
But seriously, I am always bad at writing these things

Made the changes

Just an update to merge this PR as I have made the requested changes

Thanks, looks good to me :)


Add ABOUT to top of pages.hydroshare.org

@mauriel133 - Need to add a link for ABOUT at the top of the pages.hydroshare.org site.
Link to associate with ABOUT: https://pages.hydroshare.org/about-hydroshare/
Ordering would be:

@ChristinaB can confirm this for placement

This looks great.  Thank you!

Implemented on beta

@dtarb - This issue is for implementation on the pages.hydroshare.org site and must be done from the https://github.com/hydroshare/hs_pages repository.
Assigned to @Maurier

This has been deployed.


Aqara gateway(homekit) V3, Alarm control doesn't show on HA

Home Assistant release with the issue:
0.87.1
Last working Home Assistant release (if known):
Operating environment (Hass.io/Docker/Windows/etc.):
hassbian
Component/platform:
homeassistant
homekit_controller
https://www.home-assistant.io/components/homekit_controller/
Description of problem:
Try to add Aqara gateway to homeassistant through homekit component. Homeassistant paired the gateway and showed gateway light. But couldn't find the alarm control. Couldn't find any error logbook for the Aqara gateway.
Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):

Traceback (if applicable):

Additional information:

Hi
I'm not familiar with Raspbian but if you SSH in an do this do you get an error? (It will take 10-30s to finish):
python3 -m homekit.discover

(This needs to be the same python that homeassistant uses when it starts, otherwise it will return an ImportError).
It should hopefully return some information about your device, a bit like this:
$ python3 -m homekit.discover
Name: DemoAccessory._hap._tcp.local.
Url: http_impl://<IP_ADDRESS>:8082
Configuration number (c#): 40
Feature Flags (ff): Paired (Flag: 0)
Device ID (id): 10:30:10:00:00:00
Model Name (md): DemoAccessory
Protocol Version (pv): 1.0
State Number (s#): 1
Status Flags (sf): 1
Category Identifier (ci): Lightbulb (Id: 5)

Make a note of your "Device ID".
Where is your configuration.yaml saved? If your configuration.yaml is was at /hass/config/configuration.yaml then you should also have a /hass/config/.homekit/pairing.json. Can you check that you do or try to find a pairing.json on your Pi.
Then can you do:
$ python3 -m homekit.get_accessories -f /hass/config/.homekit/pairing.json -a 10:30:10:00:00:00 -o json

Make sure to use your own values for -f and -a of course.
Send me the output and I might be able to figure out why your control panel doesn't show.

Hi,
Thanks for your help, I try you way, but it shows this message:
/usr/bin/python3: Error while finding module specification for 'homekit.discover' (ImportError: No module named 'homekit')

/home/pi/.local/lib/python3.5/site-packages/cryptography/hazmat/backends/openssl/x25519.py:35: CryptographyDeprecationWarning: public_bytes now requires encoding and format arguments. Support for calling without arguments will be removed in cryptography 2.7
utils.DeprecatedIn25,
[
{
"services": [
{
"iid": 1,
"characteristics": [
{
"value": "Aqara",
"description": "Manufacturer",
"type": "20",
"iid": 3,
"perms": [
"pr"
],
"format": "string"
},
{
"value": "ZHWA11LM",
"description": "Model",
"type": "21",
"iid": 4,
"perms": [
"pr"
],
"format": "string"
},
{
"value": "Aqara Hub-1563",
"description": "Name",
"type": "23",
"iid": 5,
"perms": [
"pr"
],
"format": "string"
},
{
"value": "0000000152603563",
"description": "Serial Number",
"type": "30",
"iid": 6,
"perms": [
"pr"
],
"format": "string"
},
{
"description": "Identify",
"iid": 7,
"perms": [
"pw"
],
"type": "14",
"format": "bool"
},
{
"value": "1.4.7",
"description": "Firmware Revision",
"type": "52",
"iid": 8,
"perms": [
"pr"
],
"format": "string"
}
],
"type": "3e"
},
{
"iid": 60,
"characteristics": [
{
"value": "1.1.0",
"description": "Protocol Version",
"type": "37",
"iid": 62,
"perms": [
"pr"
],
"format": "string"
}
],
"type": "a2"
},
{
"hidden": true,
"iid": 65536,
"characteristics": [
{
"value": false,
"description": "New Accessory Permission",
"type": "b1c09e4c-e202-4827-b343-b0f32f727cff",
"iid": 65538,
"perms": [
"pr",
"pw",
"ev",
"hd"
],
"format": "bool"
},
{
"value": "()",
"description": "Accessory Joined",
"type": "2cb22739-1e4c-4798-a712-bc2faf51afc3",
"maxLen": 256,
"iid": 65539,
"perms": [
"pr",
"ev",
"hd"
],
"format": "string"
},
{
"value": " ",
"description": "Remove Accessory",
"type": "75d19fa9-218b-4943-427e-341e5d1c60cc",
"iid": 65540,
"perms": [
"pr",
"pw",
"ev",
"hd"
],
"format": "string"
},
{
"maxValue": 100,
"value": 40,
"minValue": 0,
"description": "Gateway Volume",
"type": "ee56b186-b0d3-528e-8c79-c21fc9bcf437",
"unit": "percentage",
"iid": 65541,
"minStep": 1,
"perms": [
"pr",
"pw"
],
"format": "int"
},
{
"value": "Chinese",
"description": "Language",
"type": "4cf1436a-755c-1277-bdb8-30be29eb8620",
"iid": 65542,
"perms": [
"pr",
"pw"
],
"format": "string"
},
{
"value": "2019-02-12 06:45:07+10",
"description": "Date and Time",
"type": "4cb28907-66df-4d9c-924c-9971abf30edc",
"iid": 65543,
"perms": [
"pr",
"pw"
],
"format": "string"
},
{
"value": " ",
"description": "Identify Accessory",
"type": "e1c20b22-e3a7-4b12-8ba3-c16e778648a7",
"iid": 65544,
"perms": [
"pr",
"ev",
"hd"
],
"format": "string"
},
{
"value": "aiot-coap.aqara.cn",
"description": "Country Domain",
"type": "25d889cb-7135-4a21-b5b4-c1ffd6d2dd5c",
"iid": 65545,
"perms": [
"pr",
"pw",
"hd"
],
"format": "string"
},
{
"value": -1,
"description": "Firmware Update Status",
"type": "7d943f6a-e052-4e96-a124-d17bf00e32cb",
"iid": 65546,
"perms": [
"pr",
"ev",
"hd"
],
"format": "int"
},
{
"description": "Firmware Update Data",
"iid": 65547,
"perms": [
"pw",
"hd"
],
"type": "7f51dc43-dc68-4237-bae8-d705e61139f5",
"format": "data"
},
{
"description": "Firmware Update URL",
"type": "a45efd52-0db5-4c1a-1227-513fbcd8185f",
"maxLen": 256,
"iid": 65548,
"perms": [
"pw",
"hd"
],
"format": "string"
},
{
"description": "Firmware Update Checksum",
"iid": 65549,
"perms": [
"pw",
"hd"
],
"type": "40f0124a-579d-40e4-245e-0ef6740ea64b",
"format": "string"
}
],
"type": "9715bf53-ab63-4449-8dc7-2485d617390a"
},
{
"iid": 65792,
"characteristics": [
{
"value": "Lightbulb-1563",
"description": "Name",
"type": "23",
"iid": 65794,
"perms": [
"pr"
],
"format": "string"
},
{
"value": false,
"description": "On",
"type": "25",
"iid": 65795,
"perms": [
"pr",
"pw",
"ev"
],
"format": "bool"
},
{
"maxValue": 360,
"value": 0,
"minValue": 0,
"description": "Hue",
"type": "13",
"unit": "arcdegrees",
"iid": 65796,
"minStep": 1,
"perms": [
"pr",
"pw",
"ev"
],
"format": "float"
},
{
"maxValue": 100,
"value": 100,
"minValue": 0,
"description": "Saturation",
"type": "2f",
"unit": "percentage",
"iid": 65797,
"minStep": 1,
"perms": [
"pr",
"pw",
"ev"
],
"format": "float"
},
{
"maxValue": 100,
"value": 0,
"minValue": 0,
"description": "Brightness",
"type": "8",
"unit": "percentage",
"iid": 65798,
"minStep": 1,
"perms": [
"pr",
"pw",
"ev"
],
"format": "int"
},
{
"value": "",
"description": "Timers",
"type": "232aa6bd-6ce2-4d7f-b7cf-52305f0d2bcf",
"iid": 65799,
"perms": [
"pr",
"pw",
"hd"
],
"format": "tlv8"
}
],
"type": "43"
},
{
"iid": 66048,
"characteristics": [
{
"value": "MIIO Service",
"description": "Name",
"type": "23",
"iid": 66050,
"perms": [
"pr"
],
"format": "string"
},
{
"value": false,
"description": "miio provisioned",
"type": "6ef066c1-08f8-46de-9121-b89b77e459e7",
"iid": 66051,
"perms": [
"pr",
"hd"
],
"format": "bool"
},
{
"description": "miio bindkey",
"iid": 66052,
"perms": [
"pw",
"hd"
],
"type": "6ef066c2-08f8-46de-9121-b89b77e459e7",
"format": "string"
},
{
"value": "152601563",
"description": "miio did",
"type": "6ef066c5-08f8-46de-9121-b89b77e459e7",
"iid": 66053,
"perms": [
"pr",
"hd"
],
"format": "string"
},
{
"value": "lumi.gateway.aqhm01",
"description": "miio model",
"type": "6ef066c4-08f8-46de-9121-b89b77e459e7",
"iid": 66054,
"perms": [
"pr",
"hd"
],
"format": "string"
},
{
"value": "ch",
"description": "miio country domain",
"type": "6ef066c3-08f8-46de-9121-b89b77e459e7",
"iid": 66055,
"perms": [
"pr",
"pw",
"hd"
],
"format": "string"
},
{
"value": "country code",
"description": "miio country code",
"type": "6ef066d1-08f8-46de-9121-b89b77e459e7",
"iid": 66056,
"perms": [
"pr",
"pw",
"hd"
],
"format": "string"
},
{
"value": "app",
"description": "miio config type",
"type": "6ef066d3-08f8-46de-9121-b89b77e459e7",
"iid": 66057,
"perms": [
"pr",
"pw",
"hd"
],
"format": "string"
},
{
"value": 28800,
"description": "miio gmt offset",
"type": "6ef066d2-08f8-46de-9121-b89b77e459e7",
"unit": "seconds",
"iid": 66058,
"perms": [
"pr",
"pw",
"hd"
],
"format": "int"
}
],
"type": "6ef066c0-08f8-46de-9121-b89b77e459e7"
},
{
"iid": 66304,
"characteristics": [
{
"value": "Security System",
"description": "Name",
"type": "23",
"iid": 66306,
"perms": [
"pr"
],
"format": "string"
},
{
"maxValue": 4,
"value": 3,
"minValue": 0,
"description": "Security System Current State",
"type": "66",
"valid-values": [
1,
3,
4
],
"iid": 66307,
"minStep": 1,
"perms": [
"pr",
"ev"
],
"format": "uint8"
},
{
"maxValue": 3,
"value": 3,
"minValue": 0,
"description": "Security System Target State",
"type": "67",
"valid-values": [
1,
3
],
"iid": 66308,
"minStep": 1,
"perms": [
"pr",
"pw",
"ev"
],
"format": "uint8"
}
],
"type": "7e"
}
],
"aid": 1
}
]

it only shows "Lightbulb-1563", sometime only can turn on the light but not switch off. If I switch off the light by the hub's button, HA does not shows switch off and still on.

Thanks for the JSON. That's really helpful. I should be able to create a mock of your system now and see why it can't detect your security system. I'm currently working on a large ticket to do with pairing so there might be a delay before I can properly look into this.
Regarding your other observations:

If you switch a light on or off with the hub's button it will take up to a minute for the state to show in HA. Right now homekit_controller works by polling, and it polls once a minute. I have made a prototype with events but it is quite a big change that needs a lot of testing still.

I don't know why you sometimes can't turn your light off. If you see more clues about when the switch doesn't work that would be helpful. We have got a lot of work to do on the homekit_controller to get it working reliably. For example, I suspect it can't handle rapid presses of the toggle, and I suspect it can't handle it if you press the button right as the one minute poll starts.

Thanks for your help.
I try turn on and off on HA, It only can turn on the light. Could't turn off.
I try turn on and off on hub's button. HA doesn't shows turn on of turn off.
I found an error log when I turn on light on HA. Hope it will help.
Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/usr/lib/python3.5/asyncio/tasks.py", line 239, in _step
result = coro.send(None)
File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/helpers/entity.py", line 239, in async_update_ha_state
attr = self.state_attributes or {}
File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/components/light/init.py", line 454, in state_attributes
round(hs_color[1], 3),
TypeError: type NoneType doesn't define round method

Is this still an issue after upgrading to 0.90

Try using this component https://www.home-assistant.io/components/xiaomi_aqara/

@hoganwang have you tried this again since the last release came out? There are some locking improvements that might help you if you are still trying to use it via the homekit protocol.


Revert "fix(DataSources.svelte): handle case when $datasources.data is null or undefined in dataName assignment to prevent potential error"

Reverts basf/metis-gui#160

As per https://github.com/basf/metis-bff/commit/fadcc045f3d8ae9dc6436bd4bbf8921537bb7f1c


Compatibility error when callback has void return type

TypeScript Version:  3.8.3

Search Terms:
callback return type void
Code
const a: () => number = (): void => {};  // Type error. It is expected.
const b: () => void = (): number => { return 7 };  // Ok. It is expected.

a and b are expected behaviors which have been discussed many times,
see https://github.com/microsoft/TypeScript/issues/21674#issuecomment-363537054
But the following examples are different.
const f: (x: () => number) => number = (y: () => void) => 7;  // Ok. It is expected.
const g: (x: () => void) => number = (y: () => 7) => 7; // Type error. It is not expected. It should be Ok.

According to the Assignment Compatibility,
f is also expected behavior, that is to say,
type '(() => void) => number' is assignable to '(() => number) => number'
because both types are object (function) type
and the parameter type in '(() => void) => number' is assignable to or from the corresponding parameter type in '(() => number) => number'.
Here, parameter type '() => void' is assignable from type '() => number'.
g is expected to be ok because parameter type '() => number' is assignable to type '() => void',
according to Assignment Compatibility which says that 'each parameter type in N is assignable to or from the corresponding parameter type in M'.
Expected behavior:
Assignment Compatibility document may be wrong or its implementation may be wrong.
I assume that both may be wrong, f should be type error and g should be Ok in the same way as a and b.

This is working as intended.
Why are functions returning non-void assignable to function returning void?

Assignment Compatibility document may be wrong or its implementation may be wrong.

The specification is not maintained and heavily outdated. You should not use it to verify any behavior of TypeScript. It was last updated in early 2016. See #15711.

I have already read the FAQ many times, but the FAQ explains only a and b.
The FAQ shows f is type error and g is OK, however the actual behavior is that f is ok and g is type error.
const f: (x: () => number) => number = (y: () => void) => 7;  // Ok in the actual behavior
const g: (x: () => void) => number = (y: () => 7) => 7; // Type error in the actual behavior

The variance flips when a parameter appears as an input to a function.  Easiest to understand this by trying an example that would fail if the types are wrong:
const gimpl = (y: () => 7) => {
    const ret = y();
    if (ret !== 7) {
        throw new Error("Type was not expected")
    }
    return ret;
}

const g: (x: () => void) => number = gimpl;

g(() => { console.log("this function doesn't return anything") });

Playground Link

The variance flips when a parameter appears as an input to a function. Easiest to understand this by trying an example that would fail if the types are wrong:

I got it. Thanks for the easy to understand example.


docs: add installation instructions

Documented in https://github.com/hbagdi/deck/commit/3f01ed5c7a5f081b64caaa5ac576ad20fa4e3738.
This should be enough unless someone complains, in which case, we will then add detailed documentation.


refresh-views: Do we need --sql-timing?

All it does is prepend a tab followed by "iming" to the SQL output (I assume this is a bug).
I don't know what that's useful for.

I'm also not clear on why we need --sql, since it's just as easy to document that users can run cat sql/name-of-file.sql or (even better) open those files in their preferred text editor to get syntax highlighting, etc.

This is useful as it give timings per query not per file.   I am not sure if others need --sql but it also sets the search path correctly and was useful for debugging while developing.

Is the timing code correct? My reading of the code (since its first commit) is as in the issue description.

Aha, since it’s a regency string, the backslash is literal. Makes sense now.

From my reading of the code, the search path is only set in the case where --sql is not set: https://github.com/open-contracting/kingfisher-views/blob/ffacce8ee379e786d5ef00014ab2f07c2e24cb89/ocdskingfisherviews/refresh_views.py#L56


Rerouting: First Option is always the one heading to NFZ

Although the rerouting options are supposed to be randomly ordered to avoid creating a recognizable pattern, the first option presented is always the one heading to a NFZ.
Expected behavior: the option(s) should be randomly ordered.

fixed


Remarks missing entry (directive not valid in 64-bit MASM)

.MODEL directive is not valid in 64-bit MASM (ml64.exe).

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

ID: b866164d-59e5-2e6c-f086-867414a577b2
Version Independent ID: eae92b49-b3d5-1612-d033-2c94f43f9d6e
Content: .DATA
Content Source: docs/assembler/masm/dot-data.md
Product: visual-cpp
Technology: cpp-masm
GitHub Login: @corob-msft
Microsoft Alias: corob

Thanks @Player1UK! Fix should appear in a day or so.


Surface fulltext _relevance in returned data

Problem
You have support to ORDER BY ts_rank by adding _relevance to the orderBy, but the score is not part of the data you return. Ideally I would like to have access to the numeric relevance score in the data that is returned.
Suggested solution
Allow returning the score from the fulltext search
Alternatives
I can drop down to raw SQL, but my query is huge and I don't want to write 100 lines of raw SQL just to get at this one field

+1

Any news on this?


Raleway font issue

From Dale:
In both Chrome and Firefox (on Mac), the Raleway font currently comes through with old-style numerals.  I find these un-readable.  (The letters are nice, though.)  I think there?s a way to select the lining set of numerals (which Raleway includes) even in a browser context.
Originally created by Willie Northway at 2015-10-04 19:13, migrated from redmine-#3278

Status changed from New to Cancelled

By Tom Smyth at 2015-11-24 09:10

File PastedGraphic-1.tiff View added

From Dale:
When I say “un-readable”, I mean in the sense that I find the baseline shifts
distracting and reduce my speed. But it’s not a bug—this is a design decision
around fonts, and my criteria for the page is likely different from everyone
else.
By Willie Northway at 2015-10-05 00:42


Help with Kronecker-factored Laplace approximation for ResNet

Hi,
I am trying to obtain a Kronecker-factored Laplace approximation for an entire Resnet (not only for the last layer) but obtain an error that some layers are not supported (I suspect this is due to the Batch-Norm Layers?).  For example, using the WideResNet from your package, the following
from laplace import Laplace
from examples.helper import wideresnet as wrn
import examples.helper.dataloaders as dl

train_loader = dl.CIFAR10(train=True, batch_size=100)
net = wrn.WideResNet(16, 4, num_classes=10).cuda().eval()

la = Laplace(net, likelihood="classification",subset_of_weights='all',
             hessian_structure='kron')
la.fit(train_loader)

throws the error NotImplementedError: Found parameters in un-supported layers. I tried selecting only convolutional and linear layers via your subnetwork option, but this would only work with a full hessian which is unfeasible.
Is there a way around this or is it only possible to treat ResNets via their last layers with your package?
Thanks a lot for your help!

Try switching off the unsupported layers' grads, i.e. only conv and linear layers have requires_grad = True.
Doc: https://github.com/aleximmer/Laplace?tab=readme-ov-file#laplace-on-llm

Thank you @wiseodd  for your reply! Unfortunately, this isn't working. If you add
import torch.nn as nn
allowed_modules = [nn.Linear, nn.Conv2d]
for module in net.modules():
    if type(module) not in allowed_modules:
        for par in module.parameters():
            par.requires_grad = False

before calling Laplace above you get some empty lists which break the code at some point: In baselaplace.py (line 660) there is a call of parameters_to_vector which raises RuntimeError: torch.cat(): expected a non-empty list of Tensors in this case.

Thank you @wiseodd for your reply, this did the trick! For anyone else running into the same problem, here is what I added before the first call of Laplace above:
layers_to_ignore = [nn.BatchNorm2d]
for module in net.modules():
    if type(module) in layers_to_ignore:
        for par in module.parameters():
            par.requires_grad = False


Elect Lodash Methods To Demystify ~ Log

Hey @elderhsouza Thanks again for the awesome log suggestion 👋  & Hey All 😄
So far I've decided to format the list like so
Library
Category

[ ] link to snippet

Legend

[ ] link to snippet ~ Means no PR has been ref or Submitted
[ ] link to snippet | PR ref ~ Means PR is opened and ref
[ ]  link to snippet | PR ref  ~ Means PR was closed and not merged
[x] link to snippet | file-name.md ~ Means PR has been merged & snippet has been implemented

Note If a snippet does not have a PR attached. That means a PR wasn't created or referenced
Here's a list of the following snippets so far with their respective PR. Remember if there isn't a PR ref attached to a snippet it means no one has gotten around to it yet 💔 Which also means there's work to be done & contributions to be made 💻 💯
Don't be shy and give it a try. Fork, Clone, Contribute, & Submit a PR 🎊
Also shout out to @Chalarangelo for starting such an awesome project 🎉
REMEMBER
Follow the guidelines in CONTRIBUTING.md
No copy-pasting. Let's just try to have a fun and educative experience
Lodash
Array

[ ]  https://lodash.com/docs/4.17.4#differenceBy
[ ]  https://lodash.com/docs/4.17.4#differenceWith
[ ]  https://lodash.com/docs/4.17.4#dropRightWhile
[ ]  https://lodash.com/docs/4.17.4#dropWhile
[ ]  https://lodash.com/docs/4.17.4#intersectionBy
[ ]  https://lodash.com/docs/4.17.4#intersectionWith
[ ]  https://lodash.com/docs/4.17.4#pullAllBy
[ ]  https://lodash.com/docs/4.17.4#pullAllWith
[ ]  https://lodash.com/docs/4.17.4#sortedIndex
[ ]  https://lodash.com/docs/4.17.4#sortedIndexBy
[ ]  https://lodash.com/docs/4.17.4#sortedIndexOf
[ ]  https://lodash.com/docs/4.17.4#sortedLastIndex
[ ]  https://lodash.com/docs/4.17.4#sortedLastIndexBy
[ ]  https://lodash.com/docs/4.17.4#sortedLastIndexOf
[ ]  https://lodash.com/docs/4.17.4#sortedUniq
[ ]  https://lodash.com/docs/4.17.4#sortedUniqBy
[ ]  https://lodash.com/docs/4.17.4#takeRightWhile
[ ]  https://lodash.com/docs/4.17.4#takeWhile
[ ]  https://lodash.com/docs/4.17.4#unionBy
[ ]  https://lodash.com/docs/4.17.4#unionWith
[ ]  https://lodash.com/docs/4.17.4#unzip
[ ]  https://lodash.com/docs/4.17.4#unzipWith
[ ]  https://lodash.com/docs/4.17.4#xor
[ ]  https://lodash.com/docs/4.17.4#xorBy
[ ]  https://lodash.com/docs/4.17.4#xorWith
[ ]  https://lodash.com/docs/4.17.4#zipObjectDeep
[ ]  https://lodash.com/docs/4.17.4#zipWith
[x]  https://lodash.com/docs/4.17.4#dropRight
[x]  https://lodash.com/docs/4.17.4#zipObject
[x]  https://lodash.com/docs/4.17.4#pullAll | pull.md
[x]  https://lodash.com/docs/4.17.4#pullAt | pullAtIndex.md
[x]  https://lodash.com/docs/4.17.4#pull | pull.md
[x]  https://lodash.com/docs/4.17.4#remove | remove.md
[x]  https://lodash.com/docs/4.17.4#without | without.md
[x]  https://lodash.com/docs/4.17.4#takeRight | takeRight.md
[x]  https://lodash.com/docs/4.17.4#zip | zip.md
[x]  https://lodash.com/docs/4.17.4#intersection | intersection.md
[x]  https://lodash.com/docs/4.17.4#flattenDepth | flatten-array-up-to-depth.md
[x]  https://lodash.com/docs/4.17.4#nth | nth-element-of-array.md
[x]  https://lodash.com/docs/4.17.4#fill | #118
[x]  https://lodash.com/docs/4.17.4#drop | dropElements.md
[x]  https://lodash.com/docs/4.17.4#flatten | flatten-array.md
[x]  https://lodash.com/docs/4.17.4#flattenDeep | deep-flatten-array.md
[x]  https://lodash.com/docs/4.17.4#union | union.md
[x]  https://lodash.com/docs/4.17.4#chunk | chunk.md
[x]  https://lodash.com/docs/4.17.4#compact | compact.md
[x]  https://lodash.com/docs/4.17.4#concat | #107
[x]  https://lodash.com/docs/4.17.4#difference | difference.md
[x]  https://lodash.com/docs/4.17.4#head | head.md
[x]  https://lodash.com/docs/4.17.4#fromPairs | objectFromPairs.md
[x]  https://lodash.com/docs/4.17.4#last | last.md
[x]  https://lodash.com/docs/4.17.4#initial | initial.md
[x]  https://lodash.com/docs/4.17.4#tail | tail.md
[x]  https://lodash.com/docs/4.17.4#take | take.md
[x] ~~https://lodash.com/docs/4.17.4#findIndex~~ | Natively implemented
[x] ~~https://lodash.com/docs/4.17.4#findLastIndex~~ | Natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#join~~ | Natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#indexOf~~ | Natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#lastIndexOf~~ | Natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#reverse~~ | Natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#slice~~  | Natively implemented

Collection

[ ]  https://lodash.com/docs/4.17.4#countBy
[ ]  https://lodash.com/docs/4.17.4#forEachRight
[ ]  https://lodash.com/docs/4.17.4#findLast
[ ]  https://lodash.com/docs/4.17.4#flatMap
[ ]  https://lodash.com/docs/4.17.4#flatMapDeep
[ ]  https://lodash.com/docs/4.17.4#flatMapDepth
[ ]  https://lodash.com/docs/4.17.4#groupBy
[ ]  https://lodash.com/docs/4.17.4#invokeMap
[ ]  https://lodash.com/docs/4.17.4#keyBy
[ ]  https://lodash.com/docs/4.17.4#partition
[ ]  https://lodash.com/docs/4.17.4#reject
[ ]  https://lodash.com/docs/4.17.4#sampleSize
[ ]  https://lodash.com/docs/4.17.4#size
[ ]  https://lodash.com/docs/4.17.4#sortBy
[x]  https://lodash.com/docs/4.17.4#sample | sample.md
[x]  https://lodash.com/docs/4.17.4#shuffle | shuffle.md
[x]  https://lodash.com/docs/4.17.4#orderBy | orderBy.md
[x]  ~~https://lodash.com/docs/4.17.4#includes~~ | Natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#every~~ | Natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#find~~ | Natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#some~~ | Natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#forEach~~ | Natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#filter~~ | Natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#reduce~~ | Natively implemented
[x]  https://lodash.com/docs/4.17.4#reduceRight
[x]  ~~https://lodash.com/docs/4.17.4#map~~ | Natively implemented

Date

[x]  https://lodash.com/docs/4.17.4#now

Function

[ ]  https://lodash.com/docs/4.17.4#after
[ ]  https://lodash.com/docs/4.17.4#ary
[ ]  https://lodash.com/docs/4.17.4#before
[ ]  https://lodash.com/docs/4.17.4#bind
[ ]  https://lodash.com/docs/4.17.4#bindKey
[ ]  https://lodash.com/docs/4.17.4#debounce
[ ]  https://lodash.com/docs/4.17.4#defer
[ ]  https://lodash.com/docs/4.17.4#delay
[ ]  https://lodash.com/docs/4.17.4#memoize
[ ]  https://lodash.com/docs/4.17.4#negate
[ ]  https://lodash.com/docs/4.17.4#once
[ ]  https://lodash.com/docs/4.17.4#overArgs
[ ]  https://lodash.com/docs/4.17.4#partial
[ ]  https://lodash.com/docs/4.17.4#partialRight
[ ]  https://lodash.com/docs/4.17.4#rearg
[ ]  https://lodash.com/docs/4.17.4#rest
[ ]  https://lodash.com/docs/4.17.4#spread
[ ]  https://lodash.com/docs/4.17.4#throttle
[ ]  https://lodash.com/docs/4.17.4#unary
[ ]  https://lodash.com/docs/4.17.4#wrap
[x]  https://lodash.com/docs/4.17.4#flip
[x]  https://lodash.com/docs/4.17.4#curry | curry.md
[x]  https://lodash.com/docs/4.17.4#curryRight | pipe.md

Lang

[ ]  https://lodash.com/docs/4.17.4#castArray
[ ]  https://lodash.com/docs/4.17.4#cloneDeep
[ ]  https://lodash.com/docs/4.17.4#cloneDeepWith
[ ]  https://lodash.com/docs/4.17.4#cloneWith
[ ]  https://lodash.com/docs/4.17.4#conformsTo
[ ]  https://lodash.com/docs/4.17.4#isArguments
[ ]  https://lodash.com/docs/4.17.4#isArrayBuffer
[ ]  https://lodash.com/docs/4.17.4#isArrayLike
[ ]  https://lodash.com/docs/4.17.4#isArrayLikeObject
[ ]  https://lodash.com/docs/4.17.4#isBuffer
[ ]  https://lodash.com/docs/4.17.4#isElement
[ ]  https://lodash.com/docs/4.17.4#isEmpty
[ ]  https://lodash.com/docs/4.17.4#isEqual
[ ]  https://lodash.com/docs/4.17.4#isEqualWith
[ ]  https://lodash.com/docs/4.17.4#isError
[ ]  https://lodash.com/docs/4.17.4#isFinite
[ ]  https://lodash.com/docs/4.17.4#isInteger
[ ]  https://lodash.com/docs/4.17.4#isLength
[ ]  https://lodash.com/docs/4.17.4#isMap
[ ]  https://lodash.com/docs/4.17.4#isMatch
[ ]  https://lodash.com/docs/4.17.4#isMatchWith
[x]  ~~https://lodash.com/docs/4.17.4#isNaN~~ | Natively implemented
[ ]  https://lodash.com/docs/4.17.4#isNative
[ ]  https://lodash.com/docs/4.17.4#isNil
[ ]  https://lodash.com/docs/4.17.4#isNull
[ ]  https://lodash.com/docs/4.17.4#isObject
[ ]  https://lodash.com/docs/4.17.4#isObjectLike
[ ]  https://lodash.com/docs/4.17.4#isPlainObject
[ ]  https://lodash.com/docs/4.17.4#isRegExp
[ ]  https://lodash.com/docs/4.17.4#isSafeInteger
[ ]  https://lodash.com/docs/4.17.4#isSet
[ ]  https://lodash.com/docs/4.17.4#isTypedArray
[ ]  https://lodash.com/docs/4.17.4#isUndefined
[ ]  https://lodash.com/docs/4.17.4#isWeakMap
[ ]  https://lodash.com/docs/4.17.4#isWeakSet
[ ]  https://lodash.com/docs/4.17.4#toArray
[ ]  https://lodash.com/docs/4.17.4#toFinite
[ ]  https://lodash.com/docs/4.17.4#toInteger
[ ]  https://lodash.com/docs/4.17.4#toLength
[ ]  https://lodash.com/docs/4.17.4#toNumber
[ ]  https://lodash.com/docs/4.17.4#toPlainObject
[ ]  https://lodash.com/docs/4.17.4#toSafeInteger
[ ]  https://lodash.com/docs/4.17.4#toString
[x]  https://lodash.com/docs/4.17.4#clone | shallowClone.md
[x]  https://lodash.com/docs/4.17.4#isArray | isArray.md
[x]  https://lodash.com/docs/4.17.4#isBoolean | isBoolean.md
[x]  https://lodash.com/docs/4.17.4#isFunction | isFunction.md
[x]  https://lodash.com/docs/4.17.4#isNumber | isNumber.md
[x]  https://lodash.com/docs/4.17.4#isString | isString.md
[x]  https://lodash.com/docs/4.17.4#isSymbol | isSymbol.md
[x]  ~~https://lodash.com/docs/4.17.4#lt~~ | Natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#lte~~ | Natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#eq~~ | Natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#gt~~ | Natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#gte~~ | Natively implemented

Math

[ ]  https://lodash.com/docs/4.17.4#maxBy
[ ]  https://lodash.com/docs/4.17.4#meanBy
[ ]  https://lodash.com/docs/4.17.4#sumBy
[x]  https://lodash.com/docs/4.17.4#sum | arraySum.md
[x] https://lodash.com/docs/4.17.4#max | arrayMax.md
[x]  https://lodash.com/docs/4.17.4#mean | arrayAverage.md
[x]  ~~https://lodash.com/docs/4.17.4#ceil~~ | natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#multiply~~ | natively implemented
[x] ~~https://lodash.com/docs/4.17.4#add~~ | natively implemented
[x] ~~https://lodash.com/docs/4.17.4#divide~~ | natively implemented
[x] ~~https://lodash.com/docs/4.17.4#floor~~ | natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#round~~  | natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#subtract~~ | natively implemented

Number

[x]  https://lodash.com/docs/4.17.4#clamp | clampNumber.md
[x]  https://lodash.com/docs/4.17.4#inRange | inRange.md
[x] https://lodash.com/docs/4.17.4#random | randomNumberInRange.md

Object
String

[ ]  https://lodash.com/docs/4.17.4#deburr
[ ]  https://lodash.com/docs/4.17.4#escape
[ ]  https://lodash.com/docs/4.17.4#kebabCase
[ ]  https://lodash.com/docs/4.17.4#lowerFirst
[ ]  https://lodash.com/docs/4.17.4#pad
[ ]  https://lodash.com/docs/4.17.4#repeat
[ ]  https://lodash.com/docs/4.17.4#startCase
[ ]  https://lodash.com/docs/4.17.4#template
[ ]  https://lodash.com/docs/4.17.4#unescape
[ ]  https://lodash.com/docs/4.17.4#snakeCase | #321
[x]  https://lodash.com/docs/4.17.4#words | words.md
[x]  https://lodash.com/docs/4.17.4#escapeRegExp | escapeRegExpmd
[x]  https://lodash.com/docs/4.17.4#camelCase | toCamelCase.md
[x]  https://lodash.com/docs/4.17.4#capitalize | capitalizeEveryWord.md
[x]  https://lodash.com/docs/4.17.4#upperFirst | capitalize.md
[x]  https://lodash.com/docs/4.17.4#truncate | truncate.md
[x]  ~~https://lodash.com/docs/4.17.4#lowerCase~~ | natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#padEnd~~ | natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#padStart~~ | natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#parseInt~~ | natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#replace~~ | natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#endsWith~~ | natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#split~~ | natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#startsWith~~ | natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#toLower~~ | natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#toUpper~~ | natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#trim~~ | natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#trimEnd~~ | natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#trimStart~~ | natively implemented
[x]  ~~https://lodash.com/docs/4.17.4#upperCase~~ | natively implemented

Util

@kingdavidmartins I love you, man. I will start working through a few of these over time. This list is awesome. Hope we see it to completion eventually!

So should we start picking one by one from these resource? Is that you saying @Chalarangelo

@meetzaveri yep, let's ge started. Follow the guidelines in CONTRIBUTING.md to make merging PRs easier, work on individual files and state here which ones you intend to write (even though you might not), so we don't end up with duplicates if possible. I am clearing up PRs right now, will try to chip through some of the methods listed here later today.

@Chalarangelo  i am excited to try any one of these.

@sabareeshkk Yea give some of them a shot. Hope you submit a PR 😄

@kingdavidmartins sure will do :+1:

@kingdavidmartins I think we have https://lodash.com/docs/4.17.4#difference implemented under array-difference.md.

@Chalarangelo if there is any snippets I am missing please let me know. I kinda was up all night so not as sharp as I should be. Later on after some rest I should have all the current snippets that have been implemented updated  and extend the list to include the Collection, Lang, Date, and Function section/category

Alright, I'll see if we have any of them and I will also get coding now that the PR list is almost empty.

I updated some the list with some of the changes made and implementations added, also moved all completed functions to the very bottom to be easier to find new things to implement at first glance.

By the way I am sticking to the same PR procedure as everybody else for at least some of these snippets, so that I can get feedback before merging them in. Otherwise, we can easily lose track of what's going on.

I believe lodash's slice and reverse are pretty much polyfills for older browsers. We should not implement those.

@kingdavidmartins I tried to clean up the log by marking the natively implemented functions, as well as the ones I remember that we have implemented already. We seem to be about 30% through it, which is very impressive for just one week!

@kingdavidmartins & @Chalarangelo are we going to create a library out of this? 😄

@feiwen8772 In all honesty, I don't know. When we're done with Lodash's implementations and the PRs stop coming in so fast, we should look into packaging everything, seeing if people want that. For now, it's a bit out of the scope of the project and there's so much else that needs to be done that we can put that idea on hold for the next month or so. But it keeps coming up all the time, so we will eventually have to discuss that.

So something that's been bothering me: why are we demystifying lodash?
We aren't, nor should we try to be, a replacement. We are more a place for people to learn cool tricks in small snippets aren't we?
IFF we wanted to be a library we would need to be MUCH more structured about our approach to development, and pull requests, and implimentation( ala Ramda, Lodash, and other libraries that allow community support )
If we want to do such a series, why would we do it here? It'll add a lot of previous arts to questionable gain IMHO.

Hey @skatcat31 👋 Yea no problem.
That's a fair question. Hopefully my response helps.
The key word here is demystifying. By demystifying I mean exposing all their methods/function in a way that is easy & simple for the everyday/beginner programmer to understand. As amazing as lodash is, it isn't a simple feat to read through and understand all of lodash methods for your everyday/beginner. Especially when a lot of their method re-uses a lot of their other methods and/or other libraries. The goal here is to have users just find a snippet similar to lodash's snippet and say "ahhhh ok I kind of get it" or "hmmmm I wonder what Array.from() is why not use Array.apply()" or even "What if I just tweak x or y".
This is very important because it's simple and the barrier to entry is low. Someone just getting started can understand our snippets fairly easily. So why not expose them to one of the most used methods in our industry?
Think of demystifying lodash as a way to creating a beginners guide to lodash methods or understanding lodash guide in 30 seconds or less. I definitely think it not only adds value for Non Traditional who don't have a CS degree or are switching from a dying industry and trying to learn/understand new methods they have or haven't used. But also adds value for the kids in elementary/middle/high school who have just finished or started a codeacademy JavaScript course. None the less I don't think continuously working on the demystifying lodash backlog negatively impacts the projects.
@Chalarangelo Thoughts?

While it present a great learning opportunity, if they're at that level of beginner that they can't understand lodashes documentation and some of it's source code I fail to see how we could make it clearer. For some lodash or other library methods that could use an easier to understand version I totally agree.

Maybe instead of demystifying all of lodash, elect which ones to demystify

I def agree with that statement. To date there have been quite a few methods/functions we haven't really touched and have elected to not implement For example because it's natively supported
@skatcat31 You can also proactively look for snippets/methods on the log you think we shouldn't implement. Which the collaborators/community can vote on in agreement or not

@kingdavidmartins That makes my complaint null if we can vote on what to not do. The question then becomes "How do we vote?"

@skatcat31 It's now Titled: Elect Lodash Methods To Demystify ~ Log

@kingdavidmartins @Chalarangelo I really like this project! This project should be more popular than Lodash. This project is a collection of code snippets, not a library. More simple and easy to learn.

Hey @feiwen8772 👋
Aww Thanks 💯 ❤ This means soooo much. This project is made possible by @Chalarangelo & all the other contributor's that worked so hard making it all possible. You included 😉
Thanks again 😄

@kingdavidmartins Great explanation on why we are doing this. @skatcat31 my two cents on the matter are as follows:

Tools like jQuery and Lodash are industry standards and people use them without knowing their inner workings. Many developers on SO for example feel like jQuery is some kind of voodoo magic that cannot be done with regular JS. We need to show them otherwise!
Lodash has a ton of useful functions that I would want to use in a project, but I avoid adding huge libraries when I can help it and I like learning how their guts work, so I can modify them. Therefore, it provides us with a great opportunity to implement useful and commonly used methods for people who want to understand how it works and want to hack them a little bit, see what they can make of them.
As far as it has been discussed, we are not going to be building a library out of this, unless demand is extremely high. In that case, we might make a secondary project that releases every month with stable and well-tested snippets. Definitely do not bet on that, though.

TL;DR: Lodash is a great starting point and new contributors know what to build and what the expected functionality is, plus we know that the methods we are implementing are useful and we do not have to figure out if they are a good fit in term of usability or not.
About voting: I believe in community moderation and decisions, so I'm very glad that we can now decide which methods we do not want. For me the rule of thumb has always been that if something is natively implemented, we do not rewrite it (unless we extend functionality). That being said, we have a bunch of isX() methods that contradict my statement. Kindly suggest what we should be doing with them in the comments below.

Other libs to consider: https://vocajs.com, https://date-fns.org
With ES6 you can import only some of the functions, which allows developer to pull a banana
from the tree without pulling the whole jungle.
All these libs are working on more ES6-ish implementation.

@mycaule Truth be told we are working on Lodash, as it was the easiest/closest to our scope. Ramda is something that has been mentioned before and we might dissect a few of its methods, while jQuery's demistification is something I personally wanted to work on these past few days.
Overall, we are trying to find as much worthwhile material and convert it to our structure, so that people can learn as much as possible and understand their tools

Lodash isn't mystifying anything, original library underscore.js even has annotated source, and developers could always look directly at source code if any doubt.
http://underscorejs.org/docs/underscore.html

@mycaule yes they can read through it, but it's often easier to see a simple short example than traversing their 1K+ lines of code in those libraries. I constantly implement features of Ramda in vanilla ES6 because I don't want to have to import the many helper functions they use. While not a hit on performance, I don't want a front end to have to load their entire packages for a single function only to discard most of it. If I can use a packager or a smaller version, I often elect to do  that.
As for the lessons features we do have the Adapter category right at the top which shows some useful functions. We do need to clean up their descriptions though and put compose into that category as well with a description that states why they would use compose over pipe( algebriac transformation order versus lexical reading order  are easier for people to understand based on the context ).
Truth be told once we're done cleaning this up, a longer "lectures"/"examples" namespace might be and interesting extra page of learning materials for people to use.


fix(*) export the new  KONG_SPEC_TEST_REDIS_HOST variable to be compatible with Kong 3.0.0+

What changed that made this fail to begin with?

@ADD-SP is correct. All these test variables are now using KONG_SPEC_TEST_* as prefix now.

k, thx! rebased and merging


Made package.json ready for npm and added a browserify index

Tell me if anything is missing, just threw something together.
Issue: https://github.com/danielstern/ngAudio/issues/96

awesome!


cnvkit diagram: Fix chrX display for male samples

Per issue #2267 and following up on f008e6341d207867ec0a7d4ff3d75a27269f92ad, the --male-reference isn't needed here, but the --sample-sex option can still be useful, matching the cnvkit.py call usage.

Eric -- thanks so much for the review and quick fix.


Refactor for improved Trooper value getting

Details
There is now a cascading Trooper value for the logged in Trooper. This makes getting the trooper value with _roster.GetTrooperFromClaimsPrincipalAsync extra calls that are no longer needed. The code needs to be refactored to reflect this change.

Further testing has revealed this to be a non-working soltuion


Firefox 74 filesharing premature close issue

Maciej reported issue with filesharing and firefox 74.0
I experience the following.  :-/
It worked second time, but not for the third.

it  was working with  FF74@WIN10 on the dev branch (misi/mm)

It works accoring my tests in both master and development.


Handle non "chunked" Transfer-Encoding header values (#1181)

#1181

Reject request if chunked is not final token in Transfer-Encoding
Close connection if chunked is not final token in response Transfer-Encoding

Point for discussion: should we insert chunked and auto-chunk responses that don't have chunked in Transfer-Encoding? Or should we leave it up to the app to chunk the response in those cases? The problem with not auto-chunking is that Kestrel will now close the connection if such a response is sent.
@halter73 @davidfowl @Tratcher @mikeharder

No perf impact:
dev: 1210317.84 RPS
PR: 1224226.38

For compression Content-Encoding would be used if Kestrel was source server; but maybe? Transfer-Encoding would be used if it was a proxy - but not necessarily chunked if length was known? (Trying to think of a scenerio where it would apply)

Updated.

Ping.

:shipit:


added Stopwatch

Pull Request Template
Stopwatch -
Added Stopwatch
Added a stop watch.
issue #136

[✓] This issue was assigned to me.
[✓] One Change in one Pull Request
[✓] My file is in proper folder (Name of folder should be in lowercase with no space in between)
[✓] I am following clean code and Documentation and my code is well linted with flake8.
[ ✓] I have added README.md and requirements.txt with my script

If issue was not assigned to you Please don't make a PR. It will marked as invalid.

check linting and code spell issues please

okay...i will create a new PR

fixed all the issues.

perfect @durgeshahire07


Adding Custom OPENAI API URL Configuration Option

Description of the new feature / enhancement
I would like to request an enhancement to the OPENAI API KEY configuration section. Currently, the application only allows the user to input the API KEY but does not support setting a custom API URL.
Scenario when this would be used?
The ability to set a custom OPENAI API URL would be particularly useful in the following scenarios:
Corporate environments: Many companies use internal networks and API proxies for security and compliance reasons. Allowing the configuration of a custom API URL enables these users to route their requests through internal gateways.
Testing and Development: Developers often work in multiple environments, such as development, staging, and production, each with its own API endpoints. Having the ability to switch between these endpoints seamlessly would greatly enhance the development workflow.
Regional Restrictions: In regions where access to specific URLs might be restricted, being able to use alternate endpoints can ensure uninterrupted service availability.
Supporting information
No response

/dup #32960


Trailing whitespace in commands (print)

Should rdme trim it?

This is a problem with lack of new line character. I will fix it.


OmitEmptyWhere 对 Wheref 失效

1. What version of Go and system type/arch are you using?

go1.18.3 windows/amd64
2. What version of GoFrame are you using?

v2.1.1
3. Can this issue be re-produced with the latest release?
yes
4. What did you do?

5. What did you expect to see?
 What did you see instead?

@qq375251855 是的，Wheref语句不会做OmitEmpty，因为那个format参数可能带有比较复杂的条件，很难过滤。不过滤才是严谨的做法。你可以自行加个if条件判断一下。


Add MacOS assembly code and compiled binary (32 bits)

It worked on a Macbook Pro. However with the aluminium body the signal is weaker than on other PC's I tried.

thanks for your contribution :)
and yeah, metal with radio aren't friends


Better CLI (internal)

Currently, it looks a little messy with ifs all over, polluting the command parsing. It would be nice to have it in a more structured way.

On second thought, it does not really look too bad, I think having the CLI as an abstraction through a library might harm readability. It's not that it's unclear, but it's right there in your face.


start work on noise for chunk generation

WIP
This PR aims to implement the noise and related methods used for chunk generation. The noise will generate the same values as the Java implementation given the same inputs.

Noises used in surface generation is done. Actual chunk population is more in-depth. I'll need to take a longer look at it all to see whats going on.

I will review the rest. It shouldn't take more than an hour.

About the inline, I recommend to take a look at https://gist.github.com/kvark/f067ba974446f7c5ce5bd544fe370186#dont-use-inlinealways

About the inline, I recommend to take a look at https://gist.github.com/kvark/f067ba974446f7c5ce5bd544fe370186#dont-use-inlinealways

Interesting resource. I assumed the inlining behavior was the same between Rust and other C compilers. Thank you for the sharing. I guess the inlining changes can be reverted if deemed necessary.

Ok I may have been too optimistic, the review will take more than an hour.

Looks good. Thank you @kralverde :heart:


Create Hello.java

[ ] I have read freeCodeCamp's contribution guidelines.
[ ] My pull request has a descriptive title (not a vague title like Update index.md)
[ ] My pull request targets the master branch of freeCodeCamp.
[ ] None of my changes are plagiarized from another source without proper attribution.
[ ] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

This is Very Basic Java Program to Print Hello World.


Use ImageProcessor in .NETCore 1 Projects

Hello,
Would you please guide me how to use your package in a .NETCore Project?
Thanks.

Hi there,
As specified in the Readme the Core package is alpha which means that it shouldn't be used in a production environment.
If you wish to evaluated the library though you can download the latest build package from the MyGet package repository.

My question was something different. I just want to see how it works in a DotNetCore project. How can I import required files into a DotNetCore project!
Please guide me on this issue.

Using Myget as described is the only way to use the library in a DotNetCore project. If you need guidance on that I suggest you read the Microsoft documentation available online

the ImageFactory class is not available while I did get clone.... what should I do?!

Please help!

ImageFactory does not work in DotNetCore because System.Drawing is not part of DotNetCore. That is why there are two libraries - ImageProcessor and ImageProcessorCore.
This is all in the readme.

Dear Jim,
I eventually find out how to import your code into my project. The problem is that, I store image in Database and I need the Image to be converted to the Byte[] and I do that as follow:
MemoryStream st = new MemoryStream();
using (Stream file = image_data.OpenReadStream())
{
Image img = new Image(file);
img.Resize(400, 400);
img.Save(st);
}
byte[] b = new byte[st.Length];
st.Read(b, 0, (int)st.Length);
qe.image = b;
qe.image_name = image_data.FileName.ToString();
qe.image_type = image_data.ContentType.ToString();
The store procedure is working fine but the display procedure is not work. If I do not use your code and store the original version, it works fine.
Would you please help me on this matter?

Hi Amirzandi,
The issue tracker is not the place for questions, we have a Gitter channel for that. Have you read the contribution guidelines? This stuff is important.
That said, what is wrong with the MemoryStream.ToArray() method?
Also, don't store images in databases in that manner; it's a terrible idea, use the Filestream database type and store a pointer to an image stored in the filesystem or better yet use some sort of blob storage mechanism.

Ok thanks. I will share my problem via Gitter.im website and especially in your room.
Bests.

I think the problem is that it doesn't work with netcoreapp1.0, this app requires net46 or similar framework. Is this intentional? If the library targets only net45/net46 it can't be run in .NET Core only environments such as Linux.
It would be nice if it worked with this kind of project.json:

  "frameworks": {
    "netcoreapp1.0": {
      "dependencies": {
        "Microsoft.NETCore.App": {
          "type": "platform",
          "version": "1.0.0"
        }
      }
    }
  },

But in order to do this, the library must shake it's dependency on System.Drawing, which is being deprecated in .NET Core.

What dependency on System.Drawing?
Have you tested any of this?
I've just downloaded the latest nightly from the MyGet repository and installed it successfully into a .NET Core console application. Everything built perfectly.
Here's the resultant project.json
{
  "version": "1.0.0-*",
  "buildOptions": {
    "emitEntryPoint": true
  },

  "dependencies": {
    "ImageProcessorCore": "1.0.0-alpha1039",
    "Microsoft.NETCore.App": {
      "type": "platform",
      "version": "1.0.0"
    }
  },

  "frameworks": {
    "netcoreapp1.0": {
      "imports": "dnxcore50"
    }
  }
}

And here's a screenshot of the running console.

@JimBobSquarePants sure I tested, not trolling, honest.
I think this might be the problem: If you start typing in Visual Studio to project.json "ImageProce..." it suggests this:
    "ImageProcessor": "2.4.4",

Naturally I chose that, I gather that is wrong? Also, I thought I was right because I read your benchmark project.json as an example: https://github.com/JimBobSquarePants/ImageProcessor/blob/Core/tests/ImageProcessorCore.Benchmarks/project.json which uses net461, and thought I did everthing right.
I see in your example that it should be "ImageProcessorCore": "1.0.0-alpha1039", will try with that.

Do you have the MyGet feed in your package manager settings? I always rely on Nuget Package Manager to install dependencies.
The benchmark project.json is set up like that because I am benchmarking against System.Drawing which requires the full .NET framework
ImageProcessor and ImageProcessorCore are two separate products. One that I now consider legacy which requires the full .NET Framework and relies on System.Drawing and the new one (Core) which has no dependencies outwith the basics.

Yes, got it working now with bleeding edge NuGet feed. Excellent library! Thanks.

Excellent. Have fun and please any feedback let me know.


File upload gets placed into empty stream or topic box

Repro:

Open the compose box with an empty stream and/or topic.
Drag a file to the compose box.

Expected: File gets uploaded as normal.
Actual: [Uploading..] text gets placed into the stream box if it's empty, and into the topic box otherwise.

I'm having trouble reproducing this issue. The [Uploading..] text always seems to appear in the content box and not the stream/topic boxes even if they're empty.

Huh, and now this stopped happening for me. I'm very puzzled!

Hrm, I don't remember why I closed this issue earlier.

I can reliably reproduce this issue in Chrome on Linux. It's a bit finicky; it works best if you have a split-screen window (so you don't need to alt-tab in order before initiating the drag, which likely affects the focus state, which is important for this reproducer) and open the compose box using the c keyboard shortcut while looking at "All messages". Then just drag an item into the compose area.
The code path doing the insertion is compose_ui.insert_syntax_and_focus being called from upload.js.
With this logging code added:
$ git diff
diff --git a/static/js/compose_ui.js b/static/js/compose_ui.js
index a5d7578499..3acf1c5f7d 100644
--- a/static/js/compose_ui.js
+++ b/static/js/compose_ui.js
@@ -60,14 +60,18 @@ export function smart_insert($textarea, syntax) {
         syntax += " ";
     }

+    console.log("Triggering focus", $textarea, $(":focus"));
     $textarea.trigger("focus");
+    console.log("Triggered focus", $textarea, $(":focus"));

     // We prefer to use insertText, which supports things like undo better
     // for rich-text editing features like inserting links.  But we fall
     // back to textarea.caret if the browser doesn't support insertText.
     if (!document.execCommand("insertText", false, syntax)) {
+        console.log("Fail inserted text", $(":focus"));
         $textarea.caret(syntax);
     }
+    console.log("Success inserted text",  $textarea, $(":focus"));

     autosize_textarea($textarea);
 }

I get this output:

What appears to be happening is that somehow the focus stays on the wrong element just before the insertText command executes; leading to the insertion happening in the wrong place.
The right fix likely involves just replacing insertText, which is deprecated anyway, completely. @amanagr I think you were able to use the text-field-edit library for this class of string replacement preserving Undo elsewhere in this file; want to try porting this to use that?

Opened https://github.com/zulip/zulip/pull/23499 attempting that.


Allow theming auth ui

@carmenlau Can you review this when you have time? I would like to have this fix so the demo can have a better theme experience.


Fix SIMD encoding

Fixes https://github.com/wasdk/wasmparser/issues/37

Properly read SIMD opcode
New names and codes

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Adding copy and paste functionality of block

Fixes #1179 and #1180

I have updated my local yarn to yarn2.


imgproxy: 3.9.0 -> 3.13.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/imgproxy/imgproxy/releases.
meta.description for imgproxy is: "Fast and secure on-the-fly image processing server written in Go"
meta.homepage for imgproxy is: "https://imgproxy.net"
meta.changelog for imgproxy is: ""
Updates performed

Golang update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 3.10.0 with grep in /nix/store/c9grb1nc087iq6r2jwyi3lmlsphkf8pj-imgproxy-3.10.0
found 3.10.0 in filename of file in /nix/store/c9grb1nc087iq6r2jwyi3lmlsphkf8pj-imgproxy-3.10.0

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
imgproxy

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/c9grb1nc087iq6r2jwyi3lmlsphkf8pj-imgproxy-3.10.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A imgproxy https://github.com/r-ryantm/nixpkgs/archive/dad48c7d47248a06e1e953589b1d661e8dfe73eb.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/c9grb1nc087iq6r2jwyi3lmlsphkf8pj-imgproxy-3.10.0
ls -la /nix/store/c9grb1nc087iq6r2jwyi3lmlsphkf8pj-imgproxy-3.10.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

imgproxy

Maintainer pings
cc @paluh for testing.

Result of nixpkgs-review pr 199734 run on x86_64-darwin 1

1 package failed to build:

imgproxy

error: builder for '/nix/store/dnwh3ixr8z6h9d8q7i32y951kcfn02cb-imgproxy-3.10.0-go-modules.drv' failed with exit code 1;
       last 10 log lines:
       >     github.com/fsouza/fake-gcs-server/fakestorage<EMAIL_ADDRESS>Get<EMAIL_ADDRESS>x509: OSStatus -26276
       > github.com/imgproxy/imgproxy/v3/transport/s3 tested by
       >       github.com/imgproxy/imgproxy/v3/transport/s3.test imports
       >      github.com/johannesboyne/gofakes3<EMAIL_ADDRESS>Get<EMAIL_ADDRESS>x509: OSStatus -26276
       > github.com/imgproxy/imgproxy/v3/transport/s3 tested by
       >     github.com/imgproxy/imgproxy/v3/transport/s3.test imports
       >      github.com/johannesboyne/gofakes3/backend/s3mem<EMAIL_ADDRESS>Get<EMAIL_ADDRESS>x509: OSStatus -26276
       > github.com/imgproxy/imgproxy/v3/transport/swift tested by
       >    github.com/imgproxy/imgproxy/v3/transport/swift.test imports
       >   github.com/ncw/swift/v2/swifttest<EMAIL_ADDRESS>Get<EMAIL_ADDRESS>x509: OSStatus -26276
       For full logs, run 'nix log /nix/store/dnwh3ixr8z6h9d8q7i32y951kcfn02cb-imgproxy-3.10.0-go-modules.drv'.
error: 1 dependencies of derivation '/nix/store/a98hjz4w29w2q106l5kwwk3rbdackwr2-imgproxy-3.10.0.drv' failed to build

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/imgproxy/imgproxy/releases.
meta.description for imgproxy is: "Fast and secure on-the-fly image processing server written in Go"
meta.homepage for imgproxy is: "https://imgproxy.net"
meta.changelog for imgproxy is: ""
Updates performed

Golang update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 3.11.0 with grep in /nix/store/zzkpaybsll6v89s883jg9i14r99nji75-imgproxy-3.11.0
found 3.11.0 in filename of file in /nix/store/zzkpaybsll6v89s883jg9i14r99nji75-imgproxy-3.11.0

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
imgproxy

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/zzkpaybsll6v89s883jg9i14r99nji75-imgproxy-3.11.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A imgproxy https://github.com/r-ryantm/nixpkgs/archive/26e4d73def37b321caa1d9b61ca951abcecbc573.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/zzkpaybsll6v89s883jg9i14r99nji75-imgproxy-3.11.0
ls -la /nix/store/zzkpaybsll6v89s883jg9i14r99nji75-imgproxy-3.11.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

imgproxy

Maintainer pings
cc @paluh for testing.

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/imgproxy/imgproxy/releases.
meta.description for imgproxy is: Fast and secure on-the-fly image processing server written in Go
meta.homepage for imgproxy is: https://imgproxy.net
Updates performed

Golang update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 3.13.0 with grep in /nix/store/4ypzpaqp13bs82cgv42rx7hxs4788q7j-imgproxy-3.13.0
found 3.13.0 in filename of file in /nix/store/4ypzpaqp13bs82cgv42rx7hxs4788q7j-imgproxy-3.13.0

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
imgproxy

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/4ypzpaqp13bs82cgv42rx7hxs4788q7j-imgproxy-3.13.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A imgproxy https://github.com/r-ryantm/nixpkgs/archive/f05c0b78da07e82920eba77a44f78cc572379eff.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/4ypzpaqp13bs82cgv42rx7hxs4788q7j-imgproxy-3.13.0
ls -la /nix/store/4ypzpaqp13bs82cgv42rx7hxs4788q7j-imgproxy-3.13.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

imgproxy

Maintainer pings
cc @paluh for testing.


[Task] Client Active Offline

Description
Currently, shenyu only supports passive offline, during which the front-end will have a clear perception (i.e. response 408), indicating that it is better to support active offline.
The idea is roughly:

The client utilizes the mechanism provided by ShenyuClientShutdownHook to call the offline interface of shenyu admin;
In the offline interface of shenyu admin, we update the database and send events;

Task List
todo

hello， when this will be ok？

hello， when this will be ok？

At least 2.6.0.

After discuss, we think the spring cloud active offline is not needed.

I would like to take on this job.

please asign  ConsulClientRegisterRepository active offline and   NacosClientRegisterRepository active offline to me.

please asign  ApolloClientRegisterRepository active offline to me.

see https://github.com/apache/shenyu/issues/5324

https://github.com/apache/shenyu/issues/5324


STM32F7 devices failed to program at low-voltages.

The "parallelism" bits get set correctly but there wasn't an F7 low-voltage algo available.
So it ends up trying to perform a 32-bits flash programming with PSIZE fields set to 0x00.
I have a fix for it if. If interested I can submit a pull request.

Hi @zulusw, thats a pitty. Indeed when flash is in low power mode it needs a different algo. With stlink2 and stlink2-1 we are able to detect the voltage and select a different algo. Feel free to submit a PR.

Ref PR #567


Add Spanish intl to the 404 Not Found Page

Feature Request
Is your feature request related to a problem? Please describe.
404 Not Found page is only set up for English intl.
Describe the solution you'd like
Add Spanish intl (translation) to the es-US.json file for the 404 Not Found Page

Great!  I have assigned you to this issue.


rand_pwd does not adhere to Oracle DB password requirements

I've been using the OracleSOASuite docker buildout to generate some containers, but I have had numerous occasions where the password it generates doesn't conform to Oracle's DB password requirements.  I get this error somewhat regularly:

A valid password must be specified. Password should be alpha numeric only and can contain the following special characters: $, # , _ .Password should not start with a number or a special character.
ERROR - RCU-6091 Component validation failed.
CAUSE - RCU-6091 One or more component specific validation failed.
ACTION - RCU-6091 Check log for more details and fix the validation error.

https://github.com/oracle/docker-images/blob/fd77c82807429e9c0ec20ee9d1eed22269f43404/OracleSOASuite/dockerfiles/<IP_ADDRESS>/container-scripts/createDomainAndStart.sh#L36-L48
I've taken the function out and called it ~10 times, and this is the output:
INFO: Password does not Match the criteria, re-generating...
INFO: hR95KNQQ
INFO: 1KROmBDi
INFO: NIIEFf5B
INFO: ico1bHaQ
INFO: cQhuFNr4
INFO: Password does not Match the criteria, re-generating...
INFO: Password does not Match the criteria, re-generating...
INFO: 6VmsdXJg
INFO: aJbRhUL7
INFO: ZHDg02rm
INFO: wiqAU65A
INFO: Password does not Match the criteria, re-generating...
INFO: 5kPNu0Hc

I forgot to mention, but it says that it shouldn't start with a number, yet it appears to generate that at least 3 times in my simple test.

Fixed in PR : https://github.com/oracle/docker-images/pull/1317
Closing the issue.


App is not working

Hi Dominik!
TodoMVC app is not working. JavaScript version crashes during startup and CoffeeScript version is missing ./meteor/packages.

Thanks for reporting this. We've been moving really quick with a major development push, and didn't have any tests for this particular example to stop regression. We'd already have this fixed, but are both in limited mode this weekend. Will get it sorted ASAP

@darko-mijic This has been fixed. We're working on a testing API that will be implemented here as it evolves to cover the objects like Space.flux.Store, so keep watching this repo if that peaks your interest. Thanks again, hope you like what you see with Space

Hey @darko-mijic. Any chance you'd be up for a chat in our Gitter room?

Hey @rhyslbw. I have joined the room.


fixes for PR #51 add/subtract methods from @victorhahncastell

Hi,
this is the continuation of Pull-request #51 all the work is from @victorhahncastell. I don't want to take any credits. Just like to push integration into upstream gem, so I've forked his commits and integrated the desired changes. Unit tests are passing with minitest.
I was not sure about the parens for all the assert_equal methods, for consistency reasons I don't think it makes sense to add parens only for the new test-methods of this PR. Let me know if you want the parens, then I'll add them. Can also add them for all other existing testmethods if you want me to.

@lumean: Thanks for your commit. I think we all need this feature.

Do you have any updates regarding this PR?


[JOSS] Statement of Need - differences from existing software

In the manuscript, the authors state that there exist software packages that can detect behavior in both supervised and unsupervised manners. The authors then go onto state that what distinguishes their software package is supervised and unsupervised pipelines. Can the authors further clarify the differences here? Is it the second part the sentence that is the distinguishing factor? Are the supervised and unsupervised models different? It might be nice to have more than one sentence clarifying these differences.
xref: https://github.com/openjournals/joss-reviews/issues/5394

Dear @edeno,
I have modified the text to further clarify the additions to the state of the art, and added the figure requested in the other issue to the manuscript, as I felt it could help with the description of the workflow here too.
Best, and let me know what you think!
Lucas


[Fixes #537] Use full paths for startup window/pane

The startup_window and startup_pane options were not behaving correctly for users running tmuxinator from within an existing tmux session.  Tmuxinator would generate commands like tmux select-window -t 1, which would target the current session instead of the target (project) session. This bug is fixed by specifying full paths (session:window.pane) for the startup_window and startup_pane.

@rglassett thx for the reminder. Merged


License statistics

We don't save anything at the moment, but we could have something more detailed than the base game with e.g. data for each character/vehicle/course and playtime.

Later I'll update my statistic document to add licence ones too since right now we only have online stats listed.


Moiré patterns occur at certain zoom levels

It's a bit hard to tell by the image but the sky in the image has a dot like pattern that is quite obvious on a real device:

This can be solved by using Config.ARGB_8888 instead of Config.RGB_565.
I totally understand why 565 is default but it would be nice if you could choose which one that is used without having to create a whole new custom decoder.

It can also be fixed by disabling dithering.

This suggests the original image may have come from a scan, I've never seen a moiré pattern on an ordinary photo. I can understand why RGB_565 might cause this but I've never seen it.
I'm not keen to provide an option to use ARGB_8888 because this will cause a lot of crashes for many people. Also the custom decoder work made it much more difficult to generically provide options like this, but perhaps there's a way to do it. I'll have a look.

Every single photo I've loaded shows this behaviour (I'm using a Nexus 5).

Please could you attach that image so I can test with it? My phone has a pentile screen and I think that makes it a bit harder to see the pattern.

I've disabled dithering. It doesn't seem to affect quality much and fixes the problem. Would you be happy with that?
I can add support for custom decoding options if required, but it's a breaking change for anyone who's implemented a custom decoder. There are other breaking changes in v3.0.0 released yesterday so now would be as good a time as any to do it, I'm just wary of allowing ARGB_8888 because I know it will cause a lot of crashes.

Released in v3.1.0.

Works like a charm, thanks!


UI views are not loaded starting at the top

When clicking in one of the Latest Activity, the new view does not start at the top of it.
It happens in general for the whole website each time a new view is loaded.
This issue generates a bad UX forcing the user to scroll up every time a new view is loaded.

Thank you for bringing the issue to our attention.
We have made the required adjustments to ensure that every time a new view is loaded, it starts at the top as expected.
We appreciate your patience and understanding throughout this process. Your valuable feedback plays a crucial role in helping us identify and address such issues promptly, ensuring a better experience for all users.
Should you encounter any further concerns or have any additional feedback, please don't hesitate to reach out to us. We are here to assist you.
Thank you for your continued support.
Best regards,
Mridul
Polkassembly


Update LICENSE

What problem does this PR solve?
What is changed and how it works?
Check List
Tests

Unit test
Integration test
Manual test (add detailed scripts or steps below)
No code

Code changes

Has exported function/method change
Has exported variable/fields change
Has interface methods change
Has persistent data change

Side effects

Possible performance regression
Increased code complexity
Breaking backward compatibility

Related changes

Need to cherry-pick to the release branch
Need to update the documentation
Need to update the tidb-ansible repository
Need to be included in the release note

recheck

I have read the CLA Document and I hereby sign the CLA

recheck-cla

recheck-cla

recheck-cla

recheck-cla

recheck


Switch State in Lua

What is your question?
Is it possible to switch states in Lua? If there is, or there isn't, let me know and I will close the issue if the owner of the repo didn't close it yet.

Not at the moment, the only things you can do is restartSong(), exitSong() and endSong()


Software Template not loading in UI (issue on parameter-schema) ResponseError: Request failed with 403 NotAllowedError

Expected Behavior
After I click on the "CHOOSE" button of a software template, it should fetch the template parameter schema and render the result in the UI view.
Actual Behavior
https://development_domain/create?filters%5Bkind%5D=template&filters%5Buser%5D=all can see all templates.
After click on the "CHOOSE" button of any of the templates, it shows "Failed to load template, ResponseError: Request failed with 403 NotAllowedError".
Steps to Reproduce

Upgraded backstage v 1.4 to Step 1.7 and stop working.

 Sorry to hear that you're having problems.
It sounds like some of the arguments for permissions or token manager is not passed properly to the backend plugin. I would really double check that the wiring, perhaps comparing it to a new app or using the example app to see that all of the required services are created.

Here is packages/backend/src/index.ts file which looks good to me.
import Router from 'express-promise-router';
import {
createServiceBuilder,
loadBackendConfig,
getRootLogger,
useHotMemoize,
notFoundHandler,
CacheManager,
DatabaseManager,
SingleHostDiscovery,
UrlReaders,
ServerTokenManager,
} from '@backstage/backend-common';
import { TaskScheduler } from '@backstage/backend-tasks';
import { Config } from '@backstage/config';
import app from './plugins/app';
import auth from './plugins/auth';
import catalog from './plugins/catalog';
import scaffolder from './plugins/scaffolder';
import proxy from './plugins/proxy';
import techdocs from './plugins/techdocs';
import search from './plugins/search';
import apibackend from './plugins/api-backend';
import { PluginEnvironment } from './types';
import { ServerPermissionClient } from '@backstage/plugin-permission-node';
import { DefaultIdentityClient } from '@backstage/plugin-auth-node';
function makeCreateEnv(config: Config) {
const root = getRootLogger();
const reader = UrlReaders.default({ logger: root, config });
const discovery = SingleHostDiscovery.fromConfig(config);
const tokenManager = ServerTokenManager.fromConfig(config, { logger: root });
const permissions = ServerPermissionClient.fromConfig(config, {
discovery,
tokenManager,
});
const cacheManager = CacheManager.fromConfig(config);
const databaseManager = DatabaseManager.fromConfig(config, { logger: root });
const taskScheduler = TaskScheduler.fromConfig(config);
const identity = DefaultIdentityClient.create({
discovery,
});
root.info(Created UrlReader ${reader});
return (plugin: string): PluginEnvironment => {
const logger = root.child({ type: 'plugin', plugin });
const database = databaseManager.forPlugin(plugin);
const cache = cacheManager.forPlugin(plugin);
const scheduler = taskScheduler.forPlugin(plugin);
return {
logger,
database,
cache,
config,
reader,
discovery,
tokenManager,
scheduler,
permissions,
identity,
};
};
}
async function main() {
const config = await loadBackendConfig({
argv: process.argv,
logger: getRootLogger(),
});
const createEnv = makeCreateEnv(config);
const catalogEnv = useHotMemoize(module, () => createEnv('catalog'));
const scaffolderEnv = useHotMemoize(module, () => createEnv('scaffolder'));
const authEnv = useHotMemoize(module, () => createEnv('auth'));
const proxyEnv = useHotMemoize(module, () => createEnv('proxy'));
const techdocsEnv = useHotMemoize(module, () => createEnv('techdocs'));
const searchEnv = useHotMemoize(module, () => createEnv('search'));
const appEnv = useHotMemoize(module, () => createEnv('app'));
const apiEnv = useHotMemoize(module, () => createEnv('apibackend'));
const apiRouter = Router();
apiRouter.use('/catalog', await catalog(catalogEnv));
apiRouter.use('/scaffolder', await scaffolder(scaffolderEnv, config));
apiRouter.use('/auth', await auth(authEnv));
apiRouter.use('/techdocs', await techdocs(techdocsEnv));
apiRouter.use('/proxy', await proxy(proxyEnv));
apiRouter.use('/search', await search(searchEnv));
apiRouter.use('/api', await apibackend(apiEnv));
// Add backends ABOVE this line; this 404 handler is the catch-all fallback
apiRouter.use(notFoundHandler());
const service = createServiceBuilder(module)
.loadConfig(config)
.addRouter('/api', apiRouter)
.addRouter('', await app(appEnv));
await service.start().catch(err => {
console.log(err);
process.exit(1);
});
}
module.hot?.accept();
main().catch(error => {
console.error('Backend failed to start up', error);
process.exit(1);
});

Could you pls suggest any solutions to fix this issue?

Hey :wave: is it only this page that fails? do you get 403 errors around the project on other pages? Do you have permissions turned on? Or do you maybe have the auth-middleware enabled somewhere? Sorry for the dump of messages, just trying to cover a few bases.

All pages are loading correctly except template. None of the template is loading.
We do have auth setting to open this app. However rest other permissions are default settings of backstage.

Looks like 'jose.jwtVerify' method of @backstage - 'plugin-auth-node'  failing and throwing exception.
const decoded = await jose.jwtVerify(token, this.keyStore, {
algorithms: this.algorithms,
audience: "backstage",
issuer: this.issuer
});

We have encountered this issue also after upgrading to v1.6.0 and adding plugin-auth-node.
One of our team members noticed that the server is looking for the cookie _oauth2_proxy but the cookies available are _oauth2_proxy_0 and _oauth2_proxy_1 because we are using split cookies.
We removed plugin-auth-node for now to get around the issue.

Yes, I removed "plugin-auth-node" form the code and it fixed the issue. I believe this fix will be available in next backstage upgrade.

@kumarnil @sqsp-rwatkins wondering if you found a fix for this aside from removing the plugin-with-node package?