feat: resolve refs in config

What/Why/How?
This allows using $ref in config files like this:
# redocly.yaml
seo:
  $ref: seo.yaml
rbac:
  $ref: rbac.yaml

⚠  When using the push command with $ref's in config file, user should explicitly upload all referenced files in the config using --files option.

[x] Resolve $refs in config files
[x] Add basic linting support
[x] Extend config node types to be linted
[x] Add basic support for VS Code extension
[x] Check compatibility with other tools (scout and portal)
[ ] ~Look into https://github.com/Redocly/redoc/issues/740#issuecomment-1670740699~ (is not related; better to be handled in a separate MR)

Also fixed a couple of issues with resolving refs and formatting the output.
Reference
Resolves https://github.com/Redocly/redocly-cli/issues/1219
Testing
Screenshots (optional)
Check yourself

[x] Code is linted
[x] Tested with redoc/reference-docs/workflows (internal)
[x] All new/updated code is covered with tests

Security

[x] Security impact of change has been considered
[x] Code follows company security practices and guidelines

The link checker started failing for some strange reason (Dockerhub responds with 429 status despite being available from the browser), even on the main branch. I'm not sure what caused that, but it's not related to the changes.
So I'm going ahead and merging this.


[WIP] Using msbuild to package FSharpPlus

Note also build status on appveyor:

Need to verify that the package is generated as it should.

I see all green. Is it Ok to merge on your side?

Well, we need to set it so that it includes the version in the build, right now it builds 1.0.0, so that needs to be fixed as well.

I see the error on the build. That’s because FSharpPlus is used to generate the docs.

But I don't get how that change cause that build failure ... since it changes the package prefix, does it also clean the folders perhaps?

Aa, yes, it was due to fiddling with the build script

The thing that looks wrong now is that for netstandard2.0 we probably want the FSharpPlus.BaseLib in that folder.

<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
 <metadata>
   <id>FSharpPlus</id>
   <version>1.0.0-CI00089</version>
   <title>FSharpPlus</title>
   <authors>Gusty</authors>
   <owners>Gusty</owners>
   <requireLicenseAcceptance>false</requireLicenseAcceptance>
   <licenseUrl>http://opensource.org/licenses/Apache-2.0</licenseUrl>
   <projectUrl>https://github.com/gusty/FSharpPlus</projectUrl>
   <description>F#+ is an overload library for F#.</description>
   <tags>f# FSharp Applicative Monad MonadTransformer Arrow Overloading</tags>
   <dependencies>
     <group targetFramework=".NETFramework4.5">
       <dependency id="FSharpPlus.BaseLib" version="1.0.0" exclude="Build,Analyzers" />
       <dependency id="FSharp.Core" version="4.2.3" exclude="Build,Analyzers" />
     </group>
     <group targetFramework=".NETStandard2.0">
       <dependency id="FSharpPlus.BaseLib" version="1.0.0" exclude="Build,Analyzers" />
       <dependency id="FSharp.Core" version="4.2.3" exclude="Build,Analyzers" />
     </group>
   </dependencies>
   <contentFiles>
     <files include="any/net45/App.config" buildAction="Content" />
     <files include="any/netstandard2.0/App.config" buildAction="Content" />
   </contentFiles>
 </metadata>
</package>

is how the nuspec found on appveyor looks like.

Oh I see, you mean that we can't embeds it for netcore ?

Well if there's nothing we can do about it we should merge it as it is. What do you think?

I tried to build in my computer. It works but I get some funny warnings:
C:\Repos\FSharpPlus\.paket\Paket.Restore.targets(179,5): warning : Description: The package version '1.0.0-1.0.0-CI00089' uses SemVer 2.0.0 or components of SemVer 1.0.0 .....

How are you building? the latest commits I've done is in order to tell msbuild about versionprefix and suffix, so at least the versions are as it should

Well, I just clean up everything, clone the repo and run build.
Do you get something different in yours?
If you want I can merge so we check with myget if the versions are ok.

I'm currently away from all windows computers, so I can't try it locally. Though you can check the build result from https://ci.appveyor.com/project/wallymathieu/fsharpplus-8q142/branch/pack_for_net45_on_nix and download the artifacts

< I'm currently away from all windows computers
Lucky you !!!
It looks good, no warnings. Honestly I don’t care about those warnings. If it’s ok for you we can merge.

As long as it's ok for you then merge :wink: I will see if I can figure out how msbuild pack works. Perhaps there is some flag to control the reference so that it is included as a private assembly

When running it locally on an old mac I get:
Done Building Project "/Users/mathieu/src/FSharpPlus/src/FSharpPlus/FSharpPlus.fsproj" (_GetFrameworkAssemblyReferences target(s)).
PaketOverrideNuspec:
  /Library/Frameworks/Mono.framework/Commands/mono --runtime=v4.0.30319 "/Users/mathieu/src/FSharpPlus/.paket/paket.exe" fix-nuspecs files "obj/Release/FSharpPlus.1.0.0-1.0.0-CI00089.nuspec;obj/Release/FSharpPlus.1.0.0-CI00089.nuspec;obj/Release/FSharpPlus.1.0.0.nuspec" project-file "/Users/mathieu/src/FSharpPlus/src/FSharpPlus/FSharpPlus.fsproj"
  Paket version 5.122.0
  Performance:
   - Runtime: 2 seconds
/Users/mathieu/src/FSharpPlus/.paket/Paket.Restore.targets(179,5): error : Directory "/Users/mathieu/src/FSharpPlus/src/FSharpPlus/obj/Release/FSharpPlus.1.0.0-1.0.0-CI00089.nuspec;/Users/mathieu/src/FSharpPlus/src/FSharpPlus/obj/Release/FSharpPlus.1.0.0-CI00089.nuspec;/Users/mathieu/src/FSharpPlus/src/FSharpPlus/obj/Release" not found. [/Users/mathieu/src/FSharpPlus/src/FSharpPlus/FSharpPlus.fsproj]
Done Building Project "/Users/mathieu/src/FSharpPlus/src/FSharpPlus/FSharpPlus.fsproj" (pack target(s)) -- FAILED.

so perhaps it's something that needs to be fixed in relation to paket

Most likely. But I will merge it in anycase because it builds and it (hopefully) create the nuget in myget which allows me to release.
I think you did a great job. Of course if you want to improve it, welcome.

Thanks! One way of solving it would be to publish a version of FSharpPlus.BaseLib on nuget...

Maybe is the only way to solve it.
Another way would be to get rid of it, but I don't know if we'll get the same performance for serializations because I think the BaseLib uses unsafe operations.

Myget still builds version CI00022 :
Verifying package source... Package source verification succeeded.
Initializing build environment... Build environment variables:   BuildRunner=MyGet   MsBuildExe=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\MSBuild.exe   GallioEcho=C:\Program Files\Gallio\bin\Gallio.Echo.exe   XUnit192Path=C:\Wonka\testrunners\xunit.runners.1.9.1\tools   XUnit20Path=C:\Wonka\testrunners\xunit.runner.console.2.0.0\tools   VsTestConsole=C:\Wonka\testrunners\VSTest.Console.12.0.30723.0\lib\vstest.console.exe   MsTestExe=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\MSTest.exe   SourcesPath=D:\temp\7b1633a   NuGet=C:\Wonka\nuget\NuGet.CommandLine\tools\NuGet.exe   NpmExePath=C:\users\wonka\AppData\Roaming\npm\npm.cmd   Configuration=Release   Targets=Rebuild   Platform=   VersionFormat=1.0.0-CI{0}   BuildCounter=22   PrereleaseTag=CI00022   PackageVersion=1.0.0-CI00022   EnableNuGetPackageRestore=true
Initializing git-based build environment... Additional build environment variables:   GitPath=C:\Program Files\Git\bin\git.exe   GitVersion=C:\ProgramData\Chocolatey\lib\GitVersion.Portable\tools\gitversion.exe

But I think is OK, because I'm not releasing and myget keeps incrementing the CI build, the only think I wonder is why he came back from 89 to 22.
When I release by following the procedure coming from the F# scaffolding project it should be fine.
I will try to release it and see if it works.

When I look at the FSharpPlus.BaseLib it looks as if it's only one class: BitConverter. Perhaps break it out to a separate project and publish that on nuget?

Yes, that’s probably the way to go. I will think what’s the best way to split it.

Another possibility is to attempt to write it in F# and see if we can get the same performance.
BTW, is this something that it's currently preventing you from using this library?

No, I just wanted to make sure that the nuget package is done done efter the change to netstandard2.0.

No, I think it's because of the Endianess. I believe those implementations define the Endianess based on the architecture it runs, so they are no referential transparent. As many other functions in the .NET they are context dependent.
One of the most important goals of this library is to enforce referential transparency.

Aaa, so even more reason to put it in a separate nuget package. So in other words, if you try to build a serialiser on top of the standard .net class then it will give you headaches when dealing with different machines.

I think so. I had a project that needed to use Bid Endian regardless of the architecture in order to talk to a third party component.

@wallymathieu maybe there's a way to code those unsafe blocks in F# , see for example this https://gist.github.com/vietnt/84c7532d70e83dee2545df7507158856 I will give it a try.

Look at this https://github.com/Microsoft/visualfsharp/issues/3924
So, it seems to be a known issue, to be solved soon.
AFAIK I am the one using the classes in BaseLib in a performance critical project but at the same time I know I won't be updated anytime soon.
So I propose, in order to avoid duplicate efforts, to go back to the code as it was before adding the optimized version in BaseLib, then release to nuget.
Later when this issue is solved we can use again the code from the BaseLib.

Sounds like a good plan, since then the deliverable will be simple enough for use in .net core et.c.

Cool, I'll try to have the code adapted ASAP.

I managed to translate the code in the Baselib to F#, using the same techniques and taking advantage of the new fixed keyword available in F# 4.1.
See https://github.com/gusty/FSharpPlus/commit/69839476bdca027545ed202c55b724044715132d
A quick test showed equivalent performance, so now we can safely get rid of the C# BaseLib project.

Sweet! 👍


Document symbol does not go to line if buffer is modified

When I list document's symbols and press Enter to go to a symbol, if the buffer is modified, it doesn't work.
Here is a video showing the bug:
https://user-images.githubusercontent.com/12272702/132588951-ab0657ed-ebb5-45e5-8362-29f7cbed38ab.mov
Additional information: The preview is outdated, but the list shows the correct symbol's line

When I list document's symbols and press Enter to go to a symbol, if the buffer is modified, it doesn't work.

Should work now.

Additional information: The preview is outdated, but the list shows the correct symbol's line

That's because the previewer reads the file from the disk, I should probably fix that to use existing buffer instead, feel free to open a new issue for that if you want to track it.


