GitHub integration for service catalog deployment template

Describe your changes
Issue ticket number and link
Checklist before requesting a review

[x] I updated CHANGELOG.MD with a description of my changes
[x] If the change was to a module, I ran the code validation script (scripts/validate.sh)
[x] If the change was to a module, I have added thorough tests
[x] If the change was to a module, I have added/updated the module's README.md
[x] If a module was added, I added a reference to the module to the repository's README.md
[x] I verified that my code deploys successfully using seedfarmer apply

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 5c324ad0f4996603d6ac284670bdb7b50967039f
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 0577e5c6f2ee44adf73f74dd0ae753e9a753134b
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 3062f147986c1aeaa81aa373273e5d69ae238141
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 08ae33918b006db7ac60456221cb5877331b5efc
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 6940a3b03c4402f1d1b8a4d74163ebb4fc751776
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 172c62488867a0ab326720d947e25fe75329defe
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: d02b3c23503fd76435f0111b30ad2bffda897c72
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: edc66df2008aa7a97957a489545a29a8972efa28
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: ba3e3a49ddbb3c5e7146a975d53a602ec7d6a89a
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 797e348471da7bb227677d6e25a78dd532f8545f
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 55a345df9ab5ca3716a9cf03cc752d293e3c55bd
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: d0c9d6225384db99046e5553427995cdc74d8a20
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: fcf25304d10f701afad18d2029bd0d76a3d20797
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: ed01f95a2a3888ee016f781d5e1e8fc4e41cafac
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 7a8d2b53c53488c98ca4f5e0e33fe9937927bf32
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 44e1cff17940b0f698bda2d1cc51d383adc4bc3b
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 7d52213ccce1de63dbbb50a42b699dfe9f489971
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 507d9022fb86f7e0c1023d84c1899466e6496e8f
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 8fb52ffd37eb15f5cd9c043c0f3a4d5b78dd5ebe
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: fa120f3b39da82613d8dbada7d50ced8c959eca1
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 4c6de660571a6a431fd73f5c667df4cab885b730
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 5b89b53003c215b58cd41b8a0848032ebf1612f5
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

Approved, thank you! As discussed offline, we will keep CodeCommit as default option for demos/workshops as it requires no additional setup, and provide GitHub Cloud examples in examples/manifests for customer prod usage.
Thanks again, great work!

Changes are incorporated to enable CodeCommit as default option along with GitHub integration. Example manifest file to enable GitHub integration as provided at examples/manifests/sagemaker-templates-modules-github.yaml.

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 8d8f27bb8e9fec268bd7ab9bb6d398175f289546
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 3b4c27c133baa1b38666d35255565f1db194a4cf
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 0c15505cae6e2df88b93f7c959dba3d48a5f7967
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: c4be4ed116a0b650995eec67939ef3f92972a236
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 2ca3203ffc77e25e83db66e4f015afff2f860c4c
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository


[3.7] Fixed AR-113 and added regression tests

Backport of https://github.com/arangodb/arangodb/pull/13196.

http://jenkins.arangodb.biz:8080/job/arangodb-matrix-pr/13258/


srgba support for gfx renderer?

It looks like the renderer only accepts colors of gfx::format::Rgba8 which makes it messy to integrate with an app running using other color types.
I imagine it might not be possible to support arbitrary colors but an sRgba8 mode could be handy. I am not sure what sort of gfx magic you would need to do otherwise...
I hacked up the renderer to use srgba instead but I didn't really check to see if the colors looked right.

Yeah, it would be nice to support other color types as well...the last time I checked, the macros from gfx don't allow parameterizing over the color type, and using Srgba8 didn't fix the colours. Maybe things will be different after the gfx rewrite...?

I can say for sure that this is a gfx problem. At the very least the gfx opengl backend permanently sets glEnable(GL_FRAMEBUFFER_SRGB) which is not really what you want (you want to enable or disable this flag on a per-renderpass basis, and in particular you want it OFF for imgui; glium supports toggling this flag per-Program).
My workaround is thus:
device.with_gl(|gl| {
    gl.Disable(::gl::FRAMEBUFFER_SRGB);
});

Given both piston and ggez use srgb it would be quite nice to have this. I have to admit I really don't know that much about srgb. I know it is a color space and possibly a higher bpp color representation?
If it is just a color space thing I think I could live with the colors being wrong in my imgui given I probably won't use it in production.
Alternatively, I wonder if people would be interested in a ggez backend? It seems unnecessary given it just uses gfx-rs but it also seems like it might not be that much work.

Ran into this issue today as I am unable to pass an Srgb8 render target to imgui_gfx_renderer::Renderer(). I'm currently using Srgb8 as the color format in gfx because it otherwise makes the gamma way too bright.

I should note that I am using SDL2 to create the OpenGL context.

Yeah, it would be nice to support other color types as well...the last time I checked, the macros from gfx don't allow parameterizing over the color type, and using Srgba8 didn't fix the colours. Maybe things will be different after the gfx rewrite...?

Using Srgba8 fixes this based on my own experience, and gfx does infact parameterize over color format, so imgui_gfx_renderer should too.

This is now implemented in the upcoming 0.1 release. imgui-gfx-renderer no longer uses the macro, and I've generated the code by hand and parameterized it with blend format, so it's possible to target both Srgba8 and Rgba8. I don't know if the colours are actually correct in practice, but at least it compiles ;)
No ETA for the 0.1 release yet though, so I'll keep this issue open for now.

Thanks for the update! I ended up simply forcing Rgb8 in my application (as Srgb was causing other issues as well).

Closing since 0.1.0-rc.1 brings Srgba8 support


File Path issue when attempting to execute program for Starfield save

When trying to convert a Starfield save, the file path generates all sub-directories with a \ between each file.
EX: c:\users\\...
This causes the program to be unable to locate any files.

Thanks for the report, I'll investigate this.

Can you zip up your Game Pass saves so that I can test things?
Here's how to obtain the saves:

Open up the Windows Run dialog by pressing Win+R
Type in "%LOCALAPPDATA%\Packages\BethesdaSoftworks.ProjectGold_3275kfvn8vcwc\SystemAppData" (without quotes)
Zip up the "wgs" folder.

You can upload the zip to a file sharing service of your choice (Dropbox, Google Drive, OneDrive, MEGA, etc.) and share the link either here or by email (you can find my email in my profile).
Thanks!


Revised Team Addition to index.html

Fixed responsive positioning issues
Removed line between divs on mobile by adding viewport meta tag
Fixed social link URLS
Cleaned up CSS
Made photos smaller

My current issues:
General:
*Not a big fan of the new 'send' button. The previous one was much sexier.
Desktop:
*Not enough space at the top of the page before 'Spitball'. My personal preference (subjective) is to have page contents more vertically centered on page load.
*Too much space below '#team' div. There is too much room to scroll to get the bottom.

Something strange about the way our pictures look at the moment. They are either too far apart or too small.

Mobile:

Need some padding at the bottom of the page below team section (glyphicons are nearly touching bottom of the page)
'The Team' is too close to send button on iphone sized screens. There needs to be some margin or padding between contact and team sections.

Desktop:

Not enough space at the top of the page before 'Spitball'. It looks good on mobile because there is more real estate being utilized but strange when there is empty space on the page. My personal preference (subjective) is to have page contents more vertically centered on page load.

Something strange about the way our pictures look at the moment. They are either too far apart or too small.

'The Team' is too close to send button on iphone sized screens. There needs to be some margin or padding between contact and team sections.

Need some padding at the bottom of the page below team section (glyphicons are nearly touching bottom of the page)

Before we merge: what were your thoughts on my comments?

Totally missed them. Yeah spacing needs to be fixed on mobile most. The 100vh can probably be taken out now that we're not doing divs by color and that will help fix that. Without 100vh in there, we can add padding based on vh. I'm OK about the padding on the top for now but agree with all other spacing comments.
Big screen real estate being wasted: we can do some drawings on the side for larger screens.


FIPS Compliant Algorithm?

For regulated industries, it would be extremely helpful if you noted if this algorithm is considered FIPS 140-2 compliant.  Could you add a comment in the document as to whether it is on that list?

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

ID: f41e2f97-cfcf-3c42-307d-50a8595fd46a
Version Independent ID: 81481319-c0de-367f-8822-e397d31f530b
Content: Always Encrypted cryptography - SQL Server
Content Source: docs/relational-databases/security/encryption/always-encrypted-cryptography.md
Product: sql
Technology: security
GitHub Login: @jaszymas
Microsoft Alias: jaszymas

@PrometheusRising1 -- thank you for your question.  Please consider these resources:

SQL Server on Microsoft Q&A
DBA Stack Exchange
Stack Overflow

@jaszymas -- please look into this issue.

Added the following line to the document: "Always Encrypted internally uses FIPS 140-2 validated cryptographic modules."

#please-close


Unable to Read Environment Variables from FS2020

Is it possible to read the simulators environment variables (e.g. ZULU TIME)?
According to this document it does say that they available by prefixing with "E:":
PROGRAMMING APIs
The bulk of the simvars I've tried calling appear to only be "A:" variables (e.g. SIM ON GROUND) which work as expected.  Reviewing the scvars.json this also seems to be true.
I did find the below bug which could indicate it has been broken since SU14, I don't understand what the OP is saying he did to resolve it:
Simvars of E section not anymore available in SDK

Perhaps this is also of additional assistnace:
Reading Environment variables via SDK


Please add RELATIVE_FILEPATH_BASE for snippets

For snippet expansions, similar to how TM_FILENAME has the companion TM_FILENAME_BASE, please add RELATIVE_FILEPATH_BASE to be RELATIVE_FILEPATH without the extension.
While this could be done with RegEx, Snippets only allow 1 regex per variable, so using RegEx to remove the extension would mean not being able to use it to do some other transform (e.g., URL escaping / & \)

This feature request has not yet received the 20 community upvotes it takes to make to our backlog. 10 days to go. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

:slightly_frowning_face: In the last 60 days, this feature request has received less than 20 community upvotes and we closed it. Still a big Thank You to you for taking the time to create this issue! To learn more about how we handle feature requests, please see our documentation.
Happy Coding!


