Merged field in github.PullRequest produced by client.PullRequests.List(owner, repo, opt) is not filled in correctly

i get a []*github.PullRequest slice through invoking  client.PullRequests.List(owner, repo, opt). but i found a strange thing. all PullRequests in this slice have field Merged with nil value , have field MergedAt with nil or non nil value based on the actual situation.
i think  field Merged should have a non nil value when MergedAt does.
commit 466070b0580728e63bd1a415e0019639e55d7148

I think this is because there are less fields populated when you list pull requests. Try getting a single pull request, and I expect Merged will be populated then.
That's just what the GitHub API returns. Compare sample output of https://developer.github.com/v3/pulls/#list-pull-requests with https://developer.github.com/v3/pulls/#get-a-single-pull-request. The former contains "merged_at" field but not "merged". The latter contains both.

commit 466070b0580728e63bd1a415e0019639e55d7148

What about it? Is it related to your question?

What about it? Is it related to your question?
this is the commit number of  go-github version i am using.

i don't understand why dont fill in merged  but merged_at. there is no performance penalty when filling in merged field. should we report this bug or situation to github API ?

this is the commit number of  go-github version i am using.

Ah, got it, thanks.

i don't understand why dont fill in merged  but merged_at. there is no performance penalty when filling in merged field. should we report this bug or situation to github API ?

But there is. Imagine you get a list of 100 pull requests, then another 100, then another 100. The decision to leave some fields out when listing makes a bigger impact then.
Is merged the only field that's missing when listing pull requests? Or are there many others missing too?
If it's the only one, it's probably a bug. If there are many missin, I suspect it's as intended.
You can contact github support if you'd like to confirm.

Closing issue for lack of activity/interest. Feel free to reopen.

I notice the same issue with the MergeableState field. When I list pull requests with client.PullRequests.List, that value is always nil. It seems this is intentional as there are multiple values missing. Just commenting for future folks.

MergedAt is nil for me too. I understand the performance issue, and I know others do it too, but my two cents are if it is always to be nil, what is the point in having it at all?

MergedAt is nil for me too. I understand the performance issue, and I know others do it too, but my two cents are if it is always to be nil, what is the point in having it at all?

The request above is to have someone volunteer to contact GitHub v3 API tech support and ask them to clarify if it is always nil.  If so, we can remove it.
Feel free to volunteer to do this, @svyotov and report back to this issue. Once we get a response, we can take further action if it makes sense.
Thanks!


Support Railway

Railway has what looks like a good free trial policy, with no cc required until choosing a paid plan. It does require a GitHub account in order to sign up, but doesn't require a GH repo as an intermediate deployment step. It does have a CLI.

See tweet 5/25 that inspired this attempt.

Tasks:

[x] Make a new support_railway branch.
[ ] Push the sample blog project to Railway without dsd.
[ ] Create a deploy_railway.py file in utils/.
[ ] Add railway as an optional target in simple_deploy.py.
[ ] Add a confirmation that this is in "proof of concept" phase.
[ ] Adapt one of the deploy_xx.py scripts to target railway:

[ ] Configuration step ___.

Push to Railway without dsd - through project creation

Making an account

email, verify

docs
Dashboard > agree TOS
Install CLI: curl -fsSL https://railway.app/install.sh | sh
railway login

Error logging in to CLI. Please try again; note nix railway login
CLI output: No dice? Try railway login --browserless
Gives an authentication link, with a pairing code
CLI login successful
railway init
Prompts for empty project or template, empty is default.
Asks for project name -> blog.
Opens browser tab with blog project showing.

Push without dsd -cont

Modify project for deployment

Add gunicorn, psycopg2, dj-database-url, whitenoise
Add Procfile
Add runtime.txt

Commit changes
railway up?

Laying tracks in the clouds... lstat Library: no such file or directory

cont

Joining discord server

Why do you need permission to know what servers I'm in, and join servers for me?

Connecting GitHub account

Why do you need to "know which resources you can access"? "Act on your behalf?"

Trying to push after rw cli #224 fixed, and I can't create a project with railway init:

railway init

There was a problem creating the project. -> But, the project appears on my RW web dashboard.
railway list -> 'Project not found'
railway login -> Error logging in to CLI. Please try again.
log out through cli, log in, error, log out dashboard, log in cli, browser login form, login, email confirm, logs in dashboard but cli hangs.
[ ] File an issue. Maybe my account is in a weird space because of creating numerous projects on free account, but really non-specific error messages, and half-completed tasks that I requested; ie projects in dashboard but errors in cli. Click on project, 404.

Resuming work 9/2/22

I'd like to add Railway support now that Platform.sh development has slowed due to their 2 project per day limitation, and Heroku is about to change.
Logging into my dashboard, I still see 4 ghost projects that I created months ago and then destroyed. Clicking on any of these projects shows a 404.


Enhancement: LineChart & MiniHistogram - Invert colors for light/dark mode

Description
inverts the colors on the LineChart and MiniHistogram depending on the color theme. So dark looks same as it did before but on light mode the colors are inverted. This means on both color modes the higher the contrast the higher the value being represented.
Line Chart
Dark

Light

Light (before)

Mini Histogram
This is hard to make screenshots for with the demo because the random data makes comparing difficult. Viewing the preview on this PR and switching between light and dark will show the different well.

Just experimenting in the browser, in light mode, the gradient to what appears to be prefect-500 still seems too intense to me? I tried stepping the value down and it seemed like 300 was the right happy medium.

As light as 200 even looks nice, although the affect may be getting too subtle to exist, idk:

Really wish github had comment threads.. An opacity of 0.2 was about the same as changing the color value there. I'll DM you if I fiddle with this anymore though.

@brandonreid I updated it to prefect.300 on light mode 👍


Add null check of pixels

NullReferenceException has occurrad in the following point.
Assets/Scripts/Scanner/Scanner.cs 197
if (Status != ScannerStatus.Running || pixels.Length == 00 || Camera.Width == 0)

pixels might be null at this point.
For this reason there is a possibility that NullReferenceException occurs.
I tried to put null check in the ThreadDecodeQR() method.
environment
Unity 5.4.1f1
Android Nexus7
Minimum API Level Android 4.4
Following is using code
using UnityEngine;
using System.Collections;
using ZXing;
using BarcodeScanner;
using BarcodeScanner.Scanner;
using BarcodeScanner.Webcam;

public class ReadBarcode : MonoBehaviour
{
	private IScanner barcodeScanner;
	public UnityEngine.UI.Text text;
	public UnityEngine.UI.RawImage image;

	void Start()
	{
		// Create a basic scanner
		this.barcodeScanner = new Scanner();

		// Start playing the camera
		this.barcodeScanner.Camera.Play();

		// Rotation camera direction

		// When for the camera to be ready
		this.barcodeScanner.OnReady += (sender, arg) => {

			// Bind the Camera texture to any RawImage in your scene
			this.image.transform.localEulerAngles = new Vector3(0f, 0f, this.barcodeScanner.Camera.GetRotation());
			this.image.texture = this.barcodeScanner.Camera.Texture;

			// Start Scanning
			this.barcodeScanner.Scan((barCodeType, barCodeValue) => {
				// This callback is call when something is scanned
				this.barcodeScanner.Camera.Stop();
				this.text.text = "Found: " + barCodeType + " / " + barCodeValue;
				Debug.Log("Found: " + barCodeType + " / " + barCodeValue);
			});
		};

	}

	void Update()
	{

		if (this.barcodeScanner == null)
		{
			return;
		}
		// The barcode scanner has to be updated manually
		this.barcodeScanner.Update();
	}
}

Good catch


Transfers not retried on 'unexpected EOF'

Which version of the AzCopy was used?
10.1.2
Which platform are you using? (ex: Windows, Mac, Linux)
Mac
What command did you run?
azcopy cp --recursive https://myaccount.blob.core.windows.net/mycontainer ./
What problem was encountered?
There were a few dozen failed transfers out of a few thousand that were not retried. They all failed with "unexpected EOF".
How can we reproduce the problem in the simplest way?
I am not aware of an easy way to reproduce this.
Have you found a mitigation/solution?
We can get the missing files with azcopy sync.
It looks like azcopy only considers net.Error to be retryable. It would be nice if io.ErrUnexpectedEOF was retryable.

Hi, @juve. AzCopy failing to transfer to a relative directory destination is a currently known issue and is solved in PR #422. We're currently working on getting it into our next release.

@adreed-msft I don't actually know if the destination in our case was relative or not. Most of the transfers were successful, so it wasn't a complete failure. The error was 'unexpected EOF' in the log, which doesn't seem related to the relative path issue.

Oh? Interesting. I'll take a look here in a bit.

@adreed-msft Any update on this?  Is it logged in our backlog for investigation?

BTW, I've been corresponding, via MSFT internal channels, with staff supporting a customer where this has happened.  Seems to be something in the network path (e.g. a proxy) truncating something.  Still in dialogue to try to figure out what is being truncated (there are two or there possibilities).

