indexed nullable DATE_TIME field causes error on .insert() unless specified

I have been using lovefield for a while, but now I am starting to use DATE_TIME columns. I discover that if they are .addIndex()-ed they must be specified explicitly on .insert() - even if made .addNullable(), as an uncaught error occurs. However if the column is not indexed, the error does not occur but they are incorrectly assigned the default value of null, instead of Date(0).
Repro: https://plnkr.co/edit/sZ7gGCDpXWrOTpKC
As you can see from test 2, treating a STRING in the same way results in more expected behaviour.
I have tested further without .addNullable() and my tests mostly result in error 202:
Constraint error: (202) Attempted to insert NULL value to non-nullable field deals.[FIELDNAME]
Further testing shows a 202 error is generated for whichever field is not specified, whether STRING, DATE_TIME, INTEGER, NUMBER or BOOLEAN.
However, according to documentation the default value for a DATE_TIME field is Date(0). I presume this to be new Date (0) and not a string representation of the current date/time, and this is borne out by inspecting lf.type .
However observed behaviour suggests that the default values for STRING, DATE_TIME, INTEGER, NUMBER and BOOLEAN are not implemented, because when added with .addNullable() they come out as undefined, and not null.
So I did another test:
https://plnkr.co/edit/4351TPYa7BlSVn7d?preview
...and it appears that the defaults specified in lf.type are not applied at all.
Perhaps that is the root of this issue?

Thanks for filing. Will take a look and respond on this thread with any updates.


Add a API to restart node of a raft cluster

I think defining custom command for this could be a way to implement this, but maybe ProcessExecutor should be needed in the Backend.AI integration PR.

I think this should be implemented at the application level


--organization is optional param but devops-cli-extension doesn't work

--organization is optional parameter here, but using devops-cli extension I am getting below error:
>az pipelines release definition list
--organization must be specified. The value should be the URI of your Azure DevOps organization, for example: https://dev.azure.com/MyOrganization/ or your Azure DevOps Server organization. You can set a default value by running: az devops configure --defaults organization=https://dev.azure.com/MyOrganization/. For auto detection to work (--detect true), you must be in a local Git directory that has a "remote" referencing a Azure DevOps or Azure DevOps Server repository.

Detalji dokumenta
⚠ Ne uređujte ovu sekciju. Ona je neophodna za povezivanje problema slijedom docs.microsoft.com ➟ GitHub.

ID: 781fb6b0-2eb2-336a-a8c2-7923827046c5
Version Independent ID: 7a51c400-51b4-b323-2fef-543df9b1f7dc
Content: az pipelines release definition
Content Source: latest/docs-ref-autogen/ext/azure-devops/pipelines/release/definition.yml
GitHub Login: @rloutlaw
Microsoft Alias: routlaw

this works. now. it was not able to detect the repository as per debug law...
can we mention this in documentation that user must execute all commands from within a repository


[1.18.2] ComputerCraft Integration

Turns ShipHelmBlock into a CC Peripheral
Added ShipHelmPeripheral and ShipHelmPeripheralProvider
Minor change to EurekaModFabric and EurekaModForge to test for if ComputerCraft is loaded and/or disabled via configs
Added Config Option to disable ComputerCraft integration
Added CC Tweaked and CC Restitched to build.gradle for Forge and Fabric respectively using Curse Maven and modCompileOnly
ShipHelmPeripheral provides multiple methods to manipulate ad read information to/from Eureka ships

forward()

changes forwardImpulse (1.0f) in the SeatedControllingPlayer attachment and holds it for a second

reverse()

changes forwardImpulse (-1.0f) in the SeatedControllingPlayer attachment and holds it for a second

turnLeft()

changes leftImpulse (1.0f) in the SeatedControllingPlayer attachment and holds it for a second

turnRight()

changes leftImpulse (-1.0f) in the SeatedControllingPlayer attachment and holds it for a second

raise()

changes upImpulse (1.0f) in the SeatedControllingPlayer attachment and holds it for a second

lower()

changes upImpulse (-1.0f) in the SeatedControllingPlayer attachment and holds it for a second

isCruising()

grabs the boolean in SeatedControllingPlayer

startCruising()

changes the boolean in SeatedControllingPlayer

stopCruising()

changes the boolean in SeatedControllingPlayer

startAlignment()

changes the boolean in SeatedControllingPlayer

stopAlignment()

changes the boolean in SeatedControllingPlayer

disassemble()

calls to the disassemble() method in the ShipHelmBlockEntity

assemble()

calls to the disassemble() method in the ShipHelmBlockEntity

getBalloonAmount()

grabs the int from EurekaShipControl

getAnchorAmount()

grabs the int from EurekaShipControl

getActiveAnchorAmount()

grabs the int from EurekaShipControl

areAnchorsActive()

grabs the int from EurekaShipControl

getShipHelmAmount()

Has this PR been given up on?

I think this was added in CC:VS mod


[FIX] searchPages in vnda

In this pr we fix how we verify if is a searchPage or no.

I prefer this prop coming from VNDA app, what do you think?

You have a point, but I prefer to still this prop here because I think is more UI/UX

Should I say what is my search page in each place that I use this loader?

I prefer this prop coming from VNDA app, what do you think?

You have a point, but I prefer to still this prop here because I think is more UI/UX

Should I say what is my search page in each place that I use this loader?

what is my search page in each place that I use this loader?

I think you need to say it only in the searchPage or some variation. In my mind make more sense select it only when you use

@mcandeia what do you think?


Fix use after free errors in TFDeabstraction and TFPartition.

This PR fixes two use-after-free errors found by asan.

@swift-ci please test tensorflow linux

@swift-ci please test tensorflow macos


Fixed problem when serving blog over HTTPS and using Disqus

When you run the blog on a HTTPS server you get this error message when Disqus is activated:
Mixed Content: The page at 'https://temponia.com/blog/hofstadters-law-violated' was loaded over HTTPS, but requested an insecure script 'http://temponia.disqus.com/embed.js'. This request has been blocked; the content must be served over HTTPS.

This uses the protocol returned by javascript to determine if it should request the JS over HTTP or HTTPS.

Nice! Well done, thanks, @rept :+1:


Portfolio: finish mobile version

made a new branch to merge with the main one as the other branch Portfilo wasn't able to merge with the main

Hi @Hotdog39duty,
While you made a great effort in this project, unfortunately, I cannot proceed to review your code.

Invalid Code Review Request

Please don't merge your PR till approved by a code reviewer.
Kindly fill Show Your Support section with your custom content. Please change your project name since your project name is not Microverse Readme Template 👍 Also please change the Tech Stack with the project tech stack. In this way, your repository will look more professional. 👍

Please use descriptive branch names instead of "origin" (e.g.: refactor-authentication, user-content-cache-key, make-retina-avatars), so that others can see what is being worked on. Check more to learn more about this.
When you rename the branch name, it closes the PR immediately. You can rename the branch name and create a new Pull Request with the new branch name and include the old Pull Request link in the description of the new PR.

Your Code Review Request will be marked as invalid in your Dashboard, so please submit a new one once you are ready 🙏
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

Invalid Code Review Request does not count into the code reviews limit.


Ensure that linked issues close

Pull Request Title
Fixes #(your issue number)
Task List

[x] Defined the tests that specify a complete and functioning change (It may help to create a design specification & test specification)
[x] Implemented the source code change that satisfies the tests
[x] Documented the feature by providing worked example
[x] Updated the README or other documentation
[x] Completed the pre-Request checklist below

Change Description
Please write a summary of the change and specify which Issue this fixes. This should cover the motivation for making the change and provide almost enough context to review the change in isolation. While the issue description is a good place to discuss the failure/requirements, this is the ideal space for explaining why this design fixes the issue and why you designed it the way you did.

If there are important design decisions, particularly those that leverage functionality outside this change or were caused by existing limitations, they should be noted here.
If there is a design specification which relates to this PR, please provide a link to it here.
If the PR relates to an open issue issue, please link the issue to the PR by using the 'closes #issue_number' syntax.
If there are any dependencies (third-party or internal downstream) which are added or impacted, please note them here. And if their limitations informed your design, please note how they did so here (particularly if this information was not captured in a design specification).

I updated the PR template to remove the "" in "Fixes #(your issue number). This should mean that the issue closes automatically. Also fixed a bit the instructions for "Change Description". Closes #619.

Test Description
Can only be tested via a PR (this one!)

Documentation Impact
N/A

Other Details
N/A

Pre-Request Checklist

[x] The requirements of this pull request are fully captured in an issue or design specification and are linked and summarised in the description of this PR
[x] No new warnings are generated
[x] The documentation has been updated (or an issue has been created to track the corresponding change)
[x] Methods and Tests are commented such that they can be understood without having to obtain additional context
[x] This PR/Issue is labelled as a bug/feature/enhancement/breaking change
[x] File dates have been updated to reflect modification date
[x] This change conforms to the conventions described in the README

Please complete your pull request description and delete the instructional text before submitting.
Congratulations and thank you for making your contribution to neXtSIM_DG!

This should be merged into master for it to take effect!


[FEATURE]: Click-to-play on videos

Introduction

One feature I loved about the Simple Embeds plugin is that instead of directly embedding the YouTube video iframe, it places the video thumbnail as a placeholder. When you click on the thumbnail it will load the "real" iframe.
It's good because loading iframes can be performance intensive and performs poorly when there are many of them.
You can see an example at Iframely Docs.

Implementation example
An implementation can be done using the oEmbed API standard of many sites. Some of them are:

YouTube (Direct example because Google didn't document it).
TikTok
Soundcloud
Spotify

Code example

I don't know anything about Obsidian on the "JavaScript" side so I'm trying to write a general example.

I use the response of: https://www.youtube.com/oembed?url=https://youtu.be/xcJtL7QggTI
I extract thumbnail_url and html keys from JSON and get this result (In CodePen looks broken but run it locally looks great).
https://codepen.io/Rikiub/pen/jOjYwVE

Thoughts

It would be nice to have click-to-play support for YouTube videos to avoid loading unnecessary content.
It could also be used for other links, such as TikTok.

Sure I can try to do that! Thanks for the suggestion, research and code example!
The embed already uses loading = "lazy"` though. So it'll only load when the embed is in view. I think I'll add the thumbnail as an option. Might be better to see a thumbnail and hopefully it'll load faster.
Lol I tried to do YouTube but I forgot the plugin doesn't embed YouTube and Twitter as Obsidian already does it. Not sure why I didn't try to embed it last time. Maybe I had some problem with it. Anyway, I'll try it again.
How I'll implement it:

I'm planning to make a list of checkboxes with the various websites in the settings. Then, the user can select which website they want to embed. That way, they can choose to use Obsidian's implementation or use my embed. Or maybe it might conflict with some other embed and they can disable my plugin for that website only.
Like said earlier, I'll add an option to toggle this feature. Maybe some people just want to click and play the video. I might add some placeholder before it fully loads though.

I'll be quite busy starting tomorrow to the end of next week though. I probably won't update it for a while... I'll update as soon as I can!

I remember why I gave up on replacing Obsidian's native YouTube and Twitter embeds.
The code for generating the YouTube and Twitter embeds is done. In fact, it was done on the first public version.
However, I have no way to prevent Obsidian from loading their own YouTube and Twitter embeds. I figured how to remove it in Reading mode but have no idea how to remove it in live preview. Obsidian uses CodeMirror for Live Preview, which is too confusing for me. I think its a miracle I was able to support embeds in Live Preview in the first place.
Using CSS to hide it works but it'll still load the embed, defeating the point of the thumbnail idea and the point of even replacing it in the first place.
In conclusion, I think I'll leave Obsidian's embeds on their own for now. Until there is a way to disable Obsidian loading their own embeds, I won't do it. I think Obsidian's embeds are better anyway haha. It's more native which works better. Though they don't support YouTube Shorts if it matters.
However, I'll still try to make placeholders and have a "click to load" option for the other embeds. Not sure if I'll do thumbnails for them but I'll see what I can do.
PS: While searching for ways to get YouTube thumbnails, I found that I can use this. For future use if you want too:
https://i.ytimg.com/vi_webp/${this.videoId}/sddefault.webp

Fix with commit 87225856d681140b689c703c60e925ae9ef5b071. I forgot to link it to this issue when committing.
Currently, it adds a placeholder to all embeds by default. You can go to settings to enable it to be click-to-load. This change should solve Cumulative Layout Shift too.
Also, I won't add thumbnails for now. I'm not sure how to format it, especially when handling the different websites and embed sizes. I might add in the future when I have a better idea.
Sorry, I can't do YouTube. Tried asking the Obsidian Discord but got no response too. Maybe in the future when Obsidian exposes some API or maybe after learning more about CodeMirror.
I changed quite a lot of code to add the placeholder. Please report any bugs found and maybe any improvements to the placeholder styling. I'll make a release soon. I want to make some small changes first. Thanks for the long wait!

Sorry for so many references, making it a bit messy😅. Spotted a few mistakes after releasing so deleted the previous release and uploaded a new one


 Timecop was already included in dependencies so I utilized it to refactor slow test.

Merged


[SPARK-7035] Encourage getitem over getattr on column access in the Python DataFrame API

__getitem__ is cleaner than __getattr__ when accessing columns on a DataFrame

Can one of the admins verify this patch?


Update scheduler.py

The following patch is fix to this bug:
[E 150421 14:59:14 scheduler:448] 'lastcrawltime'
Traceback (most recent call last):
File "/home/thestore/prawler.thestoreinternal.com/pyspider-package/pyspider/scheduler/scheduler.py", line 443, in run
self.run_once()
File "/home/thestore/prawler.thestoreinternal.com/pyspider-package/pyspider/scheduler/scheduler.py", line 429, in run_once
self._check_request()
File "/home/thestore/prawler.thestoreinternal.com/pyspider-package/pyspider/scheduler/scheduler.py", line 262, in _check_request
task = self.on_old_request(task, oldtask)
File "/home/thestore/prawler.thestoreinternal.com/pyspider-package/pyspider/scheduler/scheduler.py", line 579, in on_old_request
elif schedule_age >= 0 and schedule_age + (old_task['lastcrawltime'] or 0) < now:
KeyError: 'lastcrawltime'
The situation appears when:

Task in status active and still not processed (lastcrawltime not exists)
New url arrived with same TaskID with age setted.

Are you using mongodb?

mongodb is schemaless, therefore the keys that is not set will not exists.
I will looking into this issue.


ArgumentException: "Cannot pass a GCHandle across AppDomains" while running ASP.NET MVC application in the IIS Server.

Description
We are using the SkiaSharp library to generate an image using SKData in an ASP.NET MVC application. When running the MVC application as multiple sites(Use same folder for all the sites) in the local IIS Server under one application pool (using the same pool name for all the site), we encounter an ArgumentException while browsing in IIS.
Note: Initially build the MVC application locally in Visual studio, then run in local IIS server.  This exception "Cannot pass a GCHandle across AppDomains" occurs randomly while browsing it in the IIS server.
Reproduction sample Link
Download the MVCSample.zip to replicate the problem.
Reference link for how to setup or install IIS server locally.
https://learn.microsoft.com/en-us/aspnet/web-forms/overview/deployment/visual-studio-web-deployment/deploying-to-iis#install-iis
Reference link for how to add the ASP .NET MVC application as website on the IIS server by using the UI. Then create more sites like this with single MVC application.
https://learn.microsoft.com/en-us/iis/application-frameworks/scenario-build-an-aspnet-website-on-iis/configuring-step-1-install-iis-and-asp-net-modules#to-add-an-aspnet-application-by-using-the-ui
Code
public ActionResult CreateImage()
{
    //Open the file as Stream
    FileStream imageData = new FileStream(Server.MapPath("~/App_Data/AdventureCycle.png"), FileMode.Open, FileAccess.Read);
    MemoryStream outputStream = new MemoryStream();
    using (SKData skImgData = SKData.Create(imageData))
    {
        skImgData.SaveTo(outputStream);
    }
    outputStream.Position = 0;
    imageData.Close();
    //Download Image file in the browser.
    return File(outputStream, "image/png", "Output_Image.png");
}

Expected Behavior
SkiaSharp should create images properly without any errors when running an MVC application in multiple sites under one application pool in local IIS.
Actual Behavior
The following error we were faced randomly in the IIS server.
Exception Details: System.ArgumentException: Cannot pass a GCHandle across AppDomains.
Stack Trace:
[ArgumentException: Cannot pass a GCHandle across AppDomains.
Parameter name: handle]
   SkiaSharp.SKAbstractManagedStream.DisposeNative() in D:\a\1\s\binding\Binding\SKAbstractManagedStream.cs:52
   SkiaSharp.SKNativeObject.Dispose(Boolean disposing) in D:\a\1\s\binding\Binding\SKObject.cs:287
   SkiaSharp.SKManagedStream.Dispose(Boolean disposing) in D:\a\1\s\binding\Binding\SKManagedStream.cs:53
   SkiaSharp.SKNativeObject.Dispose() in D:\a\1\s\binding\Binding\SKObject.cs:298
   SkiaSharp.SKData.Create(Stream stream, Int64 length) in D:\a\1\s\binding\Binding\SKData.cs:141
   MVCSample.Controllers.HomeController.CreateImage() in D:\SkiaSharpSample\MVCSample\MVCSample\Controllers\HomeController.cs:30

Version of SkiaSharp
2.88.3 (Current)
Last Known Good Version of SkiaSharp
2.88.2 (Previous)
IDE / Editor
Visual Studio (Windows)
Platform / Operating System
Windows
Platform / Operating System Version
No response
Devices
Basic Information:
•	SkiaSharp Version with issue: 2.88.7
•	IDE: Visual Studio Professional 2022 Preview 17.9.0 Preview 1.0
•	Platform: Windows (Windows 11 Enterprise) version: 23H2
•	Target Frameworks: ASP .NET MVC Application of .NET Framework 4.8
Relevant Screenshots

Relevant Log Output
[ArgumentException: Cannot pass a GCHandle across AppDomains.
Parameter name: handle]
   SkiaSharp.SKAbstractManagedStream.DisposeNative() in D:\a\1\s\binding\Binding\SKAbstractManagedStream.cs:52
   SkiaSharp.SKNativeObject.Dispose(Boolean disposing) in D:\a\1\s\binding\Binding\SKObject.cs:287
   SkiaSharp.SKManagedStream.Dispose(Boolean disposing) in D:\a\1\s\binding\Binding\SKManagedStream.cs:53
   SkiaSharp.SKNativeObject.Dispose() in D:\a\1\s\binding\Binding\SKObject.cs:298
   SkiaSharp.SKData.Create(Stream stream, Int64 length) in D:\a\1\s\binding\Binding\SKData.cs:141
   MVCSample.Controllers.HomeController.CreateImage() in D:\SkiaSharpSample\MVCSample\MVCSample\Controllers\HomeController.cs:30

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Hi team,
Any update in this?
Regards,
Akash.

Hi Team,
Any update on this issue. Any workaround or solution would be helpful.

Having similar issue and it caused IIS worker crash every time.

having similar issue and it crashed IIS every time.

Hi Team, Any update on this issue? Any workaround or solution would be helpful, as we have been waiting for a while.

I am not too familiar with the way IIS works, but SkiaSharp is using GCHandles to get direct access to memory for drawing and processing pixels. Is there a way to mark a controller as not usable across app domains? Maybe the image logic needs to be in a separate place that can be marked or controlled as such?
I did a quick search and this came up: https://github.com/cefsharp/CefSharp/issues/351
If anyone has more info on IIS and how this would work, please let me know.


Image upside down

When the image is first shown, it is upsidedown.
ImageViewer <myCTScan.mha>  produced the attached.

Resolved.


🚀 [Feature] Implement Hover on Starmap

🚀 Feature

Implement Hover on Starmap

Make star hover/click field bigger then the star

A few thoughts which should be taken into account:

panel behavior at the edge of the screen
when the panel is open and the map will be moved then the panel should be moved as well or be closed


Initialize Feedstock

Initialized feedstock from Conda-Forge.
Needed for werkzeug/flask suite.
Jira ticket: https://anaconda.atlassian.net/browse/PKG-709
Upstream repo: https://github.com/theskumar/python-dotenv/tree/v0.21.0
Changelog: https://github.com/theskumar/python-dotenv/releases

Linter check found the following problems:
The following problems have been found:
WARNING: /tmp/abs_4cm3ycb0g1/clone/recipe/meta.yaml:47: missing_license_url: The recipe is missing a license_url
WARNING: /tmp/abs_4cm3ycb0g1/clone/recipe/meta.yaml:47: missing_doc_source_url: The recipe is missing a doc_source_url
Warnings were found

Linter check found the following problems:
The following problems have been found:
WARNING: /tmp/abs_9dn7lp_s3r/clone/recipe/meta.yaml:47: missing_doc_source_url: The recipe is missing a doc_source_url
WARNING: /tmp/abs_9dn7lp_s3r/clone/recipe/meta.yaml:47: missing_license_url: The recipe is missing a license_url
Warnings were found


Avoid .unwrap() on cache access

Summary
I haven't been able to determine why / when this is happening, but in some cases, users are reporting that this unwrap() is causing a panic. It's fine to just return None here and fallback to "No cache", certainly better than panicking (while we figure out the edge case).
Closes #5225.
Closes #5228.

just here to say you're amazing :)
was coming to see what I could learn about this and it's already closed!

Haha, thank you, sorry for the churn. If you have a publicly available repro, it'd actually be helpful for me! This will fix the crash, but I can't quite understand why it was happening in the first place.

I do, but it's a rather convoluted usage :joy:  lemme see if I can make a reproducible example.

alright, this is super far from a minimal example (sorry) ... but I can at least reproduce it with this:
# somewhere, in a clean environment ...
git clone --depth 1 --branch ruff-panic https://github.com/tlambert03/ome-types.git
cd ome-types
pip install ruff==0.0.273
ruff src/ome_types/model/

That's perfect, thank you!


Commits should only close/reopen issues if the issue has the correct branch

Gitea version (or commit ref): 1.9.3

Description
Currently a commit can close or reopen an issue it is referencing, either if repo.CloseIssuesViaCommitInAnyBranch is set or when the commit is being pushed to the default branch. However, if Issue.Ref is set, it should be used instead of the default branch.
https://github.com/go-gitea/gitea/blob/63ff61615ec6aaa25887f8ce605c9082c106a34b/models/action.go#L603-L607

It is there for backwards compatibility
See https://github.com/go-gitea/gitea/pull/5992 and https://github.com/go-gitea/gitea/issues/5957

It is there for backward compatibility
See #5992 and #5957

@adelowo Using CloseIssuesViaCommitInAnyBranch is alright, but if it's not set, an the issue is marked on branch release (Issue.Ref == release), a commit on dev should not close the issue.

Ha true

This was fixed in #8875


Add/Update good Vendor: Tailscale

Do you want to add or update the vendor? Adjust the title accordingly!
How to use? Fill the yaml file below!

name: Use the vendors name
free_sso_providers: Do they support free SSO providers like Google, Apple, Github etc.? One per line.
scim_pricing: Use the vendors cheapest price that includes SCIM.
scim_starting_on_plan: When is SCIM available? lowest`` or highest`
sources: Add a link or a note to where you got information like pricing from. One per line.
sso_on_free_plans: Is SSO available on free plans?
sso_on_all_paid_plans: Is SSO available on all paid plans? It must be true to appear on this list.
updated_at: yyyy-mm-dd of the day you filed this.
vendor_url: Use the vendors public website

---
name: Tailscale
free_sso_providers:
  - Google
  - Google Workspace
  - Okta
  - Microsoft Office365
  - Microsoft Entra ID
  - Microsoft Active Directory
  - Microsoft
  - GitHub
  - OneLogin
  - All OIDC compliant identity providers
scim_pricing:
scim_starting_on_plan: highest
sources:
  - https://tailscale.com/pricing
sso_on_free_plans: true
sso_on_all_paid_plans: true
updated_at: 2024-04-18
vendor_url: https://tailscale.com

And added, thanks @samlinville ! I also added their blog posts about it as source.


Can now specify custom decoder when instantiating Microphone

This is also useful if you want to use the Microphone's listen() method
without setting up a pocketpshinx decoder, by specifying a dummy decoder:
class DummyDecoder(object):
    def start_utt(): pass

mic = Microphone(decoder=DummyDecoder())
data = mic.listen(duration=5, timeout=1)
# Do stuff with data, like UDP stream to server.

Signed-off-by: Edouard Poitras<EMAIL_ADDRESS>

looks fine, thanks


Documentation Update

Update the documentation

There has been a lot of changes! Screenshots do not contain some new features like loading buttons, cancellable operations, and so on! Please do not forget to try the package yourself, do not confine yourself to see the screenshots.


[LogicApp Integration Accounts] [Bug Fix] : Code generated as per the latest RP updates.

Description

Swagger spec updated as per the latest changes in the RP definitions
LogicApp and Integration account spec are merged (2015-08-01-preview with 2016-06-01) as both are in GA.

https://github.com/Azure/azure-rest-api-specs/pull/891
This checklist is used to make sure that common guidelines for a pull request are followed.

[x]  I have read the contribution guidelines.
[x] The pull request does not introduce breaking changes.

General Guidelines

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[x] Pull request includes test coverage for the included changes.

SDK Generation Guidelines

[x] If an SDK is being regenerated based on a new swagger spec, a link to the pull request containing these swagger spec changes has been included above.
[x] The generate.cmd file for the SDK has been updated with the version of AutoRest, as well as a link to the swagger spec, used to generate the code.
[x] The project.json and AssemblyInfo.cs files have been updated with the new version of the SDK.

Hi @pankajsn, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!

It looks like you're working at Microsoft (pankajsn). If you're full-time, we DON'T require a contribution license agreement.

If you are a vendor, DO please sign the electronic contribution license agreement. It will take 2 minutes and there's no faxing! https://cla.azure.com.

TTYL, AZPRBOT;

@pankajsn adding the "Do Not Merge" label until the corresponding Swagger spec has been merged

@pankajsn Hey Pankaj, can you update your generated.cmd file with the swagger spec you are using to generate this SDK? It should be the following link below that includes the commit ID
https://raw.githubusercontent.com/Azure/azure-rest-api-specs/ecc34b75fe5aecebd148b74392b67e85070e0fc5/arm-logic/2016-06-01/swagger/logic.json

Updated
From: Cormac McCarthy<EMAIL_ADDRESS>Sent: Tuesday, February 14, 2017 12:08 PM
To: Azure/azure-sdk-for-net<EMAIL_ADDRESS>Cc: Pankaj Singh Negi<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [Azure/azure-sdk-for-net] [LogicApp Integration Accounts] [Bug Fix] : Code generated as per the latest RP updates. (#2769)
@pankajsnhttps://github.com/pankajsn Hey Pankaj, can you update your generated.cmd file with the swagger spec you are using to generate this SDK? It should be the following link below that includes the commit ID
https://raw.githubusercontent.com/Azure/azure-rest-api-specs/ecc34b75fe5aecebd148b74392b67e85070e0fc5/arm-logic/2016-06-01/swagger/logic.json
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/Azure/azure-sdk-for-net/pull/2769#issuecomment-279820644, or mute the threadhttps://github.com/notifications/unsubscribe-auth/APZfcy-ea8LJ4miyyCVBFyZoi3TayY6Wks5rcgmhgaJpZM4LyIy5.

@pankajsn credscan faild, can you check in your test if you have used any password or serviceprincipal secrets.

Credscan warnings are fixed. (http://azuresdkci.cloudapp.net/job/sdk-for-net/4440)
From: Abhijeet<EMAIL_ADDRESS>Sent: Tuesday, February 14, 2017 1:19 PM
To: Azure/azure-sdk-for-net<EMAIL_ADDRESS>Cc: Pankaj Singh Negi<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [Azure/azure-sdk-for-net] [LogicApp Integration Accounts] [Bug Fix] : Code generated as per the latest RP updates. (#2769)
@pankajsnhttps://github.com/pankajsn credscan faild, can you check in your test if you have used any password or serviceprincipal secrets.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/Azure/azure-sdk-for-net/pull/2769#issuecomment-279838995, or mute the threadhttps://github.com/notifications/unsubscribe-auth/APZfc5NnGUud4W3gSYRiBlwGW3tC3Eumks5rcho7gaJpZM4LyIy5.

fixed
From: Abhijeet<EMAIL_ADDRESS>Sent: Wednesday, February 15, 2017 8:38 AM
To: Azure/azure-sdk-for-net<EMAIL_ADDRESS>Cc: Pankaj Singh Negi<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [Azure/azure-sdk-for-net] [LogicApp Integration Accounts] [Bug Fix] : Code generated as per the latest RP updates. (#2769)
@shahabhijeet requested changes on this pull request.

In src/ResourceManagement/Logic/Microsoft.Azure.Management.Logic/project.jsonhttps://github.com/Azure/azure-sdk-for-net/pull/2769#pullrequestreview-22046137:

@@ -1,5 +1,5 @@

{

"version": "1.0.0",

"version": "2.0.0",

@pankajsnhttps://github.com/pankajsn can you do same version bump in AssemblyInfo.cs in order to be consistent
otherwise looks good.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/Azure/azure-sdk-for-net/pull/2769#pullrequestreview-22046137, or mute the threadhttps://github.com/notifications/unsubscribe-auth/APZfc71SNE6PDPM6dgiYgExRfslu8ZETks5rcynlgaJpZM4LyIy5.


RE: /airbrake-faq/how-do-global-error-types-work

No description of the issue. Did you have a question or notice an issue with the doc?

No description of the issue. Did you have a question or notice an issue with the doc?


setMaxHeight modifier not working on DropdownMenu

components: DropdownMenu
reactstrap version 5.0.0
react version 16.3.0
bootstrap version 4.0.0

What is happening?
setMaxHeigh modifier on DropdownMenu not causing the overflow to contract long list into a scrollable. Content showing correctly but shoots off the bottom of the page (it's a list of 60-odd countries)
What should be happening?
Menu should display scrollable bar
Steps to reproduce issue
It's up online now - https://reaq-pmm.firebaseapp.com/
Error message in console
None - it just doesn't seem to be detecting the modifier.
Code
import React, { Component } from "react";
import PropTypes from 'prop-types';
import {
  Dropdown,
  DropdownToggle,
  DropdownMenu,
  DropdownItem
} from "reactstrap";
import axios from "../../axios/axios";

class CountryDropdown extends Component {
  constructor(props) {
    super(props);
    this.countries = [];

    this.toggle = this.toggle.bind(this);
    this.state = {
      dropdownOpen: false
    };
  }

  static get propTypes() {
    return { onSetCountry: PropTypes.func };
  }

  componentDidMount() {
    this.getCountries();
  }

  getCountries() {
    this.countries = [];
    axios
      .get("/countries")
      .then(response => {
        for (let i = 0; i < response.data.results.length; i++) {
          let country = [
            response.data.results[i].name,
            response.data.results[i].code
          ];
          this.countries.push(country);
        }
      })
      .catch(error => {
        alert(
          "There was an error getting a list of available countries:" + error
        );
      });
  }

  toggle() {
    this.setState({
      dropdownOpen: !this.state.dropdownOpen
    });
  }

  handleCountrySelection(selectedCountry, selectedCountryCode) {
    this.props.onSetCountry(selectedCountry, selectedCountryCode);
  }

  render() {
    let countryNames = this.countries.map((country, index) => {
      return (
        <DropdownItem
          key={index}
          onClick={() => {this.handleCountrySelection(country[0], country[1])}}
        >
          {country[0]}
        </DropdownItem>
      );
    });
    return (
      <Dropdown size="sm" isOpen={this.state.dropdownOpen} toggle={this.toggle}>
        <DropdownToggle caret>Country</DropdownToggle>
        <DropdownMenu
          modifiers={{
            setMaxHeight: {
              enabled: true,
              order: 890,
              fn: (data) => {
                return {
                  ...data,
                  styles: {
                    ...data.styles,
                    overflow: 'auto',
                    maxHeight: 100,
                  },
                };
              },
            },
          }}
        >
          {countryNames}
        </DropdownMenu>
      </Dropdown>
    );
  }
}

export default CountryDropdown;

@PMMWebDevelopment it works for me, i can't reproduce this issue 😔
My demo:
https://stackblitz.com/edit/reactstrap-998?file=Example.js

I was just wondering if there was any kind of dependency I might be missing. Does Popper.js have any influence over this component - I've updated to the latest version?

 Please update your reactstrap's version!
Version 5.0.0 doesn't have this feature.

OK solved it now - needed to upgrade reactstrap to 6.0.0 - it was stuck on 5.0.0 for some reason despite not being the latest version. Thanks!


Minimum compatible Unity version?

Do you know what the minimum required version of Unity is for this package to work? It appears not to work in 2019.4.16f1 at least

https://openupm.com/packages/com.openai.unity/

https://github.com/RageAgainstThePixel/com.openai.unity/blob/ea42d3248e136564fa3007293cadf10112a25152/OpenAI/Packages/com.openai.unity/package.json#L7


ENV: use different icon

The "eye" icon is already taken by the Data Visualizer.

Handled by https://github.com/source-academy/cadet-frontend/pull/663


updates to support an ASCII echo or EBCDIC echo

I am looking to provide 'echo' in coreutils. Before I can safely do that, and use it in our tools, I need to tweak a few spots where we assume echo will create an EBCDIC file. Now it checks if it really is EBCDIC before converting it to ASCII.

That sounds good to move asciiecho to common.inc - can we do that as a follow-on issue?

sure!


Is it possible to get values from an array by multiple indices?

To get values from an array by multiple indices is something like this:
a = [1, 2, 3, 1, 2, 3]
a[[-1, -5, 3, 1]] #=> [3, 2, 1, 2]

I will appreciate if anyone knows any function doing the same thing.
If there is no such method for Array, is it possible for Crystal team to implement one?

You're most likely looking for Array#values_at method.

Thanks =) This solves my problem. Please close this silly issue...

 You can easily close this issue yourself btw :)


Ability to add your own keyed functions

Describe the feature
Several composable functions ( useState, useFetch, useAsyncData, useLazyAsyncData, useLazyFetch) provide auto-key generation that is unique to the file name and line number of the instance of function call. However, this makes it impossible to create your own wrappers around these functions, because then the auto-generated key will always be the same for any wrapper-function call.
// composables/useAsyncSpecifiedData.ts
export function useAsyncSpecifiedData(params) {
	// ... do some work
	const handler = createHandler( params )
	const options = createOptions( params )
	return useAsyncData(handler, options) // <- the unique key always generated exactly for this file+line
}

I would like to have oportynity to somehow expand keyed functions with myown
https://github.com/nuxt/framework/blob/51bc6e44fef6e4a249946ba910a497089b089a64/packages/vite/src/plugins/composable-keys.ts#L15-L17
So that nuxt will generates a unique key directly for the wrapper function call, which will be passed down in useAsyncData. Since it is work for useLazyAsyncData
https://github.com/nuxt/framework/blob/51bc6e44fef6e4a249946ba910a497089b089a64/packages/nuxt/src/app/composables/asyncData.ts#L263-L274
Additional information

[x] Would you be willing to help implement this feature?
[ ] Could this feature be implemented as a module?

Final checks

[X] Read the contribution guide.
[X] Check existing discussions and issues.

I think wrapping built in functionalities is not a good practise to be honest.
I am closing this issue as there was no further attention in over a month.
Feel free to reopen it though if needed :)

Related: https://github.com/nuxt/nuxt/issues/14736

I think this would be a nice feature, and we'd welcome contribution on this. Maybe we could also consider configuration for other magic names, as in unctx transform or pure function annotation plugins.
Thoughts welcome on where the configuration should live.


⚠ SceneTime has degraded performance

In 7b64582, SceneTime ($ST) experienced degraded performance:

HTTP code: 200
Response time: 3623 ms

Resolved: SceneTime performance has improved in 2f03a4c after 21 minutes.


Documentation no longer lists required features

Summary
Starting with version 0.52.0, the documentation published here no longer lists all/some required features.
For example:

OutputDebugStringW doesn't list any features
GetMessageW doesn't list the full set of features

It looks like the requirements for the containing module have dropped off.
Crate manifest
No response
Crate code
No response

Probably #2671. I think it no longer adds namespace features to the list of features.

Yep the docs no longer explicitly include the feature for the enclosing module. This caused a huge amount of redundant doc comments and markup. A bit less intuitive for sure, but a tradeoff I think is worthwhile until I find a long-term replacement for rustdoc...

OutputDebugStringW does not show up in search results to be able to find the module to use, it only shows the kernel32.dll.c definition. Maybe an edge case, but that makes it difficult to find which feature to enable.

That's fair - I tend to hunt around the GitHub repo rather than use the published docs.

The only reason I care about the required features is to copy them into the features table of a Cargo.toml file. This used to work well when all features were listed.
After the change, things are far less convenient. It's not entirely unworkable as long as only the containing module's feature is required. When more features are required the documentation starts to feel very hostile (just go through the number of steps needed to get GetMessageW's features into a Cargo.toml).
Someone who knows their way around this crate may merely be inconvenienced. To anyone new, this may be reason enough to look into alternatives.
Reverting this change would be very much appreciated.

I wonder if it would help to remove the explicit need for things like Foundation and Win32_Foundation and instead make them automatically implied by using the relevant namespaces? They're almost certainly needed and I think they should not add significantly to code size in any case.

Yes, I'm looking for ways to reduce the feature complexity as simply reverting this change doesn't really solve the problem. Continuing to use rustdoc in this way is just not sustainable.

cargo doc has a new doc_auto_cfg feature that finally seems to figure this out based on cfg attributes so we don't have to generate the redundant doc comments any longer. https://github.com/rust-lang/rust/issues/43781
Unfortunately, formatting is not that great.

You also need to combine doc into all cfg attributes using #[cfg(any(doc, feature = "Win32"))] instead of just #[cfg(feature = "Win32")]. That's pretty lame.

I'm not objecting to that. I'm uncomfortable with having the documentation reflect a potentially simpler future world before it exists. Until we're there, the documentation should reflect the current state, with feature complexity and all.

Sure, but somebody has to support that "current state" until some "future world" where cargo doc and https://docs.rs/ supports the windows crate and I'm just not sure that should be on the windows crate. 😊

cargo doc has a new doc_auto_cfg feature that finally seems to figure this out based on cfg attributes so we don't have to generate the redundant doc comments any longer. rust-lang/rust#43781
Unfortunately, formatting is not that great.

cc @GuillaumeGomez Improving the formatting seems actionable?

Done.

To be more exact: https://github.com/rust-lang/rust/issues/118615

Sure, but somebody has to support that "current state" [...] and I'm just not sure that should be on the windows crate. 😊

That's understood, and ideally, it shouldn't be. Realistically, though, the windows team is the only entity that can make up for the shortcomings at this time. No good deed goes unpunished, they say.
The output generated from the doc_auto_cfg feature is a regression compared against even the current state:

Features aren't enclosed in quotation marks, so we must manually add them.
Features aren't comma-separated, so more editing is required after copy-pasting them over.
The list of features is correct as far as the compiler is concerned, but it doesn't much help users: For OutputDebugStringW only "Win32_System_Diagnostics_Debug" needs to be enabled, with "parent features" getting enabled automatically.

Just to let you know, I'm not asking you to change things or take on responsibility for someone else's shortcomings. I'm just a user providing feedback on what works and what doesn't.

@fgimian Working on it, sorry for the delay. Here's a temporary tool you can use to unblock you: https://riverar.github.io/4f76cc1e-88ae-41d3-906e-3591c67d2366/

@fgimian Working on it, sorry for the delay. Here's a temporary tool you can use to unblock: https://riverar.github.io/4f76cc1e-88ae-41d3-906e-3591c67d2366/
We're working on standing this up next to the official docs shortly.

Thank you so so much for this mate, really appreciate it!! 😄

I published the docs for windows 0.53.0 with the new feature search link:
https://microsoft.github.io/windows-docs-rs/doc/windows/


fix bug in parallel learning

ping @imatiach-msft

BTW, this is a temporary fix, and will increase communication cost.
It needs more works to reduce the communication cost, and i will try it recently.

@guolinke let me try this branch right now to see if it fixes the issue

@guolinke getting error on build:
/home/ilya/LightGBM/src/treelearner/data_parallel_tree_learner.cpp: In member function ‘void LightGBM::DataParallelTreeLearner<TREELEARNER_T>::Split(LightGBM::Tree*, int, int*, int*)’:
/home/ilya/LightGBM/src/treelearner/data_parallel_tree_learner.cpp:281:5: error: ‘smaller_leaf_splits_’ was not declared in this scope
smaller_leaf_splits_->Init(*left_leaf, this->data_partition_.get(),
^
/home/ilya/LightGBM/src/treelearner/data_parallel_tree_learner.cpp:284:5: error: ‘larger_leaf_splits_’ was not declared in this scope
larger_leaf_splits_->Init(*right_leaf, this->data_partition_.get(),
^
/home/ilya/LightGBM/src/treelearner/data_parallel_tree_learner.cpp:289:5: error: ‘smaller_leaf_splits_’ was not declared in this scope
smaller_leaf_splits_->Init(*right_leaf, this->data_partition_.get(),
^
/home/ilya/LightGBM/src/treelearner/data_parallel_tree_learner.cpp:292:5: error: ‘larger_leaf_splits_’ was not declared in this scope
larger_leaf_splits_->Init(*left_leaf, this->data_partition_.get(),
^

oh, I think it should be this->larger_leaf_splits_->…
let me try that..

that seems to have fixed it, I can build now

this fixed almost all tests except two:

[LightGBM] [Fatal] Check failed: (best_split_info.right_count) > (0) at /home/ilya/LightGBM/src/treelearner/serial_tree_learner.cpp, line 713 .
20/03/01 22:28:57 WARN LightGBMClassifier: LightGBM reached early termination on one worker, stopping training on worker. This message should rarely occur
[LightGBM] [Fatal] Socket recv error, code: 104
20/03/01 22:28:57 WARN LightGBMClassifier: LightGBM reached early termination on one worker, stopping training on worker. This message should rarely occur
364 was not less than 0
ScalaTestFailureLocation: com.microsoft.ml.spark.lightgbm.split1.VerifyLightGBMClassifier$$anonfun$17 at (VerifyLightGBMClassifier.scala:289)
org.scalatest.exceptions.TestFailedException: 364 was not less than 0
and another test with similar failure:
[LightGBM] [Fatal] Check failed: (best_split_info.left_count) > (0) at /home/ilya/LightGBM/src/treelearner/serial_tree_learner.cpp, line 709 .
20/03/01 22:28:59 WARN LightGBMClassifier: LightGBM reached early termination on one worker, stopping training on worker. This message should rarely occur
[LightGBM] [Fatal] Socket recv error, code: 104
20/03/01 22:28:59 WARN LightGBMClassifier: LightGBM reached early termination on one worker, stopping training on worker. This message should rarely occur
[LightGBM] [Info] Finished linking network in 0.676823 seconds
[LightGBM] [Info] Finished linking network in 0.257676 seconds
20/03/01 22:29:01 WARN LightGBMClassifier: LightGBM worker encountered empty partition, for best performance ensure no partitions empty
20/03/01 22:29:01 WARN LightGBMClassifier: LightGBM worker encountered empty partition, for best performance ensure no partitions empty

"BTW, this is a temporary fix, and will increase communication cost.
It needs more works to reduce the communication cost, and i will try it recently."
@guolinke no rush, this is not urgent at all, please take your time to resolve the issue properly.
I just encountered this when trying to fix (https://github.com/microsoft/LightGBM/issues/2615), but then I noticed it was not due to my changes but rather latest master, and then I noticed other users had this issue or some similar errors as well.

@imatiach-msft it seems the error is raised for nodes without any data?

@guolinke good catch, in the second test one of the two partitions are empty on the two models that are compared (for one of 3 metrics), but this shouldn't error out as I just exclude those partitions during training.  I don't think the first test had an empty partition.  I've tried running the second test several times and I'm seeing surprisingly inconsistent behavior that I don't have a firm grasp on.  Sometimes it is failing on the metric validation logic, sometimes it is passing, and sometimes it is just getting stuck.

for past 3 runs I am seeing it getting stuck, this is the sample output in case it helps:
Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties
20/03/01 23:11:50 WARN Utils: Your hostname, ilya-Virtual-Machine resolves to a loopback address: <IP_ADDRESS>; using <IP_ADDRESS> instead (on interface eth1)
20/03/01 23:11:50 WARN Utils: Set SPARK_LOCAL_IP if you need to bind to another address
20/03/01 23:11:50 INFO SparkContext: Running Spark version 2.4.3
20/03/01 23:11:51 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
20/03/01 23:11:51 INFO SparkContext: Submitted application: VerifyLightGBMClassifier
20/03/01 23:11:51 INFO SparkContext: Spark configuration:
spark.app.name=VerifyLightGBMClassifier
spark.driver.maxResultSize=6g
spark.logConf=true
spark.master=local[*]
spark.sql.shuffle.partitions=20
spark.sql.warehouse.dir=file:/home/ilya/mmlspark/spark-warehouse
20/03/01 23:11:51 INFO SecurityManager: Changing view acls to: ilya
20/03/01 23:11:51 INFO SecurityManager: Changing modify acls to: ilya
20/03/01 23:11:51 INFO SecurityManager: Changing view acls groups to:
20/03/01 23:11:51 INFO SecurityManager: Changing modify acls groups to:
20/03/01 23:11:51 INFO SecurityManager: SecurityManager: authentication disabled; ui acls disabled; users  with view permissions: Set(ilya); groups with view permissions: Set(); users  with modify permissions: Set(ilya); groups with modify permissions: Set()
20/03/01 23:11:51 INFO Utils: Successfully started service 'sparkDriver' on port 46778.
20/03/01 23:11:51 INFO SparkEnv: Registering MapOutputTracker
20/03/01 23:11:51 INFO SparkEnv: Registering BlockManagerMaster
20/03/01 23:11:51 INFO BlockManagerMasterEndpoint: Using org.apache.spark.storage.DefaultTopologyMapper for getting topology information
20/03/01 23:11:51 INFO BlockManagerMasterEndpoint: BlockManagerMasterEndpoint up
20/03/01 23:11:51 INFO DiskBlockManager: Created local directory at /tmp/blockmgr-dd840be0-c16c-4668-8b62-3a2480c97b70
20/03/01 23:11:52 INFO MemoryStore: MemoryStore started with capacity 1257.9 MB
20/03/01 23:11:52 INFO SparkEnv: Registering OutputCommitCoordinator
20/03/01 23:11:52 INFO Utils: Successfully started service 'SparkUI' on port 4040.
20/03/01 23:11:52 INFO SparkUI: Bound SparkUI to <IP_ADDRESS>, and started at http://<IP_ADDRESS>:4040
20/03/01 23:11:52 INFO Executor: Starting executor ID driver on host localhost
20/03/01 23:11:52 INFO Utils: Successfully started service 'org.apache.spark.network.netty.NettyBlockTransferService' on port 36297.
20/03/01 23:11:52 INFO NettyBlockTransferService: Server created on <IP_ADDRESS>:36297
20/03/01 23:11:52 INFO BlockManager: Using org.apache.spark.storage.RandomBlockReplicationPolicy for block replication policy
20/03/01 23:11:52 INFO BlockManagerMaster: Registering BlockManager BlockManagerId(driver, <IP_ADDRESS>, 36297, None)
20/03/01 23:11:52 INFO BlockManagerMasterEndpoint: Registering block manager <IP_ADDRESS>:36297 with 1257.9 MB RAM, BlockManagerId(driver, <IP_ADDRESS>, 36297, None)
20/03/01 23:11:52 INFO BlockManagerMaster: Registered BlockManager BlockManagerId(driver, <IP_ADDRESS>, 36297, None)
20/03/01 23:11:52 INFO BlockManager: Initialized BlockManager: BlockManagerId(driver, <IP_ADDRESS>, 36297, None)
[LightGBM] [Warning] Set TCP_NODELAY failed
[LightGBM] [Warning] [LightGBM] [Info] Trying to bind port 12402...
[LightGBM] [Info] Binding port 12402 succeeded
Set TCP_NODELAY failed
[LightGBM] [Info] Trying to bind port 12406...
[LightGBM] [Info] Binding port 12406 succeeded
[LightGBM] [Warning] Set TCP_NODELAY failed
[LightGBM] [Info] Listening...
[LightGBM] [Info] Listening...
[LightGBM] [Warning] [LightGBM] [Warning] Set TCP_NODELAY failed
Set TCP_NODELAY failed
[LightGBM] [Warning] Set TCP_NODELAY failed
[LightGBM] [Info] Connected to rank 1
[LightGBM] [Info] Connected to rank 0
[LightGBM] [Info] Local rank: 0, total number of machines: 2
[LightGBM] [Info] Local rank: 1, total number of machines: 2
[LightGBM] [Warning] metric is set=, metric= will be ignored. Current value: metric=
[LightGBM] [Warning] metric is set=, metric= will be ignored. Current value: metric=
[LightGBM] [Warning] [LightGBM] [Warning] Starting from the 2.1.2 version, default value for the "boost_from_average" parameter in "binary" objective is true.
This may cause significantly different results comparing to the previous versions of LightGBM.
Try to set boost_from_average=false, if your old models produce bad resultsStarting from the 2.1.2 version, default value for the "boost_from_average" parameter in "binary" objective is true.
This may cause significantly different results comparing to the previous versions of LightGBM.
Try to set boost_from_average=false, if your old models produce bad results
[LightGBM] [Info] Number of positive: 98, number of negative: 779
[LightGBM] [Info] Number of positive: 98, number of negative: 779
[LightGBM] [Warning] Auto-choosing col-wise multi-threading, the overhead of testing was 0.001073 seconds.
You can set force_col_wise=true to remove the overhead.
[LightGBM] [Info] Total Bins 62
[LightGBM] [Info] Number of data points in the train set: 459, number of used features: 11
[LightGBM] [Warning] Auto-choosing row-wise multi-threading, the overhead of testing was 0.003119 seconds.
You can set force_row_wise=true to remove the overhead.
And if memory is not enough, you can set force_col_wise=true.
[LightGBM] [Info] Total Bins 62
[LightGBM] [Info] Number of data points in the train set: 418, number of used features: 11
[LightGBM] [Info] [binary:BoostFromScore]: pavg=0.105263 -> initscore=-2.140066
[LightGBM] [Info] [binary:BoostFromScore]: pavg=0.117647 -> initscore=-2.014903
[LightGBM] [Info] Start training from score -2.077485
[LightGBM] [Info] Start training from score -2.077485
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
[LightGBM] [Fatal] Check failed: (best_split_info.left_count) > (0) at /home/ilya/LightGBM/src/treelearner/serial_tree_learner.cpp, line 709 .
20/03/01 23:12:02 WARN LightGBMClassifier: LightGBM reached early termination on one worker, stopping training on worker. This message should rarely occur
[LightGBM] [Info] Finished linking network in 0.254094 seconds

sorry, just realized the test is using rand() in several places without a seed, which is causing random partitioning of data.  I think that accounts for why the behavior is so different from run to run.  I will add a seed to make it reproducible in the same way every time.

@imatiach-msft I update another fix, could you try it again?

@guolinke yes, this PR seems to have fixed all of the issues, thank you for the quick fix!

I do still see one test fail but I think it is a different issue, I will just ignore it for now and will look into it later


Antistasi Official Community Test report

Hello LordGolias!
We tried your version today on the server with 6 ppl connected
CBA+TFAR
and one Headlessclient with ofcourse same mods , just forgot to disable battleye.
Your spawning/resoruce sharing script is impressive, with 460 AI server dropped to 42 FPS and we were on an average of 30 and above. Units could shoot back even if a bit retarded in movements but that might be UPS + multiple factors. Consider I really care about performances so that in 1.7.13 i'm reducing enemies everywhere to keep the enemies below 200 ofcourse also by asking people to don't roam randomly.
Here's some issues we've found

can't respawn with spacebar nor other keys like R

when respawn start working i appear looking myself from above and unable to do anything, body is standing and with arms spreaded, the only way to respawn is to abort and changeclass

Enemy units dies and then they wake up again, some of them are invulnerable

Kavala wasn't spawning completly as it did in SP (at the end of RPT you might see that, if there is something about because i reproduced that before leaving)

Pyrgos wasn't spawning completly and the base was totally empty

After dieing, in the Arsenal there is an unlimited amount of the weapon i had scavenged before dieing.

We're really interested into you spawning script&macro, i hope we can arrange a chat! (voip.a3antistasi.com)
Really impressive job!
Kind Regards
Stef
Antistasi Official Community
OfficialAntistasiLordGoliastest_x64_2017-09-06_16-42-25.txt

Restarted without Battleye, i'm terribly sorry but at least the Pyrgos and Kavala spawing look working correctly. So please ignore what's above i'm going to do the tests again.

First of all, thank you very much for testing this version and reporting back the results. I never ran it with more than 1 client, so I am as amazed as you by these benchmark results!
Regarding the different issues, the most critical is the respawn error. The enemies not dying is #23. The one on the arsenal I am amazed. Could you describe in more detail how would anyone reproduce that error?


[Feature request] spm parameter

The spm parameter is used on websites operated by Alibaba and its related companies. Here are some documentation (in Chinese):

https://www.zhihu.com/question/62813754
http://bigdata.taobao.com/docs/doc.htm?treeId=1&articleId=101782&docType=1 (this doc might be outdated)

I'll summary some in English:

spm stands for super position model, it's basically the same as the utm_ parameters used by Google Analytics.
For example the URL https://cn.aliyun.com/about?spm=5176.8142029.631162.about.702b614aLj4URY, it contains the spm parameter, and its value is 5176.8142029.631162.about.702b614aLj4URY.

spm parameter is formatted like this: spm=spmA.spmB.spmC.spmD.spmE
spmA identifies a website;
spmB identifies a page on that website;
spmC identifies a block on that page;
spmD further identifies a specific position in that block;
spmE is a random string generated with current time, which could distinguish visits of the same link from each other by time;

You could visit website of Aliyun or Aliexpress to see the spm parameter in action. I really like this extension for its simplicity and effectiveness to block utm and other tracking parameters, and I hope you could consider adding spm to that list too.
I forked this repository and found the right file to modify, but unfortunately I have not yet figured out how to build it. Maybe you could add some instructions about building the extension to README, if you have time?
Thank you again for this amazing extension.

Forgot to mention a detail: for some websites (e.g., Aliyun), the href of links on the webpage is normal (without spm parameter), they use Javascript to generate and add the parameter on the fly, at the time you click (or right click) a link.

Hey @JokerQyou thanks for the kind words and the great info you provided for this tracker!
I've gone ahead and added support for the spm tracker via https://github.com/newhouse/url-tracking-stripper/pull/39 and will be available shortly in version 4.1.1. I think this should solve even the on-the-fly Javascript-generated parameters because the extension works via the webNavigation and webRequest APIs, as opposed to monitoring for click events on elements (with the exception of the right-click Copy and Clean Link, where these Javascript changes should not matter). Please let me know if you find anything weird.
I've also updated the README to help developers figure out how to get it running so they can contribute!


Feature/local examples

This PR moves all examples from the dedicated repository to this repository. We can then remove the examples repository in the future.
Additionally a separate PR in the LM site repo can read these examples and use them on the site.
This PR will allow us to in the future more easily update examples for features that were changed, or examples for newly added features.

Looks good overall, a little difficult to say yay or nay because there is so much that changed. That said it's something we've both known needed to happen. So go ahead and merge it imo 😊


Question about building VINS-Fusion with GPU support using OpenCV 4.6.0

I'm trying to build VINS-Fusion with GPU support using OpenCV 4.6.0, but I'm encountering some difficulties. Specifically, I'm unsure about the correct configuration and build steps required to enable GPU acceleration with OpenCV 4.6.0.
I've already followed the installation instructions for VINS-Fusion and have successfully built it without GPU support. However, I'm not sure how to incorporate OpenCV 4.6.0 with CUDA support into the build process to enable GPU acceleration.
Could someone provide guidance or pointers on how to correctly configure and build VINS-Fusion with GPU support using OpenCV 4.6.0?
Environment:
Operating System: Ubuntu 20.04
OpenCV Version: 4.6.0
CUDA Toolkit Version: 11.4
Model: jetson xevier nx

@ranjithlesoko Hi.
I want to first ask you if you followed all instructions written in this repository's readme.
There already I wrote how to install OpenCV with CUDA, cv_bridge after CUDA+OpenCV, and VINS-Fusion-Gpu version at:
https://github.com/engcang/vins-application?tab=readme-ov-file#-opencv-with-cuda-and-cudnn
https://github.com/engcang/vins-application?tab=readme-ov-file#-cv_bridge-with-built-opencv-necessary-for-whom-built-opencv-manually-from-above
https://github.com/engcang/vins-application?tab=readme-ov-file#-vins-fusion-1

@engcang   i have reviewed the README file detailing how to build VINS-Fusion with GPU support using OpenCV 3, but I am specifically interested in instructions for integrating VINS-Fusion with GPU acceleration using OpenCV 4.6.

@engcang  I'm experiencing low frame rates (5-8 fps) when using VINS-Fusion on my Jetson, and I've noticed drifting in the IMU measurements. How can I address these issues for smoother performance and more accurate pose estimation?

@engcang  ?


Class https://spec.edmcouncil.org/fibo/ontology/SEC/Funds/Funds/CollectiveInvestmentVehicle is unsatisfiable

Dear all,
my name is Livio Robaldo and I am a researcher in Computational Law at the Legal Innovation Lab Wales at Swansea University. I am new to this community, I started using FIBO as we have a research collaboration with an industrial partner working in the fund investment domain. I'm glad to contribute to FIBO development.
I found out that the class CollectiveInvestmentVehicle is unsatisfiable, meaning that the ontology is consistent only when the extension of this class is the empty set. As such, the class is not much useful. In fact, Suppose we add an individual "test" to this class:

"test rdf:type CollectiveInvestmentVehicle"

Then, since there are these two restrictions on the class CollectiveInvestmentVehicle:

"CollectiveInvestmentVehicle SomeValuesFrom[fundHasRelatedParty FundsProcessingParty]"
"CollectiveInvestmentVehicle SomeValuesFrom[hasFundIdentification OrganizationIdentifier]"

"test" is associated with other two individuals in FundsProcessingParty and OrganizationIdentifier. These are not explicitly asserted (but the ontology is nonetheless consistent because of the Open World Assumption), so for the sake of explanation let me simply call them unk1 and unk2. It holds:

"unk1 rdf:type FundsProcessingParty"
"unk2 rdf:type OrganizationIdentifier"
"test fundHasRelatedParty unk1"
"test hasFundIdentification unk2"

Now, since it holds:

"fundHasRelatedParty SubObjectPropertyOf hasRelatedPartyInRole"
"hasRelatedPartyInRole rdfs:domain PartyInRole"
"PartyInRole rdfs:subClassOf AgentInRole"

"test" is inferred as a member of the class AgentInRole:

"test rdf:type AgentInRole"

On the other hand, since it also holds:

"hasFundIdentification SubObjectPropertyOf isIdentifiedBy"
"isIdentifiedBy InverseObjectProperties identifies"
"OrganizationIdentifier ExactCardinality_1[identifies Organization]"

"test" is also inferred as member of the class "Organization" (this does not appear to be correct, of course, "test" is a CollectiveInvestmentVehicle):

"test rdf:type Organization"

In fact, if "unk2" is an "OrganizationIdentifier", "unk2" identifies "test", and an organization identifier can identify exactly one organization, "test" must necessarily be an organization.
Now the ontology is inconsistent because it holds:

"Organization rdfs:subClassOf IndependentParty"
"IndependentParty owl:disjointWith AgentInRole"

In other words: "test" cannot be an IndependentParty and an AgentInRole at the same time.
To fix the error, I suggest to remove this restriction:

"CollectiveInvestmentVehicle SomeValuesFrom[hasFundIdentification OrganizationIdentifier]"

A CollectiveInvestmentVehicle should be not identified with an OrganizationIdentifier...
===================
I found out that CollectiveInvestmentVehicle is unsatisfiable by adding individuals to the ontology (I'm using NLP to extract data from financial documents and populating the ontology, i.e., entity linking) and then by running the HermiT reasoner. By the way, HermiT takes half a day to explain the inconsistency, as the ontology is very big, so maybe I/we should use a faster reasoner...
However, it is likely that there are other unsatisfiable classes. I see you defined some "hygiene tests", maybe you can add one to search for unsatisfiable classes by adding dummies individuals in the ontology.
Hope this helps
Livio

Hi Livio,
This is a nice catch.  The Funds ontology is a recent addition to the set of released ontologies, and we have not yet had the bandwidth to test it extensively.  I'll add this to our queue to fix.  Although your idea of adding test data is a good one, and we've done this for some cases, with examples, we haven't had the resources to build out test data for every class.  I don't see that happening any time soon, but appreciate the thought and that you found this.
Best,
Elisa

Also, if you would like to get involved, we have 3 working groups that meet weekly - securities (which this falls under), derivatives, and indices and indicators.  I'd be happy to invite you to any of them - just let me know what interests you the most (or all 3 if you have the bandwidth).  Thanks!

Dear Elisa,
Sure, I'm happy to help building the ontology about "securities", but I'm not much knowledgeable of the domain: I'm an IT guy, expert in NLP and KR, I'm not a financial advisor expert in the investment funds domain. Thus, I don't know how much I can truly help to model knowledge in this domain... and you say that the working group has a bandwidth, do you mean there is a cap on the max number of participants? Nevertheless, for sure I can help on the IT side, as I want to use the ontology: whenever I catch inconsistencies or redundancies I will let you know.
On the other hand, as you can see in the discussions section, I would like to know if FIBO is concerned with the mapping between concepts and texts. I see there are (few) datatype properties to connect concepts with textual spans, but indeed a real application would need more. For instance, the individuals in FundProspectus should be associated with the several sections in a prospectus or a KIID (objective and investment policy section, risks sections, etc.).
Thanks
Livio

@liviorobaldo Hi Livio,
I've spent a bit of time debugging this, and it looks like the latest version of the ontology does not include these restrictions.  We've modified the representation of CollectiveInvestmentVehicle, probably more recently than the version you downloaded, and these restrictions are no longer there.  There is one thing that may be an issue, which is that PooledFund is a subclass of FinancialAsset - theoretically one can create a fund before it has investors, though most funds and managed investments are only of interest once they do have investors.  If you found this in the Q1 2021 production release, that wouldn't surprise me, but we've made a few revisions since to clean things up.  Those revisions will be published officially in the Q2 2021 release, but you could download the latest version from GitHub to see the changes.  If you have the bandwidth to do so, would you please use the latest version in GitHub and retry your test with respect to creating individuals - that would be very helpful to us, and we would be happy to address any outstanding issues.
There are other folks using FIBO with NLP, or at least are experimenting with it, including vendors, but I am not aware that any of them have provided use cases back to us.  We recently addressed an issue to expand our representation of contract, for example, to include some additional standard clauses and the relationships to those.  To my knowledge no one has asked for the same with respect to Prospectus, and we would need an attorney or two as subject matter experts in securities issuance to assist us with that.
We will add you to the meeting invitation for SEC - we're taking a break for the U.S. Memorial Day holiday next week, so our next meeting will be on June 7th.  Happy to have you participate.
Best regards,
Elisa

Dear Elisa,
I'm afraid I didn't understand much of what you wrote in the first part of your message :-(
I downloaded the ontology from here:
https://edmconnect.edmcouncil.org/fibointerestgroup/fibo-products/fibo-owl
As I read "FIBO Development is published in real-time as changes are incorporated by the FIBO Community and consists of a draft as well-vetted content".
Which ontology should I download instead?
Thanks
Livio

Hi Livio,
For fully vetted ontologies on that same link, you should download the FIBO production ontologies rather than development.  We guarantee that the production versions are logically consistent, but there is no such guarantee with the development version.  The most recent production version was published at the end of Q1 2021, so either on March 31 or shortly thereafter.  There is less content, as you might expect, but the terms and definitions have at least been reviewed and the ontologies are consistent.  If you want "everything", warts and all, and not guaranteed to be consistent, feel free to use the development version, but as I said there is no guarantee that they are consistent, or even that the extensions will remain in the same structure or form that you find them over time.  You can tell if an individual ontology is part of the production version if the maturity annotation has a value of Release, fyi.
If you would like to learn more about what we have in GitHub and how to load those ontologies in Protege, etc., please don't hesitate to ask - I'm happy to share more.
Best,
Elisa

Dear Elisa,
Thanks a lot for the explanation! I am loading the ontologies on Protege already, as well as on Java to populate them.
Livio


Is there any open source java code for extracting tables data from PDF.

Is there any open source java code for extracting tables data from PDF.  I am not able to get any code in java for extracting Table data from PDF and writing it in csv file using Tabula jar provided. Is there any documentation for the same? If yes, then please upload the same as we require it at the earliest. I don't need any GUI. I just need the Classes and methods which perform the desired tasks.
Regards,
Abhinav Das

https://github.com/tabulapdf/tabula-java


Sync icons with<EMAIL_ADDRESS>

This PR syncs the icons with the latest version of @tabler/icons released at the time of writing this.
Reference: https://github.com/tabler/tabler-icons/releases/tag/v1.60.0

Thanks!


Setting Height of Element by target(should consider/detect byRow)

Hello Guys
I am trying to set the height of some divs to a specific target. At the first I am setting the height for the prospective target div.
$('.wrapper').matchHeight();
Now I want to set the height of my other divs by the height of the wrapper element. So I use the target option:
$('.kennzahlen > .dekobild').matchHeight({       target: $('.wrapper')   });
This works only for the first row. It always takes the height of the first wrapper element he finds. It doesn't consider the height of the wrapper per row. Is it possible to achieve this somehow?

This is the expected behaviour of the target option, it sets every selected element to the first matched target element. There's currently no built in option for target to work by row.
You should maybe take a look at the rows function and make a copy, then iterate the rows and apply matchHeight to the row with the target selected from the row.

Thanks for your answer.
I have tried this, but this doesn't really work:
var rows = $.fn.matchHeight._rows($('.wrapper'));
$.each(rows, function(i, row) {
row.matchHeight();
 row.parent().siblings(".kennzahlen > .dekobild").matchHeight({target: row});
});
My Markup looks like this:

I'm having this same issue.
How do I set a target per row? Basically in each row I want to use the column on the right.
When I do this:
$('.matchheight-target').matchHeight({
    target: $('.match-this-one')
});

It matches that first initial $('.match-this-one') for every row. I want each row to match the .match-this-one in it's specific row.

@Nukro I think you were close.
Here's what I did that worked:
var rows = $.fn.matchHeight._rows($('.row'));

	$.each(rows, function(i, row) {
		$matchTarget = row.closest('.wrap').find('.row-match');
		row.matchHeight({
			target: $matchTarget
		});
	});

And html would look like this:

        Some Content

        Some Other Content


Add a full rules list for linting

The "code quality" check for Pull Requests (done by Codacy) is trying to enforce some linting rules but there's no linting rules in the repo.
I added a basic .eslintrc in #101 but we should decide on a full linting rule list.
I would suggest we use ESLint, with either the "semistandard" or "AirBnb" rules.

I would like to work on this

created PR #105

made requested changes

switched travis config file to run yarn instead of npm

Completed in #105

Thanks for tackling this @dhuang612! 🎉


FYI, Jetty build was failing due to some github urls being invalid.. I upgraded the version and it seems to build OK:
    jetty_version=9.4.27.v20200227 \
    jetty_hash=6b683193067cd55c27b867f892a30e832d4e29a3 \

Sorry, simply upgrading jetty does not work!

@nielsen-at-cgt We just fixed the issues related to both central.maven.org doesn't exist and Jetty repo broken for Shibboleth IdP and SP based on Unicon's Shibboleth IdP and SP Docker image which have been cited in README.
Error when building the idp dockerfile: Resolving central.maven.org (central.maven.org)... failed: Name or service not known.
#2
Quote the answer to Issue Jetty crashes when running the idp #4

I have validated all the the three (3) projects with the latest commit (i.e., commit #21) based on README tutorial by git clone the github repository (i.e., git clone https://github.com/winstonhong/Shibboleth-SAML-IdP-and-SP) on brand-new Ubuntu 18.04.

https://github.com/winstonhong/Shibboleth-SAML-IdP-and-SP


Download dataset

hi three,
i was trying to download the dataset (pckl) files from the URLs you attached but it seems that the links are invalid.

Check this answer: https://github.com/jianfa/RecipeSnap-a-lightweight-image-to-recipe-model/issues/1#issuecomment-1427085275

iam trying to train the model again not using the existing checkpoints, so I was wondering where can I find the train.pkl
and all the necessary files to be able to train the model?
thanks in advance

I saved train.pk in Google Cloud. Unfortunately, it was removed after I canceled the subscription. You can train from the start by downloading the training data and snapshot from https://github.com/amzn/image-to-recipe-transformers.


negative or zero time delta assertion error from circle commands

Some G2 commands are throwing assertion errors. For example:
----- Hardware not detected, using virtual environment -----
----- Use M111 command to enable more detailed debug -----
*************** Welcome to PyCNC! ***************
> G0 X11 Y9
OK
> G2 X10 Y10 I-2 J-1
Traceback (most recent call last):
  File ".\cnc\main.py", line 72, in <module>
    main()
  File ".\cnc\main.py", line 64, in main
    do_line(line)
  File ".\cnc\main.py", line 33, in do_line
    res = machine.do_command(g)
  File "c:\workspace\pycnc\cnc\gmachine.py", line 365, in do_command
    self._move_circular(delta, radius, velocity, CW)
  File "c:\workspace\pycnc\cnc\gmachine.py", line 241, in _move_circular
    hal.move(gen)
  File "c:\workspace\pycnc\cnc\hal_virtual.py", line 139, in move
    assert dy > 0, "negative or zero time delta detected for y"
AssertionError: negative or zero time delta detected for y

I'm using python3. All tests are passing locally.
I experimented with hal_virtual and it looks like the time delta is zero for the last part of the move, but I can't tell why.

That error means that next pulse for stepper should be triggered at the same discrete moment of time as the previous one.
Workaround for this issue - decrease movement speed, change motors with less steps per mm or change stepper drivers microsteps for something not so precise. Like 1/32 to 1/16.
If you need such speed with such microsteps, then you would need to go into source and increase buffer size for movements and decrease DMA divider. But in this case circular interpolation calculation might go beyond CPU capabilities of RPi.


Do not consider indexes in deleted pentagon subsequences to be valid

These indexes should never be generated by the H3 library, and it doesn't appear to be defined what cell they refer to.
See #147

Coverage remained the same at 100.0% when pulling 49c8a4be4c62f8bedc43908d958bc66fd63309f4 on isaacbrodsky:invalid-pentagon-deleted into 4b93211afce157928a385165e6ef2262ec71ab5d on uber:master.


[SPARK-10001][Core] Don't short-circuit actions in signal handlers

What changes were proposed in this pull request?
The current signal handlers have a subtle bug that stops evaluating registered actions as soon as one of them returns true, this is because forall is short-circuited.
This PR adds a strict mapping stage before evaluating returned result.
There are no known occurrences of the bug and this is a preemptive fix.
How was this patch tested?
As with the original introduction of signal handlers, this was tested manually (unit testing with signals is not straightforward).

Test build #57188 has started for PR 12745 at commit 7fe0e54.

Test build #57188 has finished for PR 12745 at commit 7fe0e54.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/57188/
Test FAILed.

looks like a flaky test
jenkins, retest this please

@jodersky this really isn't a hot fix. Can you remove that label?

Test build #2898 has started for PR 12745 at commit 7fe0e54.

removed the label, sorry about that

Test build #57213 has started for PR 12745 at commit 06f83cc.

Test build #2898 has finished for PR 12745 at commit 7fe0e54.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test build #57213 has finished for PR 12745 at commit 06f83cc.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merging in master. Thanks.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/57213/
Test PASSed.


When the transient high traffic impacts, the memory usage of the internal buffer pool of Logrus is high.

In our production environment, when the transient high traffic impact occurred, we found that the memory occupied by the buffer pool inside Logrus could not be released quickly.
// entry.go 246 - 255
...
	entry.fireHooks()

	buffer = bufferPool.Get().(*bytes.Buffer)
	buffer.Reset()
	defer bufferPool.Put(buffer)
	entry.Buffer = buffer

	entry.write()

	entry.Buffer = nil
...

Objects in the buffer pool are not cleaned up when released.

hello @edoger, that's actually the point of using a sync.Pool here in order to release the pressure on the garbage collector. I'm not sure if this common implementation is that efficient though.

@dgsb The actual situation is tested, and resetting the buffer before placing it in the pool can effectively alleviate this particular problem.
// entry.go
...
	entry.fireHooks()

	buffer = bufferPool.Get().(*bytes.Buffer)
	defer func () {
             buffer.Reset()
             bufferPool.Put(buffer)
         }()
	entry.Buffer = buffer

	entry.write()

	entry.Buffer = nil
...

I'm not sure to understand how it would solve the issue. As far as I understand the Reset method does not release the underlying storage.

@dgsb After resetting the buffer, the occupied memory can be quickly released by the GC. If you do not do this, the memory will be occupied until it is taken out of the pool again. After a system has a large traffic peak, if no subsequent requests arrive (For example, the service is degraded), the objects in the pool will not be used for a long time, then the log content they hold will always remain in memory.

We can try to do that, but what I understand from the documentation in bytes.Buffer, I'm not sure that the associated data memory can be reclaimed by the GC.
go doc bytes.Buffer.Reset
package bytes // import "bytes"

func (b *Buffer) Reset()
    Reset resets the buffer to be empty, but it retains the underlying storage
    for use by future writes. Reset is the same as Truncate(0).

@dgsb This code shows that the memory was released by the GC.
package main

import (
	"bytes"
	"fmt"
	"runtime"
)

func main() {
	buf := new(bytes.Buffer)
	max := 1024*1024*32
	mem := new(runtime.MemStats)
	runtime.ReadMemStats(mem)
	fmt.Println(mem.Alloc)
	for i := 0; i < max; i++ {
		buf.WriteByte('1')
	}

	runtime.ReadMemStats(mem)
	fmt.Println(mem.Alloc)

	buf.Reset()
	runtime.GC()
	runtime.ReadMemStats(mem)
	fmt.Println(mem.Alloc)
}

Output:
123592
51239344
122544

This code is similar to the scenario we encountered, the memory was not released quickly, and our alarm continued until the service was restarted. @dgsb
package main

import (
	"bytes"
	"fmt"
	"runtime"
	"sync"
	"time"
)

var pool = &sync.Pool{
	New: func() interface{} {
		return new(bytes.Buffer)
	},
}

func main() {
	max := 1024 * 1024
	mem := new(runtime.MemStats)
	runtime.ReadMemStats(mem)
	fmt.Println(mem.HeapAlloc, mem.Alloc)
	for i := 0; i < 50; i++ {
		buf := new(bytes.Buffer)
		for j := 0; j < max; j++ {
			buf.WriteByte('1')
		}
		pool.Put(buf)
	}
	runtime.ReadMemStats(mem)
	fmt.Println(mem.HeapAlloc, mem.Alloc)
	for {
		runtime.ReadMemStats(mem)
		fmt.Println(mem.HeapAlloc, mem.Alloc)
		time.Sleep(time.Second * 2)
	}
}

with your first example, I have the same output on memory usage with or without the Reset() call.

with your first example, I have the same output on memory usage with or without the Reset() call.

Yes, this program is too simple. The compiler or GC may be smart enough. I added a second program, which is actually the scene encountered.

Yes I've tried this one too, adding a Reset or not does not seem to have any impact

I didn't check the implementation of the bytes.Buffer type, but the documentation is quite explicit about keeping the underlying storage for future write.
We can add the Reset call in the defer function, but I guess that won't solve your problem.
I think that the buffer pool is too generic for everybody usage and we should provide somehow an interface which would allow to plug a specific free item list management.

@edoger what do you think about providing a system for the library consumer to implement its own free item list ?
Would that meet your need if you have strict memory constraint ?

@dgsb This may require defining a resettable interface and a buffer pool that can control the number of objects.

I don't think we need to do something to replace the bytes.Buffer object.
But we could definitely be able to make the bufferPool exchangeable with something else which provides a Put and Get interface.
Depending on your needs you may even implements something which does not keep track at of a free item pool/list. You may:

just allocate and unreference things
or implement a pool with a max number of object or a max number of buffer bytes
whatever you need

But having a sync.Pool for every use case does not seem flexible enough to me.

I didn't check the implementation of the bytes.Buffer type, but the documentation is quite explicit about keeping the underlying storage for future write.
We can add the Reset call in the defer function, but I guess that won't solve your problem.
I think that the buffer pool is too generic for everybody usage and we should provide somehow an interface which would allow to plug a specific free item list management system

The patch we are using in our production environment is to create a new buffer object every time, and discard it directly after use. Compared with the overhead of GC, the memory problem is more worthy of attention.
I checked some information, it is very necessary to do the necessary cleanup before the temporary object is put into the pool (the Reset method of the buffer creates a new slice, and the array referenced behind has not changed. May need further confirmation), after Go1.12, the life cycle of the objects in the pool has been extended.

I don't think we need to do something to replace the bytes.Buffer object.
But we could definitely be able to make the bufferPool exchangeable with something else which provides a Put and Get interface.
Depending on your needs you may even implements something which does not keep track at of a free item pool/list. You may:

just allocate and unreference things
or implement a pool with a max number of object or a max number of buffer bytes
whatever you need

But having a sync.Pool for every use case does not seem flexible enough to me. Because its a tradeoff between memory comsumption and cpu usage by the gc and not every body need to have the cursor put at the same place there.

Can we provide a setting option to control whether to use the buffer pool?

Can we provide a setting option to control whether to use the buffer pool?

Indeed, the current buffer pool implementation with the reset moved before the put would be the default configuration for the package.

@edoger please check #1145, it should help to let you configure/tune the buffer pool usage.
I've also added a buffer.Reset call before putting the buffer back in the pool when using the defaultPool, but I don't expect that will solve your issues.


[Task]: Implement the UI for Premium Tag Integrations in CE

UX/UI:

Include Salesforce, Zendesk, Slack, and JIRA as new integrations in the Datasources page, tagged as “Premium”.

Clicking there, we open a modal with information about premium and upgrading.
If the email domain is relevant Figma link

Provide a secondary CTA: Learn more about Premium (opens appsmith.com/pricing)
Provide a primary CTA: Schedule a call (opens a calendly llink - to be added)

If the email is not relevant Figma link

Display an Email field (pre-filled by Appsmith)
Provide a secondary CTA: Learn more about Premium (opens appsmith.com/pricing)
Provide a primary CTA: Submit (sends the information to Mixpanel/Segment)
After closing the modal, show a success toast message "Thank you! The Appsmith Team will contact you shortly."

Metrics:

PREMIUM_INTEGRATION_CTA: Number of users who clicked on a Premium Integration (Salesforce, Zendesk, Slack, JIRA) on the Datasources page
PREMIUM_MODAL_RELEVANT_LEARN_MORE: Number of users who saw the modal for relevant email domains and clicked on the Learn more button, with property: integration_name (e.g., Salesforce, Zendesk, etc.)
PREMIUM_MODAL_RELEVANT_SCHEDULE_CALL: Number of users who saw the modal for relevant email domains and clicked on the Schedule a call button, with property:  integration_name (e.g., Salesforce, Zendesk, etc.)
PREMIUM_MODAL_NOT_RELEVANT_SUBMIT: Number of users who saw the modal for non-relevant email domains and clicked on Submit, with properties:
integration_name
email
PREMIUM_MODAL_NOT_RELEVANT_LEARN_MORE: Number of users who saw the modal for non-relevant email domains and clicked on Submit, with properties:
integration_name
email

@carinanfonseca please validate the product requirements here.
@AmanAgarwal041 to add the estimations.

@AmanAgarwal041

Why are we using in-line styling for these new colours? Is this just for testing purposes?
Tag fonts-size should be 10px.
My advice to best-practices around accessibility is to enter tag text as "Soon" and "Premium" in the markup, then style with  text-transform: uppercase;. The all-caps rendition of this text is more of an aesthetic choice than a practical one.
Font-weight should be bold.
Not sure about embedding a <span> within a <span>. For best practices I'd suggest the tag itself to be a <div> with the inner text being a <span>. But this should be an engineering choice in the end.
Padding settings should be: padding: 6px 4px;


Amount indicator in initial page.

In the initial page, currently, it has Press Enter to Begin Press E to Edit List.
It should have something to indicate the amount of item in the list before user enters the randomization. Like Press Enter to Begin Press E to Edit List (123)

Can i take this one?


Fix: Correcting Syntax Issues on code-cleaning

Removing the MoveTo and the unneccessary closure is neat. There was an syntax issue. I fixed it.
Now it is running very well.

Let's keep the git commit history clean — start from a clean state on @DerDakon's branch, then add your correction as a separate commit.

I squashed that together and pushed it to master already, thx.


NOISSUE - Add Python SDK

Signed-off-by: Filip Bugarski<EMAIL_ADDRESS>

OK - I think we resolved everything, but that @fbugarski did not test setup / install of the package.
What I suggest at this point is that we merge this first implementation, and then open an issue for testing of the setup and pip installation, as well as for creating a release and uploading the package to PyPy.

Merged! Congrats @fbugarski!


Enhance Unit Tests with AI-Driven Mocking and Response Validation

AI-Powered Mocking in Tests:

Updated Mocking Techniques: Introduced MagicMock for simulating the HelpCoder.run method from the aider.coders module. This approach enhances the ability to test interactions with AI models by isolating and controlling the behavior of dependencies during unit tests.

Exception Handling Enhancement: Refined the test setup to ensure that the SwitchCoder exception is correctly raised and handled, verifying that the system reacts properly when switching coders.

Improved Initialization Test:

Initialization Verification: Added assertions to ensure that the Help class is correctly initialized with a non-null retriever. This ensures that the AI help system is set up properly before executing further tests.

Enhanced ask Method Testing:

Substantial Response Verification:

Updated the test_ask_without_mock method to assert that the response from the Help.ask method includes substantial content. This involves checking for specific keywords and ensuring a minimum length of the response, reflecting the AI’s capability to provide detailed and relevant information.

Content and Structure Validation:

Added checks to ensure that the response contains expected content related to "aider" and "ai", and to verify the presence of multiple <doc> entries. This validates that the AI help system returns comprehensive and structured responses.

Integration of AI Features:

AI Content Generation: Incorporated new AI-driven features into the Help class to simulate interactions with advanced models. This includes enhancing the testing of AI-generated content to ensure that the output meets quality and relevance standards.

These updates improve the robustness of the testing framework by ensuring that AI interactions are accurately simulated and validated, enhancing the reliability and effectiveness of the testing process.

This pull request introduces several important updates to the unit testing for the TestHelp class in our codebase. Firstly, a new mock object, help_coder_run, has been added to the setUpClass method. This mock is used to simulate and verify that the HelpCoder.run method is invoked correctly during the tests. It also ensures that the SwitchCoder exception is properly raised when expected, thus enhancing the robustness of our exception handling test and preventing potential issues in the help command functionality.
Additionally, the test_ask_without_mock method has been enhanced to perform more comprehensive testing. We have included additional assertions to validate the content returned by the ask method. Specifically, the test now checks for the presence of key terms such as aider, ai, and chat in the help content to ensure that the response is both relevant and substantial. Furthermore, we have added a check to verify that the response contains more than five <doc> entries, which helps confirm that the help content is complete and informative.
These improvements are aimed at increasing the reliability and accuracy of our unit tests, ensuring that the help functionality performs as expected and meets our quality standards. The enhanced tests will better capture any issues related to help content generation and handling, providing us with greater confidence in the stability of this part of the codebase.


Caller info should include the module

As discussed in https://github.com/orgs/autometrics-dev/discussions/42

[ ] Spec https://github.com/autometrics-dev/autometrics-shared/pull/74
[ ] Java https://github.com/jamsiedaly/autometricsj/issues/6
[ ] Typescript https://github.com/autometrics-dev/autometrics-ts/issues/89
[ ] C# https://github.com/autometrics-dev/autometrics-cs/issues/14
[x] Rust https://github.com/autometrics-dev/autometrics-rs/pull/127
[ ] Python https://github.com/autometrics-dev/autometrics-py/issues/62
[ ] Go https://github.com/autometrics-dev/autometrics-go/issues/62

We should also update "explorer" (as provided by the Autometrics CLI)  as well as the vscode extension.