InvalidOperationException thrown when using LoggingActuators

Describe the bug
The following exception is being thrown while use actuators with Steeltoe v2.4.0-rc1:

Unhandled exception. System.AggregateException: Some services are not able to be constructed (Error while validating the service descriptor 'ServiceType: Steeltoe.Management.Endpoint.Loggers.LoggersEndpoint Lifetime: Singleton ImplementationType: Steeltoe.Management.Endpoint.Loggers.LoggersEndpoint': Unable to resolve service for type 'Steeltoe.Extensions.Logging.IDynamicLoggerProvider' while attempting to activate 'Steeltoe.Management.Endpoint.Loggers.LoggersEndpoint'.)

Steps to reproduce
Steps to reproduce the behavior:

Create a new .NET Core web application (dotnet new webapp)
Add the Steeltoe.Management.CloudFoundryCore package (dotnet add package Steeltoe.Management.CloudFoundryCore)
Add and use actuators with the AddCloudFoundryActuators() and UseCloudFoundryActuators() methods
Run application

Expected behavior
App should start up. Instead, an InvalidOperationException is thrown
Environment (please complete the following information):

OS: Windows 10 x64
.NET Core 3.0
Steeltoe Version 2.4.0-rc1

Screenshots

Hello @tom-mckinney,
Thanks for the bug report - this issue happens when dynamic logging hasn't been configured in program.cs.
I did some work last week to streamline this process a bit with new extensions on (Web)HostBuilder that will configured dynamic logging for you. Those extensions will be in the next release, or are available in the dev feed

Hi @TimHess, thanks for the quick reply! In that case, does that make this a duplicate of #122? I'm happy to close this if so.


Bug in the FPS Tutorial

Hi, there's a bug in the FPS tutorial. To move, it uses the camera's global_transform.basis, so if you look upwards, the player won't move as fast, and if you look straight up, you won't be able to move. It should use the kinematic body's (FPSCharacter) global_transform.basis, which gives typical FPS movement, and ignores the rotation of the camera. The video should also be updated.
Also a small recommendation: I'm new to godot, so this may be a bad suggestion, but when doing:
rotation_helper.rotation.x = clamp(rotation_helper.rotation.x, -1.2, 1.2)
I personally find it more understandable to use degrees:
rotation_helper.rotation_degrees.x = clamp(rotation_helper.rotation_degrees.x, -90, 90)
Maybe other's would agree too. It's just a bit easier to visualize.

Thanks for the suggestion - I'll update the recipe. Not so easy to update the video though...

I suppose you could maybe reupload the video, with a small video added explaining the change, why and how it works etc., just before the bug is written. Not the cleanest solution, but easier than re-recording the entire thing.
From: Chris Bradfield
Sent: 18 March 2021 01:37
To: kidscancode/godot_recipes
Cc: James; Author
Subject: Re: [kidscancode/godot_recipes] Bug in the FPS Tutorial (#86)
Thanks for the suggestion - I'll update the recipe. Not so easy to update the video though...
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

Also, weird thing, using the transform of the player seems to get the exact same results as global_transform, and when I checked, they are both the same value.

A pinned comment on the video correcting the code would be good for the meantime.

Something's missing. It doesn't say how to move the body in the direction it's pointed. There's just empty space.


Mongoid embedded document boolean selector does not work

Describe the bug
When a mongoid document has an embedded class the boolean selector doesn't work on new or edit
Reproduction steps
Create mongoid class with embedded document
Embedded document needs to have a Mongoid::Boolean field
Add the embedded document in accepts_nested_attributes_for
Open edit or create for the parent document in rails admin
Clicking any of the buttons for the boolean won't change your selection
Expected behavior
Clicking the buttons will change the selection
Additional context
Digging into the html it seems to be that the label field has an incorrect for value:
What rails admin creates:
<input class="btn-check" type="radio" value="1" name="parent_class[embedded_class_attributes][field_name]" id="parent_class_embedded_class_attributes_field_name_1">

What it should be:
<input class="btn-check" type="radio" value="1" name="parent_class[embedded_class_attributes][field_name]" id="parent_class_embedded_class_attributes_field_name_1">

manually updating that label tag for attribute via admin tools fixes the problem.

rails version: <IP_ADDRESS>
rails_admin version: 3.0.0
mongoid version: 7.5.1

I've resolved the issue locally and created a PR with my fix here: https://github.com/railsadminteam/rails_admin/pull/3555 I know your contributions page requests specs for the issue however I followed the contributions guide to setup and run specs locally and they're all failing with:
An error occurred while loading ./spec/integration/fields/wysihtml5_spec.rb. - Did you mean?
rspec ./spec/integration/fields/time_spec.rb
rspec ./spec/integration/fields/enum_spec.rb
rspec ./spec/integration/fields/simple_mde_spec.rb
Failure/Error: require 'sprockets/railtie'
LoadError:
cannot load such file -- sprockets/railtie
./spec/dummy_app/config/application.rb:22:in `require'
./spec/dummy_app/config/application.rb:22:in `<top (required)>'
./spec/dummy_app/config/environment.rb:4:in `require'
./spec/dummy_app/config/environment.rb:4:in `<top (required)>'
./spec/spec_helper.rb:30:in `require'
./spec/spec_helper.rb:30:in `<top (required)>'
./spec/integration/fields/wysihtml5_spec.rb:3:in `require'
./spec/integration/fields/wysihtml5_spec.rb:3:in `<top (required)>'
/Users/richardpalackas/rails_admin/spec/spec_helper.rb:5: warning: already initialized constant CI_ORM
/Users/richardpalackas/rails_admin/spec/spec_helper.rb:5: warning: previous definition of CI_ORM was here
/Users/richardpalackas/rails_admin/spec/spec_helper.rb:6: warning: already initialized constant CI_TARGET_ORMS
/Users/richardpalackas/rails_admin/spec/spec_helper.rb:6: warning: previous definition of CI_TARGET_ORMS was here
/Users/richardpalackas/rails_admin/spec/spec_helper.rb:7: warning: already initialized constant PK_COLUMN
/Users/richardpalackas/rails_admin/spec/spec_helper.rb:7: warning: previous definition of PK_COLUMN was here
feel free to update the PR to meet your requirements

Please refer to CONTRIBUTING.md, which got updated recently.

Sorry it's been so long since I updated this. Finally had some time to work on the specs

Fixed by #3555.


update(build): update openssl to 1.1.1q

Signed-off-by: Luca Guerra<EMAIL_ADDRESS>
What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area build

Does this PR require a change in the driver versions?
No.

What this PR does / why we need it:
Update OpenSSL to 1.1.1q, fixing any known potential security issues
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

NONE

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: LucaGuerra
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [LucaGuerra]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, LucaGuerra
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97,LucaGuerra]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: 934250ba48ccb4ecdc096970f79b55ea20e0712c

/milestone 0.10.1

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, FedeDP, LucaGuerra
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97,FedeDP,LucaGuerra]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Dev

PEP-681 (Data Class Transforms) support added. See
pydantic 2.7 enum type support added. See

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 91.86%. Comparing base (f26b66f) to head (aea6311).
Report is 30 commits behind head on master.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #184      +/-   ##
==========================================
- Coverage   92.04%   91.86%   -0.18%
==========================================
  Files          27       27
  Lines        1534     1537       +3
==========================================
  Hits         1412     1412
- Misses        122      125       +3

Flag
Coverage Δ

unittests
91.86% <100.00%> (-0.18%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

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


Update stix2 setup configuration

Remove taxii2-client as a requirement to install stix2
Add taxii2-client to the Tox configuration instead
Re-factor the version and description loading

Codecov Report

Merging #152 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #152   +/-   ##
=======================================
  Coverage   97.38%   97.38%
=======================================
  Files          56       56
  Lines        5540     5540
=======================================
  Hits         5395     5395
  Misses        145      145

Continue to review full report at Codecov.

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

Is there any advantage to adding taxii2-client to extras so you can do something like pip install stix2[taxii]?

I think it makes sense to have it like that. According to setuptools you can have recommended dependencies that are not required for all uses of the project.


Added support for launching the application with a file on MacOS

Added support for launching the application with a file on MacOS by listening for the open-file and open-url events from the operating system, and forwarding them to the Electron.NET app when listeners are added

Is it possible to consider similar changes for windows/linux too? Would be extra useful for handling things like oidc callbacks


avaiable typo

available ;)

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

ID: c319f083-b087-7cc9-5d64-807a2c6c0f09
Version Independent ID: 4b76442b-9264-4f7b-478f-0635b2b24bcd
Content: ApplicationArea Property - Business Central
Content Source: dev-itpro/developer/properties/devenv-applicationarea-property.md
Service: dynamics365-business-central
GitHub Login: @SusanneWindfeldPedersen
Microsoft Alias: solsen

Thanks for catching this, it will be fixed with the next doc refresh.


refactoring(coral): Unify Table container views

What is currently missing?
We repeat a lot of code between the different table container views:
Approve topic requests
Approve schema requests
Approve connector requests
My topic requests
My schema requests
My connector requests
This includes the boilerplate of setting up the queries, parameters, opening / closing the modals, filters ...
The test files for each of these look very similar and test very much the same logic, for example pagination, filters, can delete, can view details ...
The main discrepancy between the views seems to be the displayed columns and the query endpoints.
How could this be improved?
Investigate if it would be feasible to create a component that would reduce this boilerplate into a reusable shape which could then be used for these views and implement a solution.
In the end each view would only need to test the unique behavior to the corresponding Table component.
For example, the expected columns for that Table and not for example the pagination controls.
We should be able to express through props the difference between these views.

Is this a feature you would work on yourself?
Possibly, but i don't have any better insight than what's described yet.

[ ] I plan to open a pull request for this feature

The actions that can be performed in the different tables is also a thing that differs, and consequently the modals / flows a bit. But I definitely agree that it would be valuable to find a way to duplicate less!


Debugger holds lock on file after 'debug stop'

This issue has hit me about a half dozen times while debugging a .net core web app on my Mac.  The repro steps below are a bit convoluted but the general issues happens in less obvious ways.
Repo steps:
open folder 'app'
start debugging
<break in 'lib'>
Modify the code (to cause a rebuild of lib)
In the watch window expand this.Roots (to cause the debugger to hold the file lock)
Before the dictionary is expanded (not to worry it takes a very long time to do that) restart debugging
Either press "debug anyway" or close and "start debugging"
Expected:
When the debugger stops it should release the file lock
Actual:
The debugger holds a file lock which causes VS Code to fail to build and then debug.  Here is the error message:
ERROR: Error while trying to enter break state. Debugging will now stop. Failed to find thread 7373 for break event
The program '/Users/xyz/Documents/Projects/bug/badimage/app/bin/Debug/netcoreapp1.0/app.dll' has exited with code 42 (0x0000002a).
To make matters worse, I have had my Mac crash twice while trying to narrow this repro down.  The cause of the crash is clrdbg process starts to consume memory aggressively and takes down the machine.  I have also seen this repro fail with a BadImageException when trying to debug.
.NET Command Line Tools (1.0.0-preview1-002702)
Product Information:
Version:     1.0.0-preview1-002702
Commit Sha:  6cde21225e
Runtime Environment:
OS Name:     Mac OS X
OS Version:  10.11
OS Platform: Darwin
RID:         osx.10.11-x64
VS Code - c# extension 1.0.3-rc2
badimage.tar.gz