The only thing I found in the other support case was that it was almost certainly caused by a proxy server.
@juve Are you still seeing this error with more recent versions of AzCopy?

I am getting this error with
azcopy version 10.3.2
2019/11/22 02:16:27 INFO: [P#11-T#5479] Error reading body of reply. Next try (if any) will be Try=2. Will NOT retry. Error: unexpected EOF.
azcopy version 10.3.2

We've recently found that there's a bug, in which AzCopy should retry the operation, but for this specific type of failure, it does not.  I don't have a release date for any fix yet, but if you choose "watch" on this page https://github.com/Azure/azure-storage-azcopy/releases you'll be notified of all releases.

Had to move this out of release 10.3.3. and into 10.4.0, because the necessary change is bigger than expected, including changes to the blob and Azure Files SDKs in addition to AzCopy itself.

Has this issue been resolved? I don't see it documented @ https://github.com/Azure/azure-storage-azcopy/releases
I am trying to copy big file (100GB) from Azure blob storage account to VM in Azure. There is a proxy in between. Copy starts but then it errors out after some time (always less then 20% completed). In log I can see following:
**2020/07/01 06:50:43 INFO: [P#0-T#0] Error reading body of reply. Next try (if any) will be Try=2. Will NOT retry. Error: unexpected EOF. Offset:<PHONE_NUMBER>4  Count: 2408448 URL: https:// 06:50:43 INFO: [P#0-T#0] Error reading body of reply. Next try (if any) will be Try=2. Will NOT retry. Error: context canceled. Offset:<PHONE_NUMBER>6  Count: 3145728 URL: https:// 06:50:43 ERR: [P#0-T#0] DOWNLOADFAILED: https:// : 000 : unexpected EOF. When Enqueuing chunk. X-Ms-Request-Id:
Dst: %5C%5C?\E:\temp<file name>**
Command I am executing:
azcopy copy https:// e:\temp
Azcopy version is azcopy_windows_amd64_10.4.3

Has this issue been resolved? I don't see it documented @ https://github.com/Azure/azure-storage-azcopy/releases
I am trying to copy big file (100GB) from Azure blob storage account to VM in Azure. There is a proxy in between. Copy starts but then it errors out after some time (always less then 20% completed). In log I can see following:
**2020/07/01 06:50:43 INFO: [P#0-T#0] Error reading body of reply. Next try (if any) will be Try=2. Will NOT retry. Error: unexpected EOF. Offset:<PHONE_NUMBER>4 Count: 2408448 URL: https:// 06:50:43 INFO: [P#0-T#0] Error reading body of reply. Next try (if any) will be Try=2. Will NOT retry. Error: context canceled. Offset:<PHONE_NUMBER>6 Count: 3145728 URL: https:// 06:50:43 ERR: [P#0-T#0] DOWNLOADFAILED: https:// : 000 : unexpected EOF. When Enqueuing chunk. X-Ms-Request-Id:
Dst: %5C%5C?\E:\temp**
Command I am executing:
azcopy copy https:// e:\temp
Azcopy version is azcopy_windows_amd64_10.4.3

hello sjuratov, did you solve the problem? I encountered the same problem.
I cannot download more than 20% for large files. Installed Storage explorer latest version 1.14.0 problem not solved.
Best regards

No, this is still an issue.
@adreed-msft , @JohnRusk can you comment on plans for this issue to be resolved? I see it's been pushed for 10.5.0. Is this target still valid?

Hi @sjuratov @AtillaTv8, this issue was fixed in #859, and will be released shortly in 10.5.

Hi @sjuratov @AtillaTv8, this issue was fixed in #859, and will be released shortly in 10.5.

Hi @zezha-msft
Thank you for the information.


fix: treat attachments as binary by default

This PR updates the handling of attachments on events.
Resolves: https://github.com/mrniko/netty-socketio/issues/706
Context:
When encountaring binary data, the client sets a number of placeholders in the first package and then sends the actual data in the packets following it without additional info prepended.
although they state here that
each Socket.IO packet is wrapped in a Engine.IO message packet, so they will be prefixed by the character "4" when sent over the wire.
it does not seem to apply to attachements, as seen in this example:
      socket.send(
        '452-["message",{"_placeholder":true,"num":0},{"_placeholder":true,"num":1}]'
      );
      socket.send(Uint8Array.from([1, 2, 3]));
      socket.send(Uint8Array.from([4, 5, 6]));

      const packets = await waitForPackets(socket, 3);

Thanks for contribution!


Paste warning inconsistencies

Windows Terminal version
1.13.10984.0
Windows build number
10.0.2200.652
Other Software
bash (inside WSL)
Steps to reproduce
copy large text data and paste into terminal
Expected Behavior
consistent paste warning message
Actual Behavior
bash paste:

pwsh paste:

I got the feeling that this is because Bash activates bracketed paste.


Unable to determine if Ollama can be run on GPU after running Linux commands

Hello, I have a question. If I use the command curl - fsSL https://ollama.com/install.sh |Can Ollama run on GPU after installing the Nvidia driver and cuda toolkit in SH?

Our documentation for GPU support is located here - https://github.com/ollama/ollama/blob/main/docs/gpu.md
Once installed, you can use ollama ps to see if the models have loaded into your GPU or are running on CPU.  More details can be found in the server log and we will log if we fail to discover GPUs or find GPUs that aren't compatible.  In the future we may add more informational commands to show you what GPUs we discovered and if we discovered any that aren't compatible.


Suggests generally do not work

from @tucotuco

you can't find the one you're looking for in the pop-up menu, which is a general serious issue not just for county

@tucotuco it would be useful if you spelled out the list of broken suggests (is it all? 2? 10? which?) ideally with some examples.
I'm aware that it is an issue for GADM suggest, but wasn't aware that it was a general problem.
Thank you for your help

I have added a broader, yet detailed https://github.com/gbif/hosted-portals/issues/136 covering text searches. Will that suffice?

Thanks. Yes that is much more useful - I might move it to another repo as it is not a ui issue as such, but more likely to have a better solution in the backend. That said the improvement could be a combination. But except the experiment with adding wildcard search for identifiedBy (which was added as a test for a demo), then it all applies to gbif.org as well, so I might move it there.


Expand expandables when printing

Expand expandables when printing so that users get the entire page's content.
See https://github.local/CFPB/el-camino/issues/299
Changes

Hide the netlify CMS floating buttons when printing because why not. They block the page text.
Hide the Show/Hide buttons when printing because they're irrelevant (and if we left them, it'd incorrectly say Show above expandables that are now open when printed)
Sets a large max-height when printing because we display the raw URLs next to links which causes the expandable's content height to be greater than the non-print height, causing this bug:

Testing

Visit the PR preview link below and view a print preview of the expandables page. They should all be expanded.

Screenshots

Notes

Todos

Checklist

[ ] PR has an informative and human-readable title
[ ] Changes are limited to a single goal (no scope creep)
[ ] Code can be automatically merged (no conflicts)
[ ] Code follows the standards laid out in the CFPB development guidelines
[ ] Passes all existing automated tests
[ ] Any change in functionality is tested
[ ] New functions are documented (with a description, list of inputs, and expected output)
[ ] Placeholder code is flagged / future todos are captured in comments
[ ] Visually tested in supported browsers and devices (see checklist below :point_down:)
[ ] Project documentation has been updated
[ ] Reviewers requested with the Reviewers tool :arrow_right:

Testing checklist
Browsers

[ ] Chrome on desktop
[ ] Firefox
[ ] Safari on macOS
[ ] Edge
[ ] Internet Explorer 9, 10, and 11
[ ] Safari on iOS
[ ] Chrome on Android

Accessibility

[ ] Keyboard friendly
[ ] Screen reader friendly

Other

[ ] Is useable without CSS
[ ] Is useable without JS
[ ] Flexible from small to large screens
[ ] No linting errors or warnings
[ ] JavaScript tests are passing

Would hiding the "Show Details" link on print be in scope here?

Would hiding the "Show Details" link on print be in scope here?

Normally no but I threw it in because without it, it displays the wrong verb in the printed content (Show when it's already shown due to new print CSS rule):

That's not a huge deal though and I'm happy to remove it if it's overreaching.


Update api-management-faq.md

The info of How do I add a user to the Administrators group is outdated. Update it to align with the latest behavior of APIM.

@chunliu : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@mikebudzynski please review.

@chunliu Thanks for the contribution! #sign-off


English page video

Fix embedding code

Fixed in https://github.com/SriSathyaSaiVidyaVahini/SSSVV-landing/commit/82263539d66da3f05cdebdd3454c3aebac76b8e8


Window build exe opening the chrome window

Hi,
Thanks for creating this tool. Love to work.
After I build the windows EXE when I open it for the first time it is working fine. Without closing the window when I open second-time multiple windows appear and only one window contains actual data the other screens are blank.
After I close all the window, every time i click on EXE it is opening in chrome instead of an inbuilt window and it is showing "Chrome is controlled by automated software"

when you close the app, is windows kills it's process or stay working in the background?

Yes, It seems like that.  Do i want to check any specific process in background

can you provide your chrome version and after closing the the app can you confirm that chrome not working in the background

I have updated the chrome and restarted the machine

The result is the same

I mean in the process manager when you close the app is the chrome process stays in the background or not.
also can you try to change the engine in from chrome to webview

Hi. got the same problem. there were no chrome processes before starting the application

if you change the id in the guark.yaml, then the first launch does not create an extra window


ImportError: cannot import name 'polylabel' from 'shapely.ops'

Expected behavior and actual behavior.
polylabel is expected to be in shapely.ops but it's not included in __all__ list:
https://github.com/Toblerity/Shapely/blob/60be3f8b19506efa62a713f68707ad4e9c48beac/shapely/ops.py#L21
Steps to reproduce the problem.

python3 -m pip install shapely
from shapely.ops import polylabel

Operating system
Debian 10
Shapely version and provenance
shapely-1.6.4.post2

polylabel isn't available in Shapely 1.6. You'll need to install the pre-release 1.7 (pip install --pre shapely) or from Git.

Sorry, I am mistaken. It is available in 1.6 but you need to import it differently:
from shapely.algorithms.polylabel import polylabel

It's available from shapely.ops in 1.7


Warning fixes

Based on #142, this removes the #![allow(warnings)] (which AIU is a remnant of how early hacspec required writing code that the linter would be unhappy about), and applies a lot of small refactoring fixes that would probably just have been caught at write time / when they were earlier refactored into the current state.

Now ready to review (although best reviewed after #142); one warning is left (edhoc.rs line 432 about the kid never being assigned), but I suppose that's best addressed together with adding actual flexibility w/rt the peer's chosen credentials.


Switching scene : Directional arrow following the mouse movement stops moving

V10 Foundry, everything up to date. Using The Forge platform to host games and Chrome.
Issue :  when loading the game and starting manipulating tokens on the first scene I loaded, everything is working as intended. As soon as I switch to another scene, Alternative Rotation stops working as intended : the directional arrow you can move with the shortcut + mouse doesn't move anymore.
Hitting several times Alternative Rotation Shortcut (kept default shortcut : R) will makes directional arrow and token facing switching directions but not in a smooth way ("directional jumps").
Tried deactivating all modules except that one. Issue still here
Tried it on another test game (even with a different game system) with nothing in it except 2 scenes and tokens, and Alternative Rotation being the only active module. Same behavior.

F5 and everything works fine on the first scene I load. Rince and repeat.
Note : everything was fine before one of the last version of Foundry (don't know witch one). I use this module since a long time.
Thx for any help :)

This appears to be due to canvas.stage no longer being preserved across scene changes, so the mouse move listener needs to be  reapplied after a scene transition.


Migrate to filament v3

Thanks for your PR. I refactored it a little bit and updated the docs. Can you check whether this works for you?


Fixed typos in Turkish. Added "screenshot_error"

Fixed "Maksimim", "Kontrolör", "Akılama" typos.
Changed "Yüzüstü" to "Sürün" which is more accurate.
Added "screenshot_error".
Decapitalized few words.

Thank you! Merging now.


osde2e: initial commit

Boilerplate: Update to d3612328c972f49103b8fd1be49cd8b0a387c980
osde2e: initial commit

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@f7a9c0c). Click here to learn what that means.
The diff coverage is 0.00%.

Additional details and impacted files

@@           Coverage Diff           @@
##             main     #102   +/-   ##
=======================================
  Coverage        ?   50.00%
=======================================
  Files           ?       10
  Lines           ?      446
  Branches        ?        0
=======================================
  Hits            ?      223
  Misses          ?      213
  Partials        ?       10

Impacted Files
Coverage Δ

main.go
7.40% <0.00%> (ø)

SDCICD-1021

/lgtm

/lgtm
/approve


Proration configs added to update subscription

This PR adds two new prorate related  configs ( invoice_immediately  and disable_prorations
) to update subscription.
you can find them here https://docs.lemonsqueezy.com/api/subscriptions#update-a-subscription.

Would love to have invoice_immediately as a parameter

Any updates on this PR? Just created a PR #30 with same updates and just found out this one.


Add Linux/Windows support

Raw Thoughts

Static or dynamic link? - dynamic probably better
Fat bundle (arm & x64? in one .a/.lib?) - not sure if this is even possible on non-apple platforms.

target_link_libraries(${PLUGIN_NAME} PRIVATE flutter flutter_wrapper_plugin)
https://stackoverflow.com/questions/8153519/how-to-automatically-download-c-dependencies-in-a-cross-platform-way-cmake
https://cmake.org/cmake/help/v2.8.8/cmake.html#module:ExternalProject
https://cmake.org/cmake/help/v2.8.8/cmake.html#command:file
https://stackoverflow.com/questions/55589827/why-use-a-package-manager-with-cmake
Get the so to include with:
https://stackoverflow.com/questions/11944060/how-to-detect-target-architecture-using-cmake
https://docs.conan.io/en/latest/howtos/cmake_launch.html
maybe we can check to see if flutter has a platform/architecture CMAKE variable https://stackoverflow.com/questions/9298278/cmake-print-out-all-accessible-variables-in-a-script

Collected thoughts
I think there are a couple of solid options here, in order of what I think is best to worst:

Look at all CMake variables and see if there is one that refers to the target architecture (given perhaps by Flutter). If so, download the target .so or .dll at compile time with CMake and we're done!
Use the current Dart ABI and then download the proper .so/.dll at runtime (via dynamic loading provided by Dart's DynamicLibrary--appears as so it uses uses dlopen and dlsym behind the scenes).
Try to guess the target architecture and then download the according .so/.dll at compile time with that. However, this option feels more like a hack.

Looks like Flutter includes a FLUTTER_TARGET_PLATFORM variable in CMake. We should be able to download the proper .so/.dll and bundle it!


feat: c-lib errors

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
Attention: Patch coverage is 0% with 135 lines in your changes missing coverage. Please review.

Project coverage is 21.47%. Comparing base (4a734a4) to head (9f9c5d4).
Report is 5 commits behind head on develop.

Files with missing lines
Patch %
Lines

lib/proof/libs/polygonidcore/pidcore_proof.dart
0.00%
37 Missing :warning:

.../identity/libs/polygonidcore/pidcore_identity.dart
0.00%
28 Missing :warning:

...ommon/libs/polygonidcore/native_polygonidcore.dart
0.00%
21 Missing :warning:

lib/common/libs/polygonidcore/pidcore_base.dart
0.00%
19 Missing :warning:

...dential/libs/polygonidcore/pidcore_credential.dart
0.00%
19 Missing :warning:

...den3comm/libs/polygonidcore/pidcore_iden3comm.dart
0.00%
9 Missing :warning:

...ial/data/data_sources/cache_claim_data_source.dart
0.00%
1 Missing :warning:

...ta_sources/lib_pidcore_credential_data_source.dart
0.00%
1 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@             Coverage Diff             @@
##           develop     #451      +/-   ##
===========================================
+ Coverage    21.25%   21.47%   +0.21%
===========================================
  Files          295      293       -2
  Lines         9093     8988     -105
===========================================
- Hits          1933     1930       -3
+ Misses        7160     7058     -102

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


[Gally]: master <- dev

Automatically created by Git-Ally

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Update _missing_translations_es_ES.json with missing Spanish translations

This pull request addresses missing Spanish translations in the _missing_translations_es_ES.json file. The following changes have been made:
Please review the changes and merge if they are correct. If you have any questions or concerns, feel free to leave a comment.

Thanks!


local.climate.TuyaLocalClimate Bug HA 2024.3

Hello,
After updating HomeAssistant, this warning appeared
Registratore: homeassistant.components.climate
Fonte: components/climate/init.py:361
integration: Climatizzatore (documentazione, problemi)
Prima occorrenza: 22:30:01 (1 occorrenze)
Ultima registrazione: 22:30:01
Entity None (<class 'custom_components.tuya_local.climate.TuyaLocalClimate'>) implements HVACMode(s): off, heat and therefore implicitly supports the turn_on/turn_off methods without setting the proper ClimateEntityFeature. Please create a bug report at https://github.com/make-all/tuya-local/issues

Duplicate of #1597 which was fixed in tuya-local 2024.3.1, you must still be on an older version.

I have 2024.3.1 version

Which device is this for? There are some devices that do not support TURN_OFF and TURN_ON, but the underlying climate implementation in tuya-local needs to implement those functions for the devices that do support them.
The way HA has chosen to spam the logs with instructions to file bugs reports against integrations is a bit rude really.

I'm sorry, I didn't mean to disturb. I thought it would be useful write this bug, my device is a Klarstein Bornholm Smart heater

I'm not sure which config that would be, but both Klarstein heater configs look like they should result in TURN_OFF and TURN_ON being explicitly supported.
Maybe the device diagnostics can show what the problem is (Settings/Devices&Services/Tuya local [...Devices]/[your device]/Download Diagnostics)

I'm also still seeing this warning logged with HA 2024.4.4 and integration v2024.3.2
2024-04-26 10:42:17.215 WARNING (MainThread) [homeassistant.components.climate] Entity None (<class 'custom_components.tuya_local.climate.TuyaLocalClimate'>) implements HVACMode(s): off, heat_cool, cool, heat and therefore implicitly supports the turn_on/turn_off methods without setting the proper ClimateEntityFeature. Please create a bug report at https://github.com/make-all/tuya-local/issues
I have a Madimack Elite V3 Pool heat pump.
Device diagnostics attached. Please let me know if you need anything else to further investigate.
config_entry-tuya_local-d034ef92878d07fe82ac2895d3fca661.json

Nothing further is needed. The message is a false message which the HA devs have indicated they have no intention of fixing, so an ugly workaround has been installed which will be in the next release of this integration.


Missing sub-resolvers on regenetating

I've implemented the new way of using the lint-friendly small resolvers from #134
So I have a ResolverRoot with all the small resolvers.
package graph

type MyResolver struct{}

func (r *MyResolver) Query() QueryResolver {
    return new(myQueryResolver)
}

...

And everything compiles and runs as expected.
Expected Behaviour
I've expected that when I need to update the schema and than re-generate the code with gqlgen.
Actual Behavior
The QueryResolver interface is declared in generated.go, but on re-running the gqlgen it is no longer there and it fails on that the interfaces are not declared.
/home/micro/Workspace/src/myproject/graph/graph.go:125:28: undeclared name: QueryResolver
/home/micro/Workspace/src/myproject/graph/graph.go:133:31: undeclared name: MutationResolver

This happens because there's a circular dependency chain.

Your implementation depends on the generated interfaces
the generated code depends on something in that package (models perhaps?)

Simplest answer is to split them into separate packages:
models/models_gen.go
graph/resolvers.go
graph/generated/generates.go

Its a common enough issue though, I wonder if it's worth doing a initial pass to generate empty interface versions of the resolvers to break the loop.

Thanks, I figured it out. Now the models_gen.go and generated.go are in separate packages. Other than the implementation of the interfaces.


feat: docker argos file manager

Related Tickets & US

cs-57

Description
dockerization of argos file manager

Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?

Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] I have checked my code and corrected any misspellings

This change is

@sebastian-barra-jalafund I'm merging the PR since no issues were found related to core functionality but I suggest you to change those lines I notice into theses files.


CMake Warning in GinkgoConfig.cmake on Windows

CMake Warning (dev) at D:/My_Programs/Ginkgo/lib/cmake/Ginkgo/GinkgoConfig.cmake:90:
  Syntax Warning in cmake code at column 53

  Argument not separated from preceding token by whitespace.

It's following line:
set(GINKGO_CUDA_HOST_COMPILER C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/VC/Tools/MSVC/14.34.31933//bin/Hostx64/x64/cl.exe)
Seems like the path needs to be in quotes due to its whitespaces

Thanks for the report, we were missing some quotes.


update attribute used in delete_collection_item docstring

update attribute used in delete_collection_item docstring

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.


Adding sample for non interactive oauth2 client credentials flow component

Description
This is the corresponding sample application for the oauth2 client credential middleware component. It will guide the user through the creation of an Azure Active Directory application with application permissions on Microsoft Graph.
The demo app itself will call Microsoft Graph with the injected token from the middleware.
Checklist
Please make sure you've completed the relevant tasks for this PR, out of the following list:

[X] The sample code compiles correctly
[X] You've tested new builds of the sample if you changed sample code
[X] You've updated the sample's README if necessary

@orizohar moved the sample PR here and renamed quickstart -> sample.
CC @yaron2

@pruthvidhodda @yaron2 @amanbha - can you please do a code review?

Also, can you please add as part of this PR an entry in the TOC of the main samples README? Here: https://github.com/dapr/samples#samples-in-this-repository

@h2floh - Thank you for your contribution!


How to use React Markdown editor with None React app

Hi All,
I  have a none react app that I would like to embed react-markdown editor. Could you please tell me how can I do that?

react-markdown isn't an editor, it just renders markdown to react components.


Protobuf File

Thanks for this simplified version :)
Is-it possible to get a "saved model" version of the pretrained model with the Protobuf file inside, in order to be able to load it in other languages than Python?
Thanks!

Sorry for the late reply... I don't know how I missed this...
Unfortunately I am not so familiar with this protobuf file that you describe, so I don't think I have immediate plan to work on this... Hope it wouldn't be too hard for you to work on it, since everything is simplified and open-sourced :)


target:"es5" should respect the quoting of property identifiers

TypeScript Version:  3.3333
Search Terms: Object.defineProperties, Object.defineProperty, getter, setter, es5, quoted
Code
class Foo {
    get bar(): number {
        return 1;
    }
}

Expected behavior:
Given: compilerOptions.target === 'es5'
var Foo = /** @class */ (function () {
    function Foo() {
    }
    Object.defineProperties(Foo.prototype, {
        bar: { //property `bar` is unquoted
            get: function () {
                return 1;
            },
            enumerable: true,
            configurable: true
        }
    });
    return Foo;
}());

Actual behavior:
var Foo = /** @class */ (function () {
    function Foo() {
    }
    Object.defineProperty(Foo.prototype, "bar", { //property `bar` is quoted
        get: function () {
            return 1;
        },
        enumerable: true,
        configurable: true
    });
    return Foo;
}());

If the property identifier is quoted,
class Foo {
    get 'bar'(): number {
        return 1;
    }
}

then either the current behavior:
var Foo = /** @class */ (function () {
    function Foo() {
    }
    Object.defineProperty(Foo.prototype, 'bar', {
        get: function () {
            return 1;
        },
        enumerable: true,
        configurable: true
    });
    return Foo;
}());

or
var Foo = /** @class */ (function () {
    function Foo() {
    }
    Object.defineProperties(Foo.prototype, {
        'bar': { //property `bar` is quoted
            get: function () {
                return 1;
            },
            enumerable: true,
            configurable: true
        }
    });
    return Foo;
}());

would work.
Rationale
Property names specified as string literals are syntactically different to property names specified as unquoted identifiers. This distinction is lost during es5 transpilation and that loss can have meaningful consequences on how the resulting code is interpreted.
Example use case:
Closure Compiler's property renaming treats string references foo['bar'] and dot-syntax references foo.bar differently. The lack of control over quoted / unquoted property names during the ts -> es5 transpilation increases the difficulty of passing the es5 output through Closure Compiler without further code transformations, Closure Compiler externs, or other workarounds.
Playground Link: http://www.typescriptlang.org/play/index.html#src=class Foo {
    get bar()%3A number {
        return 1%3B
    }
}

class FooQuoted {
    get 'bar'()%3A number {
        return 1%3B
    }
}

They are syntactically different, but not semantically different except to the Closure Compiler. If you're looking to link the two up, have you looked at https://github.com/angular/tsickle?

Consistently emitting the same JS code for the same semantic input is a feature, not a bug.
Closure has a lot of rules that rely on subtle clues and we're generally not going to spend our complexity budget to transfer inferred user intent into Closure's interpretive worldview.


How to prevent slide on specific elements or area?

I'm trying to move the slider without move the card, how i can prevent Interactable.View sliding?

not quite sure as I havent faced your issue yet.
my my instant reply would be set a ref for your Intractable.View, then onValueChange of your slider, just do this.intractableViewRef. dragEnabled = {false}, then onSlidingComplete turn it back to true

I've tried this, but not works fine.

Using Native Slider component, this issue not occur, but if using a pure javascript slider component like react-native-slider, not works as expected.


Feature/#3219 metrics

Audit [?]

Metrics
Score
URL

Accessibility

https://deploy-preview-3--reverent-yonath-1e281c.netlify.com/

Accessibility

https://dev-covid19-tokyo.netlify.com/

Best Practices

https://deploy-preview-3--reverent-yonath-1e281c.netlify.com/

Best Practices

https://dev-covid19-tokyo.netlify.com/

Performance

https://deploy-preview-3--reverent-yonath-1e281c.netlify.com/

Performance

https://dev-covid19-tokyo.netlify.com/

Progressive Web App

https://deploy-preview-3--reverent-yonath-1e281c.netlify.com/

Progressive Web App

https://dev-covid19-tokyo.netlify.com/

SEO

https://deploy-preview-3--reverent-yonath-1e281c.netlify.com/

SEO

https://dev-covid19-tokyo.netlify.com/

Audit [?]
SAMPLE


Add option to exclude certain files from sourcemap.

Bug Report or Feature Request (mark with an x)
- [ ] bug report -> please search issues before submitting
- [x] feature request

Area
- [x] devkit
- [ ] schematics

Versions

Repro steps

The log given by the failure

Desired functionality

I have projects where enabling sourcemaps slows down the ng build operation by a factor of 10. It would be useful to add an option to exclude certain files from source maps generation, or, even better, being able to specify only the files you want to use to generate source map.
This will allow us to specify which file we want to debug without slowing a lot the compilation time.
Mention any other details that might be useful

Hello there,
are there any news on that feature? For better debugging experience I set sourcemap vendor to true. It works, but I get a lot warnings for missing source files.
Is there a way to only set the desired packages to be included in the sourcemaps? Or is it possible to suppress these warnings?
Best regards

This is as well relevant for any Angular workspace containing multiple projects.
Libraries in the workspace fall under the vendor setting as well, so either we take all external source maps and our own libraries, or none at all which kinda is suboptimal.
For this issue the bare minimum would be to at least split "libs" and vendor setting for source maps.

I'm also interested in this feature.
It is really annoying to have a completly messed up console due to dependencies that don't have source maps for all files.

As @klemenoslaj mentioned, there needs to be a way to include our local libraries without including all vendor source maps.  We have recently switched to a MonoRepo pattern using angular libraries, and debugging was a nightmare.  For debugging to be possible I had to use a custom builder called "@angular-builders/custom-webpack:browser" so I could modify the webpack configuration.
My webpack.config.js file looks like this:
module.exports = config => {
  // Fix for bad source map paths.  I logged bug (https://github.com/angular/angular-cli/issues/19043) and they said is
  // was fixed in Angular 11
  config.context = __dirname;

  // Exclude all vendor source maps except our own.
  // Hopefully they will fix this soon:  https://github.com/angular/angular-cli/issues/11305
  const rule = config.module.rules.find(x => typeof x.loader === 'string' && x.loader.includes('source-map-loader'));
  if (rule) {
    rule.exclude = [
      /(ngfactory|ngstyle)\.js$/, // <== this was already there
      /node_modules\\(?!@sensor)/ // <= exclude everything in node_modules except our stuff
    ];
  }

  // Return config
  return config;
};

We discussed this in our tooling triage meeting. Sourcemaps can definitely take a long time to process and we agree that the current behavior of vendor: false is unintuitive, as most users would expect libraries in a monorepo to apply sourcemaps.
We'll update vendor: false to retain monorepo library sourcemaps but drop all others. This is more intuitive behavior and more in line with what the user probably expected.
Regarding the performance issue, specifying vendor: false with this new behavior is probably enough to get builds to a good place without sacrificing too much in the debugging experience. There may be some edge cases such as very large monorepositories; these can eject to a custom Webpack config if they absolutely need to. We can also revisit adding more fine-grained control of sourcemap generation in the future if this vendor: false tweak is not sufficient for many users.
For now, we'll start with updating vendor: false to keep libraries in a monorepo, and that flag can be used to improve sourcemap performance by dropping all other modules.


[#1927] fix(dashboard): The introduction of serverType causes all NPE except GET requests.

What changes were proposed in this pull request?

Modify NPE bugs;
Modify the Vue3's CompositionAPI.
Handling the request failed.
Optimize page display.

Why are the changes needed?
Fix: #1954
Does this PR introduce any user-facing change?
Yes.
How was this patch tested?
UT.

@jerqi @xianjingfeng @rickyma @kuszz @maobaolong PATL

@yl09099 Why the color of each button are different between coordinator page and server node page

@yl09099 Why the color of each button are different between coordinator page and server node page

OK,Let me change the color.

@yl09099 Why the color of each button are different between coordinator page and server node page

Modified, color consistent.

Merged to master. Thanks for your contribution. @yl09099 Thanks for your reviews. @maobaolong @jerqi


Display error messages or instructions on the iteration's modal

Display error messages or instructions on the iteration's modal.
If there is a current sprint and I try to start another sprint - display relevant instructions. The backend returns the message - One iteration from given space is already running, we can display the same message.

Please word it like this: "There is already a current iteration for . You must close the current iteration before starting this one."


Flush cache if SEOmatic settings are saved

Since SEOmatic affects the front-end, it would be good to automatically flush the FastCGI cache when SEOmatic's settings are changed. This could be an option, but I can't see when you wouldn't want this to happen when SEOmatic is updated.

Yeah I need to add a generic event that can be triggered.


Issue more templates

Description

Template drafted for documentation
Consists of attributes for describing the issue, link to affected page, Issue type, Recommendation
Code of conduct is also added, can keep or remove them subjected to approval

Check List (Check all the applicable boxes)

[x] I understand that my contributions needs to pass the checks.
[x] If I created new functions / methods, I documented them and add type hints.
[ ] If I modified already existing code, I updated the documentation accordingly.
[x] The title of my pull request is a short description of the requested changes.

Screenshots

Note to reviewers
Template for Question/Help/Support is put on hold until further clarification.
Questions :

Should we redirect them to a support page or design a template like the other issues ?
If questions based template is to be used, what is the plan to revert back to the user ?

Closes #42

Thank you for your work @harisaisundhar! You mention a code a conduct, but I see none: is it normal?

Uh no! I am not aware if we have a document in place. Can remove it otherwise. Also do let me know about the Question/Help/Support, are we planning on raising an issue for that too ?

@harisaisundhar You can delete the code of conduct section for now, it will be added later if needed :)
You can create a separate PR for the Question/Help/Support template and link to the same issue #42

Sure!

Made the changes. Looks like build is failing from a different issue.

Don’t worry about pre commit, that’s not a problem :)
thanks for you work! Merging this soon!