Update Slack.yml and add newcomer-alert workflow

Current Behavior
Currently the slack.yml is outdated. Also there is no automated way of notifying the slack channel when a "good first issue" has been created.
Desired Behavior
Update slack.yml and add newcomer-alert.yml to the Github workflow.

Resources
Add the updated slack.yml file and the newcomer-alert.yml file to the .github/workflow folder.
Files needed:
https://github.com/meshery/meshery-istio/blob/master/.github/workflows/slack.yml
https://github.com/layer5io/layer5/blob/master/.github/workflows/newcomers-alert.yml

Hi @cpepper96! I would like to take up this issue. Can you please assign it to me?

If you @cpepper96 hasn't already started with this, please go ahead @Ankita13-code

I have opened a PR for this issue - https://github.com/meshery/meshery-adapter-library/pull/76
Please take a look @warunicorn19


Question: can the stateSecret be any random string?

Description
Can the stateSecret be any random string? Or are there any requirements? (ref the code here https://slack.dev/bolt-js/concepts#authenticating-oauth). When I use 'my-secret', the OAuth flow works smoothly. But I'm getting the following error when I use a custom random string (for example crypto.randomBytes(16).toString('hex'))
OAuth:InstallProvider:1 JsonWebTokenError: invalid signature at /var/task/node_modules/jsonwebtoken/verify.js:133:19 at
getSecret (/var/task/node_modules/jsonwebtoken/verify.js:90:14) at module.exports
(/var/task/node_modules/jsonwebtoken/verify.js:94:10) at ClearStateStore.<anonymous>
(/var/task/node_modules/@slack/oauth/dist/index.js:83:53) at step
(/var/task/node_modules/@slack/oauth/dist/index.js:54:23) at Object.next
(/var/task/node_modules/@slack/oauth/dist/index.js:35:53) at /var/task/node_modules/@slack/oauth/dist/index.js:29:71 at
new Promise (<anonymous>) at __awaiter (/var/task/node_modules/@slack/oauth/dist/index.js:25:12) at
ClearStateStore.verifyStateParam (/var/task/node_modules/@slack/oauth/dist/index.js:80:16)

Thank you! :D
What type of issue is this? (place an x in one of the [ ])

[x] question

Requirements (place an x in each of the [ ])

[x] I've read and understood the Contributing guidelines and have done my best effort to follow them.
[x] I've read and agree to the Code of Conduct.
[x] I've searched for any related issues and avoided creating a duplicate issue.

Hello @AnandBaburajan,
The "invalid signature" error returned by the jsonwebtoken node module (a dependency of bolt-js) means that the verification of the state secret failed. That is, the state secret passed as a querystring GET parameter to initiate the oauth flow does not match the secret defined in your bolt-js app.
Are you sure the state parameter provided from the client matches the state parameter you set in your bolt app configuration?


Change the animations "speed"

Enough with the ironic issues 😅
If I am only animating/spinning 3 items or even 2, it turns out to be really slow, but if I spin over 20 it's way faster and looks a lot nicer!
Is there any way to change it?

If there are only two or three prize items you will need to increase it. The roulette works fine if there are enough prize items passed via the ‘prizes’ prop. If I didn’t get you right provide an example of code

Is there a way of duplicating the price items, so 2 items would "act" like 4? (possibly even higher)

Of course. In this usage example is a function:
const reproductionArray = (array = [], length = 0) => [
  ...Array(length)
    .fill('_')
    .map(() => array[Math.floor(Math.random() * array.length)]),
];

You can use it


Blank page on start

Tried running, but got an error and a blank page:
npm start

> long-calendar@ start /home/erb/Programming/Long-calendar
> ts-node ./.erb/scripts/check-port-in-use.js && npm run start:renderer

> long-calendar@ start:renderer /home/erb/Programming/Long-calendar
> cross-env NODE_ENV=development TS_NODE_TRANSPILE_ONLY=true webpack serve --config ./.erb/configs/webpack.config.renderer.dev.ts

Starting Main Process...
(node:98777) [DEP_WEBPACK_DEV_SERVER_ON_BEFORE_SETUP_MIDDLEWARE] DeprecationWarning: 'onBeforeSetupMiddleware' option is deprecated. Please use the 'setupMiddlewares' option.
(Use `node --trace-deprecation ...` to show where the warning was created)
<i> [webpack-dev-server] Project is running at:
<i> [webpack-dev-server] Loopback: http://localhost:11212/
<i> [webpack-dev-server] On Your Network (IPv4): http://<IP_ADDRESS>:11212/
<i> [webpack-dev-server] Content not from webpack is served from '/home/erb/Programming/Long-calendar/public' directory
<i> [webpack-dev-server] 404s will fallback to '/index.html'

> long-calendar@ start:main /home/erb/Programming/Long-calendar
> cross-env NODE_ENV=development electron -r ts-node/register/transpile-only ./src/main/main.ts

Listening
[98851:0421/183312.033911:ERROR:sandbox_linux.cc(377)] InitializeSandbox() called with multiple threads in process gpu-process.
(node:98816) ExtensionLoadWarning: Warnings loading extension at /home/erb/.config/Electron/extensions/fmkadmapgofadopljbjfkapdkoienihi:
  Manifest version 2 is deprecated, and support will be removed in 2023. See https://developer.chrome.com/blog/mv2-transition/ for more details.

(Use `electron --trace-warnings ...` to show where the warning was created)
18:33:12.129 › APPIMAGE env is not defined, current application is not an AppImage
<i> [webpack-dev-middleware] wait until bundle finished: /index.html
[98816:0421/183316.751611:ERROR:CONSOLE(160)] "Electron sandbox_bundle.js script failed to run", source: node:electron/js2c/sandbox_bundle (160)
[98816:0421/183316.751644:ERROR:CONSOLE(160)] "TypeError: object null is not iterable (cannot read property Symbol(Symbol.iterator))", source: node:electron/js2c/sandbox_bundle (160)

The dev tools just show a single weird error:

Tried running both with node v17 and node v14 (and removing node_modules in between), but same thing.
Using Arch Linux, but shouldn't have to do with it?
I'll also open a PR with some docs I wrote. (edit: later)

That's weird!
I don't think node (my version is v16.9.1) or the OS should interfere since this is based on electron-react-boilerplate, can you pull the latest commit and check if it works? I haven't added any extra dependencies, so I don't think you need to re-install node_modules or change the node version!
In case it still doesn't I'll extend the logging of the backend as well as the front end to debug this properly!

Just pulled the latest code and ran it again, but same thing.
Here's a full screenshot in case there's something I missed:

I searched and found an issue relating to those last warning messages, but not sure if that's why the page is blank: https://github.com/electron/electron/issues/32133

In this issue https://github.com/vercel/next.js/issues/18025 they relate this to a package called  react-devtool, but it's not on the dependencies of the project, so I guess that cause should be discarded

Oh okay, I think the problem is caused by the package react-refresh-webpack-plugin. Some people is having a similar issue, but it's happening on MacOS... https://github.com/facebook/react/issues/21047

Could you try running UPGRADE_EXTENSIONS=1 npm start as said in: https://electron-react-boilerplate.js.org/docs/dev-tools/ ?

That worked! Awesome.


Auto-divide music by album

Requires #179.
Sometimes, an album will have information that's incompatible with Pathephone, such as multiple artists for different files. Pathephone prevents the user from submitting his files without an "album artist". However, when there's none, entering false information is the only way out.
One way to solve this problem would be to separate files which contains incompatible information in different albums and queue them for review by the user before submitting them or auto-submit them all.
This would allow to dump a whole music library in the program, have it auto-divide everything in coherent albums, and have everything submitted automatically. Moar music = More fun!

@NatoBoram album artist field will be removed exactly because of the reasons you have described.


Different inference behavior between method and function syntax as opposed to arrow functions.

TypeScript Version:  4.0.0-dev.20200516

Search Terms: object literal inference arrow function method
Expected behavior: M in inferred as { foo: () => void; }
Actual behavior:: When using function or method syntax M is inferred as unknown. Using arrow functions works fine.

Related Issues: #32230 But that specific case seems fixed
Code
function make<M>(o: { mutations: M,  action: (m: M) => void }) { }

make({
   mutations: {
       foo () { } // Nope
       // foo: function () { } // Nope
       // foo: () => { } // OK
   },
   action: (a) => { a.foo() }
})

Output
"use strict";
function make(o) { }
make({
    mutations: {
        // foo () { } // Nope
        // foo: function () { } // Nope
        foo: () => { } // OK
    },
    action: (a) => { a.foo(); }
});

Compiler Options
{
  "compilerOptions": {
    "noImplicitAny": true,
    "strictNullChecks": true,
    "strictFunctionTypes": true,
    "strictPropertyInitialization": true,
    "strictBindCallApply": true,
    "noImplicitThis": true,
    "noImplicitReturns": true,
    "alwaysStrict": true,
    "esModuleInterop": true,
    "declaration": true,
    "experimentalDecorators": true,
    "emitDecoratorMetadata": true,
    "moduleResolution": 2,
    "target": "ES2017",
    "jsx": "React",
    "module": "ESNext"
  }
}

Playground Link: Provided

Personally I don't think this is a bug but rather an improvement.
 But an arrow function does not have this.
A user-side fix would be annotate this explicitly:
function make<M>(o: { mutations: M,  action: (m: M) => void }) { }

make({
   mutations: {
       foo(this: never) { } // OK
   },
   action: (a) => { a.foo() }
})

However, we can skip the contextual typing if this isn't accessed in the method.


App Exits Instead of Navigating Back with StatefullShellRoute in go_router on Android (flutter >= 3.24)

Steps to reproduce

Modify MainActivity.kt to use FlutterFragmentActivity instead of FlutterActivity.
Run the official example of StatefullShellRoute from the go_router package. The example can be found here.
Tap the “View details” button in “Section A” to navigate to the “DetailsScreen - A” screen.
Switch to “Section B.”
Switch back to “Section A” and use the Android back button or swipe gesture to go back.
Issue: The app exits instead of returning to the “Root of section A.”

Expected results
The app should navigate back to the “Root of section A” when the Android back button or swipe gesture is used.
Actual results
The app exits instead of navigating back to the previous screen.
Code sample
Code sample
import io.flutter.embedding.android.FlutterFragmentActivity

class MainActivity: FlutterFragmentActivity()

import 'package:flutter/material.dart';
import 'package:go_router/go_router.dart';

final GlobalKey<NavigatorState> _rootNavigatorKey =
    GlobalKey<NavigatorState>(debugLabel: 'root');
final GlobalKey<NavigatorState> _sectionANavigatorKey =
    GlobalKey<NavigatorState>(debugLabel: 'sectionANav');

// This example demonstrates how to setup nested navigation using a
// BottomNavigationBar, where each bar item uses its own persistent navigator,
// i.e. navigation state is maintained separately for each item. This setup also
// enables deep linking into nested pages.

void main() {
  runApp(NestedTabNavigationExampleApp());
}

/// An example demonstrating how to use nested navigators
class NestedTabNavigationExampleApp extends StatelessWidget {
  /// Creates a NestedTabNavigationExampleApp
  NestedTabNavigationExampleApp({super.key});

  final GoRouter _router = GoRouter(
    navigatorKey: _rootNavigatorKey,
    initialLocation: '/a',
    routes: <RouteBase>[
      // #docregion configuration-builder
      StatefulShellRoute.indexedStack(
        builder: (BuildContext context, GoRouterState state,
            StatefulNavigationShell navigationShell) {
          // Return the widget that implements the custom shell (in this case
          // using a BottomNavigationBar). The StatefulNavigationShell is passed
          // to be able access the state of the shell and to navigate to other
          // branches in a stateful way.
          return ScaffoldWithNavBar(navigationShell: navigationShell);
        },
        // #enddocregion configuration-builder
        // #docregion configuration-branches
        branches: <StatefulShellBranch>[
          // The route branch for the first tab of the bottom navigation bar.
          StatefulShellBranch(
            navigatorKey: _sectionANavigatorKey,
            routes: <RouteBase>[
              GoRoute(
                // The screen to display as the root in the first tab of the
                // bottom navigation bar.
                path: '/a',
                builder: (BuildContext context, GoRouterState state) =>
                    const RootScreen(label: 'A', detailsPath: '/a/details'),
                routes: <RouteBase>[
                  // The details screen to display stacked on navigator of the
                  // first tab. This will cover screen A but not the application
                  // shell (bottom navigation bar).
                  GoRoute(
                    path: 'details',
                    builder: (BuildContext context, GoRouterState state) =>
                        const DetailsScreen(label: 'A'),
                  ),
                ],
              ),
            ],
          ),
          // #enddocregion configuration-branches

          // The route branch for the second tab of the bottom navigation bar.
          StatefulShellBranch(
            // It's not necessary to provide a navigatorKey if it isn't also
            // needed elsewhere. If not provided, a default key will be used.
            routes: <RouteBase>[
              GoRoute(
                // The screen to display as the root in the second tab of the
                // bottom navigation bar.
                path: '/b',
                builder: (BuildContext context, GoRouterState state) =>
                    const RootScreen(
                  label: 'B',
                  detailsPath: '/b/details/1',
                  secondDetailsPath: '/b/details/2',
                ),
                routes: <RouteBase>[
                  GoRoute(
                    path: 'details/:param',
                    builder: (BuildContext context, GoRouterState state) =>
                        DetailsScreen(
                      label: 'B',
                      param: state.pathParameters['param'],
                    ),
                  ),
                ],
              ),
            ],
          ),

          // The route branch for the third tab of the bottom navigation bar.
          StatefulShellBranch(
            routes: <RouteBase>[
              GoRoute(
                // The screen to display as the root in the third tab of the
                // bottom navigation bar.
                path: '/c',
                builder: (BuildContext context, GoRouterState state) =>
                    const RootScreen(
                  label: 'C',
                  detailsPath: '/c/details',
                ),
                routes: <RouteBase>[
                  GoRoute(
                    path: 'details',
                    builder: (BuildContext context, GoRouterState state) =>
                        DetailsScreen(
                      label: 'C',
                      extra: state.extra,
                    ),
                  ),
                ],
              ),
            ],
          ),
        ],
      ),
    ],
  );

  @override
  Widget build(BuildContext context) {
    return MaterialApp.router(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      routerConfig: _router,
    );
  }
}

/// Builds the "shell" for the app by building a Scaffold with a
/// BottomNavigationBar, where [child] is placed in the body of the Scaffold.
class ScaffoldWithNavBar extends StatelessWidget {
  /// Constructs an [ScaffoldWithNavBar].
  const ScaffoldWithNavBar({
    required this.navigationShell,
    Key? key,
  }) : super(key: key ?? const ValueKey<String>('ScaffoldWithNavBar'));

  /// The navigation shell and container for the branch Navigators.
  final StatefulNavigationShell navigationShell;

  // #docregion configuration-custom-shell
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      // The StatefulNavigationShell from the associated StatefulShellRoute is
      // directly passed as the body of the Scaffold.
      body: navigationShell,
      bottomNavigationBar: BottomNavigationBar(
        // Here, the items of BottomNavigationBar are hard coded. In a real
        // world scenario, the items would most likely be generated from the
        // branches of the shell route, which can be fetched using
        // `navigationShell.route.branches`.
        items: const <BottomNavigationBarItem>[
          BottomNavigationBarItem(icon: Icon(Icons.home), label: 'Section A'),
          BottomNavigationBarItem(icon: Icon(Icons.work), label: 'Section B'),
          BottomNavigationBarItem(icon: Icon(Icons.tab), label: 'Section C'),
        ],
        currentIndex: navigationShell.currentIndex,
        // Navigate to the current location of the branch at the provided index
        // when tapping an item in the BottomNavigationBar.
        onTap: (int index) => navigationShell.goBranch(index),
      ),
    );
  }
  // #enddocregion configuration-custom-shell

  /// NOTE: For a slightly more sophisticated branch switching, change the onTap
  /// handler on the BottomNavigationBar above to the following:
  /// `onTap: (int index) => _onTap(context, index),`
  // ignore: unused_element
  void _onTap(BuildContext context, int index) {
    // When navigating to a new branch, it's recommended to use the goBranch
    // method, as doing so makes sure the last navigation state of the
    // Navigator for the branch is restored.
    navigationShell.goBranch(
      index,
      // A common pattern when using bottom navigation bars is to support
      // navigating to the initial location when tapping the item that is
      // already active. This example demonstrates how to support this behavior,
      // using the initialLocation parameter of goBranch.
      initialLocation: index == navigationShell.currentIndex,
    );
  }
}

