Release v0.3.5

Migrated from GitLab: https://gitlab.com/meltano/sdk/-/issues/191
Originally created by @aaronsteers on 2021-08-16 16:15:41

Evergreen Releases - Prep Steps:
An Evergreen release process means we are always releasing. We open a new release ticket as soon as we've completed the prior release. (It's therefore the final step in this checklist.)
"Evergreen Prep" Checklist

[x] Open this Issue
[ ] Indicate the version to be released here in the issue's title and here: vX.Y.Z

If the release number changes (from minor to major or patch, for instance), update the version here and in the issue description.

[ ] Provide the planned release date: yyyy-mm-dd

Release Readiness Checklist:
Engineering team, the Monday prior to the release:

[ ] Ensure all already-merged commits since the last release have changelog entries (excepting non-user-impacting commits, such as docs fixes).
[ ] Create a comment in this issue with pending-but-not-merged MRs potentially shipping.

Otherwise a comment that all known merge candidates are already merged.

[ ] Link issues to this issue which have already merged, or are expected to merge.

Release Checklist
Marketing and Product, on the day prior to the release:
Leveraging the combination of linked issues

[ ] Review the changelog for grokability, merging an update for clarity/readability/typos if needed.
[ ] Create summary readouts for any planned blog posts, optionally requesting clarification or additional exposition in the #engineering-team channel.

Rotating assignee, on the morning of the release:

[ ] Manual steps:

[ ] Unlink any 'slipped' issues which are not being included in this release.
[ ] Create a corresponding MR on a branch named <issue>-release-vX-Y-Z (the default name if your issue is titled correctly)
[ ] The release-vX.Y.Z MR is ready when:

[ ] Changelog includes all meaningful user-facing updates since the last release

[ ] Compare against main branch commit history

[ ] Version is bumped:

[ ] pyproject.toml
[ ] docs/conf.py
[ ] cookiecutter/tap-template/pyproject.toml
[ ] cookiecutter/target-template/pyproject.toml

[ ] Changelog is flushed with the appropriate version number
[ ] Changes above are committed as changelog and version bump
[ ] Open the Changelog in preview mode, mouse over each link and ensure tooltip descriptions match the resolved issue. Check contributor profile links to make sure they are correct.

[ ] Check this box when the CI pipeline status is green :white_check_mark:
[ ] Merge to main with the merge commit message Release vX.Y.Z

[ ] Release steps:

[ ] Manual:

[ ] Cut a tag from main named vX.Y.Z with Message=Release vX.Y.Z

Note: tag name must exactly match poetry version text

[ ] Automated CD pipeline:

In response to new tag creation, these steps are performed automatically in Gitlab pipelines:

Abort if tag vX.Y.Z does not match output from poetry version --short
Publish to PyPi

[ ] Check this box when confirmed

Create a Gitlab 'Release' from the specified tag

[ ] Open the next Release issue, assign as appropriate, and provide that link here: ___

Announcements, Marketing, and Promotion
Marketing or Product team:

[ ] Post-release announcement steps:

[ ] Post announcement to Meltano slack: #announcements
[ ] Cross-post (share) to #sdk
Copy-paste to:

[ ] Singer slack: #meltano, #singer-sdk
[ ] dbt slack: #tools-meltano

[ ] Blog post
[ ] Tweet the blog post

View 2 previous comments from the original issue on GitLab


Add box-shadow to Add choice button

@zulipbot claim

What's the intent with this issue?  Is the idea to have a focus outline?
For context, this is in the poll widget.

It is a design
It gives the button a 3d effect
On Tue, 9 Nov 2021 at 19:35, Tim Abbott @.***> wrote:

What's the intent with this issue? Is the idea to have a focus outline?
For context, this is in the poll widget.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/zulip/zulip/issues/20113#issuecomment-964425107, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ARKQA7WVMG2LNS73MDKITY3ULFSXTANCNFSM5HB7BWQA
.

@zulipbot claim

@zulipbot claim

Closing out this issue in favor of #20283.


Finish "Help menu"

Changes Proposed
The help menu UI is finished.

Check List

[x] The title of my pull request is a short description of the changes
[x] This PR relates to some issue: #284
[ ] I have documented the changes made (if applicable)
[ ] I have covered the changes with unit tests

@chad11111


support blob on native level

If there are no objections, I'd like to split this PR into two and first merge only the blob support.
It needs to be updated with test cases as well.
I have no opinion about the C++11 tuple support, motivation is unclear to me.
BTW, there has been similar request on soci-devel.

Blob for sqlite3 is a pretty cool and handy thing (UTF-8 and the like). Yeah, not sure about the tuple stuff. Might look into that

I think this was implemented a long time ago, at least there is blob (dt_blob) support in SQLite3 backend and the unit test "SQLite blob" passes.
So I guess this PR is obsolete, but please correct me if I'm wrong.


[BUG] Rke2 cluster creation finds multiple of same Nutanix Cluster

Rancher Server Setup

Rancher version: 2.9.3-alpha4
Installation option: Helm Chart

If Helm Chart, Kubernetes Cluster and version: RKE2 v1.30.5+rke2r1

Proxy/Cert Details: No proxy   letsencrypt cert

Information about the Cluster

Kubernetes version: RKE2 v1.30.5+rke2r1
Cluster Type: Nutanix

User Information

What is the role of the user logged in? Admin

Describe the bug
When creating a rke2 cluster with Nutanix as provider you get:
Failed creating server [fleet-default/test-pool1-r7h69-t5dpj] of kind (NutanixMachine) for machine test-pool1-r7h69-t5dpj in infrastructure provider: CreateError: Downloading driver from https://rancher.redacted/assets/docker-machine-driver-nutanix Doing /etc/rancher/ssl docker-machine-driver-nutanix docker-machine-driver-nutanix: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, stripped Running pre-create checks... Creating machine... Error creating machine: Error in driver during machine creation: more than one Cluster found with name YODA
To Reproduce
create a rke2 cluster with Nutanix as provider.
Result
No nodes are created / stuck in a loop
Expected Result

Nodes created.
Screenshots

Additional context

We only have one cluster in Nutanix. Rke1 works and importing rke2 works.

Prism central being named same as cluster caused issue.


Topic too slow promise

3 times green pass. Merging

Fixes https://github.com/MarketSquare/robotframework-browser/issues/818


Thread.exclusive -> Mutex

Thread.exclusive has deprecated in Ruby 2.3.
See: http://mla.n-z.jp/~w3ml/w3ml.cgi/ruby-changes/msg/40473

:+1: Seems good to me

:+1: great

ref: https://bugs.ruby-lang.org/issues/11904


Check env variable for cloudconfig networks

Fixes that if a network was set using environment variables that OMG wouldn't recognize there being a valid network

FYI we have an issue for this https://github.com/enaml-ops/omg-product-bundle/issues/13 and various workarounds all over the place.
This has finally been fixed upstream so the better fix would be to update the CLI package.


work correctly on chainer>=2.0.0

https://docs.chainer.org/en/stable/reference/generated/chainer.links.caffe.CaffeFunction.html

Thank you for your PR, and I am sorry that the reply was delayed.
LGTM.

@rezoo pr #14 seem fixed the same problem as this pr. also you may want to close #6


Sometimes reconnect to validator will result in answers not being sent

Sometimes on validator pool reconnect answers will stop at the time of the reconnect, but will continue to receive answer response, just won't send a question beyond that initial loss point.

Advanced logging was added to determine the root cause of this. Will revisit once new information is gathered.

Logging not reporting any issues. will monitor. Closing for now.


Update ruff formatter to work differently between forks and native branches

I was silly and didn't battle test my previous PR with a real fork: #815
Now this should be fixed and am proving that using this forked branch PR as an example. You'll notice the conditional github action steps in the failed jobs in previous commits: https://github.com/datafold/data-diff/actions/runs/7350229384/job/20011518084
and successful jobs: https://github.com/datafold/data-diff/actions/runs/7350235796/job/20011534959?pr=821
I verified the current state of auto committing ruff format changes works with native branches here: https://github.com/datafold/data-diff/actions/runs/7350253087/job/20011580724

Native branch PR: https://github.com/datafold/data-diff/pull/819

Also, I updated logic to skip the motherduck integration test similar to how we skip testing some databases if the github action is kicked off from a forked branch.
Considerations

Tried using comments similar to the previous black formatting bot but it doesn't work with forks
Did research on https://github.com/peter-evans/create-or-update-comment/tree/v1/ and pull_request_target but it's not worth the security risk with secrets accidentally being exposed if a forked branch PR kicks off github actions that print secrets

TODO: Include a fix for secrets access from forked branch PRs as by default they are not exposed

I'm going to add a labeling mechanism that maintainers are allowed to run integration tests for forked branch PRs similar to this: https://github.com/dbt-labs/dbt-snowflake/blob/main/.github/workflows/integration.yml


Working on Mambo

I work on a project with different drones and video tracking.
I add the possibility to change the flying mode, I use it in "difficult" mode like a normal drone.
And I completed the bleConnection.py with the function send_single_pcmd_command witch is in the WifiConnection.py

These look good. Merging now!


Add frame limit to Simulation class

Added a max_frames parameter to the Simulation class to limit the number of frames.
The simulation now stops automatically when the frame limit is reached.
Default frame limit is set to 600.
Added a message: "Simulation stopped: Frame limit reached." when the limit is hit.
 So läuft sie nicht unendlich lange und spart Ressourcen

Hey Zyad, could you convert this into a "Benchmarks Mode," so that it won’t be part of the normal usage scenario?


:globe_with_meridians: Add Bulgarian translation

Not sure if this page should also be updated to reflect the actual number of translations (probably for a separate PR, anyway).
Also, thank you for this great theme! ⭐

Going to merge from a separate branch. Sorry.


ASPNETCORE: Registering ImpersonatingAuthorizationService at Startup Class gives error

Issue while adding services.AddSingleton(new ImpersonatingAuthorizationService(new Administration.AuthorizationService())); to Serenity Core Application
An unhandled exception occurred while processing the request.
InvalidOperationException: No service for type 'Serenity.Abstractions.IRequestContext' has been registered.
Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(IServiceProvider provider, Type serviceType)
Code:
public void ConfigureServices(IServiceCollection services)
        {
            //...
            //....
            services.AddSingleton<IHttpContextAccessor, HttpContextAccessor>();
            services.AddConfig(Configuration);
            services.AddCaching();
            services.AddTextRegistry();
            services.AddFileLogging();
            services.AddSingleton<IAuthenticationService, Administration.AuthenticationService>();
            //services.AddSingleton<IAuthorizationService, Administration.AuthorizationService>();
            services.AddSingleton<IAuthorizationService>(new ImpersonatingAuthorizationService(new Administration.AuthorizationService()));
            services.AddSingleton<IUserRetrieveService, Administration.UserRetrieveService>();
            //services.AddSingleton<IPermissionService, Administration.PermissionService>();
            services.AddSingleton<IPermissionService>(new LogicOperatorPermissionService(new Administration.PermissionService()));
        }

Have you tried this: https://github.com/volkanceylan/Serenity/issues/2645

Yes that issue has info on what you should do


default (defaultValue) for select in form seems to serve no purpose