Make it possible for ays cli to pass jwt

Also add helper method to create jwt
Signed-off-by: Jo De Boeck<EMAIL_ADDRESS>

+1 for docs. Otherwise LGTM


chunked entry loading and traversal

This issue is being created to track exploration of chunked entry loading and traversal. This is mentioned in Road to 1.0 as a part of sections Async Iterators / Streaming and Hot/Cold Data Separation (in-memory vs. on-disk data).
With all OrbitDB databases, updates are added as entries to a log. Currently all of the entries to the log live in memory the whole time the database is open. While this might be preferred in some cases, it may be terribly inefficient in others.
We need to find a way to do this while still maintaining speed of the operations that require it.

What is entry loading and traversal?

In this context, entry loading refers to loading entries into memory, and traversal is reading the log in its complete order.
The goal is to do this in chunks, meaning loading and traversing sections of the log at a time.
With all the entries in memory traversing the log is pretty simple and fast. You start from the latest entries, which reference the latest entries before them, and travel reading down the log as needed. There is no need to check for verified signatures, access control or how to handle missing entries as they've already been loaded as part of the log.
When entries are loaded and traversed in chunks these issues need to be managed well for traversal to remain efficient. I'm confident this is possible; and with optimizations to index calculation, specifically recalculation could become snappier in most cases.