This error occurring with me using asp.net core RTM

I'm having this issue on Windows. Is there any workaround for this?

I am changing the milestone of this from 1.4 to 1.5 because certain aspects of this issue have been fixed but there are still open issues related to this one.

@chuckries: What's the status of this? Is there still more to do here? Are there other issues tracking the details of what's left?

@gregg-miskelly do you recall if this is fixed?

I remember there was some other aspect of this that we wanted to eventually improve, but I don't remember what it was. @rajkumar42 do you remember?

Created an issue https://github.com/OmniSharp/omnisharp-vscode/issues/1215 to track.

@gregg-miskelly I see that #1215 is complete. Any work left to do here?


Readme.md: Fix typo and grammar

Pull Request (PR) description
Fix a typo and a grammar error in the Readme.md file.

This Pull Request (PR) fixes the following issues
None
Task list

[ ] Added an entry under the Unreleased section of the change log in the README.md.
Entry should say what was changed, and how that affects users (if applicable).
[X] Resource documentation added/updated in README.md.
[ ] Resource parameter descriptions added/updated in README.md, schema.mof
and comment-based help.
[ ] Comment-based help added/updated.
[ ] Localization strings added/updated in all localization files as appropriate.
[ ] Examples appropriately added/updated.
[ ] Unit tests added/updated. See DSC Resource Testing Guidelines.
[ ] Integration tests added/updated (where possible). See DSC Resource Testing Guidelines.
[ ] New/changed code adheres to DSC Resource Style Guidelines and Best Practices.

This change is

Codecov Report

Merging #89 into dev will not change coverage.
The diff coverage is n/a.

@@        Coverage Diff        @@
##           dev   #89   +/-   ##
=================================
  Coverage   62%   62%
=================================
  Files        2     2
  Lines      307   307
=================================
  Hits       191   191
  Misses     116   116

@gaelcolas can you merge this when you have a minute over? 🙂


Move to "ruff" for static analysis

"Ruff" provides the functionality currently supported by pylint, isort and black, and will standardise and simplify static analysis, resulting in fewer defects and less inconsistency between developers

Other MRs bring the codebase up to passing for all of ruff, isort, pylint and black as tools.
Ruff can potentially replace isort, pylint, mypy and black, or live alongside them.
Ruff is very, very, very fast to run. As such, it is pleasant to use and so encourages adoption and utilisation. Pylint is uncomfortably slow, but performs a number of more nuanced checks. There is an argument for leaving pylint to the servers and requiring only a ruff check by developers.
There is also an argument for not requiring any other tools than ruff. The productivity benefits from having a single, consistent fast tool which everyone uses with a standard definition are very compelling. This may be more appealing to the developer community, although it sacrifices some potentially valuable quality checks.
Feedback from the developer community would be appreciated. Please leave some comments in this thread if you have a view on the matter.
I do intend regardless to add ruff to the developer tools installed along with scores, to flag that it should be usable.

There hasn't been any discussion of the use of "ruff". I enjoy using it, but ultimately pylint is still needed which is really the slow point. As such, I'm planning not to make it a project dependency and leave things as they are. However, as individual developers, I'd suggest giving it a try and if everyone  wants it, we can revisit the question. The things it can actually replace are reasonably quick anyway. Hopefully it gets adopted by things like pyright and other lint type checkers in editors etc. If ruff proves useful over time I'm happy to revisit the question then.


misc/openlane: patch sed to be cross-platform

sed on BSD and GNU have different behaviour when it comes to the -i flag. They behave the same when a backup file is specified, but differently when no backup is specified.
Rework all invocations in order to get this working on osx.
There is a pending upstream patch: https://github.com/The-OpenROAD-Project/OpenLane/pull/1668

@xobs sorry for dropping this, do you still want to get that in?

In the intervening time, the openlane patches were merged upstream: https://github.com/The-OpenROAD-Project/OpenLane/commit/45980c85ecf4094c977785432a8ebb0adf0e562d
So we can just drop dbd35f2d7b589aac3201ef0a66732b16805264af from the patchset.


Get rid of NSSecureCodingOptionalKey

I got rid of OptionalKey in https://github.com/sindresorhus/Defaults/commit/b2fdee2055c87149bef0b2fec0726a87c191926c, but I was not able to remove NSSecureCodingOptionalKey as it seems optionals cannot conform to NSSecureCoding, or maybe it has something to do with NSSecureCoding being an Objective-C protocol.
Try changing https://github.com/sindresorhus/Defaults/blob/77c05abe1001f7d6fd6076816a227012129089d2/Tests/DefaultsTests/DefaultsTests.swift#L459 to:
let key = Defaults.NSSecureCodingKey<ExamplePersistentHistory?>("observeNSSecureCodingOptionalKey")

and see the error.
Help wanted 🙏

// @Ybrin

Fixed by #57


Maxwell 1D (Wave Equation)

I always missed a classic wave equation system in Trixi.jl.
The obvious choice would be the standard 1D wave equation
$$u_{tt} - c^2 u_{xx} = 0$$
with first order hyperbolic system
\partial_t \begin{pmatrix} v \\ w \end{pmatrix} + \partial_x \begin{pmatrix} c w \\ c v \end{pmatrix} = \boldsymbol 0

obtained from introducing the variables $v := c u_x$ and $w = -u_t$.
This system, however, bears two main problems due to the change of variables:

The initialization is non-trivial
Obtaining $u$ is non-trivial

As an alternative which does not bear this difficulties one can consider the Maxwell equations in 1D which simplify to
\partial_t \begin{pmatrix} E_{y,z} \\ B_{z,y} \end{pmatrix} + \partial_x \begin{pmatrix} c^2 B_{z,y} \\ E_{y,z} \end{pmatrix} = \begin{pmatrix} - \frac{j_{y,z}}{\varepsilon_0} \\ 0 \end{pmatrix}

where $E$ and $B$ field are orthogonal (which I try to denote with the alternating indices).
This system has eigenvalues $\lambda_- = -c, \lambda_+ = c$, identical to the wave equation system.
I added the typical convergence test and an "application" of a standing wave which distributes energy between magnetic and electric.

Thanks a lot! Could you please request a review from another developer in your area (Aachen/Cologne etc.) and ping Michael or me when you're ready for a final review?

Thanks for adding this equation system! It opens opportunities for multi-material wave propagation applications between different dielectric materials. Do not forget to add the new equation capability to the landing page of the README.md, although we could maybe hold-off until the Maxwell's equations are available in 2D and 3D as well. This opens a broader discussion regarding the strategy of maintaining a divergence-free magnetic field (say a la Dedner et al.) that will live in a different PR.

I always missed a classic wave equation system in Trixi.jl.
The obvious choice would be the standard 1D wave equation utt−c2uxx=0 with first order hyperbolic system
obtained from introducing the variables v:=cux and w=−ut. This system, however, bears two main problems due to the change of variables:
* The initialization is non-trivial

* Obtaining u is non-trivial

It is clear that the reconstruction of u from v is difficult. But could expand on the second point?

As an alternative which does not bear this difficulties one can consider the Maxwell equations in 1D which simplify to
where E and B field are orthogonal (which I try to denote with the alternating indices). This system has eigenvalues λ−=−c,λ+=c, identical to the wave equation system.
I added the typical convergence test and an "application" of a standing wave which distributes energy between magnetic and electric.

Do you mean that you distribute between magnetic and electric energy?

Have you considered solving a three-variable first order hyperbolic system that includes the equation
$u_t + w = 0$?

Can you provide a reference to your 1d Maxwell equations? Are you in a vacuum? If so, why not set the currents to 0 as well? Why are there second order derivatives in space, like ∂xEy,z?

These are no second derivatives, but meant to indicate the parity of the components of the electric and magnetic field, i.e., if you have $E_y$ then you have $B_z$ and vice-versa.

Can you provide a reference to your 1d Maxwell equations? Are you in a vacuum? If so, why not set the currents to 0 as well? Why are there second order derivatives in space, like ∂xEy,z?

A possible reference would be https://inria.hal.science/hal-01720293/document equation (1).
Yes, at least $c$ is set to vacuum value.
In the docstring of the equations the currents/sources are set to 0. Only here they are mentioned for completeness.

Thanks for adding this equation system! It opens opportunities for multi-material wave propagation applications between different dielectric materials.

This was actually the main motivation to add such a system to Trixi for me.

Do not forget to add the new equation capability to the landing page of the README.md, although we could maybe hold-off until the Maxwell's equations are available in 2D and 3D as well.

Yes, this is actually the reason why I have not put them into the Readme yet.

It is clear that the reconstruction of u from v is difficult. But could expand on the second point?

So the initialization?

Yes. You would need to integrate to get u from v. Maybe your could point that out.

Do you mean that you distribute between magnetic and electric energy?

Yes.

Maybe it is good to point out that energy is being distributed.

Can you provide a reference to your 1d Maxwell equations? Are you in a vacuum? If so, why not set the currents to 0 as well? Why are there second order derivatives in space, like ∂xEy,z?

These are no second derivatives, but meant to indicate the parity of the components of the electric and magnetic field, i.e., if you have Ey then you have Bz and vice-versa.

That makes sense. But then the notation is confusing. In the initial wave equation subscripts are derivatives. Now they are components and parities. Maybe you could also mention parities in your description.

Can you provide a reference to your 1d Maxwell equations?

You could maybe use one of the papers from Acosta and Kopriva for the Maxwell's equations on this form. That or the book from Hesthaven "Numerical Methods for Conservation Laws: From Analysis to Algorithms" where he uses the Maxwell's equations as a prototypical example of a linear conservation law.

Looks good to me now.

Can you approve the PR? Then we are ready to go :)