/// Widget for the root/initial pages in the bottom navigation bar.
class RootScreen extends StatelessWidget {
  /// Creates a RootScreen
  const RootScreen({
    required this.label,
    required this.detailsPath,
    this.secondDetailsPath,
    super.key,
  });

  /// The label
  final String label;

  /// The path to the detail page
  final String detailsPath;

  /// The path to another detail page
  final String? secondDetailsPath;

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Root of section $label'),
      ),
      body: Center(
        child: Column(
          mainAxisSize: MainAxisSize.min,
          children: <Widget>[
            Text('Screen $label',
                style: Theme.of(context).textTheme.titleLarge),
            const Padding(padding: EdgeInsets.all(4)),
            TextButton(
              onPressed: () {
                GoRouter.of(context).go(detailsPath, extra: '$label-XYZ');
              },
              child: const Text('View details'),
            ),
            const Padding(padding: EdgeInsets.all(4)),
            if (secondDetailsPath != null)
              TextButton(
                onPressed: () {
                  GoRouter.of(context).go(secondDetailsPath!);
                },
                child: const Text('View more details'),
              ),
          ],
        ),
      ),
    );
  }
}

/// The details screen for either the A or B screen.
class DetailsScreen extends StatefulWidget {
  /// Constructs a [DetailsScreen].
  const DetailsScreen({
    required this.label,
    this.param,
    this.extra,
    this.withScaffold = true,
    super.key,
  });

  /// The label to display in the center of the screen.
  final String label;

  /// Optional param
  final String? param;

  /// Optional extra object
  final Object? extra;

  /// Wrap in scaffold
  final bool withScaffold;

  @override
  State<StatefulWidget> createState() => DetailsScreenState();
}

/// The state for DetailsScreen
class DetailsScreenState extends State<DetailsScreen> {
  int _counter = 0;

  @override
  Widget build(BuildContext context) {
    if (widget.withScaffold) {
      return Scaffold(
        appBar: AppBar(
          title: Text('Details Screen - ${widget.label}'),
        ),
        body: _build(context),
      );
    } else {
      return ColoredBox(
        color: Theme.of(context).scaffoldBackgroundColor,
        child: _build(context),
      );
    }
  }

  Widget _build(BuildContext context) {
    return Center(
      child: Column(
        mainAxisSize: MainAxisSize.min,
        children: <Widget>[
          Text('Details for ${widget.label} - Counter: $_counter',
              style: Theme.of(context).textTheme.titleLarge),
          const Padding(padding: EdgeInsets.all(4)),
          TextButton(
            onPressed: () {
              setState(() {
                _counter++;
              });
            },
            child: const Text('Increment counter'),
          ),
          const Padding(padding: EdgeInsets.all(8)),
          if (widget.param != null)
            Text('Parameter: ${widget.param!}',
                style: Theme.of(context).textTheme.titleMedium),
          const Padding(padding: EdgeInsets.all(8)),
          if (widget.extra != null)
            Text('Extra: ${widget.extra!}',
                style: Theme.of(context).textTheme.titleMedium),
          if (!widget.withScaffold) ...<Widget>[
            const Padding(padding: EdgeInsets.all(16)),
            TextButton(
              onPressed: () {
                GoRouter.of(context).pop();
              },
              child: const Text('< Back',
                  style: TextStyle(fontWeight: FontWeight.bold, fontSize: 18)),
            ),
          ]
        ],
      ),
    );
  }
}

Screenshots or Video

Screenshots / Video demonstration
https://github.com/user-attachments/assets/b59a1e8d-0fd2-4a9a-a198-13c92fc0f463