On to possible solutions for chunked traversal, we should start with the most basic solution.
We track the log heads, tails, and missing entries' CIDs; stored as mutable values somewhere.
When loading an entry from CID it is checked for:

log membership marker
valid signature
valid entry interface

If any check does not pass the entry is discarded.
The entry is then checked for log access, and discarded if it does not pass.
The entry is now loaded and considered part of the log, ready to be read by traversal.
When traversing entries, we start from the entries' CID in the heads, load and sort them. Repeat with next layer of predecessors from next field only, and continue this way until we can find no more predecessor entries. We never attempt to load entry CID existing in the missing set, this is so we don't get stuck during traversal by trying to load a remote entry.
(There is a specified total order for traversal which isn't important here, the causal links are what matters for this)
This solution could be fine in practice but may not be sufficient in some situations, or may have flaws I haven't considered. It may be possible to efficiently track whether a signature has been validated already, CID edge sets, or the entire entry set. Luckily this does not affect the protocol at all, so people could upgrade as we find better ways to do this without affecting their databases.

Do I understand this correctly:
Instead of loading the entire log into memory, it is loaded in chunks.
But what is the benefit of this if in the end and for updateIndex you still have to provide a full index in order to be successful? In the end the only benefit I can see, is that you'd only have to hold a few chunks of the oplog in memory at once - with the rest remaining on disk.
Or do you propose to change the Index interface too? Maybe using functions that don't expect the whole index but only single entries to be applied as they are received and checked as you described above?
Another thought I'd like to enter here again, because I discussed this already once on Matrix, is the idea of Lazy Indexes - in essence these indexes only parse the oplog once data has been requested through one of the get methods. You might be able to extend this notion to include not just parsing but also fetching from memory.
Why should a node need to keep an entry in memory that it has no need to use. And once an entry has been parsed once, they could be stored in "hot" memory for faster later lookups.
Admittedly this idea is not yet a full proposal and would perhaps require rewriting the API for Stores & Indexes, turning their getters into async functions, but it might be worth it for larger databases.
Third, and lastly, I'd like to ask if it is really advisable to try and optimize for larger OrbitDB Databases? If you were in the standard SQL or NoSQL DB world, this might make sense, but in OrbitDB a single database more or less corresponds to a single row in a SQL Table or document in a NoSQL DB rather than a full DB in these worlds.
Maybe OrbitDB should be more focused on making this design pattern, as already employed in the Field Manual Tutorial, obvious and optimize for that instead of for large dbs?

Or do you propose to change the Index interface too? Maybe using functions that don't expect the whole index but only single entries...

yes the interface will need to be changed to an async iterative one most likely

the idea of Lazy Indexes - in essence these indexes only parse the oplog once data has been requested through one of the get methods...

I believe this is suggested in 1.0 as well and yes would require turning read methods async.

Third, and lastly, I'd like to ask if it is really advisable to try and optimize for larger OrbitDB Databases? If you were in the standard SQL or NoSQL DB world, this would make sense, but in OrbitDB a single database more or less corresponds to a single row in a SQL Table or document in a NoSQL DB rather than a full DB in these paradigms.
Maybe OrbitDB should be more focused on making this design pattern, as already employed in the Field Manual Tutorial, obvious and optimize for that instead of for large DBs? Maybe by encouraging the storage of classes and other objects with finite fields in DBs, similar to ORMs?

I like this point. Partitioning databases seems like it could be useful for a lot of cases. I'd love to see more tools that make this easier. Keeping entries in memory only temporarily doesn't just optimize for larger databases.
I'm sure you are familiar with the community chat complaints we used to get of memory hogging, especially on memory limited cloud instances; although i dont think its all orbitdb land this is one area that we could improve that metric.
I think it's also important to keep the option to have all entries stay in memory.

On the point of the new Interface.
Based on your elaboration above I think this would look a little like this:
class Index {
  constructor() {
    this._index = {}
  }

  updateIndex(oplog) {
    this._index = {}
    for await (const entry of oplog.values) {
      this._index[entry.payload.key] = entry.payload.value
    }
  }
}

Hello, I am interested in this issue and I am trying to follow the current development.
My understanding is that lazy loading would require changes to the ipfs-log class for oplog entries are stored into memory.
It seems to me that there is some work in progress here: https://github.com/orbitdb/ipfs-log/pull/301
Am I correct about the necessity of tweaking the ipfs-log and this issue being relevant?


Fixed broken link

Fixed a broken Hyper link:
This https://github.com/jan-molak/serenity-js/tree/master/spec/serenity-protractor/screenplay/interactions
gets a 404.

Thanks!


Add Alipay and  Wechat Pay as a payment gateway

Alipay payment
https://open.alipay.com/
WeChat Pay
https://pay.weixin.qq.com/wiki/doc/apiv3/index.shtml

+1


Add tinyhttp + react example

Resolve #109
I don't used react-ssr and tried to create an example similar to the other ones present in the repository. Let me know if you need something different :)

Codecov Report

Merging #120 into master will increase coverage by 0.43%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #120      +/-   ##
==========================================
+ Coverage   62.37%   62.80%   +0.43%
==========================================
  Files          44       44
  Lines        1616     1616
  Branches      417      417
==========================================
+ Hits         1008     1015       +7
+ Misses        606      599       -7
  Partials        2        2

Impacted Files
Coverage Δ

packages/cookie/src/index.ts
100.00% <0.00%> (+10.76%)
:arrow_up:

Continue to review full report at Codecov.

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

Looks very nice! Even with client rehydration, amazing
merging!

@all-contributors add @setheal for example


Caveat of peg-in for pruned nodes

Hi Impalor,
it would be good to point out in your readme that owners of pruned node have to modify the procedure of getting the raw tx of sending btc to the elements btc address during the pegging-in.
bitcoin-cli  getrawtransaction  only working for bitcoin full nodes with txindex=1 enabled.
For pruned nodes you get the raw tx by using mempool.space entering , then clicking on transaction hex (see snapshot)

Thanks for pointing this out. I think there are generally many such problems with pruned nodes. I don't run them. Feel free to make a pull request.


Hessian tests fail with DI

This should work:
using DifferentiationInterface, DifferentiationInterfaceTest
import ForwardDiff, SparseConnectivityTracer

coloring_algorithm = DifferentiationInterface.GreedyColoringAlgorithm()
sparsity_detector = SparseConnectivityTracer.TracerSparsityDetector()

backend = AutoSparse(AutoForwardDiff(); sparsity_detector, coloring_algorithm)

test_differentiation(backend, sparse_scenarios(); sparsity=true, logging=true)

It works when you use Symbolics instead:
import Symbolics
sparsity_detector = DifferentiationInterface.SymbolicsSparsityDetector()

MWE:
import ADTypes, SparseConnectivityTracer, Symbolics

sd1 = SparseConnectivityTracer.TracerSparsityDetector()
sd2 = DifferentiationInterface.SymbolicsSparsityDetector()

sumdiffcube(x) = sum(diff(x) .^ 3)
ADTypes.hessian_sparsity(sumdiffcube, rand(10), sd1)  # wrong, single diagonal
ADTypes.hessian_sparsity(sumdiffcube, rand(10), sd2)  # right, tridiagonal


Use explicit classes when calling super()

In python3, we can just say super().__init__(). For python2
compatibility, we need to provide two parameters to super:
the inheriting class, and the bound object.
In 2655428, we introduced calls to super specifying self.__class__
for the first parameter. This is a problem (at least in python3) because
that results in the inheriting class itself used for binding. Thus when
we call __init__, it is not the super's __init__ that is called.
This change-set fixes that problem by explicitly specifying the first
parameter of super calls. This works in both python3 and python2.

Whoops, I got that super() call from Stack Overflow and didn't read carefully enough that it was Python 2.x only. Nice!

I personally dislike the idea of inheriting init and the nuances involved.  It doesn't look clean and is hard to read.  I have written websocket in a way that allows for overwriting of the init variables in on_open(). It would remove the need to worry about 2/3 compatability as well, even if it's not the most proper way to handle this.

@danpaquin __init__ calling super is standard boilerplate python. If it looks unclean and hard to read to you, that only means you're unfamiliar with python. And that's okay – I'm grateful that this library exists, so thank you! But I recommend learning more about python before saying that class inheritance shouldn't have __init__ call super.

I was offering my two cents.  I understand it's the most common way to inherit init, but Python is notorious for being flexible enough to avoid boilerplate if desired.
Either way, this notation will suffice.
I'll be willing to push changes the community is in support of.

Thanks, @danpaquin, I appreciate it! I am certainly open to learning better ways of doing things, but this PR doesn't seem like it should be overly contentious.

Using super is ok with me. For things like this, I defer to what popular Python libraries do (e.g. requests) and super seems like the way to go.

Also not against using super. I'm in the same boat as @acontry; I usually look to the big libraries and take from them.
The very popular Python Reddit API Wrapper also follows this pattern.


Localstack success?

I'd consider this more of a general question to the more experienced Zappa users out there.  Has anyone had success deploying to a localstack environment?
If so, I would love to see how you managed to make it work.  Zappa seems configured to work but from what I can tell, localstack is not sufficiently built out yet to make it work.
Thanks.

Any updates on this? I have the same problem!

Hi any updates on this?, does anyone have any examples? been trying to deploy to localstack as well

Have you tried using aws_endpoint_urls and it didn't work for you?

Hi, Yes i've been using aws_endpoint_urls but keep running into "Security Token is incorrect"
My zappa settings are as follows:
{    "local": {       	"app_function": "run.app",       	"aws_region": "ap-southeast-1",       	"s3_bucket": "[redacted]",       	"aws_endpoint_urls": { 		"s3": "[redacted]", 		"apigateway": "[redacted]", 		"lambda": "[redacted]", 		"iam": "[redacted]", 		"sns": "[redacted]", 		"cloudformation": "[redacted]", 		"cloudwatch": "[redacted]" 	}, 	"environment_variables": { 		"AWS_ACCESS_KEY_ID": "foo", 		"AWS_SECRET_ACCESS_KEY": "bar" 	},       	"aws_environment_variables": { 		"PYNAMODB_CONFIG": "pynamodb_config.py", 		"DYNAMO_DB_HOST": "[redacted]", 		"REDIS_URL": "[redacted]", 		"REDIS_MARKET_MONITOR_URL": "[redacted]" 	}    } }
I've read a bit and it seems like the error is thrown when you end up accessing aws itself instead of localstack, could it be that I have a missing service?


Add e2e tests and a Jest example

This adds an end-to-end test to ensure everything is configured correctly, and that the Jest reporter is extracting and transforming the correct data from the Jest data structures themselves.
It also includes a fully tested example, and a fix of the package version parsing which went unnoticed in #12.
Cavaets
This uses the debug output and testing of STDOUT to verify everything is working. It doesn't test the HTTP post or handling of various request failure scenarios. I figured this was a good first step for local e2e testing, and adds a tested example to boot, but testing the http calls and exception handling should be added later in a unit test of jest/reporter with an axios mock.
Notes
This uses an npm workspace to ensure all the npm deps are installed at the top level for tests, including the example. This means for development and ci you can use npm install && npm test and things just work. It'll be interesting to see how this scales with lots of examples for different collectors (it could be fine).

This is really cool, thanks for adding this :)