The CI failure is caused by this PR:
https://github.com/trixi-framework/Trixi.jl/actions/runs/9780448374/job/27002159772?pr=1949#step:7:6768
WARNING: Method definition (::Type{Trixi.MaxwellEquations1D{RealT} where RealT<:Real})(Real) in module Trixi at /home/runner/work/Trixi.jl/Trixi.jl/src/equations/maxwell_1d.jl:39 overwritten at /home/runner/work/Trixi.jl/Trixi.jl/src/equations/maxwell_1d.jl:42.
ERROR: Method overwriting is not permitted during Module precompilation. Use `__precompile__(false)` to opt-out of precompilation.
┌ Error: Unexpected error: /tmp/jl_RgfOJIreru/done.log was not created, but precompilation exited
└ @ Aqua ~/.julia/packages/Aqua/tHrmY/src/persistent_tasks.jl:118

I think I found an implementation without CI failures.


Refactor to drop error_chain and the direct dependency on the http crate

This PR stops using error_chain (replaces it for now with simple Box<dyn Error> instances) and replaces http types in internal data structures with our own plus conversions. As a result of this we can now compile this crate in its minimal expression with very few dependencies, and the default feature set just pulls in the optional parsing of XML responses.
Additionally a few other clean-ups have been performed taking advantage that we're breaking stuff for 0.7 anyway, so for example extensions::Extensions got renamed to extensions::List (perhaps we can come up with a better name).

bors r+


fix(api_helpers): re-add falcon.api_helpers

Summary of Changes
Re-add removed api_helpers package
Related Issues
closes #1902

thanks, updated

Is there a chance of getting these changes released? It prevents us from upgrading to falcon 3 as we rely on the sentry sdk.

Hi @floqqi!
Yes, we are planning to cut 3.0.1 shorty, hopefully today or tomorrow.
We will be addressing https://github.com/falconry/falcon/pull/1911 in the same bugfix release.


Updated cookbook to be compatible with latest Chef version

Added a name attribute to the cookbooks metadata

I'd rather it was lowercase, does that work with you @russelltrow?

Hi Joseph, I've made the name lowercase and matched the repository name. How is that?

Hi. Any idea when this will be merged and released? Is there something that is preventing this from being merged?

@russelltrow I think it should be name 'nano' instead of name 'nano-cookbook'. See here.

merged manually


[BD-46] feat: annotated progress bar

Added ProgressBar.Annotated component:

component styling
threshold interaction with the current progress
new properties for threshold
offset calculations for the annotation
determine whether the hint is displayed before or after the annotation

JIRA: PAR-462

Thanks for the pull request, @monteri! I've created BLENDED-1110 to keep track of it in Jira.   More details are on the BD-46 project page.
When this pull request is ready, tag your edX technical lead.

@monteri 🎉 Your pull request was merged!  Please take a moment  to answer a two question survey so we can improve your experience in the future.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


tests: Update snapshot tests for Textual 0.77

The new version of Textual adds a key to the footer for opening the command palette. We could disable this, since it's taking up a bit of precious screen real estate, but one of the options in the command palette is a full list of keys bindings that can be opened in a side panel. That's useful enough to justify keeping this item, even if it means cutting off our own bindings.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 93.01%. Comparing base (58adb86) to head (511f2bf).

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #671      +/-   ##
==========================================
+ Coverage   92.98%   93.01%   +0.02%
==========================================
  Files          94       94
  Lines       11445    11445
  Branches     2114     2114
==========================================
+ Hits        10642    10645       +3
+ Misses        803      800       -3

Flag
Coverage Δ

cpp
93.01% <ø> (+0.02%)
:arrow_up:

python_and_cython
93.01% <ø> (+0.02%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

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


Doors can get people stuck in walls

Description

this has been happening quite a bit, need to TP them out constantly
https://user-images.githubusercontent.com/19853115/155044106-b1bbaff6-3457-4f09-a4ca-d79b3fcad588.mp4
Additional context

Do doors have crush safety and if not, shouldn't door crushing knock you down then reopen the door to avoid this issue.

I think if door has crush safety, it shouldn't close at all if something is blocking it.

that is already the case, but i believe the issue is that if the door is already closing then it doesn't make that check

So how its supposed to work for normal/un-hacked airlocks:

Door checks for entities in the way. If there are any, it doesn't start closing
Door starts closing visually, but is still transparent and collision-less
The door then checks again if there is currently a entity in the way
It then becomes "solid" (collision + airtight + maybe opaque)
It then eventually finishes closing and can be opened again.

If a mob enters before the half-way check, it should never become "solid" and should just start opening again.
Previously there was a bug where it would properly start opening again but after having prematurely made itself solid, leading to #6841, which should have been fixed by #6836.

shouldn't door crushing knock you down then reopen the door to avoid this issue.

If safety is disabled, it should close on entities, become "solid", and stun+damage colliding entities. It then stays solid for the same amount of time that it stuns, and should then become collision-less again and start visually opening. While entities are being crushed, their collision with the door is actually disabled so that they don't get shoved aside or into walls.
There are still some issues I'm aware of:

Collision is based on world aabbs (i.e., affected by rotation), which they really shouldn't be
For an entity to be considered 'colliding' the aabbs need to intersect by more than 20%.

This should mean if you're just at the edge of the door, it will still close and just nudge you to the side

If an entity gets in the way while closing, causing the closing to abort, the animation seems to lurch? Basically is a bit wonky with the animation or client-prediction.
And then there is whatever is happening here, where I'm really not sure. Can someone confirm that this is still happening, or was this related to #6841, where the door correctly "aborts" but still becomes solid and shoves the player into walls?


Add command to scaffold, download input and read challenge for current date

This pull request combines the scaffold, download and read commands into one, auto selecting the current date or accepting an optional day.
Command:
cargo today [<day>]

It seems like I had the same idea as someone else a moment ago (#42) 😃. I leave the choice on the final implementation to you.

Hey, thanks for the PR! I like the idea of a today command. I'll review this PR in detail when I have some time in the next couple of days.
I'm not 100% sure if today should have the day flag or if we rather want to split it into cargo scaffold [-d, --download] <arbitrary_day> and cargo today (magical shorthand usable in december).

I think I addressed all comments, except for the one about using chrono. However, using that crate seems like the only way to get the current day of the month.

What we can definitely do is put chrono behind a feature flag and add it to the today alias.

Thank you! ❤


add custom action button

Very nice work ! Finally a modern controller for mysensors !
We have "send Raw Message" and what we could call "automatically configured buttons" functions,
it would be nice to be able to add custom button on each node/sensor.
I have several custom/complex mysensors nodes in my network, and I would need to be able to send specific messages.

@gbrd yes, we had send raw message option and was not implemented yet with this 0.0.3 release. will be added soon.
Also custom button will be added https://github.com/mycontroller-org/mycontroller/issues/47

My sensors implements "REQ" msgType (=2).  I use it to manualy ask an update.
Would be great to be able to choose msgType too when sending message on a custom button or in a "notification" / "send payload"

My sensors implements "REQ" msgType (=2). I use it to manualy ask an update.
Would be great to be able to choose msgType too when sending message on a custom button or in a "notification" / "send payload"

@gbrd Added new operation type Request payload. We can include Operations in Timer and/or in Rules
Version: 0.0.3-Alpha2
Steps:

Create Operation, type Request payload
Configure created operation in Timer and/or in Rules

To create Request payload operation:
Navigate to Resources -> Operations. Update details as shown in the image.

To configure Operation in timer:
Navigate to Resources -> Timers
Following image show how to configure Operation in Timer. In this example I have selected Simple timer with the option, run every 1 minute(60 seconds) and never stop (-1 infinite job).

Send raw message
With Send raw message feature we can send any type of message to node/sensors.
Navigate to Action board -> Send raw message.

Select a gateway
Enter Node EUI and Sensor id
Select Type and Sub type
Select Acknowledge type
Payload is optional


Use Slack dialog to report and edit incidents

Make it easier to provide additional details at the time of report
Allow incidents to be editted within Slack by clicking 'edit' in headline post
New reporting flow
Reporting an incident

Reports are still triggered with /incident but can be made with or without an explanation of the issue.

If an explanation of the report is provided it'll appear in the dialog

All fields except the report are optional, to avoid introducing introducing barriers to dealing with an issue

Editing Incidents

The headline post now has an 'Edit' button
Pressing the edit button brings up a dialog to update the incident
Changes are immediately reflected in the headline post

I'm experimenting with the new dialog and when I save an incident with an empty summary and attempt to open the incident document I receive an error. Trying to see if I can pinpoint the issue at the moment...

I'm experimenting with the new dialog and when I save an incident with an empty summary and attempt to open the incident document I receive an error. Trying to see if I can pinpoint the issue at the moment...

Took a quick peek. Looks like on line 25 of incident_doc.html, a check needs to be added to the summary data that's display as it's currently null if you don't specify a summary value when creating the incident.

Summary

{{ incident.summary|unslackify|markdown_filter|safe }}

Summary

{% if incident.summary %}{{ incident.summary|unslackify|markdown_filter|safe }}{% endif %}

Thanks for the heads up.  I'll fix this tomorrow 👍


Maze Generation Visualiser

Have you read the Contributing Guidelines on Pull Requests?
Yes, I Have read.
Description
adding the files in the folder in NeoAlgo\Python\backtracking\Maze-Generation-Visualiser.py.
Checklist

[x] I've read the contribution guidelines.
[x] I've checked the issue list before deciding what to submit.
[x] I've edited the README.md and link to my code.

Related Issues or Pull Requests
#7080

@bhav09 please check my PR add the comment in top the program


bpm

Can this achieve unlimited hardware breakpoints?...

The ept breakpoint manager added in the 1.0.0 release supports unlimited ept breakpoints. 2992cadcb1330e28540fb9bf31a7a35de69e3556


Fix yaml syntax error in linux-build.yml

#10373 broke the linux-build.yml workflows due to a syntax error, this fixes it.

I opened https://github.com/facebookincubator/velox/pull/10488 for the same.


HAS method's signature does not corresponds to it's documentation

The signature is:
public function has($table, $join, $where = null)

But documentation suggest:
has($table, $where)
has($table, $join, $where)

Medoo internally switch join/where


Natively support the %m/%Y and %m-%Y date formats

Needed for products such as Centreon.

Only expected updates, merging.


EVA-1948 — Improve commands for comparing evidence strings

This PR is based on top of #94 and includes all changes from it as well. To view onl ychanges from this PR, see this diff link.

Major changes

Extracted all comparison commands from a Markdown page into a separate script
Instead of having multiple confusing files, output the single HTML report with the changes

Minor and technical changes

Revise documentation
Remove the schema version prior to comparison (its value changes frequently, but does not confer any real meaning)
Add gene to the list of extracted fields
Streamline intermediate file names

Coverage remained the same at 79.141% when pulling 15add00c93c3af7b67909e99ad57a30df5044676 on tskir:eva-1948-evidence-string-comparison into fa025448331e78efb17603eb715d485bed3c42ca on EBIvariation:master.


Make Spelling Consistent

Change Authorisation to Authorization to be consistent with the other usages of it.
Signed-off-by: Daniel Eisterhold<EMAIL_ADDRESS>

Can you add the DCO please?

@brian-brazil Done.

Thanks!


Remove namespace field from perfdash deployment

/cc @mm4tt
as discussed with Matt I want to remove duplicated manifests from https://github.com/kubernetes/k8s.io/tree/master/perf-dash.k8s.io and instead use the ones from this repository and removing namespace gives me possibility to use the manifest from this repository with -n perfdash flag
Signed-off-by: Bart Smykla<EMAIL_ADDRESS>

/lgtm
/approve


Question: Is there a preferred mock library to test clientv3 code?

Question
I'm just barely starting with the etcd and am totally new to clientv3, so I apologize if this question has already been answered. Are there any existing/recommended libraries that I can use to mock clientv3 for testing? After lots of google'ing and searching through issues, goDocs, etc. I couldn't find anything.
If there is not a recommended library, could anyone give me a hint about how they personally test clientv3?
Thanks!

You can check out our integration tests https://github.com/coreos/etcd/blob/master/clientv3/integration/kv_test.go#L35

Such a fast answer! Checking it now, thanks!

I actually had seen the integration directory prior to asking the question, but wasn't quite sure of how it worked. I should def be able to figure it by looking at the above example.
I might recommend adding a README to the integration directory and/or a note on the Go Doc. It was somewhat confusing looking in both those locations and just seeing them blank. Thanks again!


implement subtransactions (RFC1004)

Public API changes:

add type Subtx struct
add type SubtxBlock func(context.Context, *Subtx) error
add a Subtx(context.Context, action SubtxBlock) error method to Tx and Subtx structs
rename Action to TxBlock

Internal Changes:

Separated type reconnectingConn struct into reconnectingConn, transactableConn, and borrowableConn
moved txOpts and retryOpts fields from PoolConn and Conn to transactableConn
added helper function for running granular flow queries
rename baseConn.conn to baseConn.netConn
rename PoolConn.conn to PoolConn.transactableConnactor out borrowableConn

This change is based on https://github.com/edgedb/edgedb-go/pull/123 and WIP until the upstream PR is merged.


Dual-Stack node-ip broken in v1.31.4+k3s1

Environmental Info:
k3s version v1.31.4+k3s1 (a562d090)
go version go1.22.9
Node(s) CPU architecture, OS, and Version:
Linux plex-server 6.1.0-28-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.119-1 (2024-11-22) x86_64 GNU/Linux
Cluster Configuration:
Single-Node cluster
Describe the bug:
Unable to get two nodeIPs to show up, despite node-ip: <IP_ADDRESS>,fd9d:7a72:44eb:a:a236:9fff:fe18:55fb in config.
Steps To Reproduce:

Installed K3s with dual-stack, using node-ip for both addresses.

cluster-init: true
cluster-cidr: <IP_ADDRESS>/16,fd94:9bde:1ebb::/48
disable:
- flannel
- traefik
- servicelb
- metrics-server
- local-storage
- coredns
disable-cloud-controller: true
disable-kube-proxy: true
disable-network-policy: true
docker: false
etcd-expose-metrics: true
flannel-backend: none
kube-apiserver-arg:
- default-not-ready-toleration-seconds=20
- default-unreachable-toleration-seconds=20
kube-controller-manager-arg:
- bind-address=<IP_ADDRESS>
- node-monitor-period=4s
- node-monitor-grace-period=16s
kube-proxy-arg:
- metrics-bind-address=<IP_ADDRESS>
kube-scheduler-arg:
- bind-address=<IP_ADDRESS>
kubelet-arg:
- feature-gates=GracefulNodeShutdown=true
- node-status-update-frequency=4s
node-ip: <IP_ADDRESS>,fd9d:7a72:44eb:a:a236:9fff:fe18:55fb
service-cidr: <IP_ADDRESS>/16,2001:<snip>:16fd:9622::1:0/112
tls-san:
- <IP_ADDRESS>
- 2001:<snip>:7424:8f00:a236:9fff:fe18:55fb
- fd9d:7a72:44eb:a:a236:9fff:fe18:55fb

Expected behavior:
I expected the node spec to include both addresses.
Actual behavior:
It only lists IPv4 address which breaks IPv6 with Cilium.
Additional context / logs:
I think the problem is related to https://github.com/kubernetes/enhancements/issues/3705 & https://github.com/k3s-io/k3s/issues/8011
$ kubectl get nodes plex-server -o go-template --template='{{range .status.addresses}}{{printf "%s: %s\n" .type .address}}{{end}}'
InternalIP: <IP_ADDRESS>
Hostname: plex-server

I think this is related: https://github.com/k3s-io/k3s/tree/9260776412bf41a2cba37accf5c1c00d50cb787e/pkg/agent/config/config.go#L633L635

Seems to work for me. Are you trying to change it after the fact or something?
root@systemd-node-1:/# cat /etc/rancher/k3s/config.yaml
node-ip: <IP_ADDRESS>,fd7c:53a5:aef5::242:ac11:4

root@systemd-node-1:/# kubectl get node -o wide
NAME             STATUS   ROLES                  AGE    VERSION        INTERNAL-IP   EXTERNAL-IP   OS-IMAGE             KERNEL-VERSION   CONTAINER-RUNTIME
systemd-node-1   Ready    control-plane,master   2m5s   v1.31.4+k3s1   <IP_ADDRESS>    <none>        openSUSE Leap 15.4   6.8.0-1016-aws   containerd://1.7.23-k3s2

root@systemd-node-1:/# kubectl get nodes systemd-node-1 -o go-template --template='{{range .status.addresses}}{{printf "%s: %s\n" .type .address}}{{end}}'
InternalIP: <IP_ADDRESS>
InternalIP: fd7c:53a5:aef5::242:ac11:4
Hostname: systemd-node-1

are the IPs both on the same interface? I'm not sure how the kubelet handles it if the internal IPs from different families are on different interfaces. It may expect them to all be on the same interface?

are the IPs both on the same interface? I'm not sure how the kubelet handles it if the internal IPs from different families are on different interfaces. It may expect them to all be on the same interface?

On the same interface there's 3 IPs, two from a /64 IPv6 prefix, one of which is ULA prefix, one of which is global prefix and then there's a one IPv4 address.

You might try deleting the node with kubectl delete node XX and see if it comes back when the node is recreated?

You might try deleting the node with kubectl delete node XX and see if it comes back when the node is recreated?

On a single-node cluster?

I think I found the culprit, if cloud manager is not enabled, it doesn't get set to both.

Did you disable the embedded stub cloud-controller-manager without deploying a replacement? Yeah, things will be broken if you don't do that. That is covered in the docs.

It works fine. The etcd node doesn't get deleted, and the kubernetes node is recreated on startup.

etcd went into a state where it couldn't recover due to "not enough members, rejecting leave" or something like that so I had to fully reset the cluster instead.

if cloud manager is not enabled, it doesn't get set to both.

Did you disable the embedded stub cloud-controller-manager without deploying a replacement? Yeah, things will be broken if you don't do that. That is covered in the docs.

I hadn't understood the point of it.

https://docs.k3s.io/networking/networking-services#deploying-an-external-cloud-controller-manager

Sets node InternalIP and ExternalIP address fields based on the --node-ip and --node-external-ip flags.
If you disable the built-in CCM and do not deploy and properly configure an external substitute, nodes will remain tainted and unschedulable.

If you disable the built-in CCM and do not deploy and properly configure an external substitute, nodes will remain tainted and unschedulable.

That's not true as it does get scheduled with Cilium.

That particular bit of verbiage has been there since February 2023.
https://github.com/k3s-io/docs/blame/main/docs/networking/networking-services.md#L107


Downloaded SVG turns to blacksquare when opened with Illustrator and other editors

Hi there! Thanks for the awsome library. Yet there's an issue with downloaded SVG file.
Once I download an SVG file and try to open it with something other than a browser or Figma, it turns into a black square when I import it for instance in Adobe Illustrator or Photoshop. Any ideas on how to solve it?
Bellow is sample SVG generated with the library.

The options used to make one:

const getOptions = () => {
return {
width: 200,
height: 200,
type: 'canvas' as DrawType,
data: props.url,
image: data:image/svg+xml;base64,${btoa(getLogo(''))},
margin: 0,
qrOptions: {
typeNumber: 0 as TypeNumber,
mode: 'Byte' as Mode,
errorCorrectionLevel: 'H' as ErrorCorrectionLevel,
},
imageOptions: {
hideBackgroundDots: true,
imageSize: 0.4,
margin: 20,
crossOrigin: 'anonymous',
},
dotsOptions: {
color: qrColor,
type: 'rounded' as DotType,
},
backgroundOptions: {
color: '#FFFFFF',
},
cornersSquareOptions: {
color: qrColor,
type: '' as CornerSquareType,
},
cornersDotOptions: {
color: qrColor,
type: '' as CornerDotType,
},
} as Options;
};

Any ideas on how to solve it?

Try opening the file in Illustrator with a "File > Open" instead of dragging it in.  We noticed that solved this issue.

having the same issue in sketch.

Hi @Glorfi, @waglons , @sebastienb
It should be partially fixed in version v1.8.0.
The image is still not displayed in Illustrator, but I can't fix it as Illustrator doesn't fully support SVG standard


"Headers" should be called "Headings"

The two words mean different things, and "heading" is the correct term here.

Could you elaborate more or provide a link to the file that needs to be updated?

Sorry, I was talking about the two cheatsheets in the Wiki. I don't use the extension, I was just checking the cheat sheets, and the real name of "headers" is actually "headings". Item 1.

I think DrZYin refers to the section "Headers" (about  H1, H2, etc) at https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet#headers
If so, I believe he's right: that section should be called "Headings", not "Headers".
(like https://en.wikipedia.org/wiki/Markdown#Heading or https://github.github.com/gfm/#atx-headings)


Allow multiple non-file parser filters.

As an operator, I want to be able to include both files and inline content in parser filters, like this:
logstash_parser:
  filters:
  - path: /path/to/file
  - content: |
    if [@source][component] == "junk" {
      drop{}
    }

This patch aims for backwards compatibility, so that users can still use the previous interface:
logstash_parser:
  filters:
  - some_name: /path/to/file

cc @cnelson @wjwoodson

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

@jmcarp Currently inline content can be also added to list of rules using parser-config-lfc job:
https://github.com/cloudfoundry-community/logsearch-for-cloudfoundry/blob/5b50ac65dd472d002f34bfb91675b1434774a836/jobs/parser-config-lfc/templates/logstash-filters-custom.conf.erb

Thanks @Infra-Red. I can use parser-config-lfc, but I think that's unnecessary indirection. It seems simpler to add custom filters directly to the ingestor_syslog job, rather than adding them to parser-config-lfc and then updating the properties of ingestor_syslog as well. Why split custom parser config across two jobs when it could live in a single job?

@jmcarp Sound reasonable, just wanted to mention about parser-config-lfc job.


Fix cobra example for init

For contributor use:

[ ] Targeted PR against master branch
[ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work
[ ] Code follows the standards mentioned here
[ ] Updated relevant documentation
[ ] Re-reviewed Files changed in the Github PR explorer
[ ] Added appropriate labels

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 33.90%. Comparing base (074263d) to head (65304b8).

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #1686   +/-   ##
=======================================
  Coverage   33.90%   33.90%
=======================================
  Files         100      100
  Lines        6256     6256
=======================================
  Hits         2121     2121
  Misses       3851     3851
  Partials      284      284

Flag
Coverage Δ

unittests
33.90% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

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


Responsive image support + Misc

feature addition https://github.com/ApoorvSaxena/lozad.js/issues/28
compressed banner and images used in demo

@thiamsantos @stephenkingsley @lptn @bfred-it please review

@ApoorvSaxena I pick it up! I will review in today.

I think is cool!

+1

Awesome!!!!!


Where will the RC2 annoucement be placed?

Knowing that it's "mid-May" but not an exact date, what page(s) should I watch for when RC2 becomes generally available? Where will the official announcement be?

Always here https://blogs.msdn.microsoft.com/webdev/

Thanks!

This week is RC2 week. Smells like freshly cooked bits.
Just like mama used to make. Now let's get this out of the oven. We're starving. ;-)

Actually, I was wondering - why doesn't it also show up in the "Announcements" repo? Other, "smaller" things do, like breaking changes, but why not "it's official - RC2 is out!" ?? I don't monitor the blogs as much as the repos, and I certainly would see that one... :-)


Positive confirmation that Agent made a connection to Collector

We should investigate whether it's possible to log a less cryptic message when the agent connects to the collector. Right now, the only indication that it happened is this message:
{"level":"info","ts":1598254766.3977652,"caller":"base/balancer.go:196","msg":"roundrobinPicker: newPicker called with info: {map[0xc000330270:{{:14250  <nil> 0 <nil>}}]}","system":"grpc","grpc_log":true}

Im not sure if we can use the connectivity semantics for gRPC for this.

From your link, it makes me believe that we could use GetState() or WaitForStateChange()?

Hi guys! can i pick this up?

From your link, it makes me believe that we could use GetState() or WaitForStateChange()?

Yes, we can use the GetState to get the current status and WaitForStateChange for status changes.

Would you be able to send a PR with your proposal? It's easier to test it like that ;-)

Would you be able to send a PR with your proposal? It's easier to test it like that ;-)

Sure, let me PR my proposal. thank you ;-)


Adds gas price to the json sent to the http solver.

I am assuming that for price estimation quasimodo won't be querying external liquidity sources, because speed is so important. Let me know if this doesn't make sense - we would have to also pass the gas price in the price estimation.

Codecov Report

Merging #1766 (bffa2b1) into main (f2800fd) will increase coverage by 0.02%.
The diff coverage is 66.66%.

@@            Coverage Diff             @@
##             main    #1766      +/-   ##
==========================================
+ Coverage   65.36%   65.38%   +0.02%
==========================================
  Files         181      181
  Lines       37623    37626       +3
==========================================
+ Hits        24591    24602      +11
+ Misses      13032    13024       -8


Where is the DRL training code?

I didn't find the sampled AlphaZero code in the repo? Could you direct me there?

Are you looking for the supplementary information? https://static-content.springer.com/esm/art%3A10.1038%2Fs41586-022-05172-4/MediaObjects/41586_2022_5172_MOESM1_ESM.pdf

Thanks for your interest. Unfortunately, the sampled AlphaZero code is not open sourced.


Register Error: undefined undefined

I tried to register an existing email but the error is
Register Error: undefined undefined

The error should be
User with that email already exists

You probably didn't have the backend server running - this occurs when its unable to get the response.
If you think its a different reason, please post javascript stacktrace.

 Should be a simple fix. If you would like to propose a PR I will happily merge after reviewing. The fix for this could be done on either the front-end or the backend, and I'm fine with whatever way you implement it.

@dternyak done create PR :)


Webfont not working on windows and in opera

I have successfully created a webfont with svg from Glyphicon and various others sources. They look great on Linux with Firefox and Chrome.
But they look bad on Opera Linux/Mac and Firefox/IE Windows.
Website www.hagen-bauer.de
Any ideas?

I don’t know what is bad for you so I can’t tell. No autohinting?

did you test it with opera or with firefox / IE in Windows

Icons look the same. Did you to compare demo HTML pages generated by webfont?

Ok, you are right. Icons are the same. Do you have an idea why the behave totally different. The positions are totally different.

Check demo HTML pages generated by webfont to be sure that it’s something from webfont, not from your site’s styles.
Try different engine: node or fontforge.
Share your gruntfile and icons.

I think I have fount the reason. I am sizing the icons with fontsize. This is working fine on my main platform Linux. Unfortunately Opera and Windows Browsers behave differently.
I now have to find a way to increase the fonts / icons that is working.

For me it is not understandable why the font is working on some browsers and  not working on others using the same css by just adding a fontsize. If a font is not working the same on Windows and Linux using the same Browserversion something is wrong with the generated Font and CSS.
I have not found a document how to install the node engine. Where can I find help?

You don’t need to install anything except grunt-webfont itself. Just change engine option to node.

I tried it already but I got an error so I thought something is missing
Running "webfont:icons" (webfont) task
Fatal error: Callback was already called.
webfont: {
icons: {
src: '_icons/*',
dest: 'fonts',
destCss: '_sass',
options: {
stylesheet: 'scss',
relativeFontPath: '/fonts',
autoHint: false,
engine : 'node',
types: 'eot,woff2,woff,ttf,svg'
}}},

Could you send me (or upload somewhere) to<EMAIL_ADDRESS>your gruntfile and icons? It’s something that I couldn’t reproduce so far.

you've got mail

i have it. one of the icons was rectangular. After I resized it it seems to work  https://www.hagen-bauer.de/2015/08/grunt-web-font-probleme.html


the first submission of inception (embedding service):

uses cpu for query embedding, and gpu - for everything else;
i left port 8005 as it ran on my machine but we may need to change to a new one as a default;
tried to mimic Doctor microservice;
option to run in a docker;
the embed_endpoint includes some text preprocessing but we need to decide on whether we want all pre-processing be done in the client's script that will be sending texts for embedding;
tested on my ubuntu server, v100 gpu;
'inception' sub-folder within 'inception' is like a dream within a dream.

Thanks Sergei. I'll put this on Alberto's backlog for when he's back.

Thanks, @legaltextai  the embedding endpoints worked quite well and align with the proposed architecture for embedding queries and batches of opinions. In my opinion, it is a good decision to include the required text preprocessing as part of the embed endpoint.
The changes I worked on focused on refactoring the project structure to enhance maintainability and readability in the future.

I split the code into different files based on the suggested project structure in the FastAPI documentation.
Updated the code to remove warnings related to deprecated features, such as replacing on_startup and on_shutdown events with the lifespan handler for application startup and shutdown.
Centralized common functionality into helper methods, such as validate_text_length.
Consolidated exception handling into a handle_exception helper so all endpoints share a unified logic.
Resolved some failing tests and added additional test cases.
Introduced new settings:

max_query_length: To limit the size of query texts to embed. Previously, we only had a limit for document text length. This defaults to 100 characters to prevent long queries.
processing_batch_size: A setting to control the model's embedding batch size, enabling us to test and optimize performance.

Build and CI Updates:

I encountered issues running the project on my M1 machine using the image with torch 2.5.0+cu121. However, it worked fine with torch 2.5.0. I adjusted the image to install torch 2.5.0 for dev and torch 2.5.0+cu121 for prod, since GPU acceleration is not needed in development I think.
To build the production image, use: docker build --build-arg TARGET_ENV=prod
@legaltextai, could you help test this on your GPU machine to confirm everything works correctly for GPU tasks after the applied tweaks?

I attempted to update the Python version to the latest one. However, since our image is based on nvidia/cuda:12.1.0-runtime-ubuntu22.04, the latest Python versions are not available. We could install the latest version using a PPA like deadsnakes or build Python inside the image, though that might increase build time. What do you think is best?

Added pre-commit hooks with tools like Black, isort, and Flynt.

Integrated mypy and resolved all typing issues in the codebase.

Added a github lint action.

Tweaked the test action to run tests within Docker.

I set up actions to run on all branches:
on:
  push:
    branches:
      - "**"
  pull_request:
    branches:
      - "main"

But they're not running on this PR. @mlissner do you know if additional repository permissions are needed? Or is it possible that they won't run until the workflow files are merged into the main branch? According to the documentation this might sometimes be required:

Some events also require the workflow file to be present on the default branch of the repository in order to run.

Let me know what do you think.

the latest Python versions are not available

This might be a good time to check out uv. It's a much faster and more versatile tool for Python dependencies. Want to see if it helps?

Or is it possible that they won't run until the workflow files are merged into the main branch?

That's right. We'll have to get this first version in before they'll run — I think!
Want to look into the Python thing, and then I'll give this an architecture review?

This might be a good time to check out uv. It's a much faster and more versatile tool for Python dependencies. Want to see if it helps?

Sure, I’ve migrated the project from Poetry to UV.
Build time is now significantly faster! It also resolved the Python installation issue for newer versions.
I set the Python version to 3.12 because there are no Torch wheels for Python 3.13 aarch64 available in the repositories yet.
I updated the README and GitHub workflows accordingly.


fix(Storybook): Update meta links to storybooks standard color

Overview
A tiny change to appease my visual OCD.

Swaps color to storybook native.

PR Checklist

[ ] Related to designs:
[ ] Related to JIRA ticket: ABC-123
[x] I have run this code to verify it works
[ ] This PR includes unit tests for the code change

📬Published Alpha Packages<EMAIL_ADDRESS>
📬Published Alpha Packages<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://6007522e8a407816803372eb--gamut-preview.netlify.appDeploy Logs

🚀 Styleguide deploy preview ready!https://6007522e8a407816803372eb--gamut-preview.netlify.appDeploy Logs


[license] Fix SPDX license usage

Fix SPDX license usage
Self evaluation:

Build test: [x]Passed [ ]Failed [ ]Skipped
Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor<EMAIL_ADDRESS>

:memo: TAOS-CI Version: 1.4.20191203. Thank you for submitting PR #470. Please a submit 1commit/1PR (one commit per one PR) policy to get comments quickly from reviewers. Your PR must pass all verificiation processes of cibot before starting a review process from reviewers. If you are new member to join this project, please read manuals in documentation folder and wiki page. In order to monitor a progress status of your PR in more detail, visit http://nnsuite.mooo.com/.


Branch for 27673

Thank you for contributing to LangChain!

[X] PR title: langchain database agent.  Fix for ISSUE: 27673

https://github.com/langchain-ai/langchain/issues/27673

[X] PR message:

Modifying the prompt in libs/langchain/langchain/agents/mrkl/prompt.py
Changing the prompt from:
"Action Input: the input to the action"
"Action Input: the input to the action, should end with 2 spaces"
Is forcing the stream processing code to flush the last "'"

[X] Delete this entire checklist and replace with

Description: Changed the prompt.   To add 2 spaces at the end.   1 does not work (already tried)
Issue: the issue # it fixes: https://github.com/langchain-ai/langchain/issues/27673
Dependencies: NA
Twitter handle: NA

[X] Add tests and docs: NA

[ ] Lint and test:

Additional guidelines:

Make sure optional dependencies are imported within a function.
Please do not add dependencies to pyproject.toml files (even optional ones) unless they are required for unit tests.
Most PRs should not touch more than one package.
Changes should be backwards compatible.
If you are adding something to community, do not re-import it in langchain.

If no one reviews your PR within a few days, please @-mention one of baskaryan, efriis, eyurtsev, ccurme, vbarda, hwchase17.

Actually, to the maintainer who might be reviewing this.   I'm rethinking this PR.

The prompt adjustment was meant to flush the streaming.   i.e. i find that the Agent always misses the last character if it's non alphnumeric.   i.e. "*$(."....

Tried the ChatOllama class with the prompt : "reply back with hello)"

the ")" returns.

Tried Agent with ChatOllama and the last character is missed.

This implies that something is wrong between the Agent and ChatOllama

Thus I would like to hold off on this PR - while I further investigate the root cause.    Prompt adjustment is really just a band aid.

Agreed.
And even if we think giving a updated prompt is viable - it should be done through "LangChain Hub" - which i just discovered!


[Bug]: The deployment failed when setting banner array choices

Please confirm that you have:

[X] Searched existing issues to see if your issue is a duplicate. (If you’ve found a duplicate issue, feel free to add additional information in a comment on it.)
[X] Reproduced the issue in the latest CLI version.

In which of these areas are you experiencing a problem?
Extension
Expected behavior
The build & deploy successfully
Actual behavior
The build & deploy failed
Reproduction steps

Generate checkout ui extension
Setting banner status validation choices like bellow

Deploy extension

Operating System
Mac OS Monterey
Shopify CLI version (check your project's package.json if you're not sure)
^3.48.0
Shell
Vscode terminal
Node version (run node -v if you're not sure)
v16.19.0
What language and version are you using in your application?
Node v16.19.0

Hi! I believe the correct key for validations is [[extensions.settings.fields.validations]], but I just saw it different in the docs. Please try with that key and i'll pass this info to the relevant team to review the docs. Thanks!

Hi @isaacroldan, thank you very much for the support.
By the way, could you give me the example of correct one.
[[extensions.settings.fields.validations]] name = "choices" value = "[info', 'success', 'warning', 'critical']"
I am still getting error, this time is different one

Thank you very much for the support

Yep, that's the right syntax, glad is working now!


GH#530: fix typo on region parameter

IMPORTANT: Do Not Merge - To be merged by Docs Team Only
Version(s):
1.2 and 1.3
Issue:
Fix #530
Reviews:

[ ] SME: @ mention assignee
[ ] QE: @ mention assignee
[ ] Docs review: @ mention assignee
[ ] Additional review: @mention assignee (by writer)

\cherrypick 1.2.x

/cherry-pick release-1.3

/cherrypick 1.2.x


Support differences between databases

#25

Current coverage is 89.92% (diff: 83.72%)

Merging #43 into master will decrease coverage by 0.01%

@@             master        #43   diff @@
==========================================
  Files            49         48     -1
  Lines          9978       9936    -42
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
- Hits           8974       8935    -39
+ Misses         1004       1001     -3
  Partials          0          0

Powered by Codecov. Last update 34e5b77...18ee9f4


super.layoutSubviews() crash

Version library: 7.0.5

Hi!
First of all, thanks for this amazing library.
I have a crash here:

The calendarView is in sync with a tableview and when the tableview scrolls very fast, this crash happen!
self.compactableCalendar?.calendarView.selectDates(date)
self.compactableCalendar?.calendarView.scrollToDate(date)

If i remove this lines of code, the crash disappear.
What do you think may be?

Can you give me some more information?
You said that the calendar is in sync with a tableView.
I do not fully understand what this means. Screen shots can also help with your description.
I need enough information to recreate the crash on my end.

Is really simple. I have a calendar table view (the section that represents the day, and every cell represent an appointment. If there are no appointments, there is a placeholder cell, then for every day there is always almost one cell).
In the table view method
func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath)

i put
self.compactableCalendar?.calendarView.selectDates(date)
self.compactableCalendar?.calendarView.scrollToDate(date)

that allow the calendarView to follow the tableview scroll.
Consider that there is an infinite scroll, on table view and on calendar view, then, when the end of the month is showed (and the end of the month is not on my datasource array), I update the datasource array and reload the calendar view.
Apparently the problem is the selectDates() method. Without seems to be working properly.

I found this https://github.com/patchthecode/JTAppleCalendar/issues/444 but I don't know if it is correlated.

just noting a couple things. Correct me if i'm wrong.

You achieved infinited calendar scrolling by reloading the calendar once it gets to the end of its data. Is this reloading also happening inside the tableView's willDisplay cell function?
Does the reload happen before or after the following?self.compactableCalendar?.calendarView.selectDates(date)
self.compactableCalendar?.calendarView.scrollToDate(date)

Does the crash happen when a calendar reload is happening? in other words, does the crah only happen once the calendar gets to the end of its data source, and is beginning to get more data?
If possible, can you provide a stripped down version of your bug? This is the easiest way for me to solve the problem the fastest.

also, this link = faster chat times -> https://gitter.im/patchthecode/JTAppleCalendar

https://files.gitter.im/patchthecode/JTAppleCalendar/P6yI/calendar-view.gif

is it possible that you can create a sample project with this bug?
I tried and could not recreate it.
couldNotReproduceBug.zip

is this still an issue?

For the moment, resolved using calendarView.scrollToDate(selectedDate, animateScroll: false)


Implement alias attribute for Volume class

Implement an alias attribute for OVIRT::Volume class. This feature is present since RHEV 3.1 and onwards. A backward compatibility is achieved by simply not using alias in options when a volume object is created.

Implementation ready in pull request #66

Closing as #66 has been merged.


Add keepMounted and itemProps to Vue API to enable sticky groups

I wanted to use virtua for the usecase of sticky groups + virtualized scrolls in Vue but found that the APIs for that is not yet there.
I have added keepMounted from the React API and an additional itemProps to facilitate the Sticky Groups in Vue.
I have also added a story for the same.
If the PR is okay in its direction, I can add some documentation as well if needed.

Released in 0.39.1.


Add support for flutter tool to assemble darwin-arm64 resources

Flutter assemble currently ignores the --TargetPlatform=darwin-arm64 argument and produces darwin-x64 artifacts even if arm is requested. Instead it should build arm64 resources.
Related: https://github.com/flutter/flutter/issues/60113

What is the actual plan for building desktop applications?
Should we produce either an x64 or an arm64 bundle? What about cross compilation? Is there some sort of bundle format we could use to create a multi arch bundle? How would someone distribute a macOS desktop app that targets arm64 and x64?
Getting the capability to build this at all is definitely a good first step, but lots of unanswered questions .. or at least unknown to me.
FYI @jmagman

@jonahwilliams, I agree, there are pieces of the big picture not resolved yet.
For our use-case however  we have flutter assemble integrated with cargo build (rust project). So the cross compilation is handled by cargo, but of course flutter assemble must know how to produce correct platform builds. Universal binaries are produced by a script that lipos two app bundles together. This approach worked best for us in past, since debug build are done much more frequently than production and those really only need one architecture.

So you're using lipo on both the project binaries and on the engine binaries?

(Just asking if that works, seems like a reasonable way to do it)

If that is the case, then instead of using target-platform we should handle it like we do for iOS arches, with a specific define

For release builds we start with two separate app bundles (that include frameworks, dylibs, etc), one for x86_64 and one for arm64 and then run a script that takes these bundles and produces universal one by lipoing all binaries inside and copying other files.

If that is the case, then instead of using target-platform we should handle it like we do for iOS arches, with a specific define

Specific define? Other than --TargetPlatform? I know there is a DarwinArch, but I was under impression that that is due to historical reasons, as this comment would suggest.

TODO(cbracken): split TargetPlatform.ios into ios_armv7, ios_arm64.

There is already TargetPlatform.linux_x64, linux_arm64, fuchsia_x64, fuchsia_arm64, possibly windows_arm64 in future, I'm not sure I understand why darwin should be treated differently.

For release builds we start with two separate app bundles (that include frameworks, dylibs, etc), one for x86_64 and one for arm64 and then run a script that takes these bundles and produces universal one by lipoing all binaries inside and copying other files.

It should be the goal of flutter build macos to support this out of the box, and not require two separate builds and and another script on top of that.

That todo is also very old and probably needs to be removed, it was written before we had to begin handling iOS arches differently. Instead it would make sense to handle macOS more like we do iOS. For example:
https://github.com/flutter/flutter/blob/master/packages/flutter_tools/lib/src/build_system/targets/ios.dart#L29

If i would change things, I would remove the arch from target platform entirely, and make that a separate dimension. We should be able to build for macOS targeting at least one of x64 and/or arm64, without recompiling dart or rebundling assets

That todo is also very old and probably needs to be removed, it was written before we had to begin handling iOS arches differently. Instead it would make sense to handle macOS more like we do iOS. For example:
https://github.com/flutter/flutter/blob/master/packages/flutter_tools/lib/src/build_system/targets/ios.dart#L29

I guess my impression was very wrong then :) I just noticed the comment above AndroidArch.
So should TargetPlatform.darwin_x64 be left there for compatibility reasons and TargetPlatform.darwin added that would use DarwinPlatform just like ios does?