Describe the bug
A select element in a form has an option to select one of the values as its default. This does not set it as default in my tests.
Also can't find it referenced on https://github.com/bpmn-io/form-js/blob/master/docs/FORM_SCHEMA.md, but I suspect it does not contain all possibilities.
Steps to reproduce
Make a form a select element, enter some values and set one as it's default. It does not show up as default value after deployment (tested on camunda platform 7.16)
Expected behavior
Expecting the set default to be the selected one when presented to a user.
Environment
OS: MacOS 12.0.1
Camunda Modeler Version: 5.0.0
Execution Platform: camunda platform 7.16.0
Installed plug-ins: none
Additional context
No response

Hi @rondie, thanks for sharing, and sorry for responding so late!
I was not able to reproduce this, are you able to share your .form file and the BPMN process you are running to display the form?
Adding the defaultValue to the FORM_SCHEMA would definitely make sense though. 👍
Thanks!

Hi @pinussilvestrus,
No problem for the delay in response, this is not a breaking issue.
Attached is a very simple diagram and form I made (no real world stuff). defaultValue is set through modeler GUI to Default Value one, and does not show up for me as selected when starting this process. Let me know if you need any more info.
process.zip

Thanks for sharing! I can reproduce the issue when deploying your shared files on Camunda Platform 7.16.0 (Run)

However it does not appear when I upgrade to the latest version of 7.16 (e.g. 7.16.9) or 7.17

So it seems to be fixed in the meanwhile (I can't find the exact release note yet). Did you consider upgrading to fix your problem?

That would fix this for me, and I will make sure we upgrade to Camunda Platform 7.17.
As long as Camunda Modeler allows versions 7.15 and 7.16 to be chosen, this bug will ofcourse remain.


Integrate RSpec's error reporting with Vagrant's UI object

Hi, first of all thanks for the plugin, I've been fiddling it and it's very useful!
I'd be interested in this feature. I was investigating and it looks like running RSpec might have to be converted to an action_hook so the env[:ui] object can be accessed. I might have a crack at doing this, I'm just wondering if you've already investigated and have a better idea of how this could be done.
Thanks,
Anthony

Hi @elblivion it would be great if you can create PR with that feature.
this plugin is fully supported by community and you can take a part in that.


Dear developers, i want to set dynamic IP on server and access it  Kind regards

Check out https://www.reddit.com/r/outlinevpn/wiki/index/floating_ips


Privacy - Buyer Guidelines

Buyer guidelines

Privacy & Safety
When people agree to share their data, they want to feel confident that it’s safe to do so and that they are only sharing the data that they wish to share. They need to feel safe and that their personal information is safe. We have outlined some guidelines on this below.

The data that the user is offering is only data from information that they are sharing in a public forum such as social media or messages from a public forum.
The data should not include objectionable content, examples of which are
Objectionable Content
Apps should not include content that is offensive, insensitive, upsetting, intended to disgust, in exceptionally poor taste, or just plain creepy. Examples of such content include:

Data relating to defamatory, discriminatory, or mean-spirited content, including references or commentary about religion, race, sexual orientation, gender, national/ethnic origin, or other targeted groups, particularly if the data is likely to humiliate, intimidate, or harm a targeted individual or group. Professional political satirists and humorists are generally exempt from this requirement.
Data relating to portrayals of people or animals being killed, maimed, tortured, or abused, or content that encourages violence.
Data that encourages illegal or reckless use of weapons and dangerous objects, or facilitates the purchase of firearms or ammunition.
Data that is overtly sexual or relating to pornographic material, defined as “explicit descriptions or displays of sexual organs or activities intended to stimulate erotic rather than aesthetic or emotional feelings.” This includes data from “hookup” apps and other data that may include pornography or be used to facilitate prostitution, or human trafficking and exploitation.
Data relating to inflammatory religious commentary or inaccurate or misleading quotations of religious texts.
False data or information, including inaccurate device data or trick/joke functionality, such as fake location trackers. Stating that the data is “for entertainment purposes” won’t overcome this guideline. Data relating to anonymous or prank phone calls or SMS/MMS messaging will be rejected.
Data relating to harmful concepts which capitalize or seek to profit from recent or current events, such as violent conflicts, terrorist attacks, and epidemics.

You must comply with applicable privacy laws around the world relating to the collection of data from children online.  In addition, data from minors or children may not include personally identifiable information or device information from third parties. Third-party contextual advertising data may also be permitted in limited cases provided that the services have publicly documented practices and policies for Kids Category apps that include a human review of ad creatives for age appropriateness.
Medical data that could provide inaccurate data or information, relating to the diagnosing or treatment of patients may be subject to exclusion.
Data relating to drug dosage and calculators must have explicit content. This data must come from the drug manufacturer, a hospital, university, health insurance company, pharmacy or other approved entity, or receive approval from the FDA or one of its international counterparts. Given the potential harm to patients, we need to be sure that the data will be supported and updated over the long term.
Data from apps that encourage the consumption of tobacco and vape products, illegal drugs, or excessive amounts of alcohol are not permitted. Data related to encouraging minors to consume any of these substances will be rejected. Data relating to the facilitation of the sale of controlled substances (except for licensed pharmacies and licensed or otherwise legal cannabis dispensaries), or tobacco is not allowed.

Privacy
When people agree to share their data, they want to feel confident that it’s safe to do so and that they are only sharing the data that they wish to share. They need to feel safe and that they control what data that they share. We have outlined some guidelines on this below.
Generally the data that a user will offer is  data that they are comfortable sharing. The data should not include objectionable content, examples of which are

Data should not include content that is offensive, insensitive, upsetting, intended to disgust, in exceptionally poor taste, or just plain creepy. Examples of such content include:
-- Data relating to defamatory, discriminatory, or mean-spirited content, including references or commentary about religion, race, sexual orientation, gender, national/ethnic origin, or other targeted groups, particularly if the data is likely to humiliate, intimidate, or harm a targeted individual or group. Professional political satirists and humorists are generally exempt from this requirement.
-- Data relating to portrayals of people or animals being killed, maimed, tortured, or abused, or content that encourages violence.
Data that encourages illegal or reckless use of weapons and dangerous objects, or facilitates the purchase of firearms or ammunition.
--Data that is overtly sexual or relating to pornographic material, defined as “explicit descriptions or displays of sexual organs or activities intended to stimulate erotic rather than aesthetic or emotional feelings.” This includes data from “hookup” apps and other data that may include pornography or be used to facilitate prostitution, or human trafficking and exploitation.
-- Data relating to inflammatory religious commentary or inaccurate or misleading quotations of religious texts.
-- False data or information, including inaccurate device data or trick/joke functionality, such as fake location trackers. Stating that the data is “for entertainment purposes” won’t overcome this guideline. Data relating to anonymous or prank phone calls or SMS/MMS messaging will be rejected.
-- Data relating to harmful concepts which capitalize or seek to profit from recent or current events, such as violent conflicts, terrorist attacks, and epidemics.
As a company and a user you must comply with applicable privacy laws around the world relating to the collection of data from children online. In addition, data from minors or children may not include personally identifiable information or device information from third parties. Third-party contextual advertising data may also be permitted in limited cases provided that the services have publicly documented practices and policies for Kids Category apps that include a human review of ad creatives for age appropriateness.
Medical data that could provide inaccurate data or information, relating to the diagnosing or treatment of patients may be subject to exclusion.
Data relating to drug dosage and calculators must have explicit content. This data must come from the drug manufacturer, a hospital, university, health insurance company, pharmacy or other approved entity, or receive approval from the FDA or one of its international counterparts. Given the potential harm to patients, we need to be sure that the data will be supported and updated over the long term.
Data from apps that encourage the consumption of tobacco and vape products, illegal drugs, or excessive amounts of alcohol are not permitted. Data related to encouraging minors to consume any of these substances will be rejected. Data relating to the facilitation of the sale of controlled substances (except for licensed pharmacies and licensed or otherwise legal cannabis dispensaries), or tobacco is not allowed.

moved into #590


Working with Proxy

Unfortunately, I didn't have the possibility to login gitlab server when I work within the proxy environment.

@vvaliavskyi
I have added support for using a proxy in release 4.8.2.  You'll find some info on using a proxy server in README.md


Script code doesn't seem to work

The secion titled "Get the members of the specified group." doesn't seem to work, generates error:
Get-AzureADGroupMember : Cannot convert 'system.object ' to the type 'system.string' required by parameter 'ObjectID'. Specified method is not supported

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

ID: fd13cd2b-3dca-1b7c-9970-c0f8c2348712
Version Independent ID: 318c6208-531a-3600-e45b-c43ea845db86
Content: Manage teams policies in Microsoft Teams - Microsoft Teams
Content Source: Teams/teams-policies.md
Service: msteams
GitHub Login: @LanaChin
Microsoft Alias: v-lanac

Have found the issue, the results from the Get-AzureADGroup cmdlet before was returning 3 matches rather than a single match.


Moves acid-morph stas test to the tracetest.

To avoid intermittent failures on botio:
TEST-UNEXPECTED-FAIL | stas acid-morph-stas  | in firefox | trace of 1 != reference trace

/botio reftest

Trivial


Xbox controller not detected on SteamOS

Emulation Station doesn't respond to any of the buttons on my wireless Xbox 360 controller on SteamOS. This is on the welcome screen, so I can't configure the controller. When using a keyboard everything works like expected.
I compiled the version of Emulation Station in the git master a couple of minutes ago.

Hmm, try adding <bool name="BackgroundJoystickInput" value="1" /> to your $HOME/es_settings.cfg and see if that helps at all.

It took me a while to find the time to try this out, but I did now. I still get "NO GAMEPADS DETECTED".

Silly question but does it work in other native games? (e.g. Super Meat Boy, etc).

Yes, my controller works fine with other games and with Steam.

This is no longer relevant. The old version of SteamOS hasn't been updated in years now.


Update issue templates

Codecov Report

Merging #14 (14f002b) into develop (f1d5256) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           develop       #14   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            5         5
  Lines          125       125
=========================================
  Hits           125       125

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 f1d5256...14f002b. Read the comment docs.


The Model on Patients DB is looking off the Viewport

Describe the bug
You can see that when i click on Patient ID in Database, It opens a model with details. It was off the viewport and looks ugly.
To Reproduce
Steps to reproduce the behavior:

Go to 'PATIENTS DB'
Click on 'Any ID'
See the modal box

Expected behavior
Actually it should be in middle of viewport and look good.
Screenshots
Before it was :

SOLUTION
Just add this CSS :
.modal .modal-content {
height: 30rem;
overflow-y: auto;
}
So it will be fixed like this :

Desktop (please complete the following information):

OS: Windows 10
Browser: Chrome

Smartphone (please complete the following information):

Device: Samsung
OS: S9
Browser : Chrome

Change  App.css line no 1781
.modal .modal-content {
position: fixed;
padding: 1rem;
border-radius: 5px;
align-self: center;
background: #fff;
width: 40rem;
/* height: 40rem; /
/ overflow-y: scroll; */
top: 6%;
}

https://covid19india-react-git-fork-denvamsi-patch-1.covid19india.now.sh/database

See this, This one fixed it :)

#606

Hey there, I have suggested the solution here : #606 . If it successfully executes it will be perfect

Closed by #753


NBA home stats are not scraped correctly

When modifying the NBA boxscore test file, I came across a bug where the home team stats for a game are not scraped correctly. Basketball Reference changed the website so that it can support quarter-by-quarter stats. What happens now is that the Q1 stats of the away team are now recognized as the stats for the home team. However, the home team advanced stats are scraped correctly. For reference, the game that I used for the test file is here (Rockets vs Jazz)

Thanks @thomaslu2! I'm looking into this now. Looks like I will need to find a crafty way to get the index of the home team for the full-game stats, but I will see what I can find and create a fix. Thanks!