Please provide a release for BRAT

What is a BRAT? 👀

https://obsidian.md/plugins?id=obsidian42-brat


Propose: Add --persist-replace argument if there is existing table

Originally we have --persist argument to persist the pandas dataframe to the target database connection.
However, if the user runs the same persist command two times it will show the error message
Take example, run this cell twice:
plot_data = pd.DataFrame({"x": range(0, 5), "y": range(5, 10)})
%sql --persist plot_data

It will produce:
ValueError: Table 'plot_data' already exists.
If you need help solving this issue, send us a message: https://ploomber.io/community

Which is expected, but I think what we could do better is the providing --persist-replace argument to do the replace-if-exists action to the table, since user might re-run the whole jupyter file several times, by using this new argument can prevent such error happens in the middle of execution

@idomic @edublancas What do you guys think?

since user might re-run the whole jupyter file several times, by using this new argument can prevent such error happens in the middle of execution

yeah, makes sense. it's common to re-run notebooks. I'm ok adding it.
although we should not prioritize this, so let's just keep the issue open and tackle it later


Automator: update<EMAIL_ADDRESS>in<EMAIL_ADDRESS>

Generated by Automator - 2022-02-21T17:35:20+00:00

/retest

@istio-testing: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-operator-controller_istio_release-1.12
b45952045294e31d544917c18fdbc011653ded7a
link
unknown
/test integ-operator-controller_istio_release-1.12

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