Logs
No response
Flutter Doctor output
Doctor output
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.24.0, on macOS 14.5 23F79 darwin-arm64, locale ja-JP)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[!] Xcode - develop for iOS and macOS (Xcode 15.2)
    ✗ CocoaPods installed but not working.
        You appear to have CocoaPods installed but it is not working.
        This can happen if the version of Ruby that CocoaPods was installed with is different from the one being used to invoke
        it.
        This can usually be fixed by re-installing CocoaPods.
      For re-installation instructions, see https://guides.cocoapods.org/using/getting-started.html#installation
[✓] Chrome - develop for the web
[✓] Android Studio (version 2024.1)
[✓] VS Code (version 1.92.2)
[✓] Connected device (6 available)
[✓] Network resources

! Doctor found issues in 1 category.

Additional Information

This issue does not occur in Flutter SDK version 3.22.3 but starts occurring from version 3.24.0.
The issue only occurs when using FlutterFragmentActivity. It does not occur when using FlutterActivity.

Thanks for the report. Reproduced this using go_router: ^14.2.3 and Flutter master channel 3.25.0-1.0.pre.27 on device Pixel 7, Android 14. This seems to be an underlying route issue in framework.

This seems to happen for any kind of go router routes. We are using simple GoRoute instances. I confirm if we switch to FlutterActivity the problem seems to be resolved.

Actually, it started to work for us after adding shouldAutomaticallyHandleOnBackPressed(true) in the FlutterFragment builder. We needed to override createFlutterFragment to enforce the BackgroundMode to transparent combined with RenderMode.surface.
The default value createFlutterFragment() does  call shouldAutomaticallyHandleOnBackPressed with true by default so my statement above is not true, meaning that FlutterFragmentActivity does not break the back navigation within the Flutter engine.

I have an old repo that I use to test add-to-app that uses FlutterFragmentActivity and it seems to work: https://github.com/justinmc/flutter-add-to-app
Not quite the same setup here, though. I'll take a look.

The bug appears fixed with the original repro code above when I use my PR that automatically uses PopScope to handle back gestures for nested Navigators: https://github.com/flutter/flutter/pull/152330
So this is probably just caused by the fact that go_router doesn't do this. Not sure why it only happens with FlutterFragmentActivity though...
Also see this non-go_router example of a similar thing, which works with FlutterFragmentActivity: https://github.com/flutter/flutter/blob/418fa9d62610b6990f18c0a7cf6c194364fad4b8/examples/api/lib/widgets/navigator_pop_handler/navigator_pop_handler.1.dart

Another scenario to reproduce the bug, also based on the official example of StatefullShellRoute from the go_router package with small modification to show an alert on  details screen (for example some confirmation in real app) by adding simple button next to increment:
ElevatedButton(
            onPressed: () {
              // set up the button
              Widget okButton = TextButton(
                child: Text('OK'),
                onPressed: () {
                  context.pop();
                },
              );

              // set up the AlertDialog
              AlertDialog alert = AlertDialog(
                title: const Text('Title'),
                content: const Text('Simple alert'),
                actions: [
                  okButton,
                ],
              );

              // show the dialog
              showDialog(
                context: context,
                builder: (BuildContext context) {
                  return alert;
                },
              );
            },
            child: const Text('Show Alert'),
          ),

Steps to reproduce:

Open screenA ✅
Navigate to details for screen A ✅
On this details screen open an alert/dialog, dialog is shown ✅
press android HW back button 1st time: It closes dialog ✅
press android HW back button 2nd time: It closes the app ❌
but "details for screen A" should be closed and app should navigate to screenA

My workaround is that I place a PopScope around my MaterialApp.router(). In my case it is important that you need to place that PopScope within a MaterialApp.
class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    final router = AppRouter.build(context);
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
        useMaterial3: true,
      ),
      home: PopScope(
        canPop: false, // in my real app this is a value from a provider
        onPopInvokedWithResult: (_, __) =>
            print('onPopInvokedWithResult called'),
        child: MaterialApp.router(
          routeInformationProvider: router.routeInformationProvider,
          routeInformationParser: router.routeInformationParser,
          routerDelegate: router.routerDelegate,
        ),
      ),
    );
  }
}

Try adding this code into FlutterFragmentActivity. It worked for me.
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    onBackPressedDispatcher.addCallback(this, object : OnBackPressedCallback(true) {
        override fun handleOnBackPressed() {
            flutterEngine?.navigationChannel?.popRoute()
        }
    })
}

Try adding this code into FlutterFragmentActivity. It worked for me.
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    onBackPressedDispatcher.addCallback(this, object : OnBackPressedCallback(true) {
        override fun handleOnBackPressed() {
            flutterEngine?.navigationChannel?.popRoute()
        }
    })
}

This kind of worked for me. It prevents the app from closing, but it's still not popping.

Try adding this code into FlutterFragmentActivity. It worked for me.
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    onBackPressedDispatcher.addCallback(this, object : OnBackPressedCallback(true) {
        override fun handleOnBackPressed() {
            flutterEngine?.navigationChannel?.popRoute()
        }
    })
}

This seemed to call the onBackPressed infinitely in my case. Also the app will not close on the last route on physical back pressed

Try adding this code into FlutterFragmentActivity. It worked for me.
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    onBackPressedDispatcher.addCallback(this, object : OnBackPressedCallback(true) {
        override fun handleOnBackPressed() {
            flutterEngine?.navigationChannel?.popRoute()
        }
    })
}

This seemed to call the onBackPressed infinitely in my case. Also the app will not close on the last route on physical back pressed

This worked for me, I still had to downgrade the go_router version, since i had problems with some internal tab navigation. But maybe it'd suit your needs.
onBackPressedDispatcher.addCallback(this, object : OnBackPressedCallback(true) {
    override fun handleOnBackPressed() {
        if (flutterEngine.navigationChannel?.popRoute()!! == null) {
            onBackPressed()
        }
    }
})

What it does is that it uses flutter's pop, but when its exhausted, runs the native pop. (Super tech terminology :p)

Try adding this code into FlutterFragmentActivity. It worked for me.
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    onBackPressedDispatcher.addCallback(this, object : OnBackPressedCallback(true) {
        override fun handleOnBackPressed() {
            flutterEngine?.navigationChannel?.popRoute()
        }
    })
}

This seemed to call the onBackPressed infinitely in my case. Also the app will not close on the last route on physical back pressed

This worked for me, I still had to downgrade the go_router version, since i had problems with some internal tab navigation. But maybe it'd suit your needs.
onBackPressedDispatcher.addCallback(this, object : OnBackPressedCallback(true) {
    override fun handleOnBackPressed() {
        if (flutterEngine.navigationChannel?.popRoute()!! == null) {
            onBackPressed()
        }
    }
})

What it does is that it uses flutter's pop, but when its exhausted, runs the native pop. (Super tech terminology :p)

This works but when I'm in the initial tab the app doesn't close and at least the same tab is re-rendered to me, this causes that if I want to change to another tab I still get the initial one

Try adding this code into FlutterFragmentActivity. It worked for me.
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    onBackPressedDispatcher.addCallback(this, object : OnBackPressedCallback(true) {
        override fun handleOnBackPressed() {
            flutterEngine?.navigationChannel?.popRoute()
        }
    })
}

This seemed to call the onBackPressed infinitely in my case. Also the app will not close on the last route on physical back pressed

This worked for me, I still had to downgrade the go_router version, since i had problems with some internal tab navigation. But maybe it'd suit your needs.
onBackPressedDispatcher.addCallback(this, object : OnBackPressedCallback(true) {
    override fun handleOnBackPressed() {
        if (flutterEngine.navigationChannel?.popRoute()!! == null) {
            onBackPressed()
        }
    }
})

What it does is that it uses flutter's pop, but when its exhausted, runs the native pop. (Super tech terminology :p)

This works but when I'm in the initial tab the app doesn't close and at least the same tab is re-rendered to me, this causes that if I want to change to another tab I still get the initial one

This solution is also not work, when I'm in the initial tab the app doesn't close and same tab is re-rendered to me.

Hey guys, looks like I've found the solution in AutoRoute issues, this worked for me: https://github.com/Milad-Akarie/auto_route_library/issues/2059#issuecomment-2434908775


[Bug]: Certificated issued from cert-manager is not being mounted correctly

Is there an existing issue already for this bug?

[X] I have searched for an existing issue, and could not find anything. I believe this is a new bug.

I have read the troubleshooting guide

[X] I have read the troubleshooting guide and I think this is a new bug.

I am running a supported version of CloudNativePG

[X] I have read the troubleshooting guide and I think this is a new bug.

Contact Details
No response
Version
1.23.2
What version of Kubernetes are you using?
other (unsupported)
What is your Kubernetes environment?
Self-managed: RKE
How did you install the operator?
Helm
What happened?
I have issued an certificate from cert-manager following the documentation steps described here
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
  name: my-postgres-server-cert
  namespace: postgresql-operator-test
spec:
  secretName: my-postgres-server-cert
  usages:
    - server auth
  commonName: cnpg-webhook-service.postgresql-operator-test.svc
  dnsNames:
    - cnpg-webhook-service
    - cnpg-webhook-service.postgresql-operator-test
    - cnpg-webhook-service.postgresql-operator-test.svc
    - cnpg-webhook-service.postgresql-operator-test.svc.cluster.local
  issuerRef:
    name: issuer
    kind: ClusterIssuer
    group: cert-manager.io

And then I have mounted it to the certificates: block section under clusters helm chart
cluster:
  certificates:
     serverTLSSecret: my-postgres-server-cert
     serverCASecret: my-postgres-server-cert

The certificate is successfully issued because I can see it in the cluster events but again when I try to deploy the helm chart I notice that the cnpg-ca-secret and cnpg-webhook-cert objects are still automatically created by the operator and in the mutatingwebhookconfiguration in the caBundle I can see that still see that Issuer: OU = postgresql-operator-test, CN = cnpg-ca-secret certificate is being used.
Any ideas what might be wrong?
I should also mention that istio mtls is being used in the cluster.
Cluster resource
No response
Relevant log output
No response
Code of Conduct

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