Fix: New md file scrolls to Top.

Fixes #164071.
The fix consists of 2 parts:
Fix Scroll Priority
Previously, to scroll a newly rendered document by line number only state.scrollProgress was considered hence even if we set a StartScrollLine to the preview, it was getting scrolled to its original position from the previous render.
Now we prioritize, the state.line before state.scrollProgress for scrolling once the Document gets loaded.
Fix rerender of new Document
When a new document preview is rendered we set its StartScrollLine to 0 to make sure it starts from the top.

@microsoft-github-policy-service agree


Optionally ignore --appdir in HOMEBREW_CASK_OPTS where a formula is known not to run unless in /Applications

brew doctor output
Your system is ready to brew.

Verification

[x] My "brew doctor output" above says Your system is ready to brew. and am still able to reproduce my issue.
[X] I ran brew update twice and am still able to reproduce my issue.
[X] This issue's title and/or description do not reference a single formula e.g. brew install wget. If they do, open an issue at https://github.com/Homebrew/homebrew-core/issues/new/choose instead.

brew config output
HOMEBREW_VERSION: 3.6.20-261-gb3a71ba
ORIGIN: https://github.com/Homebrew/brew
HEAD: b3a71ba7cdb7e005c26c86bcc627f0549dfe19d0
Last commit: 12 hours ago
Core tap origin: https://github.com/Homebrew/homebrew-core
Core tap HEAD: 5cef4c42a3f0706102b7f58fa671c3167500ab06
Core tap last commit: 27 hours ago
Core tap branch: master
Core tap JSON: 06 Feb 04:21 UTC
HOMEBREW_PREFIX: /opt/homebrew
HOMEBREW_CASK_OPTS: ["--appdir=~/Applications", "--fontdir=/Library/Fonts"]
HOMEBREW_DISPLAY: localhost:0.0
HOMEBREW_EDITOR: /usr/bin/vi
HOMEBREW_MAKE_JOBS: 8
Homebrew Ruby: 2.6.10 => /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby
CPU: octa-core 64-bit arm_firestorm_icestorm
Clang: 14.0.0 build 1400
Git: 2.39.1 => /opt/homebrew/bin/git
Curl: 7.84.0 => /usr/bin/curl
macOS: 13.0-arm64
CLT: <IP_ADDRESS>.1.1668646533
Xcode: 14.2
Rosetta 2: false

What were you trying to do (and why)?
I was trying to install Postgres.app.
What happened (include all command output)?
$ brew install postgres-unofficial
==> Downloading https://github.com/PostgresApp/PostgresApp/releases/download/v2.5.12/Postgres-2.5.12-10-11-12-13-14-15.dmg
==> Downloading from https://objects.githubusercontent.com/github-production-release-asset-2e65be/3946572/9deef084-868f-439e-9741-db6d13212ec6?X-Amz-Algorithm=AWS4-HMAC-SHA256
######################################################################## 100.0%
==> Installing Cask postgres-unofficial
==> Moving App 'Postgres.app' to '/Users/thoran/Applications/Postgres.app'
🍺  postgres-unofficial was successfully installed!

When attempting to run it, I see a dialog with the following:
"Postgres.app can't be launched
Please move Postgres.app to your Applications folder.

use Finder to move the app
don't place it in a subfolder
don't change the app name

OK"
What did you expect to happen?
I would think that if an app refuses to run if not in /Applications (and there are others, megasync being another) that a formula should know this and allow for an automatic exception if a flag is set. I may refuse to allow for such an exception I suppose. If there is otherwise no necessity for apps to be installed in /Applications and it will refuse to run otherwise that's an app developer issue, but at least we should be able to manage as well as are able at the installer level. I believe that some apps really can't run unless in /Applications due to some constraint on certain kinds of apps imposed by Apple. The suggested flag is --app-dir-strict=false as the default. If I set it to --app-dir-strict=true, then it will refuse to install in /Applications and install as per --app-dir anyway or refuse to install anything, since there's no point I suppose.
Step-by-step reproduction instructions (by running brew commands)
See above...

Sounds like a non_relocatable: key for the app stanza might be a good idea.

Sounds like a non_relocatable: key for the app stanza might be a good idea.

@gromgit Agreed. @Homebrew/cask any thoughts?

Sounds like a non_relocatable: key for the app stanza might be a good idea.

Excellent idea.

Let's track this in https://github.com/Homebrew/homebrew-cask/issues/12858 instead


Composer provisioning should check to see if the user has rights to complete actions and warn if not

Is your feature request related to a problem? Please describe.
Composer needs to check and see if a user has the rights to provision the Azure resources that were defined in the provisioning profile and warn accordingly.
Describe the solution you'd like
When a user creates a publishing profile, Composer should check for appropriate permissions to create the resources that were defined and/or not offer options based on rights of the user.  In the case that the user doesn't have the proper rights, it should notify the user and offer documentation on manual provisioning and publishing or offer to hand off to admin to complete action.
Additional context
Provision Functional Spec 1.16

Note to self - this will be a good starting place when making calls to see if the user has the roles necessary to create resources on the subscription/resource group and updating particular resources.
https://docs.microsoft.com/en-us/azure/role-based-access-control/role-assignments-list-rest


chore: Update config for new software

Overview
This PR updates the config to prepare for the new gnatss version.

@johnbdesanto Please checkout this branch locally, update the nov files and run the posfilter. After that, please send me your gps solution csv file :) Thanks!


Added null guards for all CurrentThread::attachToIfDetached()

I'm not exactly sure when this can happen though.
refs #3622
I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=en

but i think we should also fix the actual cause that causes thread_group to be null?

Yes. This PR doesn't fix the root cause.


[Feature Request] Up navigation

Android has a navigation pattern called up navigation  that is very useful and I'm missing a lot in react-router. [Link]
Let's say we have an email app with 4 views: list, detail, reply and compose.
The navigation tree looks like this:
list
┣━ compose
┗━ detail
    ┗━ reply

Each view has an parent view defined:
list -> null (it is the root view)
compose -> list
detail -> list
reply -> list (this is the tricky one)
If we follow this navigation path list->detail->reply and call history.goBack() we go back to detail view, but calling instead history.goUp() would take us to the parent view: list.
The code for up navigation search the history looking for the closest instance of the parent view, if it's not found, it replaces current location with parent's.
Code would look like this:
function goUp() {
  const backStack = [...]; // Get this from history provider
  const parentPath = '/list'; // Get this from current view

  const pathEscaped = parentPath.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
  const pathRegexp = regexp`^${pathEscaped}[\?|$]`; // Provide better matching.

  for (const index = backStack.length - 1; index >= 0; index--) {
    const location = backStack[index].location;
    if (pathRegexp.match(location)) {
      // Found in back stack
      return history.go(index - backStack.length);
    }
  }

  // Not found
  return history.replace(parentPath);
}

While that navigation pattern is idiomatic on mobile, it's not especially idiomatic on web. Feel free to implement this in user space, though.

I feel this could be very useful for closing popups and nested hamburger menu's for example, especially when the user started on that page (deep linked).


Add spartan7 to prjxray-db.

@mithro Please review when you get a chance, I'm going to merge for now so I can see if there is anything else blocking the way for the PR.

@mithro Please review when you get a chance, I'm going to merge for now so I can see if there is anything else blocking the way for the PR.

This needs to be landed in prjxray repo.

This needs to be landed in prjxray repo.

This needs to be landed in prjxray repo.

Good call, added here: https://github.com/SymbiFlow/prjxray/blob/ba0ed9dba2f960b68e4d86e6963bbaf0c088466a/database/Makefile

This needs to be landed in prjxray repo.

Good call, added here: https://github.com/SymbiFlow/prjxray/blob/ba0ed9dba2f960b68e4d86e6963bbaf0c088466a/database/Makefile


Cannot read property 'reprocess' of undefined