Adding TargetPlatform.darwin for now SGTM, provided it doesn't break too much 😅

Actually, I think perhaps it should be fine to replace TargetPlatform.darwin_x64 with  TargetPlatform.darwin completely as long as --define=TargetPlatform=darwin-x64 keeps working in flutter assemble (it would be same as --define=TargetPlatform=darwin --define=DarwinArch=x64)

That sounds good!

It does feel a bit off that there is TargetPlatform.ios and --define=IosArchs=... and then TargetPlatform.darwin. But iOS is darwin. It really should be TargetPlatform.macOS and --define=MacOSArchs=....

@jonahwilliams, I added another PR. It can now build universal binary of App.framework, just like iOS can.
i.e. flutter assemble -dTargetPlatform=darwin "-dDarwinArchs=arm64 x86_64".
It doesn't change other aspects of the build, i.e. the artifacts are still expected to be in bin/cache/artifacts/engine/darwin-x64*.  This would likely change later - once there are universal artifacts available, it could be all moved to engine/darwin*.
Also there is a question whether we need HostPlatform.darwin_x64 and HostPlatform.darwin_arm once everything becomes universal and rosetta is out of picture.

Closed via https://github.com/flutter/flutter/pull/81243#pullrequestreview-647395104.


Global Reader

The Global Reader role needs to be added to the roles that are able to review sign-in activity.
https://docs.microsoft.com/en-us/azure/active-directory/users-groups-roles/directory-assign-admin-roles#global-reader-permissions

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