The Edit button in other localizations looks larger than the adjacent + and - buttons

The Edit button in Preferences in the Connection section in other localizations (for example, Russian) looks larger than the adjacent + and - buttons.

Screenshot (ru)

Screenshot (en)

One solution would be to make the buttons stretch so they all have the same size. However then the buttons might feel too large.
I'm open for suggestions on solving this cleanly

It seems to me that, as a temporary solution, it is worth stretching them so that they are all the same size. Since it looks bad now.

Maybe you can just put the three button on the same line, so you will have two small buttons with "+" and "-" the edit button between the two of them stretching to the good size to match the word.
Or you can replace "+" and "-" with the word "Add" and "Remove" with the ability to translate it, so the button will not look as bad.


Add ability to chunk CSV in either row or file

Looking to address the issue in https://github.com/andreibondarev/langchainrb/issues/549

@WToa Thank you for the PR!


Ambigous Error in Swift 1.2

在 Swift 1.2中下面两个方法的签名是等价的:
   public func responseSwiftyJSON(completionHandler: (NSURLRequest, NSHTTPURLResponse?, JSON, NSError?) -> Void) -> Self
// VS
    public func responseSwiftyJSON(queue: dispatch_queue_t? = nil, options: NSJSONReadingOptions = .AllowFragments, completionHandler: (NSURLRequest, NSHTTPURLResponse?, JSON, NSError?) -> Void) -> Self