Even with operator generated certificates its not working I receive this error when I try to deploy the cluster
Internal error occurred: failed calling webhook \"mcluster.cnpg.io\": failed to call webhook: Post \"https://cnpg-webhook-service.postgresql-operator-test.svc:443/mutate-postgresql-cnpg-io-v1-cluster?timeout=10s\": x509: certificate is not valid for any names, but wanted to match cnpg-webhook-service.postgresql-operator-test.svc\n\n\n"


Reduce resource usage of assertion in ReadFramedMessageBody

Changes allow this proof to pass on the upcoming Dafny 4.7
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Replaced by https://github.com/aws/aws-encryption-sdk-dafny/pull/664


device selector improvements

show device selector when cookie is not set
not persisting - switch to localstorage

https://github.com/bhautikj/vrEmbed/commit/78d3aca47525476191f4238a17a683302e98f50b


Meetup Suggestion: Example Bitcoin Meetup

SoCo Bitcoin Meetup
USA - Colorado - Colorado Springs - COATI

Meetup Link:

https://meetu.ps/c/4ZBCk/1xVS7/a

Telegram Link:

https://t.me/+RIQ7qsRkENwxM2Jh

Twitter Handle:

@SoCoBitcoin

Organizers:
Tom Taber -
@TomTaber_
Erin Crawford -
Death&Bitcoin
@ErinCrawford41

I sent a tweet confirming our commitment to Bitcoin only Meetups.

Erin and I will be at Pacific Bitcoin next month too.  We're totally Maxis.

Thanks for making a suggestion for a new meetup.
Please note: Only suggest bitcoin-only meetups.
Meetups which promote any coin or token other than Bitcoin are not suitable for listing.
Altcoin's are only mentioned in the context of warnings or lessons learnt for bitcoin.
Required:

Name of Meetup:
Location Of Meetup:
At least one of the following:

Meetup Page (or similar):
Telegram Group (or similar):
Website:

Optional

Name of Organiser(s) & Twitter Handle:
Links showing public support: >>>  example
Tweet your commitment

As the organiser of [>>>XXX<<<] Meetup I can confirm that the meetup is bitcoin-only
-The meetup is bitcoin focused.
-'Altcoins' are scams and are not promoted in talks/presentations at our meetups.
#bitcoinonlymeetups @bitcoinonly_

Ready to be made into a pull request


from_pw_distances_with from pre-calculated distances?

Hi. Thanks for writing this nice crate. If I have pre-calculated distances in a vector of structs like so...
struct Dist {
a: String,
b: String,
distance: u32
}
Is it possible to use SquareMatrix::from_pw_distances_with to get matrix format? Or is there a better way to handle that?

Hi! SquareMatrix also implements FromIterator, so if your vector stores the Dists in row-major order then you should be able to construct the matrix with something like let matrix = dists.iter().map(|x| x.distance).into(). If the order isn't guaranteed to be row-major, then you could build an index to use with from_pw_distances_with().
The tabular format parser internally already does essentially this, so it might be worth refactoring that into a constructor that handles this kind of layout more conveniently.

It turns out my data are not n*n but rather n * (n - 1) / 2, so I need to use DistMatrix, though I'd like to subsequently convert to SquareMatrix. Giving that a try:
error[E0277]: the trait bound DistMatrix<u32>: From<Map<std::slice::Iter<'_, Dist>, [closure@src/main.rs:321:53: 321:56]>> is not satisfied
--> src/main.rs:321:36
|
321 |     let dmatrix: DistMatrix = dists.iter().map(|x| x.distance).into();
|                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ---- required by a bound introduced by this call
|                                    |
|                                    the trait From<Map<std::slice::Iter<'_, Dist>, [closure@src/main.rs:321:53: 321:56]>> is not implemented for DistMatrix<u32>
|
= note: required for Map<std::slice::Iter<'_, Dist>, [closure@src/main.rs:321:53: 321:56]> to implement `Into<DistMatrix>
Probably I'm just not seeing something simple with the invocation here.

That was my typo: it should have been collect() rather than into(). That still won't do any checking that the order of elements lines up with the order DistMatrix expects them to be stored in, so you might want to sanity check the matrix you build.
The next version of the crate will have constructors specifically for this scenario where you have labelled distances. It checks that the correct entries are provided, and can handle them being out of order. It currently works like this (but I will probably tweak it slightly):
let m = DistMatrix::<u32>::from_labelled_dists(dists.into_iter().map(|x| (x.a, x.b, x.distance))).unwrap();

Indeed, that solved it. Good to know about the alternate/upcoming ways to do it. Thanks for your help!


[REF] Rename tags

Renames tags to replace - with _ and replaces the odd :removes capability tag names.

Beat you to it #2152


ical2orgpy: 0.4.0 -> 0.5

Description of changes
Changelog: https://github.com/ical2org-py/ical2org.py/blob/0.5/CHANGELOG.rst

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 257379 run on x86_64-linux 1

2 packages built:

ical2orgpy
ical2orgpy.dist


scan_api.start_scan is broken and example does not work

Issues and Contributing
calling start_scan per example doc produces error
Expected Behavior
Scan would be started and receive a 200 response
Actual Behavior
rapid7vmconsole.rest.ApiException: (400)
Reason: Bad Request
HTTP response headers: HTTPHeaderDict({'Cache-Control': 'no-store, must-revalidate', 'Content-Type': 'application/json;charset=utf-8', 'Date': 'Fri, 05 Jun 2020 14:09:30 GMT', 'Server': 'Security Console', 'Vary': 'Accept-Encoding', 'X-Content-Type-Options': 'nosniff', 'X-Frame-Options': 'SAMEORIGIN', 'X-UA-Compatible': 'IE=edge,chrome=1', 'X-XSS-Protection': '1; mode=block', 'transfer-encoding': 'chunked', 'Connection': 'keep-alive'})
HTTP response body: {
  "status" : 400,
  "message" : "An unexpected error occurred. See the log file for more information or contact support.",
  "links" : [ {
    "href" : "https://rapid7.xxxxxx.com/api/3/sites/2/scans",
    "rel" : "self"
  } ]
}

Possible Solution

Steps to Reproduce (for bugs)
use the one from the example doc on start_sscan
Your Environment

Library version or repository branch: master
Python version: 3.8
Operating System and version: macos
InsightVM/Nexpose product version:

Other relevant information

Same here,
I suspect that that the update with the TLS 1.2 only broke the compatibility
on the server side I get:
eg:
2021-11-09T09:37:20 [WARN] [Thread: http-nio-443-exec-77=/api/3/tags] An unhandled exception has been detected.
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'scopedTarget.nexposeDataSource' defined in class com.rapid7.nexpose.nsc.web.config.DatabaseConfig: Bean instantiation via factory method failed; nested exception i
s org.springframework.beans.BeanInstantiationException: Failed to instantiate [javax.sql.DataSource]: Factory method 'nexposeDataSource' threw exception; nested exception is java.lang.NullPointerException
...
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [javax.sql.DataSource]: Factory method 'nexposeDataSource' threw exception; nested exception is java.lang.NullPointerException
        at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:189) ~[spring-beans-4.2.4.RELEASE.jar:4.2.4.RELEASE]
        at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:588) ~[spring-beans-4.2.4.RELEASE.jar:4.2.4.RELEASE]
        ... 163 common frames omitted
Caused by: java.lang.NullPointerException: null

Actually, scratch that. It works, I forgot the headers
client.default_headers['Authorization'] = "Basic %s" % auth


Allow build-examples to build darwin-x64-rpc-console

Problem
build-examples.py fails to build rpc-console on darwin since fake_platform is not declared as an argument
Change overview
make the fake platform available only if the corresponding device.gni declare has been included.
Testing
ran ./scripts/build/build_examples.py --target-glob '*rpc-console'  build on darwin

fast track: build file changes only that are expected to be mostly a noop, should have solid coverage by CI


Terraform PLAN, VALIDATE, APPLY TFState file not being stored in Azure SA Container

Even with the Azure Sub, SA, COntainer and Key name entered correctly, the Terraform PLAN, VALIDATE or APPLY commands all show the same error and not able to read the TSState file with the below Error/Warning. COde runs and deploys but obviously no state file is persisted and noting is in the storage account.
2020-10-13T23:31:34.0062891Z
2020-10-13T23:31:34.0063146Z ------------------------------------------------------------------------
2020-10-13T23:31:34.0063352Z
2020-10-13T23:31:34.0063616Z Note: You didn't specify an "-out" parameter to save this plan, so Terraform
2020-10-13T23:31:34.0063961Z can't guarantee that exactly these actions will be performed if
2020-10-13T23:31:34.0064259Z "terraform apply" is subsequently run.
2020-10-13T23:31:34.0064549Z
2020-10-13T23:31:34.0207394Z [command]C:\hostedtoolcache\windows\terraform\0.12.3\x64\terraform.exe version
2020-10-13T23:31:34.6994181Z Terraform v0.12.3
2020-10-13T23:31:34.6994829Z + provider.azurerm v2.31.1
2020-10-13T23:31:34.6995102Z
2020-10-13T23:31:34.6995459Z Your version of Terraform is out of date! The latest version
2020-10-13T23:31:34.6995906Z is 0.13.4. You can update by downloading from www.terraform.io/downloads.html
2020-10-13T23:31:34.8482966Z Too many command line arguments. Configuration path expected.
2020-10-13T23:31:35.8241388Z Terraform couldn't read the given file as a state or plan file.
2020-10-13T23:31:35.8242073Z The errors while attempting to read the file as each format are
2020-10-13T23:31:35.8242420Z shown below.
2020-10-13T23:31:35.8242784Z
2020-10-13T23:31:35.8243263Z State read error: Error loading statefile: open D:\a\1\s\plan-binary-f771e78a-c71c-4031-8bd2-c4bece92f16e.tfplan: The system cannot find the file specified.
2020-10-13T23:31:35.8243694Z
2020-10-13T23:31:35.8244293Z Plan read error: open D:\a\1\s\plan-binary-f771e78a-c71c-4031-8bd2-c4bece92f16e.tfplan: The system cannot find the file specified.
2020-10-13T23:31:35.8345424Z ##[section]Finishing: Terraform : PLAN