ID: 1558e7c0-eaaf-d081-30c3-5c13e0876071
Version Independent ID: 1106c01b-1e4c-5b04-be84-432f99ec4d8f
Content: Sign-in activity reports in the Azure Active Directory portal
Content Source: articles/active-directory/reports-monitoring/concept-sign-ins.md
Service: active-directory
Sub-service: report-monitor
GitHub Login: @MarkusVi
Microsoft Alias: markvi

@poortom1004 Thanks for your feedback! We will investigate and update as appropriate.

Hey @poortom1004  thanks for this information, we're going to go ahead and make this change, please let us know if you have anymore concerns in regards to this.
If there's no more concerns in regards to this issue, I will be closing this out by end of day tomorrow.


[plugins] Unclear how to succinctly incorporate plotjugger data

I am trying to use plotjugger in our internal codebase (Anzu). I envisioned doing something like this in a BUILD.bazel:
anzu_ros_sh_alias(
    name = "plotjuggler",
    data = [
        # Ensures we can access the ROS 2 subscriber topic.
        "@ros2//:plotjuggler_ros_cc",
    ],
    # Provides access to custom-generated messages.
    py_interface_deps = ["//:ros_msgs_all_py"],
    target = "@ros2//:plotjuggler_plotjuggler",
)

However, to make this work, I had to do hack our our ros2/repository.bzl (
click to expand)