I have the same problem @banxi1988 , You found a solution?

I changed the name of the second function to: responseSwiftyJSONWithQueue and it is working now.
It seems that Swift 1.2 no longer support the same functions names (and return types) with diffrerent parameters types.
Check this out: https://developer.apple.com/swift/blog/?id=20
(Section: Redefinition or Overload?)

Closing for inactive.


auth option causes Segmentation fault

Describe the bug
When define --auth with default etc/nanomq_auth_username.conf Segmentation fault happens
Expected behavior
Run nanomq
Actual Behavior
Segmentation fault
To Reproduce
root@mqtt-test:~# docker run --rm -it -e NANOMQ_CONF_PATH=/etc/nanomq/nanomq.conf -v /docker/nanomq/etc:/etc/nanomq --name nanomq --entrypoint /bin/sh emqx/nanomq:0.10.8-alpine
/usr/local/nanomq # ./nanomq start --auth /etc/nanomq/nanomq_auth_username.conf
Segmentation fault (core dumped)

Environment Details

NanoMQ version: dockerized emqx/nanomq:0.10.8-alpine
Operating system and version Ubuntu 20.04.4 LTS
Compiler and language used: NA
testing scenario: NA

Thank you for reporting issue! But I fail to reproduce this bug here.
Could you please share your 'nanomq_auth_username.conf' file? Because this is highly possible caused by unexpected file content.

Hi @JaylinYu , that's interesting I use the default one(s) from the repo:
root@mqtt-test:~# cat /docker/nanomq/etc/nanomq.conf
## NanoMQ Configuration 0.10.5

## MQTT Broker Config Params

## url
## Connect with the host and port
##
## Value: nmq-tcp://host:port
url=nmq-tcp://<IP_ADDRESS>:1883

## daemon
## Run the NanoMQ broker in a daemon mode
##
## Value: true | false
daemon=false

## num_taskq_thread
## Use a specified number of taskq threads
##
## Value: 1-255
num_taskq_thread=4

## max_taskq_thread
## Use a specified maximunm number of taskq threads
##
## Value: 1-255
max_taskq_thread=4

## parallel
## Handle a specified maximum number of outstanding requests
##
## Value: 1-infinity
parallel=32

## Property_size
## The max size for a MQTT user property
##
## Value: 1-infinity
property_size=32

## The max packet size of NanoMQ (Kbytes)
## Defines the max size of a packet that NanoMQ could accept
##
## Value: 1 Byte-260 Mb
max_packet_size=1024

## The default max packet size of each client (Kbytes)
## Defines the default max size limit of sending packet to each client
## Will be overwrite if client set its own max size limit
##
## Value: 1 Byte-260 Mb
client_max_packet_size=1024

## msq_len
## The queue length in-flight window
## This is essential for performance and memory consumption
##
## Value: 1-infinity
msq_len=256

## qos_duration
## The nano qos duration which also controls timer interval of each pipe
##
## Value: 1-infinity
qos_duration=60

## The backoff for MQTT keepalive timeout.
## broker will discolse client when there is no activity for
## 'Keepalive * backoff * timeout.
##
## Value: Float > 0.5
keepalive_backoff=1250

## anonymous
## allow anonymous login
##
## Value: true | false
allow_anonymous=true

## SQLite Config ##

## Enable sqlite cache
## Whether to enable sqlite
##
## Value: boolean
sqlite.enable=false

## Max message limitation for caching
## ( 0 means ineffective )
## Value: 1-infinity
sqlite.disk_cache_size=102400

## Mounted file path
##
## Value: path
#sqlite.mounted_file_path=/tmp/

## The threshold of flushing messages to flash.
##
## Value: 1-infinity
sqlite.flush_mem_threshold=100

## Resend interval (ms)
## The interval for resending the messages after failure recovered. (not related to trigger)
##
## Value: 1-infinity
sqlite.resend_interval=5000

## tls config ##

## enable tls
##
## Value: true | false
tls.enable=false

## tls url
##
## Value: "tls+nmq-tcp://host:port"
tls.url=tls+nmq-tcp://<IP_ADDRESS>:8883

## tls key password
## String containing the user's password. Only used if the private keyfile
## is password-protected.
##
## Value: String
## tls.key_password=yourpass

## tls keyfile
## Path to the file containing the user's private PEM-encoded key.
##
## Value: File
tls.keyfile=/etc/certs/key.pem

## tls cert file
## Path to a file containing the user certificate.
##
## Value: File
tls.certfile=/etc/certs/cert.pem

## tls ca cert file
## Path to the file containing PEM-encoded CA certificates. The CA certificates
## are used during server authentication and when building the client certificate chain.
##
## Value: File
tls.cacertfile=/etc/certs/cacert.pem

## A server only does x509-path validation in mode verify_peer,
## as it then sends a certificate request to the client (this
## message is not sent if the verify option is verify_none).
## You can then also want to specify option fail_if_no_peer_cert.
##
## Value: true: verify_peer | false: verify_none
tls.verify_peer=false

## Used together with {verify, verify_peer} by an SSL server. If set to true,
## the server fails if the client does not have a certificate to send, that is,
## sends an empty certificate.
##
## Value: true | false
tls.fail_if_no_peer_cert=false

## websocket config ##

## allow websocket
##
## Value: true | false
websocket.enable=true

## websocket url
##
## Value: "nmq-ws://host:port/path"
websocket.url=nmq-ws://<IP_ADDRESS>:8083/mqtt

## websocket tls url
##
## Value: "nmq-wss://host:port/path"
websocket.tls_url=nmq-wss://<IP_ADDRESS>:8084/mqtt

## http server config ##

## allow http server
##
## Value: true | false
http_server.enable=false

## http server port
##
## Value: 0 - 65535
http_server.port=8081

## parallel for http server
## Handle a specified maximum number of outstanding requests
##
## Value: 1-infinity
http_server.parallel=32

## http server username
##
## Value: String
http_server.username=admin

## http server password
##
## Value: String
http_server.password=public

## http server auth type
## If set auth_type=jwt, make sure you have built JWT dependency with `-DENABLE_JWT=ON` first.
##
## Value: basic | jwt
http_server.auth_type=basic

## http server jwt public key file
## Used together with 'http_server.auth_type=jwt',
## Path to the file containing the user's private key.
##
## Value: File
http_server.jwt.public.keyfile=/etc/certs/jwt/jwtRS256.key.pub