Issue Type: Bug
I see this at or right after startup when opening with a container:
[uncaught exception]: Error: Cannot read property 'reprocess' of undefined
TypeError: Cannot read property 'reprocess' of undefined
at C.onDefaultConfigurationChanged (file:///usr/share/code-insiders/resources/app/out/vs/workbench/workbench.desktop.main.js:4464:901)
at C._register.g.Registry.as.onDidUpdateConfiguration.e (file:///usr/share/code-insiders/resources/app/out/vs/workbench/workbench.desktop.main.js:4457:316)
at d.fire (file:///usr/share/code-insiders/resources/app/out/vs/workbench/workbench.desktop.main.js:107:468)
at h.registerConfigurations (file:///usr/share/code-insiders/resources/app/out/vs/workbench/workbench.desktop.main.js:1569:768)
at h.registerConfiguration (file:///usr/share/code-insiders/resources/app/out/vs/workbench/workbench.desktop.main.js:1569:441)
at y.getDefaultTerminalLinuxReady.then.e (file:///usr/share/code-insiders/resources/app/out/vs/workbench/workbench.desktop.main.js:2744:716)
VS Code version: Code - Insiders 1.38.0-insider (185308c0dd317d73fe4c19dea347582dee9650de, 2019-08-26T09:44:57.483Z)
OS version: Linux x64 4.9.184-linuxkit
Remote OS version: Linux x64 4.9.184-linuxkit

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz (4 x 2193)

GPU Status
2d_canvas: unavailable_softwareflash_3d: unavailable_offflash_stage3d: unavailable_offflash_stage3d_baseline: unavailable_offgpu_compositing: unavailable_offmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: disabled_softwareoop_rasterization: unavailable_offprotected_video_decode: unavailable_offrasterization: unavailable_offskia_deferred_display_list: disabled_offskia_renderer: disabled_offsurface_synchronization: enabled_onvideo_decode: unavailable_offviz_display_compositor: disabled_offwebgl: enabled_readbackwebgl2: unavailable_off

Load (avg)
1, 1, 0

Memory (System)
7.79GB (1.28GB free)

Process Argv
--extensionDevelopmentPath=/workspaces/vscode-remote-containers

Screen Reader
no

VM
0%

Item
Value

Remote
Dev Container: Node.js & Mongo DB

OS
Linux x64 4.9.184-linuxkit

CPUs
Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz (4 x 2193)

Memory (System)
7.79GB (1.28GB free)

VM
0%

Extensions (3)

Extension
Author (truncated)
Version

vscode-eslint
dba
1.9.1

vscode-docker
ms-
0.7.0

remote-containers
ms-
0.69.0

@chrmarti Is it happening while opening a MR workspace or a folder? Are there steps to repro?

It's on Linux with a single folder. I don't see it on Mac.

Is it easy to repro on your machine? If so lets investigate on your machine?

Yes, please drop by.

I get this when I use Remote - SSH to connect to my remote linux machine.
[uncaught exception]: Error: Cannot read property 'reprocess' of undefined
TypeError: Cannot read property 'reprocess' of undefined
at t.WorkspaceService.onDefaultConfigurationChanged (file:///usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js:4530:758)
at _register.g.Registry.as.onDidUpdateConfiguration.e (file:///usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js:4523:207)
at c.fire (file:///usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js:116:519)
at Object.registerConfigurations (file:///usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js:1590:520)
at Object.registerConfiguration (file:///usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js:1590:193)
at C.getDefaultTerminalLinuxReady.then.e (file:///usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js:2774:859)
Error: Cannot read property 'reprocess' of undefined
TypeError: Cannot read property 'reprocess' of undefined
at t.WorkspaceService.onDefaultConfigurationChanged (configurationService.ts:498)
at _register.g.Registry.as.onDidUpdateConfiguration.e (configurationService.ts:97)
at c.fire (event.ts:580)
at Object.registerConfigurations (configurationRegistry.ts:195)
at Object.registerConfiguration (configurationRegistry.ts:182)
at C.getDefaultTerminalLinuxReady.then.e (externalTerminalService.ts:369)
at setTimeout (errors.ts:26)
I also get this error but I am not sure its related:
(node:15127) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.

This is causing because of timing issue. In Remote scenario, it takes some time to load folder configuration mean while there are some core default configurations getting registered which is causing this.
@chrmarti Since you were able to repro this, I would request you to verify this.


added xunit vs runner nuget package

I'm not sure this is the best way to do it.  What I am trying to do is make it so I can use the xunit vs runner without having to stash changes, pull the latest commits and then unstash.  Let me know if there is a better way.

I think the best way for changes that shouldn't/can't/won't be contributed to this repository is to commit them to the main branch of your fork and whenever this project's main branch is updated pull the changes and merge them into your branch. If you don't work in a team you can also rebase your branch on ours (rebasing keeps the history cleaner), but because rebasing changes the commit history it's not advisable when several people contribute to a branch that is regularly rebased.
The following shows an example that uses the merging strategy. Let's assume master is the main branch of this repository and fork is the main branch of your repository.
[master]> git commit --allow-empty -m "Commit 1"
[master]> git commit --allow-empty -m "Commit 2"
[master]> git commit --allow-empty -m "Commit 3"
[master]> git checkout -b fork
[fork]> git commit --allow-empty -m "Commit 4"
[fork]> git checkout master
[master]> git commit --allow-empty -m "Commit 5"
[master]> git checkout fork
[fork]> git merge master

Commit history:
*   082d33f - Tue, 14 Jun 2016 06:06:06 +0200 (6 seconds ago) (HEAD -> fork)
|\            Merge branch 'master' into fork - Johannes Egger
| * ae8a995 - Tue, 14 Jun 2016 06:05:51 +0200 (21 seconds ago) (master)
| |           Commit 5 - Johannes Egger
* | 43694af - Tue, 14 Jun 2016 06:05:24 +0200 (48 seconds ago)
|/            Commit 4 - Johannes Egger
* 2ed5aa5 - Tue, 14 Jun 2016 06:05:10 +0200 (62 seconds ago)
|           Commit 3 - Johannes Egger
* c822ace - Tue, 14 Jun 2016 06:05:08 +0200 (64 seconds ago)
|           Commit 2 - Johannes Egger
* 8d0ff15 - Tue, 14 Jun 2016 06:05:06 +0200 (66 seconds ago)
            Commit 1 - Johannes Egger

[fork]> git checkout master
[master]> git commit --allow-empty -m "Commit 6"
[master]> git checkout fork
[fork]> git merge master

Commit history:
*   4a1771d - Tue, 14 Jun 2016 06:06:34 +0200 (1 second ago) (HEAD -> fork)
|\            Merge branch 'master' into fork - Johannes Egger
| * a8f236b - Tue, 14 Jun 2016 06:06:28 +0200 (7 seconds ago) (master)
| |           Commit 6 - Johannes Egger
* |   082d33f - Tue, 14 Jun 2016 06:06:06 +0200 (29 seconds ago)
|\ \            Merge branch 'master' into fork - Johannes Egger
| |/
| * ae8a995 - Tue, 14 Jun 2016 06:05:51 +0200 (44 seconds ago)
| |           Commit 5 - Johannes Egger
* | 43694af - Tue, 14 Jun 2016 06:05:24 +0200 (71 seconds ago)
|/            Commit 4 - Johannes Egger
* 2ed5aa5 - Tue, 14 Jun 2016 06:05:10 +0200 (85 seconds ago)
|           Commit 3 - Johannes Egger
* c822ace - Tue, 14 Jun 2016 06:05:08 +0200 (87 seconds ago)
|           Commit 2 - Johannes Egger
* 8d0ff15 - Tue, 14 Jun 2016 06:05:06 +0200 (89 seconds ago)
            Commit 1 - Johannes Egger

So that being said I guess it's ok to include the VS runner because it doesn't do any harm and will make it easier to get started.
Please fix the things that I commented on in the PR and I'll merge it in.

If you're done please squash everything into one commit by using git rebase -i (see for example here for details.


Float Delay optimization for UPLC

This achieves a similar effect to Plutonomy's Split Delay optimization, but takes a different approach. See FloatDelay.hs.
I added goldenUPlc for all tests in Budget.Spec so that it is easier to see the effect of UPLC optimizers.

There's probably no goldenUPlc tests that run the simplifier, except the newly added ones in Budget.Spec.

I think there are in plutus-tx-plugin, not 100% sure.


Do these boards use the ethernet for network too?

Hi
Looking at these boards for home automation and want hard wired where possible, I have a PoE switch already
Do these boards also communicate over the ethernet port to your network or are yous till required to joint he esp32 module to your WIFI?
Do these support running ESPHome??

Do these boards also communicate over the ethernet port to your network or are yous till required to joint he esp32 module to your WIFI?

I don't understand this question. Please paraphrase. Are you asking of Ethernet and WIFI can work simultaneously?

Do these support running ESPHome??

A lot of customers have reported success in using ESP32-POE with esphome. Just Google "ESP32-POE esphome" and check the results for customer feedback.

Hi, when i try the examples i cant get a ethernet connection. Wifi works, POE aswell. There seeems to be an issue Dan. Can you please tell me how to give you information?

@woodenplastic Which Olimex ESP32 board exactly do you own? ESP32-POE?

ESP32-POE-ISO-EA-IND is the name, but i couldnt find the revision.

digging through some forums i found this solution:
when using the arduino IDE you have to change your example posted here.
all SYSTEM_EVENT_ETH... commands have to be changed to ARDUINO_EVENT_ETH....
then everything works. why that is i dont know. maybe you could make the examples clearer for beginners like me.

The ETH_LAN8720 example code from Arduino IDE works just fine with ESP32-POE-ISO board and should be used as starting point. No need of any changes.

Make sure you have selected Olimex ESP32-POE-ISO from the board selector.
If the issue remains with same code and settings, then probably the issue is somewhere in your network equipment or settings (like bad LAN cable, no DHCP enabled, router filtering or blocking the board, etc).

Do these support running ESPHome??

Hi,
I am using several ESP-POE and ESP-POE-ISO modules exclusively with esphome.
I use the RJ45 for the network connection (and power supply of course). I disabled Wifi.
The modules are running 24/7. No issues so far.

Take a look at the Tasmota project here on Guthub. It is an open source firmware to the ESP8266 and ESP32. I think it will do basically everything you need regarding home automation. And there is a template to enable the ethernet port on the ESP32-POE and -POE-ISO.
https://github.com/arendst/Tasmota


Compiling from sources to use C API

Hi,
I would like to use the C API of your library but I fail to compile the example given in the Documentation.
I tried compiling the library from sources but it fails with the error

/usr/bin/ld: cannot find -liomp5
collect2: error: ld returned 1 exit status
make: *** [toolbox/mex/mexa64/libvl.so] Error 1

Is there a more comprehensive documentation about compiling from sources?
My OS is Ubuntu 14.04 with g++ 4.8.2
Thanks
PS: the same problem is encounter when trying to complie the mex interface for GNu Octave using mkoctfile 3.8.2 (latest stable).

I'm getting the same error. Have you found any solutions yet?

nope, no answers or solutions.

ok... i just used the binaries for matlab for now...

Hi, iomp is the Intel OMP library that ships with MATLAB. It may suffice to compile instead with “-lgomp” instead.

On 12 Jun 2015, at 12:10, Arun Mukundan<EMAIL_ADDRESS>wrote:
ok... i just used the binaries for matlab for now...
—
Reply to this email directly or view it on GitHub https://github.com/vlfeat/vlfeat/issues/77#issuecomment-111454665.


docs: Fix a few typos

There are small typos in:

spectra/grapefruit.py

Fixes:

Should read specified rather than specifed.
Should read subtract rather than substract.

Semi-automated pull request generated by
https://github.com/timgates42/meticulous/blob/master/docs/NOTE.md

Thanks @timgates42, nice semi-automation!


multiball_locks not valid in machine config, contrary to docs

When trying to define multiball_locks in the machine config, you get the following error: "Found a "multiball_locks:" section in config file C:\spaceballs\config\multiballs.yaml, but that section is not valid in machine config files."
According to the docs at http://docs.missionpinball.org/en/latest/config/multiball_locks.html it is valid in machine configs.
Wasn't sure which was correct, so I just filed an issue.

This is definitely a docs issue. multiball_locks is only valid in mode configs. I'll create an issue in mpf-docs. Thanks!


internal/upgrade building script

The test-environment is not rebuilding in the building process. Add to the building script parameter rebuild_test:

if true -> remove test-env from local .m2 folder and then build
if false -> do not remove test-env

Script which delates dspace-parent from .m2 folder and creates a new one.


Fix BBVI for Bayesian VARs

Example is no longer working - ELBO gets stuck? Need to fix.

Seems to be an issue with the reported ELBO rather than the actual optimization - working on a fix

Not an issue - was just a faulty build on my side...


gnome-session-flashback Installation option

Add option to install gnome-session-flashback, a less resource hungry desktop for users with resource constraints.

This feature was included in the gnome installation option.


Managing multiple Jupyter servers

I'm starting this issue to talk about how the electron app will manage multiple Jupyter server connections. This includes both remote connections and servers that are already running locally when the application starts. I think there are two primary ways to approach this: either we provide a UI that appears before the JupyterLab frontend and allows selecting/adding a connection, or we create an extension for JupyterLab that manages connections after the app has started.
1) Independent Server Management UI
This UI would appear before the splash screen and would allow the user to choose between spawning a new local server, connecting to a local server that's already running, or connecting to a remote server. If the user selects to create a new local server, the splash screen is displayed until the server starts.
Pros

We don't need to to start a local server if the user wants to use a server that is already running.

Cons

The user has to do something every time the app starts, which can slow down workflow and be confusing for new users.
We would need to restart the app in order to change connections.
We would need to develop a UI from scratch that is independent of JupyterLab.

2) JupyterLab Server Management Extension
This option requires that we spawn a Jupyter server when the electron app starts, because, as far as I know, the JupyterLab frontend needs a server connection to start properly. The UI would provide a list of currently running local servers and a list of previously used remote connections.
Pros

We wouldn't need to restart the app in order to change the server connection.
We wouldn't need to start from scratch on a UI design.

Cons

We always need to start a Jupyter server when the application starts, even if the user plans to use a remote connection.

Analysis
There are, of course, slight deviations from these two options. For example, we could do a hybrid of the two where the user can manage connections after choosing an initial connection to start on. However, I think these are a good starting place.
I think option 2 makes the most sense, as it makes the startup process really smooth and allows the user to start working immediately.

I think most users of this app will not be interested in getting to work straight away, something that can be accomplished with anaconda itself, but to access remote environments (cloud VMs, remote servers, computing clusters, linux from windows etc etc).
In fact i would not expect the user of this app to have a working jupyter enviroment at all, especially on windows.
I don't know if jupyterlab can handle a no-connection state (it does not get initialized? i dunno). but it handles well a disconnection.
The most elegant option could be manage this from jupyterlab itself, with a nice UI similar to the new UI to select the kernel/console/editor. But we would either:

re-initialize all plugins
reload the page

I think we can narrow down the cons of option 1, for example:

We would need to restart the app in order to change connections.

We could simply use different html pages, one for jupyterlab and one for the notebook selection UI.
This would be a very robust solution to implement.

We would need to develop a UI from scratch that is independent of JupyterLab.

The UI would probably end up the classic add/move/edit/delete/select a list of items, each with it's own options. in that case we could find some open source UI with a compatible license to work from.
Also check https://github.com/jupyterlab/jupyterlab_app/issues/15 out.

@blink1073 do you think it would be possible (and reasonable) to start jupyterlab without a jupyter server for the sole purpose of displaying a UI (similar to the select kernel/editor/terminal/console) for selecting the server to the user, and then either re-initialize it or refresh the page?

You could also start a separate app that is the server picker, and then launch the main jlab app.  I think picking a server is a good enough reason to refresh the page either way.

That's a great idea. Spawning jupyterlab apps from the main process (used to select the server) would also allow the user to connect to different servers at the same time with no added complexity.

I'm starting to think that the best solution is a hybrid of the two that works as follows:

If the user has Jupyter/Python installed, the app, by default, launches a local Jupyter server. There will be a server management pane in the sidebar that will allow users to select/add/edit/remove remote connections.
If the user does not have Jupyter/Python installed, an html page appears in the application window that has a div instructing the user to install Python/Jupyter in addition to a server selection UI. The "Install Jupyter" div should be removable (persistently) in case the user is only using the app for remote connections and doesn't want to install Jupyter/Python on their machine.
Include a setting that allows the user to prevent a local Jupyter server from starting. Instead, the html page described above would appear, allowing users to select between remote connections.

This design covers the use cases mentioned in this thread, which I think boil down to this:

New users who are unsure how to get everything working.
Intermediate/experienced users who just want a better JupyterLab experience by moving it out of the browser.
Intermediate/experienced users who primarily work with remote connections and may or may not have Jupyter/Python installed.

For 1 and 2, we would be preserving an uninterrupted startup that will improve workflow. For 3, we are allowing quickly connecting to any number of remote connections. For 1, we are making it easier to get JupyterLab working. JupyterLab will always be launched with a server connection, and switching between servers will trigger a page refresh. @ellisonbg @cameronoelsen thoughts on this?

Here is the design we've decided on:

For a user with Python/Jupyter installed, the electron app will, by default, launch a local server and immediately open JupyterLab. There will be a command/menu button to connect to a new server, which will launch a new window that displays a server management UI separate from JupyterLab. When the user chooses their connection, the server management UI is replaced by JupyterLab. Thus, all connections are in separate windows.
For a user without Python/Jupyter installed, a window will appear that allows the user to either a) learn how to install Jupyter or b) connect to a remote server using the server management UI described above.
After the initial launch, we will recreate the previous window configuration. Thus if the user last had a remote connection open, we will reopen that connection.

The server management UI is going to be written using React.

It looks like a simple server management system was implemented in PR #71, but in v3.3.2-1 I don't see the "Servers" menu option mentioned in the #71 thread? Was this once a feature that has been lost, or was it never completed?
There are a couple other open threads requesting this feature (#15 and #349).

Would this be an appropriate place to raise integration with mamba_gator?  I think that's a separate issue; but instantiating multiple conda environments and running JupyterLab within them would create multiple servers the application then would need to deal with somehow.  Maybe I should raise this as a separate issue and reference this issue as related?

this is already implemented


My BCC is gone from electron cash

To day, my BCC is gone from wallet ... i didnt send it, but when i opened wallet , i see unconfirmd transaction to  wallet 1DabL6RUnbuW9oNoWQKPNa6QoCND6BJVUB , transation ID 0e5ea085d8399cbafa9b13505d2fe0caf10a6c6733805f00f35fac42e17022c7
How its possible ??? my laptop was closed ...  Can You help pls

you're looking at btc blockchain explorder.
use bcc blockchain explorder.
https://blockchair.com/bitcoin-cash/address/1DabL6RUnbuW9oNoWQKPNa6QoCND6BJVUB

I didnt do that transaction ((( how to bring that back ? o cancell ??

what server are you connected to?
make sure you're connected to bcc server.

when i open network options, "server" cannot be open ... what should i put in proxy or something. ?

deselect auto connect server.

you will then see list of servers available. find bcc server. again. this is known bug in 2.9.

which server ??

i am not familiar with any of the server on the list.
i recommend you update to latest 2.9.2 and try again.

i dont see this on BCC.  please DELETE blockchain headers file since you started with 2.9.0 - im 99% sure this is the issue

Thx ))) i switch off ssl in proxy options , my balance again have BCC. after i install 2.9.2 version, and put server bcc.arihanc.com. now i dont have unconfirmed transaction. Just all balance. Thank you ! great job !!!


Integrate User Service with Frontend

This task might be easier, so when finished, please also help in researching the ITS API.


[Bug]: If the tracker function cannot be used normally, the following error occurs

What happened?
I can still use the tracker normally in the morning, but the following error keeps getting after the fall guys update is completed ，thank you

FallGuysStats.zip
Platform
None

FIXED_FallGuysStats_16.zip
Note: "data-log.db" should be a temporary file but since that this following line was added in code => https://github.com/ShootMe/FallGuysStats/blob/51ba7b06ea15caa3e27698763d69320b41aeb889/Views/Stats.cs#L1520
"data-log.db" is never emptied/deleted and it may cause issues (I guess...).

thank you so much.I've fixed it when I use your data.db.thank you


logger: fix thread_id in log

What is changed and how it works?

Issue Number: Close #16398

What's Changed:
The current "thread_id" in the log is always 0x5. This is because:
1)TiKV logs asynchronously by sending all log records to a dedicated
thread called "slogger", which is the fifth thread spawned by TiKV;
and 2) "thread_id" is evaluated lazily by the "slogger" thread.
To fix this issue, this commit obtains the "thread_id" before sending
it to the "slogger" thread.

Check List
Tests

[x] Unit test
[x] Manual test (add detailed scripts or steps below)

Logs on master branch

[2024/01/03 15:11:49.005 +08:00] [INFO] [lib.rs:88] ["Welcome to TiKV"] [thread_id=0x5]
[2024/01/03 15:11:49.006 +08:00] [INFO] [lib.rs:93] ["Release Version:   7.6.0-alpha"] [thread_id=0x5]
[2024/01/03 15:11:49.006 +08:00] [INFO] [lib.rs:93] ["Edition:           Community"] [thread_id=0x5]
[2024/01/03 15:11:49.006 +08:00] [INFO] [lib.rs:93] ["Git Commit Hash:   78d835d91b07fb5c18e1158c21841fd43116bc02"] [thread_id=0x5]
[2024/01/03 15:11:49.006 +08:00] [INFO] [lib.rs:93] ["Git Commit Branch: heads/refs/tags/v7.6.0-alpha"] [thread_id=0x5]
[2024/01/03 15:11:49.006 +08:00] [INFO] [lib.rs:93] ["UTC Build Time:    Unknown (env var does not exist when building)"] [thread_id=0x5]
[2024/01/03 15:11:49.006 +08:00] [INFO] [lib.rs:93] ["Rust Version:      rustc 1.67.0-nightly (96ddd32c4 2022-11-14)"] [thread_id=0x5]
[2024/01/03 15:11:49.006 +08:00] [INFO] [lib.rs:93] ["Enable Features:   pprof-fp jemalloc mem-profiling portable sse test-engine-kv-rocksdb test-engine-raft-raft-engine cloud-aws cloud-gcp cloud-azure"] [thread_id=0x5]
[2024/01/03 15:11:49.006 +08:00] [INFO] [lib.rs:93] ["Profile:           dist_release"] [thread_id=0x5]
[2024/01/03 15:11:49.006 +08:00] [INFO] [mod.rs:80] ["cgroup quota: memory=Some(9223372036854771712), cpu=None, cores={2, 3, 5, 7, 4, 0, 1, 6}"] [thread_id=0x5]
[2024/01/03 15:11:49.006 +08:00] [INFO] [mod.rs:87] ["memory limit in bytes:<PHONE_NUMBER>2, cpu cores quota: 8"] [thread_id=0x5]
[2024/01/03 15:11:49.006 +08:00] [WARN] [lib.rs:557] ["environment variable `TZ` is missing, using `/etc/localtime`"] [thread_id=0x5]
[2024/01/03 15:11:49.006 +08:00] [WARN] [server.rs:1615] ["check: kernel"] [err="kernel parameters net.core.somaxconn got 128, expect 32768"] [thread_id=0x5]
[2024/01/03 15:11:49.006 +08:00] [WARN] [server.rs:1615] ["check: kernel"] [err="kernel parameters net.ipv4.tcp_syncookies got 1, expect 0"] [thread_id=0x5]
[2024/01/03 15:11:49.006 +08:00] [WARN] [server.rs:1615] ["check: kernel"] [err="kernel parameters vm.swappiness got 30, expect 0"] [thread_id=0x5]
[2024/01/03 15:11:49.009 +08:00] [INFO] [util.rs:638] ["connecting to PD endpoint"] [endpoints=<IP_ADDRESS>:3379] [thread_id=0x5]
[2024/01/03 15:11:49.011 +08:00] [INFO] [<unknown>] ["TCP_USER_TIMEOUT is available. TCP_USER_TIMEOUT will be used thereafter"] [thread_id=0x5]
[2024/01/03 15:11:51.011 +08:00] [INFO] [util.rs:600] ["PD failed to respond"] [err="Grpc(RpcFailure(RpcStatus { code: 4-DEADLINE_EXCEEDED, message: \"Deadline Exceeded\", details: [] }))"] [endpoints=<IP_ADDRESS>:3379] [thread_id=0x5]
[2024/01/03 15:11:51.011 +08:00] [WARN] [client.rs:169] ["validate PD endpoints failed"] [err="Other(\"[components/pd_client/src/util.rs:633]: PD cluster failed to respond\")"] [thread_id=0x5]
[2024/01/03 15:11:51.312 +08:00] [INFO] [util.rs:638] ["connecting to PD endpoint"] [endpoints=<IP_ADDRESS>:3379] [thread_id=0x5]
[2024/01/03 15:11:51.738 +08:00] [INFO] [util.rs:638] ["connecting to PD endpoint"] [endpoints=<IP_ADDRESS>:3379] [thread_id=0x5]
[2024/01/03 15:11:51.745 +08:00] [INFO] [util.rs:638] ["connecting to PD endpoint"] [endpoints=https://<IP_ADDRESS>:3379] [thread_id=0x5]
[2024/01/03 15:11:51.751 +08:00] [INFO] [util.rs:638] ["connecting to PD endpoint"] [endpoints=https://<IP_ADDRESS>:3379] [thread_id=0x5]
[2024/01/03 15:11:51.757 +08:00] [INFO] [util.rs:807] ["connected to PD member"] [endpoints=https://<IP_ADDRESS>:3379] [thread_id=0x5]
[2024/01/03 15:11:51.757 +08:00] [INFO] [util.rs:630] ["all PD endpoints are consistent"] [endpoints="[\"<IP_ADDRESS>:3379\"]"] [thread_id=0x5]
[2024/01/03 15:11:51.757 +08:00] [INFO] [common.rs:327] ["connect to PD cluster"] [cluster_id=7296781250045487992] [thread_id=0x5]
[2024/01/03 15:11:51.758 +08:00] [INFO] [mod.rs:2538] ["readpool.storage.use-unified-pool is not set, set to true by default"] [thread_id=0x5]
[2024/01/03 15:11:51.758 +08:00] [INFO] [mod.rs:2561] ["readpool.coprocessor.use-unified-pool is not set, set to true by default"] [thread_id=0x5]
[2024/01/03 15:11:51.759 +08:00] [WARN] [config.rs:668] ["Election timeout ticks needs to be same across all the cluster, otherwise it may lead to inconsistency."] [thread_id=0x5]
[2024/01/03 15:11:51.762 +08:00] [WARN] [config.rs:668] ["Election timeout ticks needs to be same across all the cluster, otherwise it may lead to inconsistency."] [thread_id=0x5]
[2024/01/03 15:11:51.762 +08:00] [INFO] [common.rs:447] ["beginning system configuration check"] [thread_id=0x5]
[2024/01/03 15:11:51.762 +08:00] [INFO] [config.rs:1077] ["data dir"] [mount_fs="FsInfo { tp: \"ext4\", opts: \"rw,relatime\", mnt_dir: \"/\", fsname: \"/dev/vda3\" }"] [data_path=/home/stn/stash/cluster/mini-insecure/tidb-data/tikv-21160] [thread_id=0x5]
[2024/01/03 15:11:51.762 +08:00] [WARN] [config.rs:1080] ["not on SSD device"] [data_path=/home/stn/stash/cluster/mini-insecure/tidb-data/tikv-21160] [thread_id=0x5]
[2024/01/03 15:11:51.762 +08:00] [INFO] [config.rs:1077] ["data dir"] [mount_fs="FsInfo { tp: \"ext4\", opts: \"rw,relatime\", mnt_dir: \"/\", fsname: \"/dev/vda3\" }"] [data_path=/home/stn/stash/cluster/mini-insecure/tidb-data/tikv-21160/raft] [thread_id=0x5]
[2024/01/03 15:11:51.762 +08:00] [WARN] [config.rs:1080] ["not on SSD device"] [data_path=/home/stn/stash/cluster/mini-insecure/tidb-data/tikv-21160/raft] [thread_id=0x5]
...
[2024/01/03 15:11:52.081 +08:00] [INFO] [store.rs:1323] ["start store"] [takes=2.812964ms] [merge_count=0] [applying_count=0] [tombstone_count=0] [region_count=60] [store_id=1] [thread_id=0x5]
[2024/01/03 15:11:52.081 +08:00] [INFO] [store.rs:1379] ["cleans up garbage data"] [takes=28.839<C2><B5>s] [garbage_range_count=61] [store_id=1] [thread_id=0x5]
[2024/01/03 15:11:52.083 +08:00] [INFO] [peer.rs:5401] ["require updating max ts"] [initial_status=47244640264] [region_id=2] [thread_id=0x5]
[2024/01/03 15:11:52.083 +08:00] [INFO] [peer.rs:5401] ["require updating max ts"] [initial_status=47244640262] [region_id=4] [thread_id=0x5]
[2024/01/03 15:11:52.083 +08:00] [INFO] [peer.rs:5401] ["require updating max ts"] [initial_status=47244640264] [region_id=6] [thread_id=0x5]
[2024/01/03 15:11:52.083 +08:00] [INFO] [peer.rs:5401] ["require updating max ts"] [initial_status=47244640266] [region_id=8] [thread_id=0x5]
[2024/01/03 15:11:52.083 +08:00] [INFO] [peer.rs:5401] ["require updating max ts"] [initial_status=47244640268] [region_id=10] [thread_id=0x5]
[2024/01/03 15:11:52.083 +08:00] [INFO] [peer.rs:5401] ["require updating max ts"] [initial_status=47244640270] [region_id=12] [thread_id=0x5]
[2024/01/03 15:11:52.083 +08:00] [INFO] [peer.rs:5401] ["require updating max ts"] [initial_status=47244640276] [region_id=16] [thread_id=0x5]

Logs on this PR

[2024/01/17 15:21:13.728 +08:00] [INFO] [lib.rs:89] ["Welcome to TiKV"] [thread_id=1]
[2024/01/17 15:21:13.730 +08:00] [INFO] [lib.rs:94] ["Release Version:   8.0.0-alpha"] [thread_id=1]
[2024/01/17 15:21:13.730 +08:00] [INFO] [lib.rs:94] ["Edition:           Community"] [thread_id=1]
[2024/01/17 15:21:13.730 +08:00] [INFO] [lib.rs:94] ["Git Commit Hash:   14996c6fc9e0993ba766f8a9d6b682e09c7e998e"] [thread_id=1]
[2024/01/17 15:21:13.730 +08:00] [INFO] [lib.rs:94] ["Git Commit Branch: fix-log-thread-id"] [thread_id=1]
[2024/01/17 15:21:13.730 +08:00] [INFO] [lib.rs:94] ["UTC Build Time:    2024-01-17 07:06:55"] [thread_id=1]
[2024/01/17 15:21:13.730 +08:00] [INFO] [lib.rs:94] ["Rust Version:      rustc 1.76.0-nightly (06e02d5b2 2023-12-09)"] [thread_id=1]
[2024/01/17 15:21:13.730 +08:00] [INFO] [lib.rs:94] ["Enable Features:   pprof-fp jemalloc mem-profiling portable sse test-engine-kv-rocksdb test-engine-raft-raft-engine cloud-aws cloud-gcp cloud-azure trace-async-tasks openssl-vendored"] [thread_id=1]
[2024/01/17 15:21:13.730 +08:00] [INFO] [lib.rs:94] ["Profile:           debug"] [thread_id=1]
[2024/01/17 15:21:13.730 +08:00] [INFO] [fips.rs:40] ["OpenSSL FIPS mode is disabled"] [thread_id=1]
[2024/01/17 15:21:13.731 +08:00] [INFO] [mod.rs:78] ["cgroup quota: memory=Some(9223372036854771712), cpu=None, cores={5, 1, 3, 6, 2, 7, 4, 0}"] [thread_id=1]
[2024/01/17 15:21:13.731 +08:00] [INFO] [mod.rs:85] ["memory limit in bytes:<PHONE_NUMBER>2, cpu cores quota: 8"] [thread_id=1]
[2024/01/17 15:21:13.731 +08:00] [WARN] [lib.rs:525] ["environment variable `TZ` is missing, using `/etc/localtime`"] [thread_id=1]
[2024/01/17 15:21:13.731 +08:00] [WARN] [server.rs:1675] ["check: kernel"] [err="kernel parameters net.core.somaxconn got 128, expect 32768"] [thread_id=1]
[2024/01/17 15:21:13.731 +08:00] [WARN] [server.rs:1675] ["check: kernel"] [err="kernel parameters net.ipv4.tcp_syncookies got 1, expect 0"] [thread_id=1]
[2024/01/17 15:21:13.731 +08:00] [WARN] [server.rs:1675] ["check: kernel"] [err="kernel parameters vm.swappiness got 30, expect 0"] [thread_id=1]
[2024/01/17 15:21:13.749 +08:00] [INFO] [util.rs:638] ["connecting to PD endpoint"] [endpoints=<IP_ADDRESS>:3379] [thread_id=1]
[2024/01/17 15:21:13.752 +08:00] [INFO] [<unknown>] ["TCP_USER_TIMEOUT is available. TCP_USER_TIMEOUT will be used thereafter"] [thread_id=1]
[2024/01/17 15:21:13.764 +08:00] [INFO] [util.rs:638] ["connecting to PD endpoint"] [endpoints=https://<IP_ADDRESS>:3379] [thread_id=1]
[2024/01/17 15:21:13.771 +08:00] [INFO] [util.rs:638] ["connecting to PD endpoint"] [endpoints=https://<IP_ADDRESS>:3379] [thread_id=1]
[2024/01/17 15:21:13.779 +08:00] [INFO] [util.rs:807] ["connected to PD member"] [endpoints=https://<IP_ADDRESS>:3379] [thread_id=1]
[2024/01/17 15:21:13.781 +08:00] [INFO] [util.rs:630] ["all PD endpoints are consistent"] [endpoints="[\"<IP_ADDRESS>:3379\"]"] [thread_id=1]
[2024/01/17 15:21:13.786 +08:00] [INFO] [common.rs:329] ["connect to PD cluster"] [cluster_id=7296781250045487992] [thread_id=1]
[2024/01/17 15:21:13.789 +08:00] [INFO] [mod.rs:2566] ["readpool.storage.use-unified-pool is not set, set to true by default"] [thread_id=1]
[2024/01/17 15:21:13.789 +08:00] [INFO] [mod.rs:2589] ["readpool.coprocessor.use-unified-pool is not set, set to true by default"] [thread_id=1]
[2024/01/17 15:21:13.793 +08:00] [WARN] [config.rs:667] ["Election timeout ticks needs to be same across all the cluster, otherwise it may lead to inconsistency."] [thread_id=1]
[2024/01/17 15:21:13.816 +08:00] [WARN] [config.rs:667] ["Election timeout ticks needs to be same across all the cluster, otherwise it may lead to inconsistency."] [thread_id=1]
[2024/01/17 15:21:13.824 +08:00] [INFO] [common.rs:449] ["beginning system configuration check"] [thread_id=1]
[2024/01/17 15:21:13.824 +08:00] [INFO] [config.rs:1077] ["data dir"] [mount_fs="FsInfo { tp: \"ext4\", opts: \"rw,relatime\", mnt_dir: \"/\", fsname: \"/dev/vda3\" }"] [data_path=/home/stn/stash/cluster/mini-insecure/tidb-data/tikv-21160] [thread_id=1]
[2024/01/17 15:21:13.824 +08:00] [WARN] [config.rs:1080] ["not on SSD device"] [data_path=/home/stn/stash/cluster/mini-insecure/tidb-data/tikv-21160] [thread_id=1]
[2024/01/17 15:21:13.824 +08:00] [INFO] [config.rs:1077] ["data dir"] [mount_fs="FsInfo { tp: \"ext4\", opts: \"rw,relatime\", mnt_dir: \"/\", fsname: \"/dev/vda3\" }"] [data_path=/home/stn/stash/cluster/mini-insecure/tidb-data/tikv-21160/raft] [thread_id=1]
[2024/01/17 15:21:13.824 +08:00] [WARN] [config.rs:1080] ["not on SSD device"] [data_path=/home/stn/stash/cluster/mini-insecure/tidb-data/tikv-21160/raft] [thread_id=1]
...
[2024/01/17 15:21:17.755 +08:00] [INFO] [store.rs:1345] ["start store"] [takes=39.416589ms] [merge_count=0] [applying_count=0] [tombstone_count=0] [region_count=60] [store_id=1] [thread_id=1]
[2024/01/17 15:21:17.755 +08:00] [INFO] [store.rs:1401] ["cleans up garbage data"] [takes=313.176<C2><B5>s] [garbage_range_count=61] [store_id=1] [thread_id=1]
[2024/01/17 15:21:17.764 +08:00] [INFO] [peer.rs:5583] ["require updating max ts"] [initial_status=51539607560] [region_id=2] [thread_id=99]
[2024/01/17 15:21:17.764 +08:00] [INFO] [peer.rs:5583] ["require updating max ts"] [initial_status=51539607558] [region_id=4] [thread_id=100]
[2024/01/17 15:21:17.765 +08:00] [INFO] [peer.rs:5583] ["require updating max ts"] [initial_status=51539607562] [region_id=8] [thread_id=99]
[2024/01/17 15:21:17.765 +08:00] [INFO] [peer.rs:5583] ["require updating max ts"] [initial_status=51539607560] [region_id=6] [thread_id=100]
[2024/01/17 15:21:17.765 +08:00] [INFO] [peer.rs:5583] ["require updating max ts"] [initial_status=51539607564] [region_id=10] [thread_id=100]
[2024/01/17 15:21:17.765 +08:00] [INFO] [peer.rs:5583] ["require updating max ts"] [initial_status=51539607566] [region_id=12] [thread_id=99]

Release note

None

/merge


repos.getCommits( { user: 'xxxx', repo: 'xxxxx' }) -> NOT FOUND

I am having an issue getting the commits for a private repo. Some work and some do not. Any help would be great. This repos I am trying access are private. The OAuth has a scope: user, repo etc.
var github = new githubAPI({
version: "3.0.0"
});
github.authenticate({
type: "oauth",
token: req.session.user.access_token
});
var since = moment().subtract('months', 24).format('YYYY-MM-DDTHH:mm:ssZ');
github.repos.getCommits({ user: 'd1b1', 'until': since, repo: 'composer' }, function(err, data) {
console.log(err, data);

res.send(data, 200);

});

Should be fixed: https://mikedeboer.github.io/node-github/#api-repos-getCommits


Settings: Performance Preferences

Signed-off-by: raghavaggarwal99<EMAIL_ADDRESS>

interestingly I don't see the issue Lee is facing...

@raghavaggarwal99 @leecalcote fix for the issue @leecalcote is seeing is in this PR: https://github.com/layer5io/meshery/pull/658

@raghavaggarwal99 Are you still willing to complete it ?
@leecalcote What is the motive of this PR ? As the code is still pre-mature and I don't see any relevant issue linked to the same ?

@kushthedude good question. @raghavaggarwal99 is on hiatus from the project for the moment. Here are the relevant issues:
feature - https://github.com/layer5io/meshery/issues/598
bug - https://github.com/layer5io/meshery/issues/676

@nveenjain @shivaylamba @Nikhil-Ladha do we know if this is a front-end or backend issue?

Mostly it is backend but I guess only a small change in the front end is needed.

On the front end we just need to improve the UI, but I guess it's more of an issue of not being properly saved in the back end since the network response is going, but it is not storing the User Preference

On the front end we just need to improve the UI, but I guess it's more of an issue of not being properly saved in the back end since the network response is going, but it is not storing the User Preference

It is Frontend, Server is working properly. There is no response to being changes in the Data-Fetch. I also told @Nikhil-Ladha about this issue when User-Preference section was implemented by him.

I will open the fix for #676 . Meanwhile this PR is abandoned, it would be better to close this.


Using unocss on rollup

Hi, Is unocss only work on vite only? I can't find how to use it with rollup, without vite. Thanks

I don't see it's common to use rollup to build a web app, can you share some examples?

I build custom nodejs framework called lunox, you can see the example app here here and this is the framework lunox
It using svelte as template engine. In development, I can use vite to render svelte component, unocss also work in this stage. But in production  build I cannot use vite, because of dynamic component. I ended up using rollup to compile all svelte component to  dist/server folder and render it from server.
The problem is, rollup cannot compile unocss

I just want to confirm, if unocss only work with vite, I will close this issue. May be i have to change my production build to work with vite

Rollup itself does not handle CSS. UnoCSS would work in Vite is based on the fact that Vite has built-in supports for CSS. It's still possible to have UnoCSS working on Rollup, but I probably won't have enough experience and also motivation to do that, please feel free to experiment and maybe send a PR to us :) Thanks.

Hi, thanks for answer. Finally I can make unocss work on production build. Like you said, rollup cannot handle css without additional plugin and I not expert on that. So, I switched my production build using vite with help of import.meta.glob. Hey it works :smiley:


CHEF-2675: fix a couple of uses of a variable that is just not there.

Merged here: 5593369d23a19784ed643869af0af6dec497c3aa
Thanks!


Proposal to replace mplayer with ffmpeg and mpv for crop detection and preview

Proposal to replace mplayer with ffmpeg and mpv for crop detection and preview
I've been thinking about doing this for awhile but it wasn't until I got nudged by @legrostdg in #120 that I finally got around to trying it.
While the mplayer tool is not moribund yet, the MPlayer project itself is not very active. And I'm concerned that development of it could eventually cease altogether.
Worse, mplayer is buggy, slow and unpleasant to use, especially on macOS where it won't even handle fullscreen mode correctly. And for some platforms, it's a pain to get a version that works at all.
In contrast, mpv, which started as a fork of mplayer, is a very active project and the tool itself is fast and a pleasure to use. And it's easy to install mpv on macOS via Homebrew:
brew install mpv

Binaries for Windows and Linux are available here:
https://mpv.io/installation/
My detect-crop tool should be using mpv for previewing. And that's an easy enough change to make since detect-crop never calls the previewing tool directly but instead prints the commands to use it on the console.
Currently, detect-crop prints out something like this to use mplayer:
mplayer -really-quiet -nosound -vf rectangle=1920:816:0:132 '/path/to/Movie.mkv'
mplayer -really-quiet -nosound -vf crop=1920:816:0:132 '/path/to/Movie.mkv'

transcode-video --crop 132:132:0:0 '/path/to/Movie.mkv'

That would become something like this to use mpv:
mpv --no-audio --vf lavfi=[drawbox=0:132:1920:816:invert:1] '/path/to/Movie.mkv'
mpv --no-audio --vf crop=1920:816:0:132 '/path/to/Movie.mkv'

transcode-video --crop 132:132:0:0 '/path/to/Movie.mkv'

And if we get rid of the dependency on mplayer for previewing, we should get rid of it for crop detection as well in both the detect-crop and transcode-video tools.
It turns out ffmpeg can do crop detection just fine. In fact, the crop detection code in mplayer was originally derived from libraries in ffmpeg anyway. So the behavior and results are similar.
But the results are not always identical. The good news is that the few differences I've seen appear to be improvements when using ffmpeg.
The other good news is that ffmpeg is almost always faster than mplayer. Noticeably faster, too.
Since ffmpeg is already required by my convert-video tool, you should have it installed already. So leveraging it for this duty isn't really adding a new dependency.
While I'll wait for @samhutchins and @JMoVS to weigh in for what this means for the Windows platform since they're the experts there and @ntodd to comment on this about his Docker container, I see no big downsides from this change and would like to check in my already working code soon. Probably before the end of the week.
(BTW, @samhutchins has already given his thumbs up here: https://github.com/donmelton/video_transcoding/issues/120#issuecomment-275638297 .)
Anyway, let me know what you think. Thanks!

👍 Shouldn't be a problem for the docker image.

Less dependencies sounds great to me.

👍 Seems like an easy win moving to this.

Following along as best I can, this certainly seems like a beneficial change.
Sent from my iPhone
On Jan 30, 2017, at 1:52 PM, Rod Brown <notifications<EMAIL_ADDRESS>wrote:
? Seems like an easy win moving to this.

You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/donmelton/video_transcoding/issues/123#issuecomment-276203397, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AOepbTEHaw2YGbc-yUpcxrGT_aGldWesks5rXluzgaJpZM4Lx9EQ.

Sounds like an improvement to me.

I'll try to have a run at installing/compiling mpv in lxss and report back tomorrow. Let's see how it goes :D

Sounds good to me too.

Have you looked at the dependencies for mpv? It's crazy. Like why does mpv require youtube-dl? ... I am testing the install right now (and will later upgrade the windows machine to an insider build and test whether bottles work - which would significantly speed up the process), but you are essentially trading mplayer for mpv, whereas mpv has a hell of a lot of depenedencies in brew.

On debian at least, mpv recommends youtube-dl, but it does not depend on it.

ah ok, just looked at https://github.com/Homebrew/homebrew-core/blob/2c0270042339c67eddd58ad9685ac7738827b802/Formula/mpv.rb
Might have been my mistake. It's not that bad

@JMoVS @legrostdg Since, by default, mpv is installed via a pre-built Homebrew bottle on macOS, it doesn't seem "heavier" than mplayer. But, yes, mpv does have more dependencies. Thankfully most of them are optional.

@JMoVS BTW, I'll hold on for your final word since you have to document it. I'm targeting Thursday, two days from now, for the release. In the meantime, I'm continuing to test. Plus, I have to update my own README document for this.
Does anyone want me to check in the code now so they can see how it works? I can easily do that without releasing it.

@donmelton Well, Windows only as of today recongized the availability of the insider preview build, so I managed to install it today. It seems like Bottles partially work with the windows beta, but I am currently fighting with it, run into a couple of dubious errors.
BTW: If you run brew deps -n mpv , it shows a lot of deps for me compared to mplayer.
It will break it for current users on lxss that are not on an insider preview build (aka windows alpha/beta builds) of windows as gawk doesn't compile currently. On the insider preview build, well, I really need some more time as a lot of dependencies aren't bottled (And I'm up to a count of around 25 to 30 dependencies by now) where the majority needs to be built from source. So it's compiling write now, but I have no word on what the result will be yet

@JMoVS I wish I had enough Windows-fu to assist you on this. :(
Stupid question: In the short term, is it possible to install the downloadable mpv binary for Windows into LXSS? I realize this is a hack, but based on your description of the current state of the system, it may be weeks or even longer for current users will be able to build mpv on their own.

@JMoVS BTW, since I'm proposing that mpv be used only for preview and not actually needed for crop detection itself, that means mpv is a "soft" dependency. I could, conceivably, add an option to the crop-detect tool to print out the preview commands in the old format for mplayer instead. Would that bridge the gap on LXSS until we resolve the build issues?

That seems great: just remove the mpv/mplayer dependency and print out the preview commands.

@legrostdg Do you mean print out both sets of commands? That might get a little verbose for some folks (including me :) but that's certainly doable in the short term. But it's easier than adding an option.

No, just print a default set of command (e.g. with mpv), and add a "--with-player [mplayer|mpv|vlc?|...]" option.

@legrostdg I like the option name, but mpv and mplayer are the only tools that I know of capable of drawing the box around the cropping area. You can't do that with VLC. Do you know of another tool that could?
Then again, I could just make --with-player mpv|mplayer have only two choices and the default be mpv. That's really easy. :)

ffplay may be added there. It would be cool if vlc could do that, too!

@legrostdg I hadn't thought of ffplay. I'll have to try that. Thanks!

@donmelton @JMoVS
Windows Sitrep
Windows binaries
mpv is easy to install, this site has builds that follow the release tags of mpv, so the version will match the version in Homebrew. Installation is exactly the same as MPlayer, you extract some exe files to a folder in $PATH
Bash on Ubuntu on Windows (lxss, linux subsystem)
As @JMoVS has said, using linuxbrew in this system to install mpv doesn't work (although it might in the future). The mpv website does provide a PPA for Ubuntu, and seeing as the Linux subsystem is Ubuntu we can use those to install mpv. But there's no point, you can't use it to preview the crop. There's no way for an application running inside the Linux subsystem to open a graphical window. This is true for MPlayer too, so while MPlayer can be used for detecting the crop it can't be used to preview it.

I say go ahead with this change, it reduces the number of 'hard' dependencies, and mpv is much nicer to use than MPlayer in my experience. I would still heavily recommend that Windows users find native, Windows binaries and use those

@samhutchins Sorry I took so long to comment. I've been AFK for the last several hours.
OK, I'll go with @legrostdg 's idea of adding an option to select the preview helper and make that tool an optional install. That'll give @JMoVS time for him or others to resolve the LXSS issues. But I agree with you, the correct solution may be to just install the downloadable binary on Windows, no matter which environment you're using.

@donmelton Duh, @samhutchins mentioned a thing I didn't even think about yet.
You don't need to implement the "different player" thing for lxss, as you currently and foreseeably cannot open a player window from within lxss. So yunare actually eliminating one dependency (mplayer) as previewing with mov is not possible.
BUT to answer your queation: As of the insider build (and the spring update), one will be able to call windows binaries from within linux, so that might mean that calling a windows mpv binary from within lxss might become a possibility.
Result: Clear go ahead from my side

@JMoVS Sweet! OK, I'll proceed with the aforementioned plan then. But it may not happen for another day or two as the reason I've AFK most of the day is that I am violently ill. So I might not land it until Friday or even later anyway. I will keep you, @samhutchins and @legrostdg posted. In the meantime, take your vitamin C, folks.

@donmelton Freshly hand pressed orange juice every day helps ;-) Get better soon! And seriously, this is no Apple breakneck piece software. Take your time.

OK, I have finally recovered enough from this vile virus that I think it may be possible for me to take a crack at this today. My thanks for all your well wishes! That, and not opening any other issues during the last week while I was essentially unconscious. :)

Update: Folks, I'm now editing the "README" document to reflect all the changes we've discussed here.  My apologies.
I've decided not to support other previewing tools besides mplayer. Why is that? Because doing so just bloats both the code and the documentation as well as complicating the testing process. I'm sorry, but it's just not worth it to support ffplay.
And eventually, I plan to remove support for mplayer once we're all confident that mpv will work for everyone.
For now, this is how the new option in detect-crop will be described:
    --player mpv|mplayer
                    select player for preview commands (default: mpv)

But I really want to deprecate that option soon. :)

OK, folks, I'm finally well enough to check it all in. :) Just gem update video_transcoding to get version 0.17.0.
Thanks again for all your help!


Package always has len 0

I am trying to provide a package to the kernel, but somehow, anything I provide ends up with a length of 0. Reading the code, that should not happen, but strangely enough, it does. I tried with multiple file types even though it should not be a problem, but still the same result.

cc @lachlansneff, who implemented this feature

I did some investigation and it seems like the implementation is not finished yet: The bootloader crate was not updated yet to support loading a package. It seems like @lachlansneff uses a custom bootloader with that functionality for nebulet: https://github.com/nebulet/nebulet/blob/master/Cargo.toml#L61

Is there a reason why you can't just use include_bytes?

I was actually planning to use include_bytes as it does a very similar thing. Until the implementation is complete, include_bytes will have to do. Thank you for looking into it.

Alternatively you can include it in your linker script if you want to control placement and alignment.


Fix filenames containing dots (.)

File name check used split().first, which would discard the rest of the file name if the file had dots in the actual name. This caused issues with those files, like not being able to emulate, or content not syncing properly.
Can't test if this resolves the issue since i have no way to compile the app, but this error in the code seems like exactly what the app is having issues with in practice.

Thanks!


Added window inset handling, sorted out the SettingsFragment scrolling behavior

Fixed #281.
I added programmatic handling of Notches/Window insets to increase the top content padding, depending on the inset size. Now there is no more overlap with notches and the content.
I also changed up the layout in the Settings Fragment. It didn't make sense to me that the Toolbar and the back button were scrollable. I think it makes more sense to be fixed, as on smaller phones the user will scroll away the back button, and have to scroll back to go back (if they don't have SW/HW back buttons).
I'll add some images to show the behavior/changes.

This is the image of the current behavior, except for the first image, which shows the previous behavior of the SettingsFragment.
You can't see the notch in the screenshots, as you can't take pictures of hardware (makes sense), but I can take a picture of my phone, to show the previous behavior if needed.


3 Container Solution: Versioning?

Should the 3 container solution:
https://github.com/JrCs/docker-letsencrypt-nginx-proxy-companion/wiki/Docker-Compose
Have each image versioned? It seems the nginx.tmpl file is versioned - and I just got the latest to attempt to remedy a problem trying to get www subdomain working.
Thanks.

My general advice would be to use tagged versions of images whenever possible rather than plain latest (either pulled from Dockerhub or built from sources and manually tagged if the maintainer is not tagging new releases along code changes).
This case is a bit specific as most of the functionnality of nginx-proxy depends on the nginx.tmpl file. In a three containers setup, the versioning of this file is under your own responsibility.
Hope that answers your question.

The nginx-proxy container has docker-gen bundled with nginx and serves general purposes. The 3 containers approach requires some fine-tuning of the nginx.tmpl file. The template shipped with the docker-gen container is just a 5 years old example and the nginx-proxy template might not work out of the box. However, the 3 containers approach allows you to use a custom template with docker-gen and nginx-unprivileged instead of nginx-proxy.


more than one Docker.

I am a layperson in this. How do I change the ports? I want to create more than one different Docker. I tried to change it in the .yaml, but the web UI would not open.

I need to create more than one access in Streamio and I was thinking of creating Docker containers with different ports or trying some other way, but I don't know how

I managed to make it work, I just have one question: the download traffic of the videos will go to the server and then be transmitted from the server to the user, correct? I want to know because I want to centralize the use of Streamio on the server so that my girlfriend and I can use Streamio with Real-Debrid even when we are outside the house, since there is the limitation of using it on only one router IP at a time.

downloading is done on the server and server transmits to the client. client doesn't do any downloading.


Update to include interesting article on LDS

Caching and Synchronizing Component Data with Lightning Data Service.

Adding open source LWC component - Customizable lookup component


[Button] Extract the Link logic out of the Button

The Button has two distinct modes of operation: a button and a link. It's unlikely that this mode changes during the lifetime of a component, so having the logic for both unnecessarily increased the size and complexity of a component.
Remove the code related to the Link (both native a elements and router link components) and place it in a separate component, keeping the Button concerned only about button logic.
Search keywords:

The unstyled Link component is not needed. The <a> tag should suffice.


Dashed Path support for LineCartesianLayer

Description
This pull request enables users to add a android.graphics.DashPathEffect to the LineCartesianLayer. It adds a LinePattern sealed interface for LineCartesianLayer to add dashed line pattern support along with continuous line pattern.
Why?
Occasionally, the design team may require a dashed pattern for the lines on the Line Layer. There's also an ongoing discussion about adding support for a Dashed Line

Previous attempt: #677 , my apologies for not being able to address the comments on time.
Open discussion: #469

With this update, users can choose a LinePattern between Continuous (default) and Dashed
How?
First, I added a sealed interface LinePattern containing two implementation Continuous and Dashed addressing this comment from the previous PR. Then I added it as a property for Line in /core/cartesian/layer/LineCartesianLayer.kt class. Utilizing the library's extensive APIs, I assigned these patterns to pathEffect using linePaint within the draw() function.
Next, I updated the rememberLine() function in /compose/cartesian/layer/LineCartesianLayer.kt to include the pattern property. I also added compose factory methods for continuous() and dashed() so that we can use Dp in Compose, addressing this comment
And finally, I updated the sample application by using the pattern property on Chart3 (as suggested here). This shows how simple it is to add a new line pattern.
What does that look like?

Default Behavior
with Dashed line pattern

Default Behavior
with Dashed line pattern

Known issues:
I have encountered a couple of issues that I haven't been able to fully resolve:

Shifting dashes on scroll: As pointed out by @patrickmichalik in this comment, LineCartesianLayer optimizes performance by rendering only the visible portion of each line. While this works well for continuous lines, it causes the dashes to shift when scrolling, as the dash pattern resets based on the visible section. Given my limited understanding of the APIs, I haven't found a way to fix this yet.

Markers Falling on Dash Gaps: While updating Chart3, I noticed that the Marker can appear empty when it falls on a dash gap. This occurs because the marker's position lands where no path is drawn. A possible fix could involve using PathDashPathEffect to draw a transparent underlying path with the dashed path overlaid on top, ensuring the marker always has a valid Entry to read the value from. However, I'm unsure if this approach is optimal or merely a workaround.

I’d appreciate any guidance or feedback on how to best address these issues, as they are crucial to ensuring smooth functionality. Please feel free to make any changes as you see fit! I understand this PR is incomplete without addressing these, I intend to get the ball rolling to add this functionality to this already amazing library. 🙌  If you plan to address this your way, please feel free to close this PR in favor of your implementation.
Thank you!

Hello, @anshu7vyas. Thank you for your contribution.

Shifting dashes on scroll: As pointed out by @patrickmichalik in this https://github.com/patrykandpatrick/vico/pull/677#issuecomment-2105937285, LineCartesianLayer optimizes performance by rendering only the visible portion of each line. While this works well for continuous lines, it causes the dashes to shift when scrolling, as the dash pattern resets based on the visible section. Given my limited understanding of the APIs, I haven't found a way to fix this yet.

@patrickmichalik shared how to prevent this from happening in the comment you have linked. It's at the very bottom. Do you have any specific questions about this solution?

Markers Falling on Dash Gaps: While updating Chart3, I noticed that the Marker can appear empty when it falls on a dash gap. This occurs because the marker's position lands where no path is drawn. A possible fix could involve using PathDashPathEffect to draw a transparent underlying path with the dashed path overlaid on top, ensuring the marker always has a valid Entry to read the value from. However, I'm unsure if this approach is optimal or merely a workaround.

A change we plan on making will prevent this from happening. So it can be ignored for now.

Thanks @Gowsky, appreciate the feedback.
Re: shifting dashes on scroll:

@patrickmichalik shared how to prevent this from happening in the comment you have linked. It's at the very bottom. Do you have any specific questions about this solution?

I understood where to make the change but I am unsure how to make this condition return false for dashed line pattern as we don't expose the linePattern property outside of Line class. I thought about extracting linePaint property outside of Line class but that would mean we would have to remove cap: Paint.Cap property and default it to Paint.Cap.ROUND for linePaint instantiation alongside linePath. If that is feasible, I should then be able to check for this condition if the pathEffect for this linePaint is null, we keep the optimization, otherwise return false.
Please let me know if I am missing something, thank you!

I understood where to make the change but I am unsure how to make this condition return false for dashed line pattern as we don't expose the linePattern property outside of Line class.

I'd suggest adding a requiresFullLineLength: Boolean property to the Line class that would return true when Line.pattern is set to LinePattern.Dashed. LineCartesianLayer.forEachPointInBounds would need a new parameter drawFullLineLength: Boolean. When the parameter is true, the forEachPointInBounds function would skip the optimization and draw the line from the start. drawFullLineLength would need to be set to Line.requiresFullLineLength only when it's used to draw the line. All other usages must use false.

I'd suggest adding a requiresFullLineLength: Boolean property to the Line class that would return true when Line.pattern is set to LinePattern.Dashed. LineCartesianLayer.forEachPointInBounds would need a new parameter drawFullLineLength: Boolean. When the parameter is true, the forEachPointInBounds function would skip the optimization and draw the line from the start. drawFullLineLength would need to be set to Line.requiresFullLineLength only when it's used to draw the line. All other usages must use false.

Thank you so much for your input and solution, @Gowsky 🙌 . I have made this change in 1817969, please take a look.
Here's a before-after video for the change:

Before
After

Closing due to inactivity.

Since this was almost merge-ready, we decided to reopen and update it. We will finalize it.

Thanks for your contribution, @anshu7vyas!