Just realised I have the same issue. I had to add a bash step in before the init as a work around. If that's any use for you.
 - task: Bash@3
        inputs:
          targetType: 'inline'
          script: |
            git config --global credential.helper '!f() { printf "%s\n" "username=$SYSTEM_ACCESSTOKEN" "password=$SYSTEM_ACCESSTOKEN"; };f'
            cd $(TerraformWorkingDirectory)
            terraform init -backend-config=storage_account_name=$(StorageAccount) -backend-config=container_name=$(StorageAccount) -backend-config=key=terraform.tfstate -backend-config=resource_group_name=$(ResourceGroup) -backend-config=arm_subscription_id=$(SUB) -backend-config=arm_tenant_id=$(TENANT) -backend-config=arm_client_id=$(CLIENTID) -backend-config=arm_client_secret=$APPSECRET
            ```

Heya, @jonnychipz  I actually had this happen with this AND the other TF extension.
They figured it out in about an hour though
You need to add the backend part into the config , like below.
I have the exact one below and that made the terraform.tfstate file show up.
terraform {
  required_version = ">= 0.13"
  required_providers {
    azurerm = {
      source = "hashicorp/azurerm"
      version = "2.30.0"
    }
  }
  backend "azurerm" {}

}

AH ok so it has to be in the main.tf file as well! Great thank you I shall give that a go!!

We are closing this since its resolved. Feel free to suggest if any changes required from our side

Sorry i'm trying this and i'm still having trouble here. I've added the bash step as suggested to the pipeline file . However the TF plan stage still can't find the tfplan and the tf destroy fails if you rerun the job. Is there a proper fix coming?

thanks the Azurerm backend commentary fixed my issue


Dependency rule configuration

I am trying to set up a simple example of sheriff, I've attempted to configure the dependency rules closely to the one provided, and it works, but it works in a way that i can't import common modules like @angular/core with ther error ESLint: Dependency rule (internal error) No assigned Tag for 'a path to a domain module' in sheriff.config.ts

Correction: the first import in a file is marked like that. Every one after that follows the rules correctly it seems

When you create a sheriff.config.ts, all your modules, i.e. directories with an index.ts must be tagged. That makes sure you won't skip one. Also make sure that the paths in your tsconfig.json point to existing files.
If you want just want to use the deep-import checks, remove the sheriff.config.ts and it will work.

@Renaldinho Maybe this is the cause of your issue: https://github.com/softarc-consulting/sheriff/issues/49

Sure, maybe that can help as a starting point: https://github.com/softarc-consulting/sheriff/blob/9850d511610898d2fe32d12e8e59954bea991530/packages/core/src/lib/file-info/traverse-filesystem.spec.ts#L129
All the best!

Going to close that since we didn't get any new information and a potential fix was released.


Add local Dragon Egg Shards

...did nobody EVER add Dragon Egg Shards to this yaml?? Anyway, this should generate fine. Tested by generating a few worlds, didn't encounter any errors.

I'm going to be honest, idk why dragon egg shards have never been included.
That being said, there is a problem with this setup for the dragon egg shards: I think the odds of getting a world that requires ALL dragon egg shards is a bit too high (this happens anytime req > available). I think having a set number of available and just ranging the requirement is preferable

This was addressed in another PR.


Add CM4 external antenna management support

Issue
Raspberry Pi CM4-based units have support for an external antenna attached to the uFL connector on the CM4 board. But for that one to be actually used, a special dtparam=ant2 needs to be added to the config.txt file. This PR adds support for enabling/disabling this external antenna.
Changes:

Added Balena Cloud API client.
Enabled Balena Cloud API access for the diagnostics container.
Implemented external antenna management functions in hardware.py module.
Added dashboard configuration button to query/enable/disable external antenna.

How

Screenshots

References

Checklist

[ ] Tests added
[ ] Cleaned up commit history (rebase!)
[ ] Documentation added
[ ] Thought about variable and method names

@ccrisan see if you can log in to sonarcloud (click on the "1 code smell" and then log in at top right with your GitHub profile) and see if you can get access to resolve it. I think you should just be good to check


Error: "Sorry, something unexpected happened. Please try again."

I've done all the steps and added it to my teams. I can also select which list to filter and the filter part works too.
Reference:

but after selecting a record. The app throws an error: "Sorry, something unexpected happened. Please try again."

People who are experiencing the same issue:

https://github.com/OfficeDev/microsoft-teams-list-search-app/issues/8
https://github.com/OfficeDev/microsoft-teams-list-search-app/issues/5

Please help.

I have the same problem here.  Anybody solved it already?

Any idea on this  problem ?

Our developer team is looking into this issue regarding Sharepoint list search. We will keep you updated when we get a resolution from them.


can't run doctest - unexpected keyword argument 'nosigint'

From<EMAIL_ADDRESS>on 2014-06-17T13:17:05Z
Hello, I'm unable to run doctests from spyder's IPthyon interpreter. The tests execute properly using a standard python console or a standalone IPython3 shell. Thanks for your help in solving this issue.
Spyder Version:  2.3.0rc
Python Version:  3.4.0
Qt Version    :  4.8.6, PyQt4 (API v2) 4.10.4 on Linux
IPython >=0.13  :  1.2.1 (OK)
matplotlib >=1.0:  1.3.1 (OK)
pep8 >=0.6      :  None (OK)
psutil >=0.3    :  None (OK)
pyflakes >=0.6.0:  0.8.1 (OK)
pygments >=1.6  :  1.6 (OK)
pylint >=0.25   :  1.1.0 (OK)
rope >=0.9.2    :  None (NOK)
sphinx >=0.6.6  :  None (OK)
sympy >=0.7.0   :  None (OK)
What steps will reproduce the problem?

open spyder's IPython console

In [1]: import doctest
In [2]: doctest.testmod()

What is the expected output? What do you see instead?
Expected: tests complete successfuly.
Actual:
Traceback (most recent call last):
File "", line 1, in <module>
doctest.testmod()
File "/usr/lib/python3.4/doctest.py", line 1945, in testmod
runner.run(test)
File "/usr/lib/python3.4/doctest.py", line 1456, in run
self.debugger = _OutputRedirectingPdb(save_stdout)
File "/usr/lib/python3.4/doctest.py", line 357, in init
pdb.Pdb.init(self, stdout=out, nosigint=True)
TypeError: init() got an unexpected keyword argument 'nosigint'
Original issue: http://code.google.com/p/spyderlib/issues/detail?id=1855

From<EMAIL_ADDRESS>on 2014-12-05T13:15:30Z
For a shoddy quick fix you can remove the 'nosigint=True' argument from the pdb.Pdb.init in doctest, and change the default value of nosigint to True in pdb.py.
The underlying problem seems to be that pdb.Pdb is actually the derived class SpyderPdb in sitecustomize.py. SpyderPdb does not have a init method defined and Python does not automatically call the parent's init for derived classes. So the SpyderPdb init needs to be written to handle nosigint.

From ccordoba12 on 2014-08-26T08:02:51Z
Labels: Cat-IPythonConsole MS-v2.4

This is still an issue in Spyder 2.3.8, can someone please state the status of this bug? The workaround kind of seems like I need to change a default library, and that is a little out of my comfort zone.
Current workaround for me is to use the Python console, instead of the IPython console. And I do want to use the IPython console.

No one has worked on this, sorry. I'll take a look at it for Spyder 3.1 (yes, still several months away because 3.0 is in beta :-)

The thing is this is not a critical bug, so I decided to not make it block 3.0.

Any update on this? It is still an ongoing bug it seems.

We'll take a look at it in Spyder 3.2.


Remove FUD warning

The warning is pure FUD. Any GC implementation in D must recognize interior pointers, so will recognize tagged pointers.

Can't you configure the GC to ignore interior pointers for certain blocks?

@yebblies , take a pointer to a member, surprise, your block is gone. If the GC provide such option, using it would be @system, therefore this doesn't need to be.
On a side note, I doubt a GC would propose this as it would change the process as :
if (mem >= base && meme < base + size) { ... }

to
if (supportinteriorPointer(mem)) {
    if (mem >= base && meme < base + size) { ... }
} else {
    if (mem == base) { ... }
}

Which is 2 check in the best case (same as above) and 3 int he worse case. That is a strictly superior number of check per pointer to do, so it doesn't make any sense as a GC design.

Check out BlkAttr.NO_INTERIOR

The spec currently says: "Do not take advantage of alignment of pointers to store bit flags in the low order bits".
http://dlang.org/spec/garbage.html
This needs to be changed, too.

I would not consider tagged pointers to be safe in general. If you take advantage of memory alignment of GC allocations, but your allocation is actually smaller than that, the GC might figure out your pointer is beyond the end of the allocation and consider it a false pointer.
I'd rather change the warning to state the tagged pointer has to continue to be an interior pointer. (BlkAttr.NO_INTERIOR is system as it can only be set by calling any of the unsafe GC./gc_ functions directly.)

@yebblies There is no way this can be safe, so point remains.
@schuetzm Depends if we are talking about the alignment of underlying storage or type. The spec is unclear about this.
@rainers This not using the alignment of GC provided memory block, but of the underlying type, it is moot.

I agree with all that @deadalnix has said FWIW.
This is not messing with alignment of blocks or memory, just taking advantage of the fact that pointing to a member of a struct is enough to keep it in the GC.
Just note, as long as casting an array to void[] is valid, then tagged pointers are valid.

Ping ?

Let's merge this.  If somebody disagrees, the revert button is always there.  This has been sitting here for far too long already, for something that's a relatively small doc change.

Auto-merge toggled on


Preact doesn't work with FuseBox HRM

This same issue was raised in fuse-box, but talking with @nchanged (the creator of FuseBox) I think that's a problem of preact instead.
When use FuseBox HRM with Preact in each update preact render multiple instances in the same dom node at every turn. I made a repo with the source code, if you just running yarn start, then make some modification on src/index.tsx you'll see the bug
https://github.com/pedronauck/fusebox-preact-example
This is what's happening:

How I spoke in the fuse-box issue, I tried to do the same with React and Inferno and they worked perfectly, so I guess maybe this can be a preact render's issue

You need to pass render a third argument so that it can reuse what's there, otherwise it will definitely add/append new instances every call.

Please see here for an example.

Sorry @lukeed, but I did the same of your example, and preact keep append new instances every call...
https://github.com/pedronauck/fusebox-preact-example/blob/master/src/main.tsx

@pedronauck you could just remove the div for development
const element =  document.getElementById('root');
element.parentNode.removeChild(element);

You would need to flush contents and store the new into memory, then re-trigger. If you are going for a custom HMR plugin here is what you need to read http://fuse-box.org/page/development#custom-hmr

Your bootstrap code is now correct. Unfortunately, I haven't use Fusebox yet (been meaning to), but what @nchanged posted looks like it's on the right track.


Added support for merging vars and Google Analytics domains setting

Please review

Coverage remained the same at 100.0% when pulling 5c98c8739f01cd54f76afbd1c7802d32804ab4e5 on keenubee:merge-vars-ga into fd55199960f8bf05d25153a0b110020d9af56373 on Rebelmail:master.

Coverage remained the same at 100.0% when pulling 5c98c8739f01cd54f76afbd1c7802d32804ab4e5 on keenubee:merge-vars-ga into fd55199960f8bf05d25153a0b110020d9af56373 on Rebelmail:master.

Closing - missed "message" property usage inside mandrillOptions.


[CONTENT] Update ASB metadata

Describe the issue
Updating the ASB metadata to display updated config from https://github.com/dapr/components-contrib/issues/692
URL of the docs
https://docs.dapr.io/operations/components/setup-pubsub/supported-pubsub/setup-azure-servicebus/
Do not merge unless PR (https://github.com/dapr/components-contrib/pull/713) is merged.

Seems to have been updated at https://docs.dapr.io/reference/components-reference/supported-pubsub/setup-azure-servicebus/


Update node-sass to 2.0.1

Fix https://github.com/dlmanning/gulp-sass/issues/189 (Gulp-Sass won't work in latest nodejs 0.12.)

Tests are failing

Yes maybe a update of the tests are also necessary. But it gulp-sass itselfs works well in our develop with node-sass 2.0.1

No, it's #190. I'll fix it when I get to work in a couple hours

Thanks guys

Fixed in https://github.com/dlmanning/gulp-sass/commit/314ce5c1594e541a55e5c5009fb0733c45226567


Support for dynamic tab completion

Looking for something akin to the dynamic options feature of the golang cli package
https://github.com/alecthomas/kingpin/blob/master/README.md#additional-api
More specifically I would like an alternative to the existing clap API that let's you configure a static array of arg option values that would let me instead provide a fn type that yields a dynamic list.
Bonus points if this could factor into claps current support for tab completion
I would be interested in working on an implementation with some coaching on what the key areas in clap would need to change.

No prob. These are exactly what  I'm looking for!


Cannot use an IPv6 address in the Git URL

If you're using Dokku - especially for commercial purposes - consider donating to project development via OpenCollective or Patreon. Funds go to general development, support, and infrastructure costs.
If you'd like to sponsor specific functionality, see the project's Sponsoring document.
If you need support for a version of Dokku that is more than a year old, your issue may be closed without an answer. Please upgrade to a recent version before filing an issue.

Description of problem
Unlike IPv4 addresses, IPv6 addresses cannot be used.
How reproducible
Very
Steps to Reproduce

GIT_REMOTE_URL=ssh://dokku@<IP_ADDRESS>:22/example bin/parse-ssh-host
GIT_REMOTE_URL=ssh://dokku@[2606:4700:4700::1111]:22/example bin/parse-ssh-host

Actual Results

<IP_ADDRESS>
[2606

Expected Results

<IP_ADDRESS>
[2606:4700:4700::1111]

Environment Information
GitLab CI specifically, but reproducible outside.

Yeah thats probably from here: https://github.com/dokku/ci-docker-image/blob/master/bin/parse-ssh-host#L12
Honestly I think this should probably be a small python script that uses url.parse or something instead.


Can’t answer yes/no questions

Version: <IP_ADDRESS>3 (RELEASE, TRIMMED, 64-bit)
I can’t answer any yes/no questions like

Save all renewal files with encryption? (y/n*)

Only Enter is possible. But pressing the keys y or n has no effect.

That's very odd. Nothing has changed in that area of code in months and I'm not able to reproduce it either, neither a local or published build. Which console app are you using and which language is Windows set to?

Sorry, I should have checked with other Remote Desktop Clients before opening the issue.
The problem occurs when I'm connected to my server (Windows Server 2016 German) with the RD Client for iOS/iPadOS. Using Window's On-Screen Keyboard works. But using the keyboard of the iPhone/iPad doesn't work:

Same here with Server 2019 and RD client on macOs, Unable to press y/n

Perhaps this build will fix the issue: https://ci.appveyor.com/project/WouterTinus/win-acme-s8t9q/builds/36906757/artifacts

That worked. Thanks

I can confirm it works with this fix. Thanks!


vk.com error "Downloading JSON metadata"

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

[X] I'm reporting that yt-dlp is broken on a supported site
[X] I've verified that I'm running yt-dlp version 2023.07.06 (update instructions) or later (specify commit)
[X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
[X] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[X] I've searched known issues and the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue
[X] I've read about sharing account credentials and I'm willing to share it if required

Region
Russia
Provide a description that is worded well enough to be understood
Can't view formt list and download this video.
Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[X] If using API, add 'verbose': True to YoutubeDL params instead
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
[debug] Command-line config: ['-vU', '-F', 'https://vk.com/video363245882_456239288']
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version<EMAIL_ADDRESS>[b532a3481] (pip)
[debug] Python 3.11.5 (CPython arm64 64bit) - macOS-13.5.1-arm64-arm-64bit (OpenSSL 3.1.2 1 Aug 2023)
[debug] exe versions: ffmpeg 6.0 (setts), ffprobe 6.0
[debug] Optional libraries: Cryptodome-3.18.0, brotli-1.0.9, certifi-2023.07.22, mutagen-1.46.0, sqlite3-2.6.0, websockets-11.0.3
[debug] Proxy map: {}
[debug] Loaded 1855 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Available version<EMAIL_ADDRESS>Current version<EMAIL_ADDRESS>yt-dlp is up to date<EMAIL_ADDRESS>[vk] Extracting URL: https://vk.com/video363245882_456239288
[vk] 363245882_456239288: Downloading JSON metadata
ERROR: [vk] None: Error
  File "/opt/homebrew/Cellar/yt-dlp/2023.7.6_1/libexec/lib/python3.11/site-packages/yt_dlp/extractor/common.py", line 710, in extract
    ie_result = self._real_extract(url)
                ^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Cellar/yt-dlp/2023.7.6_1/libexec/lib/python3.11/site-packages/yt_dlp/extractor/vk.py", line 332, in _real_extract
    payload = self._download_payload('al_video', video_id, data)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Cellar/yt-dlp/2023.7.6_1/libexec/lib/python3.11/site-packages/yt_dlp/extractor/vk.py", line 87, in _download_payload
    raise ExtractorError(clean_html(payload[0][1:-1]), expected=True)

I've checked that all provided URLs are playable in a browser with the same IP and same login details

Can you please double check this?

If the video can only be viewed when logged in, you need to pass --username and --password or pass --cookies. And if that still doesn't work, then this is a duplicate of #7354


Generic types support

Right now we can only extend other object type, input type and args type classes. But this doesn't allow us to overwrite a property type so we can't create a truly generic types like the one used for pagination.
So, to the higher order class pattern we have to introduce isAbstract option that works the same way as in resolvers inheritance. Then we can create generic types:
export function Edge<TNodeType>(NodeType: ClassType<TNodeType>) {
  @ObjectType({ isAbstract: true })
  abstract class EdgeType {
    @Field(type => NodeType)
    node: TNodeType;
    @Field()
    cursor: string;
  }
  return EdgeType;
}

We can then easily extend the generic class:
@ObjectType()
export class RecipeEdge extends Edge(Recipe) {
  @Field()
  personalNotes: string;
}

@ObjectType()
export class FriendshipEdge extends Edge(User) {
  @Field()
  friendedAt: Date;
}

So this would generate following GraphQL type:
type RecipeEdge {
  node: Recipe!
  cursor: String!
  personalNotes: String!
}

type FriendshipEdge {
  node: User!
  cursor: String!
  friendedAt: DateTime!
}

Available in 0.17.0-beta.8 🚀

Amazing news ;) thanks @19majkel94

@19majkel94 According to your example:

 @ObjectType({ name: `Paginated${TItemClass.name}Response` })

This way you propose to generate unique names for generic types. But what if I specified another name for TItemClass when had decorated it with @ObjectType('SomeOtherName')? I would like to set the name of the generated class without having to repeat that 'SomeOtherName' as a factory function parameter. Could you please expose a method to retrieve GraphQL name from the given class constructor that was decorated with @ObjectType() ?

I'm not sure what you are referring to 😕
You can have a function that generates a classes (no isAbstract, use name for unique type names):
function Foo(TItem) {
  @ObjectType({ name: "Foo" + TItem.name })
  class Foo {
    @Field()
	bar: string;
  }
  return Foo;
}

const FooBar = Foo(Bar);

or as a factory for base classes (isAbstract: true, no name):
function Foo(TItem) {
  @ObjectType({ isAbstract: true })
  abstract class Foo {
    @Field()
	bar: string;
  }
  return Foo;
}

@ObjectType()
class FooBar extends Foo(Bar) {}

@19majkel94 Sorry if I was not verbose. The version of typegraphql that I use (namely 0.16.0) exposes ObjectType() function with the following overloads:
function ObjectType(): ClassDecorator;
function ObjectType(options: ObjectOptions): ClassDecorator;
function ObjectType(name: string, options?: ObjectOptions): ClassDecorator;

Thus, if you decorate a class the following way:
@ObjectType()
class UserType { /* ... */  }

the generated GraphQL type name will be type UserType { }.
If you want to leave your TypeScript class name being UserType but have generated GraphQL type to be called User you forward a string with the name as the first parameter to ObjectType() that overrides the default UserType.name that is used when you don't specify the name explicitly.
@ObjectType('User')
class UserType { /* ... */  }

Now the generated GraphQL type name is type User { } rather than type UserType { }.
And when I have the following factory function (taken from your examples):
export default function PaginatedResponse<TItem>(TItemClass: ClassType<TItem>) {

  @ObjectType(`Paginated${TItemClass.name}Response`)
  class PaginatedResponseClass {

  }
  return PaginatedResponseClass;
}

I can't be sure that TItemClass.name === respective graphql type name.
Suppose we have the following class:
@ObjectType('Book')
class BookType { }

So when I do this:
const PaginatedBookResponse = PaginatedResponse(BookType);

The generated graphql type will be type PaginatedBookTypeResponse {} rather than wanted type PaginatedBookResponse {}.
Thus I would like a function that returns a respective GraphQL type name for a given type, so that I could correct PaginatedResponse() factory definition:
import { getMetadata } from 'type-graphql';
export default function PaginatedResponse<TItem>(TItemClass: ClassType<TItem>) {

  // should throw if TItemClass was not decorated with either @ObjectType() or @InputType()
  const graphqlTypeName = getMetadata(TItemClass).name;

  @ObjectType(`Paginated${graphqlTypeName}Response`)
  class PaginatedResponseClass {

  }
  return PaginatedResponseClass;
}

P.S. I don't know why you invoke @ObjectType() with the object that has name property, as my  version of 'typegraphql' declares ObjectOptions with no such property, and I pass the name as the bare first argument.

@Veetaha
Your factory function may take more arguments, like:
function PaginatedResponse<TItem>(TItemClass: ClassType<TItem>, itemName: string) {}

const PaginatedBookResponse = PaginatedResponse(BookType, "Book");

The TItemClass.name is just a shortcut for the default naming.
Accessing metadata is part of the #134.

@19majkel94 As I have said in my first comment,

I would like to set the name of the generated class without having to repeat that 'SomeOtherName' as a factory function parameter

Exposing some interface to access the metadata you define would be way better than reimplementing the whell. I could wrap ObjectType() with my custom decorator that would store the GraphQL typename along with saving it to your MetadataStorage, so that I could access it myself without refering to your API. Or I could just forward its name as the factory function parameter and repeat myself twice, which was the thing I wanted to avoid initially.


Add subdir to PkgSpec

Export Julia's PackageSpec subdir option, which allows the user to specify a folder inside the repository where the Julia package is located. See: https://pkgdocs.julialang.org/v1/api/#Pkg.PackageSpec

Great thanks!


about the generators

Hi!
I don't fully understand how the code manages the available hardware resources, and I could use some advice on how to accelerate training. e.g. in an environment with multiple GPUs and multiple CPUs, what changes should I do to make sure I make use of these resources?
Thank you very much!

Hi! The code only supports standard single GPU training out-of-the-box. To parallelize it over multiple GPUs you would need to check the general PyTorch documentation about multi-GPU training and do the required changes. Although, I have tried some experiments in that direction, and it did not seem to provide a speed-up, because the neural nets are not that big.
Regarding multiple CPUs - each actor worker uses a separate CPU, so a good way to use them is to launch more actors (generator_workers setting).


feat: conditionally allow unstable opts on stable/beta

One of two possible approaches to resolve #4081, and my vote would be for this approach.
AIUI, unstable_features is basically an no-op configuration item today that rustfmt doesn't actually use. With config options set in the configuration file, all unstable options are already allowed on nightly and disallowed on stable/beta. For config options specified/overriden via the CLI, rustfmt doesn't do any stability/channel checks whatsoever (unstable config opts can be used on stable even with unstable_features not set/set to false, see #4081)
With the changes in this PR:

unstable options are still always available on nightly
unstable options on stable/beta can be leveraged, but only when unstable_features is set to true (regardless of whether the unstable config options are set via the CLI and/or config file)

The other approach would be to completely remove unstable_features and completely disable the ability to opt-in to unstable rustfmt config options on stable/beta. IMHO rustfmt users have articulated some valid use cases when it would be beneficial for them to be able to opt-in to using unstable rustfmt opts on stable, which is why I prefer this approach over that alternative.
Also refs https://github.com/rust-lang/rustfmt/pull/4064#issue-380003069 and #3387

I will fix the tests on beta (would need the now-required unstable_options setting) tomorrow barring any objections to this approach. The integration test failures are unrelated to this PR and were caused by #4226

Allowing optin to unstable features on the stable channel seems to subvert the general stability guarantees that all other Rust tooling provides, rustc and cargo do not allow access to -Z flags or features on stable.
I'm mostly surprised that this did not require any kind of FCP, it seems like deviating from the general policy should be signed off by the dev-tools team.

rustc and cargo do not allow access to -Z flags or features on stable.

Is this strictly true? using the unstable json format with libtest seems to work just fine on stable
cargo +stable test -- -Z unstable-options --format json

Allowing optin to unstable features on the stable channel seems to subvert the general stability guarantees that all other Rust tooling provide

I don't personally view unstable compiler features and rustfmt configuration options for formatting to be in the same mental bucket, but the thought/question does tie into some other related questions of late around how various Rust constraints are applied to rustfmt (refs #4346)

I'm mostly surprised that this did not require any kind of FCP, it seems like deviating from the general policy should be signed off by the dev-tools team.

It would be really helpful for me if we could get an articulation on which aspects of rustfmt the rustfmt team has the autonomy to make decisions on vs. which require approval of the Dev Tools team vs. any other RFC/FCP/etc. process, etc.
To my knowledge, the only things that have been codified are the RFC process to the Style Guide for style/formatting changes and the independent versioning of rustfmt in https://github.com/rust-lang/rfcs/pull/2437
I'm happy to operate within whatever process we want to work with, but I'd prefer to get such a process documented to avoid any ambiguity and subjectivity.
cc @rust-lang/devtools

@calebcartwright I opened https://github.com/rust-dev-tools/dev-tools-team/issues/49 to discuss this in more detail.

Is this strictly true? using the unstable json format with libtest seems to work just fine on stable

That flag is not being passed to rustc, it's being passed to the test binary. That's not a binary shipped with rust, that's a binary built by the user, so it's a different scenario.

the independent versioning of rustfmt in rust-lang/rfcs#2437

Does that actually specify an independent versioning? It mentions an independent versioning of rustfmt for the cargo install one, however, it also says this (emphasis mine):

If using Rustfmt as a tool, the recommended way to install is via Rustup (rustup component add rustfmt-preview). This method does not require a nightly toolchain. Versioning is linked to the Rust toolchain (Rustfmt is not meaningfully versioned outside of the Rust version). The version of Rustfmt available on the nightly channel depends on the version of the rustfmt submodule in the Rust repo. This is manually updated approximately once per week

It also specifies:

Rustfmt can be configured with many options from the command line and a config file (rustfmt.toml). Options can be stable or unstable. Unstable options can only be used on the nightly toolchain and require opt-in with the --unstable-features command line flag. All options have default values and users are strongly encouraged to use these defaults.

(I understand that that's not the case in practice, without looking into it too much this seems like a bug but i would love to understand this situation better)
It later goes on to specify that breaking unstable options is a breaking change.

Also, independently of the RFC, i would ask myself what users would consider to be a major/breaking change, and if this falls in that bucket it might be worth an additional RFC!

I will note that unstable rustfmt config options are already available to users today on stable, but only via the cli --confg opt. Whether that's a deliberate feature or a bug is questionable, but that is current state and just about any change to it could arguably be viewed as a breaking change.
This change hasn't been released yet in any version of rustfmt, and since I think there's a lot of things up in the air right now, it's probably best discussed in https://github.com/rust-dev-tools/dev-tools-team/issues/49 and #4346. If we end up needing to revert this or pivot to a different (likely also breaking) approach we can certainly do so!

@calebcartwright how would you feel about me doing a quick PR to backport this to 1.4?
I'm one of those users who uses the stable toolchain, but wants some unstable formatter options. As you've pointed out, the behavior exists today, it's just unwieldy.
If anybody else finds this useful, it's mostly doable to work around this on 1.4.36:
Right now I wrap my rustfmt invocations in a script which reads rustfmt.toml and translates it to --config options, ignoring anything that's an Array or a Table in toml (see below), then sets --config-path to an empty file. That said, though, doing this doesn't seem to be able to set an ignore list, since rustfmt doesn't appear to handle those as --config flags either. Just a guess, but I think the CLI parser is using ::parse() and IgnoreList errors out of FromStr unconditionally, causing ignore to always present as an invalid config key at the CLI.
Wrapping with extra CLI args is unfortunately not an uncommon pattern with rust tools (e.g. I do the same with linter config to work around clippy still not having an allow/deny list in config). Even so, though, reducing the number of places that's necessary seems like a worthwhile goal.


Valuation papers

Muni bonds

SLR (has risk model interpretation)
Climate change
Clean air act

Muni news

Drought
Drought
Drought utilities

Hedonics

(lots of stuff)

Migration
Profits, land values, etc

@asmarcheva forgot about this during our meeting but I usually do project communication through these issues because you can organize stuff by tasks and reference commits etc. I figured it'd be a good idea to start an issue related to thinking about how others have valued environmental change through observables.


incompatibility with Elytra Trims

when using the Elytra Trims together with the First-Person Model, when holding an Elytra in your hand the head of your skin disappears (with this mod Elytra gets a 3D model in the inventory)

since Minecraft doesn't refresh a model while you're viewing the model, you need to exit F5 and come back to see that your head is gone

First-Person Model usually disables the rendering of some part of the body when it detects that this will hinder the first-person view, I imagine that something in the Elytra Trims has made First-Person Model think that the Elytra in the hand would be equipped in the head or something similar, idk
the problem stops when you press F6 to disable First-Person Model, or you disable the "Use Elytra Model" option

I showed this problem to the developer of Elytra Trims and he said:
"but on a serious note i don't know. It also can make your head reappear in 3rd person just as magically and the mods don't have any code interacting with each other."
https://github.com/kikugie/elytra-trims/issues/58

I'm using Fabric 1.20.1, First-Person Model 2.3.4, Elytra Trims 3.1.5

mod link: https://modrinth.com/mod/elytra-trims
if is possible to fix this pls make an update to Fabric 1.20.1, thanks

For reference I referenced the technical details on the FPM discord: https://discord.com/channels/342814924310970398/1239494282742730773