## http server jwt private key file
## Used together with 'http_server.auth_type=jwt',
## Path to the file containing the user's publick key.
##
## Value: File
http_server.jwt.private.keyfile=/etc/certs/jwt/jwtRS256.key

## Rule engine option, when persistence with
## rule engine, this option is must be ON.
##
## Value: ON | OFF
rule_engine_option=ON

## Rule engine database option
## Choose a database to persistence data
##
## Value: sqlite | fdb (foundationdb)
rule_engine_option.db=sqlite

## Rule engine option database sqlite path
## Sqlite db path, default is exec path.
##
## Value: File
rule_engine_option.db.sqlite_path=rule_engine.db

root@mqtt-test:~# cat /docker/nanomq/etc/nanomq_auth_username.conf
## NanoMQ username/password

## The first group of authentication data
##auth.1.login = admin
##auth.1.password = public

## The second group of authentication data
##auth.2.login = client
##auth.2.password = public

In fact you can define anything and it is crashing
root@mqtt-test:~# docker run --rm -it --name nanomq --entrypoint /bin/sh emqx/nanomq:0.10.8-alpine
/usr/local/nanomq # ./nanomq start --auth /etc/passwd
Segmentation fault (core dumped)

tested on another box, fresh
root@router:~# docker run --rm -it --name nanomq --entrypoint /bin/sh emqx/nanomq:0.10.8-alpine
Unable to find image 'emqx/nanomq:0.10.8-alpine' locally
0.10.8-alpine: Pulling from emqx/nanomq
79e9f2f55bf5: Pull complete
81d8f69890e9: Pull complete
a3f8446cd5b6: Pull complete
7cdae0367787: Pull complete
4f4fb700ef54: Pull complete
379f95e32009: Pull complete
Digest: sha256:f6528f6cf44291a8bf8742a5b52e05957bef34f5b835154dbf15ac2d51c4d92d
Status: Downloaded newer image for emqx/nanomq:0.10.8-alpine
/usr/local/nanomq # ./nanomq start --auth /etc/passwd
Segmentation fault (core dumped)

Yes, NanoMQ cannot open the file then will stop. Apologize it didn't return any readable errors.  So could you verify is your docker image able to get access to the config file? Or share the "nanomq_auth_username.conf" not the "NanoMQ.conf"

tested on another box, fresh
root@router:~# docker run --rm -it --name nanomq --entrypoint /bin/sh emqx/nanomq:0.10.8-alpine
Unable to find image 'emqx/nanomq:0.10.8-alpine' locally
0.10.8-alpine: Pulling from emqx/nanomq
79e9f2f55bf5: Pull complete
81d8f69890e9: Pull complete
a3f8446cd5b6: Pull complete
7cdae0367787: Pull complete
4f4fb700ef54: Pull complete
379f95e32009: Pull complete
Digest: sha256:f6528f6cf44291a8bf8742a5b52e05957bef34f5b835154dbf15ac2d51c4d92d
Status: Downloaded newer image for emqx/nanomq:0.10.8-alpine
/usr/local/nanomq # ./nanomq start --auth /etc/passwd
Segmentation fault (core dumped)

Will investigate this further, seems like a bug only exist with alpine image

hi, we gonna merge all the config files into one unified file in next ver. So this issue would be obsoleted.

@sooslaca  Hi Could you kindly check if this issue still there with 0.11 ver? we merged all conf file as one.

Hi @JaylinYu , I'm not sure its working as expected.
docker command to start:
docker run --rm -it -e NANOMQ_CONF_PATH=/etc/nanomq/nanomq.conf -v /docker/nanomq/etc:/etc/nanomq --name nanomq --entrypoint /bin/sh emqx/nanomq:0.11.3-alpine
/usr/local/nanomq # nanomq --version

Usage: nanomq { start | stop | restart } [--help]

NanoMQ Messaging Engine for Edge Computing & Messaging bus v0.11.0-0
Copyright 2022 EMQ Edge Computing Team

/usr/local/nanomq # nanomq start --conf /etc/nanomq/nanomq.conf --log_level debug --log_stdout true

I made these changes in the config:
[nanomq]/usr/local/nanomq# cat /etc/nanomq/nanomq.conf |grep "auth\.1"
auth.1.login = admin
auth.1.password = admin
[nanomq]/usr/local/nanomq# cat /etc/nanomq/nanomq.conf | grep anon | egrep -v "^#"
allow_anonymous=false

Still after this I can connect as anonymous and or any username/password.
What is also weird the binary is still giving --auth as a possible option to configure. Should I use that?
/usr/local/nanomq # ./nanomq start --help |grep -i auth
                     [--aws_bridge <path>] [--webhook <path>] [--auth <path>] [--auth_http <path>]
  --auth <path>              The path of a specified authorize configuration file
  --auth_http <path>         The path of a specified http authorize configuration file

Hi @JaylinYu , I doubt, the same conf file works with non-alpine docker image. There's something wrong with the alpine based version.

Ok sure, will investigate the issue on the alpine-docker. Could you also try the binary package? just to make sure this is an issue only exists with the Docker image.

Hi @sooslaca , We have already tested docker image emqx/nanomq:0.11.3-alpine, the Authorization config does not work as expected, But emqx/nanomq:0.12.1-alpine is going well;
Please kindly update you docker image version;

This bug has been fixed in 0.13.

close due to the lack of feedback.


does this plugin work with mono?

any chance you you could add an parameter to the plugin so it would work also with mono?

Hi,
I don't use mono, but it should be fairly simple to add.
Any chance you could try it out ? I think adding "mono" in the command lines will work, provided that nuget exe is compatible with mono (which I'd expect).
https://github.com/Ullink/gradle-nuget-plugin/blob/master/src/main/groovy/com/ullink/BaseNuGet.groovy#L41
Let me know.

how can add mono as prefix?
with mono you use nuget in this way mono /absolute/dir/nuget.exe params currently its is hardcoded nuget to be the first parameter.
def commandLineArgs = [nugetExe]

yes you need to change the plugin code and test it.
I could do the change but I can't test it, would've been great if you could.
Thanks

Mono support added by @jonathanmorley in PR #13 , feel free to test !


fix: Also report toml loading failures with --watch

The hot_reload crate (used for loading config.toml) in --watch mode does not report the ReloaderError we give, only that reloading failed with generic message "Failed to reload watch target" in WARN level. But at the same time, WARN level logs of external crates are not logged by default => no log message when broken config and --watch is active.
So I changed it to report our own log message more in line with non-watch mode together with the error detail about why loading failed. I changed it from ERROR to WARN because it is non-fatal in the sense that if you fix the configuration it can still recover. But of course if it is the first time the config is being loaded it will block startup, so yeah feel free to comment on that.
Example log:
2024-11-03T23:04:03.703607Z  WARN Invalid toml file: TOML parse error at line 211, column 26
    |
211 | ignore_sni_consistency = if-same-cert
    |
invalid string
expected `"`, `'`

Steps to reproduce:

Break config.toml i.e. set listen_port = true which has wrong datatype.
run cargo run -- --config config.toml --watch
Watch startup jam without error in logs

Current implementation will keep re-reporting the problem at 15 second intervals until the error has been fixed.

Hi @xkr47
Thanks for the contribution. I think your motivation is reasonable, and I confirmed that this could be reproduced if RUST_LOG=info or none is specified. But you may already know that when RUST_LOG=debug you can see the log like the following.
2024-11-05T10:41:01.407969Z  INFO rpxy rpxy_lib::proxy::proxy_quic_quinn:20: Start UDP proxy serving with HTTP/3 request for configured host names [quinn]
2024-11-05T10:41:16.401801Z  WARN main hot_reload:154: Failed to reload watch target

In my opinion, this is an error of hot_reload and should not be handled in rpxy. In other words, we should update the filtering setting of logs from external crates, which would be a more generic approach than the handling method specific to this case.
I have already created the PR. Please check it? https://github.com/junkurihara/rust-rpxy/pull/217

That is helpful for sure, but unfortunately the hot_reload crate completely discards the returned Error so it is unclear what is wrong. In this case the warning message I added includes the full toml parsing error message, immediately pointing out the issue. The error message WARN main hot_reload:154: Failed to reload watch target contains no context info whatsoever. I guess we could try to convince hot_reload crate to log the Error returned in case of failure, maybe optimizing it so that repeated failures do not produce redundant error messages..

Ah, I see. You mean the warn message of hot_read crate should includes the detailed reason. I think your concern should be solved by the patch of the crate.  You may know that the crate author is here https://github.com/junkurihara/rust-hot-reloader and I am sure that this can be resolved by updating the following lines.
https://github.com/junkurihara/rust-hot-reloader/blob/cda2ba73a497b8bda923b46b5f85a7ead611e2d4/reloader/src/lib.rs#L153-L156
I agree that the error should include the reason. So I will publish the hot_reload 0.1.7 later.

#217 now fulfills the purpose of this PR; closing.