_ROS_PACKAGES = [
...
    "plotjuggler",
    "plotjuggler_ros",
...
]

_BUILD_EXTRA_TPL = """
# Extra content for Anzu.

cc_library(
    name = "plotjuggler_ros_cc",
    data = [
        ":plotjuggler_ros_share",
        ":plotjuggler_ros_transitive_py",
    ] + glob(
        ["${workspace_prefix}/lib/plotjuggler_ros/lib*.so*"],
        allow_empty=False,
    ),
)
"""

def _append_to_file(repo_ctx, file, content):
    orig_content = repo_ctx.read(file)
    new_content = orig_content + "\n" + content
    repo_ctx.file(file, new_content)

def _anzu_ros2_local_repository_impl(repo_ctx):
...

    base_ros2_repository(repo_ctx, workspaces_in_sandbox)

    workspace_local_path = repo_ctx.attr.workspaces[0].replace("/", "_")
    build_extra = _BUILD_EXTRA_TPL.replace(
        "${workspace_prefix}",
        workspace_local_path,
    )
    _append_to_file(repo_ctx, "BUILD.bazel", build_extra)

Questions

Why did I have to inject my own plotjuggler_ros_cc library? I would've thought this would be caught by scanning.
Why did I have to include plotjuggler_ros_transitive_py? I would've thought plotjuggler_ros_share should have covered it.

For 1, the package.xml in plotjuggler_ros is the problem. It contains the conditional tags that are not parsing correctly : https://github.com/facontidavide/PlotJuggler/blob/d16637fa9d47208c30e448d64c7a15ee2f85d83f/package.xml#L40.
Removing those fixed the problem for me. I'll look at fixing the parsing logic.

For Q2, I see the _transitive_py as a dep only applies to py packages or executables, and not to our cc rules. Looking into the _ros__share rule.

The plotjuggler_ros_share seems to be a filegroup rule with srcs as package_run_dependencies. As per the README :

`<package_name>_share` filegroup for files in the `<package_prefix>/share` directory
but excluding those files that are build system specific.

and for _transitive_py :
`<package_name>_transitive_py` Python library if the package does not
 install any Python libraries but it depends on (and it is a dependency of)
 packages that do. This helps maintain the dependency graph (as Python library
 targets can only depend on other Python library targets).

As per the rules here that behavior seems consistent to me : https://github.com/RobotLocomotion/drake-ros/blob/4c17af07b5211424af654bbca4cb290cdb6c4085/bazel_ros2_rules/ros2/resources/ros2bzl/templates.py#L37-L48 ?
The _transitive_py targets become deps only to executables, or package py libs : https://github.com/RobotLocomotion/drake-ros/blob/4c17af07b5211424af654bbca4cb290cdb6c4085/bazel_ros2_rules/ros2/resources/ros2bzl/templates.py#L170
, and not to _share targets.

Q1
Hm... Why does the conditional parsing cause the _cc target to not be emitted?
I would have thought that the package.xml would indirectly be parsed by CMake + ament logic.
Do you know how that gets parsed via normal colcon invocation, and where we may be deviating?
Ideally, we should fix the root issue rather than eliminating the condition for this and other packages (as you indicated in
#336).
Q2
Sorry, my question was less "why am I using Python stuff", but rather "what files were in this target that was not already present in the _cc target"?
Without that target, I was unable to have a Bazel wrapped binary of plotjugger load the ROS 2 topic plugin.

Q1
Hm... Why does the conditional parsing cause the _cc target to not be emitted? I would have thought that the package.xml would indirectly be parsed by CMake + ament logic. Do you know how that gets parsed via normal colcon invocation, and where we may be deviating?
Ideally, we should fix the root issue rather than eliminating the condition for this and other packages (as you indicated in #336).
Q2
Sorry, my question was less "why am I using Python stuff", but rather "what files were in this target that was not already present in the _cc / _share target"? Without that target, I was unable to have a Bazel wrapped binary of plotjugger load the ROS 2 topic plugin. I think you answered the _share question, but I'm still not sure why I couldn't load plugins with just _cc.

For Q1 :
In drake-ros, we're parsing the package xml here : https://github.com/RobotLocomotion/drake-ros/blob/4c17af07b5211424af654bbca4cb290cdb6c4085/bazel_ros2_rules/ros2/resources/ros2bzl/scraping/metadata.py#L23. tree.find() does not care about the condition, and just returns the first entry that it can find. In the case of plotjuggler_ros, that is catkin, and since that does not contain the keyword cmake, the cc target is never generated : https://github.com/RobotLocomotion/drake-ros/blob/4c17af07b5211424af654bbca4cb290cdb6c4085/bazel_ros2_rules/ros2/generate_build_file.py#L121-L126
The substitution is handled here in ROS : https://github.com/ros-infrastructure/catkin_pkg/blob/74d072fb2e4b8aa4637aec68542a8cddd1775bde/src/catkin_pkg/condition.py#L26-L35

If the version constraints are spelled consistently, I think we should update our parser to check if the condition implies ROS 2, e.g.,
def _is_most_likely_ros2(node):
    condition = build_type.get("condition")
    if not condition:
        return True
    elif condition == "$ROS_VERSION == 2":  # or something like this
        return True
    else:
        return False

def get_ros2_config_nodes(nodes):
    return [_is_most_likely_ros2(node) for node in nodes]

build_types = get_ros2_config_nodes(tree.findall("./export/build_type"))
assert len(build_types) > 0
build_type = build_types[0]

If there is super complex options, then we should just vendor in that parsing logic you quoted.


Add possibility to query sg via VPC

Codecov Report

Merging #5 into master will decrease coverage by 0.31%.
The diff coverage is 53.84%.

@@            Coverage Diff             @@
##           master       #5      +/-   ##
==========================================
- Coverage   68.38%   68.07%   -0.32%
==========================================
  Files           6        6
  Lines         699      711      +12
==========================================
+ Hits          478      484       +6
- Misses        160      163       +3
- Partials       61       64       +3

Impacted Files
Coverage Δ

services/client.go
45.45% <ø> (ø)

services/containers.go
77.51% <33.33%> (-0.75%)
:arrow_down:

services/vpc.go
66.94% <60.00%> (-0.65%)
:arrow_down:

Continue to review full report at Codecov.

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


drush sql-dump @alias | drush sql-cli @alias no longer works

Cannot run this command to sync down a remote database anymore (Drupal VM 3.0.0). Here is the output:
drush sql-dump @yccyi.dev | drush sql-cli @local.yalecore
Unable to load class Drush\Sql\Sql                                                                                [error]
Unable to load class Drush\Sql\Sql                                                                                [error]
exception 'Drush\Sql\SqlException' with message 'Unable to find a matching SQL Class. Drush cannot find your database[error]
connection details.'

Looks like my vm is running Drush 9, the remote server has Drush 8 - if that is a factor.
Other commands, like status and cc all, work.

If you run the commands separately which is it that fails? Could you then post the drush sa configurations for that alias.
drush sql-dump @yccyi.dev > foo.sql
cat foo.sql | drush sql-cli @local.yalecore

drush sa @whichever

Output:
drush sql-dump @yccyi.dev > test.sql
sh: mysqldump: command not found
Database dump failed

That was executed against an Acquia server, by the way.

Seems mysqldump is not in the users $PATH on the remote. I've never tried using Acquia services so not sure what the setup should be.

Thats odd... it worked the last time I did it. Granted, that might have been a few weeks or more.

If you run drush @yccyi.dev ssh, is mysqldump available or can you find it somewhere?

Output from that:
drush @yccyi.dev ssh
yccyi@srv-4399:/var/www/html/yccyi.dev/docroot$ mysqldump
Usage: mysqldump [OPTIONS] database [tables]
OR     mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
OR     mysqldump [OPTIONS] --all-databases [OPTIONS]
For more options, use mysqldump --help

Weeeeeeeelp looks like it is time for me to eat lunch - I just realized my arguments are backwards from reading a previous comment.
Should be drush @yccyi.dev sql-dump | drush @local sql-cli

Oh! Haha nice catch I entirely missed it as well.


Add 'table' safeMode specs

I missed out on table traces in https://github.com/plotly/orca/pull/55, this PR adds them in.
cc @nicolaskruchten

Nice job! 💃